Javascript kiddies?

Javascript kiddies?
Haskell
  • Rejestracja:ponad 9 lat
  • Ostatnio:10 miesięcy
  • Postów:4700
8

Czy Wy też macie takie wrażenie, że wielu programistów Javascript za bardzo nie ogarnia? Wielu których poznałem okazało się takimi script kiddies, którzy stosując strategię copy-paste from stackoverflow klepią jakieś stronki i nie potrafią nic poza tym wąskim wycinkiem programowania i Informatyki jako całości. Przypominają mi trochę takich 15-letnich koderów PHP sprzed 10 lat, którzy na swojej "stronie firmowej" pisali o sobie w liczbie mnogiej...


Zaglądali do kufrów, zaglądali do waliz, nie zajrzeli do d**y - tam miałem socjalizm. Czesław Miłosz
RS
Oh, przypomniałeś mi ten klasyk w stopkach: Webmaster: Jan Kowalski (yanko123@hotmail.com) :D
YA
  • Rejestracja:prawie 10 lat
  • Ostatnio:około 2 godziny
  • Postów:2367
0

Mam podobne wrażenia. Spotkałem takich, którzy mieli etykietkę "JS expert developer" i nie byli w stanie uargumentować dlaczego nie chcą otrzymywać wartości w CSV (tylko jakieś brednie, że parsowanie takich stringów jest trudne), a na myśl o bardziej wyrafinowanych operacjach typu scal dwie struktury danych (np. klienci i uslugi_klientow używając id klienta jako klucza) to zupełnie nie ogarniali. Nie wiem, może nie miałem szczęścia spotkać ludzi, którzy faktycznie znają się na JS.

jarekr000000
  • Rejestracja:ponad 8 lat
  • Ostatnio:około 6 godzin
  • Lokalizacja:U krasnoludów - pod górą
  • Postów:4706
7

I pewnie myślisz, że kiedyśc inaczej było?

Pokolenie BASIC kiddies.


jeden i pół terabajta powinno wystarczyć każdemu
edytowany 1x, ostatnio: jarekr000000
Kamil Pyrkosz
Kamil Pyrkosz
Panie ! Kiedyś to było , nie to co tera .
Marooned
Cobol senior kiddie
LukeJL
  • Rejestracja:około 11 lat
  • Ostatnio:2 minuty
  • Postów:8399
4

Tak, to tragedia. Z rokiem na rok coraz gorzej.

Tylko, że kiedyś JavaScript kiddies ograniczali się do pisania prostych skryptów - znam PHP, a chcę zrobić efekt na stronie w JS - czyli ogólnie byli to tacy webmasterzy, którzy na jakimś momencie potrzebowali coś napisać w JS (a potem wiecznie te same pytania na forach "jak przesłać zmienną z PHP do JS"
https://www.google.pl/search?q=jak+przes%C5%82a%C4%87+zmienn%C4%85+z+PHP+do+JS ). I tacy JS kiddies używali zwykle VanillaJS, jQuery (wraz z wtyczkami), gotowych skryptów z netu czy innych low-endowych tooli.

Natomiast teraz sytuacja jest o tyle gorsza, że ci ludzie już nie piszą prostych skryptów, tylko uczą się całego arsenału - Reacta, Webpacka, Reduxa i masę innych rzeczy. Swoją drogą aż mnie zadziwiają czasem, bo ja się czasem uczę od nich, że istnieje jakaś biblioteka, tool, czy technika. Są czasem bardzo na czasie (bo mają czasem bardzo świeżą wiedzę, prosto z najnowszych tutoriali) . Jednak od wytrawnego programisty różni ich fakt, że nie bardzo wiedzą dlaczego czy po co (np. taki gość potrafi uczyć się jakiejś biblioteki, np. Reduxa, ale w zasadzie nie ma pojęcia dlaczego się uczy, jakiego rodzaju problemy Redux (albo inna popularna biblioteka) rozwiązuje, tylko uczy się, bo coś jest modne.

Podobnie ludzie mający background w C#/Java też od razu wchodzą w TypeScript zanim się nauczą podstaw JavaScriptu (nie mówię, żeby nie używać TypeScriptu, tylko raczej o tym, że tacy ludzie są potem niedoinformowani i nie wiedzą gdzie się kończy JavaScript, a gdzie zaczyna TypeScript. I mają skłonność do przeinżynierowania rozwiązań i pisania ich w TSowy sposób, nawet jeśli czysto JS-owe rozwiązanie byłoby właściwe (chociaż może źle się wyraziłem z tym TS, bo to nie zawsze muszą być rzeczy z TypeScript. Czasem ludzie używają nawet rzeczy, które są w czystym JavaScript (ES6+), jak klasy, dziedziczenie itp. - ale w taki sposób, jakby nie znali niczego innego, oprócz robienia klasy do każdej głupoty).

W sensie - JavaScript kiddies to tacy ludzie, którzy uczą się czegoś, używają jakiejś libki, ale nie wiedzą dlaczego to robią, nigdy nie próbowali pisać w inny sposób.

Przypominają mi trochę takich 15-letnich koderów PHP sprzed 10 lat, którzy na swojej "stronie firmowej" pisali o sobie w liczbie mnogiej...

Toż to kilka dni temu w wątku o swoim portfolio gość używał liczby mnogiej o sobie (co ciekawe tylko w dyskusji forumowej, a samo portfolio zrobił jako osobiste).


edytowany 2x, ostatnio: LukeJL
Zobacz pozostałe 4 komentarze
LukeJL
nie trzeba, jest przecież window.fetch :)
czysteskarpety
czysteskarpety
no wiem, że jest przeglądarkowe api, ale jak już piszesz pod daną libkę to fajnie byłoby utrzymać ten styl, a tutaj wpadasz w ten łańcuch zależności i na końcu więcej pobierasz niż klepiesz
LukeJL
w czymkolwiek się pisze tego ajaxa i tak warto to wydzielić do osobnego modułu (w Vue nie pisze, ale wkurza mnie np. jak w projektach reactowych widzę walającego się fetcha czy axiosa w komponentach. Takie pisanie w stylu PHP, gdzie się miesza widok z pobieraniem danych).
czysteskarpety
czysteskarpety
ale nie raz robię z ręki jakieś proste pierdoły to nie będę się wygłupiał z instalką 50000 rzeczy, wydzielaniu, tym bardziej jak nikt mi za to nie płaci, a utrzymania tego potem nie mam, tylko jednorazowy strzał
Aryman1983
Aryman1983
@LukeJL: w kontekście js pisanie low end wygląda zabawnie :-)
Michał Sikora
Michał Sikora
  • Rejestracja:około 7 lat
  • Ostatnio:prawie 4 lata
  • Lokalizacja:Kraków
  • Postów:834
0

Nie powiedziałbym, że ogranicza się to tylko do JS'a. Z jednej strony problem widzę i rozumiem, bo mnie to na co dzień męczy jak czytam kod, którego wolałbym nie czytać. Z drugiej mam częściej wrażenie, że to przesadzanie w drugą stronę, bo niektórzy by chcieli, żeby implementować własną maszynę wirtualną pod każdy projekt.

Nie każdego interesuje programowanie w takim stopniu, żeby poznawać jego zakamarki. Niektórych nawet w ogóle nie interesuje. Jak widać popyt na "script kiddies" jest.

Kamil Pyrkosz
Kamil Pyrkosz
  • Rejestracja:ponad 6 lat
  • Ostatnio:prawie 6 lat
  • Lokalizacja:Warszawa
  • Postów:18
0

Dużo osób się pcha bo nie wiedzą ile czasu zajmuje nauka .


Basically, it's like normal countdown, only it's played on the street.
edytowany 1x, ostatnio: Kamil Pyrkosz
Zobacz pozostałe 6 komentarzy
MP
+1 dla @furious programming, generalnie jak chcesz zabłysnąć wymyślaniem czegoś nowego (nie zasad pisowni) to proponuje napisanie kolejnego frameworka js. Jak klepiesz kod w zespole to też tak wymyślasz swoje "reguły" i nie słuchasz opinii kolegów?
Marooned
Jak już @furious programming i @yarel zaznaczyli, prywatne preferencje niewiele tu mają do gadania. To nie zwiększa czytelności i jest zwyczajnym błędem językowym.
Aryman1983
Aryman1983
nic mnie tak nie drażni jak cholerna spacja przez znakiem interpunkcyjnym, to jest jak kalectwo.
Marooned
Burn the witch!
YA
Czeski błąd sprawił, że przeczytałem "Wurn ... " :D
WeiXiao
  • Rejestracja:około 9 lat
  • Ostatnio:około 2 godziny
  • Postów:5106
0

Jak dobrze, że era javascriptu dobiega końca :)

flowCRANE
W jego miejsce przyjdzie nowy PHP – tyle że do frontu. Ale było by zdziwko.
WeiXiao
@furious programming: nie nie, już wszystko jest ogarnięte - będzie dobrze.
AD
to samo mówili gdy zaczynałem się uczyć jakieś 6 lat temu ;>
Aryman1983
Aryman1983
@WeiXiao: jeśli Ci chodzi o blazora to jeszcze poczekamy :-)
W0
  • Rejestracja:ponad 12 lat
  • Ostatnio:6 minut
  • Postów:3531
0
WeiXiao napisał(a):

Jak dobrze, że era javascriptu dobiega końca :)

Ogólnie to era JSu dobiega końca od - jeśli wierzyć różnym ekspertom - około kilku ładnych lat. Czemu akurat teraz miałyby się te wróżby sprawdzić?

LukeJL
  • Rejestracja:około 11 lat
  • Ostatnio:2 minuty
  • Postów:8399
1

Nie sądzę XD Nawet jeśli taki WebAssembly pozwoli na uruchamianie innych rzeczy (swoją drogą już od paru lat ludzie są w stanie to robić z Emscripten albo dedykowanymi transpilatorami - i jakoś dalej się pisze w JS), to nie sądzę, żeby zastapiło to JavaScript całkowicie. Co najwyżej uzupełnią.

Prędzej uwierzę w to, co już się dzieje - że ludzie będą pisać w TypeScripcie czy innym JSie z ulepszaczami.


edytowany 1x, ostatnio: LukeJL
WeiXiao
da =/= że robi się to przyjemnie, szybko i jest enterprise ready :)
BS
  • Rejestracja:ponad 6 lat
  • Ostatnio:ponad 6 lat
  • Postów:1
1
WeiXiao napisał(a):

Jak dobrze, że era javascriptu dobiega końca :)

Ależ JavaScript nie ma tu nic do rzeczy. Tak akurat złożyło się, że frontend jest atrakcyjny z punktu widzenia wejścia na rynek. Zauważ, iż osoba, która nie jest inżynierem i nie wybrała sobie tego zawodu lata wcześniej w sposób świadomy dostaje szybki pogląd na to, co właśnie zakodowała. W innych językach tego nie ma, chyba że jara Cię output w konsoli (upraszczając), ale nie ukrywajmy, że większości ludzi to nie obchodzi. Jeśli JS kiedyś zostanie zastąpiony przez inny język to problem pozostanie, bo nie leży on totalnie w technologii, a ludzkim mindsecie. Dużo ludzi, która pcha się do frontu jest stosunkowo mało bystra, dlatego coś, co dla inżyniera jest trywialne, dla nich jest totalną ścianą. Sam prowadziłem rekrutację kilka lat temu i był problem ze zrozumieniem prostego reduce'a.
Teraz pracuję w firmie, w której w niektórych zespołach ludzie z prawie 10 lat exp nie potrafią pisać testów jednostkowych. To co produkują zwykle jest do usunięcia, bo są one albo fragile albo testują detale implementacyjne totalnie nie myśląc, co robią. I nie pracuję w jakiejś firmie z przypadku, a w software housie, gdzie jeden z naszych wiodących klientów jest tzw. unicornem. To nie są projekty do szuflady, a coś, czego ludzie używają na co dzień. Na szczęście mamy w każdym z biur z 2-3 osoby, które są naprawdę dobre, co pozwala na wyłapanie takich rzeczy, jak te wyżej wspomniane testy. A wystarczyłoby przeczytać clean codera ze zrozumieniem i podobne tego typu pozycje i po prostu stosować się do zastosowanych tam rad. Tak, uważam, że jest to tak proste, ale ignorancja nie zna granic i musimy żyć z tym co mamy. Albo założyć własną firmę i zatrudniać samych "debeściaków". ;)

edytowany 2x, ostatnio: Brunatny Szczur
a_s_f
No ale ktoś tych ludzi zatrudnił i nie zwalnia, więc chyba spełniają pokładane w nich nadzieje?
BS
Oczywiście, poniekąd. Są to osoby, które realizują zadania, dowożą sprinty, itd. Czy są to słabi programiści? Nie, są to programiści ze "słabościami". ;) Problem w tym, że w wielu projektach zaniża się oczekiwania, a potem w rezultacie dostaje się produkt, którego użytkownicy nie lubią. W sytuacji, gdy taki klient jest startupem, firma po prostu zwija się w momencie gdy skończy się kasa. Ja mam wysokie oczekiwania wobec ludzi z wieloletnim doświadczeniem, ale nadal bardzo mało pisze jakiekolwiek testy, nie wspominając o ich jakości. A to był jedynie przykład. :)
BS
I w sytuacji, gdy faktycznie takie osoby nie są dostatecznie wydajne, czy w jakiś sposób szkodzą produktowy wyraźnie, to wtedy tak - zostają zwalniane. Mam o tyle komfort, że firma, w której pracuję potrafi podziękować programiście. A widziałem niekiedy zespoły, gdzie ludzie ze sobą męczyli się wzajemnie, a nikt nie chciał nic z tym zrobić.
LukeJL
  • Rejestracja:około 11 lat
  • Ostatnio:2 minuty
  • Postów:8399
0

To co produkują zwykle jest do usunięcia, bo są one albo fragile
albo testują detale implementacyjne totalnie nie myśląc, co robią.

Przydałoby się Wujka Boba na nich napuścić. Swoją drogą testowanie detali implementacyjnych to albo brak doświadczenia (chcę testować, ale nie wiem jak, więc testuję jak umiem) albo głupota (jeśli ktoś będąc doświadczonym programistą dalej testuje detale implementacyjne*, mimo że widział już ileś razy, że to się rozwali przy pierwszym refaktorze - to raczej nie jest to człowiek, który poddaje refleksji to, co robi).

A myślę, że wiele by się znalazło ludzi, którzy niby początkującymi nie są, mają jakieś doświadczenie, ale dalej piszą testy na zasadzie odzwierciedlania 1:1 implementacji. Czyli test g**no testuje, w zasadzie tylko to, czy się coś zmieniło, bo jak się cokolwiek zmieni, to test nie przejdzie (czyli robią taki snapshot test, tyle, że ręcznie, zamiast z automatu).

*Chociaż z drugiej strony testowanie implementacji czasem może być przydatne, ale trzeba wiedzieć kiedy i wiedzieć, że to są testy "na jeden strzał" i że to one pierwsze pójdą się j... przy refaktorze, dlatego nie można na nich zbytnio polegać i należałoby je traktować jako dodatkowe testy, a nie główne


edytowany 2x, ostatnio: LukeJL
BS
Kiedy testowanie samej implementacji wg Ciebie ma sens? Po co Ci testy, które dają false positive'y, szczególnie przy refactorze? Lepszy brak testów niż testy, które szkodzą.
LukeJL
ułatwiają debuggowanie. Jak się robi coś, co zawiera skomplikowaną wewnętrzną logikę, ale co z wierzchu ma bardzo proste działanie (input -> mielenie -> output). I teraz tak - powiedzmy, że testujemy to na zasadzie black boxa (sprawdzamy czy dany input daje odpowiedni output). I coś tam zmieniamy w środku i powstaje bug. Nie wiadomo, w którym miejscu, bo testy mówią tylko, że output jest inny dla danego case'a. Więc musimy debugować. Natomiast, jeśli poszlibyśmy trochę głębiej, to testy by nam mogły zdradzić więcej warunków i powiedzieć co w środku nie działa.
LukeJL
czyli testy jako taki automatyczny debugger. Natomiast raczej traktowałbym to tylko jako dodatkowe testy (które tylko by uzupełniały główne testy), które należy traktować jako pomoc/z przymrużeniem oka/i które byłyby juz na wstępie przeznaczone do tego, że się je najwyżej zmieni albo po prostu skasuje.
LukeJL
swoją drogą czasem implementacja jest po prostu ważna/złożona. Np. jeśli coś używa specyficznego algorytmu. Warto moim zdaniem mieć czasem większy wgląd w to, czy dana implementacja robi po kolei to, co powinna robić. Chociaż patologią jest dla mnie to, że ludzie tylko takie testy piszą (czyli jak implementacja/algorytm się zmieni, to zostają totalnie bez testów). Ale jako dodatek, w pewnych sytuacjach, czemu nie, jeśli akurat sytuacja tego wymaga.
RS
  • Rejestracja:ponad 22 lata
  • Ostatnio:7 miesięcy
1

Chyba mówicie o jakiś juniorkach, albo firmach, które dopiero coś tam zaczynają grzebać w JS i do projektu wskoczył kolega backendowiec. Byłem na rozmowach na stanowiska frontendowe i bez zrozumienia założeń i niuansów JS to bym po 3 minutach wyszedł z płaczem :D. Kumpla ostatnio jacyś Hindusi na Hangouts maglowali z Symbol(), a to raczej awangarda (ale nie chcę się o to spierać :D).

Dzisiaj jest w ogóle taki trend, że ludzie wpisują do CV mnóstwo technologii, a ich poziom się sprowadza do kursu z udemy albo tutoriala na oficjalnej stronie. React, docker, mongo i tak dalej. Większość firm potrafi jednak to wyłapać w procesie rekrutacji. Problemy się zaczynają, gdy trzeba zrobić dobrze projekt, który ma jakieś realne wymagania, te basic tutoriale są zazwyczaj odpięte od rzeczywistości. Moim zdaniem materiałów do poważnych use-casów w JS jest w necie jak na lekarstwo.

BS
Rozmowa rekrutacyjna, a faktyczna praca to dwie różne rzeczy. Znam firmy, które robią skomplikowane procesy rekrutacyjne, trudne pytania - generalnie wymagana jest spora wiedza i nierzadko inteligencja czy umiejętność główkowania. Jednak po zatrudnieniu trafiają do produktu, gdzie najwięcej roboty jest w CSS, a w JS-ie od biedy wystarczą podstawy. Znajomy natomiast pracował w firmie, gdzie na rozmowie były stosunkowo łatwe pytania, a docelowy projekt wymagał np. implementacji algorytmów do rozchodzenia się gazu po zmiennym, jeśli chodzi o ukształtowanie, terenie. Zależy.
RS
To prawda, szczególnie scenariusz trudna rozmowa -> klepanina w spaghetti crudzie
LukeJL
noo, ja tego nie ogarniam. Pytają o nie wiadomo o jakie zagadnienia z programowania, a jak się wchodzi to "2 pixele w lewo" (miałem już tak w jednej firmie).
UP
  • Rejestracja:ponad 6 lat
  • Ostatnio:prawie 5 lat
  • Postów:28
2

Zawsze powtarzam - szukasz dobrego webmastera, programisty, poproś o własne projekty robione w ramach tej pasji.

I zauważyłem ostatnio, że rzeczywiście poważne firmy oferujące poważne pieniądze wymagają takich projektów. I wcale nie mówię o githubie - chodzi o ukończone, działające, używane/sprzedające się produkty. Do tego dopisują często "proven track record of always learning" - czy cuś takiego. Dla mnie to jest super i najskuteczniejsze sito na ludzi bez pojęcia.

LukeJL
  • Rejestracja:około 11 lat
  • Ostatnio:2 minuty
  • Postów:8399
1

Symbol() to akurat przydatna rzecz, bo pozwala na przyczepianie do obiektów unikalnych właściwości. Chociaż, podobnie jak WeakMap, pewnie bardziej się to przydaje przy robieniu bibliotek niż kodu biznesowego.

Ale i tak myślę, że większą korzyść ludzie by mieli z opanowania Symboli, WeakMap, i paru innych rzeczy, które doszły do języka, niż z nauki np. wielokropka do obiektów ... czy innych rzeczy, które wiele nie wnoszą, a są tylko cukrem składniowym.

CV mnóstwo technologii, a ich poziom się sprowadza do kursu z udemy albo tutoriala na oficjalnej stronie.

Bo wiele narzędzi niewiele więcej wymaga do ich używania. Czy np. znajomość Webpacka wymaga czegoś więcej niż tylko przemęczenie się za pierwszym razem (mnie kilka godzin to zajęło na początku, żeby w ogóle odpalić builda)? A potem to z górki. Po prostu wchodzisz na dokumentację Webpacka i kopiujesz aktualny kod do konfiga (które się ciągle zmieniają BTW). Podobnie np. z React Router. Żadna wielka filozofia, wystarczy po prostu znać aktualne API. A niektóre firmy np. piszą w wymaganiach coś w stylu "znajomość React Router". Firmy za bardzo cenią sobie "znajomość technologii", tak jakby technologii nie można było się w biegu nauczyć.

Co innego jeszcze taki React, który jest pozornie łatwy, bo ma łatwe API, ale już trudniej to ogarnąć głębiej, biorąc pod uwagę skalowalność, wydajność itp.

React, docker, mongo i tak dalej.

Moje pierwsze styknięcie z Dockerem, to jak kiedyś wszedłem do projektu, w którym był Docker. Nie znałem go zupełnie, ale przecież jest dokumentacja i kolega mi też pomagał, i dało się zainstalować. Nie jest to wielka filozofia. Takie rzeczy przecież są właśnie po to, żeby było łatwiej coś zainstalować w projekcie, w którym jest sobie ileś osób (bez Dockera byłoby trudniej, bo każdy, kto wchodzi do projektu musiałby wiedzieć, jak zainstalować ręcznie z tuzin innych tooli, które są potrzebne w projekcie, a które Docker sam zainstaluje wg konfiga). Chociaż jak dla mnie ogólnie Docker też utrudnia i spowalnia pracę przez to, że wszystko jest w Dockerze, a nie normalnie, ale to już inna sprawa.


edytowany 1x, ostatnio: LukeJL
RS
  • Rejestracja:ponad 22 lata
  • Ostatnio:7 miesięcy
1
LukeJL napisał(a):

Bo wiele narzędzi niewiele więcej wymaga do ich używania. Czy np. znajomość Webpacka wymaga czegoś więcej niż tylko przemęczenie się za pierwszym razem [...]

Webpack akurat jest dość prosty, ale dla większości ludzi to i tak blackbox - jak się tylko pojawi jakiś błąd w konsoli to google do oporu. Odpalenie
docker-compose up to nie jest "znajomość dockera", jeśli się nie kuma czy lepiej jest mieć zależność X czy Y w osobnym kontenerze czy jednak nie i jaka jest to różnica, o umiejętności deployu i spięcia tego z jakimś CI nie wspomnę. To wszystko wychodzi w trakcie zwyczajnej pogadanki rekrutacyjnej - o ile ktoś wie o co pytać :).

Edit: I masz rację, większość rzeczy to naprawdę nie jest żadna wielka filozofia, założenia są często nawet banalne. Ale znajomość technologii wynika z doświadczenia w jej używaniu w różnych przypadkach, czyli wyjścia poza optymistyczne obiecanki ze strony głównej każdej z nich i napotkanie problemów.

Przykładowo: dzisiaj twórca frameworka Laravel pochwalił się na Twitterze, że ich Query Builder ma genialne helpery do kolumn typu JSON. Dopiero w odpowiedziach mu wytknęli, że to nie działa dla baz innych niż MySQL i że nie działa operator ->>. To jest właśnie znajomość technologii na poziomie interesującym dla każdego, a nie takie entry-level umiem zapisać encję ;).

edytowany 1x, ostatnio: roSzi
LukeJL
morał z tego taki - warto chwalić się głupotą w internecie, bo dzięki temu uzyskujesz feedback. Prawo Cunninghama https://meta.wikimedia.org/wiki/Cunningham%27s_Law (nie znam historii tworzenia Laravela, ale przypuszczam, że jak gościu dostał wiadro zimnej wody, to coś z tym zrobi, żeby to ulepszyć. Albo przynajmniej nie będzie się chwalić bezpodstawnie).
czysteskarpety
czysteskarpety
  • Rejestracja:prawie 10 lat
  • Ostatnio:ponad 4 lata
  • Lokalizacja:Piwnica
  • Postów:7697
1
LukeJL napisał(a):

Firmy za bardzo cenią sobie "znajomość technologii", tak jakby technologii nie można było się w biegu nauczyć.

No tak jest, firmy szukają programistów frameworków i bibliotek, a nie języka, kandydaci odpowiadają na wymagania i uczą się skrótowo, proste zasady działania rynku.


LukeJL
  • Rejestracja:około 11 lat
  • Ostatnio:2 minuty
  • Postów:8399
1

Pewnie tak. Gdyby pisano w wymaganiach "zaawansowana znajomość JavaScriptu, zarówno w wersji ES3, ES5, jak i ES6 i nowszych" oraz wymienienia rzeczy typu "musi wiedzieć, co to closure, prototyp, jak działa this, jak działają klasy ES6, czym różni się let od const od var" to potem ludzie by przywiązywali większą uwagę do JavaScriptu, nie byłoby narzekania, że "kandydaci są tacy nieogarnięci nie znają podstaw JS".

A jeśli w ogłoszeniach jest coś w stylu "React, Webpack, Redux" to mamy potem "programistów Reacta" (którzy są obecną wersją "programistów jQuery", czyli ludzi, którzy wiedzą tylko jak zrobić coś w React, a nie znają języka. Często nawet w React nie umieją pisać i ściągają gotowe komponenty React, które są takim odpowiednikiem "pluginów do jQuery".

Tak samo już na bardziej zaawansowane stanowiska nie szuka się "ludzi z doświadczeniem w JavaScript" ale "ludzi z doświadczeniem w React" (mimo, że taka wiedza frameworkowa się bardzo szybko dezaktualizuje, wraz z kolejną wersją Reacta).

To firmy same wychowują sobie pokolenie script kiddies.


Zobacz pozostałe 5 komentarzy
WeiXiao
W chinach to, co wygłaszasz w necie może wpłynąć na twój credit score(podobno). W south KR aby grać w np. League of Legends to rejestrujesz się podając swój RRN czyli SSN czyli PESEL (fakt).
Miang
może nie firmy ale zdarza się ze osoby w tych firmach specjalnie szukają kogoś bez wiedzy ogólnej żeby nie byli zagrożeniem dla szukającego A pomysł z dodawaniem linków do serwisów społecznościowych do cv to nasuwa pomysł na biznes "tworzenie wizerunku sieciowego programisty"
LukeJL
No to strach się bać. Szczególnie, że przy takiej liczbie internautów muszą to sprawdzać maszyny, a wiadomo jak bardzo zawodna jest tak zwana "sztuczna inteligencja"(tak zwana, bo pewnie muchy są bardziej inteligentne), gdzie algorytm może cię zbanować tylko dlatego, że twoje zachowanie coś striggerowało (ja już nieraz zostałem uznany za robota przez Google, nie mówiąc już o tym, że Twitter mnie zbanował, bo też myślał, że jestem robotem).
WeiXiao
Mam silne przeczucie, że tam ludzie boją się obgadywać partie rządzącą (Communist Party of China) :)
LukeJL
teraz i w Europie tak będzie https://news.ycombinator.com/item?id=17967366 I ten komentarz: https://news.ycombinator.com/item?id=17969678 A za kilka lat powiesz coś źle na EU i już banik na internet.
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)