
Il post è dedicato alla giornata della protezione dei bambini. Qualsiasi coincidenza non è casuale.
A 10 anni ho avuto il mio primo computer e un disco con Visual Studio 6. Da allora ho iniziato a inventare compiti per me stesso: automatizzare le faccende, creare qualche servizio web per tre persone o scrivere un gioco che poi verrà rimosso dal Play Store per obsolescenza. Certamente, ho perso i sorgenti e ho scritto codice che farebbe vergognare chiunque. E a 10 anni avrei sicuramente voluto ricevere dal futuro un archivio con tutti gli errori, per non commetterli mai più.
Un paio di settimane fa ho chiesto ai colleghi di Yandex.Money cosa consiglieranno ora a un bambino che vuole diventare un IT specialist, e poi ho ricordato alcune cose su di me. Così è nato questo testo. Propongo di parlarne.
Non consiglio di spendere molte energie nel tormento della scelta, meglio provare tutto e occuparsi di ogni cosa. Quando capirai cosa c'è in linea di massima, potrai decidere tu stesso in quale direzione muoverti e quale sarebbe meglio abbandonare.
Sergey, junior programmer
Infanzia
Qual è l'attività più divertente dell'infanzia da programmatore, quando non c'era ancora Internet?
Ne ho avute due: smontare tutti i giochi dal disco "800 giochi in lingua russa" con tutti i programmi dal disco "Tutto ciò che serve a un hacker", e poi riscrivere tutti i giochi a cui ho dedicato più di 10 ore, da zero in Basic. Non ha importanza cosa ne verrà fuori, anche se uscirà una cosa del genere.

Prendi, prova, sposta i blocchi, sperimenta e allunga le mani verso tutto ciò che puoi raggiungere. Rimuovi Windows, ci metti 10 ore a reinstallarlo. Provi a ripristinare i driver. Scopri come funziona DOS. Scopri come devono essere impostati i ponticelli affinché il tuo hard disk si accenda nel computer di un amico (ci sono 200 megabyte di nuovi giochi!). Giri il software, giri l'hardware, smonti e rimonti il computer. Scrivi un simulatore di calcio per 13 anni, alla fine.
Quando non c'è nulla, diventi felice anche per questo.
Non si può sottovalutare l'importanza dell'autocontrollo. A mio avviso, i principianti in IT sottovalutano quanto severamente dovranno controllare il proprio prodotto (e anche nell'analisi) e quanto tempo richieda rispetto alla parte puramente creativa. E più interessante è ciò che fai, più difficile e lungo sarà il controllo.
Questo, ovviamente, è un consiglio piuttosto astratto, ma se lo avessi saputo subito.
E non consiglio di focalizzarsi su un'unica direzione nell'IT. Anche qui, avere una visione ampia è importante.
Anna, analista sistemica senior
Scuola superiore
A un certo punto su un forum della città provinciale di P abbiamo discusso di programmazione — e lì è comparso un thread con il titolo "Si cercano programmatori PHP per una grande azienda". Il testo dell'annuncio era il seguente:
Si cercano programmatori PHP per una grande azienda:
Per capire se valga la pena venire al colloquio, esegui un semplice compito: scrivi un programma in php che trova interi positivi x, y e z tali che x^5+y^5=z^5. (^ - potenza).
Puoi rispondere qui.In questo thread hanno risposto solo poche persone — c'ero anche io. Con tutta la mia innocenza di sedicenne ho risposto:
Davvero qualcosa di strano. Inoltre, ci vuole un computer potente per trovare questo...
Infatti, da x,y,z <=1000 non ci sono tali numeri, per cominciare (ho gettato giù qualcosa in vb, oltre non sono andato), e in secondo luogo il computer si pianta completamente.
Non importa, qualcosa non va, IMHO.Sì, un gioco, una trappola per neofiti, sì, da perdente, e allora? È chiaro che ho speso un po' di tempo su uno script semplice, ma ho completamente dimenticato l'esistenza del teorema di Fermat — come ha chiarito l'autore del thread, il rispettabile The_Kid, proprio alla fine.
Il risultato è triste: a P non ci sono praticamente persone che conoscono la matematica, ma ogni secondo si crede un grande programmatore. In tre ore, su tutti i forum dove ho pubblicato il messaggio, ci sono stati in totale circa duecento visualizzazioni... e solo due risposte corrette. E il teorema di Fermat fa parte del programma scolastico, e le sue condizioni sono così semplici che dovrebbero saltare all'occhio. A proposito, parallelamente, in un sondaggio su aSkype, 6 su 6 conoscenti studenti di Novosibirsk hanno risposto "È il teorema di Fermat".
E chi dovremmo assumere dopo tutto questo?Allora mi ha suscitato una tempesta di indignazione in uno spirito del tipo: "Se non ho scritto del teorema di Fermat, non significa che non lo sappia" — scusa classica. Mi sento triste adesso? No, è anche questa una lezione per tutta la vita. Come allora, quando il mio gioco è stato messo in evidenza nello store di Windows Phone indonesiano, e due settimane dopo è stato rimosso perché non ho aggiornato alcune condizioni dell'EULA.
E davvero incomprensibile: se in una grande azienda non c'è nessuno da assumere, chi dovrebbe essere? Cosa fare? Dove crescere?
Non pensare che, una volta conseguito il diploma, diventerai programmatore/tassista/matematico o qualcun altro.
Sono arrivati i tempi in cui nei diplomi diventano molto più importanti le materie di base (matematica, fisica, informatica, filosofia), e non quelle applicate (programmazione, progettazione in ambiti specifici, altro). L'istruzione superiore ha iniziato a dividersi in strati: di base (ingegneristico) e applicato. Bisogna imparare non abilità specifiche, ma pensiero, approccio scientifico, comprensione su come risolvere problemi, soft skills.
Questo si riferisce all'università. Per le abilità pratiche, una persona avrà l'intera vita a disposizione.
Oleg, analista di sistema principale
Università
Scrivi codice in «C++», scrivi codice in Java. Tocchi l'assembly, ritiri la mano, ti infili in Qt e ti chiedi perché ti trattano così. Al quarto anno a tutti non interessa più su cosa scrivi le tue importanti laboratori, — i docenti guardano il codice così, a caso.
Certo, non è così ovunque — ci sono università dove l'insegnamento è forte e valido, ma lì prendono ragazzi che a scuola risolvevano problemi dell'ACM, nelle lezioni extra spremere tutto dalla teoria dei grafi e memorizarono quanto spazio richiedono tutti gli algoritmi esistenti nel mondo.
Io non risolvevo, non andavo alle lezioni extra, ma ho semplicemente finito nel mio gruppo di matematica, facendo nel frattempo cose interessanti. Spoiler — nei colloqui di lavoro non serviranno a nessuno.
Prima è meglio capire cosa piace nel settore IT. Se piacciono tutte le direzioni, sarà difficile. Imparare un linguaggio — non porterà a niente, ci sarà solo confusione in seguito.
Jan, specialista in monitoraggio finanziario
Una storia reale — per un simulatore di Windows realizzato con un amico durante il 10° grado, all'università si possono ottenere un paio di esami e crediti automaticamente. Puoi anche raccontare a tutti quanto è stato bello. Il problema è che non è stato affatto bello — era un'architettura confusa, codice orribile e totale assenza di standard di qualsivoglia tipo.
Tali cose devono essere fatte con un unico scopo: avere un proprio catalogo di strumenti. Anche se questo non ti salverà dalla sindrome dell'impostore quando ti trovi in una grande azienda con alcune conoscenze superficiali e hai paura di essere smascherato.

Sostenere, è più importante dare consigli su cosa si può fare e dove reperire informazioni, piuttosto che il contrario. E non è affatto spaventoso se all'inizio agirà a tentoni. — La consapevolezza arriverà in un secondo momento. È importante che piaccia.
Erik, ingegnere del testing
Ognuno di noi scrive piani di sviluppo — cosa bisogna studiare, su cosa lavorare nel prossimo futuro e come migliorarsi. Ma sembra che a tutti noi farebbe bene scrivere una lettera a noi stessi dal passato — ecco la mia.
- Prenditi del tempo, trova un libro e installa quella distribuzione di Ubuntu che ti hanno inviato gratuitamente da Canonical. Lì c'è sicuramente qualche problema semplice, Ubuntu funziona ovunque. E Linux ti sarà molto utile.
- Non avere paura della console. Volkov Commander, ovviamente, sta su un solo floppy, ma prova a capire a cosa servono tutti questi comandi, fai amicizia con il prompt dei comandi. E i floppy spariranno. I dischi spariranno. Anche le chiavette USB spariranno. Non preoccuparti troppo.
- Leggi sugli algoritmi, informati sulle ordinazioni, sugli alberi e sulle code. Leggi dei libri.
- Per capire i fondamenti, non hai bisogno di corsi a pagamento. Presto arriverà YouTube — e ti stupirai.
- Non fissarti sul Basic. Nel mondo ci sono centinaia di tecnologie che meritano la tua attenzione e milioni di cose più interessanti che disegnare per l'ennesima volta dei moduli utente in Excel. Prendi almeno Python — e poi te la caverai.
- Impara a usare Git, fai il backup di tutto il codice sorgente. Scrivi almeno una applicazione client-server, così capirai come funzionano. Informati sulle reti, sugli switch e sui router.
- E se ora stai leggendo questo, vuol dire che non è tutto vano.
Racconta nei commenti cosa scriveresti a te stesso dal passato? Consiglia qualcosa agli attuali studenti delle scuole superiori e universitari che sono ancora indecisi e cercano la loro strada. Parliamone.
Fonte: habr.com
