Quali sono i migliori siti per imparare a programmare gratis?
Perché imparare a programmare gratis se puoi essere pagato per farlo? Ho imparato un po' di programmazione al liceo, Fortran nella classe di matematica e basic nella classe di informatica al grado 11.
Ho convinto mia madre a comprarmi un Apple 2 di seconda mano. E più tardi mi comprai un 286 e il DOS. Comprai Turbo C per iniziare ad impararlo. Con l'Apple 2 e diverse visite alla biblioteca e un abbonamento a una rivista, sono stato in grado di imparare le basi del linguaggio assembly e migliorare il mio Basic. Ma le mie abilità nascenti non avevano una direzione e, francamente, nemmeno io.
Per tutti gli anni 90 ho fatto un centinaio di lavori diversi e qualche corso ecc. Per lo più insegnando a me stesso perché ero uno studente terribile. Ma ogni lavoro che facevo lo guardavo e imparavo da quelli più esperti, ho imparato a costruire case guardando i carpentieri mentre facevano il tetto: Ho imparato a fare i tetti un'estate mentre ero al liceo. Ho imparato il trucco/moda e la fotografia mentre lavoravo come truccatrice dopo aver seguito un breve corso. Questo mi avrebbe pagato il college dove ho imparato la tecnologia elettronica. Al college ho imparato la maggior parte delle cose sbagliate, compresi i microcontrollori che mi affascinavano ma non mi avrebbero mai pagato l'affitto.
Anche negli anni '90 è arrivato internet, e ha cambiato tutto. La ragione principale per cui sono andato al college era l'accesso alle cose, avevo costruito un Mac da una scheda madre di seconda mano, un monitor in vendita il giorno del boxing e un libro, ma per ottenere il massimo avevo bisogno di ROM aggiornate e un mio amico ha usato il masterizzatore EPROM al college, mi sono iscritto subito dopo. Internet era la conoscenza! E non avevo bisogno di lasciare la mia casa per ottenerla. Costruivo/facevo/facevo cose fighe e internet era la risposta al come! Avevamo la ricerca di Yahoo, Usenet e c'erano forum con programmazione e hack e ogni sorta di cose fighe come slash dot. Ma soprattutto l'HTML era accessibile, una volta che avevo una connessione internet il resto era proprio lì, potevo vedere il sorgente di qualsiasi sito web che volevo. Ma cosa costruire?
Non mi sfuggiva che un sacco di gente voleva siti web e io potevo costruirli. Così intorno al 1998 lavoravo in un negozio di computer e stavo imparando tutto quello che potevo sui siti web e sulla loro costruzione. Ho imparato JavaScript, Cold Fusion, database MS Access e Perl. Ho trovato lavoro in un negozio di macchine fotografiche e ho iniziato a imparare Photoshop nel mio tempo libero.
Poi un amico mi ha chiesto di aiutarlo a costruire un sito web. Paga bene! Non molto tempo dopo l'80% del mio reddito era la costruzione di siti web. Non era facile, ero costantemente alla ricerca del prossimo lavoro, invece di un cliente ne avevo 4 e non riuscivo a stargli dietro. Odiavo cercare di destreggiarmi nel lato commerciale di quello che stavo facendo. Costruivo un fantastico sito web che vendeva computer in Perl e JavaScript solo per sentirmi dire che l'autorizzazione di pagamento stava cambiando e non supportava Perl, così ho imparato PHP e ho ricostruito il back end.
Mi sono trovato a lavorare per una stazione radio online che ha spinto le mie competenze ancora più in là: DevOps, ottimizzazione, frode, sicurezza. Per fortuna Google ha lanciato il suo motore di ricerca, stack exchange e stack overflow come siti hanno iniziato a spuntare ovunque, ogni risposta che potevi chiedere è stata chiesta, discussa, valutata e migliorata prima che io potessi chiederla.
Come la mia vita si è sviluppata e sono finito sposato con figli, avevo bisogno di qualcosa di stabile e ben pagato. Ho smesso di imparare a programmare? Mai! L'azienda per cui lavoro ora paga un budget per l'apprendimento e lo sviluppo che uso per pagare Cloud Guru e Udemy. Tra le altre cose. Ma mi appoggio ai miei colleghi, ai miei clienti, ai nostri partner. Metà del mio lavoro è imparare che non so cosa sto facendo e capirlo.
Sono quasi offeso dalla tua domanda, perché non avevo le risposte così facilmente disponibili come le abbiamo oggi. Se mio figlio di 9 anni me lo chiedesse, lo farei sedere davanti al computer e glielo farei digitare su Google (niente di tutto questo pigro "ok Google"). Ma non mi offenderò perché è possibile che la sfida che hanno le persone curiose di entrare in questa programmazione non sia "dove" ma "cosa". Può essere davvero frustrante capire cosa imparare o anche avere un ideale per qualcosa da costruire. Fare una app di ricette per la mamma sembra dolce, ma questo mi insegnerà ciò che ho bisogno di sapere per il lavoro? Sono stufo di app di to-do marketing!
Così ho condiviso un po' della mia storia nella speranza che gli altri possano vedere che ho imparato soprattutto guardando ciò che gli altri facevano, facendo domande (a Google o al bibliotecario, chiunque possa rispondere) riempiendo gli spazi vuoti con corsi e istruzione formale ecc. La maggior parte di esso sarà gratuito, alcuni non lo saranno. Ma gran parte del mio apprendimento è stato sul lavoro, in trincea. A volte con la sindrome dell'impostore che mi urlava che non sapevo cosa stavo facendo, che sarei stato smascherato, ma quella era solo una motivazione in più per continuare ad imparare, continuare a studiare e continuare a provare finché non ci fossi riuscito.
Non si potrà mai "imparare" la programmazione. Il campo è troppo vasto e si evolve troppo rapidamente per sapere abbastanza. Quindi se siete davvero su Quora sperando che qualcuno vi dia la risposta magica a "come programmare" mi dispiace! Non succederà. Forse provate con la vendita al dettaglio. Ma se sei solo bloccato e vuoi trovare una direzione, inizia a guardare le bacheche e gli annunci di lavoro e vedi per cosa le aziende sono disposte a pagarti, poi cercalo su Google e provaci. Per iniziare, molti posti cercano esperienza con React, un framework JavaScript. Molte persone fanno un sacco di soldi con WordPress scritto in PHP. Shopify è un altro popolare marketplace e i clienti sono sempre alla ricerca di add ons.
Capire cosa programmare può essere difficile, imparare come è facile in confronto. Inizia con Google.