Wieder ein Punkt auf meiner ewigen Todo-Liste abgehakt: Meine Bachelorarbeit ist geschrieben und abgegeben! Yay! Noch habe ich keine Bewertung, und auch den Vortrag muss ich noch halten, trotzdem schön, das erledigt zu haben.
Meine Arbeit hat den schönen Titel „Entwicklung und Optimierung von Software für eine mikrocontrollerbasierte Steuerung einer Messeinheit mit High-Speed USB-Schnittstelle“ ich durfte also Software für ein System schreiben, dass Daten aufgezeichnet hat, und die dann später per USB an den Rechner geschickt hat. Insgesamt sind dabei immerhin 31 Dateien mit 5117 Zeilen Code entstanden (davon 608 Leerzeilen, 1038 Kommentare, 3471 Code). Macht also ungefähr 20% Kommentare, das kann man schon ordentlich dokumentiert nennen 😉 (Gut, es ist C-Code, da ist das auch nötig…)
Dazu kommen noch 671 Zeilen C#-Code für die Host-Seite (96 leer, 133 Kommentare, auch 20% Kommentare), sowie ein wenig LabView-„Code“.
Die Dokumentation wurde in LaTeX geschrieben, das sind auch immerhin 23026 Wörter auf 76 Seiten (Seitenzahl mit Bildern und Drumherum).
Vier Monate habe ich insgesamt daran gearbeitet, im Grunde jeden Tag ein paar Stunden (abzüglich Wochenende). Die Zeit war zwischendrin mal ein wenig knapp, aber es hat dann doch noch gereicht. Ich habe etwa drei Monate an der Software gearbeitet, und dann einen Monat fast ausschließlich an der Doku geschrieben, was sich im Nachhinein als eine recht gute Aufteilung herausgestellt hat. Das eigentliche Schreiben hat etwa 3 Wochen in Anspruch genommen, danach wurde korrigiert. Tipp: Schon frühzeitig Teile an Korrektoren geben, erspart euch und ihnen Stress. Ich habe das leider nicht ganz so hin bekommen, und saß dann in der letzten Woche ein wenig ohne Arbeit dar, weil ich auf die Korrekturen wartete, ich habe das dann aber mit dem Malen von mehr Bildern überbrückt. (Ich hab hier Inkscape benutzt, funktioniert sehr gut zusammen mit LaTeX, wenn man die Bilder als PDF exportiert!). Danke an meine Hauptkorrektorin, für das schnelle Feedback (ich habe jetzt die Timestamps der Kommentare gefunden und jetzt noch ein schlechteres Gewissen…)
Was habe ich gelernt?
LaTeX ist gar nicht schwer. Ich hatte vorher noch nie etwas mit LaTeX gemacht, und habe mir das ganze Wissen ergoogelt (das deutsche und englische WikiBook sind sehr gut!) war aber ziemlich gut funktioniert hat. Man ließt zwar immer wieder etwas von Paketen, die veraltet sind oder nicht mit anderen harmonieren, im Grunde verlief aber alles sehr reibungslos (wobei ich jetzt auch keine besonderes Layout haben wollte). Was mich besonders beeindruckt hat: Das Layout der Titelseite hatte ich nur als Word-Vorlage gegeben, ich konnte es aber problemlos trotz quasi nicht vorhandener Kenntnisse in LaTeX nachbauen. Natürlich ist WYSIWYG besser für das basteln von Layouts, die man im Kopf hat, da man weniger am rumprobieren ist, aber so schwer war das gar nicht.
Atmel baut bessere Mikocontroller als Texas Instruments. Ok, das ist vielleicht ein wenig unfair… Ich hatte ja bis jetzt nur mit Atmels AVRs gearbeitet, die ja alle ein wirklich vorbildliches Datenblatt haben, und bei denen mir noch kein Hardware-Fehler begegnet ist (der 168 hat drei Bugs, von denen einer noch in der aktuellen Revision ist). Der vor mir verwendete (vorgegebene) TM4C1294 hat sage und schreibe 75 Hardwarebugs, von denen immerhin noch 44 in der aktuellen Revision vorhanden sind. Natürlich ist der Vergleich unfair, immerhin ist das eine ein 8bit Kern mit 16 MHz und das andere ein Cortex M4 mit 32bit und 120 MHz, aber eine gewisse Tendenz ist ableitbar. Zudem gefiel mit das Datenblatt bei TI auch nicht so sehr, vieles ist missverständlich formuliert. Von den ganzen Hardware-Bugs habe ich immerhin so um die 5 auch selber getroffen und musste Workarrounds einbauen, einen neuen, der noch nicht im Errata steht, habe ich vermutlich auch noch gefunden (DMA Interrupt in SSI1 wird teilweise nicht wieder gelöscht). Der Support von TI ist auch nicht besonders gut, auf den Hinweis ich hätte einen Fehler in ihrem Beispielcode gefunden kam nur ein „kein Support von Anwendercode“ zurück… Ich bleibe also erst mal bei Atmel 😉
Manche Copy-Shops sind teuer als andere. Nachdem mir wirklich alle mit denen ich gesprochen hatte TopCopy direkt an der Uni empfohlen hatte, wollte ich meine Arbeit da auch Drucken lassen, leider waren die aber gerade im Urlaub. Ich habe dann hier in Langenhagen drucken lassen, wo ich 60€ für drei Kopien auf 80g/m²-Papier bezahlt habe, und dazu eine etwas zweifelhafte Bindung. Schlussendlich musste ich dann noch zwei Exemplare nach produzieren, was ich dann natürlich bei TopCopy gemacht habe. Dort habe ich ich für zwei Exemplare auf 100g/m²-Papier, mit guter Bindung, Zuschnitt und super Beratung 25€ bezahlt…
Projekt Bachelorabeit ist (bis auf den Vortrag) erledigt, jetzt kann ich Urlaub machen 😉
Das Titelblatt ist auch getecht? Hut ab, ich hatte es bis jetzt nicht gemerkt. 🙂