MIT Challenge

, Author

Nei prossimi 12 mesi, imparerò l’intero curriculum quadriennale del MIT per l’informatica, senza seguire alcun corso.

Aggiornamento: La MIT Challenge è ora completa. Ho finito il 26 settembre 2012, poco meno di 12 mesi dopo aver iniziato il 1° ottobre 2011. Clicca su “See More…” per ogni classe per accedere ai miei esami, alle soluzioni ufficiali o al codice che ho scritto.

Risposte ad alcune domande comuni:

  1. Quanto ho lavorato durante la sfida? All’inizio circa 60 ore/settimana. Più tardi più o meno 35.
  2. Hai preso una laurea al MIT? No. Vedi il discorso sopra per la mia motivazione di fare l’intera istruzione senza crediti.
  3. Hai fatto tutto quello che fa uno studente del MIT? No. Ho fatto gli esami e i progetti di programmazione per un curriculum che è molto simile a quello del MIT (ho dovuto scambiare alcune classi di laboratorio e requisiti umanistici con altre classi). Il numero di ore di credito è lo stesso però. Guarda qui per il curriculum di 4 anni di CS del MIT come confronto con il mio. (Nota: Questo link è stato aggiornato perché quello vecchio era morto, tuttavia non ho controllato se ci sono state modifiche al curriculum CS da quando ho fatto il MIT Challenge)
  4. Hai usato libri di testo o video di lezioni? Tutto è nel pannello “See More…” per ogni classe. Per favore controlla se non sei sicuro per ogni classe.
  5. In che ordine hai fatto le lezioni? Nell’ordine elencato qui sotto. Tranne che alcune sono state fatte allo stesso tempo. Comunque se seguivi questo ordine in serie non avresti perso nessun prerequisito.
  6. Hai valutato tu stesso il lavoro? Si. Certo, questo introduce un certo grado di errore rispetto al fatto di avere un professore che valuta il mio lavoro. Tuttavia, la maggior parte degli esami sono quantitativi con set di soluzioni che hanno rubriche di valutazione, quindi limita un po’ l’errore. Incoraggio chiunque a controllare i miei risultati effettivi degli esami e confrontarli con le soluzioni. In molti degli esami che richiedevano lunghi calcoli, ho permesso una parte dei voti, a condizione che i concetti insegnati nel corso fossero applicati correttamente. Credo che la classificazione fornita sia probabilmente equa, ma se si volesse prendere la posizione forte che qualsiasi errore (come dimenticare di portare un segno meno) invalida un’intera domanda, questo ridurrebbe alcuni dei miei voti. Ho esaminato e ricalcolato sotto queste restrizioni più severe e ciò metterebbe gli esami finali per 18.01, 5.111, 18.03, 6.002 e 6.013 sotto la soglia di passaggio (le altre 28 classi non sono state influenzate o sono rimaste sopra il passaggio). Credo che la classificazione originale fosse giusta, anche se imperfetta, ma questi calcoli successivi mostrano l’impatto della mia decisione di usare voti parziali.
  7. Credete che tutti non dovrebbero andare all’università e fare questo invece? Certo che no. Ho fatto la mia laurea all’università e non me ne pento. Il mio obiettivo per questo progetto era vedere se sarebbe stato possibile – spingere le aspettative su quanto tempo, quanto costoso e quanto convenzionalmente un’istruzione deve essere ottenuta.

I computer mi hanno sempre affascinato. Dalla finanza a Facebook, gli algoritmi sono il linguaggio nascosto che sta alla base della maggior parte della nostra vita. Le più grandi trasformazioni del nostro mondo sono scritte in codice, e i progressi nell’intelligenza artificiale ci permettono di usare i computer per capire cosa significa essere umani.

Al di là della poesia della macchina, l’informatica è anche immensamente pratica. Sono state fatte fortune e sono nate rivoluzioni su righe di codice.

Ho sempre voluto parlare quella lingua. Ma non volevo investire quattro anni della mia vita e centinaia di migliaia di dollari per impararlo.

Mi sto imbarcando in questo esperimento perché voglio dimostrare che l’apprendimento non richiede commissioni di accettazione e test SAT, migliaia di dollari di debiti, o anche il ritmo di 4 anni che la maggior parte degli studenti assume sia necessario per imparare una materia.

Fallirò? È sicuramente una possibilità – persone molto più intelligenti di me lottano con immensi carichi di lavoro in istituzioni come il MIT, e io sto cercando di imparare lo stesso materiale a 4 volte la velocità, senza il beneficio di istruttori.

Tutto ciò che posso promettere è di condividere ciò che trovo con voi. Di seguito sono elencate tutte le 33 classi che coprirò. Per ciascuna di esse, scriverò l’esame finale e potrete confrontare le mie risposte con le soluzioni ufficiali del MIT. Pubblicherò anche eventuali fallimenti, così potrete essere sicuri che non sto omettendo i miei errori.

Aggiornamento Post-MIT Challenge

Da quando la sfida è stata completata, sto usando questo spazio per condividere alcuni dei nuovi corsi che ho completato o programmi che ho finito relativi all’informatica.

  • WordSmith – Questo è un AI che ho costruito che gioca a Scarabeo. Free and open-source.

PROGRESSI DI APPRENDIMENTO (33/33):

Clicca sui titoli per vedere i video, accedere ai corsi e vedere i miei risultati

8.01: Fisica I – Meccanica classica – COMPLETATA

Ho completato questo corso a luglio come parte di un esperimento pilota per vedere se ero in grado di fare l’intero programma. Il corso è brillante, il Prof. Walter Lewin fa un lavoro incredibile portando la fisica alla vita senza sacrificare il rigore intellettuale. Nota: Questo corso è stato rimosso dal MIT, è possibile accedere a una versione diversa qui. Valutazione di Scott: 5/5

18.01: Single Variable Calculus – COMPLETED

Questo è stato il primo corso ufficiale che ho completato per il MIT Challenge. Le solide lezioni mi hanno dato un buon senso delle basi del calcolo a partire dai limiti fino all’integrazione più avanzata.
La valutazione di Scott: 4/5

18.02: Calcolo a più variabili – COMPLETATO

Questa classe estende i principi di base del calcolo a una variabile in più di una dimensione. Molto utile da sapere per capire l’elettricità, i magneti, la luce o qualsiasi cosa che coinvolga oggetti 3D.
La valutazione di Scott: 4/5

8.02: Fisica II – Elettromagnetismo – COMPLETATA

Un’altra lezione tenuta dal Prof. Walter Lewin, le dimostrazioni sono incredibili. Rigoroso per coloro che vogliono i dettagli tecnici, ma ancora accessibile, discutendo concetti quotidiani come arcobaleni e metal detector. Nota: Il corso originale che ho seguito è stato rimosso dal MIT. Ecco un corso sostitutivo.
La valutazione di Scott: 5/5

6.01: Introduzione a EE e CS I – COMPLETATO

Questo è un buon corso, ma non consiglio di seguirlo se non si ha un background di programmazione, poiché si tuffa direttamente nell’orientamento agli oggetti con relativamente poche spiegazioni. Mi è piaciuta molto la fusione di concetti più avanzati dell’IA e delle macchine a stati nel corso principale. Gli appunti del corso sono gratuiti ed eccellenti, anche se gran parte del focus è sulla robotica che usa attrezzature specializzate alle quali non ho accesso. (Come nota a margine, molte persone hanno sottolineato che l’esame finale che ho scritto non era completamente completo, potete leggere la mia risposta approfondita qui) Nota: Il corso originale che ho seguito è stato cambiato dal MIT. Ecco una sostituzione.
La valutazione di Scott: 4/5

  1. Accedi gratuitamente al materiale del corso
  2. Scarica il codice
    • Progetto: Libreria di macchine a stati
    • Progetto: Stimatore di Stato Bayesiano
    • Progetto: A* Pathfinding Algorithm
  3. I risultati del mio esame
  4. Soluzioni effettive del MIT

5.111: Principi di scienza chimica – COMPLETATO*

Buona introduzione alla chimica quantistica, diagrammi di Lewis, reazioni acido/base e redox. Include anche una sezione più avanzata sui metalli di transizione e la teoria del campo cristallino. Sfortunatamente la classe non aveva un esame finale fattibile, così sono stato costretto ad usare i miei esami pratici di metà corso come base di valutazione.
La valutazione di Scott: 4/5

7.012: Introduzione alla Biologia – COMPLETATA

Ottimo corso di biologia che esplora la biologia dal punto di vista di uno sperimentatore, dando una base nelle basi della biochimica, immunologia, genetica ed ecologia. Il libro di testo è anche un buon supplemento, mostrando anche la mentalità sperimentale che porta alle scoperte.
La valutazione di Scott: 4/5

18.03: Equazioni differenziali – COMPLETATO

Un’estensione del calcolo, le equazioni differenziali permettono di modellare e analizzare sistemi complessi. Giocano un ruolo particolarmente importante in ingegneria elettrica, dove (e le loro controparti discrete) sono essenziali per comprendere circuiti, segnali e sistemi. Le lezioni video associate a questa classe hanno deviazioni significative dal resto del contenuto del corso, il che mi ha fatto perdere un po’ di tempo.
La valutazione di Scott: 3/5

6.02: Introduzione a EE e CS II – COMPLETATA

Questo è stato un corso più difficile da seguire, dato che non c’è una classe per esso nell’OCW del MIT. Impararlo significava setacciare i recessi per lo più nascosti degli archivi pubblici del MIT per cercare di trovare appunti ed esami. Una conseguenza di ciò è che la progettazione dei filtri, un argomento importante, mancava completamente negli appunti e non sono stato in grado di completare i laboratori (6 & 7) o le sezioni d’esame che lo trattavano. Non c’era un esame finale, così ho completato tutti e tre gli esami intermedi e li ho valutati collettivamente.
La valutazione di Scott: 3/5

  1. Materiale del corso
  2. Compiti di laboratorio (avviso grande), Istruzioni per gli esami/File
  3. Le mie risposte agli esami
  4. Soluzioni reali del MIT

6.042J: Matematica per l’informatica – COMPLETATA

Grafi, teoria dei numeri, prove, probabilità e conteggio sono solo alcuni degli argomenti trattati in questo eccellente corso. Non ci sono video lezioni, ma il libro di testo gratuito del corso è incredibile e coinvolgente. C’è anche una quantità enorme di risorse per praticare i problemi, offrendo sfide interessanti.
La valutazione di Scott: 5/5

6.006: Introduzione agli algoritmi – COMPLETATA

Un’introduzione agli algoritmi e alla teoria della complessità. Il corso fornisce una buona opportunità di applicare concetti di progettazione algoritmica (programmazione dinamica, algoritmi greedy, ecc.) a problemi di programmazione reali, dando a questa classe una concretezza che mancava in 6.042J. Sfortunatamente, non mi sono reso conto che l’esame finale non era completo prima di scriverlo, quindi ho incluso anche i quiz che avevo fatto per fare pratica. Ho completato la maggior parte dei compiti, tuttavia, poiché non c’erano soluzioni, li ho lasciati senza voto.
La valutazione di Scott: 4/5

18.06: Algebra Lineare – COMPLETATO

Lezioni video eccellenti e materiale abbondante hanno reso questo uno dei corsi più accessibili nel catalogo OCW. Il Prof. Gilbert Strang tiene lezioni fluenti e facilmente comprensibili. Il mio primo esame per questa classe è stato solo un 56%, così ho deciso di prendere un altro giorno per scrivere l’esame con un punteggio più alto che ho postato qui sotto.
La valutazione di Scott: 5/5

6.041: Analisi dei sistemi probabilistici – COMPLETATA

Un corso di probabilità, che approfondisce le basi della probabilità usando il calcolo per analizzare questioni probabilistiche più difficili di quelle poste in 6.042J. Il libro di testo è progettato specificamente per questo corso, quindi è estremamente utile.
La valutazione di Scott: 4/5

6.002: Circuiti ed Elettronica – COMPLETATO

Questo corso copre le basi dei circuiti digitali e analogici. L’esame è stato abbastanza impegnativo e ha segnato il primo esame in cui ho effettivamente esaurito il tempo di esecuzione. Sfortunatamente le soluzioni ufficiali sono solo ad accesso MIT, quindi non posso caricarle qui come confronto. Questo corso serve come base per molti dei successivi corsi di EE, quindi sono sicuro che avrò un’altra occasione per essere davvero messo alla prova sui concetti di base.
La valutazione di Scott: 4/5

6.046J: Design and Analysis of Algorithms – COMPLETED

Uno dei miei corsi preferiti finora! Il corso esplora alcuni dei concetti più avanzati negli algoritmi che non si trovano in 6.006 come dimostrare che particolari problemi sono NP-Completi, algoritmi di approssimazione, crittografia, algoritmi sublineari ed elaborazione parallela. Ho dovuto fare attenzione perché la versione OCW di questo corso è precedente al cambiamento del curriculum del MIT in cui è stato aggiunto il 6.006, quindi copre materiale sostanzialmente più facile rispetto alle versioni attuali: 5/5

6.034: Intelligenza Artificiale – COMPLETATA

Grande classe che ha coperto una panoramica di diverse tecniche di IA tra cui la ricerca, la propagazione dei vincoli, le reti neurali, le macchine kernel, l’apprendimento concettuale e l’elaborazione del linguaggio naturale. Ho anche completato 6 incarichi per questo corso che mi ha richiesto di imparare il linguaggio di programmazione Scheme. Una delle sfide nello scrivere gli esami per questo corso è stata la varietà del programma, dato che sono state trattate così tante tecniche diverse e le specifiche differivano da una classe all’altra.
La valutazione di Scott: 5/5

6.003: Segnali e Sistemi – COMPLETATO

Questo corso insegna le basi dell’analisi dei segnali e dei sistemi, estendendo le tecniche matematiche discusse per la prima volta nella 18.03. Sebbene sia utile non solo per i circuiti, la classe è particolarmente importante per capire cose come la modulazione di frequenza, i filtri audio, la riduzione del rumore e serve anche come base per l’analisi e la manipolazione delle immagini. Questo è stato anche il primo esame che ho fallito inizialmente, fortunatamente sono migliorato e ho ottenuto un 69% al mio secondo tentativo. Nota: il corso originale che ho seguito non è più disponibile. Ecco un sostituto.
La valutazione di Scott: 4/5

6.004: Computation Structures – COMPLETED

Grande classe che insegna l’incrocio tra ingegneria elettrica e informatica. Il progetto di design ha coinvolto la costruzione di una specifica CPU a livello di gate, cioè la costruzione del circuito che permette la costruzione di un computer. L’unica debolezza è stata la relativa mancanza di materiale della classe, tuttavia gli incarichi e i laboratori sono fortemente supportati.
La valutazione di Scott: 4/5

  1. Accedi gratuitamente al materiale del corso
  2. Laboratori e progetti (Nota: BSim e JSim sono necessari per eseguire i file. Possono essere scaricati liberamente dalla pagina del corso)
  3. Il mio esame
  4. MIT Official Solutions

24.241: Logica I – COMPLETATA

Introduzione al calcolo sentenziale e predicato, i loro sistemi di derivazione e prove metateoriche. Ho trovato il corso piuttosto asciutto e tecnico, ma la classe ha offerto una buona pratica dei metodi di dimostrazione più rigorosi, in contrasto con gli stili più informali insegnati nei corsi di informatica. Purtroppo, le risposte dell’esame che ho usato per correggere il mio documento non sono pubbliche, quindi non posso postarle qui.
La valutazione di Scott: 3/5

14.01: Principi di Microeconomia – COMPLETATO

Ho già seguito microeconomia durante la mia laurea in economia, quindi la maggior parte di questo corso è stato un riassunto. Tuttavia, poiché il MIT ha una base matematica molto più forte della mia alma mater, è stato rinfrescante vedere definizioni tecniche più rigorose di molti dei concetti. Ho trascorso poco meno di quattro giorni su questo corso, quindi la maggior parte dei miei errori sono stati dovuti alla dimenticanza delle definizioni tecniche e delle formule, dato che nessuna è stata fornita all’esame.
La valutazione di Scott: 3/5

6.033: Computer Systems Engineering – COMPLETATO

Un corso utile che insegna le basi delle reti di computer, la crittografia, il paradigma client-server e Internet. Ho trovato alcune parti del corso ripetitive dopo il 6.004 e il 6.02, che avevano contenuti sovrapposti, ma è stato comunque utile. Ho fatto l’errore di non concentrarmi abbastanza sui compiti di lettura dato che è da lì che proviene la maggior parte dell’apprendimento.
La valutazione di Scott: 4/5

6.013: Elettromagnetismo e Applicazioni – COMPLETATA

Senza dubbio, la classe più difficile che ho preso nel programma finora. La classe fa un uso pesante del calcolo vettoriale, delle trasformazioni e della notazione complessa, oltre ad estendere in generale i principi dell’elettromagnetismo insegnati nella 8.02. Una forte base negli argomenti di 6.003, 6.002, 18.02, 18.03 e 8.02 è una buona idea se volete tentare questa classe. Ho passato l’esame per un pelo, quindi è sicuramente un argomento che vorrei rivisitare e perfezionare in futuro, dato che ha espresso un sacco di idee interessanti.
La valutazione di Scott: 3/5

14.02: Principles of Macroeconomics – COMPLETED

Io avevo anche fatto macroeconomia prima quando ho fatto la mia laurea, quindi questo era un riassunto per lo più. Detto questo, ho pensato che la versione MIT del corso e il materiale di supporto fossero molto più accessibili. È un ottimo corso da seguire se si vuole capire l’economia nel suo complesso. Nota: Il corso originale che ho seguito è stato cambiato dal MIT. Ecco una sostituzione.
La valutazione di Scott: 3/5

24.242: Logica II – COMPLETATA

Questa classe era interamente basata su 8 compiti a casa, quindi la quantità di materiale di prova che ho esaminato era più debole di molti altri, purtroppo. Detto questo, ho amato questo corso, in quanto i teoremi di incompletezza di Godel rappresentano una delle idee più profonde che abbia mai visto in una classe.
La valutazione di Scott: 5/5

6.011: Introduzione alle comunicazioni, controllo e segnali – COMPLETATA

Questo corso è un’estensione del 6.003, Segnali e sistemi. Prende i concetti di base dell’analisi dei segnali e dei filtri e li estende alle rappresentazioni stato-macchina e ai segnali stocastici. L’inclusione di segnali casuali è molto utile per gestire il rumore, quindi molti dei concetti di questo corso sono più pratici delle loro controparti ideali in 6.003. Il libro di testo gratuito/appunti del corso è stato molto utile.
La valutazione di Scott: 4/5

24.244: Logica Modale – COMPLETATA

La logica modale è la logica della possibilità e della necessità ed estende il calcolo dei predicati di base. È una logica interessante da studiare perché può rappresentare molti sistemi diversi di logica, a seconda degli assiomi presi (deontici, aletici, tesi, ecc.). L’esame finale era un esame a casa, quindi l’ho completato nel corso di due giorni.
Valutazione di Scott: 3/5

14.20: Organizzazione Industriale – COMPLETATA

I corsi di economia introduttiva di solito semplificano l’analisi assumendo la concorrenza perfetta o il monopolio. Questo corso rimuove questo presupposto e considera come le imprese competono strategicamente l’una contro l’altra. Questo corso ha davvero acceso il mio interesse nell’imparare di più sulla teoria dei giochi. Purtroppo non mi sono reso conto che l’esame finale di esempio era abbastanza limitato come copertura del contenuto, ma è stato il meglio che potessi fare.
La valutazione di Scott: 3/5

14.23: Government Regulation of Industry – COMPLETED

Il contenuto di questo corso è stato molto simile al 14.20, anche se si è concentrato più sul contesto storico e sul quadro politico che sulla teoria dei giochi. Una classe interessante, le sezioni di lettura del libro di testo erano abbastanza lunghe (quasi 900 pagine), tuttavia il livello di analisi matematica era leggero, quindi ha reso la lettura facile.
La valutazione di Scott: 3/5

14.48J: Economia dell’Educazione – COMPLETATA

Data la natura della mia sfida, questo è stato un corso divertente poiché ha esplorato le varie teorie sull’educazione. La maggior parte della classe sembrava una discussione di econometria di base, poiché sembra che la letteratura sia inconcludente su molte idee fondamentali (le classi più piccole sono migliori? i programmi di voucher funzionano?). La classe ha anche esplorato le differenze tra la teoria standard del capitale umano dell’istruzione contro la spiegazione di segnalazione, anche se, ancora una volta, la letteratura presentata è stata per lo più inconcludente.
La valutazione di Scott: 3/5

6.005: Elementi di Costruzione del Software – COMPLETATA

Questa è la classe di sviluppo software richiesta dal MIT. E’ stata dura, non perché sia troppo impegnativa intellettualmente, ma per la quantità di lavoro. Consiste in 3 progetti di squadra, 3 progetti individuali e diversi laboratori (incarichi, a loro volta). Ero esitante nell’accettare questo corso perché i vincoli di tempo della sfida rendono difficile accettare classi come questa, tuttavia, alla fine ho pensato che l’unico modo era semplicemente fare tutto il lavoro.

Sono riuscito a finire il corso in circa 3 settimane, distribuite su circa due mesi. È stato uno dei corsi più gratificanti, anche se è stato anche il più lungo. Mi sarebbe piaciuto rimanere più a lungo con ogni progetto, in particolare l’applicazione finale di messaggistica istantanea che ho costruito da zero, per abbellirla con più caratteristiche. Il corso è una scelta eccellente se sei già un programmatore principiante, ma vuoi imparare più idee di design di alto livello per non solo scrivere codice funzionante, ma codice ben progettato.

Ho pubblicato tutti i progetti che ho scritto qui, anche se avrai bisogno di Java installato per eseguirli. Ho anche incluso gli scritti per i tre progetti di design (scusate la mancanza di contrasto nelle scansioni!)
La valutazione di Scott: 5/5

  1. Accedi gratuitamente al materiale del corso
  2. Tutto il codice
  3. Scritte dei progetti
  4. Materiale fornito dal MIT e specifiche dei compiti

6.801: Machine Vision – COMPLETATO

Questa classe insegna le basi di come utilizzare algoritmi informatici per vedere, principalmente nel contesto di guidare un robot per eseguire azioni basate su quelle immagini. Gli argomenti includono l’elaborazione delle immagini binarie, il rilevamento dei bordi, le superfici estese gaussiane, l’orientamento e la fotogrammetria. Il corso è stato valutato da due quiz a casa e contato come una delle due classi di livello universitario che ho preso nella sfida.

In generale, la classe è stata impegnativa, utilizzando tecniche di analisi di Fourier, calcolo vettoriale, algebra lineare, programmazione quadratica e calcolo delle variazioni, quindi è stata probabilmente la classe più impegnativa che ho preso in matematica applicata. Purtroppo non c’erano incarichi di programmazione, che sarebbe stato interessante.
La valutazione di Scott: 5/5

  1. Accedi gratuitamente al materiale del corso
  2. I miei esami
  3. Soluzioni (e domande) ufficiali del MIT

6.837: Computer Graphics – COMPLETATA

Questa classe insegna le basi della computer grafica, principalmente il ray tracing, anche se vengono insegnati i metodi scanline. La valutazione era basata interamente sui compiti (c’erano due quiz minori, ma non avevano soluzioni quindi non li ho usati). Iniziando con un ray caster di base e l’ombreggiatura piatta, i compiti hanno progressivamente costruito il ray tracer per includere l’ombreggiatura opaca, riflessi lucidi, ombre proiettate, superfici trasparenti con indici di rifrazione, riflessione a specchio e texturing procedurale. È stato fatto anche un progetto sulla creazione di una struttura dati di accelerazione a griglia, che non ha alcun effetto visivo ma accelera notevolmente l’approccio relativamente lento del ray tracing alla grafica.

I dettagli sull’ambiente di programmazione usato sono inclusi nel README.rtf del codice. Il file è abbastanza grande, ma include anche tutte le immagini renderizzate in modo da poter dare un’occhiata all’output anche se non si compila/esegue le scene specifiche in questione. (Per confronto, gli output ufficiali del MIT sono inclusi come sample_res.pdf per ogni incarico, così potete vedere come il mio raytracer si confronta). Nota: Il corso originale che ho seguito è cambiato. Ecco una sostituzione.
La valutazione di Scott: 5/5

  1. Accedi gratuitamente al materiale del corso
  2. Il mio codice
  3. Codice fornito dal MIT (e risposte di esempio)

COSC 545: Teoria della Computazione – COMPLETATA

Questo corso non era un corso del MIT ma un corso di laurea in teoria della computazione tenuto da Cal Newport alla Georgetown University. Questo era un argomento che volevo davvero studiare dopo aver apprezzato entrambi i corsi di algoritmi del MIT, ma il corso di teoria della complessità del MIT mancava di qualsiasi strumento di valutazione che potessi usare. Alcune idee interessanti dal corso sono quali tipi di problemi possono essere risolti da algoritmi (il che significa che c’è un processo per risolvere qualsiasi istanza del problema) e le restrizioni sulla velocità e la memoria necessarie per risolvere certe classi.

Comprende anche un’ampia discussione su uno dei problemi più importanti e irrisolti della matematica, se P=NP, che avrebbe profonde implicazioni per la società a seconda della sua risposta e nonostante decenni di lavoro e un premio di un milione di dollari per la sua soluzione, nessuno è stato in grado di rispondere.

C’erano due esami che ho scritto e valutato perché non erano cumulativi.
La valutazione di Scott: 5/5

  1. Accedi gratuitamente al materiale del corso
  2. I miei esami

Il mio MIT Challenge TEDx Talk

FAQ per il MIT Challenge

  1. Quali regole stai seguendo?
  2. Stai facendo tutti i compiti, le carte e i progetti?
  3. Il tuo curriculum è diverso da quello del MIT?
  4. Cosa succede se vieni bocciato ad una lezione?
  5. Perché lo stai facendo? Ti piace studiare e basta?
  6. Ti daranno un diploma per fare questo?
  7. Fai le lezioni in serie, non è solo un cramming per i test?
  8. Che tipo di esperienza passata hai con la materia?
  9. Sono un blogger/reporter/giornalista, come posso contattarti per condividere la storia?

Q) Quali regole stai seguendo?

Perché non sono iscritto al MIT (o affiliato ad esso in alcun modo) ho dovuto costruire le mie regole per rendere la sfida giusta, ma fattibile. Le regole di base sono semplici:

  1. Considero una classe completata con successo se riesco a passare l’esame finale (che in genere significa ottenere un voto di almeno il 50%, anche se miro a molto più alto).
  2. Scrivo l’esame sotto gli stessi vincoli di uno studente: non guardare le domande o le soluzioni in anticipo, niente note o materiale proibito, stessi vincoli di tempo (il default è di 3 ore se non specificato).
  3. Verifico io stesso gli elaborati, confrontandoli con le soluzioni reali del MIT. Li posterò entrambi, così chiunque potrà ricontrollare i miei metodi di valutazione.

Tenete a mente che questi sono solo i requisiti minimi della mia sfida. Per le classi che hanno una significativa componente di programmazione, cerco di fare incarichi di programmazione rappresentativi, nella misura in cui ciò è possibile.

Q)Stai facendo tutti gli incarichi, le carte e i progetti?

Per le classi teoriche o basate sulla matematica, gli esami finali sono generalmente una base completa di valutazione, quindi userò quelli come valutazione. Finisco ancora per fare la maggior parte o parti dei compiti e dei quiz come preparazione, ma poiché non posso mantenere la coerenza con questo criterio per l’intera sfida (molti compiti non sono disponibili o sono impossibili da valutare oggettivamente) li faccio in modo informale.

Per le classi con una quantità significativa di lavoro di programmazione o problemi di progettazione pratica, cercherò di completare la maggior parte dei compiti. Tuttavia, poiché questi sono più difficili da valutare, mi sto ancora affidando agli esami finali come criterio principale per queste classi.

Q) Il tuo curriculum differisce da quello del MIT?

Ho passato quasi un mese cercando di mettere insieme lo specchio più vicino dell’attuale curriculum di informatica del MIT da seguire. Sfortunatamente, non posso farlo perfettamente poiché alcune classi sono impossibili da valutare (inclusi i laboratori e le classi di ricerca), e altre non avevano alcun accesso online.

Sto prendendo lo stesso numero di ore di credito di una vera laurea del MIT, quindi dove non ho potuto prendere una classe, l’ho sostituita con un’alternativa simile. In termini di volume di conoscenza da imparare, quindi, il mio curriculum è simile a quello suggerito dal MIT ai suoi studenti.

L’unica altra eccezione con il MIT ha a che fare con gli elettivi. Sto prendendo varie classi non informatiche, per imitare al meglio i requisiti HASS per gli studenti del MIT. Questi non sono una corrispondenza perfetta, poiché il courseware online per le arti è considerevolmente più debole di quello per le scienze al MIT.

Puoi vedere l’attuale curriculum del MIT per l’informatica qui.

Q) Cosa succede se fallisci una classe?

Dato il ritmo che sto tentando, penso che sia inevitabile che io fallisca una classe. Il mio requisito principale è quello di passare un esame finale, quindi se ne fallisco uno, mi permetto di fare un altro esame dopo.

La mia strategia è di adottare un approccio fail-first, per essere più efficiente con il mio tempo su classi in cui ho diversi esami finali che posso usare come base di valutazione. Questo è molto diverso dall’università dove un fallimento può essere una vera battuta d’arresto. Questo è un vantaggio dell’autoformazione rispetto alle rigide istituzioni formali.

Q) Perché lo fai? Ti piace semplicemente studiare?

A nessuno piace studiare, ma tutti vogliono essere intelligenti. Imparare, arrivare a quelle intuizioni e sentirsi più intelligenti su un argomento sono immensamente gratificanti. Peccato che molti di noi lo abbiano dimenticato dopo anni di educazione formale punitiva.

Lo ammetto, potrei essere un po’ pazzo, o arrogante, per voler completare un programma di 4 anni in soli 12 mesi. Tuttavia, la mia vera motivazione è quella di mostrare alle persone che imparare più velocemente è possibile e che può essere più divertente allo stesso tempo.

Q) Otterrai un diploma per fare questo?

No, ed è proprio questo il punto. La nostra società equipara erroneamente la conoscenza all’accreditamento. Ottenere un pezzo di carta è fantastico, e per molte linee di lavoro, è assolutamente necessario. Ma l’equazione è fatta così fortemente che la gente dimentica che le due cose sono diverse.

Ho già una carriera come scrittore e piccolo imprenditore. Non voglio mai lavorare per una grande società, dove le risorse umane potrebbero esaminare la mia mancanza di un diploma. Per me, voglio solo imparare l’informatica nel caso in cui volessi iniziare una nuova attività o lavorare per una start-up.

Non ho nulla contro l’università. L’università è stata un’esperienza fantastica e utile per me, e potrebbe esserlo anche per te. Tutto quello che spero è che mostrando un’alternativa, le persone che sentono che il sistema attuale non funziona per loro possono trovare un’altra strada.

Q) Non è solo un ripasso per i test?

No, ma la differenza è sottile. La maggior parte dei corsi si basa su concetti passati, quindi il mio obiettivo con ciascuno è quello di sviluppare una comprensione profonda che posso sfruttare. Il cramming è tipicamente un ricorso alla memorizzazione per passare rapidamente un test e poi dimenticarlo. Comprendere è più difficile, ma non necessariamente più dispendioso in termini di tempo (e un requisito se ogni classe si basa su quella precedente).

Come aggiornamento, dalle prime quattro classi, sto procedendo 3-4 classi in parallelo alla volta. Anche se questo comporta la revisione in un arco di tempo molto più breve di quello tipico (1 mese invece di 1 semestre), aumenta i benefici della ripetizione distanziata.

In definitiva, la mia capacità di comprendere e svolgere adeguatamente le classi di livello superiore sarà il test del mio metodo, dal momento che la maggior parte delle classi del primo anno servono principalmente come base per le classi superiori più difficili.

Q) Che tipo di esperienza passata hai con la materia?

Quando ero ancora al liceo ho fatto un po’ di programmazione, soprattutto creando piccoli giochi per computer. Inoltre, ho seguito 4 lezioni di informatica a livello universitario, quando ho frequentato l’Università di Manitoba per la mia laurea in economia. Sì, ho una certa esperienza precedente con la programmazione che mi darà un vantaggio nella sfida. Detto questo, il mio livello precedente di abilità non è probabilmente lontano da molti degli studenti di CS che frequentano effettivamente il MIT e per i quali il curriculum è basato.

Inoltre, ho completato il primo corso 8.01 Meccanica Classica come esperimento pilota per questa sfida principale nel luglio del 2011. Quindi il numero di classi che sto tentando nel periodo di 12 mesi è ufficialmente 32.

Q) Sono un blogger/reporter/giornalista come posso contattarti per condividere la storia?

Puoi contattarmi a [email protected] o usare il modulo qui. Sarò abbastanza occupato (per ovvie ragioni) quindi scusami in anticipo se ci metterò un po’ a rispondere alle mie e-mail, perché di solito vado offline quando sto lavorando a un corso.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.