Posts Tagged ‘BA Mosbach’

These times

Monday, October 26th, 2009

These are crazy times for me! And that’s true in many ways:

In the last months I’ve been working with three very innovative mobile development frameworks – each of which is remarkable in its own way. I’ve to hate and love all of them and I’m so thankful that I got this chance at all! I’m very happy that I did not loose touch to my old colleagues at WebDev/WebSalesDev and still see them every once in a while.

I’m also working on a very interesting project in my spare time with my buddy Lino – I hope we can give you an update about this soon.

And I’ll be back to Mosbach, soon. I’m so curious about what’s up next – crazy times everywhere I look :-)

In the meantime: I’m afraid I often don’t have the time to post new content here – and some things pass by so fast I just don’t feel like they’re necessary or that important at all.

Stay tuned!

Stills from 3d animation

Sunday, June 7th, 2009

Taking a break from developing (after many days with 10-15 hours of Grails I realized there are some other parts to life, though) I spent this day collecting and rendering some stills of our 3d animation we did as part of the last semester.

The idea / the story

Our basic story idea was to show a student of our course, in a (of course ;-) ) boooring lecture. He’d be switching on his notebook (where my MacBook Pro became a short part) and then just dream on on his way through the web. We had focused on all the parts that make the web (in our eyes ;-) )… you’ll see them very soon – once we are permitted to upload the video onto Youtube.

Scribbles / Renders

The following pictures where all mostly modelled, animated and rendered by me – there are many other parts to the animation which I don’t want to claim property for. Despite that I was one of the guys who was always around in the other groups, helping out where questions or problems raised. It was the thing that was most fun in my studys until now. And it kept us working on it for nights and nights!

So here are some impressions of all the effort which has gone into the animation – all the iterations over creative ideas, building things from scratch, re-inventing, putting in some funny ideas… all that stuff. And in the end, I think I can honestly say I’m very proud of it – just wait for the final animation which will be out soon.

That’s it (I just discovered the cool gallery feature WordPress has ;-) ), stay tuned for the animated version (wich is all done, just waiting for some minor legal things before uploading it to Youtube)

Bewertungsplattform

Monday, May 4th, 2009

Die letzten beiden Semester arbeitete ich mit meinen Kommilitonen Jan Laermann, Norman Schemel und Lino Strümann an einem Projekt im Rahmen der Vorlesung Projektmanagement. Unser Kunde war der Studiengangsleiter Herr Mester. Sein Ziel war es, eine generische Bewertungsplattform anzulegen. Es sollten mit minimalem Aufwand Bewertungsportale zu beliebigen Themen aufgestellt werden können.

Projektplanung

Im ersten der beiden Semester kümmerten wir uns maßgeblich um die Projektplanung, dies ergab am Ende ein Pflichtenheft, das vom Kunden unterzeichnet wurde und uns im Folgenden als Basis für unsere Entwicklung diente.

Projektumsetzung

Im zweiten (diesem) Semester des Projekts ging es dann an die konkrete Implementierung der Software, sowie den geplanten Rollout. Wir hatten uns aus diversen Gründen dafür entschieden, für die Entwicklung das Grails-Framework zu benutzen.

Zur weiteren Entwicklungsumgebung gehörten bei uns folgende Komponenten:

  • ein Subversion-Repository zur Versionierung und Zusammenarbeit
  • Trac als Task-Tracking-Tool um die einzelnen Aufgaben und auch Bugs zu koordinieren
  • anfangs ein MediaWiki welches dann durch das Wiki von Trac abgelöst wurde
  • eine lokale Testumgebung (von Grails bereitgestellt) und zum Ende auch ein serverseitiger Test mit Tomcat und MySQL

Da wir aus vergangenen Projekten leider nicht sehr gute Erfahrungen mit Lösungen aus der BA-Infrastruktur gemacht hatten (dass das SVN-Repository z.B. nicht von außerhalb der BA erreichbar war, oder häufig nicht funktionierte) wählten wir meinen eigenen Server um die Tools dort zu hosten. Eine meiner Grundaufgaben war deshalb die Verwaltung dieser Entwicklungsumgebung, damit das Team verlässlich damit arbeiten konnte.

Außerdem arbeitete ich danach als Java/Groovy-Entwickler an den Backend-Funktionen mit Grails um die Logik zu implementieren.

Abgabe

Unserem Kunden war es gegen Ende des Projektes leider nicht mehr möglich die entsprechende Live-Umgebung zur Verfügung zu stellen. Deshalb konnten wir die Bewertungsplattform nicht aus unserer Test-Umgebung auf das Live-System übertragen.

Aus dem geplanten Roll-Out wurde so die Abgabe aller Entwicklungsressourcen, inkl. SVN-Repository, Trac-Backups etc. so dass z.B. ein anderer Jahrgang dieses Projekt dann inklusive einer (ursprünglich geplanten) Werbekampagne online stellen kann.

Erfahrungen

Dies war für mich ein weiteres großes Software-Projekt innerhalb unseres Studiengangs. Man sieht, dass mich meist mehr die Technik reizt, als gestalterische oder statistische Arbeiten. Da wir den Prozess der Erstellung durch das Trac ebenfalls sehr einheitlich ablaufen lassen konnten, lief in diesem Projekt wieder einiges besser planbar als in früheren Projekten (jedes Mal kommen ein paar weitere Tools und Erfahrungen hinzu bei denen man sich fragt wie man das bisher nur ohne sie geschafft hat).

Die Arbeit mit Grails war im weitesten Sinne sehr angenehm. Das Grundgerüst der Anwendung war innerhalb von ein paar Stunden erstellt und einsatzbereit. Ein paar Bereiche sind noch naja… meines Erachtens nicht unbedingt produktiv einsetzbar – z.B. Web Flows hatten bei mir auch in anderen Projekten bisher noch einige Stabilitätsprobleme. Und die Doku reicht auch von supermegatoll bis mittelprächtig. Fragen wie “wie bekomme ich den info-Loglevel für Controller oder Services?” ließen sich nur durch langwierige Recherche im Internet beantworten. Aber es gibt auch Bereiche wie die Konfiguration mittels der jeweiligen “DSLs” (z.B. für die DataSources) oder die Groovy-Builder, mit denen die Arbeit eine reine Freude sein kann, sofern die Doku sie entsprechend erläutert.

Wir hatten sehr viel Zeit zur eigenen Einteilung zur Verfügung, so konnten auch die einzelnen Entwickler ihren eigenen Rhythmus leben (meine Commits kamen z.B. meist in der Zeit von 8-20 Uhr, andere zwischen 14-2Uhr ;-) ). Das wurde auch durch die strikte Trennung von Grails ermöglicht, weshalb z.B. die einen weiterhin an den Layouts arbeiten konnte, während andere die Logik implementierten.

Ausblick

Ich werde mich mit Sicherheit weiterhin mit Grails beschäftigen. Für die schnelle Erstellung von Web-Anwendungen eignet es sich hervorragend. Integriert sich auf Wunsch auch gut in bestehende Umgebungen (eigenes Mapping für Persistenz z.B.) bietet viele sinnvolle Features – und noch mehr durch die immer weiter wachsende Zahl von Plugins.

Ein Task-Tracking-System wie Trac ist ebenfalls sehr sinnvoll, allerdings fand ich es während dieses Projekts teilweise etwas umständlich zu bedienen – und es lief (Python, Apache, Ubuntu, VPS, wer auch immer dafür verantwortlich ist…) leider lange Zeit nicht unbedingt flink.

Auf eine Versionsverwaltung kann ich selbst bei Ein-Mann-Projekten nicht mehr verzichten!

Enterprise-Vorlesung

Thursday, April 30th, 2009

In der Enterprise-Vorlesung lernten wir dieses Semester verschiedene Technologien kennen, die für die Entwicklung und den Einsatz von Unternehmens-Anwendungen wichtig sind.

Neben einem schriftlichen Test erarbeiteten wir in verschiedenen Gruppen unseres Kurses einzelne Module an einem “Downloadportal”. Dazu sollten wir unter Anderem den JBoss Portal Server einsetzen.

Aufgabe/Gruppe

Ich war gemeinsam mit meinen Kommilitonen Claudia Fröhlich, Katrin Plaumann und Lino Strümann, in der Gruppe “Persistenz”. Unsere Aufgabe war es, mittels des ORM-Frameworks Hibernate dafür zu sorgen, dass jegliche Objekte aus dem Downloadportal transparent in einer relationalen Datenbank abgespeichert und aus dieser auch wieder ausgelesen werden konnten. Hibernate ist ein sog. objekt-relationaler-Mapper (kann also objektorientierte Strukturen in relationale Strukturen mappen) und hat sich auf diesem Gebiet als Quasi-Standard etabliert.

Dazu entwickelten wir eine Hilfsklasse, welche den anderen Gruppen nicht nur eine Hibernate-Session bereitstellte, sondern auch Methoden um verschiedene Objekte in die Datenbank schreiben zu können. Ergänzt wurde dies durch einige “Finder”-Methoden die z.B. einen Benutzer anhand seines Nicknames finden konnte. Diese Klasse wurde allen anderen Gruppen zur Verfügung gestellt.

zur Entwicklungs-Umgebung

  • Da wir keine Testumgebung innerhalb des Portal Servers hatten, sicherten wir unsere Ergebnisse allein durch eine umfangreiche Test-Abdeckung durch JUnit ab
  • zur Versionskontrolle nutzten wir ein Subversion-Repository dass ich auf meinem privaten Server eingerichtet habe

Erfahrungen

Ich hatte bisher schon Erfahrungen mit Hibernate gemacht – vor allem durch verschiedene Arbeiten mit Grails das ebenfalls Hibernate einbindet. Allerdings war die “Low-Level-Arbeit” mit Hibernate eine andere Anforderung, ganz im Vergleich zu dem “Luxus” den Grails dabei anbietet. Dennoch kam ich damit sehr gut zurecht und konnte meinen Kommilitonen die bisher noch nicht damit gearbeitet hatten eine kurze Einführung in das Thema geben.

Mögliche Verbesserungen

aus diversen Gründen kamen wir erst in den letzten Wochen des Semesters dazu diese Anwendung zu entwickeln. Unser Teil wurde dabei relativ flott in weniger als einer knappen Woche fertig. Dabei wurde natürlich einiges weggelassen, damit wir so schnell fertig wurden. Optimieren können hätten wir zum Beispiel durch

  • mehr Finder-Methoden für die Objekte anzubieten (wäre in Groovy dank Meta-Methoden sehr einfach, wie z.B. bei Grails)
  • log4j (miteingebunden) weiter nutzen um detaillierte Logs auszugeben
  • Aufbau des gesamten Projekts z.B. mit Maven, um Abhängigkeiten von Libraries transparent auflösen zu können (hätte leider wiederum eine Einführung benötigt, da Ant, Maven oder auch JUnit den meisten noch unbekannt waren)

4. Semester

Tuesday, April 28th, 2009

Nachdem das 4. Semester nun nicht nur offiziell sondern auch tatsächlich vorbei ist, steht mal wieder ein kurzer Rückblick an.

Was gab es an regulären Vorlesungen? Zum Einen waren da:

  • eine Vorlesung “Einführung Drucktechnik” bei Herrn Cherdron (interessant: Exkursionen in Papierfabriken, Druckereien, Color-Management,…) mit Klausur am Ende
  • die allsemestrige Rhetorik-Veranstaltung bei Frau Göschel – ungeprüft
  • eine Vorlesung zu “Enterprise”-Technologien” bei Prof. Dr. Judt (JEE, EJB, dann doch wieder POJOs, Hibernate, …) mit Test und Gruppenarbeit (eigener Eintrag)
  • eine Vorlesung “Einführung Grafikprogrammierung” bei Prof. Dr. Zeppenfeld (von der Theorie 2D/3D bis zur Anwendung in Java, OpenGL) mit einer Klausur und einem Animationsfilmprojekt (eigener Artikel)
  • eine Vorlesung Projektmanagement bei Herrn Koch als Begleitung zum “großen” zwei-semestrigen Projekt (eigener Artikel)
  • die Vorlesung “Informations-Architektur und Design” bei Herrn Blum (Gestaltung von Wireframes, Moodboards, …) mit selbigem als Prüfungsleistung
  • die Vorlesung HCI bei Prof. Dr. Wirth (diesmal v.a. “Angewandte Forschung” d.h. Untersuchen von Studien zu verschiedenen Bereichen des Themas HCI) mit selbigem als Prüfungsleistung

Außerdem gab es noch das “große zwei-semestrige Projekt” bei dem es um die Entwicklung einer “generischen Bewertungsplattform” ging.

Und es wurde noch eine Prüfungsleistung aus einem früheren Semester nachgeholt: “Web-Technologien, Client” hatte sich im dritten Semester maßgeblich mit JavaScript, Ajax, XML, DOM etc. beschäftigt und wurde mit einem Test und einer Gruppenarbeit abgeprüft.

Zu den Themen Enterprise-Technologien, Grafikprogrammierung/Animationsfilm und Projekt/Bewertungsplattform wird es nach Zeit noch eigene Einträge geben.

Alles in allem wieder ein Semester mit vielen verschiedenen Schwerpunkten – von der Gestaltung bis zur Entwicklung war wieder alles dabei. Dabei hatten wir z.B. für das Projekt sehr viel Zeit zur eigenen Planung zur Verfügung.

Nicht zuletzt sei anzumerken: Die BA Mosbach ist nicht mehr! Sie ist nun Teil der neuen Dualen Hochschule Baden-Württemberg (DHBW). Was sich daraus für die Studenten ergibt bleibt momentan noch relativ im Dunkeln – ich für meinen Teil konnte noch keine nennenswerten Veränderungen feststellen.