Rozpoczynam "Daj się poznać 2017"

Rozpoczyna się miesiąc marzec i zaczynam wyzwanie "Daj się poznać 2017". Całe to wyzwanie polega na rozwijaniu projektu open source przez 10 tygodni i jednoczesne pisanie na blogu 2 postów tygodniowo. Przynajmniej jeden post w tygodniu musi być poświęcony rozwijanemu oprogramowaniu. Drugi post może dotyczyć dowolnych zagadnieć związanych z branżą IT.

Daj się poznać 2017

O konkursie dowiedziałem się od kolegi z pracy, który też podjął wyzwanie. Informacja rozniosła się po firmie i tak do udziału zgłosiło się jeszcze kilka osób. W następnym poście wrzucę linki do blogów wszystkich pracowników Divante, którzy również biorą udział w "Daj się poznać 2017".

Więcej o Daj się poznać

Motywacja

Od jakiegoś czasu chciałem wykonać aplikację, którą będę teraz realizować w ramach tego konkursu. Dodatkowo ostatnio interesuję się React.js i chciałem zrealizować projekt w tej technologii. Spodobała mi się idea tego konkursu i postanowiłem w końcu zabrać się za tę aplikację. Dodatkowe wymaganie pisania o projekcie na blogu pozwoli mi również podszlifować moje umiejętności pisarskie i jednocześnie "Dam się poznać" w Internecie. Liczę na to, że to wyzwanie będzie motywować mnie do regularnej pracy nad projektem i dotrwam do samego końca.

Projekt

Aplikacja ma wspomagać organizację życia i motywować do pracy nad sobą przez wykorzystywanie technik grywalizacji. Na początku zakładam możliwość organizacji wszystkich spraw, które wykonujemy codziennie. Zarządzanie swoją listą zajęć z uwzględeniem wag każdego zadania. Dla przykładu: za zrobienie zakupów dostaniemy 5 punktów, natomiast za oglądanie TV przez 2 godziny stracimy 12 punktów. Z czasem punkty mogą zostać rozbite na rodzaje (punkty za działania poprawiajace zdrowie fizyczne, inne punkty za rozwój kulturowy, intelektualny itp.). W planach jest również możliwość rejestracji czasu spędzanego na poszczególnych zadaniach, żeby stać się bardziej świadomymi tego, gdzie nam "czas ucieka".

Bazowym celem jest organizacja zadań i codziennych czynności, a po osiągnięciu tego celu będę dorzucać następne wymagania. Liczę na osiągnięcie głównego celu po około 6-7 tygodniach i wtedy będę miał jeszcze czas na dalsze usprawnienia projektu i zwiększaniu jego funkcjonalności.

Technologia

Projekt będzie realizowany w React.js i Redux po stronie frontu. Backend planuję wykonać na Node.js z frameworkiem Express.js z użyciem bazy MongoDB. Chciałem ten projekt szybko zacząć, przez co skorzystałem z reactGo.

Uwielbiam zawsze przy rozpoczynaniu projektu wybierać sobie stos technologiczny, konfigurować wszystkie narzędzia, ale w tym projekcie chcę jak najwięcej czasu spędzić na rzeczywistym programowaniu i pracy z React.js. Jestem trochę "uzależniony" od narzędzi i ten projekt będzie takim lekkim detoksem od konfiguracji. Może po zakończeniu wyzwania napiszę parę wpisów o konfiguracji webpack i docker, ale teraz zamierzam mieć działający pierwszy widok w przyszłym tygodniu.

Przy tym projekcie chcę również podszlifować pisanie testów i spróbuję przekonać się do TDD. Zobaczę jak w moim przypadku działa te podejście, czy rzeczywiście oprogramowanie będzie miało lepszą architekturę i będzie bardziej stabilne.

Plany są duże i zobaczymy, czy udaje się je zrealizować. W następnym poście myślę, że pojawi się już trochę kodu i opowiem trochę więcej o środowisku pracy.

Opublikowano: 01.03.2017