10 stvari, ki jih morajo spletni razvijalci vedeti, da postanejo res neverjetni

Avtor: Laura McKinney
Datum Ustvarjanja: 10 April 2021
Datum Posodobitve: 14 Maj 2024
Anonim
THE SIGN | NEW VIDEO
Video.: THE SIGN | NEW VIDEO

Vsebina

Razvijalci morajo biti več kot samo gruntovski delavci, ki ustvarjajo kodo. Pričakujemo več našega digitalnega življenja in prav ti fantje ga gradijo, kaj morajo torej najboljši razvijalci vedeti? Tukaj so stvari, ki jih pri preveč razvijalcih pogrešam. To ni izčrpno, vendar prav te lastnosti razumnega kodirnika spremenijo v neverjetnega razvijalca.

Ampak to ni eno in še posebej nikoli ni zmožnost razčlenitve XML ali optimizacije kode. To je presenetljiva zbirka veščin, ki se ne učijo v knjigah o pisanju kode. So nekaj malega dodatnega.

Zakaj tak odzračevanje? Ker je razvoj pomemben, vendar so razvijalci prepogosto poslani v drug svet, ki ni vedno njihov namen. To nikoli ne deluje. Razvoj - karkoli tehničnega - vedno uspeva, ko tisti z znanjem razumejo več kot le kodo.

01. Kodiranja ne rezite več


Smo v svetu, kjer postaja kodiranje manj impresivno. Vsi gradijo spletna mesta, nekatera kodirajo, vendar vam ni treba. Ni več samo piflar tisti, ki lahko ustvarja spletna mesta, aplikacije in funkcije.

Odkar se je splet pojavil in so se ljudje lahko sami poučevali, obstajajo tudi samouki razvijalci. Toda tudi diplomanti so ogroženi. Dobivam življenjepise z ljudmi z diplomo iz računalništva, tečaji umetne inteligence, različnimi mediji in kodiranjem pod pasom, vendar še vedno nekaj manjka. Včasih veliko manjka.

Nisem prvi, ki je to rekel. „Kodiranje ne reži več“ je naslov tretjega poglavja Strastni programer, ki je skupaj s knjigami, kot so Pragmatično razmišljanje in učenje pozivajo programerje, naj se izboljšajo nad kodo; postati odzivni in povsem človeški člani ekipe.

Širina in globina

Razvijalci morajo biti boljši na dva načina: širino in globino. Razumeti morajo širino človeških interakcij v svoji ekipi in s stvarmi, ki jih gradijo. Razumeti morajo globino sistema, s katerim sodelujejo, vse do O / S.

In tega ne bi smeli prebirati samo razvijalci. Če delate z razvijalci, mislim, da bi jih morali pričakovati več. Naj skicirajo, o čem govorijo. Priskrbite jim, da s slikami, predmeti in (deluje) izrežejo ljudem, kakšen bo sistem, kakšen bo sistem za ljudi, ki ga uporabljajo.


02. Veliko opozorilo

Negativno bom govoril o razvijalcih, vendar mislim, da mi je dovoljeno, ker sem tak. Tudi zato, ker vsaj ena stvar, o kateri tukaj govorim, velja za mnoge razvijalce, ki jih srečam. Čeprav je njihovo delo odlično in poznajo svojo kodo, so časi konkurenčni. Morate imeti prednost, in to je:

  • biti bolj tehten

in

  • biti veliko bolj človeški

03. Kaj pravi internet

Googlanje za „bistvenimi veščinami spletnega razvoja“ prikaže tisto, kar bi pričakovali. Okvirno znanje, brskalnik x, CSS in JS. Našteli so okvire, ki bi jih morali poznati, platforme, za katere morate pisati, in nove trende, na katere bi morali biti pozorni.

To so naši mediji. So stvari, s katerimi gradimo, vendar niso tisto, kar daje projektu uspeh. Razvijalec lahko razume vse podrobnosti sistema, vam pove vse značilnosti API-ja in nove tehnologije CSS, a vseeno ustvari nekaj neuporabnega.

Razumeti medij

Razvijalci, tako kot vsi, morajo razumeti svoj medij - razumeti pa morajo tudi občinstvo, pa naj bodo to uporabniki, ekipa ali drugi razvijalci. Razumeti morajo, kako se njihov medij prilega svetu (z drugimi besedami, proizvodno okolje) in kakšen učinek ima (kako ga ljudje uporabljajo).

To sem videl kot "širokega in globokega" človeka. Široko, ker morate svet razumeti kot človeka, ki dela z drugimi ljudmi. Globoko, ker potrebujete temeljito tehnično znanje pod ravnijo vašega dela projekta. Ti razvijalci vašemu projektu dajo velik zagon in spremenijo tempo projekta, brez česar boste našli netehnično osebje, zasedeno v dolgočasnih podrobnostih, ki prekipevajo od tehnične ekipe.


04. Stvari, s katerimi gradimo

Pred kratkim sem zapisal seznam vsega, kar uporabljamo za izdelavo spletnih mest, upravljanje gostovanja in izvajanje stvari, tako da bi se lahko ljudje, ki se pridružijo, v prvih nekaj tednih naučili tehnologije. Kot prebrano smo jemali, da ljudje te stvari poznajo, zato bi za nov začetek nabornikov našteli vse, kar uporabljamo vsak dan.

Pričakoval sem pol ducata tehnologij, na koncu pa veliko več. Ta seznam - 'tisto, kar uporabljamo' - vključuje običajne sisteme upravljanja vsebin, programske jezike in brskalniške tehnologije, pa tudi kup orodij, ki se jih ekipa niti sama ni spomnila. Vse je bil mišični spomin. Če v ukazno vrstico vtipkamo 'git', 'phing', 'thor, nismo niti pomislili, da nekdo morda ne.

Graditi orodja; CI; git za nadzor različic so bili samoumevni, toda če pogledamo življenjepise, se ti skoraj niso pojavili. Pojavili bi se tisti trendovski (in ali je cinično, da jih dodajajo nekatere agencije ?!), vendar pogosto brez konkretnih izkušenj.

Ta orodja so pomembna za pospeševanje razvoja projektov, zato poskrbite, da imate na voljo veliko bogatejša orodja kot vaš jezik, CMS in nekaj okvirov. Potrebujete uvajanje, testiranje, CI, močan nadzor nad različicami (v skupinah - ne sami) in razumeti morate temeljne koncepte le-teh in ne le nekaj vaj.

05. Devops

Ta dodatna orodja in triki se lepo prilegajo tistemu, kar ljudje imenujejo "devops". Devops leti v dveh tradicionalnih silosih: proizvodnja, ki ohranja stvari v teku, in razvoj, ki ustvarja nove stvari (in pogosto stvari ustavi). Rezultat silosa je dva tabora z malo naklonjenosti drug do drugega.

Razvijalci brez produkcijskega znanja pogosteje proizvajajo kodo, ki ni primerna za produkcijo, z uporabo konfiguracije ali funkcij, ki še niso v produkcijskem skladu. Ker se ne zavedajo težav v produkcijskem okolju, namesto da bi jo uvedli v proizvodnjo, kodirajo za dokončanje funkcije.

Te majhne podrobnosti lahko povzročijo boleče zamude, ki jih poslabša trend pošiljanja upravljanja strežnika v tujino.

Razumevanje sklada

Devops je samo po sebi ogromno področje, ki zajema stalno uvajanje in veliko avtomatizacije. To je obsežen povzetek, toda ključna stvar, ki jo morajo razvijalci razumeti, je sklad, na katerem delujejo. Ni dovolj, da to dodelite skrbniku strežnika, razumeti morate posledice, ki jih ima platforma na vašo kodo.

Če delate na Rails, preberite kodo Rails in veste, kako Apache izvaja Ruby. Če delate v Javi, vedite o možnostih konfiguracije. Če uporabljate Perl, razumejte, kako namestiti module Perl in jih konfigurirati.

Skrivnostno delo

Seznam "kaj uporabljamo" vsebuje veliko teh stvari in dobri razvijalci skočijo na to, da bi razumeli, kako je opravljeno vse to skrivnostno delo. In ko ga enkrat dobijo, se razmestitve odvijajo hitreje, delo poteka bolj gladko in vsi so samo srečnejši.

Neprekinjeno uvajanje in s tem povezane prakse devopov postajajo tako standardne, da se vsak razvijalec ali podjetje, ki tega ne izvaja, postavlja na prehitevanje. Nekdo drug bo začel to početi in potem bodo hitrejši od vas.

Priročno orodje

Googlanje za 'devops' vam daje predstavo o orodjih, ki jih ti fantje uporabljajo. Ne gre za PHP in MySQL ali Rails. Gre za pošiljanje programske opreme in ohranjanje tveganih kosov projektov brez tveganja. Osredotočeni so na uvajanje, avtomatizacijo in čim hitrejše delovanje cevovoda od razvijalca do proizvodnega okolja.

Ugotovili boste, da vam ta način razvoja ponuja razvijalce, ki bolje sodelujejo med seboj in z drugimi oddelki in podjetji. Če sodelujejo z API-ji tretjih oseb, bodo razumeli težave, ki se bodo verjetno pojavile na drugi strani. Pri delu s skrbniki strežnikov bodo razumeli, kaj potrebujejo, in vedeli, kako so njihova spletna mesta s programsko opremo na delovnih strežnikih. Nasprotno od tega je lahko boleče ...

06. Dev bo to popravil ... morda

To iskanje "bistvenih veščin spletnega razvijalca" prinaša lep odgovor Michaela Greerja (The Onion's CTO) na Quori:

  • Lenoba: noče kar koli narediti dvakrat: napiše scenarij ali algo zanj.
  • Strahopetnost: razmišlja o preizkusu, skrbi zaradi obremenitve in vpliva kode
  • Nepremišljenost: nenehno preizkuša nove stvari, sproži ideje istega dne

Strahopetnost je lep način izražanja "pozornost do detajlov". Odpravljanje napak in testiranje je 99 odstotkov razvijalčevega življenja, ki ga nihče ni omenil, ko je zadel W3Schools ali začel računalniški tečaj 101.

Sposobnost popravljanja aplikacij zahteva odlične veščine reševanja težav, ne pa le odpravljanje napak. Včasih je rešitev za uporabnike, ki ne morejo prenesti računov, narediti stran za tiskanje in ne porabiti en dan za ustvarjanje datotek PDF. Včasih lahko povezava nadomesti teden dni razvoja, vendar se ta elegantna rešitev ne bo zgodila, če bodo razvijalci težave reševali zgolj s pisanjem veliko vrstic kode.

Testiranje je čudovita slepa točka za številne razvijalce, kljub številnim orodjem. Uporabite enotne teste, selen, obremenitve in orodja za profiliranje, kot je xhprof. Analiza iz stvari, kot je New Relic, da bo odtis vaše aplikacije majhen. In razmislite o vsem tem delu naloge razvijalca: to je vaša koda, ne pozabite, da veste, da deluje, kot je predvideno.

Odpravljanje napak

Odpravljanje napak je tudi boleča točka. Ne kako uporabiti razhroščevalnik, ampak kako odpraviti težavo - zato bi na seznam Michaela Greerja dodal:

  • Nestrpnost: agresivno ignorira nepomembne informacije, da bi našla in rešila resnično težavo

To je temelj vseh tehnik odpravljanja napak. Ignoriranje nepomembnega in iskanje smisla v ustreznem. Na žalost so mnogi nagnjeni k suženjskemu udarjanju nepomembnega ure ali dneve in težavo odpravijo tako, da isto stvar poskusijo 10-krat.

Obstaja veliko knjig (na žalost ne tiste, ki sem jo dal založniku, ne bom imenoval) o odpravljanju napak in vsak razvijalec bi jih moral prebrati. Resnično odličen razvijalec lahko odpravi težave v sistemu, ne da bi videl vrstico kode.

07. Kaj želijo uporabniki

Razumejte, kaj poskušajo narediti ljudje okoli vas. Uživajte v kodi - obožujte umetnost popolnega vstavljanja datotek CSS ali optimiziranja aplikacije za tirnice - vendar ne pozabite, da je vse to namensko.

Razvijalci morajo razumeti poslovanje, poslovanje in poslovne procese, saj jih njihove stvari pomagajo voditi. Razvijalci s tem znanjem lahko gradijo programsko opremo in aplikacije, ki pomagajo uporabnikom, vendar se pogosto zdijo nenavadno produktivni. To je morda posledica hitrega tipkanja z razsvetljavo ali neverjetnega poznavanja sklada, bolj verjetno pa je, da vedo, kaj uporabniki želijo.

Konkurenčni trg

Če se vrnem na prvotno stališče, je razvoj lažji in trg za odlične razvijalce je konkurenčnejši. Vsak razvijalec, ki bo razumel poslovne zahteve in prinesel nekaj odličnega, da jim bo ustrezal, bo imel prednost. Razumevanje trga, kupcev in zakaj se ljudje ločijo z denarjem, vse pomaga.

Razumevanje podatkov in njihovo spreminjanje skozi čas. Po mnenju razvijalca bi morali nove tehnologije prilagajati izzivom, ki jih imate danes, ali pa pričakujejo, da prihajajo. Na ta način, ko MD-ju ali stranki predlagate modno novo idejo, bo temeljila na tem, kaj stranke resnično želijo, in za to boste dobili proračun / čas. (Nasprotno pa je najslabša priča razvijalcem, ki svojo novo priljubljeno tehnologijo uporabljajo kot rešitev za vse naše težave.)

Razvijalci imajo velik nadzor - ali morajo vedeti, kaj posamezno polje v zbirki podatkov pomeni za končnega uporabnika? Če bomo spremenili podatke, kaj bodo videli uporabniki? Ali obstaja boljši način za pomoč uporabnikom? Prepogosto je mnenje skrbnikov DB, da je svet slab odsev njihove baze podatkov, ne pa da je njihova baza slaba predstavitev resničnega sveta. Svet je nered in presenetljivo poln primerov. Ukvarjajte se s tem, skrbniki DB.

08. Risanje in pisanje

Risanje je najbolj neposreden način sporočanja, kakšne stvari bodo. Razvijalci morajo biti sposobni risati svoje ideje na preprogah za tablo, papir in pivo.

Razvijalci morajo biti sposobni izdelati prototipe na papirju, natisniti posnetke zaslona in na njih črtati, da sporočijo svojo namero. Ne zaupajte razvijalcu, ki prikima, pravi, da razume in odpre svoj urejevalnik.

Neuspešno: najboljše kodiranje se začne z risanjem kot hitrim prototipom. Pogosteje ne uspejte in poskrbite, da bodo vsi razvijalci okoli vas storili enako, saj je verjetneje, da jim bo to uspelo.

09. Uživajte

Kaj pa, če morate porabiti 10 ur za reševanje problema s premikanjem povezave? Uživajte - četudi je to le izziv, kako se skozi delo prebiti.

Najslabši odnos razvijalcev (ali kogar koli drugega) je apatija do tega, kar poskuša ekipa doseči. Na žalost je to pogosto, saj se razvijalci vidijo kot zunaj tega, kar ekipa dosega. (Strastni programer zastavlja vprašanje, "kako bolj zabavno bi si lahko naredil svoje delo?" - poskusite.)
In bodite pripravljeni pokazati svoje delo, saj je nasprotno od tega: ne razširite, če ste preizkusili nekaj vadnic o Rubyju, na 'Experience of Ruby'!

Razvoj spleta in aplikacij je še vedno mlad poklic, vendar se nabor spretnosti, ki ga resnično potrebujejo razvijalci, širi. Vsi bi morali pričakovati več razvijalcev, kajti prej ko bomo vsi prišli iz grdega prostora in se vključili v ustvarjalni proces, boljši bodo rezultati.

10. Ostanite ostri

Da bom to pripeljal do lepega 10. kroga, bom dodal še zadnjo stvar. Ostanite ostri. Poiščite konkurenco. Najslabša vrsta je ena v izolaciji.

"Vedno bodi najslabši v vsaki skupini, v kateri si."

Najslabše - resnično zelo slabo - programerji, programerji, oblikovalci se učijo svojih stvari in počivajo na lovorikah. Brez srčnega spodbujevalnika je preveč enostavno upočasniti in ne da bi videli konkurenco, postane navada videti sebe nadpovprečno.

Torej, bodite najslabši, kar lahko z iskanjem boljšega. Pridružite se projektom zunaj dela, prispevajte in poiščite povratne informacije in kritike, kajti več kritik boste dobili, manj ljudi vam bo dalo v prihodnosti. Ko ugibate, kaj hočejo bolje, kot so, potem ste razvijalec nindž, ki si ga vsi želijo.

Dan Frost je tehnični direktor spletnega podjetja 3EV, uradnega partnerja AWS. Sedem let se ukvarja s CMS in razvojem spletnih aplikacij.

Je to všeč? Preberite jih!

  • Kako zgraditi aplikacijo
  • Najboljše brezplačne spletne pisave za oblikovalce
  • Odkrijte, kaj sledi za razširjeno resničnost
Vam Je Priporočeno
Deep Forger fotografije spremeni v umetniška dela
Nadalje

Deep Forger fotografije spremeni v umetniška dela

Googlov i tem DeepDream je v začetku leta povzročil nemir vojo po obno tjo po neti običajne fotografije in jih čarobno preoblikovati v nočne tablice grozljivih p ov mutantov kuščarjev. eveda nam je bi...
Video vadnica: Ustvarite zamegljenost roba v After Effects
Nadalje

Video vadnica: Ustvarite zamegljenost roba v After Effects

Če o robovi predmetov preo tri glede na ozadje v vaših projektih After Effect , vaš e tavljeni del ne bo videti reali tičen. Rešitev je v tem, da jih rahlo zameglite, zadaj in pred objektom. Če podvoj...
Napredne tehnike postavitve RWD
Nadalje

Napredne tehnike postavitve RWD

Odločili te e. prehajate e. Končali te preu meritvami m-pik, ločeno v ebino za različne naprave in nenehnimi po odobitvami za odpravljanje pokvarjene v ebine v novih napravah. Je odziven ali propade. ...