Beauty and Joy of Computing: verschil tussen versies
(→Snap!) |
|||
(5 tussenliggende versies door dezelfde gebruiker niet weergegeven) | |||
Regel 1: | Regel 1: | ||
Beauty and Joy of Computing (BJC) is een cursus die oorspronkelijk is ontwikkeld aan de Universiteit van Californië in Berkeley, als inleiding informatica voor niet-informatica-studenten. Het materiaal van deze cursus is later ook aangepast aan het Voortgezet Onderwijs (High School), zie https://bjc.berkeley.edu. Het materiaal is vrij beschikbaar (Creative Commons – BY-SA-NC). Inmiddels is een groep vrijwilligers, van VO-leerling tot hoogleraar informatica, begonnen met het vertalen van dit materiaal in het Nederlands. Dit materiaal, als geheel of in delen, lijkt goed bruikbaar voor het Nederlandse informatica-onderwijs, zowel voor het keuzevak informatica in de bovenbouw VO, als voor digitale geletterdheid in de onderbouw. | Beauty and Joy of Computing (BJC) is een cursus die oorspronkelijk is ontwikkeld aan de Universiteit van Californië in Berkeley, als inleiding informatica voor niet-informatica-studenten. Het materiaal van deze cursus is later ook aangepast aan het Voortgezet Onderwijs (High School), zie https://bjc.berkeley.edu. Het materiaal is vrij beschikbaar (Creative Commons – BY-SA-NC). Inmiddels is een groep vrijwilligers, van VO-leerling tot hoogleraar informatica, begonnen met het vertalen van dit materiaal in het Nederlands. Dit materiaal, als geheel of in delen, lijkt goed bruikbaar voor het Nederlandse informatica-onderwijs, zowel voor het keuzevak informatica in de bovenbouw VO, als voor digitale geletterdheid in de onderbouw. | ||
De voorlopige Nederlandstalige versie is te vinden op: | De voorlopige Nederlandstalige versie is te vinden op: http://bjoc.nl. | ||
Na de inleiding op dit onderwerp kunnen docenten zelf met het materiaal aan de slag – om te oefenen, of om te vertalen. Er is hierbij ruim gelegenheid voor het stellen van vragen en voor interactie met collega’s. | Na de inleiding op dit onderwerp kunnen docenten zelf met het materiaal aan de slag – om te oefenen, of om te vertalen. Er is hierbij ruim gelegenheid voor het stellen van vragen en voor interactie met collega’s. | ||
Regel 57: | Regel 57: | ||
== Snap! == | == Snap! == | ||
De programmeertaal die in het materiaal gebruikt wordt is Snap! Dit is een “volwassen” blokjestaal. De taal is gebaseerd op de functionele programmeertaal Scheme (een Lisp-variant), met de blokjes-vormgeving en interactieve omgeving van Scratch. | De programmeertaal die in het materiaal gebruikt wordt is Snap''!'' (https://snap.berkeley.edu) Dit is een “volwassen” blokjestaal. De taal is gebaseerd op de functionele programmeertaal Scheme (een Lisp-variant), met de blokjes-vormgeving en interactieve omgeving als van Scratch. | ||
Snap''!'' heette eerder wel Build Your Own Blocks, maar de afkorting daarvan was in het VO in de VS niet welkom... | |||
== Opbouw van het materiaal == | == Opbouw van het materiaal == | ||
Regel 78: | Regel 80: | ||
== Nederlandse vertaling == | == Nederlandse vertaling == | ||
Een team van vrijwilligers, van middelbare scholieren tot professionele informatici, is bezig om het materiaal van BJC te vertalen in het Nederlands. De vertaalde versie, in de huidige status, vind je op: https://github.com/BJOC-NL/bjoc-nl.github.io Dit is een statische website gepubliceerd met Github Pages. De bijbehorende Github repository vind je op: https://github.com/BJOC-NL/bjoc-nl.github.io. | Een team van vrijwilligers, van middelbare scholieren tot professionele informatici, is bezig om het materiaal van BJC te vertalen in het Nederlands. De vertaalde versie, in de huidige status, vind je op: https://github.com/BJOC-NL/bjoc-nl.github.io Dit is een statische website gepubliceerd met Github Pages. (De URL http://bjoc.nl verwijst nu naar deze Github Pages website.) De bijbehorende Github repository vind je op: https://github.com/BJOC-NL/bjoc-nl.github.io. | ||
=== Vertaalbijeenkomsten === | === Vertaalbijeenkomsten === | ||
Regel 142: | Regel 144: | ||
Opmerking. In het geval van BJoC-NL is hypothesis onderdeel van de webpagina. Je kunt hypothes.is ook gebruiken voor documenten en websites die hypothes.is niet ingebouwd hebben. | Opmerking. In het geval van BJoC-NL is hypothesis onderdeel van de webpagina. Je kunt hypothes.is ook gebruiken voor documenten en websites die hypothes.is niet ingebouwd hebben. | ||
== Forum == | |||
Op het i&i forum is een plekje ingeruimd voor Beauty and Joy of Computing en het vertaalproces: https://ieni-forum.infvo.nl/c/lesmateriaal/bjoc-nl. Als je je voor het forum aangemeld hebt, kun je daar je vragen en opmerkingen plaatsen. |
Huidige versie van 10 okt 2019 om 10:18
Beauty and Joy of Computing (BJC) is een cursus die oorspronkelijk is ontwikkeld aan de Universiteit van Californië in Berkeley, als inleiding informatica voor niet-informatica-studenten. Het materiaal van deze cursus is later ook aangepast aan het Voortgezet Onderwijs (High School), zie https://bjc.berkeley.edu. Het materiaal is vrij beschikbaar (Creative Commons – BY-SA-NC). Inmiddels is een groep vrijwilligers, van VO-leerling tot hoogleraar informatica, begonnen met het vertalen van dit materiaal in het Nederlands. Dit materiaal, als geheel of in delen, lijkt goed bruikbaar voor het Nederlandse informatica-onderwijs, zowel voor het keuzevak informatica in de bovenbouw VO, als voor digitale geletterdheid in de onderbouw. De voorlopige Nederlandstalige versie is te vinden op: http://bjoc.nl.
Na de inleiding op dit onderwerp kunnen docenten zelf met het materiaal aan de slag – om te oefenen, of om te vertalen. Er is hierbij ruim gelegenheid voor het stellen van vragen en voor interactie met collega’s.
Als alternatief is het ook mogelijk om te werken aan andere opdrachten – o.a. op het gebied van Physical Computing, Internet of Things, NoSQL databases – om de eigen kennis en vaardigheden op een hoger niveau te brengen. Er is materiaal aanwezig (incl. hardware) met opdrachten die grotendeels zelfstandig uitgevoerd kunnen worden. Voor de lastige vragen is er deskundige begeleiding.
Het beschikbare materiaal kan gebruikt worden voor het vergroten van de eigen vakkennis – maar het kan ook ingezet worden voor de eigen leerlingen.
- BJoC is ook als (Engelstalige) MOOC beschikbaar op edX, zie: https://bjc.link/bjcedx
Beauty and Joy of computing
Inleiding
Beauty and Joy of Computing is oorspronkelijk ontwikkeld als cursus “informatica voor niet-informatica-studenten”, aan de Universiteit van Berkeley. Van deze succesvolle cursus is later een versie gemaakt voor het voortgezet onderwijs. Dit is een keuzevak Computer Science (CS) Principles in het Advanced Placement (AP)-programma voor de bovenbouw. Deze cursus vind je via https://bjc.edc.org. (en https://bjc.edc.org/bjc-r/course/bjc4nyc.html). Deze cursus voldoet aan de exameneisen van het AP-CS Principles onderdeel. (Zie: https://apcentral.collegeboard.org/courses/ap-computer-science-principles)
Deze VO-versie wordt nu vertaald naar het Nederlands, door een team van vrijwilligers.
Onderdelen van deze cursus zijn ook “los” te gebruiken. En waarschijnlijk is een deel van materiaal ook goed te gebruiken voor de onderbouw, bijvoorbeeld in het kader van Digitale geletterdheid.
Opmerking: de oorspronkelijke universitaire cursus lijkt ook erg geschikt voor het nascholen van docenten als basis voor Digitale geletterdheid. Zie:
Opmerking: de exameneisen van CS Principles komen niet noodzakelijk overeen met de Nederlandse exameneisen. We moeten nog een check hierop doen, en een “vertaaltabel” om het docenten gemakkelijker te maken hun PTA op te stellen.
Het boek: Blown to Bits
Onderdeel van de oorspronkelijke cursus is het boek Blown to Bits (http://www.bitsbook.com). Zoals je ziet is de inhoud van dit boek online beschikbaar (als PDF download).
In het materiaal wordt regelmatig verwezen naar dit boek. Het ligt voor de hand om het boek t.z.t. ook te vertalen. Het boek is onder de CC-BY-SA-NC licentie beschikbaar.
Het boek wordt ook gebruikt om leerlingen na te laten denken over de individuele en maatschappelijke gevolgen van ICT. In de oorspronkelijke colleges werden vaak kort twee actuele thema’s behandeld, één waar ICT een duidelijk positieve impact heeft, en één waar de gevolgen op een negatieve manier uit de hand kunnen lopen.
Creative Commons licentie
Het online-materiaal en het boek Blown to Bits zijn beschikbaar onder een Creative Commons-BY-SA-NC licentie. Dit betekent voor ons dat het materiaal vertaald kan worden en vrij gebruikt kan worden - op niet-commerciële basis. Het vertaalde materiaal moet onder dezelfde condities aangeboden worden (“share alike”).
Deze licentie is beperkter dan de Wikipedia licentie (CC-BY-SA): commercieel aanbieden is niet toegestaan.
Geschiedenis
Een deel van de inspiratie van Beauty and Joy of Computing komt van de cursus Structure and Interpretation of Computer Programs (SICP). Deze cursus is jarenlang aan MIT gegevens als één van de “core” cursussen voor studenten Computer Science. Eén van de auteurs van die cursus, Hal Abelson, is ook auteur van BJC en van Blown to Bits.
Het materiaal van SICP, inclusief video’s van de originele colleges, is online te vinden.
https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-001-structure-and-interpretation-of-computer-programs-spring-2005/ https://mitpress.mit.edu/sites/default/files/sicp/index.html https://en.wikipedia.org/wiki/Structure_and_Interpretation_of_Computer_Programs SICP gebruikt Scheme als programmeertaal.
Beauty and Joy of Computing is oorspronkelijk ontwikkeld aan de University of Berkeley als cursus CS for non-CS students.
Ook aan andere universiteiten zijn dergelijke cursussen ontwikkeld: deze vormen tegenwoordig vaak het meest populaire cursussen van de universiteit. Een ander voorbeeld is CS50, van Harvard. (https://online-learning.harvard.edu/course/cs50-introduction-computer-science)
Snap!
De programmeertaal die in het materiaal gebruikt wordt is Snap! (https://snap.berkeley.edu) Dit is een “volwassen” blokjestaal. De taal is gebaseerd op de functionele programmeertaal Scheme (een Lisp-variant), met de blokjes-vormgeving en interactieve omgeving als van Scratch.
Snap! heette eerder wel Build Your Own Blocks, maar de afkorting daarvan was in het VO in de VS niet welkom...
Opbouw van het materiaal
- Introduction to programming (in Snap!)
- Abstraction
- Data processing and lists
- How the Internet works
- Algorithms and simulations
- How computers work
- Fractals and recursion
- Recursive functions
De onderdelen 1-6 leiden op voor het AP-CS Principles examen. 7 en 8 zijn extra, voor leerlingen die een leuke uitdaging zoeken.
Het materiaal is opgedeels in units, labs en pages. “Lab” is in het Nederlands vertaald als “Les”, hoewel dit niet met een lesuur overeen hoeft te komen.
(Nog uitzoeken: wat is de totale omvang, in SLU, van het AP-CS Principles programma?)
Nederlandse vertaling
Een team van vrijwilligers, van middelbare scholieren tot professionele informatici, is bezig om het materiaal van BJC te vertalen in het Nederlands. De vertaalde versie, in de huidige status, vind je op: https://github.com/BJOC-NL/bjoc-nl.github.io Dit is een statische website gepubliceerd met Github Pages. (De URL http://bjoc.nl verwijst nu naar deze Github Pages website.) De bijbehorende Github repository vind je op: https://github.com/BJOC-NL/bjoc-nl.github.io.
Vertaalbijeenkomsten
Er worden vertaalbijeenkomsten georganiseerd waar iedereen die een bijdrage wil en kan leveren welkom is. In het bijzonder zijn ook VO-leerlingen welkom: enige kennis van informatica, Engels en Nederlands(!) is wel vereist.
Vertaalregels
Het bestand https://github.com/eelcodijkstra/BJOC-NL/blob/master/shared/glossary%20%26%20decisions.md bevat een aantal regels voor het vertalen. De glossary is een lijst van veel voorkomende termen en hun vertaling.
Dit bestand zal in de toekomst verder uitgebreid worden.
Gebruik van Github
Zoals gezegd is BJC is een statische website, gepubliceerd via Github Pages.
Bij het vertaalproces wordt Github gebruikt, met de Github Flow. Hiervoor heb je een eigen (gratis) Github account nodig.
Github Pages
BJoC is een statische website: je hebt geen server nodig met server-side scripting en een database, alleen een server die de verschillende bestanden oplevert via de bijbehorende URL. Github Pages kan een repository (of een deel daarvan) publiceren als een statische website.
Github Flow
De manier van werken is de volgende:
- je maakt (onder je eigen Gihub account) een eigen fork van de repository: https://github.com/BJOC-NL/bjoc-nl.github.io
- het is handig om deze fork te publiceren via Github Pages: je kunt dan direct het resultaat van je veranderingen zien;
- als je je eigen vertaling compleet hebt, dan kun je deze indienen via een Github Pull Request. Deze wordt dan na goedkeuring toegevoegd aan de gemeenschappelijke versie.
Dit is de normale manier van werken met open source software op Github: de Github flow. Zie voor een uitleg: https://guides.github.com/introduction/flow/
Opmerking: in deze uitleg wordt een branch gebruikt waar wij een fork gebruiken: een branch gebruik je binnen een project, waar de teamleden allemaal (schrijf)toegang tot dezelfde repository hebben. Een fork kun je zien als een branch buiten het project.
Gebruik van een lokale kopie (clone)
In veel gevallen is het handig om van je eigen repo een clone (kopie) op je eigen computer te maken. Deze kun je dan lokaal bewerken - en eventueel ook lokaal previewen.
Voor het werken met een lokale kopie zijn de volgende hulpmiddelen handig:
- Github Desktop - voor het synchroniseren tussen de lokale kopie en je Github repo.
- Atom - de teksteditor van Github; elke andere teksteditor is in principe bruikbaar, maar deze is goed geïntegreerd met Github.
- Atom live server - een plugin voor Atom om als server te dienen, waardoor je direct een preview op je eigen computer krijgt. (Deze plugin kun je vanuit Atom installeren.)
Een alternatief voor Atom is Brackets: ook deze heeft een ingebouwde webserver voor een lokale preview.
Vertalen met hypothesis
Met https://hypothes.is kun je opmerkingen maken bij webpagina’s (en PDF-documenten). Deze opmerkingen kun je delen met andere gebruikers. Voor het gebruik van hypothes.is heb je een (gratis) account nodig.
Hypothes.is heeft een eigen rechter zijbalk bij elke pagina. Hierin kun je opmerkingen over de pagina maken, of over geselecteerde onderdelen daarin. Deze zijbalk kun je rechts bovenin wegklappen of zichtbaar maken.
Wij gebruiken hypothes.is om zonder Github snel en eenvoudig een pagina te vertalen. Het resultaat moet dan door een editor via Github verwerkt worden.
In het onderstaande gaan we er van uit dat je een (gratis) hypothes.is account hebt. Zorg er vervolgens voor dat je in hypothesis toegang hebt tot de groep: InfVO-BJoC. Hiervoor kun je uitgenodigd worden, stuur mij even een email of een verzoek via het forum.
Voor het vertalen van de internet-module van BJC gebruiken we de volgende manier van werken:
- Selecteer op een webpagina van https://eelcodijkstra.github.io/BJOC-NL een zin die je wilt vertalen. Je krijgt dan een hypothesis pop-up window.
- Klik hierin op “annotate”, en voer de vertaling in in hypothes.is (rechter zijbalk).
- Laat je vertaling door anderen controleren - zij kunnen op je vertaling reageren in hypothes.is.
- Werk je vertaling eventueel bij aan de hand van de feedback.
- Ik verwerk je vertalingen in de GitHub repo.
Je kunt ook met je leerlingen aan de slag om een pagina te vertalen. Maak dan zelf een groep aan in hypothes.is, en nodig je leerlingen daarvoor uit. En nodig ook mij voor die groep uit, zodat ik toegang heb tot jullie vertalingen.
Opmerking. In het geval van BJoC-NL is hypothesis onderdeel van de webpagina. Je kunt hypothes.is ook gebruiken voor documenten en websites die hypothes.is niet ingebouwd hebben.
Forum
Op het i&i forum is een plekje ingeruimd voor Beauty and Joy of Computing en het vertaalproces: https://ieni-forum.infvo.nl/c/lesmateriaal/bjoc-nl. Als je je voor het forum aangemeld hebt, kun je daar je vragen en opmerkingen plaatsen.