Tai, ką sužinojau apie 12–22 metų amžiaus vaikų tobulėjimą

Teddy Kelley nuotrauka „Unsplash“

Kartais mano draugai manęs klausia, kaip aš įsitraukiau į priekinį tobulėjimą. Sakyčiau, kad į tai įstrigęs; bet tiesa buvo ta, kad aš to tikrai nežinojau. Taigi praėjusią savaitę aš giliai pasinėriau į tamsius interneto kampelius, kad išmanyčiau kiekvieną priekinį projektą, kuriame dirbau nuo 12 metų.

Berniuk, ar tai buvo nardymas?

Taigi čia jie yra. Kiekvienas baisus sprendimas, kiekviena nepatogi svetainė, kiekviena klaida ir išmokta pamoka padarė mane šiandienos kūrėju. Štai jie yra visa nefiltruota šlove.

(Jei jūs tik pradedate kurti priekį, įtraukiau žinduolių, kuriuos išmoko pakeliui, grynuolių, kurie, tikiuosi, padės jums sutaupyti laiko jūsų kelionėje. Jei esate sena ranka ... Tikiuosi, kad ši istorija suteikia tau kikenimą ar du )

12 metų

Leisk man nustatyti sceną. Tai buvo 2007. Steve'as Jobsas ką tik pristatė „iPhone“. Visi naudojosi „MSN Messenger“. Niekam nepatiko „Windows Vista“. Tai buvo dalykai, kuriuos atsimenu, bet nepamenu, kada tiksliai nusprendžiau sukurti svetainę.

Man patiko mintis, kad ką nors įdėtą į internetą gali pamatyti bet kas visame pasaulyje, pavyzdžiui, magija. Tikrai negali būti taip sunku. Ar gali?

Mano pirmoji svetainė - tūkstančio žingsnių kelionė ... prasideda palapinėmis ir blykstės elementais?

Aš buvau neteisus. Buvo sunku. Net neįsivaizdavau, ką darau.

Vienu metu net negalėjau suprasti, kaip naudoti
žymą, kuri sukuria eilutės pertrauką. Buvau sumišęs, kodėl įprastas kodo lūžis tinklalapyje nepadarė panašaus lūžio. Bandžiau naudoti

​​žymas, kurios sukuria pastraipas, bet nesupratau vyniojimo sąvokos. Aš net bandžiau nustatyti lentelę, kad pradėčiau naują eilutę.

Nepaisant viso to sunkaus darbo, viskas buvo dar blogiau (net 2000-aisiais). Prisimenu, kaip mano klasės draugai juokavo, kai pasidalino nuoroda su jais per „MSN Messenger“. Tada vėl galėčiau juos apkaltinti? Jis turėjo visus žiniatinklio 1.0 žiaurumus: gif, palapinės, blogai išdėstyti fonai, „Flash“ raštai ... jūs taip įvardinate. Aš buvau atkalbinėtas. Taigi aš išmokau savo pirmąją pamoką.

Tavo pirmasis projektas bus blogas. Mano pirmasis HTML puslapis buvo baisus. Mano pirmasis CSS failas buvo toks nepatogus. Marie Kondo jo nepalies. Mano pirmoji programa mobiliesiems buvo ignoruota. Mano pirmoji „React“ programa sudužo kiekvieną minutę. Mokytis iš priekio yra sudėtinga, nes tai yra daugelio dizaino ir informatikos idėjų sankirta. Gerai, kad pirmą kartą to negaunate.
Pažadu, kad bus lengviau. Laikui bėgant suprasite, kad sukūrėte perduodamų įgūdžių rinkinį (pvz., HTML padės sukurti ir „React“ komponentus, ir „Android“ veiklos išdėstymo schemas). Pirmiausia pripažinimas, kad esi blogas dėl kažko, yra geras žingsnis į priekį.

Aš žinojau, kad tai blogai, bet taip pat žinojau, kad galiu padaryti geriau. Taigi Helovinui, padedamas „Gimp“, aš pagardinau svetainę šviežiu moliūgų sluoksniu ir „Evanescent“ tipografija. Ei, jis netgi turėjo originalų nuotykių žaidimą, kuriame žaidėjai stebuklingu būdu išsaugojo fantazijos pasaulį

Perdarymo metu taip pat išmokau tvarkingo triuko. Supratau, kad HTML ir CSS pasaulyje nėra slėpimų. Kiekviena technika, kiekviena paslaptis buvo tik per vieną šaltinį. Net „Apple“ negalėjo paslėpti jų gražių gaminių puslapių paslapčių, o aš jų valandas praleisdavau valandų valandas, norėdama išsiaiškinti jų paslaptis.

Jei kas nors kitas galėtų tai padaryti, tada aš taip pat galėčiau.

Kažkur pakeliui mano klasės draugai nustojo iš manęs linksmintis.

Peržiūrėkite šaltinį. Kai pamatysite ką nors nuostabaus tinklalapyje, paklauskite savęs, ar galite jį atkartoti. Ar galėtumėte tai padaryti tik su CSS? „JavaScript“? Jei ne, spustelėkite jį dešiniuoju pelės mygtuku> spustelėkite „Patikrinti“ („Chrome“) arba „Įrankiai“> „Web Developer“> „Inspector“ („Firefox“) ir pabandykite pakeisti kodą. Pažymėkite geriausių efektų sąrašą, kurį kada nors norėtumėte išbandyti, arba sudarykite jo sąrašą.

14 metų

Prieš „Snapchat“ ir „Instagram“ vaikai turėjo tinklaraščius. Visi mano draugai turėjo vieną. Daugelis jų mielai suasmenino savo tinklaraščius, naudodami tiesiogines temas. Bet ne sirea, ne aš. O ne

Pradėjau nuo to, kad pakeisčiau esamas temas. Tada aš sukūrčiau temas kaip dovanas savo draugų gimtadieniams. Kitų klasių vaikai atvažiavo manęs klausti temų. Aš tapau blogskin vaikinu.

Aš tikrai patekau į juosteles

Ir taip prasidėjo tikras mano įsitraukimas į HTML. Kiekviena tema buvo vieno puslapio HTML dokumentas su įdėta CSS. Naudodamas pseudo žymas, pvz., <$ BlogItemTitle $>, galėjau kontroliuoti, kaip ir kur buvo įdedamas kiekvienas elementas. Vėliau pseudo žymas pakeis tikras paslaugų teikėjo turinys. Pagaliau buvau laisva nuo WYSIWYG redaktorių ribų!

Taigi ilgai, tripod.com!

Prisimenu, kai valandas praleisdavau judindamas elementus su CSS, mokydavausi skirtumų tarp ekrano ir padėties tipų, paraščių ir paminkštinimų. Vienai konkrečiai temai aš panaudojau keturių spalvų juosteles kaip statinį foną už balto priekinio plano su skaidriais raštais. Kiekvienas elementas turėjo būti nepriekaištingai suderintas, todėl modelis atsiskleidė, kai vartotojas slinko:

Horizontali slinkimo vieta, todėl nerimta!

Man labai patiko kurti temas. Supratau, kad internetinis puslapis yra ne tik 2D, bet ir reaguoja į žmones su „JavaScript“ ir CSS pseudo selektoriais, pavyzdžiui: užveskite pelės žymeklį ir: aktyvų. Jie augo ir traukėsi, išblukę.

Tai buvo gyvas, interaktyvus paviršius.

Puikiai atlikus šią veiklą, žmonės džiugino ir aš mėgau stebėti savo draugų reakciją į naujas temas. Aš pastūmėjau išbandyti naujas idėjas ir technikas, kad išsiaiškinčiau, kas žmonėms patiko.

️Sukurkite sąveiką. Geri priekinių elementų elementai yra randami (pateikia užuominų, kaip juo naudotis) ir teikia grįžtamąjį ryšį (informatyviai reaguoja į sąveiką). Pvz., Mygtukas gali pakeisti fono spalvas užveskite pelės žymeklį ir padidins neskaidrumą spustelėjus. Čia yra geras vaizdo įrašas ir knyga šia tema.

16 metų

2013 m. Liepos mėn. Aš užregistravau savo pirmąjį domeną pas tinkamą interneto prieglobą. Tai atrodė kaip praėjimo apeigos, kaip aš pagaliau padariau ką nors tikro. Aš susikūriau savo portfolio ir nuo to laiko jame buvo kuriami mano projektai ir eksperimentai. Kai įgijau naujų įgūdžių, jie augo ir vystėsi šalia manęs.

Jie taip greitai užauga

Negaliu pervertinti to, kiek naudinga man buvo domeno ir gero serverio priegloba. Galėčiau eksperimentuoti su naujomis idėjomis internete. Aš atlikau „cron“ darbus, kurie palengvino mano gyvenimą. Kai man prireikė naujos erdvės klientui ar darbui mokykloje, galėjau sukurti naują padomenį.

Diegdamas savo pirmąją svetainę jaučiausi kaip didelis berniukas. Beveik atrodė, kad galiu taip užsidirbti pragyvenimui. Tai būtų gana šaunu, pamaniau sau.

Susikurkite aplanką. Tai puikus projektas, skirtas išmokti diegti žiniatinklyje. Paprastos parinktys apima FTP, kuris leidžia kopijuoti failus į serverį ir juos aptarnauti. Kai jums tai bus patogu, rekomenduočiau nustatyti nuolatinę integraciją ir „Git“. Aš išbandžiau keletą paslaugų teikėjų, prieš baigdamasis bendro naudojimo „Dreamhost“ (filialo nuoroda) priegloba, kuria be galo džiaugiuosi. Tačiau tikrai yra nemokamų alternatyvų.

18 metų

Singapūre 18 metų jaunuoliai turi praleisti dvejus metus kariuomenėje. Tam tikru pasisekimu buvau paskelbtas armijos padalinyje, ieškančiame mobiliųjų telefonų kūrėjo. Jie paklausė, ar aš anksčiau nieko tokio nesu padaręs. Neturėjau, bet kuo ji gali skirtis nuo tinklalapio kūrimo? Taigi aš pasakiau taip.

Pasirodo, aš klydau. Bet jau tada aš buvau ne vienas, kuris leistų man nepatraukti patirties ar kvalifikacijos trūkumą.

Pratinkime tai sakydami, nors anksčiau dirbau su „JavaScript“, tačiau neturėjau objektyvaus programavimo koncepcijos, kuri buvo ypač svarbi kuriant programas. Mano pirmoji užduotis buvo sukurti esamos API „Android“ programą, leidžiančią kareiviams skambinti sergantiems. Mano antrasis buvo sukurti edukacinį žaidimą.

Dienas praleidau „Google“ ir „StackOverflow“, užduodamas šimtus svarbiausių klausimų, tokių kaip „Kaip sukurti teksto lauką“ arba „Kaip padaryti, kad mygtukas darytų reikalus“. Savaites praleidau plakdamas galvą klaviatūra per „NullPointerExceptions“. Pagal dantų odą man pavyko išmušti ką nors pusiau padoraus.

Nors programos atrodė patraukliai, už kodo nebuvo nieko. Buvo špagato kodo eilutės ir eilutės, nebuvo aiškių architektūrinių modelių, o logika buvo griežčiau sujungta nei grandininės tvoros tvora. Neįmanoma jos išlaikyti ir dėl šios priežasties nė viena mano sukurta programa negalėjo būti aktyviai atnaujinta.

Praeis keleri metai, kol perskaitau apie tai, kaip parašyti keičiamą, švarų sąsajos kodą. Bet kai tai padariau, supratau, kodėl tai svarbu.

Parašykite testus. Testų rašymas yra tikriausiai vienintelis veiksmingiausias įprotis, kurį pasirinkau rašydamas geresnį kodą. Prisimenate, kaip mokydamiesi koduoti, rašėte funkcijas, kurios bandė išlaikyti kelis bandomuosius pavyzdžius? Tai panašu, bet dabar ir tu pats rašai testus! Parašę gerus kiekvienos funkcijos testus (vienetinius testus), galite įsitikinti, kad jūsų kodas veikia net keičiant kitas kodo bazės dalis.
Atskirkite savo pareigas. Ar turite funkciją, kuri daro kelis dalykus? Padalinkite juos į kelias funkcijas. Ar turite klasę su keliomis metodų dalimis, įgyvendinančiomis skirtingas funkcijas? Padalinkite juos į kelias klases. Ko gero, svarbiausias iš SOLID principų yra atsakomybės atskyrimas. Tai daro jūsų kodą lengvai skaitomą ir keičiamą. „Švarus kodas“: „Agile“ programinės įrangos meistriškumo vadovas (filialo nuoroda), kurį sukūrė Robertas Martinas, yra būtinas kiekvienam „end-end“ kūrėjui.

20 metų

2016 m. Birželio mėn. „Google Play“ parduotuvėje paskelbiau programą. Tai padeda studentams išmokti fizikos, kuri buvo dalykas, kurį visada mylėjau. Pirmą dieną ji buvo 3 atsisiuntusi. Antrą dieną ji turėjo 5. Trečią dieną ji turėjo 1000. Iš pradžių to nepastebėjau, tačiau skaičius vis augo. Per savo pirmąjį mėnesį buvo gauta 7000 atsisiuntimų. Iki rugsėjo mėnesio įdiegimų skaičius išaugo iki 15 000.

Kaip? Aš iš viso nedariau jokios rinkodaros.

Pasirodo, kažkas bendrino programą „Reddit“ (du kartus!) Ir žmonėms atrodė, kad ji patinka. Jį pasirinko kelios apžvalgos svetainės ir tinklaraščiai. Žmonės pradėjo kurti vaizdo įrašus apie tai „YouTube“. Šiuo metu aš buvau labai susijaudinęs, kai man pasidarė širdies plakimas. Manau, kažkodėl verkiau. Atrodė, kad visas mano sunkus darbas pagaliau atsiperka.

Mane sugrąžino, kai sukūriau temas savo draugų tinklaraščiams kaip dovanas jų gimtadieniui. Aš vietoj to dabar dovanojau dovanas tūkstančiams žmonių visame pasaulyje. Staiga supratau, kaip labai mėgstu kurti sąsajas, kurios galėtų padėti žmonėms. Kad žmonės mylėjo.

Geriausia šios patirties dalis buvo susipažinimas su žmonėmis, kurie naudojasi mano programa. Atsakiau į kiekvieną „Reddit“ komentarą ir sveikinau el. Laiškus su visais fizikos klausimais, kurie gali kilti. Kartais gaudavau gražių mažų žinučių, tokių kaip ši:

Tai yra mano mėgstamiausias el. Paštas iš programos, kurią sukūriau prieš tai
Pasirinkite projektą, kuris jums rūpi. Jūs skaitėte knygas. Jūs baigėte „Codecademy“ kursą. Įvaldėte sveikuosius pasaulius ir rekursines funkcijas. Kas dabar? Gerai pagalvokite, kuriose srityse esate santykinai ekspertas. Ar esate maistininkas? Paukščių stebėtojas? Smulkmenos meistras? Pagalvokite apie tai, ką galėtumėte panaudoti. Pagalvokite apie tai, kaip galite padėti aplinkiniams žmonėms ar atokiau nuo vandenyno. Slinkite per programas telefone - ar galite patobulinti bet kurią iš jų?
Jei manote, kad kažką radote, pasinerkite į vidų. Nelaukite, kol būsite pasiruošę, nelaukite leidimo. Mesti save į gilų galą; važiuoti aukščiausiais ir žemiausiais priekinės klasės plėtros elementais. Štai taip sukuriate ką nors, kas daro įtaką.

22 metai

Aš ir toliau tyrinėjau naujas idėjas ir technikas, dirbdamas prie projektų, kuriuose jaučiausi aistringas. Kai kurie iš jų buvo labai sunkūs, bet aš išmokau panaudoti tai, ką žinau. Priemonių tobulinimas yra kupinas perduodamų įgūdžių.

Reaguoti buvo apreiškimas. Po daugelio metų atskyrus vaizdus nuo logikos, gaivus oras įkvėpė rasti sistemą, kurioje elegantiškai integruoti HTML, duomenys ir logika. Atrodė, kad visus šiuos metus pjoviau medžius sviestiniu peiliu, o kažkas ką tik man įteikė grandininį pjūklą.

Dabar su „Android“ malonu dirbti. Buvo pasirūpinta daugybe skausmo taškų, o Kotlinai malonu rašyti. Kai kurie geriausi pasaulio protai siekia patobulinti mobiliųjų telefonų sąsajų kūrimą, naudodamiesi „React Native“, „Flutter“ ir daugeliu kitų.

Tai puikus laikas būti „end-end“ kūrėju.

Prieš porą metų sukūriau nukreipimo puslapį su užrašų eilute: Jūs esate talentingesni, nei įsivaizduojate. Linkiu, kad kas nors man praneštų, kai man buvo 12 metų, kaip aš ruošiausi atsisakyti po pirmosios nesėkmės.

Vėliau vaidinanti mokytoja man pasakė, kad talentas yra ne kas kita, o sunkaus darbo suma. Tokiu būdu man labai pasisekė, kad įvykiai paskatino mane pradėti kelionę anksti. Aš dėkinga žmonėms, kuriuos sutikau pakeliui, kurie vedė mane ir patikėjo man, besimėgaujančiai paaugle, jų verslui ir idėjoms. Tai prasidėjo kaip vienišas hobis daugelį metų, tačiau dabar turiu draugų, kurie dalijasi mano aistromis.

Jau praėjo 10 metų ir aš negaliu laukti, kas bus toliau.

Suraskite savo bendruomenę. Joks asmuo nėra sala, o joks priekinis galas nėra izoliuotas plūduriuojantis div elementas. Prisijunkite prie vietinių sąmokslų. Eik į konferencijas. Sekite savo naudojamas saugyklas. Rašykite leidiniams. Klausykite transliacijų. Slinkite į kai kuriuos twitter DM. Raskite žmonių, kurie jums pasakys: esate talentingesnis, nei įsivaizduojate.

Patiko ši istorija? Aš norėčiau susisiekti!
Pasakykite „Twitter“, „LinkedIn“ arba apsilankykite mano svetainėje.