Jak uciec od CRUD development i rozwinąć się ponad to?

3
superdurszlak napisał(a):

Za "moich czasów" - czytaj 1-3 rok studiów - w kołach naukowych było po 20-30 osób, 80% z tego to byli właśnie studenci pierwszych lat

Weź pod uwagę, że IT też się powoli zmienia i to nie zawsze są goście we flaneli podpierający ściany na imprezach.
Ludzie chodzą do pubów, studenckie czwartki, weekendowe imprezy, jest co w Krako robić, to nie są czasy jak na tym memie gdzie czterech gości siedzi przy stole ;)

6

@superdurszlak: takie trochę pierdu-pierdu w stylu "kiedyś to było"
Koła naukowe jako współczynnik zaangażowania nie ma sensu. Też na pierwszym roku pochodziłem na jedno koło, zobaczyłem jak wygląda to od środka i uznałem, że szkoda mi czasu. Do ocen też nieszczególnie się przykładam bo i po co? Zdać, zdaje, a uczę się dokładnie tego co mnie interesuje. Studenci też nie samą uczelnią żyją, ba nawet ograniczają ją do minimum i wcale nie przeszkadza to w robieniu jakichś rzeczy poza. (Relatywnie) dużo osób na 2-3 roku już pracuje na pół etatu, albo gdzieś tam coś robi i co, to już się nie liczy?

Poza tym nie ma co robić z IT/programowania jakiegoś prawie, że mistycznego zajęcia któremu trzeba poświęcić całe swoje życie. Jest jeszcze świat poza tym ;)

1

Kółka są fajne, ale na własną rękę też można różne rzeczy porobić.

Samemu musisz odpowiedzieć sobie na pytanie co więcej Ci da.

0

Możesz zbudować własny łazik i wysłać go razem z balonikiem wypełnionym helem w kosmos i liczyć na to, że wyląduje na jakiejś planecie. To co będziesz musiał zrealizować to, obraz z kamery, wyświetlanie go na ziemi, możliwość sterowania z ziemii iii to co najtrudniejsze, bezpieczny powrót na ziemię (lub też nie)

5

Embedded jest rzeczywiście ciekawe i rozwijające. Codziennie rozwijamy swój charakter, aby nie doprowadzić się do nerwicy. Całkiem ciekawie można zatem zgłębić psychologię. Do tego rozwiązujemy problemy, których dotąd nie wymyślono[i wymyślenie których, nie powinno mieć miejsca], a to wszystko bez grama dokumentacji i pewności, że sprzęt faktycznie działa tak jak producent napisał.

Równie ciekawe jest też dopisywanie fragmentów kodu, który dostarczył producent - bo gdzieś, tam ktoś tam zapomniał o 4 linijkach.

1
GutekSan napisał(a):
rav3n napisał(a):

Myślę, że wielu z Was zadawało sobie to pytanie. Więc jakie macie pomysły na ucieczkę od biznesowych webowo bacekndowych CRUDów?

Kluczem jest moim zdaniem rozwój nie w kierunku bycia super programistą tylko super inżynierem. To znaczy, nie rozwijać się w kierunku: jak coś napisać tylko: co napisać. Inżynier pogłębia wiedzę obszarową i skupia się na rozwiązywaniu problemów inżynierskich lub badawczych, a nie programistycznych.

Moim zdaniem należy wybrać sobie jakiś obszar, np: uczenie maszynowe, widzenie maszynowe, NLP, grafika i modelowanie 3d, przetwarzanie obrazów, automatyzacja, telekomunikacja, automotive - i w nim się rozwijać. Przy tym zgłębiać matematykę, algorytmikę, optymalizację. A odpuścić, a przynajmniej nie skupiać się na nauce kolejnego języka, albo kolejnej wersji języka który już zna, kolejnego paradygmatu, technologii, frameworka, sztuczek, kruczków, czyli 156-tej metody na robienie tego samego tylko w modniejszy, albo bardziej zgodny z aktualnymi programistycznymi dogmatami sposób, bo to jest właśnie na dobra droga by zostać super programistą i pisać nudne aplikacje biznesowe.

do podobnych wniosków doszedłem niedawno, jak myślałem w kontekście swojej własnej kariery - znudziło mnie klepanie kodu "ogólnofrontendowego" w React (bo to już za łatwe, poza tym to każdy dzisiaj już umie/ Poza tym - ej, co to "ciekawe" zajęcie - pisać kolejny komponent reactowy, czy kolejną wrzutkę do API albo kolejną funkcję, która obrabia dane dla komponentu. Ludzie się tym podniecają (i hajpują różne Reduxy), a to przecież nie jest nic ambitnego), i usiadłem i zastanowiłem się, w jaką działkę programowania chciałbym pójść... żeby było ciekawie, ambitnie jak i przyszłościowo.

I doszedłem do wniosków, które już i tak znałem - że najlepiej mi się podoba programowanie grafiki (np. WebGL, a nawet WebGPU, bo WebGL już ma kilka lat, więc już jest przestarzałe i niemodne XD więc teraz mają dodać WebGPU* Chociaż i tak w sumie do tego są biblioteki, nie trzeba pisać w gołym WebGL/WebGPU), tworzenie różnego rodzaju animacji, coś z przetwarzaniem obrazów, może streaming video przez przeglądarkę, wizualizacja danych, jakieś mapy - te rzeczy rzeczy wydają mi się najciekawsze z frontendu. W zasadzie od dawna mnie to interesuje(i coś tam sobie zawsze dłubałem w tę stronę, głównie w kontekście tworzenia gier itp.), tylko mam wrażenie, że dopiero od niedawna tego typu rzeczy przestają być ciekawostką, czy dodatkiem. A stają się równouprawnionym zajęciem.

No i zawsze interesowała mnie kwestia optymalizacji, żeby wszystko szybko działało. A tutaj też jest duże pole do popisu jeśli chodzi o grafikę.

Więc ja się w tę stronę pragnę rozwinąć w tym momencie.

* o WebGPU:

0

Ostatnio dorwałem książkę

Systems Performance: Enterprise and the Cloud https://www.amazon.com/dp/0133390098/ref=cm_sw_r_cp_apa_i_DE36CbZ9NHS11

Też fajna dzialka

1

Już niedługo. Pisanie crudow w Twoim własnym języku!
https://twitter.com/Una/status/1134832338985246720?s=19

Lub powrót do czasów polenglish.

Albo logomocja?
http://www.gim2andrychow.iap.pl/logo/010.html

0

Ciekawe jakby świat wyglądał gdyby każdy język programowania oraz docsy były przetłumaczone na każdy język naturalny.

2

Złota myśl.
"The single biggest problem in software development is incenting developers for getting shit done. Inevitably, shit is what gets done."

0

@rav3n: tak z ciekawości to co rozumiesz pod pojęciem CRUD, albo może inaczej na czym polega Twoja praca. Rzeczywiście klepiesz bardzo dużo CRUD? Ja pracuję w web i w zasadzie to nie pamiętam kiedy ostatni raz tworzyłem CRUD'a (nie to żebym był jakiś dobry czy coś, tylko po prostu akurat taka specyfika w mojej firmie). Jak już to może jakieś API, ale tam też sam CRUD to było może z 10-30% zadania, a reszta to zrobienie większej lub mniejszej logiki. Póki co dla mnie dość ciekawe są różnego rodzaju integracje, "dogadywaie się" między różnymi systemami / technologiami, realizacja jakiś dziwnych założeń klienta. Oczywiście są inne trywialne rzeczy do zrobienia typu instalacja rozszerzeń, modyfikacja konfiguracji itp itd. ale dlatego to się nazywa praca, a nie hobby ;-)

Jedyne co może czasami mi doskwiera, to pracuję z gotowym systemem i 90% mojej pracy to czytanie tegoż systemu i wymyślanie "jak by się tu wpiąć, żeby za dużo nie zepsuć" - w pracy pisze minimalne ilości kodu. Dlatego po godzinach pisze sobie rzeczy aby nie tylko umieć "wpinać" się w architekturę ale też coś zaprojektować samemu.

Swoją prace (póki co) odbieram jako ciekawą i często wbrew pozorom wymagającą. Mam takie mocne przeświadczenie, że w prawie każdej innej dziedzinie - tj. czy to grafika, czy embeded czy co tam jeszcze 90% tasków jest powtarzalnych tak samo jak klepanie CRUD'ów. Wydaje mi się, że droga do wyjścia do czegoś ciekawego nie wiedzie na boki tylko do góry. Tj. raczej w danej dziedzinie jak zostajesz ekspertem, to nikt nie będzie Cię wykorzystywał do klepania CRUD'ów tylko do rozwiązywania bardziej złożonych problemów.

Oczywiście jeśli pracujesz w firmie, gdzie klepiecie same CRUDY i proste apki, to faktycznie może być nużące. Sam po godzinach pracuje też nad takim systemem paneli do zarządzania, które są w 90% CRUD'em i pisze je praktycznie z zamkniętymi oczami. Ale tutaj też postawiłem sobie za cel nie iść po linii najmniejszego oporu, tylko trochę popracować nad architekturą i w sumie nawet odzyskałem przyjemność z pracy w tym systemie. Oczywiście to taki projekt, którym sam zarządzam i w pracy, gdzie liczy się aby jak najszybciej ukończyć task, pewnie by to nie przeszło.

Ogólnie wydaje mi się, że założenie, że praca przy łaziku marsjańskim jest ciekawsza niż przy back endzie jakiegoś dużego systemu może się okazać dość fałszywe - przynajmniej dopóki jesteś klepaczem a nie architektem tego systemu. Spodziewasz się tam pewnie jakiejś niesamowitej technologii, a znając życie to znajdziesz tam inną wersję CRUD'ów.

0

Praca przy łaziku na pewno jest ciekawsza bo jest ryzyko, tak samo pewnie hft itd.

Jeżeli nie ma ryzyka to dość szybko są nudy. W większości aplikacji pewnie największą niewiadomą jest to czy ktoś dropnie bazę przez przypadek, więc trudno oczekiwać emocji :D

2

To tylko kwestia percepcji ;-) Uwierz mi, że większe ryzyko dla Ciebie potencjalnie stanowi praca przy większym sklepie internetowy na B2B (zwłaszcza jak nie zadbałeś o odpowiednie zapisy w umowie) niż praca dla ESA/NASA nad łazikiem marsjańskim, gdzie zapewne jesteś zatrudniony na UoP ;-)

1

Ryzyko by było jakbyś klecił sterownik do Apollo 13 i zamieniał cale na centymetry w 16 bitowych zmiennych :]

Aktualizacja:
Żeby nie być gołosłownym - przykład kosmicznej katastrofy z powodu niedogadania się w sprawie systemu miar: https://www.simscale.com/blog/2017/12/nasa-mars-climate-orbiter-metric/

0

Jak uciec od kontaktu z biznesem i mieć dobre specyfikacje by można się było skupić na swoich rzeczach? ;P

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