Ho preso la "vecchia" versione circa 12 anni fa. Ho appena letto le informazioni generali per il 6.S197/6.170 ed ecco le differenze che vedo:
- Il vecchio era insegnato in Java e il nuovo sembra concentrarsi sui linguaggi di sviluppo web dell'era moderna, framework e strumenti. Sento che il Corso 6 della mia era presupponeva che tu avessi già molta esperienza pratica e familiarità con gli strumenti, o che l'avresti acquisita nel tuo tempo libero. Software Studio sembra voler colmare in parte questa lacuna. Gli strumenti, almeno per lo sviluppo di applicazioni web, sono avanzati di diverse generazioni da quando ho seguito il 6.170.
- La componente del progetto di squadra è presente in entrambi, ma nella vecchia 6.170 era un problema più circoscritto - tutte le squadre costruivano un flipper che includeva UI, simulazione fisica, e così via. Penso che programmare in un team, forse per la prima volta, sia stata una delle esperienze educative più preziose che ho avuto al MIT. La nostra squadra non comunicava bene; la nostra applicazione era orribile; abbiamo preso un brutto voto.
- Entrambi sono un buon abbinamento per (credo si chiami ancora... ) 6.033, sistemi di ingegneria. Più di un corso seminariale, ma un'ulteriore esposizione alla progettazione di sistemi astratti, cicli di feedback, scatole nere, e così via.
- Ricordo che i nostri primi incarichi avevano a che fare con la mappatura: Algoritmi di ricerca, analisi dei dati TIGER per le geolocalizzazioni, ricerca di percorsi. Abbiamo trattato alcuni concetti di base della programmazione come la ricorsione e gli oggetti.
- Ogni nuovo sviluppatore dovrebbe passare almeno 6 mesi a mantenere il codice legacy prima di scrivere qualcosa di nuovo. Non ha niente a che fare con la domanda, solo la mia opinione 🙂