Praca programisty zagrożona?

Odpowiedz Nowy wątek
2017-06-14 22:40
Krzywy Krawiec
0

Elo!
O co chodzi z tym niby nagłym zagrożeniem pracy jako programista? Już którtyś raz słyszę że niby roboty mają wyprzeć programistów

edytowany 2x, ostatnio: somekind, 2017-06-16 17:23

Pozostało 580 znaków

2017-06-18 00:16
Wesoły Krasnal
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.

Pozostało 580 znaków

2017-06-19 12:23
0

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

Pozostało 580 znaków

2017-06-23 12:01
Wybitny Krawiec
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.

Pozostało 580 znaków

2017-07-16 03:27
Pijany Orzeł
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.

Pozostało 580 znaków

2017-07-16 04:43
Pijany Orzeł
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ć.

Pozostało 580 znaków

2017-07-16 10:31
0

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


[You know nothing, Jon Snow…]

Pozostało 580 znaków

2017-07-16 11:30
Trzeźwy Młot
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.

Pozostało 580 znaków

2017-07-16 11:47
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

Pozostało 580 znaków

2017-07-16 12:11
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.

Samo programowanie to sztuka kompromisów. Weźmy pod uwagę na przykład https://en.wikipedia.org/wiki[...]cies_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, 2017-07-16 12:15

Pozostało 580 znaków

2017-07-16 14:49
Skromny Mleczarz
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.

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