Hacking per le scienze sociali - Guida applicata alla programmazione con i dati
Il concetto centrale del corso (e la sua risposta all'apprendimento a distanza) è di imitare una comunità di software open source. Le comunità open source affrontano da decenni progetti software complessi in modo collaborativo, spesso senza incontrarsi di persona. Hacking for Social Sciences vede la programmazione (e il suo apprendimento) come uno sport di squadra..Il corso implementa la convinzione che gran parte del successo e della motivazione del software open source deriva dalle comunità capacitàa collaborare online senza problemi.
Implementazione del corso durante il periodo di formazione a distanza
Scelte di hacking per le scienze sociali stato dell'arte, standard industrialepiattaforme di sviluppo software, approcci alla collaborazione e alla gestione dei progetti rispetto al software di apprendimento tradizionaleper svolgere il corso. Imparare in maniera applicata come utilizzare piattaforme come GitHub o da strumenti come Kanbanche sono ampiamente utilizzati nel mondo accademico e non solo, fornisce un valore aggiunto in quanto aiuta la capacità degli studenti di inserirsi nei team moderni. Il uso coerentedi un'aula gratuita e professionale software open sourceecosistema di sviluppo accanto a disponibile al pubblico, accessibile, materiale del corso compatibile con gli screen reader con licenzasotto un doppia licenza creativa comune(CC BY-NC-SA 4.0) è un'innovazione didattica che distingue questo corso da molti altri.
Il codice sorgentedi tutto il materiale didattico, compresi gli elementi interattivi, è pienamente disponibile per gli studenti.Questo consentestudenti a riprodurree modificatutto il materiale.Elementi interattivi come un sondaggio in classe con report in tempo reale sono condivisi in modo completamente riproducibile, in modo che gli studenti possano imparare in modo applicato come creare e far funzionare tali strumenti in un'infrastruttura indipendente, semplicemente riproducendoli. Hacking per le Scienze Sociali sceglie i suoi mezzi di comunicazionecon attenzione per assicurarsi che la abiti da canaleIl messaggio e scopo. La comunicazione amministrativa ufficiale passa attraverso l'ETH. edozche permettono di coinvolgere facilmente l'amministrazione dell'ETH o i servizi IT. I compiti e gli incarichi vengono discussi attraverso l'issue tracker5 e le board di GitHub, che offrono la migliore opportunità di monitorare i progressi e di fornire un feedback asincrono e consapevole del contesto, collegato al codice sorgente degli studenti. La comunità Slack del corso offre un'opportunità informale (e facoltativa) di ricevere feedback e interagire con i compagni di classe, il docente e gli ex allievi del corso. L'area di lavoro Slack offre canali generali, canali specifici per gruppi di lavoro o argomenti, nonché messaggi e chiamate dirette.
Sono un ingegnere del software di ricercae docenteda Personale informatico amministrativo del KOFcon un formazione in economiae legami profondamente radicati con la comunità del software open source. Sono la persona di riferimento per tutte le domande degli studenti. Grazie al concetto di comunità del corso, all'approccio comunicativo e alla mia esperienza con un gran numero di collaboratori online, il corso è stato pienamente disponibile per gli studenti. fattibile per gestire un corso fino a 40 studenti senza assistenti didattici..
Il corso implementa una classe capovoltaconcetto in quattro blocchi che si svolgono a distanza di diverse settimane l'uno dall'altro. Ogni blocco consiste in due sessioni di mezza giornata. I blocchi dal vivo contengono video-lezioni tenute tramite Zoom e sale per lavorare sui problemi in modo collaborativo in piccoli gruppi. I primi due blocchi mostrano il quadro generale e intendono creare un denominatore comune per tener conto di background e punti di partenza eterogenei (vedi iscrizioni al corso). Gli ultimi due blocchi sono altamente adattivi, in quanto gli studenti sono incoraggiati a portare con sé le proprie conoscenze. propri problemi applicati alla classee lavoro a solvere queste sfide con l'aiuto dell'ambiente del corso. Inoltre, gli studenti che non hanno incontrato problemi fattibili nella pratica possono scegliere tra un'ampia gamma di argomenti di programmazione per trovare un compito applicato motivante.
I compiti vanno dalla costruzione di un sito web personale, al calcolo parallelo o al lavoro con i database SQL. Il corso prevede la formazione di squadre fin dalle prime fasi, il che migliora l'identificazione e il coinvolgimento nel gruppo e quindi la motivazione. Gli studenti possono utilizzare ampi tratti del corso per ottenere input e supporto dalla classe sui propri problemi applicativi. Dato che il alto grado di motivazione intrinseca e collaborativae che i risultati siano basati su background eterogenei e punti di partenza diversi, una valutazione pass/fail non graduata(lavoro semestrale non valutato) sembra appropriatoper questo corso. Per il superamento del corso è richiesta la partecipazione attiva alle lezioni e il completamento di un compito di programmazione applicata risolto in collaborazione. Infine, ma non per questo meno importante, il corso intende fornire ai partecipanti punti di accesso e tecniche per rimanere aggiornati in un campo in grande evoluzione, affinare le proprie capacità di programmazione, trovare supporto e connettersi alle comunità open sourcein generale. Come coordinatore globale per useR! 2021(~chair), la conferenza più affermata per il linguaggio R per l'elaborazione statistica, ho offerto il mio reteagli studenti interessati e ha arricchito il corso con gli ultimi sviluppi e aggiornamenti della comunità degli sviluppatori. Nel 2021, useR! ha avuto più di 1800 partecipanti da oltre 120 Paesi.
Descrizione del corso
Concetto generale del corso prima della pandemia - durante - dopo
Hacking for Social Sciences è un corso di dottorato offerto al D-MTEC. Vi partecipano studenti di quasi una dozzina di dipartimenti dell'ETH e ospiti esterni provenienti dalla pubblica amministrazione e dall'industria. I ricercatori imparano a sfruttare le infrastrutture open source e a sviluppare competenze di ingegneria computazionale e dei dati. Lavorando alla propria ricerca in un contesto di coaching, gli studenti imparano a gestire i progetti, le infrastrutture open source, la collaborazione moderna e i flussi di lavoro per lo sviluppo di software. Il materiale didattico accessibile e riproducibile rispecchia l'impegno del corso a creare un ambiente innovativo, inclusivo e motivante.
Il corso sceglie consapevolmente piattaforme all'avanguardia e standard industriali come GitHub rispetto ai tradizionali sistemi di gestione dell'apprendimento. Per familiarizzare gli studenti con gli ambienti di ingegneria del software utilizzati nella ricerca, l'infrastruttura insegnata nel corso viene utilizzata anche per il suo funzionamento. L'approccio al software open source (OSS) e le licenze Creative Commons del materiale del corso consentono di imparare dalla sua infrastruttura e di dare agli studenti la possibilità di utilizzare ciò che hanno imparato al di là del corso.
Nei primi due blocchi del corso, gli studenti sviluppano una visione comune del quadro generale e imparano a navigare tra i componenti di un ecosistema di sviluppo software come il controllo di versione git. Gli studenti mirano a raggiungere un livello di competenza nella programmazione con i dati che viene spesso definito "carpenteria software" dalla comunità.
I secondi due blocchi seguono un approccio di coaching. I partecipanti co-progettano il corso portando i loro problemi in classe o scegliendo l'obiettivo delle sessioni di input. Un concetto di classe capovolta, un libro online disponibile pubblicamente, un'organizzazione Github, un canale YouTube del corso, una comunità Slack del corso e i miei oltre 15 anni di esperienza in OSS permettono non solo di avere sessioni vivaci dal vivo, ma anche di sfruttare al meglio il tempo tra i quattro blocchi di due giorni. Inoltre, gli studenti hanno la possibilità di connettersi alla rete globale della comunità OSS.