Code Documentation and how you should’nt do it

Unileben — Tags: , , — nemesis @ 11:54

Da ich zur Zeit mit jemandem ein kleines Projekt fuer die Uni bastle – ein neuronales Netz, Abgabe naechsten Mittwoch – hat man das Vergnuegen sich des oefteren mit fremden Code zu befassen:

while (!learned)
{
NN.apply();

for (j = 0; j < another_number; j++)
{
o[j] = NN.getOutput(j);
}

for (j = 0; j < another_number; j++)
t[j] = teach[i, j];

error = NN.energy(ref t, ref o);

if (error > NN.getEpsilon())
{
NN.backpropagate(t);
}
else
learned = true;
}

Wenn man sowas liest, dann fragt man sich doch unter anderem, was ist eigentlich another_number? Auf jeden Fall eine andere Zahl – aber anders als welche? Und warum muss sie anders sein? Schauen wir mal an anderer Stelle im qualitativ hochwertig kommentierten Quellcode ™:

int number = 5;               // actually, this is the number of examples
int another_number = 5;       // number of output neurons
int iterations = 0;

Another_number ist also eine Fachbezeichnung fuer die Anzahl der Ausgabeneuronen in einem neuronalen Netz m(. Mir persoenlich waere allerdings ein Name wie outputNeuronCount lieber gewesen.

Mein persoenliches Highlight findet sich aber hier:

// set teaching input
for (int icsharpsucksiknowwhatimdoing = 0; icsharpsucksiknowwhatimdoing < 5; icsharpsucksiknowwhatimdoing++)
teach[icsharpsucksiknowwhatimdoing, icsharpsucksiknowwhatimdoing] = 1;

Sieht aus als haette C# ihn an dieser Stelle irgendwie geaergert. Nun denn, unter Zeitdruck wirft man wohl die ein oder andere Richtlinie aus den Softwareengineeringvorlesungen ueber Board – getreu nach dem Motto MAKE IT WORK BITCH!!!11

Die Absicht meiner Worte zur naechtlichen Stunde ist es, dem ein oder anderen Code-in-die-Tastatur-Klopper doch einmal ins Gewissen zu rufen, dass man auch sauber und lesbar programmieren kann, auch wenn es mal eine Minute laenger dauert sich beispielsweise einen sinnvollen Variablennamen oder eine Zeile Kommentar auszudenken (ich schliesse mich da auch nicht direkt aus).

The Memory Book

Unileben — nemesis @ 02:32

The Memory Book: The Classic Guide to Improving Your Memory at Work, at School, and at Play


The Memory Book bei Amazon

Wer kennt es nicht, man ist auf einer Party und wird plötzlich angesprochen. Man kennt diese Person aber man kommt einfach nicht auf den Namen. Da heißt es geschickt rundherum reden und hoffen, dass das Gesräch ein kurzes wird. Anderes Szenario, ähnliches Problem. Mitten in einer Präsentation fällt einem nicht mehr ein, was man an dieser Stelle sagen wollte, die Erinnerung ist wie ausgelöscht. (more…)

Enterprise Architecture made easy

Unileben — Tags: , — nemesis @ 10:59

businessarchitecture

Das erinnert mich tatsächlich an die tolle Vorlesung “Architecture of Business Systems”…

Geheiligt werde das Backupsystem

Unileben — Tags: , , — nemesis @ 11:43

Soeben saß ich an meinem Rechner und plötzlich ging dieser nach über vier Jahren treuer Arbeit einfach aus. Er versuchte mit der letzten Lebenskraft nocheinmal zu starten, doch das Bild blieb schwarz.

So richtig hat es ihn scheinbar nicht interessiert, dass ich gerade eine Studienarbeit schrieb.

Alles in allem recht suboptimal, wenn man bedenkt, dass nun auf der Festplatte mein Studienbericht schlummerte.

Wo sind jetzt die, die schreien, dass der Besitz von drei Rechnern völlig hirnrissig wäre!? Systemplatte aus dem gerade abgelebten System raus, per Hotplug in den Backuprechner und schwupps – Arbeit kann weiter gehen.

Nun fehlt nur noch ein neues gebrauchtes Sockel 939 Board und auch der hoffentlich nur totgeglaubte kann vermutlich wieder zum Leben erweckt werden.

Microsoft Access 2007 removed feature

Unileben — Tags: , , , , , — nemesis @ 04:37

Ich sitze derzeit an einer Accessdatenbank für ein relativ komplexes Problem. Unteranderem soll diese DB von mehreren Nutzern mit unterschiedlichen Rechten benutzt werden.

Als Vorlage habe ich eine alte Access 2003-Datenbank bekommen. Öffnet man diese in Access 2007 gibt es einen Tab namens “Users and Permissions”, mit dem man die Rechte verwalten kann.

Nun habe ich diesen Tab in meiner Access 2007-Datenbank gesucht. Dort gibt es diesen nicht. Nach etwas Recherche hat sich herausgestellt, dass Microsoft dieses Feature aus unbekannten Gründen aus Access entfernt hat.

Das Speichern der Access 2007-Datenbank als Access 2003 kompatible Datenbank hat mir den Tab übrigens wieder hergezaubert.

Next Page »
powered by WordPress with Barecity