ICT - De filosofie van het programmeren

ICT - De filosofie van het programmeren

Info startweek

  • In deze quest zal je je praktische kennis over programmeren aanvullen met meer filosofische kennis over wat goede code is en hoe je die maakt. Je gaat een aantal filmpjes kijken waarop je gaat reflecteren.
  • 10 XM
  • Je maakt deze quest alleen
  • Coaches die de quest begeleiden: Meneer Coughlan
  • Begeleiding met Blox, aantal en start: Bij elk ICT blox kun je aanschuiven met vragen.
  • Building Learning Power: je traint bij deze opdracht vooral je reflectief vermogen
  • Belangrijkste opbrengsten: Essay over hetgeen je geleerd hebt en wat je daar van vindt

Voorwaarde voor deze quest is dat je de quests: "Programmeren is creeeren" en "Maak je eigen arcade game" afgerond hebt.

Aan aantal filmpjes zijn in het engels en het niveau is hoog. Deze quest is echt voor de programmeer die hards.

Jij begint

Motivatiemotor

➜ Maak een tegel aan in Egodact. Beschrijf daarin waarom je deze quest tot een goed einde zou willen brengen. 

 

Verderkijker

Dit is inleidende tekst. Gebruik niet meer tekst dan strikt noodzakelijk is. Formuleer in actieve zinnen.

Dit is een leestekst, die doen we in een ander kleurtje.

➜ Maak deze opdracht. Opdrachten beginnen met een gebiedende wijs: 'maak', 'lees', ...
 

➜ Geef ook aan wat er met het resultaat van de opdracht moet gebeuren. Bijvoorbeeld: zet je resultaat in seesaw en zet een link daar naartoe in je logboek van je tegel in egodact.
 

➜ Zet opdrachten in een 'special container'.

➜ Begin elke stap van je opdracht met een ➜ (kopieer en plak).

Wat ga je doen?

Je gaat een aantal filmpjes bekekijken over 2 programmeurs. De nederlander Edsger Dijkstra en de amerikaan Uncle Bob (Robert Cecil Martin). Na elk filmpje beantwoord je een aantal vragen en schrijf je een kort stukje over hetgeen je geleerd hebt van het filmpje.

 

Edsger Dijkstra

Edsger Dijkstra is een bekende nederlandse informaticus. Hij was 1 van de eerste programmeurs en heeft belangrijke bijdragen gelevert in de ontwikkeling van het programmeren. Kijk het onderstaande filmpje wat een portret is van deze markante en inspirerende man.

Beantwoord de volgende vragen in een kort essay en plaats dat in seesaw/egodact.

  • Wat is de belangrijkste les die je uit dit filmpje hebt geleerd?
  • Waarom werdt Dijkstra's methode van "foutloos" programmeren door bedrijven niet enthausiast ontvangen?
  • Wat betekend elegantie met betrekking tot programmeren en waarom vindt Dijkstra dat belangrijk?
  • Wat is Dijkstra's bekendste algoritme?
  • Welk verschil zag Dijkstra tussen Nederlandse en Amerikaanse universiteiten en waarom koos hij er voor om zich in Amerika te vestigen.
  • Waarom werkte dijkstra zijn algoritmes/programma's liever uit op papier dan op de computer?

Uncle Bob

Uncle Bob is een programmeur van het eerste uur met een liefde voor clean code, code die niet alleen werkt maar ook efficent en netjes is. Je gaat drie filmpjes kijken uit een workshop reeks die hij gegeven heeft aan de Rabobank. Als je de code in de voorbeelden niet begrijpt geen paniek. Ook verwacht ik niet dat je alles zult begrijpen, probeer te focussen op de algemene boodschap over het belang van clean code en hoe je over programmeren kunt nadenken. Maak per filmpje een kort essay waarin je een aantal vragen beantwoord en plaats het in seesaw/egodact.

 

Kijk van het volgende filmpje in iedergeval de onderstaande stukken. De rest mag je natuurlijk ook kijken als je dat leuk vindt, is heel leerzaam.

  • 10:52 - 1:05:36
  • 1:39:21 tot eind

  • Wat is clean code?
  • Waarom vindt uncle Bob het belangrijk om je code op te breken in functies die maar 1 ding doen?
  • Wat heb je allemaal geleerd van dit flmpje?
  • Edsger Dijkstra hoopte dat we als programmeurs altijd zouden bewijzen dat onze code correct is, zoals we dat doen bij wiskundige stellingen. Dit is echter niet wat we nu doen. Waarom lijkt programmeren meer op wetenschap dan op wiskunde?
  • Waarmee ben je het eens?
  • Waarmee ben je het oneens?

 

Kijk van het volgende filmpje in iedergeval de onderstaande stukken. De rest mag je natuurlijk ook kijken als je dat leuk vindt, is heel leerzaam.

  • 17:25 - 42:35

  • Wat is een Agile workflow?
  • Wat zijn de voordelen van een Agile workflow?
  • Wat zijn de nadelen van een Agile workflow?
  • Wat betekent het om je code te testen?
  • Waarom is het belangrijk om vaak je code te testen?
  • Wat heb je allemaal geleerd van dit flmpje?
  • Waarmee ben je het eens?
  • Waarmee ben je het oneens?

 

Kijk van het volgende filmpje in iedergeval de onderstaande stukken. De rest mag je natuurlijk ook kijken als je dat leuk vindt, is heel leerzaam.

  • 15:27 - 52:41
  • 1:10:33 - 1:15:14

  • Wat is software architectuur
  • Wat zijn kenmerken van een goede architectuur?
  • Wat zijn kenmerken van een slechte architectuur?
  • Wat is de Eisenhower matrix?
  • Wat heb je allemaal geleerd van dit flmpje?
  • Waarmee ben je het eens?
  • Waarmee ben je het oneens?

 

  • Het arrangement ICT - De filosofie van het programmeren is gemaakt met Wikiwijs van Kennisnet. Wikiwijs is hét onderwijsplatform waar je leermiddelen zoekt, maakt en deelt.

    Laatst gewijzigd
    2022-06-28 12:42:40
    Licentie

    Dit lesmateriaal is gepubliceerd onder de Creative Commons Naamsvermelding 4.0 Internationale licentie. Dit houdt in dat je onder de voorwaarde van naamsvermelding vrij bent om:

    • het werk te delen - te kopiëren, te verspreiden en door te geven via elk medium of bestandsformaat
    • het werk te bewerken - te remixen, te veranderen en afgeleide werken te maken
    • voor alle doeleinden, inclusief commerciële doeleinden.

    Meer informatie over de CC Naamsvermelding 4.0 Internationale licentie.

    Aanvullende informatie over dit lesmateriaal

    Van dit lesmateriaal is de volgende aanvullende informatie beschikbaar:

    Toelichting
    In deze quest zal je je praktische kennis over programmeren aanvullen met meer filosofische kennis over wat goede code is en hoe je die maakt.
    Eindgebruiker
    leerling/student
    Moeilijkheidsgraad
    gemiddeld
    Studiebelasting
    4 uur en 0 minuten

    Gebruikte Wikiwijs Arrangementen

    Wams, Lynn. (2022).

    Template quest (QQCG)

    https://maken.wikiwijs.nl/187451/Template_quest__QQCG_

  • Downloaden

    Het volledige arrangement is in de onderstaande formaten te downloaden.

    Metadata

    LTI

    Leeromgevingen die gebruik maken van LTI kunnen Wikiwijs arrangementen en toetsen afspelen en resultaten terugkoppelen. Hiervoor moet de leeromgeving wel bij Wikiwijs aangemeld zijn. Wil je gebruik maken van de LTI koppeling? Meld je aan via info@wikiwijs.nl met het verzoek om een LTI koppeling aan te gaan.

    Maak je al gebruik van LTI? Gebruik dan de onderstaande Launch URL’s.

    Arrangement

    IMSCC package

    Wil je de Launch URL’s niet los kopiëren, maar in één keer downloaden? Download dan de IMSCC package.

    Meer informatie voor ontwikkelaars

    Wikiwijs lesmateriaal kan worden gebruikt in een externe leeromgeving. Er kunnen koppelingen worden gemaakt en het lesmateriaal kan op verschillende manieren worden geëxporteerd. Meer informatie hierover kun je vinden op onze Developers Wiki.