Come configurare smartphone e PC. Portale informativo
  • casa
  • Programmi
  • Studiamo la programmazione da soli. Dove insegnano la programmazione?

Studiamo la programmazione da soli. Dove insegnano la programmazione?

Dovresti iniziare il tuo percorso verso una carriera come programmatore rispondendo alla domanda: hai davvero bisogno di programmazione? Questa domanda non si applica a coloro che studiano o hanno studiato in una specialità vicina alla programmazione. Se fossi più bravo in matematica a scuola che scienze umanitarie, se ti piace passare molto tempo al computer, se vuoi imparare qualcosa di nuovo, allora la programmazione fa per te.

Da dove cominciare

Esistono diverse opzioni per lo sviluppo di eventi, a seguito dei quali una persona diventa un programmatore. Il primo sono i genitori-programmatori che hanno insegnato tutto ai propri figli. Questi bambini non hanno nemmeno bisogno di andare all'università. La seconda opzione è la professione alla moda di un programmatore. Dopo la scuola dovevamo scegliere dove andare a studiare e abbiamo scelto il settore più alla moda dell'informatica, che sembrava piacerci. E ultima opzione- un hobby che si è trasformato in lavoro.

Se non ti è successo nulla di quanto sopra, puoi scegliere tra quattro opzioni:

  • Autoeducazione. Questa opzione può essere utilizzata indipendentemente o in combinazione con altri metodi. Internet è pieno di applicazioni che ti aiutano a studiare varie lingue programmazione e tecnologia. Ma questo è il percorso più difficile per i principianti.
  • Università. Se finisci la scuola e vuoi diventare un programmatore, allora vai all'università. Se non per la conoscenza, allora per la crosta. Può servire come bonus quando si fa domanda per un lavoro. Anche se acquisirai anche alcune conoscenze. Ma non dimenticare di istruirti. La scelta di un'università dovrebbe essere affrontata in modo molto responsabile. Studia attentamente i programmi di formazione e scegli le migliori università tecniche.
  • Mentore. Sarà molto bello se trovi una persona che accetta di aiutarti e indicarti la giusta direzione. Suggerirà libri e risorse adatti, controllerà il tuo codice, darà consigli utili. A proposito, abbiamo già scritto dove puoi trovare un mentore. Puoi cercare un mentore tra programmatori familiari, feste e conferenze IT, forum online e così via.
  • Specializzato corsi pratici . Prova a cercare corsi nella tua città che ti insegneranno qualche linguaggio o tecnologia di programmazione. Sono rimasto piacevolmente sorpreso dal numero di corsi di questo tipo a Kiev, compresi quelli gratuiti e con conseguente occupazione.

Quale lingua, tecnologia e direzione scegliere

Quando diventerai programmatore, dopo un anno o due sarai libero di scegliere la lingua che preferisci. Ma quando si sceglie il primo linguaggio di programmazione, un principiante dovrebbe considerare i seguenti criteri:

  • Disponibilità di posti vacanti sul mercato. L'obiettivo finale di questo percorso è trovare lavoro come programmatore. E questo sarà difficile da fare se nessuno cerca sviluppatori nel tuo linguaggio di programmazione sul mercato del lavoro. Controlla i siti di lavoro, vedi chi è più ricercato, scrivi una dozzina di lingue. E passa al criterio successivo.
  • Livello base basso. Se devi spendere a lungo per imparare una lingua, potrebbe scoraggiarti dalla programmazione in generale. Leggi le lingue che hai selezionato sopra. Rivedi la letteratura che dovrai leggere per imparare queste lingue. E scegli quelli che vengono descritti come facili, o che ti sono sembrati facili. Tali linguaggi possono essere PHP, Ruby, Python.
  • L'emozione del processo. Se non ti piace scrivere codice nella lingua che hai scelto, non apprezzerai il processo, il tuo lavoro o la tua vita. Ne hai bisogno? Fai le scelte giuste.

Dovrai anche decidere la direzione della programmazione. Dispositivi mobili, desktop, giochi, Web, programmazione di basso livello e così via. I settori più popolari e relativamente facili sono lo sviluppo per client web, mobili e desktop. Una lingua può essere adatta per ciascuna direzione e nessun'altra. Cioè, quando si sceglie un linguaggio di programmazione, vale la pena partire anche da questo fattore.

In ogni caso, impara le tecnologie web. Questo è un linguaggio di markup, stili e che renderà dinamica la tua pagina. Il prossimo passo è imparare un linguaggio lato server (Python, PHP, Ruby e altri) e framework web adatti ad esso. Studia i database: quasi tutti i posti vacanti di programmatore lo menzionano.

Come ottenere l'esperienza iniziale

Senza esperienza non troverai lavoro. Senza lavoro non farai esperienza. Circolo vizioso vita reale. Ma va bene, ne usciremo.

Innanzitutto, non aspettare di aver letto tutti i libri sul linguaggio di programmazione prescelto. Inizia a scrivere le prime righe di codice dopo il secondo capitolo del libro. Completa tutte le attività dei libri, ridigita gli esempi, comprendili. Complica gli esempi e le attività dei libri con le tue idee. Crea le tue attività per il materiale che hai trattato. Risolvi questi problemi.

In secondo luogo, devi trovare i tuoi primi progetti. Questo è probabilmente il massimo opzione difficile, ma funzionante. Dovrai cercare tu stesso gli ordini, evaderli e preoccuparti del pagamento. Per un principiante, questo è estremamente difficile, ma tutte le altre opzioni sembreranno un gioco da ragazzi. I progetti completati possono essere registrati come esperienza e mostrati al tuo futuro datore di lavoro. Progetti reali sono un grande vantaggio per il tuo curriculum.

Se sai lingua inglese, è meglio registrarsi sugli scambi in lingua inglese. Lì il mercato è più grande. Se non conosci l'inglese, imparalo. Nel frattempo, sono a tua disposizione scambi freelance in lingua russa. Cerca piccoli progetti che siano pari o appena superiori al tuo livello di abilità. Candidati per un paio di dozzine di questi lavori. E preparati a ricevere un mare di rifiuti. Ma se arrivano una o due candidature, avrai la possibilità di acquisire una vera esperienza.

Un'altra buona opzione per ottenere esperienza realeÈ fonte aperta. Tali progetti hanno sempre bisogno di nuove persone, anche dei principianti. Puoi cercare bug nel progetto o cercare nel bug tracker e suggerire metodi per risolverli. Puoi facilmente trovare tali progetti su GitHub o . Sentiti libero di porre domande lì.

La quarta opzione per acquisire esperienza è aiutare gli altri programmatori. Chiedi loro di affidarti compiti piccoli e semplici. Se qualcosa non funziona, avrai sempre qualcuno a cui rivolgerti. E allo stesso tempo parteciperai ad un progetto reale.

L'ultimo modo sono i tuoi progetti, vari hackathon o il lavoro in uno spazio di coworking. È difficile avviare i propri progetti da soli, è meglio cercare conoscenti o amici.

Perché scegliere Python

Parliamo ancora un po' della scelta del tuo primo linguaggio di programmazione. La prima lingua dovrebbe essere semplice e popolare sul mercato. Tale linguaggio è Pitone. Consiglio vivamente di sceglierlo come primo linguaggio di programmazione.

Il codice del programma Python è leggibile. Non è nemmeno necessario essere un programmatore per farlo schema generale capire cosa sta succedendo nel programma. A causa del semplice Sintassi Python avrai bisogno di meno tempo per scrivere un programma rispetto, ad esempio, a Java. Base enorme biblioteche che ti faranno risparmiare un sacco di fatica, nervi e tempo. Python lo è linguaggio di alto livello. Ciò significa che non devi pensare troppo alle celle di memoria e a cosa metterci. Python è un linguaggio di uso generale. Ed è così semplice che anche i bambini possono impararlo.

In tutta onestà, vale la pena menzionare altri linguaggi di programmazione. Giava potrebbe essere una buona scelta per un principiante. Questo linguaggio è più popolare di Python, ma anche un po’ più complesso. Ma gli strumenti di sviluppo sono sviluppati molto meglio. Basta confrontare Eclipse e IDLE. Dopo Java, sarà più facile per te passare a lavorare con linguaggi di programmazione di basso livello.

PHP- un'altra lingua molto popolare. E penso che sia ancora più semplice di Python. È molto facile trovare un mentore o una soluzione a un problema sul forum. Tutto perché c'è nel mondo grande quantità Programmatori PHP diversi livelli. In PHP non esiste un'importazione normale; ci sono molte opzioni per risolvere lo stesso problema. E questo complica l’apprendimento. E PHP è progettato esclusivamente per il web.

Le lingue C E C# molto difficile per un principiante. Rubino - una buona scelta come seconda lingua, ma non come prima. JavaScript- un linguaggio molto semplice, ma non ti insegnerà nulla di buono. Ma il compito del primo linguaggio di programmazione è ancora quello di insegnarti qualcosa di corretto, di impostare una sorta di logica.

L'inglese è importante?

Importante! Non lo so? Insegnare. Sai? Migliorare. Impara a leggere, scrivere, ascoltare e parlare inglese. Focus sulla letteratura tecnica. Ascolta podcast in lingua inglese. Leggi libri di testo di programmazione in lingua inglese.

Quello che devi sapere oltre al linguaggio di programmazione

Naturalmente, oltre al linguaggio di programmazione e all'inglese, devi sapere qualcos'altro. Ma ciò dipende dalla direzione che scegli. Un programmatore web deve conoscere HTML, CSS, JavaScript. Un programmatore desktop insegna le API del sistema operativo e vari framework. Sviluppatore applicazioni mobili insegna framework Android, iOS o Windows Phone.

Tutti hanno bisogno di imparare gli algoritmi. Prova a seguire un corso su Coursera o a trovare un libro sugli algoritmi adatto a te. Inoltre, è necessario conoscere uno dei database, dei modelli di programmazione e delle strutture dati. Vale anche la pena controllare i repository di codice. Almeno con uno. È richiesta la conoscenza dei sistemi di controllo della versione. Scegli Git, è il più popolare. Devi conoscere gli strumenti con cui lavori, il sistema operativo e l'ambiente di sviluppo. E l'abilità principale di un programmatore è saper usare Google. Non vivrai senza questo.

Ultimi passi

È necessario preparare un curriculum. Non solo un curriculum, ma un file . Non dovresti scrivere lì, ma non è nemmeno necessario tacere sulle tue capacità. Una volta che sei invitato a un colloquio, devi prepararti. Esamina il materiale elencato nel tuo curriculum. Devi avere fiducia nelle tue conoscenze. Guarda i progetti su cui hai lavorato, pensa alle tecnologie che hai utilizzato. E avanti - verso un futuro luminoso con nuova professione programmatore

Mi disse che durante il corso avrebbero insegnato a programmare a chiunque, anche da zero. Gli ho chiesto: "Riesci a far fronte alle discipline umanistiche?" E ci siamo chiesti, ci sono stati casi in cui un “umanitario” ha imparato un linguaggio di programmazione?

Innanzitutto, c'è un insegnante dal vivo con un buon background nello sviluppo. Vitaly Kurennov, che scrive Ruby da 6 anni e insegna questa abilità a tutti da più di un anno, ha lavorato su progetti Ruby per Nokia e Avaya.
In secondo luogo, c'è un gruppo di persone che la pensano allo stesso modo, lavorando fianco a fianco con le quali aumenterai notevolmente le tue possibilità di raggiungere il traguardo vincente e padroneggiare la programmazione al livello in cui inizia a realizzare un profitto.

- Nikita, perché Ruby?
- È semplice, abbiamo trovato un ottimo insegnante.

A proposito di Ruby
Puoi provare a fare i primi passi proprio adesso, ci vorranno solo 5-10 minuti.


Ho trovato un'ottima risorsa con gamification e direttamente dal browser tryruby.org
In 5 minuti completiamo diverse attività, otteniamo un risultato e passiamo al livello successivo.


Vorresti uno zombie? railsforZOMBIES.org

A proposito di Lisp

"Tuttavia, non credo di poter convincere nessuno (oltre i 25 anni) a imparare il Lisp." Paul Graham, “Conquistare la mediocrità”

, sto imparando il Lisp.

;; Benvenuti a L(λ)THW! (let ((llthw "(impara il lisp nel modo più duro))) (format t "~(~@(~A~)~^ ~), perché ~(~A~^ ~) è più semplice!" llthw (cddr llthw ))) ;; Common Lisp: potente, espressivo, programmabile, di uso generale, multi-paradigma.


Ho trovato un comodo tutorial basato su browser Impara il Lisp nel modo più duro

“Durante gli anni in cui ho lavorato in Viaweb ho letto molti annunci di lavoro. Appariva circa ogni mese nuovo concorrente. La prima cosa che ho fatto dopo aver controllato se fosse disponibile una demo online del loro programma è stata guardare i loro annunci di lavoro. Dopo un paio d'anni ho imparato a distinguere concorrenti pericolosi da quelli non pericolosi. Quanto più la descrizione dei candidati richiesti sapeva di mainstream dell’IT, tanto meno pericolosa era l’azienda. I più sicuri erano quelli che avevano bisogno degli specialisti Oracle. Non c'era bisogno di preoccuparsi di quelli. Eravamo tranquilli anche nel caso in cui fossero necessari sviluppatori C++ o Java.

Se fossero necessari programmatori Perl o Python, questo era già un po' spaventoso: ciò significava che l'azienda o, secondo almeno, la sua parte tecnica era gestita da veri hacker. Se mai vedessi una pubblicità per gli hacker Lisp, sarei davvero preoccupato." Paul Graham, “Conquistare la mediocrità”

  • Leggi Habr. Ad esempio questo articolo può essere molto utile a chi ha già iniziato il proprio percorso - Oppure una storia di successo -
  • . Ispirerà chiunque a iniziare a programmare. Anche io. Anche nel Lisp.
  • Trova persone che la pensano allo stesso modo
  • Trova una sfida stimolante

    Per esempio

    Esercizi generali:
    Il progetto Eulero ne contiene oltre 500 problemi matematici(sulla teoria dei numeri, sui sistemi numerici, ecc.) che devono essere risolti utilizzando la programmazione in qualsiasi linguaggio.
    Code Abbey memorizza oltre 200 problemi di programmazione. 125 di loro ricevono un certificato per le loro soluzioni, il che motiva molti studenti.
    Rosalind è un altro sito simile a Project Euler, che fornisce oltre 200 problemi di bioinformatica tra cui scegliere.
    Codingbat.com fornisce esercizi Java e Python sia per principianti che per programmatori avanzati.
    codegolf.stackexchange.com è un sito in cui vengono pubblicati e discussi enigmi di programmazione.
    Ruby Quiz è una serie di puzzle che ti chiedono di scrivere brevi programmi di varia complessità. Le soluzioni originali sono descritte in Ruby, ma possono essere implementate in qualsiasi linguaggio.

Ti do nuovamente il benvenuto sul mio blog e oggi cercherò di rispondere alla domanda: come diventare un programmatore web da zero il più rapidamente possibile? Dirò subito che questo è possibile, in linea di principio, per qualsiasi persona, non vedo alcuna restrizione al riguardo. La cosa più importante è il tuo desiderio e la tua perseveranza.

Primo passo

Innanzitutto, devi decidere qual è lo scopo della tua formazione? Per te stesso o per lavorare in un'azienda prestigiosa con un grande stipendio e una crescita professionale? Qualunque sia la risposta, probabilmente vorrai iniziare lezioni gratuite. E poi fornirò diversi siti dove potrai allenarti quasi gratuitamente, ma fino a un certo livello.

Naturalmente, la questione non finirà con la teoria, tutta la conoscenza acquisita deve essere applicata nella pratica un paio di dozzine di volte - poi ti entrerà in testa molto meglio, quindi è anche possibile svegliarti di notte dopo questo e chiedere: "come funziona @keyframes in CSS?"- racconterai tutto in dettaglio.

Quindi il primo passo è sapere di cosa hai bisogno. Per fare ciò, ti consiglio di visitare un portale IT molto popolare: Geekbrains. Lì, scorrendo leggermente la pagina, puoi vedere quali aree vengono insegnate sul portale. Siamo interessati alla professione sviluppatore web- questo è essenzialmente un programmatore web.

Qui in basso puoi vedere cosa studierai se paghi la formazione.

Ho intenzionalmente ritagliato un po' questo screenshot per mostrarti di quali tecnologie hai bisogno per prime.

Cosa dovrebbe sapere un programmatore web?

Quindi, come puoi vedere, questo è:

  1. HTML/CSS- lingue di base markup e progettazione di pagine web, senza di essi è impossibile immaginare la creazione di un sito web. Questa è la base, soprattutto tecnologie semplici che dovresti studiare prima.
  2. PHP è l'arma principale di un programmatore web. Questo linguaggio viene utilizzato per creare mezzi di comunicazione sociale, negozi online, framework, motori e molto altro. È grazie ad esso che funzionano la maggior parte dei servizi online, dei moduli di commento, della registrazione su siti Web, ecc.
  3. JavaScript è un linguaggio di programmazione specifico per il web; con il suo aiuto è possibile programmare una pagina in modo che il suo design cambi al verificarsi di diversi eventi. Ad esempio, quando si fa clic sulla finestra, questa si espande, ecc. Gli esempi che si possono fare sono moltissimi.

Ma questo è solo il massimo un livello base di, infatti, se vuoi diventare un professionista, dovrai studiare decine di tecnologie in un modo o nell'altro. Eccone un elenco parziale:

Dove posso imparare tutto questo?

A quanto mi risulta, ci sono 3 modi principali per imparare a diventare un programmatore web:

  1. Leggere articoli gratuiti e materiali su Internet, guarda lezioni e corsi video gratuiti. Quindi puoi ottenere la base, ma poi livello base non farai alcun progresso!
  2. Acquistare corsi a pagamento. Ho scelto questa opzione perché sto studiando realizzazione di siti web non per lavorare per un'azienda, ma per me stesso, quindi sono soddisfatto dei corsi. 1 corso sensato in RuNet costa da 3 a 7 mila rubli. Personalmente ho speso solo circa 40-50 mila rubli per il corso e non me ne pento, perché... Ho già acquisito molte conoscenze che ho potuto mettere in pratica e iniziare a guadagnare denaro.
  3. Acquista una formazione remota completa con un mentore. Questa è l'opzione più costosa, che costerà 40-150 mila rubli. Naturalmente, in termini di efficienza, è il migliore. Tale formazione, ad esempio, può essere acquistata presso l'università online Geekbrains.

Buone piattaforme per acquisire conoscenze di base di html, css, php e js sarebbero Magisters.org, HtmlAcademy.ru e sezione premium di Web4myself.com(anche se è a pagamento, l'accesso costa solo 500+ rubli al mese e ci sono tantissime lezioni lì).

Bene, vedo la stessa come l'opzione migliore Cervelli geek- poiché qui tutto è pagato e serio, sei portato a risultati reali sotto forma di siti creati dalle tue stesse mani, e non solo data una teoria nuda e obsoleta. Inoltre, puoi ricevere consigli da un vero mentore lì.


Come puoi vedere, la formazione per diventare sviluppatore web costa 6-8 mila rubli al mese e dura fino a 11 mesi, dopodiché, se non hai rallentato, diventi uno specialista davvero richiesto. Capisco che questo possa essere costoso per la maggior parte di voi, ma è la strada più breve per diventare un professionista in questa professione.

Di conseguenza, puoi ottenere questo riepilogo decente:


E queste abilità:

Se decidi di studiare da solo, puoi risparmiare molto e puoi anche ottenere risultati relativamente buoni. L'unico aspetto negativo è che dovrai raccogliere conoscenze e corsi diverse tecnologie letteralmente pezzo per pezzo.

Ad esempio, in undici mesi Geekbrains promette di insegnarti le seguenti tecnologie: HTML/CSS, PHP, JS, NodeJS, AngularJS, Yii. D'altra parte, per trovare lavoro semplice o inizia a creare siti Web per te stesso, non è necessario sapere tutto. Ho già detto qual è la base. Questo è html, css, php, javascript. Ma il fatto è che ogni anno i requisiti per gli sviluppatori web crescono e se vuoi risultati seri, in un modo o nell'altro dovrai studiare tecnologie moderne e tendenze.

Corsi su PHP e framework


SU questo momento c'è un corso meraviglioso PHP7 e MySQL da zero a guru, che ho esaminato personalmente e ho persino scritto una recensione separata al riguardo. Penso che questo corso sia meraviglioso, fornisce un'ottima base sul PHP moderno.

Anche i libri hanno diritto alla vita. È utile leggerli per ampliare le proprie conoscenze in qualsiasi campo. E puoi leggere molto su PHP. Ad esempio, questo.

Non devi sapere tutto

Se hai studiato solo Javascript (ma non php), potrai lavorare come sviluppatore front-end, altrimenti ti cimenterai nel back-end. In generale, anche con un po’ di conoscenza, puoi già guadagnare qualcosa costruendo un sito web, ma più sai, maggiore sarà il tuo potenziale.

Da dove iniziare a imparare a programmare da zero?
In questo articolo ho cercato di analizzare in dettaglio se è possibile diventare programmatore da zero e quali opzioni ci sono per padroneggiare la programmazione da soli e iniziare a guadagnare con essa.
AGGIORNAMENTO: Coloro che stanno cercando dove iniziare a imparare a programmare da zero nel 2018 (o si stanno semplicemente preparando per iniziare nel 2019 :)) sono molto fortunati grazie al libro di Yakov Kramarenko "Introduzione allo sviluppo" Software" Consiglio sinceramente di dargli un'occhiata: vale la pena aggiornare l'articolo n. 1 in poi Classifica di Google e recensioni dei lettori per coloro che stanno imparando a programmare da soli.

Ho cercato di dare il meglio, secondo me. Ti avverto: non è facile! Ulteriori letture potrebbero costarti molte ore di attività interessanti :)

Lo dirò subito: se decidi di studiare programmazione solo da solo, senza investire denaro, dovrai dedicare più tempo. Aspettati di padroneggiare una nuova specialità in almeno un anno se stai studiando parallelamente a un altro lavoro.

Se trovi qualcosa da aggiungere a questo articolo per renderlo più utile per le persone, scrivi nei commenti.

Questo articolo contiene pratica migliore, in base alla mia esperienza, se vuoi imparare a programmare da solo. Tutto questo è ancora attuale con un paio di aggiunte.

Un libro sulla programmazione web per principianti

La versione 2016 è tradotta: https://courses.prometheus.org.ua/courses/Prometheus/CS50/2016_T1/about.

È meglio seguire il corso in inglese. Migliorerai la tua lingua e le informazioni saranno più fresche. Sebbene il corso non sia cambiato molto, solo nel 2017 è stato utilizzato Python al posto di PHP.

Il completamento del corso richiederà tempo, ma fornirà una comprensione abbastanza completa che altrimenti sarebbe difficile da ottenere da soli.

Inizialmente, devi decidere quale area della programmazione ti interessa. Se stiamo parlando sull'apprendimento dello sviluppo da zero e vuoi iniziare presto a trarne profitto, quindi secondo me ci sono due opzioni: sviluppo per dispositivi mobili o sviluppo web.

La scelta migliore in una situazione del genere, secondo me, è iniziare a imparare lo sviluppo web. Qui la soglia di ingresso per i principianti è più bassa e c'è l'opportunità di iniziare prima a evadere ordini semplici.

Come diventare un programmatore da zero

Se iniziassi da zero ad imparare lo sviluppo web da solo (rendendomi conto che senza investire soldi sarebbe di più lungo raggio), allora mi consiglierei questo percorso:

1. Comprendere HTML e CSS

Buon corso per sviluppo di base HTML e CSS: https://learn.shayhowe.com/html-css/ (inglese) o https://webref.ru/layout/learn-html-css (traduzione).

Dopodiché, vale la pena esaminare le capacità di Bootstrap, che è diventato di fatto lo standard per lo sviluppo accelerato di applicazioni web: http://getbootstrap.com/

Questo sarà sufficiente per i prossimi passi.
Potresti fermarti a questo punto e studiare i CSS in modo più dettagliato. Questo ti darà l'opportunità di lavorare come progettista di layout, una persona che realizza un progetto statico Pagina HTML, dopodiché il programmatore lo fa rivivere, implementando la logica del progetto.

Puoi anche guadagnare denaro da questo, sia come libero professionista che lavorando in un'azienda IT specializzata nello sviluppo web.

Ma visto che abbiamo deciso di diventare programmatori, andiamo avanti!

2. Conosci jQuery

Se ti è piaciuto, puoi continuare a comprendere il frontend e iniziare ad imparare Javascript.

Se segue https://angularjs.org/ o http://backbonejs.org/, questo è il percorso verso lo sviluppo front-end. Una buona specialità, soprattutto perché tale conoscenza sarà utile a qualsiasi programmatore che abbia scelto lo sviluppo web.

Il mio consiglio è di restare con jQuery per ora e andare avanti.

3. Padroneggia un linguaggio di programmazione del server

C'è molta scelta qui. Più lingue promettenti programmazione: Ruby, Java, Python, Node.JS (Javascript per il server).

Più in un linguaggio semplice la programmazione per un principiante sarà Python. Se impari Python e poi il framework di sviluppo web Django, avrai tutto ciò di cui hai bisogno per affrontare da solo alcuni progetti piuttosto complessi.

Una buona opzione è il linguaggio di programmazione Python e Django

Inoltre - Python e Django ti insegneranno la programmazione "corretta". Python è costantemente tra i 5-10 linguaggi più popolari e i bravi specialisti di Python sono tra i programmatori più pagati. Python è un linguaggio di programmazione semplice e comprensibile per i programmatori alle prime armi e allo stesso tempo viene utilizzato in molte grandi aziende e in grandi progetti.

Per iniziare da solo, leggi "Python for Kids" di Jason Briggs o guarda:

Tra gli altri materiali, consiglio Impara Python nel modo più duro. libro “Semplice Python. Stile di programmazione moderno." E, naturalmente, il Tutorial Python 2 e il Tutorial Python 3.

Django è senza dubbio il miglior framework per lo sviluppo web

Lo strumento migliore per tutte le occasioni è molto difficile da trovare. Django ha il potenziale per diventare uno strumento di questo tipo per lo sviluppo web.

Da dove iniziare per imparare Django:

Inizia con la documentazione ufficiale, lì c'è un ottimo tutorial: https://docs.djangoproject.com/en/2.1/intro/

Il tango con Django lo è buona opportunità migliorare il tuo inglese e allo stesso tempo acquisire una comprensione di come sono strutturati i progetti web e di come funziona il tutto.

Opzione n. 2: PHP e WordPress

Un altro modo è iniziare con PHP e lavorare con i CMS più diffusi. Se stai imparando a programmare da solo e vuoi iniziare rapidamente, inizia con PHP.

Molte persone considerano PHP un linguaggio di programmazione “non del tutto reale”, e per una buona ragione. PHP viene utilizzato raramente in applicazioni Web di grandi dimensioni ed è progettato solo per il Web e non può essere utilizzato in altre aree.

D’altro canto, PHP è leader nel numero di siti web lanciati nel mondo. Su di esso si basano i CMS (sistemi di gestione dei contenuti) più diffusi.

Successivamente, scopri come creare temi per WordPress: questo è probabilmente il CMS più popolare al mondo, se misurato in base al numero di siti in esecuzione.

Una volta che lo capisci bene, puoi già trovare un lavoro. Esistono molti siti che utilizzano PHP e WordPress, quindi c'è abbastanza lavoro per tutti.

Come iniziare a guadagnare come programmatore

Molte persone immaginano il lavoro di un programmatore freelance in questo modo:

In realtà assomiglia a questo:

Se sei pronto per lavorare come programmatore e stai cercando un modo per guadagnare denaro, benvenuto nel mondo del freelance! Gli scambi freelance ti permetteranno di trovare ordini semplici(forse quasi gratuito all'inizio) - per fare pratica. In generale, lavorare per un'azienda IT può essere più redditizio se stai semplicemente cercando un lavoro di programmazione.

Dopo il punto 2 - avendo padroneggiato HTML, CSS e jQuery - puoi andare negli scambi freelance e prendere ordini semplici, costruendo il tuo profilo.

Conosci l'inglese? https://www.upwork.com/

Niente affatto, nemmeno con un dizionario? http://freelance.ru/

Quando sarai in grado di creare siti Web da solo, sarà più facile per te trovare clienti: ci saranno recensioni ed esperienza.

Percorso rapido verso lo sviluppo web

In base alla mia esperienza, ci vorranno dai 6 ai 12 mesi per imparare a programmare da zero. scenario migliore, mentre 6 mesi è se qualcuno ti aiuta.

Per accelerare il processo di inserimento nell'IT, cerca l'opportunità di frequentare un corso di formazione (potresti aver bisogno di più di uno) o trova una persona che si formerà con te. In realtà, senza una persona che ti trasmette le sue conoscenze, è molto difficile; puoi stare seduto per un anno a leggere libri e non iniziare mai. E con persona esperta, che può semplicemente parlare di cose complesse - molto più facilmente.

Un tempo ho scelto il percorso di ingresso attraverso la formazione. Dato che sapevo molto di sviluppo, questo mi ha permesso di padroneggiare in 2 mesi ciò che avrebbe potuto richiedere sei mesi. Trova la tua strada.

Ho persone che hanno deciso seriamente di iniziare una carriera da programmatori e vogliono accelerare il processo. Ci sono molti altri corsi. Se trovi un mentore, una persona che ti guiderà per mano, ciò ridurrà notevolmente il tuo percorso per diventare uno sviluppatore.

Non appena ti senti sicuro di poter creare qualcosa, cerca un'azienda in cui puoi sviluppare ulteriormente o clienti.

HTML, CSS, Python e Javascript sono proprio questo conoscenza di base, Primo passo. Successivamente, è molto importante esercitarsi, studiare algoritmi e strumenti di sviluppo.

Se avete domande, fatele nei commenti! Spero che questo articolo ti aiuti a fare il primo passo. Buona fortuna!

Irina Davydova


Tempo di lettura: 13 minuti

AA

Ognuno sceglie la professione di “programmatore” per un motivo specifico. Uno ha deciso di cambiare semplicemente la sua specialità, il secondo è costretto a imparare un'altra professione, il terzo non capisce se stesso senza codici e qualcuno intraprende la professione semplicemente per curiosità.

In un modo o nell'altro, tutti iniziano da zero. E prima di iniziare da zero, chiediti: hai davvero bisogno di questa professione?

L'essenza del lavoro di un programmatore: principali specializzazioni, pro e contro del lavoro

L’essenza del lavoro di un programmatore dipende dalla specializzazione e dall’azienda.

Tuttavia, a volte un programmatore è allo stesso tempo uno “svedese, un mietitore e un trombettista”. Ma questo, di regola, accade nelle piccole aziende i cui capi risparmiano sugli specialisti.

Le principali categorie in cui possono essere grossolanamente suddivisi tutti i programmatori in base alle loro attività:

  • Specialisti delle applicazioni. Mansioni: sviluppo software per giochi, editor, contabilità/programmi, messaggistica istantanea, ecc.; sviluppo software per sistemi di audio/video sorveglianza, sistemi di allarme, ecc.; adattare i programmi per soddisfare le esigenze specifiche di qualcuno.
  • Specialisti di sistema. Compiti: sviluppo sistemi operativi, creazione di interfacce verso database, gestione sistema informatico, lavorare con le reti, controllare il funzionamento dei sistemi creati, ecc. Questi specialisti guadagnano più di chiunque altro nel loro campo, a causa della rarità e specificità della professione.
  • Specialisti del web. Compiti: lavorare con Internet, creare siti e pagine web, sviluppare interfacce web.

I vantaggi della professione includono i seguenti vantaggi:

  1. Uno stipendio molto dignitoso.
  2. Elevata richiesta di buoni specialisti.
  3. Opportunità di ottenere un lavoro prestigioso senza istruzione.
  4. L'opportunità di guadagnare denaro da remoto stando seduti a casa sul divano.
  5. Opportunità di lavorare da remoto per aziende estere.
  6. Professione creativa (tuttavia, la creatività spesso dipende dai desideri del cliente).
  7. Condizioni confortevoli che forniscono grandi aziende ai loro specialisti (bevande/panini gratuiti, posti speciali per attività ricreative e sportive, ecc.).
  8. Possibilità di ottenere una “opzione”. Cioè, un pacchetto di azioni della società. È vero, solo dopo l'allenamento certo periodo in compagnia.
  9. Ampliare i tuoi orizzonti. Man mano che ti sviluppi nella professione, devi conoscere di più aree diverse vita e approfondire di più sistemi diversi– dal lavoro d’ufficio e contabilità, ecc.

Aspetti negativi:

  • Lavorare “tutto il giorno” è comune in questa professione.
  • Questo lavoro sarà noioso e monotono per molte persone.
  • Gli interessi dello specialista e del cliente non sempre coincidono e ciò che è ovvio per il programmatore, di regola, non può essere spiegato affatto al cliente. Ciò porta a conflitti e stress.
  • Le modalità operative di emergenza non sono rare.
  • La necessità di svilupparsi costantemente, imparare cose nuove e avere tempo per evolversi nella sfera IT. Nel giro di pochi anni i programmi diventano obsoleti ed è necessario scriverne di nuovi.

Video: come diventare programmatore?

Qualità personali e aziendali necessarie, competenze professionali e capacità per lavorare come programmatore: cosa devi sapere ed essere in grado di fare?

Le principali qualità di un buon programmatore

Un buon programmatore dovrebbe...

  1. Adoro il tuo lavoro. E non solo amare: esserne stufo.
  2. Adoro imparare e insegnare da zero.
  3. Sii molto laborioso, diligente e paziente.
  4. Preparati per un lavoro di routine costante.
  5. Essere in grado di lavorare in gruppo.

Di quali conoscenze ha bisogno un futuro programmatore?

Dovresti iniziare studiando...

  • In inglese.
  • Dispositivi informatici e fisica di tutti i processi.
  • Linguaggi di programmazione.
  • Metodologia di sviluppo software.
  • Metodologia di test del software.
  • Sistemi di controllo della versione.

Linguaggio di programmazione: con quale iniziare?

Dovrai anche studiare...

  • Giava. Più popolare di Python e una buona scelta per un principiante. Ma più complesso di Python.
  • PHP. Progettato per il web, ma sarà utile a qualsiasi principiante.
  • Do e Do#. Lingue molto complesse, puoi lasciarle per dopo.
  • Rubino. Una buona opzione per una seconda lingua.
  • Django. Ti insegnerà come programmare correttamente. Simile per complessità a Python.

Molto dipende dalla direzione scelta.

Per esempio…

  1. Sarà utile per un programmatore web Conoscenza dell'HTML, CSS e JavaScript.
  2. Per programmatori desktop: API e framework.
  3. Per sviluppatori di applicazioni mobili: Android, iOS o Windows Phone.

Dove studiare per diventare programmatore da zero: istituti scolastici in Russia, corsi, apprendimento a distanza, apprendimento online?

Se non hai amici che possano insegnarti da zero la professione di programmatore, allora hai diverse opzioni di formazione:

  • Autoeducazione. Il percorso più difficile verso la programmazione, che passa attraverso lo studio di siti, applicazioni, libri, ecc.
  • Università. Se ti sei appena diplomato e sogni di ottenerlo professione prestigiosa programmatore, inserisci la facoltà appropriata. Acquisirai comunque le conoscenze di base attraverso l'autoeducazione, ma la "crosta" ti aiuterà ad avvicinarti più velocemente al tuo caro obiettivo. Scegli le università tecniche, dopo aver studiato in anticipo i programmi di formazione.
  • Insegnante personale . Se riesci a trovare un mentore tra i programmatori, l’autoapprendimento sarà più veloce ed efficace. Cerca mentori nei forum online, alle feste IT, alle conferenze tematiche, ecc.
  • Corsi. Possono insegnarti questo o quel linguaggio di programmazione su corsi semplici, che si può trovare anche nei piccoli centri. Per esempio, " Portale IT educativo GeekBrains", « Specialista" presso MSTU Bauman, « Accademia Informatica STEP", MASPC.

Puoi ottenere un'istruzione superiore come programmatore in...

  1. MEPhI.
  2. Università russa di economia Plekhanov.
  3. Università statale di ingegneria civile di Mosca.
  4. MSTU Baumann.
  5. Università statale di gestione.

Video: 7 errori commessi dai programmatori principianti

Risorse online e libri utili per imparare a diventare programmatore

  • habrahabr.ru (articoli su argomenti IT, informazioni sui più argomenti diversi). Questa risorsa è nota a ogni programmatore.
  • rsdn.org (libri, problemi attuali, forum utile, colmare le lacune di conoscenza, materiali in russo).
  • sql.ru (forum eccellente e conveniente, letteratura utile e anche offerte di lavoro).
  • theregister.co.uk (notizie dal settore IT).
  • opennet.ru (notizie, articoli utili, forum, ecc.). Una risorsa per i professionisti.
  • driver.ru (libreria dei driver). Sito utile per principianti.

Risorse di apprendimento:

  1. ocw.mit.edu/courses (oltre 2000 corsi su vari argomenti).
  2. coursera.org (più di 200 corsi, gratuiti).
  3. thecodeplayer.com ( guide passo passo per i neofiti).
  4. eloquentjavascript.net (risorsa per l'introduzione a Java Script).
  5. rubykoans.com (per chiunque stia imparando Ruby).
  6. learncodethehardway.org (impara Python, Ruby, C, ecc.).
  7. udemy.com (corsi a pagamento e gratuiti).
  8. teamtreehouse.com (oltre 600 lezioni).
  9. webref.ru/layout/learn-html-css (per padroneggiare HTML e CSS).
  10. getbootstrap.com (esplorando le funzionalità di Bootstrap).
  11. learn.javascript.ru (frontend di apprendimento e Javascript).
  12. backbonejs.org (per sviluppatori front-end).
  13. itman.in/uroki-django (per imparare Django).

Siti di apprendimento gratuiti per aiutare i principianti:

  • ru.hexlet.io (8 corsi gratuiti in C e PHP, JavaScript e Bash).
  • htmlacademy.ru (18 corsi gratuiti per progettisti di layout).
  • codecademy.com (corsi popolari su lingue, strumenti, ecc.).
  • codeschool.com (più di 60 corsi (13 gratuiti) su HTML/CSS e JavaScript, Ruby e Python, iOS e Git, ecc.).
  • checkio.org (per imparare Python e JavaScript).
  • codingame.com (imparare attraverso i videogiochi, 23 linguaggi di programmazione).
  • codecombat.com (impara JavaScript, Python, ecc.). Un gioco educativo accessibile anche a chi non parla ancora inglese.
  • codehunt.com (formazione per trovare errori nel codice).
  • codefights.com (una piattaforma di formazione attraverso tornei su cui puoi ottenere un colloquio presso una società informatica decente).
  • bloc.io/ruby-warrior# (apprendimento di Ruby e arte/intelligenza).
  • theaigames.com (sviluppo delle capacità di programmazione - un entusiasmante simulatore di giochi online per un programmatore).
  • codewars.com (una raccolta di compiti didattici interattivi per chi ha un minimo di conoscenza).

Di solito acceso autodidatta La programmazione di base dura da sei mesi a 12 mesi.

Come trovare rapidamente un lavoro come programmatore e iniziare a guadagnare denaro: consigli di persone esperte

Naturalmente, semplicemente non sarai in grado di trovare un lavoro in un'azienda normale senza esperienza lavorativa.

Ecco perché…

  1. Leggi libri, studia siti web e informati, ma ora inizia a scrivere le tue primissime righe di codice.
  2. Crea e complica i tuoi compiti in base al materiale trattato.
  3. Cerca i tuoi primi progetti, anche per “soldi divertenti”, scrivilo nel tuo “curriculum”.
  4. Cerca lavoro negli scambi freelance in lingua russa (ru) e anche negli scambi in lingua inglese (upwork.com): lì ci sono più possibilità di trovarlo.
  5. Inizia con piccoli progetti che puoi gestire.
  6. Non perdere l'opzione open source (in tali progetti mancano sempre persone).
  7. Aiuta “per un bel soldo” (o anche gratis, per esperienza) ai programmatori che conosci. Lascia che ti affidino compiti semplici.

  • Assicurati di scrivere: la tua esperienza lavorativa, un elenco di lingue e tecnologie che parli, istruzione e contatti.
  • Non inseriamo l’intero elenco delle nostre qualità e talenti nel nostro curriculum. Anche se suoni magistralmente la fisarmonica a bottoni, non dovresti scriverlo sul tuo curriculum.
  • Progetta il tuo curriculum in modo che sia creativo ma pertinente.
  • Non dovresti compilare voci come “i tuoi obiettivi e ambizioni” o “dove mi vedo tra 5 anni”. Basta scrivere cosa hai fatto prima e cosa vorresti fare adesso.
  • Non scrivere di linguaggi e tecnologie che conosci solo per nome. Dovresti scrivere nel tuo curriculum solo quelli in cui nuoti come un pesce nell'acqua. Per tutto il resto c'è una frase magica: "c'è stata una piccola esperienza".
  • Se sei esperto di Delphi, non dimenticare di dire che conosci anche C#, Jave o un altro linguaggio, perché nessuno ha davvero bisogno di un "programmatore Delphi" (Delphi è la base con cui ogni laureato ha familiarità).
  • Non menzionare lavori che non rientrano nella tua specialità. Nessuno è interessato a questo. Inoltre, a nessuno importa se hai la patente o un'auto. Non otterrai un lavoro come corriere.

Prospettive di carriera dei programmatori e stipendi dei programmatori

Lo stipendio medio di un programmatore nelle principali città del paese è: da 50.000 a 200.000 rubli.

Per la Russia nel suo insieme - da 35mila a 120000.

La professione è nella lista delle più richieste e delle più profumatamente pagate. Anche uno specialista modesto può guadagnare abbastanza per comprare un panino con caviale, ma un professionista sicuramente non avrà bisogno di soldi.

Da stagista a capo di un dipartimento IT, il percorso non è così lungo e lo stipendio ai massimi livelli può raggiungere i 4.000 dollari mensili. Bene, allora puoi passare alla guida di un grande progetto (circa - sviluppo software), e qui lo stipendio supera già i 5.000 dollari.

I migliori articoli sull'argomento