Od kilku miesięcy regularnie uczestniczę w spotkaniach WarsawJS – społeczności profesjonalistów i entuzjastów języka JavaScript. Dzisiaj podzielę się subiektywną relacją z wczorajszych prelekcji.
„Bootcampy okiem trenera i developera”
Michał Michalczuk swoją opowieść o bootcampach oparł na statystykach. Szanuję to, że choć sam organizuje bootcampy, potrafi mówić o nich krytycznie.
Michał słusznie wskazuje na to, że: nie każdy jest dobrym materiałem na programistę, nie wszystkie polskie bootcampy są sobie równe oraz że bootcamp nie zastąpi studiów. Zdaniem prelegenta, bootcamp sprawdza się jako szybkie wprowadzenie w temat i początek dalszego rozwoju. Zdecydowanie się z tym zgadzam.
„Building high performance apps with Titanium”
Rene Pot reprezentuje amerykański Appcelerator, który od 10 lat tworzy i rozwija framework Titanium. Opowiedział o jego zaletach, porównując go do podobnych, bardziej popularnych rozwiązań: React Native czy Flutter. Zrobił nawet live demo, na którym zaprezentował, jak łatwo tworzy się aplikacje mobilne z wykorzystaniem tej technologii.
Zaciekawiło mnie, jak komercyjna firma zarabia na produkcie, który jest w 100% open source. Okazuje się, że Titanium jest utrzymywany dzięki dużym firmom. Jednocześnie, zgodnie z ideą otwartości kodu, wszystkie rozwiązania są dostępne na publicznym GitHubie.
Traktuję tę prezentację jako ciekawostkę, ponieważ nie znam ani jednej aplikacji (dużej czy małej), która została napisana w tej technologii. Sam Rene mówi, że na polskim rynku nie znalazł żadnej aplikacji opartej o Titanium.
„Call me irresponsible if I ever crash on null or undefined in JavaScript or TypeScript”
Bardzo treściwa i konkretna prezentacja. Rafał Pocztarski opowiedział o dobrych praktykach, których stosowanie pozwala uniknąć przykrych niespodzianek – błędów i crashów aplikacji.
O czym powinien pamiętać każdy JS developer?
- Walidacja danych przychodzących z API. Jeśli zakładamy, że z naszego API otrzymamy dane w takim formacie, jaki został ustalony, to narażamy się na błąd. Powinniśmy je sprawdzać i walidować.
- Spodziewanie się niespodziewanego. Zawsze powinniśmy uwzględniać wyjątkowe przypadki (edge case’y).
- Eliminowanie błędów już na etapie pisania kodu. Przed błędami typu type error, czy null pointer exception zabezpieczają m.in takie narzędzia jak: TypeScript, TSLint, Flow, TravisCI.