Panie premierze jak żyć?

0

Cześć,

Mam takie pytanie odnośnie tego jak zacząć naukę pewnych technologii, a przy okazji rozwiać kilka mitów oraz rzeczy które ktoś mógł mi przekazać. Chciałbym zacząć naukę programowania - obecnie moja praca wiąże się z wdrażaniem systemów ERP, tworzeniu różnych raportów i zestawień. Podoba mi się obecna praca, ale zdaję sobie sprawę że wiecznie tego robić nie będę i kiedyś zechcę pójść krok dalej. Na potrzeby pracy poznałem też trochę właśnie VBA. Rozpocząłem też studia zaoczne z informatyki, aby móc liznąć na nich trochę matematykę, algorytmy, nabyć dodatkowej wiedzy teoretycznej czy poznać ludzi o podobnych zainteresowaniach. Nie traktuję ich na zasadzie że uczynią ze mnie potężnego "informatyka". Służą do poszerzenia horyzontów, a przy okazji zawsze mam okazję poznać coś czego normalnie nie miałbym czasu lub nie chciałbym zgłębić.

Ostatnio czytałem że największe zapotrzebowanie jest na tak zwany front-end czy tworzenie stron internetowych. Problem w tym że takie rzeczy jak Javascript czy CSS i HTML, a nawet WordPress kompletnie mnie nie interesują (sobie stronkę zrobię, ale jak miałbym to robić komuś - zdecydowanie nie). Próbowałem kiedyś, ale jakoś to mnie nie pociągnęło. Zacząłem zgłębiać tajniki Pythona, trochę też C#. Czy nauka tych języków otwiera mi jakieś inne możliwości niż to co wcześniej wspominałem? Czy aby jednak wbić się w ten świat, trzeba jednak startować od JS?

1
Slimow napisał(a):

Zacząłem zgłębiać tajniki Pythona, trochę też C#. Czy nauka tych języków otwiera mi jakieś inne możliwości niż to co wcześniej wspominałem?

No jak się nauczysz JSa to będziesz robić frontend, a jak się nauczysz C# czy Javy to będziesz robić backend

Czy aby jednak wbić się w ten świat, trzeba jednak startować od JS?

Ja nigdy nie umiałem JSa a jakoś dostałem pracę jako programista Javy

Ostatnio czytałem że największe zapotrzebowanie jest na tak zwany front-end czy tworzenie stron internetowych

Zapotrzebowanie mocno różni się od lokalnych i tymczasowych trendów. Czasem jedna firma potrafi wszystko zapozmieniać. Najlepiej przejrzeć sobie nofluffjobs (lub inny podobny portal) i zobaczyć czego jest najwięcej w twojej okolicy. Np kilka lat temu była moda na Node developerów bo próbowano przekować ludzi że Node developer to najlepszy fullstack (bo front i backend robisz w JSie). Potem to chyba trochę umarło jak się ludzie zorientowali że nawet w JSie do robienia frontu jest potrzebna inna wiedza niż do robienia backendu

2

Jezyk nie ma najmniejszego znaczenia. Eksperymentuj + ucz sie teorii takiej jak algo/system design/architektura kodu. Jak bedziesz ogarnial te rzeczy to pisanie w jakiejkolwiek technologii nie powinno byc problemem.

1

Panie premierze jak żyć?

myślę, że pan premier odpowiedziałby tak:
🛠 => 🍚

Slimow napisał(a):

Czy aby jednak wbić się w ten świat, trzeba jednak startować od JS?

Teraz wszyscy idą w JSa, więc po co się tam pchać?

0

Wcielę się w premiera i powiem tak. Przede wszystkim nie trzeba patrzeć na to jaka dzisiaj technologia jest popularna oraz dochodowa, bo za parę lat może okazać się że wszystko wywróci się do góry nogami. Idziesz na studia, więc nie bagatelizowałbym właśnie czasu na poznanie dogłębne matematyki i algorytmów. Dziś ludzie trochę znaczenie tych przedmiotów bagatelizują, ale przejdę dlaczego sądzę że warto podejść do nauki informatyki bardziej "naukowo" niż tylko patrząc z punktu użytkowania młotka. Sam bawię się pythonem, świetny język do nauki i tworzenia ciekawych rozwiązań (skrypty, automatyzacja, webówka czy analiza). Nie siedzę we front-end, ale myślę że za parę lat, może okazać się że technologie typu no/low-code wyprą z rynku rzeszę dzisiejszych wannabe programistów z rynku, ponieważ tworzenie prostych stron czy serwisów będzie opierało się na budowie elementów z klocków. Pozostaną jedynie duże projekty i specjaliści wysokiego i średniego szczebla tworzący oprogramowanie dedykowane. Może nawet powstaną z czasem nowe języki programowania np. coś jak mamy w SAP taki twór jak ABAP (sam chętnie bym poznał ten język z racji grzebania się w tym ekosystemie) tylko pod takie właśnie kreatory. Jak chcesz wejść w ten świat, to właśnie skupiłbym się też na nauce innych rzeczy, tak by zrozumieć to co się dzieje po stronie oprogramowania/systemu. Bo to że masa osób przebranżowi się i zacznie użytkować młotek, nie znaczy że będą nim całe życie walić w deskę przybijając gwoździe. Ciekawe też jest wejście w świat technologii sieciowych, które przechodzą mały renesans, ale o tym się raczej nie dowiesz. Mam kolegę który robi certyfikaty CISCO i Palo Alto, nawet nie zdajesz sobie sprawy jaka jest w tym sektorze posucha ludzi (wszyscy programują). Sami niedawno wzięliśmy typa który jest świeżo po szkole do pracy na stanowisko admina, weź teraz zatrudnij programistę-juniora przy zachowaniu proporcji jeżeli chodzi o zakres wiedzy. Gość jedynie co wiedział to TCP/IP i jakieś podstawy dotyczące konfiguracji routerów oraz AD. Mówię tu o stanowisku juniorskim. TO tak jakbyś zatrudnił programistę po kursie samuraja czy innego ninja programowania. Ale typek sobie powoli radzi i wyrobi się. Są też stanowiska związane z analizą danych, przetwarzaniem informacji gdzie również jest posucha, sporo tego omawiać, ale nie pchałbym się za stadem much we front-end (jeżeli tym bardziej nie jara Cię to). To że dzisiaj jest na to ssanie, a to ze względu na szkoły programowania które zarabiają na marzeniach, jak kiedyś zarabiali przygarbieni panowie z wagami na poszukiwaczach złota, nie znaczy że będzie tak całe życie, patrz technologie low-code i przybijanie gwoździ młotkiem. Inna sprawa że stosunek włożonej pracy do efektu jest moim zdaniem nieadekwatny. Moim zdaniem najbliższe 3-4 lata mogę przynieść trochę zmian w IT.

2
KostkaSpustoszenia napisał(a):

Wcielę się w premiera i powiem tak. Przede wszystkim nie trzeba patrzeć na to jaka dzisiaj technologia jest popularna oraz dochodowa, bo za parę lat może okazać się że wszystko wywróci się do góry nogami.

ludzie będą zapier-papier za miskę ryżu. Nie będziesz miał nic i będziesz szczęśliwy. XD

Idziesz na studia, więc nie bagatelizowałbym właśnie czasu na poznanie dogłębne matematyki i algorytmów.

I o to chodzi. To naprawdę jest mocą, a nie jakieś tam technologie, co teraz są modne, a za 10 lat już co innego będzie modne. A fundamenty informatyki będą takie same.

Nie siedzę we front-end, ale myślę że za parę lat, może okazać się że technologie typu no/low-code wyprą z rynku rzeszę dzisiejszych wannabe programistów z rynku, ponieważ tworzenie prostych stron czy serwisów będzie opierało się na budowie elementów z klocków.

Ktoś jednak musi umieć te klocki składać, bo wyjdzie g**no. W przyszłości pewnie wzmocni się znaczenie UX. Czy będzie większy popyt na UX designerów (którzy być może będą mogli wypuszczać produkcyjne apki bez potrzeby zatrudniania frontendowca), a może to frontendowcy będą musieli ogarniać UX (bo skoro nie będą musieli już programować, a tylko będą "budowali z klocków", to będą mieć czas na zajęcie się designem).

Swoją drogą "budowanie z klocków" też zajmuje czas. Meble z Ikei też wystarczy złożyć, a jednak jest to często całodniowa zabawa.

No i nie byłbym taki optymistyczny co do narzędzi no-code/low-code. Myślę, że mogą się sprawdzić w konkretnych zastosowaniach - np. w tworzeniu gier(Unity), tworzeniu landing page'y (Wix), do przeliczania czegoś (Excel), ale raczej nikt nie zrobi narzędzia low-code do wszystkiego. Więc programiści dalej będą potrzebni (ba, nawet aplikacje low-code ktoś musi przecież zaprogramować).

1

Zobaczymy na pewno budowanie prostych rzeczy z gotowych komponentów ma swoje plusy. Mogą w ten sposób wejść do branży ludzie którzy nie będą musieli znać tak dogłębnie wielu języków programowania. Nie uważam że to coś złego by budować z klocków różne rozwiązania, wręcz przeciwnie. Mogą powstać nowe zawody i dziedziny. Ktoś też musi przecież czuwać nad tym wszystkim i rozwijać. Także zgadzam się, ktoś będzie musiał je techniczne doglądać i kodować, by tacy operatorzy no-code, mogli zająć się tworzeniem. Jak pisałem wszystkiego to nie zrobi, ale proste sprawy, taśmowe wręcz na pewno ułatwi.

Dlatego często gdy rozmawiam ze znajomymi zwracam uwagę na to że trzeba uczyć się pewnych paradygmatów oraz zrozumieć działanie systemu. Nie zaś skupiać się na języku XYZ czy modnej technologii. Blisko 15 lat temu ludzie uczyli się np. C++ była masa kursów, sam pamiętam taką książkę "Od zera do gier kodera". Dziś raczej ze świecą szukać programistów C++ lub osoby chcące w tym języku siedzieć. Gdzieś tam są ale to takie jednorożce (:

0

imo najlepiej zacząć od języka średniego poziomu. Coś jak java/c#. Javascript za wysokopoziomowy, C za nisko.
Jak się nauczysz poruszać w języku takiego "średniego" poziomu to ci będzie potem prościej albo zmienić jezyk na inny podobny, albo wejść na wyższy poziom typu wlaśnie JavaScript albo np Python/Swift. Nauka od C czy nawet C++ to raczej droga przez mękę.
A HTML/CSS zostaw na później. Jak już chcesz iść we front-end to lepiej w mobilne. A od tego masz narzędzia i nie musisz się pierdzielić z tym gównem.

2

Zacząłem zgłębiać tajniki Pythona, trochę też C#. Czy nauka tych języków otwiera mi jakieś inne możliwości niż to co wcześniej wspominałem? Czy aby jednak wbić się w ten świat, trzeba jednak startować od JS?

Pisałem o tym niedawno w jakimś wątku: skupiasz się na duperelach. Język to jest szczegół. To jest tak jakbyś uczył się jeździć samochodem i co chwila zmieniał szkołę jazdy, bo w jednej mają samochód X a w drugiej Y a w trzeciej Z. W efekcie marnujesz czas na głupoty zamiast nauczyć się jeździć.
Analogicznie tutaj kluczowe jest nauczenie się programowania a nie nauczenie się takiego czy innego języka. Większość programistów zna wiele języków i w czasie swojej kariery przeskakuje pomiędzy nimi albo używa kilku. Jak umiesz programować to nauka nowego języka nie powinna stanowić specjalnego problemu.

0

Moje skromne zdanie - Python nie jest najlepszą drogą do komercyjnego sukcesu, ale sprawdza się znakomicie jako język do nauki programowania. Pozwala się skupić na tym co chcesz napisać, nie wrzucając przy okazji masy problemów formalnych. Używając analogii - możesz skoncentrować się na tym co ma być treścią pisanej książki, a nie na zawiłościach chińskiej gramatyki. Później ta jego łatwość zaczyna być wadą (i to jest jeden z powodów dla których C#/Java są najczęściej używanymi językami w zastosowaniach biznesowych). Jeżeli masz "jakieś" umiejętności w zakresie pisania kodu, to warto zamiast zastanawiać się "jaki język", odpowiedzieć sobie na pytanie jaka domena cię interesuje:

  • pisanie aplikacji biznesowych
  • skalowalne SaaS
  • data mining / big data
  • Machine Learning
  • Aplikacje mobilne
  • Aplikacje web
  • Full stack development
    ....

Jak będziesz w stanie odpowiedzieć sobie na pytanie co chcesz zrobić, to pytanie o wybór języka/frameworku nabierze sensu.

0

@piotrpo: Kolega nie odpowiedział to wybiorę za niego. Data mining/ Big Data + Machine learning. I co teraz? Python, czy coś więcej?

1 użytkowników online, w tym zalogowanych: 0, gości: 1