Uruchamiając tego bloga miałem jeden cel, poświęcić swój czas na poznawanie nowych rzeczy. Jak możecie przeczytać w pierwszym wpisie na tym blogu zmotywował mnie do tego Mirek Burnejko swoim vlogiem i ideą trzech poziomów o której możecie przeczytać na jego blogu. Jednak gdy opracowałem plan na pierwszą serię czterech tygodni okazało się, że ponownie startuje konkurs “Daj Się Poznać” który obserwowałem w poprzedniej edycji. Po zastanowieniu stwierdziłem, że idealnie wpasowuje się to w ideę czterech tygodni. Tak więc wymyśliłem projekt biorąc pod uwagę listę rzeczy które chciałbym poznać i zgłosiłem swój udział.

Chwila o mnie…

Jestem programistą PHP, freelancerem, zajmuję się tworzeniem i rozwijaniem oprogramowania EPR, systemu liczenia klientów w centrach handlowych, systemu awizacji opartego o rozpoznawanie tablic rejestracyjnych. Czasem dla urozmaicenia tworzę strony internetowe oparte o autorskiego CMS-a, którego napisałem wieki temu ucząc się Zend Framework.

Małe co nieco o projekcie

Projekt który chcę realizować w ramach konkursu “Daj Śię Poznać” to prosty system RCP (rejestracja czasu pracy). System będzie rejestrował rozpoczęcie pracy, jej zakończenie oraz przerwy podczas jej trwania. Wszystko będzie się odbywało z wykorzystaniem panelu dotykowego do którego będzie podłączony czytnik RFID co pozwoli na identyfikację osób wykorzystując karty lub pastylki RFID.

Oprogramowanie panelu dotykowego będzie napisane w JavaScript i uruchamiane przez Node.js jako usługa. Zadaniem oprogramowania będzie odczytywanie numerów z kart przykładanych do czytnika i wyświetlanie informacji na panelu. Dodatkowo gdy osoba rozpoczęła pracę będzie mogła skorzystać z predefiniowanych typów przerw, którą będzie wybierała z poziomu panelu.

Jako że zarządzanie takim panelem z poziomu ekranu dotykowego mogło by być dość niewygodne zostanie napisana aplikacja działająca jako serwer, będzie ona zarządzała podłączonymi do niego panelami dotykowymi. Oprogramowanie serwerowe będzie dostarczało do paneli aktualne listy pracowników, typy przerw oraz inne niezbędne dane potrzebne do działania paneli w sposób autonomiczny (na wypadek utraty łączności z serwerem). Zostanie także wystawione REST-owe API, aby panele mogły przesyłać dane do serwera.

Podział na aplikację kliencką i serwerową w projekcie pozwoli na naukę Node.js która jest zadaniem #02, ale także poszerzenie wiedzy za zakresu frontend-u oraz eletroniki.

Close