Nie chce mi się już programować |
Nie chce mi się już programować |
20.06.2019, 21:38:28
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 707 Pomógł: 266 Dołączył: 3.07.2012 Skąd: Poznań Ostrzeżenie: (0%) |
Cześć, postanowiłem podzielić się z Wami moimi odczuciami na temat programowania webowego.
Zajmuję się tym od ponad 15-tu lat. I wiecie co? Od kilku lat wydaje mi się, że jestem w tym cienki. Kiedyś uwielbiałem rozgryzać problemy programistyczne, projektować rozwiązania i dbać o to, żeby mój projekt był jak najlepszy w odbiorze dla publiczności. Ale od kilku lat programowanie webowe to zalew technologii, zalew frameworków i bibliotek. Praca z projektem polega już nie na rozwiązywaniu problemów, tylko na znajomości tej czy innej paczki. I wiecie co? Nie chcę już ich znać. Jestem zmęczony tą ciągłą gonitwą za zmianami i trendami. Mam dość tych wszystkich package managerów. Mam dość pytań: "czy pracował pan na XXX", gdzie XXX to nazwa jednego z tysiąca frameworków, CMS-ów i bibliotek. Umiem Laravela na bardzo dobrym poziomie i wiecie co? Czuję się, jakbym nie umiał nic. Poza Laravelem umiem WordPressa, Vue.js, React JS i wiele różnych API i bibliotek. Ale i tak czuję, że robię to źle, bo przecież jest tysiąc różnych narzędzi i bibliotek, klienci co chwilę pytają o te, których nie znam. Ja chcę tworzyć. Nie chcę bawić się w zlepianie kolejnych gotowych paczek. Dlaczego programowanie webowe nie wymaga już tyle logicznego myślenia, co kiedyś? Teraz wymaga to wiecznego researchu i pamiętania, czego do czego i z czym używać. A mnie się zwyczajnie już nie chce. Mam kiepską pamięć. Człowiek chce mieć poczucie, że zbliża się do mistrzostwa. W programowaniu webowym to nigdy nie następuje. Zanim się ogarnie jedną technologię do dobrego poziomu, ta technologia staje się już albo przestarzała, albo niewystarczająca. To kołowrotek, a ja jestem chomiczkiem. Czuję, że za kilka lat zamienię dobre pieniądze z programowania na zajęcie, które daje więcej satysfakcji. Chcę być w czymś mistrzem. Tylko tyle i aż tyle. Ten post edytował SmokAnalog 20.06.2019, 22:02:18 |
|
|
20.06.2019, 23:19:05
Post
#2
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 2 Dołączył: 19.06.2019 Ostrzeżenie: (10%) |
Ja po napisaniu małego serwisu w Ruby on Rails i jakichś blogów i aplikacji w Django, wróciłem do PHP 7. Zniechęciło mnie kilka przykładów z tutoriala od Django, kody tam napisane po prostu nie chciały działać. Wydaje mi się, że PHP jest jak najbardziej stabilne, a trudno nadążyć za RoR, Django czy tymi nowinkami typu Elixir - Phoenix oraz Crystal. A na pewno za Node. Oracle też ostatnio przyspieszyło i Java wychodzi co kilka miesięcy, ciekawe jak jest z przejściami do kolejnych wersji takich kobył programistycznych jak Spring, przechodząc z Javy 8 do Javy 13. Niedawno już wyszła Java 13. Próbowałem Kotlina, ale jakieś to pokręcone, za dużo lukru i za dużo nowych funkcji. Dla nowych użytkowników to tylko więcej problemów na początku nauki. Na filmach devstyle, autor narzekał, że C# .NET jest coraz bardziej rozbudowane i coraz trudniej się nauczyć tej technologii i ją ogarnąć. Gdyby PHP miało wbudowany taki serwer Railsy czy Django, sporo by to ułatwiło, zamiast posiłkować się XAMPP, czy instalując wszystkie składniki serwera w swoim systemie.
Ten post edytował phpseven 20.06.2019, 23:20:39 |
|
|
21.06.2019, 00:12:59
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 707 Pomógł: 266 Dołączył: 3.07.2012 Skąd: Poznań Ostrzeżenie: (0%) |
PHP rzeczywiście ostatnio ma dobrą prasę i budzi optymizm, a jeszcze stosunkowo niedawno nic na to nie wskazywało. To również jest jedna z rzeczy, których nie lubię w web devie. Jesteśmy niewolnikami narzędzi, których los nie zależy od nas. Ktoś może poświęcić kilka lat na naukę narzędzia, które wkrótce po opanowaniu go odejdzie do lamusa. Czy wyobrażacie sobie to w innym zawodzie? Czasami zazdroszczę tym, którzy codziennie wstają z łóżka z pewnością, że ich dzień uczyni ich lepszym w ich ukochanej dziedzinie. My tego nie mamy. Ilość informacji, które codziennie przetwarzamy jest niezdrowa. A co więcej, nie wiadomo, czy w ogóle przydatna w dłuższym czasie.
A najlepsze jak klient każe wycenić projekt. Przecież w dzisiejszych czasach jest to niemożliwe. Skąd mam wiedzieć ile czasu zajmie mi używanie tuzina bibliotek, z którymi nie miałem do czynienia? Naprawdę mam ochotę się przerzucić na coś, co każe mi wyzwolić kreatywną moc mojego umysłu, a nie pamięciówkę i zgadywankę. Jestem zmęczony chomikowaniem w mojej głowie pudełek z półproduktami. Dzisiaj mogę powiedzieć, że naprawdę bardzo dobrze znam świat webu. Poświęciłem mnóstwo czasu, żeby pozwolić mojemu mózgowi zrozumieć jak działają podwaliny sieci, czyli HTTP, przeglądarki, serwery, bezpieczeństwo itd. Ta wiedza kiedyś była czymś wspaniałym. Dziś bez znajomości cudzych kobył w postaci narzędzi nie znaczymy nic. |
|
|
21.06.2019, 06:23:20
Post
#4
|
|
Grupa: Zarejestrowani Postów: 160 Pomógł: 27 Dołączył: 22.09.2008 Skąd: Tarnów Ostrzeżenie: (0%) |
@SmokAnalog z tego co widzę, to wypaliła Cię freelancerka. Ja jakiś czas temu również się wypaliłem, ale z trochę innego powodu. W powrocie pasji pomogła mi zmiana technologii po godzinach (C++). Dodatkowo, jeżeli chcesz stabilności technologicznej, to zachęcam Cię to zmiany kierunku na tworzenie aplikacji biznesowych. Ale nie takich, które załatwisz wordpressem czy paroma paczkami. Jest dużo pracy z dużymi systemami, gdzie klepie się backend (tak, jeszcze raz: klepie się, a nie instaluje tuziny paczek). Do tego zainteresuj się może architekturą aplikacji i DDD. To jest ciekawa porcja wiedzy, którą (jeżeli nie znasz) będziesz odkrywał i to na pewno da Ci sporo frajdy. Dodatkowo poczujesz stabilizację, bo ta wiedza jest "ponad" technologiami.
-------------------- |
|
|
21.06.2019, 08:09:08
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 838 Pomógł: 226 Dołączył: 20.03.2005 Skąd: Będzin Ostrzeżenie: (0%) |
Wypalenie przychodzi w każdym zawodzie. Mnie także to spotyka. Że mimo że się dokształcam, to czuję że stoję w miejscu. Dlatego ja np. uczę się Pythona.
|
|
|
21.06.2019, 08:42:55
Post
#6
|
|
Grupa: Zarejestrowani Postów: 1 707 Pomógł: 266 Dołączył: 3.07.2012 Skąd: Poznań Ostrzeżenie: (0%) |
Dwa lata temu nauczyłem się Swifta i się zakochałem. Teraz na dokładkę Apple zaserwowało Swift UI, które wygląda obiecująco. Dla samej frajdy programowania poważnie rozważam przebranżowienie lub dobranżowienie się na Swifta. Wady tego wyboru są jednak oczywiste - Swift to tylko Apple.
Druga opcja, którą rozważam, to blockchain. Pociąga mnie budowanie rozwiązań o skomplikowanej strukturze, algorytmika. Ciekaw jestem na ile w świecie blockchaina również trzeba żonglować paczkami, jak w webie. Chciałbym po prostu robić coś, co nie wymaga nieustającego researchu „na zewnątrz”. Bardzo chętnie będę zgłębiał swoją dziedzinę do oporu, ale nauka paczek to niestety nie jest zgłębianie dziedziny, a przynajmniej nie w sensie, o jaki mi chodzi. @mrc to są dobre rady i rzeczywiście nauka dobrych nawyków, wzorców itd. jest ponadczasowa. Uprawiam to odkąd pamiętam i może dlatego jeszcze nie oszalałem |
|
|
21.06.2019, 09:01:40
Post
#7
|
|
Grupa: Zarejestrowani Postów: 1 240 Pomógł: 278 Dołączył: 11.03.2008 Ostrzeżenie: (0%) |
Może to przez pogodę? Odpocznij, weź sobie urlop albo po prostu zwolnij tempo - przyjdzie jesień, zrobi się chłodniej, bardziej deszczowo to się milej będzie siedziało przy biurku
-------------------- |
|
|
21.06.2019, 09:06:49
Post
#8
|
|
Grupa: Zarejestrowani Postów: 1 707 Pomógł: 266 Dołączył: 3.07.2012 Skąd: Poznań Ostrzeżenie: (0%) |
Obawiam się, że moje żale nie tyczą się wypalenia, ale natury web devu w tych czasach. Prawdą jest, że gdy ogarnie się porządnie jak to wszystko działa i dlaczego, to nauka każdej paczki jest znacznie łatwiejsza. Po prostu wtedy nie programujemy po omacku. Jednak brakuje mi wyzwań. Ilekroć mam studiować nową super cool paczkę, rzygam.
|
|
|
21.06.2019, 09:38:26
Post
#9
|
|
Grupa: Zarejestrowani Postów: 1 240 Pomógł: 278 Dołączył: 11.03.2008 Ostrzeżenie: (0%) |
W ostatnim projekcie mamy mnóstwo paczek i fakt - nie mam pojęcia jak to działa, ciężko też analizować kod każdej paczki żeby się tego dowiedzieć tymbardziej, że co kilka dni wychodzi nowy update, a gdyby wziąć pod uwagę też paczki zależne, to pewnie co kilka godzin jest nowa wersja "kodu w całości".
Myślę, że musisz się skoncentrować na finalnej wartości, całości projektu który oddajesz klientowi bez wnikania w szczegóły (nie jest możliwe zrozumienie i poznanie całego kodu w tych czasach). Kodu "łączącego", zależności i narzędzi będzie coraz więcej, typowego prostego kodu coraz mniej - żeby ogarnąć tą całość rzeczy których nie jesteśmy w stanie ogarnąć "manualnie" (czy po npm install nasza aplikacja dalej działa, czy po zainstalowaniu narzędzia XY i dodaniu pluginu do webpacka wydajność aplikacji nie zmalała o 100% itp.) polecam testy unit i dużo testów e2e, wpięcie w CI narzędzi do badania wydajności, zarówno odpowiedzi serwera jak i budowania aplikacji w przeglądarce - mi to daje poczucie spokoju. Nie wiem jak to się odnosi do freelance, gdzie wszystko na szybko trzeba dowieźć - ja się staram pracować w zespołach które pracują nad jednym projektem przez długi czas, często kosztem pensji, ale zyskuje trochę więcej włosów na głowie Zgodnie z tym co napisał @mrc są rzeczy ponadczasowe których warto się uczyć - sieci, same języki i to jak działają, języki obce, paradygmaty, wzorce, DDD itd. To nie jest tylko problem web, wiem, że dev-ops ma podobnie i podejrzewam, że większość "odłamów programowania" ma z tym problem tj. narzędzia > kod. Tylko czy to faktycznie problem? Ludzie dążą do automatyzacji wszystkiego a narzędzia miały w tym pomagać i pewnie finalnie pomagają (przy okazji psując trochę krwi), wystarczy, że spróbujesz napisać sobie kolejną aplikację dla klienta bez użycia tych narzędzi i porównasz efekt końcowy. Ten post edytował markuz 21.06.2019, 09:44:29 -------------------- |
|
|
21.06.2019, 13:32:39
Post
#10
|
|
Grupa: Zarejestrowani Postów: 1 268 Pomógł: 254 Dołączył: 11.06.2009 Skąd: Świętochłowice Ostrzeżenie: (0%) |
Ze swojego doświadczenia powiem tak: jest webdev i webdev. Owszem, główny nurt związany jest najczęściej z pogonią za najnowszymi trendami i wykorzystywaniem akurat popularnego frameworka. Ale równocześnie istnieją też nisze (jak choćby tworzenie RTE), w których tej pogoni nie ma i tam wykorzystuje się sprawdzone od lat, stabilne technologie, a problemy rozwiązuje się po staremu, bo… nikt inny dotąd ich nie rozwiązał. Ot, po prostu wystarczy nieco zboczyć z głównej drogi i na zarośniętej krzewami ścieżce znaleźć nieco ukojenia
-------------------- ★Mój blog || Okiem krytyka★
|
|
|
21.06.2019, 13:59:14
Post
#11
|
|
Grupa: Zarejestrowani Postów: 1 707 Pomógł: 266 Dołączył: 3.07.2012 Skąd: Poznań Ostrzeżenie: (0%) |
Na pewno masz rację, Comandeer. W moim przypadku też do pieca dowala to, że zdecydowałem się być senior full-stackiem freelancerem. To na mnie zwykle ciąży odpowiedzialność dobierania technologii do projektu no i oczywiście implementacja. Bardzo często też nie mam się z kim skonsultować, bo albo jestem jedynym devem w projekcie, albo pracujemy w różnych strefach czasowych. Kiedy mam z kim pogadać, od razu jest inaczej. A jak nie, to pytam oczywiście na Stack Overflow i forach, ale to nie to samo.
|
|
|
21.06.2019, 15:44:20
Post
#12
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 2 Dołączył: 19.06.2019 Ostrzeżenie: (10%) |
Mnie ostatnio zaciekawił Rust i Cargo. Język programowania do pisania systemów komputerowych RedoxOs, silników przeglądarek www, przeglądarek Firefox, Basilisk Browser(Goanna). Można też w nim pisać ciężki backend strony jako alternatywa Go, Swift czy Scala w mikroserwisach. https://rocket.rs
Drugi język programowania który mnie zaciekawił to Crystal, jest to lepsza, nowsza i szybsza wersja Ruby. Jest kompilowany, ma odśmiecanie pamięci, brak nulla i brak wskaźników, do tego jest prosty w nauce jak RoR. Posiada już kilka frameworków webowych. Czekam tylko jak to wszystko się ustabilizuje i wybije się jeden główny framework, jak Ror czy Django. Wtedy można w nim pisać wydajny sklep internetowy, czy porównywarkę produktów. Jest kompilowany, więc powinien być wydajniejszy nawet od Javy. https://amberframework.org http://kemalcr.com https://luckyframework.org Ten post edytował phpseven 21.06.2019, 15:45:59 |
|
|
21.06.2019, 20:50:23
Post
#13
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) |
Ja jestem full backend w PHP do tego czasami coś klepię w Javie 8 (mikroserwis w projekcie), do tego Python na potrzeby toolsa niższego poziomu. Dodatkowo Sysops/Devops. Nie nudzę się w pracy a wręcz brakuje mi czasu na realizację pomuysłów (wiadomo że sprint leci i trzeba zrobić plan)
Także kwestia znalezienia sobie czegoś co Cię kręci. |
|
|
21.06.2019, 21:12:53
Post
#14
|
|
Grupa: Zarejestrowani Postów: 1 707 Pomógł: 266 Dołączył: 3.07.2012 Skąd: Poznań Ostrzeżenie: (0%) |
Pyton, może jak ktoś się nie brudzi frontendem to nie szaleje
|
|
|
22.06.2019, 06:59:19
Post
#15
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 2 Dołączył: 19.06.2019 Ostrzeżenie: (10%) |
A w Pythonie jest szansa, że nie trzeba się uczyć tych różnych frameworków, Django, Angular, React, PostgreSQL i być fullstackiem? To niby taki język klejowy, ale czy jest lepiej w tym natłoku technologii jak w Javie i JavaScript? Raczej jedynie C/C++ nie wymaga żadnego frameworka, piszesz jakiś kod w czystym języku do mikrokontrolerów, gry, sterowniki.
|
|
|
22.06.2019, 09:50:02
Post
#16
|
|
Grupa: Zarejestrowani Postów: 1 240 Pomógł: 278 Dołączył: 11.03.2008 Ostrzeżenie: (0%) |
Gry bez frameworków, ciężko to widzę, no chyba, że masz kilkaset programistów albo robisz tetrisa
-------------------- |
|
|
22.06.2019, 17:02:05
Post
#17
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 2 Dołączył: 19.06.2019 Ostrzeżenie: (10%) |
Sądziłem, że używają tylko jakiegoś silnika graficznego napisanego w C++, ewentualnie te duże produkcje jakiegoś Pythona Lua jeszcze do oskryptowania. Raczej ci chodzi o lekkie gierki czy przeglądarkowe i takie silniki jak rubygame i godot?
https://godotengine.org http://rubygame.org Popatrz na grę Dzieje Khorins, jest czysty Python i C++. https://www.youtube.com/watch?v=-EFYQ4ZN5Ss |
|
|
22.06.2019, 19:23:26
Post
#18
|
|
Grupa: Zarejestrowani Postów: 1 268 Pomógł: 254 Dołączył: 11.06.2009 Skąd: Świętochłowice Ostrzeżenie: (0%) |
Cytat Popatrz na grę Dzieje Khorins, jest czysty Python i C++. I dlatego szukają programisty od języka skryptowego silnika Gothica -------------------- ★Mój blog || Okiem krytyka★
|
|
|
22.06.2019, 19:56:30
Post
#19
|
|
Grupa: Zarejestrowani Postów: 515 Pomógł: 63 Dołączył: 27.08.2012 Ostrzeżenie: (0%) |
Żadna praca nie da ci tyle satysfakcji i spełnienia jak praca dla siebie. rób coś po za pracą, jakiś swój własny komercyjny projekt... Ja stety czy niestety już o 6 lat ogarniam zupełnie inną branże - własny biznes, programuje tylko dla przyjemności. Web to nadal mój as w rękawie, programuje co się da : ) W ten oto sposób stałem się 100% autorem systemu do sterowania automatyką grzewczą kotłów na pellet, który działa na całym świecie i ma obecnie ponad 10k kotłów online i ciągle rośnie (kwestia dystrybucji niezależnej ode mnie)- z czego garnę profity za abonamenty. Buduje teraz dom, oprogramuje co się da, mam zajawkę i dobrze się przy tym bawie. W swoim czasie nawet tworzyłem z szwagrem grę na unrealu ale odpuściłem bo to robota głupiego w 2 osoby, w każdym razie jak robi się to dla siebie i na własną korzyść, satysfakcji multum niezależnie w czym się klepie. Mimo iż mógłbym teraz "pisać" u kogoś kod za niezłą kasę - śmieją się ze mnie że tego nie robię zawodowo, to jednak szkoda mi czasu. Na swoim to na swoim.
|
|
|
23.06.2019, 17:53:41
Post
#20
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 2 Dołączył: 19.06.2019 Ostrzeżenie: (10%) |
Trafiłem na taki wykres, ankietę dotyczącą PHP i uważam, że sporo zaniżyli udział Sublime Text dając im tylko 7%. Sam używam Sublime Text 3 do PHP. W komercyjnych projektach zawsze używacie płatnego PHPStorm, czy Eclipse, NetBeans, Aptana, Atom też się pojawia?
https://www.jetbrains.com/lp/devecosystem-2019/php/ |
|
|
Wersja Lo-Fi | Aktualny czas: 28.04.2024 - 03:21 |