Avatar caricato da iHiD

Ridisegnare i track in collaborazione con The University of Chicago e The Sloan Foundation

@iHiD
Circa 7 anni fa

Come abbiamo raccontato nel nostro post del mese scorso, uno dei nostri obiettivi principali per il prossimo anno è ristrutturare le tracce, sia perché gli studenti si divertano di più, sia per semplificare il mentoring. Nell'ultimo anno abbiamo fatto enormi progressi con il progetto Track Anatomy, guidato da Maud de Vries, e proprio da lì abbiamo individuato alcuni problemi fondamentali nel modo in cui le tracce sono strutturate, che a nostro avviso vanno affrontati con priorità. Negli ultimi due mesi, il team di leadership ha discusso di come affrontare la questione e di cosa serve fare per portare le nostre tracce allo stato necessario a offrire un apprendimento idiomatico dei diversi linguaggi in tempi rapidi.

Oggi sono davvero entusiasta di annunciare che stiamo avviando un progetto in collaborazione con James Evans e Gary Lupyan dell'Università di Chicago, sponsorizzato dalla Sloan Foundation, che ci permetterà di concentrare seriamente attenzione ed energia nel ripensare da zero le tracce di Exercism e nel realizzare quei cambiamenti in diversi linguaggi. Inoltre, sono felice di annunciare che abbiamo assunto Erik Schierboom per guidare il progetto.

Contesto

Negli ultimi due anni, James e Gary hanno studiato come i linguaggi che un programmatore usa influenzino la sua efficienza, la sua creatività e la sua collaborazione. Con il sostegno di una sovvenzione della Sloan Foundation, hanno stabilito che una parte cruciale di questa ricerca è capire come i programmatori imparano linguaggi diversi e in che modo le conoscenze già acquisite favoriscano o ostacolino un nuovo apprendimento. È esattamente la domanda che ci siamo posti riguardo alle tracce dei linguaggi su Exercism. In che modo l'esperienza precedente di una persona influenza i percorsi di cui ha bisogno nelle nostre tracce e lo stile e la sostanza del mentoring a cui risponde meglio?

James, Gary e la Sloan Foundation hanno deciso di investire parte delle loro risorse per permettere a Exercism di concentrare le energie nel ridisegnare le nostre tracce, così che siano più centrate sulle peculiarità di ciascun linguaggio e più personalizzate in base all'esperienza già maturata dallo studente.

Il progetto

Nelle prossime settimane e nei prossimi mesi scriveremo molti altri post su questo progetto, ma voglio delineare gli obiettivi principali che speriamo di raggiungere e come influenzeranno Exercism.

Ripensare il nucleo delle tracce: Le nostre tracce mirano a insegnare i linguaggi di programmazione, non la programmazione in sé. Vogliamo trasferire questo principio nelle nostre tracce, ripensando i percorsi del nucleo per incentrarli su un obiettivo preciso: insegnare gli idiomi che rendono unico un linguaggio. Intendiamo progettare e sviluppare nuovi esercizi, ciascuno incentrato su un solo idioma. Per esempio, in Ruby potremmo avere un esercizio che insegna l'enumerazione invece del ciclo, oppure in JavaScript il concetto di prototipo o di binding.

Sviluppare una copertura completa di analisi automatica per gli esercizi del nucleo: Vogliamo che uno studente possa attraversare rapidamente il nucleo di una traccia. Nel progettare gli esercizi, ci concentreremo deliberatamente su come offrire una copertura di analisi automatica pari al 95% delle possibili soluzioni. Questo significa che le interazioni dei mentori riguarderanno il 5% degli studenti che ha davvero bisogno del loro aiuto, oppure esercizi secondari più interessanti e vari. Nell'ambito di questo lavoro, vogliamo sviluppare strumenti che permettano ai nostri mentori di contribuire agli analizzatori automatici senza dover scavare nel codice sorgente.

Offrire mentoring automatico e suggerimenti di mentoring su misura, in base all'esperienza precedente: Una volta completati i passaggi precedenti, vogliamo esplorare come adattare il feedback che uno studente riceve alla sua esperienza precedente, sia per quanto riguarda le risposte automatiche, sia per quanto riguarda i suggerimenti che diamo ai mentori. Il feedback di cui una persona ha bisogno quando impara un linguaggio specifico dipende molto dalle sue conoscenze precedenti. I suoi punti di ancoraggio sono diversi e le conoscenze pregresse possono essere più difficili da disimparare: tenendo conto dell'esperienza precedente di una persona, possiamo offrire agli studenti un'esperienza personalizzata e più utile.

Aggiungere il supporto per programmare nel browser: Parallelamente al ripensamento delle tracce del nucleo, aggiungeremo una delle funzionalità più richieste: la possibilità di risolvere gli esercizi nel browser. Questo non sostituirà l'uso della CLI, che a nostro avviso è un modo di imparare incredibilmente prezioso, ma offrirà la possibilità di provare ed esplorare rapidamente i linguaggi senza dover installare il linguaggio e i suoi strumenti.

Il finanziamento

Il finanziamento che riceviamo dalla Sloan Foundation tramite James e Gary permetterà a Jeremy, Nicole, Charles e Karlo di dedicare gran parte del loro tempo, nei prossimi 12 mesi, al lavoro di prodotto, allo sviluppo e all'architettura necessari per raggiungere gli obiettivi descritti sopra.

Ci permetterà anche di assumere Erik per guidare il lato «percorso» del progetto. Erik contribuisce in modo significativo a Exercism dal 2016: mantiene le tracce C#, F# e Scala, costruisce analizzatori, progetta esercizi, contribuisce a project-specifications e fa mentoring. È anche appassionato di linguaggi di programmazione e ha completato una parte significativa delle tracce su Exercism. Ed è anche, cosa fondamentale, una persona universalmente apprezzata e rispettata nella comunità di Exercism, e quindi nella posizione ideale per aiutarci a capire come progettare tracce e sistemi che facciano emergere le differenze e le somiglianze di 50 linguaggi di programmazione diversi.

Come partecipare

Metteremo insieme un team dedicato per aiutare con questo progetto. Questo team si occuperà di definire gli idiomi tra le varie tracce, progettare nuovi esercizi del nucleo, aiutarci a definire framework e standard per gli analizzatori e riflettere su come le conoscenze già acquisite influenzino l'apprendimento.

Se sei un mentore esperto e un maintainer e vorresti dare una mano, saremmo felici di sentirti. Scrivimi pure su Slack.

Conclusione

Siamo davvero entusiasti di questa prossima fase. Crediamo che aiuterà Exercism a fare passi da gigante e a servire meglio sia gli studenti sia i mentori. Siamo estremamente grati a James, Gary e alla Sloan Foundation per il loro sostegno.

12 settembre 2019 · Ti è stato utile?