L'altro giorno mio padre mi ha fatto una domanda che non mi sarei mai aspettato da lui.
"Come posso imparare C ++?"
Quest'anno mio padre compie 56 anni ei computer sono un concetto distante per lui. Non sa come usare un telefono molto bene oltre a chiamare i numeri (nessuna selezione rapida o contatti); anche se ha iniziato a imparare i computer un po 'meglio - al punto che sa come aprire Internet (in Windows) e navigare (e ha completato con successo diverse applicazioni di lavoro interamente sul proprio online, di cui è stato offerto anche posizioni ). Ma ancora, queste sono esperienze con finestre troppo strette per significare molto, davvero.
Anche se potrebbe non avere lo sfondo, mio padre sa come leggere. E intendo leggere come un'abilità, non solo un'abilità. Ha poca o nessuna istruzione universitaria (problemi finanziari, famiglia, ecc.) E ha avuto la fortuna di finire il liceo, ma ha comunque imparato a diventare un maestro elettricista e lo è da quasi 30 anni. Ha fatto lo stesso con la chitarra, imparando a suonare ad un livello molto professionale ed è stato elogiato per la sua abilità. Al liceo, ha preso un libro di sollevamento pesi - ed era l'unica persona nella sua scuola superiore al momento di qualificarsi ufficialmente come "atleta" secondo gli standard nazionali.
In tutti i casi, aveva solo bisogno di qualcosa da leggere. Qualcosa da insegnargli. Assorbe le informazioni come una spugna.
Non ho dubbi sulla motivazione o sulla capacità di mio padre di farlo, quindi il mio obiettivo generale è semplicemente:
Porta mio padre nel mondo dei computer e portalo sulla strada della programmazione.
Credo fermamente che una volta che lo avrò fatto passare attraverso i fondamenti, la sua abilità e capacità di lettura continueranno a farlo da solo.
Quindi ti chiedo tutti: dove dovrei iniziare con tutto questo? E quali sono le migliori risorse là fuori? Dovrei fargli avviare Linux invece di Windows? C ++ è una cattiva idea?
Ricorda, ha bisogno di (IMO) imparare prima i computer, e poi ottenere quella prima comprensione (l'esperienza "Hello world") della programmazione.
Per carità e massima preferenza, mi piacerebbe avere risorse online gratuite che lui possa leggere, ma tutti i buoni suggerimenti in formato cartaceo o pagati online sono benvenuti (che potrei eventualmente cercare in seguito per acquistare ).
Inoltre, ho intenzione di iniziarlo con C ++ (senza Python, Java, ecc.), perché so che è il migliore e sarà in grado di aiutarlo lungo il percorso con il codice. (Ho una conoscenza minima in questo momento in altre lingue).
Modifica: sto ricevendo molti suggerimenti persistenti per usare Python. L'unica ragione per cui volevo fare C ++ è che LO SO che posso essere lì quando mio padre ha bisogno di aiuto. La mia MOLTA PRIMA esposizione alla programmazione è stata Java. Ho imparato Java e ci sono riuscito. Apro altri suggerimenti, ma ti preghiamo di fornire un'applicazione efficace dei tuoi suggerimenti.
EDIT # 2: Capisco che il mio approccio / pensiero / conoscenza potrebbe mancare qui. Sono uno studente di secondo livello al secondo livello CS. Se non sei d'accordo con qualcosa nel mio post, dimmi perché - dammi idee, informazioni - è per questo che sto chiedendo in primo luogo. Per restringere il mio obiettivo generale a specifici obiettivi raggiungibili.