Leerlingen van City College of New York doen praktijkervaring op in de cloud

In plaats van het weinige geld dat ze hadden te gebruiken om een nieuwe infrastructuur te bouwen, besloot City College of New York met behulp van Google Cloud Platform hun studenten te leren over open source-technologieën als virtualisatie en containers. Studenten krijgen nu belangrijke, praktische training voordat ze echt in de informatica gaan werken.

Informatica-afdelingen moeten onderwijs en trainingen bieden voor de nieuwste technologieën op de werkplek. Tegenwoordig is dat de cloud en daaraan gekoppelde technologieën, zoals virtualisatie. De meeste universiteiten hebben echter niet de middelen om een nieuwe infrastructuur te bouwen waarop deze technologieën kunnen worden ondersteund. Bovendien gaan de veranderingen zo snel, dat het bijna onmogelijk is up-to-date te blijven met de nieuwste platforms, tools en talen.

De docenten van City College of New York (CCNY) wilden studenten praktijkervaring bieden met virtualisatie, containers en andere cloudtechnologieën. Deze onderwerpen werden niet echt behandeld in hun huidige studieboeken en het andere lesmateriaal. CCNY moest een nieuwe strategie bedenken waarmee ze op een betaalbare, praktische manier de nieuwste ontwikkelingen in computing konden bijhouden.

“Veel informaticaprogramma's zijn nogal theoretisch en ouderwets in hun benadering van belangrijke gegevensstructuren, algoritmen en besturingssystemen”, zegt Peter Barnett, adjunct-informaticaprofessor op CCNY. “Studenten moeten leren om buiten het oude stramien te denken. We moeten onze studenten leren informatica-expert te worden op alle gebieden.”

Begrijpelijk informaticaonderwijs ontwikkelen met Google Cloud Platform

Barnett werd gewezen op de onderwijsbeurzen van Google Cloud Platform (GCP) door Lindsay Siegel, de algemeen directeur van het Zahn Innovation Center, een incubator op CCNY met een bootcamp voor beginners, mentoren, gratis services en snelle prototypefaciliteiten.

Toen Barnett met zijn klas begon te werken met GCP, gaf hij zijn studenten een opdracht waardoor ze zouden nadenken over hoe cloudplatforms elementen van traditionele besturingssystemen en app-servers implementeren. Hij vroeg ze na te denken over de volgende vragen: Waar ben je nu? In een container of een virtuele machine? Hoe weet je of je op een bepaalde server of in een bepaald cluster van gedistribueerde machines bent?

Studenten mochten kiezen of ze wilden werken met GCP of een andere provider van cloudtechnologie. Barnett zei dat de veel studenten die voor GCP kozen, aangaven dat de trainingen erg intuïtief waren, waardoor ze eenvoudig aan de slag konden met het importeren van gegevens en het maken van apps. Ze kregen ondersteuning van het team van GCP en de professoren van CCNY als ze tegen problemen aanliepen in hun projecten.

Sommige studenten werkten met Google App Engine, waarmee ze ontdekten hoe containers werken. Anderen volgden de training voor het maken van apps in Google Compute Engine. Alle studenten leerden hoe ze hun virtuele machine- of containeromgevingen konden verkennen met Linux-opdrachten. Daarnaast verkenden ze hun database-backends met SQL-opdrachten.

Leerlingen aanmoedigen te denken als engineers

Door zichzelf onder te dompelen in het cloudplatform, werden studenten aangemoedigd conceptueel te denken over de cloud en te begrijpen dat ze, zelfs in de cloud, nog steeds hardware gebruiken. Ze lazen artikelen, bekeken trainingen en experimenteerden met wat ze binnen en buiten de containers konden doen. Ze leerden over geheugen en CPU-gebruik, hoe virtuele opslag wordt geleverd en hoe hun IP-adressen worden opgehaald.

Drie studenten (Nissan, James en Michael) deden meer dan alleen een voorbeeld-app maken (de minimale vereiste). “Ze importeerden hun eigen opslagplaatsen en maakten hun eigen apps. De apps werkten prima en de studenten kregen een goed beeld van hoe Google als een werkomgeving functioneert”, zegt Barnett.

Het hoe en waarom begrijpen

Wanneer studenten worden aangemoedigd hun eigen vragen te stellen, ontdekken ze veel meer over een onderwerp. Tijdens een deel van hun oefeningen noteerden de studenten hoelang het duurde voordat een app reageerde, gebaseerd op de locatie ervan (de VS of het Verenigd Koninkrijk). Hierdoor dachten ze nog dieper na over waar fysieke computingbronnen zich bevinden. Een student implementeerde de MySQL-database van GCP in zijn cloudproject en verkende het om te kijken waar de systeembestanden worden opgeslagen.

Barnett moedigde zijn leerlingen aan te leren over de cloudtechnologieën die ze het interessantst vonden. Sommige leerlingen gebruikten Kubernetes om containers te beheren, anderen experimenteerden met load balancing in MongoDB. Vervolgens deelden de leerlingen hun ervaringen met elkaar, om de verschillende omgevingen beter te leren begrijpen.

"Studenten gaan niet werken met harde, metalen servers. De cloud is niet alleen de toekomst, hij is het hier en nu."

Peter Barnett, Universitair hoofddocent Informatica, City College of New York

Verder dan de demo

Studenten in het scriptieprogramma van professor Barnett op CCNY gebruiken GCP momenteel om het backend-gedeelte te implementeren van serieuze softwareprojecten met belangrijk wetenschappelijk, maatschappelijk en bedrijfspotentieel.

De projecten van zijn vijf teams zijn: de optische tekenherkenning van handgeschreven tekens verbeteren met machine learning; trainers, fysiotherapeuten en hun cliënten helpen oefeningen op de juiste manier uit te voeren; het zoeken naar patenten verbeteren met contentanalyses en machine learning; metrostations en andere openbare plekken in kaart brengen zodat mensen met een visuele beperking daarin beter de weg kunnen vinden; en quasiwillekeurige muziek maken met AI, die verandert als reactie op gebruikersfeedback.

Voor de meeste van deze projecten wordt AI gebruikt in de vorm van contentanalyse en machine learning. GCP biedt betrouwbare API's, zoals ML-Engine en BigQuery, om hierbij te helpen. Het team van Google for Education gaf elk van Barnett's teams ook gratis tijd om te werken op GCP, zodat ze hun programma's konden ontwikkelen en testen. Dit vindt momenteel plaats.

Levensechte ervaringen opdoen

Als studenten succesvol willen zijn in de informatica, moeten ze zowel de theorie als de praktijktoepassingen kennen van de tools die tegenwoordig in het bedrijfsleven worden gebruikt. Met cloudservices als GCP heeft CCNY toegang tot de beste ontwikkelaarstools en een grote cloudinfrastructuur, zonder dat ze van tevoren een grote investering moeten doen. Studenten leren met veel talen en cloudplatforms te werken, zoals Python, Ruby, Sinatra en GCP. Deze tools en talen liggen voor de meeste scholen buiten bereik, omdat ze met hun beperkte middelen niet zo'n grote variatie aan technologieën kunnen aanbieden. GCP biedt een betaalbare manier om toegang te krijgen tot moderne computingomgevingen en is schaalbaar, zodat alle studenten en afdelingen er gebruik van kunnen maken.

“De cloudomgeving is de moderne versie van het besturingssysteem”, zegt Barnett. “Studenten gaan niet werken met fysieke, metalen servers. De cloud is niet alleen de toekomst, hij is het hier en nu.”

Hartelijk dank voor je aanmelding.

Laat ons weten waarin je geïnteresseerd bent.