Devlog 1 – planowanie to podstawa – #DSP17

Cześć! Dziś małe sprawozdanie tego co się działo przez ostatni tydzień z projektem. Krótko, zwięźle i na temat, zapraszam.

Z samym projektem działo się niewiele. Sam nie mogę się doczekać pierwszego commitu na githuba, ale postanowiłem podejść do tego bardziej rozsądnie i nie pisać co mi impuls na palce przyniesie, a przemyśleć wszystko. Także można powiedzieć, że nadal mam pusty katalog projektu.

Co w takim razie zrobiłem?

Zrobiłem mały plan przy użyciu Trello. Tak jakby trochę zrobiłem taką a’la scrumową  tablicę z „to do”, „in progress” i „done”, mniej więcej. Spisałem wszystkie minimalne wymagania pierwszej wersji oraz pomysły na dalszy jej rozwój.

No dobra, jaki jest plan?

To nieco bardziej skomplikowane. Wciąż muszę uczyć się Node.js, wiem, że muszę napisać swoje własne API, czego też nie robiłem. Tak naprawdę muszę napisać dwie aplikacje – kliencką i serwerową. Tak mi się przynajmniej wydaje. Serwer wtedy odbiera żądania i w czasie rzeczywistym na nie odpowiada wyciągając ewentualnie potrzebne dane. Tutaj wchodzi frontend, który odbiera odpowiedź serwera i wypluwa na ekran userowi. No i o ile wybrałem już to co z tyłu siedzi czyli Node.js + Express a baza danych, klasycznie MySQL (chociaż kusił NoSQL i Mongo), tak nad frontem do tej pory myślę, ale skłaniam się nad Angularem, którego również nie znam. 😀 To tyle jeśli chodzi o techniczne sprawy.

Sprawa kolejna, w czym ta aplikacja pomoże ludziom? Otóż jak pisałem na początku, gdy startowaliśmy z konkursem, jest to apka do budżetowania. Nic się nie zmieniło. Jednak to trzeba rozbić na trochę drobniejsze elementy. Inspirowałem się w dużej mierze na książce Finansowy Ninja Michała Szafrańskiego oraz arkuszu excelowym do planowania budżetu. Nie ma co ukrywać, że arkusze nie są zbyt elastyczne a i nie każdy potrafi sobie go dostosować pod siebie. Dlatego też założenia tworzenia budżetu wplotę w swoją aplikację.

MVP – Minimum Viable Product

Rozpisałem sobie kompletne podstawy jeśli chodzi o pierwszą, podstawową wersję aplikacji. Będzie ona obsługiwała prostą rejestrację i logowanie (swoją drogą jeszcze nie wiem jak rozwiązać problem z sesjami…), wprowadzenie kwoty startowej na dany miesiąc, dodawanie przewidywanych wydatków na dany miesiąc, wprowadzanie na bieżąco wydatków z danego dnia i śledzenie jak idzie realizacja budżetu. Tyle… tylko albo i aż.

A co dalej?

Jeśli uda mi się uzyskać to minimum, sądzę, że dalej będzie z górki. W tej chwili będzie to droga przez mękę, bo nie wiem jak połączyć JS’a z MySQL, nie wiem jak ogarnąć sesje, w sumie to nawet niewiele wiem, bo zauważyłem swój problem – używałem za dużo frameworków. 😉

W każdym razie pomysły na dalszy rozwój są, od małych usprawnień, np definiowanie swojego własnego okresu  rozliczeniowego, a nie sztywno miesiąc od 1 do 31 (chociaż Michał Szafrański bardzo ładnie wyjaśnił czemu lepiej zrobić cały miesiąc), po bardziej ambitne czyli aplikacja na desktopy (tutaj już wiem, że użyję Electrona) oraz apka na Androida.  Nie chcę jakoś szczególnie zdradzać swoich pomysłów, wszystko wyjdzie w praniu.

Miało być krótko. Jeśli macie jakieś rady chętnie przeczytam w komentarzach. Do następnego!