Praca programisty zagrożona?

Praca programisty zagrożona?
Shalom
  • Rejestracja:około 21 lat
  • Ostatnio:prawie 3 lata
  • Lokalizacja:Space: the final frontier
  • Postów:26433
1

Outsourcingu nie ma sie co bać, bo za dużo firm przejechało się na jakości softu od hinduskich kolegów i nie są juz tacy chętni korzystać z ich usług. Stąd też przecież tyle zagranicznych oddziałow różnych korpo w polsce. Bo w PL jest nadal względnie tanio a jednocześnie jakościowo nie jest źle.


"Nie brookliński most, ale przemienić w jasny, nowy dzień najsmutniejszą noc - to jest dopiero coś!"
PI
  • Rejestracja:ponad 9 lat
  • Ostatnio:3 miesiące
  • Postów:2787
0
Shalom napisał(a):

Outsourcingu nie ma sie co bać, bo za dużo firm przejechało się na jakości softu od hinduskich kolegów i nie są juz tacy chętni korzystać z ich usług. Stąd też przecież tyle zagranicznych oddziałow różnych korpo w polsce. Bo w PL jest nadal względnie tanio a jednocześnie jakościowo nie jest źle.

@Shalom Co do jakości, to śmiem twierdzić, że polscy programiści należą do najlepszych na świecie

edytowany 1x, ostatnio: Pinek
Zobacz pozostałe 14 komentarzy
AL
@tomasz-k zależy gdzie, ale mam trochę rodziny i znajomych w DE, wszyscy dość jednogłośnie twierdzą, że za 500EUR to już spokojnie masz ca. 70mkw w dobrym standardzie, kawalerki odpowiednio taniej. Wszystko zależy gdzie, bo jedno to Monachium czy Ulm, drugie Wuppertal czy Essen. Ale nadal nie odbiega to ponoć aż tak tragicznie od cen polskich.
czysteskarpety
czysteskarpety
@alagner: otóż to, średnie miasto w DE=top3 u nas, ceny nie są aż tak różne, jedyne co to nie każdemu się chce opuszczać rodzimą piwnicę :)
LS
Tylko że jak nie szprechasz to życie codzienne pewnie jest dużo mniej komfortowe
AL
@loza_szydercow: generalnie jak nie szprechasz to i o robotę sporo trudniej jeśli nie masz naprawdę dużo doświadczenia. Wiem, bo jako szprechający teraz przez to przechodzę. I to co kiedyś Shalom na mikroblogu pisał, nikt na Zachodzie nie patrzy na doświadczenie w trakcie studiów, choćbyś już wtedy naprawdę ciekawe rzeczy robił.
LS
Dlatego też moja wypowiedź to bardziej do @czysteskarpety była. Dla mnie emigranci dzielą się na dwa typy: ludzi bardzo zdolnych którzy po prostu się na miejscu nie zrealizują i ludzi że tak powiem słabszych którzy odpadają nawet w miejscowej konkurencji. W IT typ drugi nie powinien występować a daleki jestem od sądu że u nas większość programistów nie ma jak się realizować ;)
0

Szkoda tylko, ze pozniej babramy sie w Polsce w starym syfie, ktory dostalismy od kogos a malo nowosci, innowacji.

Wibowit
  • Rejestracja:prawie 20 lat
  • Ostatnio:około 4 godziny
2

WYSIWYGi mające zastąpić frontendowców to kompletny idiotyzm - albo korzystamy z gotowców i w zasadzie nie trzeba frontendowca na stałe albo robimy coś oryginalnego i WYSIWYG niewiele pomoże, bo jego możliwości się szybko skończą.

Podstawową różnicą między systemami informatycznymi, a np częściami samochodowymi jest to, że integracja dużego systemu informatycznego z małych klocków to droga przez mękę, natomiast składanie samochodu z części od różnych producentów to norma i standardowa procedura. Programowaniem ludzkość zajmuje się kilkadziesiąt lat i jakoś do tej pory nie opracowano zgrabnego sposobu budowania dużych systemów z małych klocków z minimalnym wysiłkiem przy integracji.

Inna różnica to np to, że taka modyfikacja silnika w samochodzie zwykle nie musi pociągać za sobą modyfikacji innych elementów podczas gdy w systemie informatycznym nawet niewielkie zmiany funkcjonalności pociągają za sobą zmiany wielu komponentów. To też sprawia, że pracy dla programistów jest więcej.

Rozwiązanie obu powyższych problemów nie zależy od mocy obliczeniowej (tej już jest mnóstwo za niewielkie pieniądze) ani od jakiejś mitycznej sztucznej inteligencji. Rozwiązanie jest po prostu bardzo trudne (albo i niemożliwe), a bez niego pracy dla programistów będzie ciągle bardzo dużo.


"Programs must be written for people to read, and only incidentally for machines to execute." - Abelson & Sussman, SICP, preface to the first edition
"Ci, co najbardziej pragną planować życie społeczne, gdyby im na to pozwolić, staliby się w najwyższym stopniu niebezpieczni i nietolerancyjni wobec planów życiowych innych ludzi. Często, tchnącego dobrocią i oddanego jakiejś sprawie idealistę, dzieli od fanatyka tylko mały krok."
Demokracja jest fajna, dopóki wygrywa twoja ulubiona partia.
edytowany 2x, ostatnio: Wibowit
AL
natomiast składanie samochodu z części od różnych producentów to norma byłbym ostrożny z takimi stwierdzeniami. Interfejs to interfejs a specyfikacja to specyfikacja, jak architekci nie dopilnują to w fabryce będą wiercić dziury w ostatniej chwili, ew. dach komuś spadnie na łeb (vide hala w Siemianowicach lata temu, jeśli weźmiemy mechanikę ogólnie). Nie wiem ile miałeś do czynienia z inżynierią produkcji, ale wbrew temu co mówisz problemy bywają. Soft łatwiej poprawić, z pospawaną blachą (przykładowo) gorzej, stąd imho kłopoty i niedbalstwo w tym pierwszym przypadku.
0

Płaczecie, roznosicieli mleka już nie ma i w it wytnie się to co ma być wycięte. Pojawią się nowe dziedziny, nowe zapotrzebowanie i tyle.
Łebscy ludzie bez pracy na pewno nie zostaną, pozostanie "elita".

LukeJL
  • Rejestracja:około 11 lat
  • Ostatnio:17 minut
  • Postów:8410
0

@Pierre13

WYSIWYG generują zbyt dużo niepotrzebnego kodu

ten argument raczej nie musi być dzisiaj valid. Przypuszczam, że ten niepotrzebny kod wynikał ze złego layoutu (teraz na poziomie CSS można pozycjonować ładnie elementy, więc kod pozycjonujący można zredukować) oraz z monolitycznośći kodu, tj. braku komponentyzacji (teraz są systemy komponentów jak React choćby i można by się pokusić o zapis strony nie w postaci czystego HTMLa a w postaci komponentów Reactowych i powiązań między nimi - zresztą jak grzyby po deszczu powstają eksperymenty z tym związane i będzie coraz więcej takich eksperymentów).

No i myślę, że WYSIWYG to trochę zła nazwa. Nie chodzi koniecznie o to, żeby stworzyć stronę całkowicie wizualnie, tylko, żeby pewne rzeczy można było edytować(albo debugować) wizualnie (to już się dokonuje - dev toolsy z Chrome czy innych przeglądarek są przykładami na pewnego rodzaju wizualność. Np. to okienko po prawej:

screenshot-20170617120231.png

.

albo wizualne profilowanie, wykres ci pokazuje, które funkcje zabierają najwięcej czasu i kiedy:

screenshot-20170617120522.png

myślę, że w tę stronę to pójdzie, jeśli chodzi o narzędzia dla programistów, będą coraz bardziej wizualne, aż do poziomu rzeczy, o których mówił Bret Victor.

Chociaż pewne rzeczy można by zrobić faktycznie WYSIWYG, np. layout na stronie. Wiadomo, że logikę trzeba i tak zaprogramować - ale czemu by nie składać sobie samego ułożenia elementów na stronie za pomocą WYSIWYG? To oszczędziło by czas, ponieważ nie trzeba byłoby się przełączać co chwila między edytorem a przeglądarką.


0

Zawsze bedzie ten sam problem.
Jak bedzie trzeba cos standardowego zrobic to ok.
Ale cokolwiek customowego to mordownia przy takich 'gotowcach'

czysteskarpety
czysteskarpety
  • Rejestracja:prawie 10 lat
  • Ostatnio:ponad 4 lata
  • Lokalizacja:Piwnica
  • Postów:7697
0

problem jest bardziej jak chcesz to rozbudować o inne funkcje, bo strony to nie tylko html/css, wtedy zamiast czytelnie oznaczony kod masz spagetti przez które godzinami się przebijasz...


LukeJL
  • Rejestracja:około 11 lat
  • Ostatnio:17 minut
  • Postów:8410
0

Dlatego moim zdaniem to nie powinno generować kodu JS (poza jakimiś prostymi szablonami typu deklaracja pustej klasy z metodami, które nic nie robią), tylko raczej skupić się na opisie pod kątem danych (kod != dane).

np. chciałbym np. dodać do przycisku zdarzenie onClick, w taki sposób, żeby po kliknięciu otwierało się okienko modalne #dupa.

Powiedzmy, że mam edytor DupaIDE i jest na tyle potężny, że ułatwia mi to bez pisania ani jednej linijki kodu.

To oczekuję, że na poziomie implementacji kod HTML będzie wyglądał coś w rodzaju:

Kopiuj
<button data-dupa-action="open #dupa">Pokaż modala</button>

czyli jakieś customowe atrybuty, które by sobie edytor dołączał i potem by się dołączało jakiś DupaFramework, który by rozumiał te atrybuty.

A nie, żeby generował od razu boilerplate z kodem:

Kopiuj
<button id="przycisk">Pokaż modala</button>
<script>document.getElementById("przycisk").addEventListener('click', function () {
  document.getElementById("dupa").style.display = 'block';
})<script>

Bo to tak jak mówisz, może skończyć się spaghettii. Plus to, że potem już edytor tego nie wyedytuje dalej. Kodem HTML (a także innym, w którym jest tylko hierarchia prostych elementów: CSS, JSON, XML etc.) łatwo jest manipulować maszynowo. A kod JS musiałbyś i tak sam potem modyfikować ręcznie.

No ale jeśli edytor nie tykałby JavaScriptu (pozwalałby ci na pisanie swoich komponentów, ale nie generował nic z automatu), to problem z JS byłby rozwiązany.


mechanix
  • Rejestracja:około 9 lat
  • Ostatnio:20 dni
  • Postów:501
0
Wibowit napisał(a):

Podstawową różnicą między systemami informatycznymi, a np częściami samochodowymi jest to, że integracja dużego systemu informatycznego z małych klocków to droga przez mękę, natomiast składanie samochodu z części od różnych producentów to norma i standardowa procedura

Przecież to porównanie bez sensu. Jak juz to składanie samochodu tak samo jak składanie komputera - części od różnych producentów.

Inna różnica to np to, że taka modyfikacja silnika w samochodzie zwykle nie musi pociągać za sobą modyfikacji innych elementów podczas gdy w systemie informatycznym nawet niewielkie zmiany funkcjonalności pociągają za sobą zmiany wielu komponentów.

Podkręcając procesor nie znaczy od razu, że musisz w czymś innym grzebać. Sorry ale te porównania są trochę nietrafne.

Wibowit
  • Rejestracja:prawie 20 lat
  • Ostatnio:około 4 godziny
0

Podkręcając procesor nie znaczy od razu, że musisz w czymś innym grzebać. Sorry ale te porównania są trochę nietrafne.

Tu już wszedłeś we własne porównania.

Przecież to porównanie bez sensu. Jak juz to składanie samochodu tak samo jak składanie komputera - części od różnych producentów.

No to niech będzie porównanie składania komputera do składania programu komputerowego. Analogia praktycznie taka sama.

Przykro mi, że nie załapałeś analogii :) Możesz sobie poczytać mojego poprzedniego posta jeszcze raz wstawiając składanie komputera zamiast składania samochodu.


"Programs must be written for people to read, and only incidentally for machines to execute." - Abelson & Sussman, SICP, preface to the first edition
"Ci, co najbardziej pragną planować życie społeczne, gdyby im na to pozwolić, staliby się w najwyższym stopniu niebezpieczni i nietolerancyjni wobec planów życiowych innych ludzi. Często, tchnącego dobrocią i oddanego jakiejś sprawie idealistę, dzieli od fanatyka tylko mały krok."
Demokracja jest fajna, dopóki wygrywa twoja ulubiona partia.
edytowany 1x, ostatnio: Wibowit
1

A ja powrócę do głównego tematu. Czy AI zastąpi programistów? Tych myślących, raczej nie. Tych trzaskających WP: być może. Całkiem fajny wykład na ten temat udzielił Andrzej Krzywda:

temat poboczny: Hindusi w IT -> temat wałkowany od wielu lat, raczej nam to nie grozi. Aktualnie jest raczej trend przenoszenia produkcji z Chin / Indii do Polski niż odwrotnie.

Consolas
  • Rejestracja:prawie 8 lat
  • Ostatnio:ponad 7 lat
  • Postów:6
0

Mój były szef zawsze mówił, że znał tylko kilku programistów i znacznie więcej koderów ;)

0

Strony internetowe coraz bardziej będą podlegać automatyzacji... wiec popyt na programistów frontend/backend może się zmniejszyć... i tym samym zarobki. Ale pewnie garstka dobrych programistów webowych zostanie na rynku... ale czy to się opłaca skoro zarobki spadną w dół.

Być może za 20-30 lat trzeba będzie się przebranżować na programistów robotów.

4

Informatycy mają tendencję od samego początku do automatyzowania swojej pracy, do tworzenia coraz większych abstrakcji. Kiedyś programowanie było bardzo trudne bo musiałeś zagłębiać się w aspekty techniczne - ogarniać co to są instrukcje oraz rejestry procesora,co to jest sterta, stos. Musiałeś też wykazywać się większymi umiejętnościami matematycznymi oraz algorytmicznymi. Teraz nie musisz tego wszystkiego ogarniać. Możesz posługiwać się bardzo abstrakcyjnymi językami jak python, a do problemów algorytmicznych jak sortowanie używać gotowych bibliotek.

Obecnie programowanie przypomina trochę stawianie stronek na WordPressie. Masz CMSa (framework) i instalujesz sobie jakieś rozszerzenia do niego (biblioteki) i łączysz je w całość mając gotową stronę i nie mając zielonego pojęcia jak to naprawdę wszystko działa. Różnica między CMS i frameworkiem jest taka, że framework jest tekstowy a typowy CMS jest wizualny. Mam wrażenie, że za jakiś czas pojawią się bardziej wizualne frameworki i języki programowania. Coś jak Scratch ale dużo lepsze. Programowanie stanie się powszechną umiejętnością. Z resztą tak powinno być.

Obecna sytuacja jest trochę chora ponieważ to finansiści powinni tworzyć systemy finansowe a na przykład lekarze systemy medyczne. Ludzie którzy naprawdę rozumieją swoją dziedzinę (domenę). Duża ilość oprogramowania jest c**** przez to, że programiści to osoby które potrafią tylko programować i kompletnie nie rozumieją systemów które tworzą.

Uważam więc, że 80% współczesnych informatyków zostanie zautomatyzowana i zastąpiona. 20% który nigdy nie zostanie zautomatyzowane to ludzie tworzący narzędzia, frameworki, biblioteki, rozwiązujący niebanalne problemy (których jest mało ogólnie) albo zajmujący się innowacjami z pogranicza informatyki i elektroniki (robotyka). Już teraz widzimy ten problem semantyczny wkładania klepaczy kodu układających klocki i inżynierów do jednego worka 'programistów'. Generalnie rynek nie potrzebuje inżynierów a klepaczy kodu i rzeczywiście wierzę, że ogólnie czeka nas zapaść.

Ogólnie sama umiejętność programowanie będzie tak powszechna jak umiejętność pisania i czytania. Nie będzie tak jak teraz, że wystarczy tylko to umieć ( w sensie programować) i będziesz zarabiał duże pieniądze.

0

Podsumowując programiści boją się, że to AI ich zastąpi, to się raczej nie stanie, zastąp ich zwykły kowalski :) Samo 'programowanie' wróci do swoich korzeni to znaczy do algorytmiki, matematyki i cybernetyki. 'Programiści' będą tworzyć narzędzia dla zwykłych ludzi by ci sami automatyzowali swoją pracę i tworzyli systemy z których będą korzystać.

stivens
  • Rejestracja:ponad 8 lat
  • Ostatnio:około 10 godzin
0

Jak sobie niby wyobrazasz wizualne programowanie? To nie Ms Access tylko troche bardziej zlozone zagadnienie


λλλ
4

Chciałem tylko przypomnieć że ~50% populacji uzyskało na maturze podstawowej z matematyki poniżej 50% punktów. To jest poziom kretyna z myślenia abstrakcyjnego. 35% uzyskało wynik poniżej ~40%, co jest poziomem debila. 21% nie zdało matury uzyskując poniżej 30%, co jest poziomem mentalnym płyty chodnikowej.

Z takimi wynikami jeśli chodzi o podstawy myślenia abstrakcyjnego sądzę że moja praca będzie bezpieczna przez długi, długi czas.

czysteskarpety
czysteskarpety
  • Rejestracja:prawie 10 lat
  • Ostatnio:ponad 4 lata
  • Lokalizacja:Piwnica
  • Postów:7697
0
Pijany Orzeł napisał(a):

Obecnie programowanie przypomina trochę stawianie stronek na WordPressie. Masz CMSa (framework) i instalujesz sobie jakieś rozszerzenia do niego (biblioteki) i łączysz je w całość mając gotową stronę i nie mając zielonego pojęcia jak to naprawdę wszystko działa. Różnica między CMS i frameworkiem jest taka, że framework jest tekstowy a typowy CMS jest wizualny. Mam wrażenie, że za jakiś czas pojawią się bardziej wizualne frameworki i języki programowania. Coś jak Scratch ale dużo lepsze. Programowanie stanie się powszechną umiejętnością. Z resztą tak powinno być.

ale o tym się pisze od kilkunastu lat, tymczasem wordpress nic nie wygryzł, a sam się skomplikował i rozrósł, więcej wtyczek, customowych przeróbek, łączenia z bootstrapem, mało co sie robi na gotowcach tylko trzeba rzeźbić w css/php/wp codex. zobacz ogłoszenia ;) już nie wspominając o utrzymaniu tego i lukach w samym cmsie, które wychodzą na jaw co kilka miechów


Wibowit
  • Rejestracja:prawie 20 lat
  • Ostatnio:około 4 godziny
0

Informatycy mają tendencję od samego początku do automatyzowania swojej pracy, do tworzenia coraz większych abstrakcji. Kiedyś programowanie było bardzo trudne bo musiałeś zagłębiać się w aspekty techniczne - ogarniać co to są instrukcje oraz rejestry procesora,co to jest sterta, stos. Musiałeś też wykazywać się większymi umiejętnościami matematycznymi oraz algorytmicznymi. Teraz nie musisz tego wszystkiego ogarniać. Możesz posługiwać się bardzo abstrakcyjnymi językami jak python, a do problemów algorytmicznych jak sortowanie używać gotowych bibliotek.

W czasach, gdy programiści musieli pałować się z rejestrami i pisać własne algorytmy sortowania to programy były dużo prostsze. Dlaczego? No właśnie dlatego, że tracili czas na to co dzisiaj mamy od kopa.

Ani programowanie w asemblerze ani implementowanie algorytmów sortowania nie jest trudne. Zajmowałem się i jednym i drugim, mógłbym spokojnie obie rzeczy przystępnie wytłumaczyć.

Mam wrażenie, że za jakiś czas pojawią się bardziej wizualne frameworki i języki programowania. Coś jak Scratch ale dużo lepsze. Programowanie stanie się powszechną umiejętnością. Z resztą tak powinno być.

To masz kiepskie wrażenie. Co jakiś czas powstają narzędzia, które automatyzują coraz to nowsze rzeczy, ponieważ zmienia się popyt. Kiedyś warto było automatyzować co innego niż dzisiaj. Nie ma jednak narzędzi ogólnych - takich które automatyzują nawet rzeczy, o których nie myśleli ich twórcy.

Ze sprytnymi systemami jest tak, że jeżeli robisz coś co przewidzieli twórcy sprytnego systemy to wszystko idzie gładko. Natomiast jeśli wykraczasz poza tą sferę komfortu to zaczyna się walka ze sprytnym systemem tak by go rozszerzyć o funkcjonalność którą chcesz zaimplementować. Tak jest absolutnie zawsze, każdy nietrywialny framework ma tego typu problemy.

Obecna sytuacja jest trochę chora ponieważ to finansiści powinni tworzyć systemy finansowe a na przykład lekarze systemy medyczne. Ludzie którzy naprawdę rozumieją swoją dziedzinę (domenę). Duża ilość oprogramowania jest c**** przez to, że programiści to osoby które potrafią tylko programować i kompletnie nie rozumieją systemów które tworzą.

Uważam więc, że 80% współczesnych informatyków zostanie zautomatyzowana i zastąpiona. 20% który nigdy nie zostanie zautomatyzowane to ludzie tworzący narzędzia, frameworki, biblioteki, rozwiązujący niebanalne problemy (których jest mało ogólnie) albo zajmujący się innowacjami z pogranicza informatyki i elektroniki (robotyka). Już teraz widzimy ten problem semantyczny wkładania klepaczy kodu układających klocki i inżynierów do jednego worka 'programistów'.


Frameworki, biblioteki, wzorce projektowe itd nie biorą się z powietrza. Składają się one głównie ze sprawdzonych w boju rozwiązań. Najpierw trzeba wypróbować kilka rozwiązań, by stwierdzić które jest najlepsze. I tak frameworki piszą ludzie doświadczeni w pisaniu kodu używającego poprzednich frameworków. Taki sprytny programista zauważa problemy w istniejących frameworkach i wymyśla coś co pozwoli uniknąć najbardziej irytujących problemów z obecnymi frameworkami. Nowy framework jednak też nie będzie pozbawiony błędów projektowych i kolejni sprytni programiści, zirytowani konstrukcją nowego frameworka wymyślą coś jeszcze nowszego i ich zdaniem lepszego.</p>

Samo programowanie to sztuka kompromisów. Weźmy pod uwagę na przykład https://en.wikipedia.org/wiki/Fallacies_of_distributed_computing https://en.wikipedia.org/wiki/CAP_theorem czy iluzje dotyczące transakcji bazodanowych (wszystkie inne poziomy izolacji transakcji oprócz serializable to kompromisy, które trzeba rozumieć by ich poprawnie używać). Kompromisy wymagają zarówno bardzo dobrej wiedzy technicznej (w sensie jakie mają skutki wydajnościowe i jakie dają gwarancje) jak i dobrej komunikacji z biznesem, by dowiedzieć się, które rzeczy mają najwyższy priorytet i w jaki sposób system będzie używany. Części kompromisów musi być świadomy sam biznes by nie tworzyć nierealistycznych bądź zupełnie niepraktycznych wymagań, a resztę kompromisów programiści powinni podjąć we własnym zakresie nie zawracając gitary niepotrzebnie biznesowi.

W rzeczywistości wysiłki by stworzyć język w którym podajemy tylko co co chcemy osiągnąć, a nie jak chcemy to osiągnąć trwają od dziesięcioleci. Taki język to np SQL. Nie podajemy w nim konkretnie kroków które baza ma wykonać by otrzymać wynik - plan wykonania dla zapytania SQL może w ogóle nie przypominać tego zapytania. Mimo wszystko nawet tutaj sztuczna inteligencja w postaci optymalizatora zapytań mocno zawodzi, więc i tak trzeba optymalizować zapytanie ręcznie, by w końcu otrzymać satysfakcjonujący plan zapytania. Jak widzimy - nawet dla tak mocno ograniczonego języka jak SQL i ogromnych funduszy włożonych w tworzenie sztucznej inteligencji dla niego (taki Oracle pewnie włożył już miliardy dolarów w swoje technologie bazodanowe) sztuczna inteligencja działa słabo i trzeba zatrudniać tabuny zwykłych Kowalskich do optymalizacji zapytań SQL.


"Programs must be written for people to read, and only incidentally for machines to execute." - Abelson & Sussman, SICP, preface to the first edition
"Ci, co najbardziej pragną planować życie społeczne, gdyby im na to pozwolić, staliby się w najwyższym stopniu niebezpieczni i nietolerancyjni wobec planów życiowych innych ludzi. Często, tchnącego dobrocią i oddanego jakiejś sprawie idealistę, dzieli od fanatyka tylko mały krok."
Demokracja jest fajna, dopóki wygrywa twoja ulubiona partia.
edytowany 1x, ostatnio: Wibowit
0
Trzeźwy Młot napisał(a):

Chciałem tylko przypomnieć że ~50% populacji uzyskało na maturze podstawowej z matematyki poniżej 50% punktów. To jest poziom kretyna z myślenia abstrakcyjnego. 35% uzyskało wynik poniżej ~40%, co jest poziomem debila. 21% nie zdało matury uzyskując poniżej 30%, co jest poziomem mentalnym płyty chodnikowej.

Z takimi wynikami jeśli chodzi o podstawy myślenia abstrakcyjnego sądzę że moja praca będzie bezpieczna przez długi, długi czas.

Zależy co robisz. W Polsce i na zachodzie popularne stają się bootcampy czyli biorą ludzi którzy kiedyś nie mieli by szans zostać programistami i robią z nich klepaczy kodu. Tworzenie CRUDów i wykorzystywanie gotowych technologii to nie jest rocket science i wymaga umiejętności logicznych na poziomie gówniarza z gimnazjum. To co się obecnie dzieje to jest pierwszy krok w tendencjach o których wcześniej pisałem. Po pierwsze programowanie stanie się powszechne, po drugie nastąpi rozłam między klepaczami kodu a inżynierami. Możliwe, że programistom uda się stworzyć związki zawodowe i przyblokować duży napływ wprowadzając regulacje jak to jest na przykład u prawników czy notariuszy, ale wątpię.

Generalnie kończy się okres w którym programiści to byli pasjonaci kochający programować, rozwiązywać problemy, którzy poprzez programy chcieli zmienić świat na lepsze. Nadchodzi czas przeciętnych rzemieślników, których jedyna motywacja sprowadza się do wizji dobrego zarobku lub ewentualnie większej władzy, tak jak to jest w większości innych branż. Zmienia się też podejście firm, firmy wcale nie chcą mieć u siebie wybitnych programistów bo ci przez to, że poświęcili dużą część życia na naukę dziedziny są zazwyczaj ekscentryczni i nieobyci społecznie, dlatego firmy wolą mocnych przeciętniaków których stosunek umiejętności miękkich do technicznych jest wypośrodkowany, czasami nawet z korzyścią na umiejętności miękkie. Generalnie uważam, że ktoś z IQ na poziomie 100 punktów jest wstanie programować.

Co do assemblera w assemblerze pisano kiedyś całkiem skomplikowane rzeczy gdy dowiedziałem się, że pierwszy RollerCoaster Tycoon został w większości napisany w assemblerze i to jeszcze przez jedną osobę to zrobiłem rybkę.

Generalnie uważam, że webdev może być pułapką dla osób naprawdę zdolnych. Dynamicznie się zmienia i jest bardzo łatwy do nauki. Coraz częściej widzę na reddicie, że staży programiści narzekają na dyskryminację ze względu na wiek bo obecnie programowanie to niestety bardzo często pamięciówka i konieczność nauki nowych hispterskich technologii, a wiadomo że starsi ludzie wolniej przyswaja wiedzę i też im się mniej chce. Dlatego dużo lepszym wyborem może być wyspecjalizowanie się w czymś niszowym i trudnym, coś do czego bardzo trudno wejść ale już się dostaniesz to raczej jesteś bezpieczny. Nawet mimo gorszych pieniędzy.

0

Do zastąpienia programistów przez sztuczną inteligencje jeszcze daleka droga...
Najpierw z rynku wyparci zostaną pracownicy fizyczni, później na odstrzał pójdą inne zawody.
ale wzrośnie zapotrzebowanie na zawody - takie jak: elektroników, grafików (twórcze myślenie), inżynierów materiałowych, inż budownictwa, inż. zarządzanie produkcją itp.
Programiści od web'a pewnie też zostaną wyparci (nawet dobrzy)... natomiast, nie wiadomo czy programiści od gier i aplikacji mają się czego obawiać... z pewnością zostaną dłużej na rynku niż web.

Wniosek z tego taki, że trzeba trzymać się zawodu, który jest na topie... obecnie to programowanie, później nie wiadomo co będzie "trendy". Być może czeka nas przebranżowienie... no chyba że kogoś będą zadowalać niskie zarobki.

Fantazjatyk
Nie wzrośnie zapotrzebowanie na elektroników bo i tak wszystko jest robione tanim kosztem w Azji.
0

Moje iq wynosi 80 i potrafie programować, progranowalem nawet trochę w c÷÷ i nauka tego językach nie sprawila mi jakichś mega problemów. Twierdzenie, ze programowanie wymaga genialnego umysłu to jedynie łechcenie swojego ego. Mała ilość programistów wynika tylko i wyłącznie z tego że ludzi to nudzi i mają dość już po hello wordzie. Programowanie raduje jedynie ludzi antyspołecznych pozostali wymiekaja z nudów.

vpiotr
Może napisz o tym artykuł do jakiejś gazetki?
Fantazjatyk
Chcesz powiedzieć, że jesteś aspołeczny?
0

A tak z ciekawości to test na IQ rozwiązywałeś na jakiejś stronie ? Podeślij linka ale takiego żeby wynik był bez wysyłania płatnych smsów.

0
Biały Ogrodnik napisał(a):

A tak z ciekawości to test na IQ rozwiązywałeś na jakiejś stronie ? Podeślij linka ale takiego żeby wynik był bez wysyłania płatnych smsów.

Test rozwiązywalem jakieś 5 lat temu i stronki już nie pamiętam :( zresztą pewnie już nie istnieje.

0

Ciekawe bo mi średnio wychodzi ~120 a czuje się czasem za głupi na programowanie, szczególnie jak spojrzę na wymiataczy...

czysteskarpety
czysteskarpety
  • Rejestracja:prawie 10 lat
  • Ostatnio:ponad 4 lata
  • Lokalizacja:Piwnica
  • Postów:7697
3

testy IQ sprawdzają głównie umiejętność rozwiązywania testów IQ ;)


Sceptyczny Dinozaur
fixed: testy IQ sprawdzają JEDYNIE umiejętność rozwiązywania testów IQ
0
Nieposkromiony Rycerz napisał(a):

Ciekawe bo mi średnio wychodzi ~120 a czuje się czasem za głupi na programowanie, szczególnie jak spojrzę na wymiataczy...

No dokladnie, ja miałem na jakimś darmowym 118

GS
  • Rejestracja:ponad 8 lat
  • Ostatnio:4 dni
  • Postów:1265
2
Smutny Młot napisał(a):

Moje iq wynosi 80 i potrafie programować, progranowalem nawet trochę w c÷÷ i nauka tego językach nie sprawila mi jakichś mega problemów.

Nieposkromiony Rycerz napisał(a):

Ciekawe bo mi średnio wychodzi ~120 a czuje się czasem za głupi na programowanie, szczególnie jak spojrzę na wymiataczy...

Efekt Krugera-Dunninga

WhiteLightning
  • Rejestracja:prawie 14 lat
  • Ostatnio:około 4 godziny
  • Postów:3171
0

Co do tego ze niby wszystko jest latwiej: poczatki IT to jestesmy jaskiniowcem i stawiamy szalas majac prymitywne narzedzia, ktore nie sa mzoe zbyt wydajne ale swoja robote zrobia. Obecnie jestesmy budowlancem wspolpracujacym z innymi budowlancami architektami itp. majacym park maszyn, dostep do nowoczesnych materialow komputerow itp. stawiajacym wielka konstrukcje.

Pytanie co jest trudniejsze? I ktora z dwoch osob predzej weszlaby w role drugiej.

LS
Żadne nie jest trudniejsze. Kwestia skali i know-how
Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)