Początek roku nie co mnie sponiewierał. Nie bardzo wiedziałem co mogę robić, a tu zaskoczenie. Mam wybór i to spory.

Na początku roku taki duży wybór projektów, które mogę realizować. Projektów o różnym stopniu trudności, czasochłonności i zaawansowania.

Przyszedł czas dokonać wyboru gdyż nie mogę ciągnąć naraz kilku projektów. Poniżej zamieszczę krótki opis wraz z zyskami  jakie chciałbym osiągnąć, problemy na które mogę się natknąć lub po prostu cel jaki mi przyświeca.:

  1. PHP Laravel– rozpocząłem kurs laravela, ten temat może przynieść największy namacalny zyski to jest projekt, który mogę prowadzić jako dodatkowy, w jakimś ograniczony sposób. Ma najniższy stopień trudności, może się najszybciej zakończyć, mało w tym wyrafinowania i ambicji ale temat nie jest też aż tak nudny.
  2. Interfejs do bazy danych w trójwymiarze, stworzony za pomocą Unreal Engine. Interfejs który będzie działał w wirtualnej rzeczywistości. Ten pomysł wpadł przypadkiem w ciągu ostatnich kilku dni. Nie przypadkiem pojawił się w mojej głowie, dostałem ostatnio zadanie dodatkowe prowadzenia szkolenia w wirtualnej rzeczywistości według scenariusza. Projekt ten jest najbardziej ambitny z całej czwórki (jest totalną abstrakcją), wymagać będzie bardzo dużo zaangażowania. Dodatkowo dochodzi do tego poznanie zupełnie innego środowiska (graficznego) oraz języka C++(opcjonalnie).  Ciężko powiedzieć z czym tak naprawdę się będę mierzyć, z przeprowadzonych rozmów wynika, że problemem nie będzie połączenie z bazą danych, a ich przedstawienie. Czy ktoś trójwymiarową bazę stworzył? nie wiem czy ktoś jest tak szalony, jedynie w filmach s-fi widziałem. Jaki zysk to może przynieść? Raczej żaden, a jedynie satysfakcje. Oprócz programowania trzeba też znać się na grafice 3D w jakimś stopniu. Na plus muszę zaliczyć, że u mnie w pracy są ludzie którzy pracują w Unreal Engine, więc można liczyć na wsparcie. Jest jeszcze jeden zysk jeżeli by się to udało mógłbym zobaczyć informacje w wielu wymiarach, to jest prawdziwe Science Fiction.
  3. Torfowisko. Trzeci projekt, który był zadanie z domowym z DNA, a stał się całkiem pokaźnym projektem. Mam zrobiony Event Storming (w trzy osoby przeszliśmy kolejne etapy) Big Picture, wyznaczone Sub-domeny, Process Level oraz Desingn Level na podstawie jednego Bounded Contextu. Jest również napisany kod, który opisuje jeden z bounded contextów (przedstawiony w desing level). Mam wpięty przełącznik między bazami SQLite, jedna z baz jest w pamięci a druga jest plikowa. Testy mogę sobie przełączać miedzy jednym a drugim rodzajem baz. Tu należało by pociągnąć i rozwinąć kolejne Bounded Contexty poprzez ESDL oraz stworzyć kod do nich. To wymagać będzie ogromu czasu i pracy. Co chciałbym uzyskać? Nie dawno rozpoczołem rozdział o bounded contextaxch w książce Erica Evans-a Domian Driven Design. Gdzie autor przedstawia koncepcję BC oraz możliwe sposoby komunikacji między kontekstami. To jest rzecz, która mnie ciekawi, komunikacja między Bounded Contextami oraz sposoby przedstawienia kolejnych modułów (BC) za pomocą różnej architektury (przedstawionej w DNA). Projekt sam w sobie nie przedstawia większej wartości jeżeli chodzi o zysk finansowy ale ma olbrzymi potencjał możliwości.
  4. Projekt związany z bazami danych NoSql, który również jest w pewnym stopniu stworzony. Mam wpiętą obsługę bazy Mongo oraz RavenDB. Mam do solucji dodane dwa projekty z konsolą i jeden MVC. Na dzień dzisiejszy jedna z konsol łączy się i insertuje do mongo rekordy, druga służy do podglądu, a MVC również służy do podglądu danych. Docelowo chciałbym mieć jedną konsole Mongo (zapis), druga RavenDB (zapis), trzecia Redis(integracja między bazami i dbanie o spójność), MVC odczyt wszystkich trzech. Oprócz „zabawy” z bazami chciałbym wrócić przy tym projekcie do wielowątkowości. Jaki cel projektu? Raczej poznanie i zmierzenie się z problemami integracji między bazami i wielowątkowościom. Bazy danych były zawsze „bliskie memu sercu”, przez wiele lat był to MS SQL, a od zeszłego roku rozszerzyłem, moje zainteresowanie, o bazy nosql, które dają ciekawe możliwości. Zresztą uważam że powinno się poznać choćby w minimalnym stopniu inne bazy nie tylko relacyjne. Dodatkowo w tym projekcie mam podpiętą obsługę czytników RFID, docelowo aplikacja ta miała być na maratonie rowerowym do pomiaru czasu.

Trzy z powyższych projektów są zaczęte w mniejszym lub większym stopniu. Co do Unreal Engine, cóż ostatnio postanowiłem zrezygnować ze słowa spróbuje więc zrobię (jeżeli rozpocznę ten projekt), a czy wyjdzie czy nie to ma mniejsze znaczenie. Zrobię to na tyle na ile mnie stać.

Pytanie co wybrać? pozostaje otwarte.

Kategorie: Inne