Voting Tool

Beschreibung

In einem Workshop beim erasmus IP (Intensive Program) 2011 in Virrat (Finnland) wurde ein webbasiertes voting tool mir Grails als serverseitiges Backend programmiert.
Da es recht zuverlässig funktioniert und die entsprechende Nachfrage besteht, habe ich mich nach Rücksprache mit den beteiligten Programmierern entschlossen unsere Sourcen dieses Projekts offen zu legen.
Da das Ganze von uns damals nur "schnell mal für diesen Workshop" programmiert wurde, fehlen hier und da (vor allem auf admin-seite) ein paar nice-to-haves, was jedoch der Funktionalität an sich keinen Abbruch tut.

Featurelist

Aufsetzen

Die Sourcen können aus folgendem git-repository geklont werden:

git clone http://deroberling.de/git/votingTool/

Eine funktionierende Grails-Installation vorausgesetzt funktioniert das votingTool sofort lokal mit Beispieldaten durch das einfache Ausführen von

grails runApp

im Projektordner.

Nutzen

Workflow für den Nutzer der Anwendung:

Das Admininterface befindet sich unter: http://ip-des-servers:8080/voting/question/list/
Standard-Admin-User ist admin mit Passwort grails - was natürlich geändert werden kann und auch sollte ;) - dazu muss man momentan allerdings im Quelltext in der grails-app/conf/BootStrap.groovy das ganze manuell ändern.

Der Workflow für den Administrator ist wie folgt:

Dabei ist zu beachten, dass in der Produktivumgebung immer eine Frage aktiv sein muss, da sonst die Clients irgendwann auf eine "nicht vorhanden"-Seite geleitet werden, was nicht unbedingt wünschenswert ist.

Verbessern

Wer ein paar Unschönheiten beseitigt, möge mich nach einem schreibendem Zugriff auf obiges git fragen - würde mich freuen, wenn das Projekt noch etwas schöner wird :-).

Verbesserungen, an die wir schon gedacht haben:

News - Sidebar
Ubuntu Touch Backup und Restore
Ubuntu Touch ist nun seit mehr als zwei Jahren mein Betriebssystem der Wahl auf meinem Nexus 4. Leider habe ich mir irgendwie den Update-Mechanismus zerschossen und so kurzerhand beschlossen, das System neu aufzusetzen. Den Prozess habe ich in der ubuntu touch section dokumentiert.
Ableton MIDI CC Automation
In der Audio-Sektion wird nun kurz erläutert, mit welchem Hilfsmittel man im Arrangement View von Ableton Live MIDI CC Parameter eines externen Instruments automatisieren kann.
x0xb0x und Reason 7
In der Audio-Sektion habe ich kurz niedergeschrieben, wie der Sound einer x0xb0x in Reason 7 per MIDI-Clock synchron geroutet werden kann.
LaTeX-Workshop
In der LaTeX-Sektion werden inzwischen Folien und weiteres zu einem LaTeX-Workshop verlinkt.
ClusterGL
Unter Projekte->ClusterGL habe ich ein paar Schritte zur Nutzung von ClusterGL online gestellt.
NFC MobiDoc
Unter Projekte->NFC MobiDoc habe ich eine in einer Gruppe von 5 Stundenten inklusive mir umgesetzte NFC-basierte Krankenhausanwendung dokumentiert.
VotingTool
Unter Projekte->VotingTool habe ich ein Grailsbasiertes VotingTool online gestellt.
neues Design
Heute habe ich ein Geschenk von Max bekommen - ein neues schönes Design. Vielen Dank an dieser Stelle!
ROBERTA
Heute habe ich neben der Übersetzung ins Englische auch eine Featurelist für den Server aus dem ROBERTA-Projekt erstellt.
Git + Apache
Wer sein Git-Repository über HTTP mit Apache und aber ohne VirtualHosts (also ohne Subdomain) verfügbar machen will, findet unter Anleitungen -> Vermischtes nun eine entsprechende Anleitung.
ARM-Toolchain
Wie man einen gcc Toolchain für ARM aufsetzt, findet sich ab sofort unter Anleitungen -> ARM. Diesen nutze ich beispielsweise für die Programmierung von OpenBeacon USB 2-RFID-Tags.
SD-Karte kaputt
Nach dem Netzteil nun auch die SD-Karte: Unter Anleitungen -> Sheevaplug mein Rettungsweg.
Netzteil kaputt
Wem das gleiche Glück mit dem Sheevaplug beschieden, der findet unter Sheevaplug meinen Lösungsweg.
ATMEGA verfust
Wer einen seiner AVR Mikrocontroller verfust hat, findet unter Anleitungen -> AVR nun einen rettenden Beitrag.
Abschlussarbeit
Unter Anleitungen -> LaTeX habe ich eine Vorlage für eine Abschlussarbeit verlinkt.
Etherpad
unter Anleitungen -> Vermischtes findet sich ein Tutorial zur Installation von Etherpad auf Debian Lenny

Valid XHTML 1.0 Strict CSS ist valide!