czwartek, 4 stycznia 2018

Programistyczne podsumowanie roku 2017 - czyli w czym uda艂o mi si臋 wyskilowa膰

2017 rok, zacz膮艂em od zmiany pracy i przeprowadzk膮 do Warszawy, z powodu niewielkiej liczby og艂osze艅 o prac臋 dla junior贸w w Lublinie. W czerwcu, gdy ju偶 mia艂em rok do艣wiadczenia, zmieni艂em firm臋 jeszcze raz, tym razem, dostaj膮c znacznie lepsze wynagrodzenie i ciekawsze projekty.

Uko艅czy艂em tak偶e stylowanie aplikacji mobilnej i pu艣ci艂em oko艂o 520 commit贸w w swoich projektach.

Technologie, kt贸rych si臋 nauczy艂em w tym roku to mi臋dzy innymi:

Sass - korzysta艂em z niego ju偶 wcze艣niej, jednak dopiero praca z realnymi projektami, pozwoli艂a mi na jego lepsze zrozumienie. Pozna艂em te偶 kilka ficzer贸w, kt贸re dostarcza nam Compass. Bardzo pomocne w pracy z Sass, by艂o przerobienie ksi膮偶ki Sass and Compass for Designers.

Frameworki CSS - troch臋 tego by艂o, Bootstrap 3 i 4, Foundation, Bulma CSS. Cukiereczki, z kt贸rych trzeba korzysta膰 jak najwi臋cej.

Pisanie w czystym JS/jQuery - znajomy podpowiedzia艂 mi, 偶e kod w jQuery mo偶na 艂atwo przerobi膰 pod czysty JS. Zacz膮艂em korzysta膰 ze strony http://youmightnotneedjquery.com/, co pozwoli艂o mi w pewnym stopniu uwolni膰 si臋 od jQuery. Jednocze艣nie, w pierwszej pracy w Warszawie by艂em przez jaki艣 czas jedynym front-endowcem, przez co, naturalnie musia艂em wyskilowa膰 si臋 tak偶e w bibliotece stworzonej przez Johna Resiga.
Pozna艂em tak偶e sporo nowych plugin贸w do jQuery.
Stworzy艂em tak偶e kilka projekt贸w w czystym JS. Moim zdaniem, jQuery raczej nie nadaje si臋 do pisania du偶ych aplikacji, o ile, nie narzucimy restrykcyjnych regu艂 pisania. Frameworki JS, narzucaj膮 same w sobie odpowiednie pisanie kodu.

ES6 / Typescript - poznanie tych technologii znacznie u艂atwi艂o mi pisanie bardziej skomplikowanych aplikacji. Dzi臋ki nim, pozna艂em tak偶e lepiej programowanie obiektowe (kt贸re niezbyt przydawa艂o si臋 przy niewielkich mechanikach implementowanych w jQuery). Nadal pozostaje tutaj mn贸stwo do nauczenia si臋.

AngularJS/Angular2+ - 1 ma艂y i 2 du偶e projekty w Angular JS, kilkana艣cie w艂asnych projekt贸w w Angular 2+ - dzi臋ki nim, zwi臋kszy艂a si臋 moja 艣wiadomo艣膰 dotycz膮ca prawid艂owej architektury du偶ych aplikacji. Moim zdaniem, te technologie bardzo u艂atwiaj膮 pisanie aplikacji i pozwalaj膮 na stworzenie ciekawego projektu, tak偶e osobom, kt贸re dopiero zaczynaj膮 programowanie. Oczywi艣cie, great power comes great responsibility.

ReactJS/React Native - kilka w艂asnych projekt贸w do nauki, dzi臋ki kt贸rym, nauczy艂em si臋 podstawowych ficzer贸w tych bibliotek i przesy艂ania danych mi臋dzy modu艂ami. Pozosta艂o jeszcze bardzo du偶o do nauki.

Vue.js - lizn膮艂em podstawy, technologia niszowa w por贸wnaniu do innych framework贸w JS. W tym roku raczej nie b臋d臋 si臋 bardziej wg艂臋bia膰 w Vue.

Rest - w tym roku zetkn膮艂em si臋 po raz pierwszy z tym sposobem komunikacji warstwy backendu i frontendu. Stworzy艂em kilka w艂asnych prostych aplikacji, kt贸re si臋 na nim opieraj膮, a tak偶e pracuj臋 z nim w obecnej pracy. Rest jest ok.

Umbraco, Ghosts - technologie CMS, kt贸re maj膮 za zadanie mi臋dzy innymi zdetronizowanie Wordpressa. Samodzielnie stworzy艂em stron臋 na Umbraco od zera - od projektu graficznego do jego zaimplementowania, tak偶e po stronie cz臋艣ci mechanik na backendzie. Uwa偶am, 偶e Wordpress nadal ma znacznie wi臋ksze mo偶liwo艣ci, jest ta艅szy i 艂atwiejszy w konfiguracji. Szkoda, 偶e mniej bezpieczny.

C# - przerobi艂em podstawy. .

Node.js/Express.js, czyli JS na backendzie. Stworzy艂em w nich jedno czy dwa Rest API.

Narz臋dzia, kt贸re wykorzystywa艂em w tym roku

VSCode - edytor od Microsoftu, kt贸ry zna艂em ju偶 rok temu, ale wtedy zupe艂nie nie przypad艂 mi do gustu. So awesome!

PHPStorm - Pracowa艂em na nim oko艂o p贸艂 roku. 艢wietny edytor, du偶o ciekawych opcji, kt贸re u艂atwiaj膮 programowanie. M贸j wniosek po tym czasie - wol臋 l偶ejsze edytory. Oszcz臋dzaj RAM!

Win 10 - gdyby nie aktualizacje, nie mia艂bym zastrze偶e艅.

Visual Studio - potrzebne do programowania w C#. Ci臋偶kie IDE, wiel os贸b narzeka na jego oci臋偶a艂o艣膰.

Postman - 艣wietne narz臋dzie do testowania RestApi. Wz贸r, pokazuj膮cy, jak dobrze mo偶e dzia艂a膰 i wygl膮da膰 aplikacja desktopowa napisana w JS.

R贸偶ne Linuxy (Lubuntu, Fedora, Mint) - nadal nie jestem do ko艅ca przekonany do pracy na Linuxie. By膰 mo偶e przekona mnie do tego bli偶sze poznanie j臋zyk贸w backendowych, kt贸re b臋d膮 dzia艂a艂y na serwerze na Linuxie. W tym roku pozna艂em sporo polece艅 linuxowych i nieco pracowa艂em na Linuxie, tworz膮c w nim projekty JS.

Plany na 2018 rok
  • Dalsza nauka JS i zmierzanie bardziej w stron臋 bycia programist膮 JS, ni偶 front-end deweloperem.
  • Lepsze poznanie RXJS, Lodash i podobnych zabawek dla programist贸w JS.
  • Testy - Karma, Jasmine itd.
  • Frameworki - Angular, React
  • Nauka og贸lnych zasad programowania, takich, jak OOP, wzorce projektowe, dobre praktyki
  • Rozszerzenie wiedzy na temat “nowego CSS-a”, czyli Grid i Flex Box, o ile b臋dzie potrzebne do pracy. 
Pozdrawiam wszystkich i 偶ycz臋 wielu programistycznych sukces贸w! W komentarzu napisz, co uda艂o Ci si臋 osi膮gn膮膰 w mijaj膮cym roku, jako programista!

Brak komentarzy:

Prze艣lij komentarz