Blog Dla Młodszych Programistów C#/.NET

wtorek, 31 stycznia 2023
Każdy człowiek wprowadza w swoim życiu szereg złych nawyków, przez które pracuje z mniejszą skutecznością. Dotyczy to również programistów. Najgorsze nawyki dotyczą nie stylu życia, a przyjętego stylu pracy, dlatego warto poznać kilka z nich, by w przyszłości się ich wystrzegać.

8 Najgorszych Nawyków Programistów

1. Droga na skróty


Jednym z częściej pojawiających się wśród programistów negatywnych nawyków jest bezrefleksyjne kopiowanie i wklejanie kodu. Jest to podejście, które ma na celu uproszczenie sobie pracy. Programista, który przygotowuje kod, często sprawdza czy jego elementy nie zostały już wcześniej opracowane. Nie ma potrzeby wymyślania "koła na nowo". Jeśli jest możliwość uproszczenia swojej pracy, jeśli można skrócić pewne procedury, można korzystać z tej możliwości. Należy jednak mieć świadomość, że trzeba tutaj być uważnym. Za każdym razem, kiedy ktoś decyduje się na kopiowanie, musi rozumieć wklejany kod. Należy dokładnie zapoznać się z jego funkcjonalnością i możliwościami. Niezbędne jest także zweryfikowanie, czy jest on poprawny i czy w realizowanym zleceniu będzie zachowywał się tak samo. Jeśli nie zostanie wielokrotnie sprawdzony, może przyczynić się do powstawania błędów. To z kolei sprawi, że zamiast pracować krócej, czas realizacji zlecenia się wydłuży. Nie każdy blok kodu może być skopiowany. W pracy programisty obowiązują prawa autorskie. Decydując się na kopiowanie należy poświęcić czas na sprawdzenie, czy jego użycie jest zgodne z prawem. Jeśli tego się nie dopilnuje, można spotkać się z poważnymi konsekwencjami.


2. Komplikowanie najprostszych rzeczy


To błąd, który często jest popełniany przez młodych i niedoświadczonych programistów. Im więcej posiada się wiedzy teoretycznej, tym większa jest tendencja do komplikowania nawet najprostszych rzeczy. Stosując niekonwencjonalne, nowatorskie lub złożone rozwiązania do prostych projektów, chce się pokazać z jak najlepszej strony. W jednym miejscu chce się pokazać wszystkie swoje kompetencje. Nie zawsze jest to potrzebne. Prosty kod i sprawdzone rozwiązania również pokazują umiejętności oraz dają sygnał, że programista poza zaawansowaną wiedzą ma też pewne podstawy, z których nadal korzysta. Stosowanie bardziej złożonych procedur do realizacji najprostszych zadań sprawia, że projekt zajmuje więcej czasu i nie robi dobrego wrażenia na zleceniodawcy czy przełożonych. Oczekują oni bowiem za każdym razem efektywności. Jeśli nie trzeba komplikować, nie będą oni tego postrzegać jako zaletę projektu, a jako brak umiejętności dostosowania narzędzia do wymagań.


3. Brak dokumentowania działań


Prowadzenie kompletnej dokumentacji swojej pracy jest szczególnie istotne, gdy programista pracuje w większym zespole lub gdy jego praca później ma być jeszcze analizowana. Jest to także narzędzie, dzięki któremu można porządkować podejmowane przez siebie realizacje i weryfikować ich skuteczność. Dobra dokumentacja pomaga także w eliminowaniu problemów oraz pozwala na dostrzeżenie skutecznych modeli działania. Dokumentacja bywa lekceważona ze względu na przekonanie o tym, że jeśli samodzielnie pracuje się nad kodem, to posiada się dokładną wiedzę na temat jego zawartości i na temat przebiegu pracy. Założenie to jednak sprawdza się tylko wtedy, gdy jednocześnie pracuje się nad jednym projektem. Jeśli wykonuje się wiele zadań jednocześnie, pewne procedury mogą umknąć (tym bardziej, jeśli od realizacji do weryfikacji przez przełożonego lub klienta minęło dużo czasu). Brak dokumentacji sprawia również, że trudniej jest szkolić nowych pracowników lub wskazywać na efektywność przyjętych rozwiązań. Wydłuża to proces komunikacji lub w znacznym stopniu ją zaburza.


4. Niechętne odchodzenie od utartych schematów


Każdy programista pracujący od dłuższego czasu w swoim zawodzie dysponuje zestawem schematów, które zawsze stosuje się w konkretnych przypadkach. Ustalony odgórnie plan działania, w którym nie ma miejsca na elastyczność, może sprawić, że kod nie będzie działał poprawnie lub nie będzie spełniał wszystkich oczekiwań. To z kolei sprawi, że niezbędne będzie wdrożenie poprawek. Jeśli nieustannie bazuje się na tych samym schematach, usprawnienie kodu może być zupełnie niemożliwe. Niezależnie od tego, ile razy wykonuje się podobne zlecenie, pisze podobny kod, warto zachować w sobie pewną dozę elastyczności i otwartości. Jeśli nie korzysta się z posiadanej wiedzy, nie uczy się nowych rzeczy i nie wprowadza ich do swojej pracy, a bazuje się jedynie na tych samych wzorcach, może się okazać, że z innymi zadaniami programista sobie nie poradzi.


5. Nieomylność i bezbłędność


Złym nawykiem, który często pojawia się u programistów, jest przekonanie o tym, że są najlepsi, wszystko wiedzą, a tym samym nie popełniają błędów. Choć pewność siebie ułatwia funkcjonowanie w każdym zawodzie, to trzeba pamiętać, że jej nadmiar może stać się przyczyną kłopotów.

Do najpoważniejszych z nich zaliczyć należy:
  • niechęć do proszenia o pomoc – pojawia się tutaj obawa, że osoba pytająca lub prosząca o pomoc zostanie uznana za niekompletną i pozbawioną odpowiednich kompetencji, dlatego zamiast prosić o pomoc, samemu stara się rozwiązać problem. Traci się w ten sposób czas. Istnieje też spore ryzyko, że tych poprawnych szybko się nie znajdzie,
  • negatywne podejście do krytyki – jest ona postrzegana jako atak, nie przyjmuje się do wiadomości, że można popełniać błędy, wszelkie próby zwrócenia uwagi traktuje się bardzo personalnie,
  • ignorowanie opinii innych – najlepszym sposobem na wykonywanie pracy programisty jest ciągłe korzystanie z wiedzy i doświadczenia innych. Współpraca przynosi o wiele więcej korzyści, niż działanie samodzielne,
  • niebranie odpowiedzialności za swoje błędy – najlepszy programista to taki, który przyjmuje pełną odpowiedzialność za przygotowany przez siebie kod – nawet jeśli pojawiają się w nim błędy.
Programista, który wykazuje którąkolwiek z powyższych cech (lub co gorsza wszystkie jednocześnie), nie będzie w stanie dobrze wykonywać powierzonych mu obowiązków. Będzie też potrzebował więcej czasu, a tracony w ten sposób czas przyczynia się nie tylko do wyższego poziomu stresu, ale też może zaburzać relacje ze współpracownikami. Przekonanie o własnej nieomylności to jeden z najpoważniejszych, negatywnych nawyków, który wykształcają w sobie programiści.


6. Perfekcjonizm vs. zrobione


Negatywnym nawykiem, który może wykształcić się u programistów, jest przekonanie o tym, że za każdym razem muszą oddać perfekcyjnie działający kod. Oczywistym jest, że kod powinien spełniać oczekiwania i poprawnie działać, ale nie istnieje perfekcyjnie dopracowany kod. Chęć stworzenia takiego sprawia, że żadne zlecenie może nie zostać ukończone lub będzie oddane znacznie po terminie. Ciągle bowiem będą pojawiać się elementy, które trzeba poprawić, zmienić lub usprawnić. W efekcie niemożliwym staje się napisanie finalnego kodu. Sam perfekcjonizm nie powinien być postrzegany jako zaleta. To przejaw braku wiary w swoje możliwości i niskie poczucie własnej wartości. Rezygnacja z perfekcjonizmu oraz skupienie się na wykonaniu zlecenia tak, by było ono zgodne z wytycznymi i by spełniało konkretne funkcje, jest umiejętnością, której należy się nauczyć, by móc efektywnie pracować w branży.


7. Praca przez całą dobę


Problemem wielu programistów jest nieumiejętność wydzielenia czasu przeznaczonego na pracę oraz wydzielenie czasu wolnego. O ile nie jest to trudne przy mniejszej ilości zleceń, o tyle problematyczne staje się, gdy zbliża się deadline lub gdy trzeba realizować kilka projektów jednocześnie. Wówczas programista angażuje cały swój potencjał i energię na to, by zrealizować do końca zadanie. Wynika to z przekonania, że im dłużej będzie pracował, tym szybciej osiągnie założony cel. W przypadku pracy tego rodzaju ważny jest wypoczynek i świeży umysł. Żadna praca nie zostanie dobrze wykonana, gdy wykonuje się ją kosztem wypoczynku i snu. Bez należytej przerwy i odpowiedniej ilości snu umysł pracuje coraz wolniej, jest ociężały i częściej popełnia błędy. Nie dostrzega również pomyłek, które przy pełnej sprawności zauważyłby od razu. Jeśli organizm jest przemęczony, człowiek będzie dążył do tego, by jak najszybciej skończyć zadanie i móc odpocząć. Pośpiech i brak koncentracji to najgorsze, co może przytrafić się programiście – zwłaszcza przy ważnym zleceniu. Niezależnie od przyjętych terminów, od ilości zleceń, planując pracę trzeba zaplanować też czas na odpoczynek. Tylko wtedy zyska się pewność, że umysł będzie w pełni sprawnie funkcjonował, a praca nie wydłuży się przez konieczność poprawiania błędów.


8. Obowiązki ponad higieną życia


Ostatni aspekt również nie dotyczy bezpośrednio techniki pracy czy przyjętych schematów działania. Odnosi się głównie do stylu życia i metod pracy, które przyjmuje się, gdy chce się realizować więcej zleceń. Jest to nawyk, który pojawia się najczęściej wśród młodych programistów, przekonanych, że aby wypracować sobie pozycję, muszą pracować nieustannie.

Zaniedbują w ten sposób takie aspekty życia, jak:
  • relacje rodzinne,
  • znajomych i życie towarzyskie,
  • rozwój osobisty – niezwiązany z pracą,
  • aktywność fizyczną,
  • czas wolny,
  • regularne i pełnowartościowe posiłki.
Higiena życia jest często lekceważona. Przyjmuje się założenie, że dopiero po wypracowaniu odpowiedniej pozycji zawodowej można skoncentrować się na innych aspektach życia. Wynika to z faktu, że na rynku pracy jest duża konkurencja, a potencjalni pracodawcy oczekują sukcesów i dużego doświadczenia. Niemniej, niezależnie od tego, co chce się osiągnąć, trzeba mieć do tego pełnię sił. Bez nich nie da się realizować efektywnie żadnego zadania. Co więcej, przepracowanie i nadmierna koncentracja na pracy mogą przyczynić się do pogorszenia się zdrowia fizycznego i psychicznego. Osoby, które nie dbają o odpowiedni balans w życiu, częściej doświadczają wypalenia zawodowego i depresji. Częściej też myślą o zmianie zawodu. Ze względu na fakt, że praca programisty wymaga ciągłego skupienia i niezwykłej uwagi, praca ta wyczerpuje jeszcze bardziej (i w krótszym czasie). Niezbędne jest pielęgnowanie relacji z bliskimi, posiadanie zainteresowań oraz aktywność fizyczna.


Podsumowanie


Chcąc poprawić efektywność swojej pracy oraz zredukować poziom odczuwanego stresu, niezbędne jest zmienienie negatywnych nawyków, które utrudniają pracę. Ważne jest, aby wdrożyć zachowania, dzięki którym łatwiej na co dzień wykonywać swoje obowiązki, a przede wszystkim takie, które pozwolą zminimalizować ryzyko popełniania błędów. Może się okazać, że przyjęty schemat działania sprawia, że niezależnie od zlecenia, popełnia się dokładnie te same błędy, a tym samym projekt wymaga ciągłej poprawy. Praca nad zmianą najgorszych nawyków pomoże wyeliminować te, które obniżają poziom profesjonalizmu i znacznie wydłużają pracę.

To wszystkie na dzisiaj. Jeżeli taki artykuł Ci się spodobał, to koniecznie dołącz do mojej społeczności – darmowe zapisy, gdzie będziesz również miał dostęp do dodatkowych materiałów i przede wszystkim bonusów. Do zobaczenia w kolejnym artykule.

Poprzedni artykuł - Różne Formy Zarabiania Na Aplikacjach
Autor artykułu:
Kazimierz Szpin
Kazimierz Szpin
Programista C#/.NET. Specjalizuje się w ASP.NET Core, ASP.NET MVC, ASP.NET Web API, Blazor, WPF oraz Windows Forms.
Autor bloga ModestProgrammer.pl
Komentarze (3)
Adam
ADAM, wtorek, 31 stycznia 2023 21:40
Dzięki za art :)
Kazimierz Szpin
KAZIMIERZ SZPIN, niedziela, 5 lutego 2023 10:57
Cześć ADAM. Proszę bardzo. Zapraszam również do innych artykułów, bo jest ich sporo :)
Logical Luke
LOGICAL LUKE, wtorek, 14 lutego 2023 10:36
Bardzo dobry wpis. Zdecydowanie zgadzam się z wszystkimi punktami. Najgorsze, że mimo świadomości paru z nich czasem bardzo ciężko jest od nich odejść.
Dodaj komentarz

Wyszukiwarka

© Copyright 2024 modestprogrammer.pl. Wszelkie prawa zastrzeżone. Regulamin. Polityka prywatności. Design by Kazimierz Szpin