Computer Science Before College
Il Gennaio 25, 2022 da adminGli informatici giocano un ruolo centrale nella nostra infrastruttura tecnologica. Sviluppano hardware, software e altre applicazioni per l’uso da parte di militari, imprese e consumatori medi. Questo ha reso l’informatica uno dei campi di carriera in più rapida crescita negli Stati Uniti oggi, con alcune occupazioni, come l’ingegnere del software, che dovrebbero crescere del 22% dal 2012 al 2022. Mentre questo significa enormi opportunità per gli studenti e i giovani professionisti interessati al campo, significa anche una maggiore concorrenza, sia a livello di college che nel mercato del lavoro.
Molti esperti nell’educazione informatica promuovono lo sviluppo delle abilità prima del college come la chiave del successo. Gli studenti a partire da sei e sette anni stanno imparando la logica dietro i programmi per computer e, in alcuni casi, come creare semplici programmi per conto proprio. Eppure l’apprendimento formale dell’informatica rimane una merce rara nei curricula K-12. Nel 2011, solo il cinque per cento delle scuole superiori in tutto il paese ha offerto un test di Advanced Placement in questa materia. Questa lacuna ha costretto gli studenti a cercare l’educazione informatica altrove.
La seguente guida aiuta studenti e genitori a identificare e comprendere la moltitudine di opportunità disponibili per imparare l’informatica prima del college. Gli elementi chiave includono:
- Uno sguardo approfondito sul perché l’informatica è importante da imparare a livello primario e secondario.
- Una ripartizione delle informazioni e delle risorse di informatica ad ogni livello: scuola elementare, scuola media e scuola superiore.
- Uno sguardo dettagliato alla preparazione al college. In particolare, come gli studenti delle scuole superiori possono prepararsi per lo studio avanzato dell’informatica a livello post-secondario.
Top Online Programs
Esplora i programmi di tuo interesse con gli standard di alta qualità e la flessibilità di cui hai bisogno per portare la tua carriera al livello successivo.
Elementary
I bambini hanno un dono naturale per imparare una lingua straniera. I sostenitori dell’insegnamento dello spagnolo o del cinese nei curricula elementari affermano che i bambini assorbono i concetti e il vocabolario più organicamente degli adulti. La programmazione del computer, nota come “codifica”, include elementi molto simili e incorpora più lingue. Il coding facilita anche la collaborazione degli studenti, la creatività, il design, la presentazione e la capacità di risolvere i problemi. Questo porta molti genitori a porsi la domanda: Perché i bambini non stanno imparando l’informatica di base e la programmazione a scuola? Common Core e No Child Left Behind possono sembrare delle barriere, ma esistono delle alternative.
Perché iniziare dalla scuola elementare
Insegnanti, amministratori e presidi interessati all’informatica e al coding possono guardare al curriculum open-source per aiutare a portare programmi di volontariato nelle loro scuole. CodeEd, un programma di volontariato senza scopo di lucro che insegna i principi dell’informatica e della programmazione alle ragazze di New York, Boston e San Francisco, inizia già dal sesto grado. I suoi fondatori capiscono che l’interesse per l’informatica e l’attitudine a fare questo dovrebbero essere coltivati presto.
“Abbiamo visto che i bambini hanno chiaramente la capacità di imparare concetti informatici complessi fin dalla prima età”, dice Angie Schiavoni di CodeEd.
L’informatica può essere introdotta agli studenti in giovane età, ma i concetti devono essere semplici da capire, riferisce la Computer Science Teachers Association. Charlie King di CLEARLINK suggerisce che i bambini dovrebbero iniziare a codificare e approfondire l’informatica non appena mostrano un interesse. L’età specifica può non essere così importante.
“La quarta o quinta elementare è un posto divertente”, dice. “Hanno un’immaginazione selvaggia e non credono nelle limitazioni. Mio figlio è in quinta elementare e lo sta amando”
Ecco alcune ragioni per aggiungere l’informatica e il coding all’educazione a livello di istruzione elementare.
- Entro l’anno 2020, ci sarà un eccesso di 100.000 posti di lavoro in informatica disponibili oltre il numero di laureati qualificati per lavorare nel campo, riferisce The Educators Room.
- La maggior parte dei bambini sono altamente funzionanti quando si tratta di usare il computer, eppure solo il 57% delle scuole elementari hanno la connettività Internet wireless, secondo la Computer Science Teachers Association.
Risorse per le basi del coding
Molte organizzazioni diverse offrono educazione al coding per i bambini. Che si tratti di campi estivi o programmi online, essi forniscono opportunità per i bambini di sviluppare conoscenze e abilità pratiche di informatica.
“Il modo migliore per i bambini piccoli di imparare la programmazione è proprio quello di iniziare a farlo in modo molto concreto”, dice Angie Schiavoni di CodeEd. “È un po’ come se il modo migliore per i bambini di giocare a calcio non fosse solo imparare a palleggiare o imparare a passare la palla, ma scendere in campo e giocare a calcio, molto. Poi puoi mettere a punto le tue abilità in seguito”.”
Come CodeEd, Scratch dà ai giovani studenti la possibilità di creare storie interattive, animazioni e giochi, e poi condividerli online. Anche se progettato per ragazzi dagli otto ai 16 anni, il programma è appropriato per tutti i codificatori principianti, in quanto utilizza rappresentazioni visive per insegnare idee matematiche e computazionali fondamentali. Il sito ha sezioni per i bambini, naturalmente, così come per i genitori e gli educatori. Dal suo concepimento, si stima che 800.000 studenti abbiano condiviso più di un milione di progetti Scratch.
Scratch e CodeEd rappresentano solo due delle molte risorse online per i bambini della scuola primaria interessati alla tecnologia. Le seguenti risorse possono anche essere utili per studenti e genitori:
- Alice.org Alice.org offre un ambiente di programmazione 3D per aiutare i bambini di tutte le età ad imparare la programmazione orientata agli oggetti. Sono disponibili download, licenze e tutorial.
- Codecademy.com Codecademy.com offre a chiunque l’opportunità di imparare a programmare gratuitamente usando semplici esempi e metodi.
- Codepupil.com Codepupil.com usa semplici giochi, come il suo “Code Stitch”, ed esercizi per insegnare ai bambini a codificare con HTML e CSS.
- Code.org Code.org insegna le basi dell’informatica attraverso un tutorial che usa la programmazione drag-and-drop. Un corso K-8 Intro to Computer Science lungo da 15 a 25 ore è disponibile per bambini a partire dai sei anni.
- ComputerScienceForKids.com ComputerScienceForKids.com offre quattro diversi percorsi di programmazione in lingua per studenti che studiano a casa così come un curriculum per insegnanti che può essere usato nelle classi pubbliche.
- DaisyTheDinosaur DaisyTheDinosaur è un’applicazione per iPad che introduce i bambini dai cinque agli otto anni alla logica di base e permette loro di trascinare comandi di una parola nello spazio di programmazione.
- Hackety.com Hackety.com insegna agli studenti le basi del linguaggio di programmazione Ruby, che è usato per applicazioni e siti web. I corsi online includono An Introduction to Ruby e An Introduction to Programming.
- Kodable Kodable è un gioco per iPad per insegnare ai bambini a partire dai cinque anni come sviluppare abilità di codifica. Gli strumenti di apprendimento sono disponibili anche per studenti avanzati fino alla dodicesima classe.
- PluralSight PluralSight sa che i bambini sono già esperti di tecnologia e offre corsi gratuiti come Teaching Kids to Program e Learning to Build Apps with App Inventor.
- Scratch.MIT.edu Scratch.MIT.edu offre un linguaggio di programmazione visuale sviluppato dal MIT Media Lab, permettendo ai bambini di costruire animazioni interattive, giochi e storie. Più di 4,9 milioni di progetti sono già stati condivisi sul sito.
- TeachKidstoProgram.com TeachKidstoProgram.com fornisce suggerimenti per siti web, software, hardware e libri, come Python for Kids di Jason Briggs, da usare per sviluppare l’interesse dei bambini nella programmazione.
- TeamTreeHouse.com TeamTreeHouse.com offre la possibilità di imparare la codifica e la progettazione web attraverso più di 1.000 video creati da istruttori esperti. La conoscenza è testata attraverso sfide interattive di codifica e quiz.
- Udemy.com Udemy.com fornisce una serie di corsi per bambini tra cui un abbastanza economico Kids Coding-Beginner HTML che è adattato ai giovani stili di apprendimento e include un progetto finale.
Oltre ad alimentare l’interesse, i fondatori di programmi come CodeEd e Scratch sperano che i loro sforzi portino ad una crescita a lungo termine nel campo.
“È tempo che l’informatica sia insegnata alla pari con altre discipline scientifiche come la biologia, la fisica e la chimica”, dice Schiavoni. “Ma abbiamo ancora molta strada da fare per recuperare il ritardo. L’Estonia ha recentemente implementato un programma nazionale in cui il 100 per cento degli alunni di prima elementare sarà obbligato a prendere lezioni di informatica.”
Scuola media
Per gli studenti che hanno perso la possibilità di programmare in K-5, la scuola media offre una gamma più ampia di opportunità. Lentamente ma sicuramente, gli insegnanti della scuola media stanno incorporando le basi dell’informatica nel curriculum. Potrebbe non essere l’insegnamento di linguaggi specifici a questo punto, ma semplicemente l’introduzione di concetti di base e fondamenti.
“L’obiettivo è quello di imparare la teoria della programmazione”, dice Charlie King di CLEARLINK. “Se capisci come manipolare le cose con IF e loop, non importa il linguaggio. HTML/CSS/JavaScript di base è facile e ti permette di fare cose interessanti al livello più semplice. Questo può accendere il desiderio. Se questo cattura la loro attenzione, C++/Java/PHP o altri linguaggi più potenti sono comuni nel mondo reale, e divertenti da giocare.”
I bambini a questa età spesso sviluppano un interesse nell’informatica creando videogiochi o costruendo i propri siti web. Questi tipi di progetti usano la creatività per introdurre e sviluppare le abilità fondamentali.
“Il messaggio deve essere che l’informatica riguarda la creazione e la costruzione di cose belle e utili”, dice Angie Schiavoni di CodeEd. “Per esempio, lo sviluppo web, che insegniamo nelle classi CodeEd, riguarda la creatività e l’espressione di sé, non solo l’apprendimento di un mucchio di tag dall’aspetto spaventoso.”
Per quando gli studenti entreranno nella scuola superiore, non avranno paura dell’informatica. Al contrario, saranno in grado di abbracciarla e persino di perseguire studi avanzati.
Usare i giochi per imparare
I ragazzi della scuola media amano giocare, sia da soli che online. Batman, Tomb Raider e Call of Duty hanno fatto innumerevoli apparizioni sotto gli alberi di Natale o alle feste di compleanno. Come genitore o insegnante, il gioco può sembrare una distrazione dal lavoro scolastico, a meno che, naturalmente, non diventi un’opportunità educativa. Le seguenti risorse danno agli studenti delle scuole medie la possibilità di imparare cosa succede dietro lo schermo:
- Codea Codea è un’applicazione che può essere scaricata per un iPad e permette di creare giochi e simulazioni usando il linguaggio di programmazione Lua.
- CodeAvengers.com CodeAvengers.com permette agli utenti di creare giochi in JavaScript, e offre tutorial come Intro to Making Games, Intro to Graphics e Intro to Programming.
- GameInstitute.com GameInstitute.com fornisce opportunità per la programmazione, l’arte e l’animazione dei giochi e per imparare di più sulla piattaforma Unity usata nella creazione dei giochi.
- Il tutorial Hour of Code Hour of Code sponsorizzato dall’Università del Colorado a Boulder usa la programmazione drag-and-drop per aiutare i bambini a creare un videogioco 3D. Il programma è ora usato in molte scuole medie di Boulder.
- PlayBasic.com PlayBasic.com offre un linguaggio di programmazione 2D e una varietà di caratteristiche grafiche, come effetti immagine e mappatura, per creare giochi.
- StormTheCastle.com StormTheCastle.com fornisce dettagli su cosa va nella programmazione di un gioco e cosa possono fare gli studenti per iniziare a prepararsi per una carriera. Un tutorial gratuito è anche disponibile per fare e progettare un gioco.
- TeamLiquid.net TeamLiquid.net dà uno sguardo ad alcune delle diverse carriere che potrebbero essere disponibili nel gioco, tra cui la programmazione, l’arte, la progettazione e l’ingegneria.
- YouthDigital.com YouthDigital.com si rivolge a studenti dagli otto ai 16 anni e offre lezioni online per creare applicazioni e giochi.
Il mio primo sito web
Lo sviluppo del web è un altro ottimo modo per praticare l’informatica essenziale e le abilità di codifica. Gli studenti possono iniziare ad imparare l’Hyper Text Markup Language (HTML), la spina dorsale di una pagina web, così come JavaScript e Flash per aggiungere dimensione. Ecco quattro risorse per gli studenti della scuola media che cercano di costruire il loro primo sito web:
- CodeAvengers.com CodeAvengers.com fornisce opportunità per gli studenti di costruire siti web e applicazioni utilizzando HTML5 e CSS3. I corsi di Python dovrebbero essere disponibili nel 2014.
- CodeEd.org CodeEd.org invia volontari in una classe utilizzando un curriculum fornito e insegna alle ragazze come codificare costruendo un sito web.
- Lissaexplains.com Lissaexplains.com fornisce tutorial per aiutare i ragazzi a creare i propri siti web con HTML. Gli script Perl e i file .htaccess sono disponibili per gli utenti più avanzati.
- SMPlanet.com SMPlanet.com offre un tutorial in sette passi per creare un sito web, comprese le basi dei tag HTML e la visualizzazione e la modifica delle pagine.
Altre risorse
Il design dei giochi e lo sviluppo di siti web sono solo due delle molte opzioni informatiche disponibili per gli studenti della scuola media. Avete un bambino a cui piace smontare le cose? Imparare le basi dell’hardware del computer può essere il prossimo passo logico. Hai un figlio o una figlia interessato all’hacking (o, si spera, a come prevenirlo)? Lo sviluppo del software e la sicurezza informatica sono eccellenti da imparare a livello di scuola media. Per ulteriori idee e informazioni, controlla queste risorse online:
- Edutopia Edutopia fornisce le sue 7 applicazioni per insegnare ai bambini le abilità di codifica tra cui GameStar Mechanic, Hopscotch e Scratch.
- The Khan Academy The Khan Academy offre Disegno e Animazione, che fa uso di JavaScript e della libreria ProcessingJS per animare e disegnare.
- Make Your Own Flappy Bird Il tutorial Make Your Own Flappy Bird ti permette di creare il tuo gioco in soli 20 minuti ed è disponibile attraverso learn.code.org.
- Polygon Polygon offre una storia chiamata My Kids are Learning to be Better People by Learning How to Code Games.
- Hour of Code Campaign Video for Computer Science Education Week Il presidente Barack Obama sottolinea le competenze informatiche in questo breve video su YouTube che ha contribuito a dare il via alla campagna Hour of Code 2013.
- ReadWrite: 6 applicazioni di codifica per bambini ReadWrite offre un articolo intitolato Come crescere il prossimo Zuckerberg: 6 applicazioni di codifica per bambini. I suggerimenti includono provare Alice e Code Monster.
- ReadWrite: Schools Aren’t Teaching Kids to Code ReadWrite riferisce su quali gruppi stanno aiutando gli studenti ad imparare la programmazione nell’articolo Schools Aren’t Teaching Kids to Code; Here’s Who is Filling the Gap.
High School and College Prep
Secondo Education Week, solo 30.000 studenti hanno fatto il test Advanced Placement in informatica nel 2013. Meno del 20 per cento di coloro che hanno fatto il test erano donne, circa l’otto per cento erano ispanici e meno del 3 per cento erano afro-americani. Anche spaventoso può essere che in 11 stati, nessun afro-americano ha fatto l’esame, e in otto stati, nessuno studente ispanico ha fatto l’esame.
Riconoscendo la necessità di attirare gli studenti nel campo, il College Board ha deciso di lanciare una nuova classe chiamata AP Computer Science: Principles, che sarà lanciata nell’anno scolastico 2016 – 2017. Dove offerto, introdurrà gli studenti alla programmazione, ma darà loro anche un’ampia comprensione dell’informatica e delle sue numerose applicazioni.
“Quando ero al liceo, c’era molto poco a disposizione degli studenti con interesse professionale nella tecnologia”, dice Justin Rohrman, senior software tester di Sharable Ink. “Da quello che ho capito, però, molte scuole pubbliche ora offrono corsi specifici di tecnologia. Perseguire questo vi aiuterà ad essere un po’ più avanti della curva. Incoraggio anche a fare esperienza nella comunità open source con gruppi come Wikimedia Foundation (Wikipedia) e Mozilla.”
Primi passi per la preparazione all’università
Forse il modo migliore per prepararsi a una laurea in informatica è coltivare la conoscenza e le abilità in matematica e scienze di laboratorio.
“Avere una solida padronanza della matematica e della scienza aiuterà se lo studente vuole perseguire una laurea anche se non finirà mai per usarla nel ‘mondo reale'”, dice Chris Martino di SimpiVity Corporation. “La maggior parte dei programmi di CS sono pesanti in queste aree con requisiti di calcolo, statistica, fisica, ecc.”
Oltre alla matematica e ad altre scienze di laboratorio, gli studenti delle scuole superiori interessati all’informatica dovrebbero esplorare quante più specialità possibili. Non solo per capire meglio il panorama, ma per pianificare i corsi di livello universitario. Oltre all’informatica generale e alla programmazione, per esempio, alcune scuole superiori hanno iniziato a offrire classi di gestione di database, assicurazione e sicurezza delle informazioni e fondamenti di tecnologia dell’informazione (IT). Anche se ancora rari, sono in aumento.
“La mia scuola superiore offriva tre corsi di sviluppo software, e li ho seguiti tutti e tre”, ha detto Bradley Stewart di Shareable Ink. “C’era un corso di web design, uno di visual basic e uno di C++. Li raccomanderei sicuramente, se offerti, e incoraggerei apertamente tutte le scuole superiori a fornirli”. Un focus sulla matematica è altamente raccomandato durante tutta la formazione liceale se si pianifica di perseguire l’ingegneria del software.”
Molte risorse già menzionate in questa guida forniscono opportunità agli studenti delle scuole superiori per perseguire l’informatica. Le opzioni sono innumerevoli, soprattutto online, e includono fonti come Codecademy, Code.org, Coursera, Udacity e Udemy. Justin Rohrman di Shareable Ink ha un altro suggerimento.
“C’è un programma fantastico per i giovani chiamato SummerQAmp”, dice. “
Infine, quando si ricercano programmi di CS, gli studenti delle scuole superiori possono prendere in considerazione i college online che forniscono computer portatili gratuiti. Mentre i computer portatili sono utili per qualsiasi studente, sono assolutamente essenziali per le major di CS – e ogni centesimo risparmiato aiuta.
Il linguaggio di programmazione è indispensabile
Gli studenti hanno molte scelte quando si tratta di linguaggi di programmazione. Alcuni imparano le basi di diversi linguaggi mentre procedono dalla scuola superiore all’università, mentre altri si concentrano su un singolo linguaggio usato per un risultato specifico. Esempi di questi ultimi includono linguaggi compilati, linguaggi dichiarativi, linguaggi orientati agli oggetti, linguaggi di scripting e molti altri. I seguenti sette linguaggi di programmazione rappresentano i più comuni (e più importanti) che uno studente può imparare alla scuola superiore:
- C++ è un linguaggio di programmazione sviluppato dai Bell Labs e popolare per le sue applicazioni grafiche. C++ aggiunge caratteristiche orientate agli oggetti al suo predecessore, C.
- HTML è un linguaggio di markup ipertestuale usato per creare documenti World Wide Web.
- JavaScript è stato sviluppato da Netscape ed è usato per creare siti web interattivi. Anche se simile a Java, ha molte delle sue caratteristiche uniche.
- Perl sta per Practical Extraction and Report Language e usa una sintassi nel suo linguaggio di scripting che è simile al C/C++.
- PHP, che sta per hypertext preprocessor, è usato nello scripting lato server e nello sviluppo web ed è open-source e incorporabile in HTML.
- Python è un linguaggio di programmazione orientato agli oggetti con un codice open-source che ha ricevuto il suo nome da “Monty Python’s Flying Circus.”
- Ruby è un linguaggio di programmazione orientato agli oggetti che può essere usato per la programmazione quotidiana e per testare prototipi.
Risorse per la preparazione al college
Gli studenti delle scuole superiori possono essere da soli quando si tratta di trovare opportunità per l’informatica e le istruzioni di codifica. Se non possono trovare programmi nelle loro scuole, possono essere in grado di avanzare le loro conoscenze attraverso risorse online approfondite o campi estivi intensivi. Questi spesso forniscono l’accesso a istruttori esperti sia a distanza che di persona:
- Codenow.org Codenow.org fornisce opportunità per gli adolescenti in aree a basso reddito per capire come programmare attraverso l’apprendimento basato su progetti. Quasi la metà dei suoi alumni sono donne.
- Girls Who Code Girls Who Code offre un programma estivo di immersione nell’informatica focalizzato sullo sviluppo mobile, la robotica e il web design. Le ragazze acquisiscono esperienza attraverso dimostrazioni, lezioni e mentori.
- Hack Reactor Hack Reactor offre un campo di avvio di 12 settimane per affinare le abilità di ingegneria del software. Si raccomanda una precedente esperienza di codifica.
- Metis Metis è un campo di 12 settimane tenuto da istruttori a Boston che si concentra su HTML, CSS e Ruby on Rails. Il campo è costoso, ma rende disponibili borse di studio per donne, minoranze e veterani.
- Silicon Valley Code Camp Silicon Valley Code Camp è offerto gratuitamente e gestito da sviluppatori per gli sviluppatori per affrontare argomenti come il branding o problemi legali.
- ScriptEd.org ScriptEd.org è un’altra organizzazione che fornisce educazione alla programmazione in aree a basso reddito attraverso partnership con volontari.
- Square Square ha ampliato il suo campo di codifica dal solo college alle ragazze delle scuole superiori nella Silicon Valley e fornisce istruzioni attraverso gli ingegneri Square e altri insegnanti.
- SummerQAmp Il programma SummerQAmp è stato fondato nel 2012 come parte della White House Summer Jobs+Initiative ed è stato l’idea del co-fondatore di GroupMe Steve Martocci e, sì, il rocker-attore Jon Bon Jovi e altri. Offre stage agli studenti che sono interessati al controllo della qualità, uno dei tanti campi dell’informatica.
- AmplifyCS AmplifyCS è il primo MOOC AP Computer Science che offre un’istruzione online mista con supporto, tutto gratuito. Gli studenti imparano Java e dovrebbero essere preparati a sostenere l’esame AP in informatica.
- Coursera Coursera.org offre Beginning Game Programming with C# che include l’uso di Unity, un motore di gioco popolare tra gli sviluppatori indie.
- DigitalMediaAcademy DigitalMediaAcademy fornisce istruzione nello sviluppo di app, game design e applicazioni iPhone in campi disponibili in tutti gli Stati Uniti.I campi estivi disponibili in particolare all’Università di Chicago includono Programmazione di giochi, Programmazione Java e Programmazione 101.
- Stanford University Open Classroom Openclassroom.stanford.edu è gestito dalla Stanford University e offre corsi gratuiti come Progettazione e analisi di algoritmi, e Introduzione ai database e Unix pratico.
- Institute for Mathematics and Computer Science Institute for Mathematics and Computer Science offre lezioni AP e corsi di livello universitario in informatica, nonché aiuto per preparare gli esami AP Computer Science e AP Calculus.
- University of California Online University of California Online offre Computer Science for Science, Mathematics, and Engineering I che può essere di interesse per gli studenti avanzati della scuola superiore o di transizione al college.
Start Your Computer Science Education Today
Ricorda, ci sono poche ragioni per aspettare fino al college per iniziare a sviluppare le tue abilità di computer science e coding. Il mondo connesso è il mondo del futuro e sia che tu decida di lavorare strettamente nell’informatica e nella programmazione, o di passare a campi come l’assistenza sanitaria o la scienza spaziale, puoi aiutare a costruire e progettare i programmi e le tecnologie. La cosa eccitante è che molte di queste tecnologie sono ancora da vedere. È già chiaro che la programmazione e il coding sono la base per tante idee nuove e progressive, il che fa sorgere la domanda: Sei pronto a plasmare il futuro?
Lascia un commento