Dziesięć, a właściwie jedenaście tygodni minęło naprawdę szybko. Bałam się jak to będzie, czy starczy mi czasu i wytrwałości, by rzeczywiście publikować po dwa razy w tygodniu, by rozwijać aplikację. A jednak!
No, ale zanim przejdę do podsumowania konkursu – małe podsumowanie ostatniego tygodnia.
Co się udało?
W zasadzie rozgrzebać dużo tematów, ale nie skończyć niczego na tyle by móc zaktualizować dostępne demo…
+ Podpięcie bazy danych pod aplikację (Firebase Database)
Dotąd korzystałam tylko z hostingu dla aplikacji. Przyszedł czas wrócić do kwestii połączenia z bazą danych.
Okazało się, że nie jest to takie trudne. Największym problemem było jak dla mnie zrozumienie jak to ma działać. Wiecie, Redux + Firebase… Nie wiem czemu tak ciężko było znaleźć coś konkretnego i działającego w tym temacie. Ale ponieważ tak było jednym z tematów, które rozwinę wkrótce będzie właśnie to połączenie.
Tak, bo będą jeszcze kolejne publikacje w temacie rozwoju aplikacji.
Aplikacja sprawnie zaczytuje kanały publikacji z bazy danych Firebase. Czeka mnie jeszcze wprowadzenie pozostałych danych do bazy (narzędzia, posty, itd.). Wszystko co ma być przechowywane na serwerze. No i rozszerzyć ładowanie danych o kolejne pozycje. Do tego komunikacja zwrotna (czyli Write).
Także sporo jeszcze tu pracy przede mną. Sama jestem ciekawa jak sprawnie będzie to działać.
+/- Panel logowania (w toku)
Podpinam autoryzację z wykorzystaniem Firebase Authentication. Wygląda to całkiem nieźle. Ale uznałam, że zostawię tą funkcjonalność, gdy skończę już podstawową wersję aplikacji i udostępnię możliwość zakładania kont.
+/- Widok ustawień użytkownika
Dość mocno zaawansowane, ale jeszcze nieskończone.
Co się nie udało?
– Strona startowa projektu
Niestety bez większych zmian w stosunku do tej sprzed tygodnia.
Chciałam ją udostępnić w ostatnim raporcie (czyli dzisiaj)… będzie moim celem na najbliższe dni. A kiedy skończę – na pewno dam o niej znać na blogu oraz innych kanałach Social Media.
– Walidacja pól formularza dodawania i edycji postów
Tego nie tknęłam w ogóle. Dlaczego? Okazało się, że muszę przerobić sporą część funkcjonalności dodawania i edycji postów. Prawdopodobnie łącznie z formularzem… Więc walidację zostawiłam na później. Znowu.
Co dalej?
Dalsze prace nad aplikacją. Nie zarzucam ich. Chcę ją skończyć. I planuję wypuścić pierwszą wersję do końca czerwca.
Wbrew pozorom czeka mnie jeszcze bardzo dużo pracy. O aplikacji, jej rozwoju, rozwiązaniach jakie zastosowałam – będę jeszcze pisać w ramach kolejnych artykułów na blogu. Choć już nie w ramach raportów – to ostatni z nich.
Podsumowanie konkursu
Nie wszystko poszło zgodnie z planem. Aplikacja nie jest skończona. Ja jak wiecie musiałam zrobić tygodniową przerwę od prac. A mimo to nie ukrywam, że jestem totalnie wykończona… A jeszcze chwilę nie odpocznę, gdyż mam na głowie 11-miesięczne, aktualnie przeziębione dziecko (które na szczęście drzemie, a ja mam chwilę na napisanie tego raportu ), remont i przeprowadzkę (do końca maja) do nowego mieszkania, co wiąże się z potężnymi zakupami i ilością spraw do ogarnięcia. Jeszcze tylko 3 tygodnie i odpocznę… chyba.
Jeśli interesuje Cię jakie miałam założenia odnośnie tego projektu – zapraszam do pierwszego wpisu konkursowego.
Jednak ogólnie jestem zadowolona. Udało mi się rozwijać projekt przez całe 10 tygodni.
87 commit’ów na masterze = ok. 8,7 commit’a/tydzień, co może nie powala, ale jak na ilość dostępnego czasu też nie jest źle. A to nie jest wszystko, bo część zmian siedzi na oddzielnych branch’ach i czeka na skończenie oraz podegranie na develop’a oraz master’a.
22 wpisy w kategorii „Daj się poznać” (łącznie z tym raportem).
W ramach prac nad aplikacją zapoznałam się z frameworkiem React JS (którego wcześniej nie znałam). Nauczyłam się również Redux’a, którego wykorzystałam do zarządzania stanem aplikacji.
Jeśli chodzi o wygląd aplikacji postawiłam na Material Design – co okazało się strzałem w dziesiątkę. Również dlatego, że trafiłam na coś takiego jak Material UI – czyli zestaw komponentów Reactowych implementujących Google’s Material Design, gotowych do wykorzystania. Działa i wygląda świetnie! 🙂
Skoro aplikacja jest w tym stylu nie inaczej wygląda strona startowa projektu, którą mam zamiar niedługo skończyć i udostępnić.
Tutaj skorzystałam z MaterializeCSS.
Hosting, bazę danych (oraz już wkrótce autoryzację) zapewnia Firebase (by Google). Baza danych jest typu NoSQL. Rozważałam podpięcie MongoDB, ale ostatecznie postanowiłam skorzystać z rozwiązania oferowanego w ramach Firebase.
Po raz pierwszy pracowałam również z Webpack’iem. Ale zdecydowanie muszę jeszcze pogłębić swoją wiedzę na jego temat.
To, czego nie udało mi się kompletnie tknąć to temat Progressive Web Apps. Tj. od strony teoretycznej – tak, od strony implementacji – zero. A tak, zakładam, że będzie wersja aplikacji na urządzenia mobilne.
Jeśli chodzi o funkcje oferowane przez aplikację możecie podejrzeć je w ramach udostępnionego DEMO. Przygotowałam też mały filmik z działania aktualnie udostępnionej wersji aplikacji (niedługo podegram najnowsze zmiany).
W aplikacji jest sporo niedociągnięć (jedno z nich nawet rzuca się w oczy na filmiku 😛). Naprawdę sporo. I zdaje sobie z tego sprawę. Kiedy aplikacja będzie gotowa do testów udostępnię formularz kontaktowy, gdzie można będzie zgłaszać problemy i błędy.
Aplikacja jest totalnie niedostosowana do urządzeń mobilnych. To jeszcze przede mną.
O czym pisałam?
Poza cotygodniowymi raportami z postępów prac (wtorek/środa) , ukazały się następujące artykuły:
- Konfiguracja środowiska pracy & uruchomienie projektu
- Kobiety & Programowanie – fakty, mity i historie (no wiecie, 8 marca, Dzień Kobiet :P)
- Nauka React JS – moja ścieżka (materiały, pomoce)
- React + Material Design = Material UI <3
- Zaczynasz naukę programowania? Na co warto zwrócić uwagę w Stack Overflow Developer Survey Results 2017 – często podpowiadam w temacie nauki programowania (grupa wsparcia), więc kiedy tylko ukazał się raport postanowiłam go przeanalizować pod kątem informacji przydatnych na starcie (i podobno nieźle mi to wyszło)
- Flux & Redux – moja ścieżka
- Coursera, EDX – jak darmowe? jak płatne – również odpowiedź na jedno z pytań, które się pojawia regularnie
- Programowanie – czyli co & Jak wygląda dzień pracy programisty?
- Kierunek: Web Developer – Wstęp do serii + Front-end (cz. I)
- Kierunek: Web Developer – Front-end (cz. II) – tutaj jeszcze w planach kontynuacja serii
- Git – co, gdzie, jak i dlaczego? [Materiały na start]
Niektórzy z Was zauważyli pewnie również, że jakiś czas temu zniknęłam ze Snapchat’a oraz Instagrama (a i na Facebooku było mnie mniej). Niestety, musiałam wybierać gdzie zainwestuje swój czas i wolałam go przeznaczyć na rozwój aplikacji oraz inne zobowiązania… Liczę na to, że zadbam o Social Media, kiedy już skończę swoją aplikację (którą w tym celu wykorzystam).
Z podobnego powodu ni e bywałam za często na Slack’u dla uczestników DSP… Zawsze to grozi utknięciem na dłużej, a kiedy miałam ewentualną godzinę na prace… nie mogłam sobie na to pozwolić. Niestety L
Cieszę się, że wzięłam udział w konkursie 🙂 Choć z małym (8-11 miesięcznym dzieckiem) u boku był niezłym wyzwaniem. Dlatego jestem szczęśliwa, że udało mi się wytrwać i spełnić wymagania. A ciąg dalszy nastąpi 😉
Tydzień 10/10 – checked!
Wymagania konkursowe – spełnione!
Przypominam, że moje zmagania w konkursie mogłaś/mogłeś obserwować na bieżąco tutaj: