Wybór specjalizacji i języka programowania. Nie ma ideału?

4

Front-End - duża konkurencja, odmóżdżający HTML/CSS
Node js - zazwyczaj w ofertach dla Full-Stack / Front-end
React js - nudne/proste renderowanie danych dla formularzy
C#  - microsoft'owa kopia Java
Java / .NET - utrzymywanie kobył z przestarzałym kodem
PHP / Ruby - "ostatnia deska ratunku"
C++ - embedded, przestarzały kod
Branża gier - gorsze warunki pracy i płaca
Golang - nisza, mała elastyczność

2

Ale o co ci chodzi?

0

Nigdzie nie ma. Albo i jest bo Pythona nie wymieniłeś.

0
Lysywieczor napisał(a):

Nigdzie nie ma. Albo i jest bo Pythona nie wymieniłeś.

Python / R - big data, algorytmy AI

2

wtf?

4

nie wiem jak można nie zrozumieć o co chodzi autorowi

0

no ale dla niektorych np embedded jest ciekawy a autor to na minus daje. C# jest zly bo to kopia javy, a node zly bo zazwyczaj na fullstacku. To co mamy powiedziec? - stivens 28 minut temu

Być może embedded dla autora wątku jest mało ciekawy...
Nie jest napisane, że C# jest zły... raczej chodziło o to, że JavaSE i C# to jedno i to samo.
NodeJS jest backendową technologią, a rzeczywiście dość często występuje w ogłoszeniach dla Front-enda.

ehhh... nic nie musisz mówić... po prostu czytaj ze zrozumieniem.

0

Być może embedded dla autora wątku jest mało ciekawy...

No i spoko. Ale co jest ciekawe? Bo jak dotad to wszedzie znajduje powod do narzekania (big data/AI python czy. niszowy gamedev)

11

Kolega by chciał zapewne pracować przy jakiś mega ciekawych innowacyjnych projektach oczywiście green field.
Najlepiej dla jakiejś znanej firmy, o której jak wspomni będzie "wow" na spotkaniach rodzinnych może jakieś NASA albo NSA.
W jakiejś ciekawej nowej technologi, ale musi być przyszłościowa, taki pewniaczek który za kilka lat zawojuje świat.
Dodatkowo zeby nie trzeba było bawić sie algorytmami niech to robi ktoś inny.
Ale uwaga CRUD'em też się nie chce zajmować bo klepanie samych widoków jest nudne.
Nie zapominajmy o dobry zarobkach nędzne #15k to na start :D

3

No tam gdzie sporo ludu się pcha faktycznie jest już pozamiatane. Trzeba mieć duuuży skill albo szczęście do projektów, by nie mieć podstaw do narzekania. Mi się wydaje, że jak masz trochę umiejętności i również wiesz jakie rzeczy Cię jarają to przestaw się na węższą działkę by nie było tłoku np. elixir albo scala itp i wówczas masz większe szanse na ciekawe projekty.

Poniżej dla kontrastu dodam, że jeśli spojrzysz na to jak na narzędzie, a nie sens życia to każda z tych opcji jest nawet spoko:

Front-End: jak dodasz do tego programowanie, to masz opcję by robić własne usługi, na początku wygląd jest 10 razy ważniejszy niż backend, jeśli chcesz mieć klientów nie możesz tego tematu schrzan*ć; musisz mieć dobry design i przemyślane ui, najlepiej jeśli od razu będzie pod urządzenia mobilne.

NodeJS: Szybkie prototypy, dobry do wystawiania api i obsługi websocketów. Super opcja jeśli większość czasu spędzasz na froncie.

ReactJS: super pod reaktywne programowanie, wg mnie przebija wszystkie angulary, sam reactjs fajnie wpasowuje się w programowanie funkcyjne np. zobacz ClojureScript + rum

C#: spoko do gier (jedne z lepszych gier jakie grałem na androidzie były robione właśnie w unity), kinect, azure, no .net do marginalnych zadań :-)

PHP: średni do pracy (ale łatwo o remote), jest to killer jeśli chodzi o tworzenie małego/średniego oprogramowania po kosztach

C++: optymalizacje, niskopoziomowe rzeczy, security, spoko do nauki algorytmiki, czy prowadzenia wykładów :D

Golang: na start spoko wsparcie pod współbieżne programowanie, ciekawa opcja do robienia backendu gier, jak jesteś dobry to znajdziesz pracę

Gry: dla samego hajsu to może faktycznie nie jest najlepszy temat, ale za to ciężko jest się tu wypalić, mega sporo satysfakcji i okazje do wykazania się kreatywnoscią (zobacz mikroblog @furious programming)

Java: a Java to zuo więc Cię trochę rozumiem :D

0

Jakos trudno to nazwac specjalizacjami imo... backend/frontend to jakas malo specjalistyczne rzeczy ;p

2

No to zajmij się hodowlą jedwabników/

0

Każdy w swoich refleksach pomija Pythona, czas przebranżowić się na coś innego :(

0

malo roboty w pythonie

0
Madness napisał(a):

Każdy w swoich refleksach pomija Pythona, czas przebranżowić się na coś innego :(

na zachodzie jakos migruja na Go.

1
nohtyp napisał(a):

Front-End: jak dodasz do tego programowanie, to masz opcję by robić własne usługi, na początku wygląd jest 10 razy ważniejszy niż backend, jeśli chcesz mieć klientów nie możesz tego tematu schrzan*ć; musisz mieć dobry design i przemyślane ui, najlepiej jeśli od razu będzie pod urządzenia mobilne.

NodeJS: Szybkie prototypy, dobry do wystawiania api i obsługi websocketów. Super opcja jeśli większość czasu spędzasz na froncie.

ReactJS: super pod reaktywne programowanie, wg mnie przebija wszystkie angulary, sam reactjs fajnie wpasowuje się w programowanie funkcyjne np. zobacz ClojureScript + rum

hmmm... więc praca w bardzo dużej mierze po stronie Front-endu. Jak sam wspomniałeś - kasa to nie wszystko ;)

C#: spoko do gier (jedne z lepszych gier jakie grałem na androidzie były robione właśnie w unity), kinect, azure, no .net do marginalnych zadań :-)

Rzeczywiście Unity jest ciekawą opcją, ale raczej w przypadku wydawania WŁASNYCH gier. Super opcja jako hobby / dodatkowy zarobek.

Dodam jeszcze kilka pesymistycznych myśli do tematu wątku:

Mobile: bardzo niepewna przyszłość - każdy ma swoje własne spekulacje. Native iOS/Android traci na wartości, popularność zrysują rozwiązania cross-platform jak: react-native, flutter oraz hybrid/web apps jak PWAs.

Data Science: spoko opcja, ale bardziej dla matematyka/statystyka niż programisty + zajmowanie się nudną częścią pracy: czyszczeniem/kolekcjonowaniem danych

ehhh... tak więc nadal szukam ideału...

Myślę nad taką kombinacją:
Androidem(Kotlin) + Tensorflow on Android(Machine Learning) + Unity(gry na Androida) + Golang(backend dla swoich aplikacji/gier)
i przesiadka z Kotlina na Flutter -> w razie nagłego wzrostu popularności.
@nohtyp co myślisz o takiej kombinacji? jakie jest Twoje zdanie/spekulacje o branży mobile? kotlin vs react-native vs flutter ;)

Madness napisał(a):

Każdy w swoich refleksach pomija Pythona, czas przebranżowić się na coś innego :(

@Madness Python? więc zajmujesz się Data Science / Machine Learning ? jakie wrażenia? ciekawe projekty? polecasz taką ścieżkę kariery? ;D

3

Java / .NET - utrzymywanie kobył z przestarzałym kodem

Błądzisz synu, błądzisz.

0
anteknoga napisał(a):

malo roboty w pythonie

imo jest sporo, bardzo wszedobylski jezyk.

0

Brakuje jeszcze:

C low-level Linux embedded - ciekawie i ambitnie wbrew temu co sie niektorym wydaje, ale niestety malo ofert pracy

0

Mi się Python bardzo podoba, ale co chwile czytam, że mało pracy, że niszowy język, że lepiej wybrać inną technologię.

3

Zamiast patrzec tylko na ilosc ofert pracy to patrzcie na stosunek ilosci ofert do podazy pracownikow.

0
nohtyp napisał(a):

ReactJS: super pod reaktywne programowanie, wg mnie przebija wszystkie angulary

Nie masz pojęcia o czym piszesz.

0
Mały Jeleń napisał(a):
nohtyp napisał(a):

ReactJS: super pod reaktywne programowanie, wg mnie przebija wszystkie angulary

Nie masz pojęcia o czym piszesz.

Jednak druga część zdania już jest OK. React promuje programowanie funkcyjne i dla mnie to duży plus. A co do reaktywności to powoli do Reacta wchodzi Time-Slicing i Suspense: https://auth0.com/blog/time-slice-suspense-react16/ - w końcu nazwa będzie pasować do Reacta :)

0

Jeszcze oprócz programowania reaktywnego jest coś takiego jak FRP(Functional Reactive Programming) i to nawet z Rx ma niewiele wspólnego. A przynajmniej Rx nie spełnia definicji FRP, w taki sposób w jaki rozumie to Conal Elliott (ten gościu, co to wymyślił).
https://twitter.com/conal/status/483645531130839040
W ogóle warto gościa wygooglać, bo napisał ileś prac o tym, i też na Youtube są jego talki. Chociaż nasiąknięte haskellowatością czy notacjami jakby matematycznymi, więc może być to trudne do zrozumienia (ja nie do końca to rozumiem). Chociaż ciekawe.

React promuje programowanie funkcyjne i dla mnie to duży plus. A co do reaktywności to powoli do Reacta wchodzi Time-Slicing
i Suspense: https://auth0.com/blog/time-slice-suspense-react16/ - w końcu nazwa będzie pasować do Reacta

Jak patrzę na te nowości, to chce mi się powiedzieć jak w Star Łorsach "I have a bad feeling about this" . Nie wątpię, że te rzeczy mogą sprawić, że React będzie działał szybciej i technicznie będzie wszystko ok i fajnie. Ale z drugiej strony... pobieranie danych w funkcji odpowiedzialnej za rendering. Really? Mam wrażenie, że to kolejna rzecz, o której zawsze mówiło się, że to jest błąd pod kątem czystości kodu, architektury itp. a jednak dalej ludzie z Facebooka dalej nas pcha w tym kierunku, żebyśmy wszyscy pisali kod jak gimnazjalista w PHP. Czyli wszystko pomieszane ze wszystkim. Tutaj wrzucamy HTML, CSS, piszemy logikę i pobieramy ajaxa. Wszystko nie dość że w jednej klasie, to i w jednej funkcji. Takie jQuery bis.

0

nie wspomniano tu jeszcze o programowaniu funkcyjnym... no, ale to bardzo niszowa działka... natomiast co nieco do tematu może wnieść np.Scala... która genialnie łączy możliwości projektowania objektowego (wykorzystuje mozliwości Javy) z możliwościami programowania funkcyjnego (gdzieś istnieje tutaj jakiś równoległy wątek)... Chyba nawet Twitter jest postawiony na Scali z tego co się orientuje... tak na moje oko, genialny pomysł (stworzenie Scali)... ale żeby było jasne, ja zbyt wielkim praktykiem nie jestem... :)

0

Nie wątpię, że te rzeczy mogą sprawić, że React będzie działał szybciej i technicznie będzie wszystko ok i fajnie. Ale z drugiej strony... pobieranie danych w funkcji odpowiedzialnej za rendering. Really?

Z tego co zrozumiałem to w metodzie render jest wyciąganie danych z cache. Te dane są opakowane w Promise. Jeżeli Promise jest skompletowana to renderowanie następuje od razu, w innym przypadku Promise jest rzucana jak wyjątek i renderowanie jest ponawiane w momencie gdy Promise zostanie skompletowana. W sumie to nie wczytywałem się, ale być może da się zrobić tak, że backend (redux) robi zapytania i mieli dane, a frontend (react) jedynie sprawdza czy dane są już gotowe.

0
hurgadion napisał(a):

[...] tak na moje oko, genialny pomysł (stworzenie Scali)... ale żeby było jasne, ja zbyt wielkim praktykiem nie jestem... :)

Spokojnie, nie tylko Ty. Sądząc po postach, można strzelać, że większość wypowiadających się tutaj na tematy zastosowania języka X, ów X widziała w akcji jedynie w porywach na paru artykułach z netu, w przerwie między zaawansowanymi (C)(R)(U)(D)-ami w swoim dawno znienawidzonym języku Y (gdzie oczywiście X>>Y).

Nie muszę chyba wspominać, że po takich paru artykułach od razu nabywa się szeroką wiedzę, jak prowadzić projekt w X, jak pisać w nim idiomatycznie (oczywiście nie robiąc sobie ekstra problemów po drodze), do tego profilować, debugować, jakich libów brak, a jakich nie. No po takich artykułach wszystko od razu jest jasne i przejrzyste i aż chce się migrować projekty z kopa albo przekwalifikowywać 3x szybciej niż po najlepszych bootcampach. ;-P

0

Jak to tak wszystko obserwuje to ciezej bedziej ogarnac te wszystkie frameworki i inne duperele w przyszlosci niz fizyke jadrowa

1
syryls napisał(a):

Jak to tak wszystko obserwuje to ciezej bedziej ogarnac te wszystkie frameworki i inne duperele w przyszlosci niz fizyke jadrowa

Jądrowa to akurat prosty dział fizyki na II stopniu xd

0
syryls napisał(a):

Jak to tak wszystko obserwuje to ciezej bedziej ogarnac te wszystkie frameworki i inne duperele w przyszlosci niz fizyke jadrowa

Coś w tym jest. Na tym forum panuje kult "znania technologii" przy jednoczesnym mieniu wyj*** na orientację w językach.

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