Ce trebuie să înveți pentru web. Nu trebuie să știi totul. Cum să alegi direcția corectă

Chiar dacă nu te simți confortabil cu tehnologia, poți învăța gratuit programarea web. Ne-am pregătit ghid detaliat, cum să o facă.

Găsiți un scop serios pentru studiu

Un exemplu de obiectiv serios ar fi proiect tehnic, pe care visezi să-l creezi: un prototip de aplicație, serviciu sau doar un site web personal - decideți singuri. Evitați să vă scufundați în tutoriale sau cursuri online masive cu scopul vag de a „învăța să codificați”. Având un obiectiv clar, procesul de învățare va fi productiv și îți va oferi motivația de a persista pe măsură ce lucrurile pe care le înveți devin mai dificile.

Analizați ceea ce aveți de învățat înainte de a începe

„Programare” este un termen larg, așa că, ca începător, ar trebui să îl limitați la dezvoltarea web. Înainte de a începe, aruncați o privire la infografic:

Aici puteți vedea ce cale trebuie să urmați pentru a deveni un dezvoltator full-stack și care ramuri duc la o specializare mai restrânsă.

Alegeți JavaScript, Python sau Ruby ca primă limbă

Nu există o primă limbă perfectă, dar acestea trei sunt utilizate în mod obișnuit în dezvoltarea web și au promisiuni pentru viitor. Iată trei puncte de plecare bune pentru a învăța fiecare dintre aceste limbi:

  • JavaScript este sexy (JavaScript)
  • Tutorial Ruby on Rails de Michael Hartl (Ruby on Rails)

Creați un curriculum, utilizați mai multe resurse de învățare simultan

Există o cantitate mare resurse online de calitate pentru dezvoltarea învățării, dar este imposibil să le folosești pe toate. Prin urmare, decideți ce curriculum vi se potrivește cel mai bine pentru o anumită resursă și utilizați-l. Vă rugăm să rețineți că nu există un singur site care să vă învețe totul în interior și în exterior: ar trebui să combinați diferite site-uri în planul dvs. și să studiați unele lucruri în paralel. Iată câteva resurse deosebit de utile:

  • Tabără de cod gratuit (JavaScript)
  • Bento.io (Python/Flask) sau Lifehacker (Python/Django)

Optimizați-vă învățarea cu tehnici psihologice

Cercetarea proceselor de învățare a produs multe metode de predare care sunt destul de ușor de urmat. Folosiți-le și adaptați-le pentru a rezolva probleme dificile, a înțelege concepte dificile, a stăpâni materialul și a combate amânarea.

Iată câteva practici utile:

- Folosiți atât modurile de gândire concentrată, cât și cele difuze
— Împărtășiți cunoștințele acumulate
— Acceptați eșecurile cu calm și învățați din ele
- Folosiți metafore și analogii

Mai jos sunt tehnici pentru o mai bună asimilare a materialului:

  • Amintiți-vă în memorie în loc să recitiți
  • Utilizați repetarea la distanță
  • Alterna Tipuri variate practicant
  • Memorați cuvinte cheie și concepte care ajută la rezolvarea problemelor în loc să memorați sintaxa

Câteva sfaturi pentru a evita amânarea:

  • Găsește-ți un prieten cu care să studiezi
  • Concentrați-vă pe proces, nu pe rezultat
  • Încercați Tehnica Pomodoro
  • Stabiliți obiective regulate

Învață programarea web prin practică

Învățarea programării necesită multă practică. Vizionarea videoclipurilor și rezolvarea testelor nu va aduce prea multe beneficii. Ar trebui să vă petreceți cea mai mare parte a timpului creând proiecte. Iată câteva locuri pentru a găsi inspirație și idei pentru propriile proiecte:

  • De la zero la erou frontal (partea I și partea a II-a)

Și încă câteva site-uri cu exemple de sarcini și probleme pe care un dezvoltator trebuie să le rezolve.

Mulți tineri vor să se conecteze viitoare profesie cu dezvoltarea site-ului web. Desigur, nu toată lumea își dorește să fie programator; unii dintre ei sunt destul de mulțumiți de design web.

Învățarea acestei profesii de la zero nu este o sarcină ușoară, pentru că pe lângă abilitățile de muncă, trebuie să fii persoană creativă, măcar să înțeleagă puțin cod (cunoaștere CSS și), să poată comunica cu clientul în aceeași limbă etc.

Înainte de a începe să vă familiarizați cu elementele de bază ale profesiei, Apar o serie de întrebări și trebuie să cauți singur răspunsuri la ele. Acest lucru nu este ușor de făcut din cauza lipsei de experiență; materialele de pe Internet nu devin întotdeauna utile și, uneori, dimpotrivă, adaugă doar întrebări noi și nu toată lumea are un prieten experimentat.

Să ne dăm seama de unde să începem învățarea designului web, de ce cunoștințe vei avea nevoie pentru creativitate, de unde și în ce ordine să-l obții, cât timp să-l aloci orele practice, cum să obțineți prima experiență și comanda... și cu o mulțime de întrebări legate.

Continut:

Pasul unu - află de ce vrei să faci asta

Pe de o parte, aceasta este o întrebare simplă, deoarece majoritatea oamenilor doresc să facă design web din cauza plății bune.

Construirea de site-uri web este o afacere foarte profitabilă, dar un dezvoltator experimentat și, cel mai important, inteligent nu este întotdeauna ușor de găsit în timpul zilei.

Deși există multe cazuri în care o persoană dorește să o facă și fără cunoștințe despre crearea motorului grafic al unui site web, programarea acestuia nu este ușoară.

Iar al treilea motiv comun pentru care oamenii devin interesați de web design este pofta de Arte Frumoase.

ȘI aceasta zona poate servi ca o modalitate excelentă de a vă pune în practică talentele și de a obține beneficii financiare din aceasta.

Important! Oricare ar fi scopul în care vă familiarizați cu designul web, amintiți-vă că atât învățarea, cât și munca ar trebui să fie interesante, desfășurate cu dorință și să aducă plăcere, dar să nu se transforme într-o rutină.

Datorită faptului că un artist grafic este profesie tânără, definiția sa exactă nu există încă, iar mulți experți interpretează conceptul în felul lor.

Dacă mai devreme această persoană trebuia să facă paginile frumoase și plăcute ochiului, acum este necesar să aibă abilități de codificare, să înțeleagă marketingul și să înțeleagă promovarea SEO.

Fără soluții unice idei originale iar o abordare creativă individuală nu poate rezolva problema.

Proiectant de site-uri este un artist tehnic care lucrează la optimizarea aspectului și încărcării site-urilor web și aplicațiilor web.

Sarcinile acestor persoane includ:

  • lucra la structura logica pagini– pentru ca totul să fie clar pentru orice utilizator începător, el poate găsi ceea ce caută pentru prima dată, totul legături importante trebuie să fie vizibil;
  • dezvoltarea celui mai rațional mod de a prezenta conținutul– capacitatea de a interesa vizitatorul, de a-l face să rămână mai mult timp pe resursă, de a răsfoi paginile site-ului;
  • design grafic– unde ce elemente vor fi amplasate, cum vor fi butoanele și inscripțiile după un clic, cum se realizează interacțiunea cu clientul, cum și ce se va schimba în timpul activității vizitatorului, modificări de zoom etc.

Așa că am aflat pe scurt de ce oamenii doresc să facă partea grafică a site-urilor web.

Pentru viitorii programatori, este suficient să vă familiarizați cu elementele de bază design vizual resurse web, cel puțin stăpânește superficial editorii grafici și aspectul șablonului.

Cei care sunt dornici să-și dedice mulți ani din viață creării unei interfețe pentru paginile de internet și obținerii profesiei adecvate vor trebui mai întâi să muncească din greu, acest articol le este dedicat.

Etapa a doua – alegeți direcția de web design în care doriți să încercați

Tehnologiile de internet se dezvoltă rapid și, odată cu acestea, cerințele pentru dezvoltatori cresc. La început, o pagină estetică frumoasă și strălucitoare a fost sarcina artistului.

În zilele noastre se disting până la șapte direcții în designul lor, iar acestea sunt doar cele principale.

Greu

Un tip de design de pagină la fel de vechi precum construirea site-ului propriu-zis, care nu necesită efort, este perfect pentru începători.

Concluzia este că toate elementele de resurse sunt plasate în celule de tabel virtuale cu dimensiuni fixe, care sunt stabilite de designer.

O astfel de pagină va arăta absolut la fel pe toate dispozitivele, indiferent de platformă și dimensiunea ecranului.

Și asta nu înseamnă că o astfel de resursă este înapoi, deoarece un dezvoltator cu experiență care folosește un design strict poate crea un site web frumos proiectat, iar ajustarea ceva în acest caz durează câteva minute.

Flexibil

De asemenea, design tabelar, dar lățimea celulelor masă virtuală nu este specificat strict, dar depinde de dimensiunea ecranului (raport aspect, rezoluție). Obiectele vor încerca să umple întregul spațiu al celulei, modificându-i dimensiunea. caracteristica principală o astfel de decizie– creșterea confortului percepției vizuale a datelor datorită modificării dinamice a parametrilor de afișare. Pe astfel de pagini nu există spații goale fără conținut.

Provocările acestui design sunt:

  • nu există nicio garanție că pe vechiul „pătrat” și pe ecran lat uriaș afișează resursa se va afișa corect, fără a întinde sau a micșora conținutul;
  • Nu toate browserele funcționează bine cu procesarea așa-numitelor celule flexibile și browsere de internet create pe diverse motoare, fiecare o face in felul lui;
  • este nevoie de mult timp pentru a se adapta și a duce proiectul la perfecțiune.

Combinate

Combinând cele două metode anterioare: dacă dimensiunile monitorului (raportul său de aspect) diferă foarte mult de parametrii afișajului care a fost folosit pentru crearea site-ului, se folosește un design flexibil, în caz contrar se folosesc ambele celule, în funcție de disponibilitatea spațiului liber în ele.

Text

Folosit la proiectarea resurselor și site-urilor web de o pagină, care reprezintă întreprinderile mici și companiile din rețeaua digitală globală. O caracteristică a acestui design este absența virtuală elemente grafice, care are un efect pozitiv asupra vitezei de încărcare a paginii. Jocul cu fonturi, culorile textului și o plasare bună a textului vă va face proiectul atractiv.

Imprimare

Cel mai la cerere în dezvoltarea resurselor corporative și de marketing, unde conținutul emoțional este pe primul loc. Designerul trebuie să fie cât mai creativ posibil și să aleagă creativ imagini pixeli pentru a proiecta pagina.

Dezavantaj design de imprimare este o scădere a vitezei de încărcare a site-ului datorită prezenței, de regulă, a unor cantități abundente imagini raster, și chiar în Rezoluție înaltă.

Interfață

Majoritatea meseriașilor cu experiență apelează la el. Sarcina lor este de a satisface toate solicitările utilizatorilor, de obicei prin minimizarea codul programului, optimizarea elementelor grafice și crearea unui convenabil sistem de navigare cu meniul situat în partea de sus a paginii. Astfel de resurse se încarcă rapid și sunt ușor de lucrat atât de pe computer, cât și de pe dispozitive mobile

.

Dinamic

Cel mai intensiv forță de muncă opțiuni complexe proiectarea paginilor web. Acest tip de design constă în plasarea lui pe pagină continut dinamic(animație, scenarii, elemente în mișcare și schimbare, videoclipuri cu ecran lat).

Pentru a-ți implementa planurile, va trebui să muncești din greu, iar pentru ca vizitatorul să fie mulțumit și totul să funcționeze așa cum s-a intenționat, ai nevoie nu doar de stăpânirea editorilor grafici, ci și de abilități de optimizare; cine vrea să aștepte mult timp pentru apariția unui buton tridimensional colorat. Dar o resursă bine concepută atrage întotdeauna prin frumusețea, originalitatea și soluțiile artistice, indiferent de conținut.

Pasul trei - aflați ce programe de web design sunt în tendințe în acest moment

Înainte de a descărca cărți despre asta sau cutare editor grafic, trebuie să înțelegeți clar elementele care sunt folosite când design grafic site-uri: forme, culori, forme, joc de lumini și umbre, linii - asta elemente de baza, din care este creată întreaga compoziție.

Oricum, cunoașterea tabelelor în cascadă și marcare hipertext nevoie aproape în primul rând.

Designerul va avea nevoie de cunoștințe în domeniu animatie pe calculator, popular, SEO și poate modelare 3D.

Atenţie! Pe lângă faptul că este dificil de învățat, aplicația va trebui și achiziționată pentru utilizare completă, deși în scopuri de instruire puteți trișa ocolind protecția programului.

Acesta din urmă dobândește funcționalități care sunt solicitate în zeci de domenii, iar băieții acordă puțină atenție creșterii capacităților de web design.

Un alt lucru este Sketch - conceput pentru desen interfețe grafice de la zero, nu are un singur element suplimentar, este mai ușor de învățat și depășește cu ușurință Photoshop în ceea ce privește indicatorii cheie.

Asigurați-vă că îl alegeți pe cel mai convenabil care acceptă sintaxa și evidențierea: , Sublime, Axure RP.

Etapa a patra - studiați cărți utile pentru designerii web începători

Partea bună a internetului este că vă permite să achiziționați gratuit cărți pe care acum zece ani ar fi trebuit să le cumpărați sau să căutați oameni cu gânduri asemănătoare.

Odată cu popularizarea profesiei de designer web, numărul cărților pe această temă a crescut. O carte fără mentor sau profesor - Cel mai bun mod Dobândiți cunoștințe.

Învățarea designului web de la zero ar trebui să înceapă cu literatura de specialitate unde concepte de bază, teorie și mici sarcini practice:

1 Ethan Marcotte „Responsive Web Design” – ghid practic pentru web designeri, după ce stăpânește pe care un începător va evita sute de greșeli tipice pentru începători și va învăța despre fezabilitatea creării versiune mobila site-ul. De asemenea, descrie modul de aranjare a paginilor care vor fi afișate în mod egal pe toate dispozitivele.

2 Jakob Nielsen „Web Design” - cartea conține o mulțime de ghiduri despre crearea de interfețe eficiente, locația corectă elemente de navigare și umplerea resursei cu conținut.

3 Yu. Syrykh „Modern Web Design” este o carte de referință care descrie complexitatea lucrului la interfață, începând de la etapa de selectare a conținutului în funcție de subiectul resursei și terminând cu testarea și depanarea aspectul terminat. Conține multe informații nu numai despre desenarea interfeței, ci și despre optimizarea și conținutul acesteia.

Backend

Backend-ul este partea de server a aplicației, care nu este vizibilă pentru utilizatori. Aceasta include: autorizarea, stocarea și prelucrarea datelor, buletine informative prin e-mail etc. Să spunem doar că backend-ul este ceea ce este sub capotă.

Există multe limbaje de programare aici, iată cele mai comune:

PHP
Asp net
Java
Piton
Rubin
Nodul js

Vă sfătuiesc să alegeți doar unul, deoarece cu cerințele actuale pentru programatori, va dura cel puțin câțiva ani pentru a ajunge la nivelul mediu. Atunci când alegeți, puteți face cunoștință cu posturile vacante din orașul dvs., puteți vedea care sunt mai potrivite, unde plătesc mai mult și în funcție de ce limbă au nevoie și le selectați.

Serverul este utilizat în mare măsură pentru lucrul cu date. Prin urmare, va trebui să învățați cel puțin una dintre bazele de date relaționale:

Oracol
MSSQL
MYSQL
Postgres

În ceea ce privește complexitatea, aceasta este aproximativ același lucru cu stăpânirea unui limbaj de programare. În toate bazele de date enumerate există o parte care este aceeași peste tot - așa-numitul sql (limbaj de interogare), precum și un limbaj procedural care este diferit în fiecare bază de date. Deoarece sql este în continuare același și este baza pentru tot ceea ce are legătură cu prelucrarea datelor, trecerea la o altă bază de date nu este o astfel de problemă. Prin urmare, puteți alege oricare pentru început, dar chiar și aici aș merge după principiul analizei posturilor vacante.

Personal, dau un plus studierii backend-ului, deoarece abilitățile de aici sunt mai statice și odată ce înveți ceva, poți lucra la el pentru o lungă perioadă de timp.

În față

Frontend este partea care rulează în browser cu care utilizatorul interacționează direct. Acestea sunt interfețe dinamice, meniuri, evenimente bazate pe acțiunea utilizatorului, schimb de date cu partea de server, în general, ceea ce se întâmplă pe client.

Limbajul de programare aici este javascript. Pe de o parte, acesta este un plus cert, deoarece după ce l-ați studiat, toate companiile din orașul dvs. care sunt angajate în dezvoltarea web vă vor fi deschise, iar acum multe fac acest lucru. Pe de altă parte, există nuanțe.

JavaScript are în prezent două standarde care sunt utilizate pe scară largă: ECMAScript 5 și ECMAScript 6. Diferența dintre ele este că ECMAScript 5 nu are un OPP cu drepturi depline. ECMAScript 6 o are, dar din moment ce acest standard a apărut relativ recent, majoritatea aplicațiilor sunt deja scrise în ECMAScript 5, drept urmare va fi necesară stăpânirea ambelor standarde și, ca urmare, a două abordări diferite la dezvoltare.

Un alt punct care trebuie luat în considerare este că același cod scris în javascript poate diferit antrenează-te în browsere diferiteși pe diferite sisteme de operare. Cu cerințele actuale pentru aplicații, va fi necesar să scrieți așa-numitul cod cross-browser, adică un cod a cărui execuție va da același rezultat peste tot. Nu există un manual specific pentru scrierea unui astfel de cod; în acest caz, forumurile și ok Google vă pot ajuta.

Problemele problematice pe care le-am descris au fost rezolvate în cadre js moderne (de exemplu, Angular și React). Dar în proiectele care sunt scrise fără a utiliza cadre, aceste probleme rămân.

Pentru mine personal, un dezavantaj și mai mare este că tendințele se dezvoltă foarte repede aici. Versiunile cadrelor sunt actualizate în mod constant, sunt lansate biblioteci noi și toată lumea dorește imediat să înceapă să le folosească. În general, nu poți ține pasul cu comunitatea.

Stivă completă

Deja din nume ar trebui să fie clar că acest tip dezvoltatorii dezvoltă ambele părți. Nu recomand să încercați să deveniți un astfel de dezvoltator, deoarece nu este suficient să învățați toate creierele în orice caz și majoritatea companiilor au luat deja calea diviziunii muncii. Cu toate acestea, stiva completă este locul în care trebuie să începeți pentru a face un pas către backend sau frontend. După ce ai dezvoltat câteva aplicații mici, vei înțelege diferența dintre ele (și chiar există una) și vei putea decide care parte este mai aproape de tine.

La un moment dat, ca să mă hotăresc, am citit cartea „Crearea site-urilor web dinamice”, autor „Robin Nixon”. Cartea este mică, doar 500 de pagini, dar datorită ei mi-am făcut o idee generală despre dezvoltarea web și am făcut cu îndrăzneală o alegere către backend, ceea ce încă nu regret. Am dat această carte ca exemplu, poți lua orice altă carte, nu contează.

Dezvoltator, profesor și autor al cursurilor de programare Bill Soror publicate pe blogul FreeCodeCamp instrucțiuni detaliate pentru cei care doresc să învețe dezvoltarea web de la zero. La fiecare punct, Soror oferă link-uri către materiale de instruire și vorbește despre motivul pentru care este nevoie de un anumit limbaj de programare sau cadru.

Potrivit lui Soror, el scrie cod de 20 de ani. El și-a împărțit instrucțiunile în mai multe secțiuni bazate pe obiectivele de învățare - pentru învățarea de bază a limbajelor de programare și dobândirea de cunoștințe aprofundate în domenii individuale de dezvoltare.

„Am decis să învăț programarea. Îmi place internetul, dar nu știu de unde să încep"

Ca în orice altă disciplină, învățarea programarii trebuie să înceapă cu elementele de bază ale tuturor domeniilor dezvoltării web – adesea numite „full stack”. „Acest lucru vă va ajuta să determinați domeniul în care sunteți cel mai interesat să studiați și vă va oferi cunoștințele de bază pentru a începe”, scrie Soror.

Bazele HTML

Dezvoltatorul sfătuiește să începeți cu studiul Bazele HTML. „Începând de aici, vei stăpâni dezvoltarea interfețelor utilizator și interacțiunea cu acestea. În plus, vei vedea imediat rezultatul codului tău”, notează profesorul.

„Cunosc elementele de bază ale HTML”

Bazele JavaScript

„JavaScript este limbajul web, totul browsere populare(Chrome, Firefox, Safari, IE) au suport JavaScript încorporat. Fiecare site sau aplicație web pe care o utilizați probabil are un numar mare de Cod JavaScript în interior. În plus: limbajul devine acum popular pe alte platforme - cum ar fi servere, desktop-uri și dispozitive.”

„Cunosc elementele de bază ale JavaScript și HTML”

CSS

În continuare, Soror sugerează să treceți la învățarea CSS pentru personalizare aspect elemente HTML. Pentru a face acest lucru, puteți folosi tutorialul gratuit al Mozilla pentru a preda noțiunile de bază și site-ul CSS-Tricks pentru a rezolva problemele de bază.

Backend

„Până în acest moment, ați dobândit cunoștințele pentru așa-numita „dezvoltare front-end”. Acum puteți trece la „backend”. Acesta este codul care rulează pe server”, scrie Soror. - Există multe limbaje de backend, dar din moment ce sunteți deja familiarizat cu JavaScript, vă recomand să învățați Node JS (platforma software - nota editorului). Pe lângă Node JS, puteți învăța Express și Mongo DB.”

Express este o bibliotecă care facilitează interacțiunea Node JS cu un server web. Mongo DB este o bază de date pentru stocarea și preluarea informațiilor.

jQuery

cadre JS

Framework-urile facilitează lucrul cu un limbaj de dezvoltare și rezolvă probleme majore folosind tehnologie gata. Există pe piață un număr foarte mare de cadre din cauza popularității excesive a JavaScript-ului, scrie Soror.

Reacționează JS

React a fost dezvoltat de Facebook și rulează pe arhitectura Flux. Aceasta este o bibliotecă JavaScript pentru crearea de interfețe. React a depășit recent o altă bibliotecă populară, Angular, în popularitate, așa că este mai bine să începeți să învățați cadrele cu ea, notează Soror. Curs gratuit pentru a învăța React.

unghiulară și

Angular - dezvoltat de Google. Cadrul este încă popular printre dezvoltatori. După anunțul Angular, Google a decis să rescrie complet cadrul și a lansat Angular 2, așa că au existat două dezvoltări complet diferite cu același nume.

Cadrul Angular 1 poate fi învățat gratuit la Code School. Puteți face cunoștință cu Angular 2 folosind videoclipuri gratuite.

Ember JS

Cadrul nu este la fel de puternic ca cel dezvoltat de Google și Facebook, dar câștigă popularitate în rândul dezvoltatorilor. Documentație oficială Ember JS.

„Vreau să devin un dezvoltator backend”

„Există multe limbi în dezvoltarea backend, fiecare cu propriile sale avantaje și dezavantaje”, scrie profesorul. El oferă, de asemenea, un grafic al popularității lor în ultimii 10 ani:


Limbajele de programare indicate printr-un cadru verde sunt acelea asupra cărora ar trebui să vă concentrați atenția, spune Soror.

Java

Un limbaj de programare foarte popular dezvoltat de Sun Microsystems (deținut acum de Oracle). Java este folosit pentru a dezvolta aplicații Android. Poate fi folosit și pentru a crea aplicații desktop și web.

Deoarece acesta este un limbaj popular printre dezvoltatori, puteți găsi un număr mare de instrucțiuni pentru acesta pe Internet. Soror recomandă să începeți cu cursul pentru începători.

C#

Limbajul dezvoltat de către Microsoft ca alternativă la Java. Ca și Java, C# este un limbaj de programare orientat pe obiecte și poate fi folosit nu numai pentru a dezvolta aplicații web, ci și programe desktop. sisteme de operare. Curs gratuit despre învățarea C# din Microsoft Virtual Academie.

Piton

Nu există un brand mare în spatele Python. Cu toate acestea, acest limbaj permite o dezvoltare rapidă. Un site cu lecții gratuite pentru a învăța Python.

Rubin

Există mulți fani Ruby printre dezvoltatori - aceștia fac publicitate și admiră în mod activ acest limbaj, scrie Soror. Cu toate acestea, popularitatea sa crește într-un ritm lent. În esență, limbajul este un amestec de programare funcțională și imperativă.

Cel mai bun loc pentru a învăța Ruby este RubyMonk, spune dezvoltatorul.

Practică

Înainte de execuție probleme practice Soror recomandă crearea imediată a unui profil pe GitHub - un depozit online pentru stocarea, gestionarea și publicarea codului. Puteți începe să vă familiarizați cu platforma cu instrucțiunile „Hello World” sau un curs interactiv.

Puteți începe să vă dezvoltați prin crearea propriului blog (instrucțiuni pentru programarea unui blog în React și Node) sau a unui calendar (instrucțiuni pentru programarea unui calendar în C# și .Net).

Lecțiile gratuite pot fi găsite și pe Free Code Camp:

  • Temporizator Pomodoro (frontend).
  • Club de tranzacționare (full stack).

Întâlnim foarte des oameni care ar dori să învețe dezvoltarea web și să facă o carieră în acest domeniu, dar pur și simplu nu știu de unde să înceapă. Care ar trebui să fie primul pas? Ce sa studiezi? Care sunt perspectivele? Acestea și multe alte întrebări îi afectează pe mulți care doresc să ia calea unui dezvoltator web.

Am colectat toate informațiile din acest articol pentru a vă oferi o înțelegere de bază despre programarea web, design, marketing și multe altele. Citiți acest articol până la sfârșit și puteți decide dacă doriți să deveniți specialist în dezvoltare de proiecte web. Dacă după citire, dorința îți este întărită în sfârșit, va trebui să menții în mod activ un spirit motivațional pe tot parcursul drumului către o nouă carieră.

Să începem articolul cu punctul de motivație. Ca în orice altă activitate, motivația este factorul cheie, care în cele din urmă te va face un specialist de top. În fazele inițiale, motivația pentru a se alătura în rândurile dezvoltării web poate fi simplă. În primul rând, există dorința de a lucra în acest domeniu, apoi există contact vizual cu lucrarea dezvoltatori buni, după aceea se naște în interiorul tău ceva care te motivează să cauți articole similare și să faci primii pași.

Să fim sinceri cu tine: motivația de la început poate dispărea foarte repede și s-ar putea să nu te energizeze la infinit. Cum să extinzi puterea motivației? Știi, există aceste bucăți de hârtie verzi, vin chiar și în alte culori, cred că se numesc bani. Deci, banii sunt consumabile, care ne ajută să dobândim cu ușurință lucrurile de care avem nevoie și să facem ceea ce este aproape imposibil fără ele. De ce spun asta? În plus, banii pot fi o motivație excelentă.

Dar de unde vin banii dacă nici măcar nu te-ai hotărât ce vei face? Motivația inițială ar trebui să fie suficientă pentru tine în timp ce faci primii pași. Pe acest val va fi deja posibil să vinzi ceva. Probabil crezi că asta se va întâmpla peste 2-3 ani, sau poate chiar peste 5 ani? Voi fi bucuros să vă spulber îndoielile. Veți putea vinde ceva în 2-3 luni. Și în 2-3 ani, vânzările vor crește semnificativ, la fel și profitul tău. Veți putea petrece aceeași perioadă de timp pe produse mai scumpe. Acum puteți face munca eficient, rapid și profesionist, datorită căruia rezultatul nu va întârzia să apară (inclusiv sub formă de facturi plăcut de clare).

Poate ești în acest moment Crezi că există deja destul de mulți dezvoltatori buni în lume, de ce ar cumpăra cineva ceva de la un începător? Vedeți, există o a doua parte - clientul. Și la fel cum dezvoltatorii sunt împărțiți în începători, specialiști și profesioniști, la fel clienții fie sunt pe piață de mult timp, fie sunt la începutul călătoriei lor profesionale. În consecință, clienții au nevoi diferite.

Să luăm, de exemplu, un client căruia îi place să pescuiască. Lucrează ca inginer de comunicații și câștigă salariu mediu. Și așa s-a hotărât să-și facă un blog despre pescuit. În multe cazuri, astfel de clienți au un buget limitat și calitatea dezvoltării nu este pe primul loc pentru ei. Desigur, nu va țipa despre asta, deoarece își va plăti banii câștigați. Și iată site-ul pe care l-ați creat, care va fi HTML pur sau pe unele motor liber, poate să-și satisfacă nevoile. Aici primești primii 50 USD (condiționat) și +50 de puncte sunt adăugate la motivația ta. Acest lucru va fi suficient pentru a continua antrenamentul și pentru a dezvolta următoarea comandă.

Acest punct ar putea fi primul, dar pe baza experienței noastre, locul lui este aici. Așadar, spiritul tău motivațional te-a determinat să cauți o specializare. Totul aici este foarte, foarte simplu. În acest moment, ar trebui să uiți complet de bani, de tendințe, de prietenul tău Max, care câștigă „wow, ce bani” făcând site-uri web. Trebuie să-ți amintești tot ce ți-a plăcut în copilărie, la școală, anul trecut, ieri. Analizând toate acestea, poți decide dacă vrei cu adevărat să fii web designer, programator web sau dacă îți place marketingul, cu ajutorul căruia ai vrea să ajuți proiectele să devină mai de succes.

ți-o dau pe a mea exemplu personal. În copilăria mea timpurie (4-6 ani) îmi plăcea să iau un fier de lipit și să mânuiesc cu plăci de circuite imprimate, joacă-te cu LED-uri și baterii. Pe la 6-10 ani am avut computer Atari. A venit cu un magnetofon, iar jocurile au fost înregistrate pe o casetă magnetică. Da, cu siguranță am jucat jocuri pe 8 biți! Dar aveam un interes decent pentru limbajul Basic, care era disponibil în acest Atari și puteai chiar să scrii programe care ulterior afișau rezultatul pe ecran. Apoi nici nu știam că asta era programare și că acesta era limbajul de bază. Am copiat codul din carte și m-am uitat la vizualizările de pe ecran. Apoi am început să experimentez. Schimbați numerele, comenzile și obțineți imagini și sunete noi. Acest lucru m-a făcut foarte fericit. Apoi, când eram la școală, am dat de filmul Matrix. L-am vizionat de multe, de multe ori și încă este unul dintre preferatele mele. cele mai bune filme, înaintea timpului lor. La școală îmi plăceau foarte mult algebra și geometria. Și, de asemenea, aveam un fel de „anti-manual” în mine. Ni s-au dat lecții – am predat. În continuare, a trebuit să scriu un test folosind materialele primite. Știam cum să rezolv problema pe baza datelor pe care le învățasem, dar mereu am încercat să „inventez” ceva și să rezolv problema într-un fel în jurul ei. Am început să mă gândesc la așa ceva când aveam 12 ani.Întotdeauna mi-am dorit să fac lucrurile diferit de ceea ce am fost învățați, dar până la urmă aveam să iau o decizie mai rapid, mai precis și diferit decât toți ceilalți.


Acum este timpul să punem întrebarea: „Cine trebuia să devin?” Da, un programator, dar cel mai probabil un arhitect pachete software. Încercați abordarea mea și vă puteți da seama ce vă place cu adevărat pentru mult, mult timp. Nimeni nu mi-a spus toate astea. Și cum aș deveni programator fără să mă gândesc măcar la toate astea. Dar dacă aș fi gândit inițial în acest fel, aș fi putut decide mai devreme. Apropo, am început să fac primii pași în programare la vârsta de 13 ani. limbajul Pascal(fără a socoti Atari în copilărie). Dar sunt sigur că s-a putut începe la 10 ani!

Deci, trebuie doar să te decizi într-una din cele trei domenii: designer de proiecte web, programator web sau marketer. Dacă vrei să fii programator, va trebui să te decizi prima limbă pe care o vei învăța. În celelalte două cazuri, alegerea inițială a ceva mai înalt specializat nu are sens.

Vreau să devin programator. Ce limbă ar trebui să aleg?

Astăzi există un număr mare de limbaje de programare pentru site-uri web. Mai jos oferim o listă de limbaje de programare populare și descriem pe scurt ce este folosit pentru ce și pentru ce sarcini.

HTML + CSS

Cu siguranță ar trebui să începi călătoria în dezvoltarea web prin studii Marcaj HTML. Și nu contează deloc dacă ești programator sau designer. Cunoașterea HTML este ca și cum ai cunoaște elementele de bază ale modului în care funcționează un computer și cum funcționează intern. Fără cunoștințe de HTML nu vei putea un web bun un programator sau un web designer. Pentru a-l stăpâni în mod fundamental, va fi nevoie de maximum câteva luni de diligență și efort.

Puteți începe cu aceste două tutoriale pentru o înțelegere de bază:
. Tutorial HTML;
. Tutorial CSS.

Rețineți că există multe pe internet informatii disponibile. Și primele 2-3 rezultate pe Google Cuvinte cheie "Tutorial HTML" va fi destul de relevant și relevant. Inițial, trebuie să vă pregătiți pentru a găsi răspunsuri pe cont propriu.


Al doilea pas este să studiezi acest limbaj de programare script. Vă va ajuta să vă faceți site-urile interactive. Cu ajutorul acestuia, puteți realiza aplicații scriptate care vor rula în browserul clientului. De exemplu: calculatoare, glisoare, animații, grafice etc. Un complex de Java Script, HTML, CSS va fi suficient pentru primele vânzări, de exemplu, aspectul site-ului web.

PHP

Apoi trecem la limbi mai serioase. Să ne uităm la PHP. Este unul dintre liderii în rândul limbilor pentru crearea de site-uri web dinamice. Dacă doriți să dezvoltați site-uri web, vă recomandăm să vă începeți călătoria aici. Puteți învăța oricând alte limbi, dar PHP vă va ajuta să le stăpâniți rapid Noțiuni de bazăși începe să-ți vinzi creația. La învăţarea PHP Veți începe deja să înțelegeți pe deplin esența construirii site-ului web.

Java

Dezvoltat de Sun Microsystems. Java este un limbaj de programare orientat pe obiecte bazat pe clasă. Acesta este un limbaj de programare foarte popular, un standard pentru companii software, conținut web, jocuri și aplicatii mobile. Precum și un limbaj de programare pentru OS Android. Java este proiectat în așa fel încât să poată rula pe mai multe platforme software. Prin urmare, un program scris pe Mac OS X poate funcționa și pe Windows.

Rubin

Scopul Ruby era să creeze un limbaj de programare care să fie simplu și ușor de codificat. A fost conceput ca un limbaj de scripting pentru crearea de site-uri web și aplicații mobile și este dinamic și orientat pe obiecte. Ruby a creat Ruby On Rails, care este folosit de multe site-uri web, inclusiv Groupon și GitHub. Și, de asemenea, mulți consideră Ruby un bun punct de plecare pentru dezvoltatorii începători.

C++

C++ este un limbaj de programare orientat pe obiecte de nivel intermediar, dezvoltat inițial pentru a îmbunătăți limbajul C. Multe programe populare, cum ar fi Firefox, Winamp și Adobe. Este folosit pentru a dezvolta software de sistem, software de aplicație, aplicații de înaltă performanță pentru server și client și pentru a crea jocuri video. Este grozav să îl cunoști, dar nu ar trebui să te bazezi pe el ca limbaj pentru crearea de site-uri web.


Python este un limbaj de scripting nivel inalt pentru site-uri web și aplicații mobile pe partea serverului. Este considerată o limbă ușor de învățat și ușor de citit. Dezvoltatorii pot folosi mai puține linii de cod pentru a atinge aceleași obiective în alte limbaje de programare. Multe produse complexe sunt construite pe Python: Instagram, Django, Rdio. Python este, de asemenea, utilizat activ în produse Google, Yahoo și NASA. Pentru a crea proiecte cu încărcare mare, Python este una dintre limbile pe care le puteți folosi. întrebare decisivăîncărcături. Vă recomandăm să învățați Python ca a doua sau a treia limbă.

Este important să înțelegeți
În orice etapă de învățare, puteți începe treptat să vă considerați programator, dar considerați-vă cel mai bun programator nu merita niciodata. Întotdeauna va fi ceva ce nu știi și mereu va fi ceva de învățat. A fi programator nu înseamnă a dobândi o anumită experiență și a te opri acolo. Instrumentele se extind în fiecare zi. Trebuie să fii constant în această dinamică, să te angajezi constant în auto-dezvoltare. Poți participa la seminarii în același timp, poți asculta rapoarte, dar baza principală pe care o vei primi va fi doar dorința ta de auto-dezvoltare.

A fi un programator de succes înseamnă să găsești singur răspunsuri la întrebările tale. Poate fi dificil la început. Dar cu timpul, vei începe să înțelegi că nimic nu este imposibil și, datorită internetului, îți sunt deschise numeroase uși. Trebuie doar să găsești ușa potrivită de fiecare dată. Nu vă sfiați să faceți greșeli; este important să vă acceptați greșelile și să le minimizați în viitor.

Nu ai încredere niciodată în cursuri precum „Cum să devii programator în 24 de ore”. Trebuie să înțelegi că poți obține rezultate înalte doar prin muncă asiduă, practică și doar în timp. În medie, se crede că pentru a deveni un programator bun, trebuie să petreceți cel puțin 10.000 de ore de programare. Și asta este o medie de 5 ani, având în vedere că vei petrece 4 ore pe zi. Da, exact 4, nu 8, deoarece 8 ore de programare pură vor fi o sarcină decentă pentru creier, care interferează cu concentrarea și stăpânirea de înaltă calitate a materialului.


Scrierea codului în sine este doar o parte a programării. Trebuie să ai autocontrol, să ai o dorință constantă de auto-dezvoltare și să fii cât mai disciplinat și perseverent posibil. Acestea sunt calitățile la care trebuie să lucrezi încă din primele zile. Nu există căi ușoare. Prin participarea la cursuri și traininguri nu veți dobândi cunoștințele pe care le puteți obține pe cont propriu. Perseverența, munca și perseverența te vor pune deasupra celorlalți.

Nu te supăra niciodată și nu te considera mai rău decât alții. În etapele inițiale, pot exista un număr mare de momente în care nici măcar nu aveți o idee „cum să faceți asta”. Totul vine cu experiență. Un programator bun poate face orice, chiar dacă nu a făcut-o niciodată și chiar dacă la prima vedere nu înțelege exact ce metodă va folosi pentru a rezolva problema. Dar este încrezător că totul este în puterea lui și totul va funcționa ca un ceas.


Eternitate! Programarea, la fel ca multe alte domenii, necesită o auto-dezvoltare constantă. În fiecare zi apar noi oportunități, noi soluții. Urmăriți întotdeauna știrile, priviți lumea din jurul vostru și dezvoltați-vă în mod constant. Cu fiecare proiect vei ști ceva mai bun decât ieri. Și cu fiecare proiect te vei considera mai inteligent decât ieri. Acest lucru este normal și chiar grozav!

Căutați întotdeauna o metodă pentru a vă face proiectul actual mai bun decât precedentul! Daca ai proiect nou, identic cu care ai făcut-o deja acum șase luni, nu ar trebui să folosești codul 1 în 1 din acest proiect. Încercați întotdeauna să scrieți cod din nou și de fiecare dată încercați să îl scrieți mai bine decât ieri.

Regulă importantă
Investiția în tine este cea mai profitabilă și mai profitabilă investiție. Petreceți câteva ore în plus pe un proiect astăzi pentru a rezolva o problemă într-un mod mai bun va fi investit în experiența dumneavoastră.

Bonus pentru motivația ta


Acest grafic afișează profitul final pe care îl primește o persoană obișnuită bun programator la UpWork.com. Lăsa acest program va fi o motivație suplimentară pentru eforturile tale. Luați în considerare și faptul că trăim într-o eră în care oamenii încearcă să automatizeze totul cât mai mult posibil. Din acest motiv, multe domenii de activitate se reduc literalmente în fiecare an.Astfel, poți fi sigur că în viitorul apropiat poziția programatorilor nu va face decât să se întărească.

Mult succes in demersurile tale. Fii perseverent, iubește ceea ce alegi și totul se va rezolva!

Cu sinceritate,
fondator