poniedzia艂ek, 13 marca 2017

Najwa偶niejsze technologie, kt贸re musisz pozna膰 w pracy developera, a nie poznasz ich z tutoriali

Gdy zaczyna艂em programowanie, du偶o czasu sp臋dza艂em na ogl膮danie tutoriali i przepisywanie z nich kodu. Wszystko wygl膮da wtedy pi臋knie, a偶 do momentu, gdy idealnie przepisany kod, przestaje dzia艂a膰, bo na przyk艂ad wysz艂a nowa wersja frameworka i tutorial jest ju偶 nieaktualny, lub nie masz w systemie jakiej艣 potrzebnej aplikacji.
W pracy okazuje si臋, 偶e du偶o czasu sp臋dzamy w艂a艣nie na rozwi膮zywaniu problem贸w pod tytu艂em "dlaczego nie dzia艂a", oraz na zajmowaniu si臋 wieloma innymi rzeczami, niezwi膮zanymi z kodem. Oto kilka przyk艂ad贸w:
  1. Praca z systemami zarz膮dzania zadaniami - Trello, Jira, Asana i wiele innych. Zadania cz臋sto s膮 po angielsku, a co gorsza, czasem nawet po niemiecku :(
  2. Wsp贸艂praca z innymi lud藕mi - praca front enda, to tak偶e rozmowy z innymi programistami i niekiedy - wyznaczanie im zada艅, kt贸re umo偶liwi膮 nam wykonanie naszych task贸w. Tak偶e umiej臋tno艣膰 wymigania si臋 od tych zada艅, kt贸rych wiemy, 偶e nie uda nam si臋 wykona膰. Je艣li jeste艣 jedynym front-endowcem w okolicy, b臋dziesz musia艂 pomaga膰 tak偶e innym programistom w rozwi膮zywaniu problem贸w, zwi膮zanych np z jQuery.
  3. Praca z serwerem lokalnym - stawianie serwera, 艂膮czenie si臋 z nim przez SSH lub aplikacje typu WinSCP, czasem edytowanie plik贸w na serwerze za pomoc膮 edytor贸w takich, jak Nano lub VIM. Tutaj mo偶esz liczy膰 na pomoc backendowc贸w.
  4. Konsola - sprawne poruszanie si臋 w Windows i Linux, uruchamianie kompilator贸w (np Sass), czasem stawianie ca艂ych projekt贸w za pomoc膮 takich narz臋dzi, jak Angular CLI. Warto pozna膰 tak偶e emulatory konsoli, jak ConEmu czy CMDR.
    #edit 10.2017 - od d艂u偶szego czasu zarzuci艂em u偶ywanie emulator贸w konsoli, powoduj膮 one sporo b艂臋d贸w.
  5. Zarz膮dzanie czasem - deklarowanie czasu na wykonanie zadania, pomiary, jak d艂ugo zajmuje nam praca, planowanie sobie dnia i przygotowanie si臋 do stand-up贸w. Cz臋sto praca z terminami.
  6. Praca z GIT - pobieranie projekt贸w, tworzenie branchy i ich 艂膮czenie, rozwi膮zywanie konflikt贸w. Im wi臋kszy projekt, tym bardziej staje si臋 to skomplikowane. Warto pozna膰 klienty Git (lub innych system贸w kontroli wersji), jak SourceTree czy te wbudowane w edytor.
  7. Czytanie i edytowanie PHP (na przyk艂ad przy pracy z TWIG lub Wordpress) i innymi j臋zykami backendowymi- warto pozna膰 konstrukcje u偶ywane przy templatkach oraz zapozna膰 si臋 z podstawami sk艂adni. Je艣li poznasz drugi j臋zyk programowania, b臋dziesz m贸g艂 艂atwiej wybra膰 rozwi膮zanie odpowiednie do problemu. To samo dotyczy innych j臋zyk贸w backendowych.
  8. Rozwi膮zywanie zupe艂nie nietypowych przypadk贸w - na przyk艂ad, stylowanie ekranu wydruku dynamicznie generowanego dokumentu, czy zastanawianie si臋 nad tym, dlaczego szablon responsywnego maila nie wy艣wietla si臋 w Outlook 2016, a dzia艂a na iPhonie 7. Inny przyk艂ad - menu na pewnej szeroko艣ci ekranu zas艂ania logo i trzeba to poprawi膰, bez rozwalania ca艂ego projektu. 
  9. Konfigurowanie wtyczek - dla oszcz臋dno艣ci czasu, znacznie 艂atwiej jest zaimplementowa膰 gotowy slider, ni偶 go tworzy膰 od nowa. Zadaniem front-enda jest zapoznanie si臋 ze specyfikacj膮 i wdro偶enie widgetu (oraz zastanawianie si臋, dlaczego nie dzia艂a ;)
  10. Instalacja 艣rodowisk - to co艣, czego najbardziej nie lubi臋. Ustawianie r贸偶nych program贸w tak, by umo偶liwi艂y wydajn膮 prac臋, zmiana 艣cie偶ek 艣rodowiskowych itp. Cz臋sto wspieram si臋 tutaj wideotutorialami.
  11. Praca z zupe艂nie nowymi rzeczami - nowe frameworki, biblioteki itp, kt贸re trzeba szybko zrozumie膰 i zastosowa膰.

Brak komentarzy:

Prze艣lij komentarz