Zmiany technologii vs trzymanie się jednego stacka

Odpowiedz Nowy wątek
2018-09-10 23:33
2

Pytanie skierowane przede wszystkim do ludzi, którzy odsiedzieli już swoje przed monitorem i zdążyli już swoją filozofię życiową zweryfikować ;) Pewnych spraw nie rozumiem, a przynajmniej wydaje mi się, że widzę pewien jakby konflikt interesów.

Co na dłuższą metę jest korzystniejsze dla programisty, jeśli chodzi o całokształt (rozwój osobisty, zawodowy, unikanie wypalenia, nudy, poszerzanie horyzontów itd) - trzymanie się w miarę możliwości jednego stacka lub przynajmniej "ekosystemu" danego języka/języków, czy mniejsza lub większa zmiana co np. rok / trzy / pięć / siedem?

  • Z jednej strony zmiana to zawsze jakiś powiew świeżości w zatęchłej piwnicy, człowiek się dowie czegoś nowego, zobaczy że w języku X rozwiązuje kwestię A lepiej niż język Y, ale z kolei B i C są w nim irytujące, no ale za to wsparcie dla D ma zupełnie jak język Z. No i jak już tych X, Y, Z się nazbiera, to poznanie kolejnej "literki" sprowadza się do zrobienia w głowie diffa z tym, co się już zna, zamiast uczyć się połowy od nowa... ale z drugiej strony, jak to pogodzić z rozwojem zawodowym, skoro w ogłoszeniach często gęsto wymaga się doświadczenia w konkretnej technologii/frameworku, częściej niż doświadczenia ogólnie jako np. backend developer?

  • Z drugiej strony - niby technologie to tylko narzędzia pracy, a człowiek jak już pozna kilka na w miarę przyzwoitym poziomie, to do kolejnego jest w stanie błyskawicznie się wdrożyć zamiast żmudnie przebijać się przez tutoriale jak na pierwszym roku studiów, a jednak często gęsto wymagana jest znajomość konkretnego poparta kilkuletnim doświadczeniem. Nawet, jeśli firma i tak będzie Cię potem przerzucać między projektami w zależności od potrzeb, a nie od tego w czym są robione. Tak naprawdę można sobie nawet radośnie utknąć na poziomie wiecznego stażysty, bo niby doświadczenie leci, ale projekty się zmieniają, każdy robiony w czym innym... i niby masz już przepracowane ten rok, półtora czy nawet więcej, efekt gromadzenia literek działa i jak wrzucą Cię z tygodnia na tydzień do nowego projektu w nowych technologiach to nie jest to problemem, ale jak przyjdzie co do czego to... no, pani z HR dostała jasne wymogi, Pan to to nawet na juniora nie spełnia.

Co tu robić, jak żyć? Jest jakiś złoty środek?

edytowany 1x, ostatnio: superdurszlak, 2018-09-11 14:18

Pozostało 580 znaków

2018-09-11 00:05
0

Zależy od sytuacji. Z doświadczenia: trzymam się php i laravela a z drugiej strony w js migruje co chwila na coś innego i jest to normalne.

a co sądzisz o PHP ?? tak szczerze, bo słyszałem wiele niepochlebnych opini... :) - hurgadion 2018-09-11 13:34
@hurgadion: bo ludzie coś tam próbowali 20 lat temu i został im niesmak i powtarzają to bo tak, a nie próbowali nawet pisać w aktualnej wersji z wykorzystaniem porządnych frameworków. - mr_jaro 2018-09-11 17:05
czyli generalnie nie jest źle, tak ?? :) - hurgadion 2018-09-11 17:18
W php jest łatwo zacząć, jest dużo bibliotek itp.. Wszystko zależy co Cię interesuje, co chcesz zrobić i jak szybko - krwq 2018-09-12 21:19
@hurgadion: ja bym stwierdził, że jest wręcz bardzo dobrze. - axelbest 2018-09-13 08:02
dzięki, tak to jest jak się człowiek kieruje opiniami... z sieci :) - hurgadion 2018-09-13 08:15

Pozostało 580 znaków

2018-09-11 08:16
0

Ja tam rozdzielam swój warsztat na
1) stack, który mnie utrzymuje
2) stacki, które lubie bardziej na dzień dzisiejszy i są ciekawsze.

1) nadrabiam na bieżąco, nowinki z języka, biblioteki, frameworki i 'in depth knowledge'.
2) to oderwanie od rzeczywistości i poszerzanie horyzontów, bez spiny, bez wgryzania się w szczegóły jeśli mnie to nie ciekawi.

Jeśli chodzi o karierę, Jestem zdania, że zbytnia generalizacja jest zła.
Wolę dobrać po jednym rozwiązaniu z FE, BE, DevOps I umieć je po prostu dobrze, tak żeby móc coś zrobić całościowo. Co prawda, jeszcze nie do końca mi to wychodzi tak jak bym chciał, ale nadrabiam.

Plan na nowy rok, połączyć 1) z 2)

edytowany 6x, ostatnio: Leroy, 2018-09-11 08:22

Pozostało 580 znaków

2018-09-11 12:55
3

Trzymanie się kurczowo jednego stacka jest złe. Programista powinien ogarniać przynajmniej podstawy kilku technologii. Smuci mnie, że wielu programistów nie wie co to są funkcje lambda, programowanie asynchroniczne, strumienie albo BLoC itd.


Wiedza to potęga
Pokaż pozostałe 4 komentarze
@zarazek, wydaje mi się że chodzi po prostu o funkcje anonimowe/lambda (np. () => { ... } w niektórych językach) a nie o rachunek lambda. W różnych językach inaczej to nazywają - krwq 2018-09-12 22:33
Rachunek lambda wprowadzony w 1930 roku, a dokładnie rachunek lambda bez typów zainspirował twórcę języka Lisp (1958). To właśnie stąd pochodzi nazwa funkcji anonimowych/wyrażeń lambda. Ostatnimi laty wyrażenia lambda pojawiły się w Javie i JS, dzięki czemu trafiły do programistyczne mainstreamu. Wcześniej korzystali z nich przede wszystkim programiści języków funkcyjnych, ale również programiści Python i PHP (od wersji 4). - Haskell 2018-09-12 23:00
BLoC wymyślili ludzie z Googla i zaimplementowali pierwszy raz w swoim ukochanym języku Dart. Stąd chodzi o strumienie w sensie asynchronicznej sekwencji danych. - Haskell 2018-09-12 23:05

Pozostało 580 znaków

2018-09-11 13:46
0

Hej,
niby doświadczenia komercyjnego nie mam, ale moje doświadczenie w kodowaniu małe nie jest. Myślę, że warto trzymać się jakiegoś forum (to jest naprawdę niezłe) i przyglądać się występującym trendom. Oprócz głównego nurtu programowania pojawiają się różne Trendy (mniejsze lub większe), i warto przyglądać się jak się rozwijają. Jednym (bardzo ważnym) Nurtem są pojawiające się jak grzyby po deszczu Technologie Big Data i technologie z tym związane (Amazon, Google Platform, Azure, Cloudera, w R też można się dobrać do Sparka na przykład, Tensor Flow: ciekawa, nieznana mi sprawa jeszcze). Drugim nurtem są pojawiające się języki, które mogą w przyszłości być ważne: Scala, Kotlin, Rust, być może Swift, więc warto trzymać rękę na pulsie :)

edytowany 2x, ostatnio: hurgadion, 2018-09-11 13:47

Pozostało 580 znaków

2018-09-11 14:33
Mały Gacek
0

A czy można się już utrzymać pisząc tylko w jednym z tych nowoczesnych języków programowania jak Kotlin, Swift, Rust, Scala?

Są przecież prowadzone rekrutacje do projektów w Scali i Swift, a Kotlina nawet używamy w obecnym projekcie - superdurszlak 2018-09-11 14:46
myślę, że można (ale nie są to popularne technologie, szczególnie Swift i Rust), ale nie mam najlepszego rozeznania w rynku, bez wątpienia Java jest na topie, Python też, no i Web Developping (nie wiem czy nie spaściłem tego drugiego słowa), w szerokim tego słowa znaczeniu :) - hurgadion 2018-09-11 14:47
Scala ma turbo-szacun na dzielni i może ogłoszeń jest mniej, ale stawki wysokie. Jedna duża usługa z mojej okolicy ma cały backend na Scali. - roSzi 2018-09-13 09:04
Scala jest bardzo dobrze przemyślana... Moim zdaniem twórca Scali, niejaki Martin Odersky to geniusz IT :) - hurgadion 2018-09-13 09:05

Pozostało 580 znaków

2018-09-11 14:46
1

Można. Najsłabiej na ten moment stoi Rust ale może się to zmieni.


Na Rusta jest mniejsze zapotrzebowanie, bo to następca C, czyli bare metal. Wysokowydajne programowanie systemowe w ścisłym tego słowa znaczeniu. Zapotrzebowanie mniejsze, ale płace znacznie wyższe. - siloam 2018-09-11 14:53
Ja tam raczej widzę, jeżeli już, oferty dla backendowców webowych. A szkoda, bo mnie akurat ten bare metal interesuje w sposób szczególny. - Tenonymous 2018-09-11 14:54
@siloam Wyższe w stosunku do czego? Bo chyba nie do "Javy w banku"? Ja bym chętnie pokodził w Ruście, ale nie bardzo widzę oferty, a tym bardziej nie za większe pieniądze. - zarazek 2018-09-12 16:56

Pozostało 580 znaków

2018-09-11 23:55
2

Jak dla mnie to warto liznąć wszystkiego, chociaż niekoniecznie zajmować się na codzień wszystkim, bo specjalizacja się opłaca - pytanie też jaka specjalizacja.

Czy specjalizacja pod kątem języka programowania, czy pod kątem dziedziny biznesu, czy pod kątem frameworka (niby frameworki ciągle się zmieniają, ale z drugiej strony dużo frameworków jest modne co najmniej kilka lat, więc można się specjalizować np. w React... do czasu, kiedy przestanie być modny), czy specjalizacja pod kątem rodzajów aplikacji (mobilki, gry, sklepy internetowe, CRM itp.).

Specjalizacja pozwala na to, żeby programowanie stało się łatwe - bo jeśli robiłeś coś kilkadziesiąt czy kilkaset razy to potem kolejny raz przyjdzie łatwiej. I masz też o wiele większą wiedzę od osoby, która dopiero wchodzi w temat.

Z drugiej strony zbytnia specjalizacja kończy się krótkowzrocznością i zacofaniem, bo człowiek zamiast myśleć szeroko i się edukować w zakresie szerokopojętego programowania, to myśli tylko w ciasnych rameczkach. I potem proste problemy rozwiązuje w skomplikowany sposób, bo nie jest w stanie wyjść poza ramki. Trochę jakby był dwuwymiarową postacią w świecie 3D i nie potrafiłby pojąć tego, że istnieje trzeci wymiar.

Tak więc myślę, że jednak dla własnego rozwoju należy czasem wychodzić poza specjalizację, nawet jeśli przez większość czasu się w niej siedzi.


((0b10*0b11*(0b10**0b101-0b10)**0b10+0b110)**0b10+(100-1)**0b10+0x10-1).toString(0b10**0b101+0b100);
edytowany 1x, ostatnio: LukeJL, 2018-09-11 23:57

Pozostało 580 znaków

2018-09-12 15:05
Trzeźwy Pies
0

Bardzo mi się podobają te trzy języki Rust, Swift i Kotlin. Ciekawe dlaczego gry nie przechodzą jeszcze na Rust, czy w ogóle ktoś już pisze w nim jakiś silnik graficzny, bibliotekę GUI?

Bo Rust nadal jest wolniejszy od c++. Dodatkowo nawet niewyobrażasz sobie jak bardzo programiści gamedev nie lubia nowinek. Pewnie wiekszosc nadal nie korzysta z c++11. (tzn ma wlaczona flage na którą pozwala im Visual wiec pewnie min 14, ale nie korzysta z features <sic!>) - amd 2018-09-12 23:18

Pozostało 580 znaków

2018-09-12 15:06
2

Bo jak ludzie pisali w C, to gamdev dalej stał na assemblerze


Pozostało 580 znaków

2018-09-12 15:20
Wesoły Żul
0

@Trzeźwy Pies:
http://arewegameyet.com/#eco
http://arewegameyet.com/#games

Co z ciebie za programista rusta, społeczeństwo jakoś radzi sobie.

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

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