La seguente domanda mi ha mangiato negli ultimi due mesi. Dopo aver assistito alla qualità delle risposte qui, sono fiducioso che otterrò grandi risposte qui.Qual è il modo migliore per introdurre non-majors in HTML/programmazione?
Sto frequentando un corso nel dipartimento ECE dal titolo "Exploring Digital Information Technology", inteso per i non-majors per avere i piedi bagnati con l'intera cosa "come funzionano i computer". Essendo uno studente laureato in architettura informatica, non solo il mio background in materia è molto diverso dagli studenti (molti di loro sono matricole senza esperienza al computer al di là di Word e YouTube), ma il mio intero modo di pensare sembra essere fondamentalmente diverso. Ho avuto un grande successo in corsi tecnici prima, in cui gli studenti non avevano necessariamente alcun background nel materiale esatto, ma erano persone orientate al dettaglio, con una mentalità tecnica che grok'ed cose come variabili, matrici, indicizzazione , indirezione, funzioni, ecc ho avuto un extroardinarily momento difficile con la prima unità del corso, che copre essenzialmente HTML, JavaScript, e di Internet (topologie di rete, indirizzi IP, etc.)
mio domande alla comunità in modo sono molti, ma Comincerò con alcuni:
al livello più alto, se si stava tentando di insegnare a qualcuno come Thi come un programmatore (abbattere algoritmi di livello umano in semplici passaggi che possono essere tradotti in funzioni, istruzioni procedurali, istruzioni if-then-else e cicli), HTML e JavaScript sarebbero il tuo approccio? Questo dà risultati relativamente chiari (ad es. Una pagina web che fa cose utili) più rapidamente di altri approcci, ma la separazione e l'integrazione di HTML e JavaScript e l'intera "dichiarazione dichiarativa dell'HTML che parla al codice JavaScript procedurale" sembra ammassarsi in troppi concetti astratti troppo presto.
Se si voleva insegnare HTML e JS per un totale principiante (qualcuno che ha difficoltà a pensare algoritmicamente), quali risorse si usa, quali progetti sarebbe assegnata, ecc? Sto scoprendo che anche quando abbatto concetti come un ciclo
for
per quanto posso, è ancora un po 'troppo. Esiste un posto là fuori che parte dai primi principi e può davvero aiutare un vero principiante a digerire perché sono necessarie parentesi e punti e virgola, quali sono gli argomenti per una funzione, ecc.?
Onestamente ho molte più domande, ma penso che questo sia un buon punto di partenza. Non vedo l'ora di compilare i risultati in qualcosa che possa essere utilizzato non solo per le future iterazioni di questo corso, ma anche nei miei personali obiettivi di "evangelismo tecnologico". Ho letto l'altra domanda "Come insegnare a un principiante a fare X" qui, ma sembrano prendere di mira una classe completamente diversa di "principianti": gente che ha una mente matematica e molto interessata a imparare a programmare, ma non so da dove cominciare Sento che le risposte per quel gruppo saranno sostanzialmente diverse rispetto a quelle con una mentalità diversa, e forse una motivazione meno intrinseca per imparare.
Hmmm, l'HTML non è ambiguo alla programmazione. Non richiede alcuna logica. –
Cosa intendi con "non ambiguo"? Sono d'accordo che la sua natura dichiarativa lo distingue molto dal linguaggio procedurale tradizionale, ma sembra che ci sia almeno * qualche * valore nel dare al computer un testo in chiaro appositamente formattato per produrre un risultato più complesso. –
Penso che intendesse "analogo". – Ash