Richtlijnen voor Pascal's programeer opdrachten


In de opdracht threat mogen enkel bijdragen geplaats worden:
Geen discussies in de opdracht-threat, open daar maar een eigen threat voor.
Wie wel zit te leuteren wordt bij voorbaat al gediskwalificeerd,
en de opmerking wordt zonodig verwijderd !
Waneer de eindbeoordeling is geweest, komt deze regel te vervallen.

Aleen de eerste bijdrage telt:
Blijken er achteraf fouten in je programma te zitten,
pech gehad, had je maar beter moeten opletten.
Zorg dus dat je jouw programma goed controleert !

Geposte programma wordt automatisch Open Source Software
Lijkt me iha geen probleem.

Header
In de eerste programmaregels van je bijdrage
vermeld je de titel en functie van je programma,
en verklaar je jezelf als autheur van de code.

Geleende code of ideeen
Waneer je ideeen of programma delen van iemand anders of een ander project
gebruikt, dan dien je de autheur daarvan te vermelden.

Programeertaal naar vrije keuze:
De gekozen taal moet echter wel met OpenSource middelen uitvoerbaar zijn.
Nee ik zit echt niet te wachten op Fortran of SPARC assembly oplossingen,
maar hoewel dit een nogal onpraktische regel is,
wil ik deze er graag in houden om 'inoviteit (braak)' te promoten.

Het programma moet kunnen draaien op een 'average' Linux systeem
Een gangbaar Linux systeem is een systeem waarop gangbare software
staat geinstaleerd.
TomsRootBoot is geen gangbare Linux systeem omdat het te minimalistisch is.
SuSe 12.8 waarvan DVD 1 t/m 12 voledig zijn geinstaleerd is ook geen gangbaar susteem.
Fedora 2 waarvan bij de instalatie is gekozen voor een 'recommended' instalatie,
mag je als een gangbaar systeem beschouwen.
Enige redelijke mate van beoordeling in deze is dus wel gewenst.

Het programma mag enkel van gangbare libraries gebruik maken:
Lijkt me duidelijk,
/lib/libgtk.so is een ganbare lib
/usr/lib/mijnzooi/libpokiemon.so is dat dus niet !
Dit allemaal dus naar redelijkheid, de meeste systemen hebben b.v. standaard geen DBD module voor PERL geinstaleerd, wil je echter op een redelijke wijze gebruik maken van een MySQL is dat wel haast een vereiste, en dus toegestaan.

Beschrijf de procedure die nodig is om het programma uit te voeren
Voor een C programma geld b.v. dat je vermeld hoe het gecompileerd dient te worden,
en welke libraries er meegelinkt horen te worden.
(Gebruik je b.v. math.h dan hoort dat de libm bij)
Waneer je een scripttaal gebruikt, vermeld wat je nodig hebt.
Iedereen moet met de gegeven informatie in staat zijn het programma uit te proberen.


Beoordelings kriteria

Elegantie van code
Het programma werkend krijgen is niet de primaire opdracht,
Ik ga er gewoon van uit dat het werkt.
Zorg voor nette leesbare en onderhoudbare code.
Het gaat er nogmaals niet aleen om dat het programma werkt, maar dat het laat zien welke oplossingen er voor een probleem mogelijk zijn.
Documentatie
Beschijf in je code duidelijk wat je doet en waarom je het doet.

Foolproof
Zorg dat je programma onbedoelde situaties netjes afhandeld.
Een programma dat van slag raakt omdat het bestand waarvan het wilt lezen
niet bestaat of gewoon leeg is, is niet foolproof.
Een programma dat niet controleert of ingevoerde data correct is evenmin.