Archiv für April 2010

Leichtathletik Kreisbestenliste 2010 für Bad Mergentheim online

Donnerstag, 29. April 2010

Gestern habe ich endlich den Lizenzschlüssel für das Leichtathletik Programm erhalten, so dass ich dann heute mit der Kreisbestenliste anfangen konnte. Bis jetzt sind die 8 Veranstaltungen erfasst, auf denen Athleten aus dem Kreis Bad Mergentheim am Start waren.

Kreisbestenliste 2010

Übersicht der letzten Jahre

Dieses Jahr bin ich auch von CosaAVBE, dem letzten MS DOS Programm, das ich genutzt habe, auf CosaWin Best umgestiegen, das seit letztem Jahr verfügbar ist. Ein paar Fehler hat es zwar noch und es könnte noch etwas benutzerfreundlicher werden, aber allgemein betrachtet funktioniert es recht gut.

Jetzt bleibt nur noch zu hoffen, dass die meisten Veranstalter wieder eine Datensicherung (BLN-Datei) zur Verfügung stellen, die im Programm direkt eingelesen werden kann und so das händische Eintippen der Ergebnisse weitestgehend entfällt.

Jackcess – Java Bibliothek zum Zugriff auf MS Access

Sonntag, 25. April 2010

Um in Java auf Datenbanken zuzugreifen, verwendet man in der Regel JDBC Treiber, die vom Datenbank-Hersteller zur Verfügung gestellt werden. Im Falle von Microsofts Access Datenbanken hat man jedoch schlechte Karten, da Microsoft selbst keinen JDBC Treiber anbietet. Um trotzdem auf MS Access Datenken zuzugreifen, gibt es einige JDBC Treiber, die über ODBC auf die Access Datenbank zugreifen. Diese Möglichkeit besteht aber nur unter Windows Systemen. Wer unter Linux arbeitet, kann diese Möglichkeit also auch nicht nutzen.

Diese Lücke schließt aber die Java Bibliothek Jackcess, mit der unabhängig vom Betriebsystem auf MS Access Datenbanken zugegriffen werden kann. Der Zugriff erfolgt hier nicht über JDBC sondern über die Klassen und Methoden von Jackcess.

Hier nun einige Kommentare zum Umgang mit Jackcess:

Langsames Schreiben beschleunigen
Beim Schreiben in eine große Datenbanktabelle hatte bei mir das Einfügen einer neuen Zeile mehr als 30 Sekunden gedauert. Das liegt daran, dass Jackcess den Schreibvorgang so optimiert, dass beim Absturz der Anwendung möglichst wenig Daten verloren gehen. Wenn man darauf nicht angewiesen ist, kann man diese Optimierung jedoch auch ausschalten. Dazu öffnet man die Datenbank mit folgenden Parametern:

Database.open("database.mdb", "false", "false");

Das zweite Variable, die übergeben wird, steuert, dass die Datenbank nicht im “readOnly” Zugriff geöffnet wird. Die dritte Variable schaltet dann die Option “autoSync” aus, wodurch das Schreiben bei mir stark beschleunigt wurde.

Long Integer als Primary Key
Primärschlüssel werden durch Jackcess normalerweise automatisch hochgezählt. Dies funktioniert aber nur, wenn die Spalte den Typ “Integer” hat. Die Datenbank, die ich schreiben musste, hatte jedoch den Spaltentyp “Long Integer”. Jackcess hat hier das Schreiben immer mit einer Exception abgebrochen.
Abhilfe schafft die Option setUseBixIndex(), mit der auch in “Long Integer” Spalten geschrieben werden kann.

Database db = new Database("database.mdb");
db.setUseBigIndex(true);

Das Verwenden dieser Option hatte jedoch zur Folge, dass der Primary Key nicht mehr automatisch vergeben wurde. Hier habe ich keine andere Möglichkeit gefunden als selbst den höchsten Wert der Spalte zu ermitteln und dann 1 zu addieren.

Lesen der Datenbank
Bei den Code-Beispielen auf der Jackcess Seite fehlt das Lesen, deshalb hier eine kurzes Code-Beispiel:

Table myTable = db.getTable("myTable");
Iterator<Map<String, Object>> it = myTable.iterator();
while (it.hasNext()) {
	Map<String, Object> map = it.next();
	String column = map.get("columnName").toString();
	//...
}

Zuerst wählt man die Tabelle aus, die gelesen werden soll. Das Objekt vom Typ Table stellt einen Iterator zur Verfügung, mit dem die Tabelle durchlaufen werden kann. Der Iterator gibt für jede Spalte eine Map zurück, über die der Zugriff auf die einzelnen Spalten der Zeile möglich ist.

Weitere Informationen gibt es in den Apidocs.

Apps Empfehlungen für das HTC Desire (2. Teil)

Freitag, 23. April 2010

Nach dem ersten Teil der App-Empfehlungen für das HTC Desire, berichte ich nun über vier weitere Apps auf meinem Handy.

A Online Radio (AOR)
Wer gerne Webradio hört, sollte sich einmal die Anwendung A Online Radio anschauen. Mit dieser App lassen sich Webradios unterschiedlicher Formate hören. Standardmäßig sind schon sehr viele Sender eingetragen, die sich aber auch beliebig ergänzen lassen. Die App bietet außerdem einen Sleep Timer, so dass die Radio-Wiedergabe nach einer vorher festgelegten Zeit gestoppt wird.

Shazam
Oft hört man ein unbekanntes Lied im Radio und möchte gerne den Interpreten und den Titel wissen. Zwar bieten viele Radiosender im Internet eine Playlist an, doch gibt es auch eine Android App für diesen ZWeck. Shazam nimmt 15 Sekunden von einem Lied auf und zeigt dann automatisch Titel, Interpret und Album an. Außerdem kann es direkt die Daten an Amazon oder Youtube übergeben, um das Lied dort anzuhören bzw. zu kaufen. Des weiteren werden die Daten jedes Liedes nach dem Erkennen gespeichert, so dass man sich keine Notizen darüber machen muss.

Tapatalk
Mit Tapatalk kann man einfach und schnell durch phpBB- und vBulletin-Foren navigieren. Leider kann man in der kostenlosen Version nur Einträge lesen, das Schreiben funktioniert nur mit der kostenpflichtigen Pro Version. Trotzdem ist die App zum Lesen in den Foren Hilfreich, zum Schreiben muss man dann entwedern den Android Webbrowser aufrufen oder man schreibt gleich vom Computer.

Air Control
Nachdem nun die Flugzeueg nach dem Vulkanausbruch in Island wieder fliegen dürfen, kann ich hier nun auch ein Flugzeug-Spiel vorstellen. In Aircontrol wird auf dem Bildschirm eine große und eine kleine Landebahn sowie ein Hubschrauberlandeplatz angezeigt. Während dem Spiel kommen dann aus allen Richtungen Flugzeuge geflogen, die man sicher landen muss. Je länger man spielt, desto mehr Flugzeuge erscheinen und desto schwieriger wird es, die Flugzeuge ohne Kollision zum Landen zu bringen.

Apps Empfehlungen für das HTC Desire (1. Teil)

Sonntag, 18. April 2010

Nach dem ich nun das HTC Desire seit einer Woche in Benutzung habe, möchte ich hier einige Apps aus dem Google Market vorstellen, die ich seitdem in Benutzung habe.

NetTraffic
Mit dieser App lässt sich der Traffic beim mobilen Surfen kontrollieren. Die App läuft im Hintergrund und zählt mit, wie viele MegaByte übertragen wurden. Somit hat man jederzeit eine Kontrolle über das verbrauchte Datenvolumen. Da die meisten Datentarife keine echten Flatrates sind, sondern ab einer bestimmten Grenze gedrosselt werden, kann man mit diesem Tool im voraus schauen, wie lange das Datenvolumen noch reicht.

SleepTimer
Wer abends vor dem Schlafen noch gerne Musik mit dem Handy hört, hat das Problem, dass die Musik irgendwann wieder ausgeschaltet werden muss, damit sie nicht die ganze Nacht durchläuft. SleepTimer beendet nach einem vorher konfiguriertem Zeitraum von bis zu 180 Minuten die Musik App, so dass die Musikwiedergabe unterbrochen wird und auch der Akku geschont wird, wenn man das Handy gerade nicht läd.

Layar
Layar ist eine Augmented Reality App, mit der mittels GPS, Kompass und Lagesensor die genaue Position des Handy bestimmt werden kann. Die App aktiviert dabei die Kamera und zeigt auf dem Touchscreen neben dem Bild der Kamera zusätzliche Informationen wie Points of Interests von den Orten, die gerade im Blickfeld sind, an. Ob diese Anwendung jetzt nützlich ist oder nicht ist fraglich, allerdings ist es schon interessant, was die moderne Technik alles möglich macht. Wer kein Desire hat, findet hier ein Video, welches Layar vorstellt.

NewsRob
Ich nutze den Google Reader zum Lesen verschiedener RSS-Feeds. Es gibt zwar von Google eine Ansicht für mobile Endgeräte, allerdings finde ich diese nicht so komfortabel wie NewsRob. Mit NewsRob lassen sich alle ungelesenen Nachrichten aus dem Google Reader auf das Handy laden und dort in NewsRob bzw. mit dem Browser lesen. Dabei markiert NewsRob die Artikel als gelesen und ändert diesen Status auch wieder im Google Reader, sobald man die RSS-Feeds wieder synchronisiert. Dadurch sind die die RSS-Feeds im Google Reader wieder auf dem selben Stand wie im Handy.

Fehler in HTC Desire Bedienungsanleitung

Dienstag, 13. April 2010

In der Bedienungsanleitung auf Seite 18 des HTC Desires ist folgender Hinweis zu finden:

Wenn Sie die Speicherkarte entfernen möchten, während das Telefon eingeschaltet ist, müssen Sie sie erst deaktivieren, um eine Beschädigung der auf ihr gespeicherten Daten zu vermeiden.

Demnach ist es möglich, dass die Speicherkarte entfernt werden kann, wenn das Telefon angeschaltet ist. Soweit nichts ungewöhnliches, das konnten meine bisherigen Handys teilweise auch schon.

Allerdings kann beim HTC Desire die Speicherkarte nur entfernt werden, wenn der Akku ausgebaut wird. Deshalb war meine erste Vermutung bereits, dass das nicht gehen kann. Es wäre jedoch auch möglich, dass das HTC Desire kurze Zeit ohne Akku auskommt oder dass es dazu am Ladekabel angeschlossen sein muss.

Versuch 1: Tausch ohne Ladekabel
Also habe ich als erstes wie in der Anleitung beschrieben die Speicherkarte deaktiviert. Anschließend habe ich den Akku-Deckel geöffnet und den Akku herausgenommen. Wie erwartet war das Desire aus und musste neu gestartet werden.
Ergebnis: Fehlgeschlagen.

Versuch 2: Tausch mit Ladekabel
Als nächstes habe ich das ganze nochmal wiederholt, während das HTC Desire am Ladekabel angeschlossen war. Aber auch hier war das Desire nicht mehr im Standby sondern musste ebenfalls neu gestartet werden.
Ergebnis: Auch Fehlgeschlagen.

Da beides nicht geklappt hat, wird das also wirklich ein Fehler in der Bedienungsanleitung sein. Aber vielleicht geht das bei Zukünftigen Handy-Generationen, dass man den Akku tauschen kann ohne das Gerät aus- und einzuschalten. Beim Wechsel zum Zweitakku ist das nämlich sehr sinnvoll. Für die Speicherkarte braucht man das dagegen nicht unbedingt, die kann ja auch so verbaut werden, dass sie getauscht werden kann, ohne den Akku herausnehmen zu müssen.

Mein HTC Desire ist da

Montag, 12. April 2010

Gestern Abend habe ich mein HTC Desire bekommen. Es war zwar schon seit Samstag in der Packstation, aber ich bin erst am Sonntag Abend wieder nach Mosbach gekommen, deshalb hab ich es erst dann bekommen.

Mein erster Eindruck: Das Desire hält auf jeden Fall, was es verspricht, und es ist super schnell. Ich hatte vorher ein HTC TyTN II, dort hat es oft ziemlich lange gedauert, bis eine Anwendung gestartet oder bis die gewünschte Aktion ausgeführt war. Dagegen ist das Desire dann eine richtige Rakete. Man kann flüssig durch die Menüs scrollen, das Blättern durch die Bilder geht ohne Wartezeit und auch das Zoomen per Pinch-to-Zoom geht flüssig.

So sieht mein neues Smartphone dann aus:

HTC Desire
Hier ein Foto der Verpackung:

Von meinem bisherigem Handy war ich noch die Hardware-qwertz-Tastatur gewöhnt, das Desire hat jetzt nur den Touchscreen zum Tippen. Das macht jedoch nichts aus, ich hab mich schnell dran gewöhnt und dafür ist es ein ganzes Stück dünner und auch leichter.

Ich werde hier sicherlich noch über mehr über das Desire schreiben, wenn ich es mehr benutzt habe. Eine lustige Funktion habe ich heut Morgen jedoch entdeckt, die ich hier noch erwähnen möchte:

Auf dem mittleren Homescreen des Desire ist standardmäßig ein Widget eingerichtet, dass die Uhrzeit und das Wetter anzeigt. Jedes mal, wenn man das Handy aus dem Standby einschaltet, überdeckt das Wetter kurz den ganzen Bildschirm. Heut morgen hat es geregnet, deshalb waren dann auf dem Bildschirm einige Regentropfen zu sehen. Das Lustige war dann, dass gleichzeitig ein Scheibenwischer von links nach rechts und wieder zurückgegangen ist, als würde man im Auto sitzen.

Nützlich ist das wohl nicht, aber man sieht hier, was die Hardware des HTC Desires alles kann, ohne ins Ruckeln zu kommen. Also echt beeindruckend das Teil.

Deshalb kann ich das HTC Desire an alle weiterempfehlen, die sich in der nächsten Zeit ein neues Handy oder Smartphone kaufen wollen. Wem das Desire zu groß ist, kann auch zum HTC Legend greifen, das zwar von der Hardware her nicht so leistungsfähig ist, dafür aber nicht so groß ist.

Backup-Skript für den Blog

Samstag, 10. April 2010

Backups sind wichtig, das merkt man vor allem immer dann, wenn man mal keins hat. Im Idealfall laufen Backups automatisch, deshalb habe ich für meine Webanwendungen immer ein Backup Skript, das jede Nacht ein Backup erstellt.

Falls ihr sowas auch gern hättet, könnt ihr das Shell-Skript gerne verwenden. Voraussetzung ist jedoch, dass ihr SSH Zugang auf eurem Webserver habt und auch Cron-Jobs einrichten dürft.

DATE=`date +%Y-%m-%d-%H-%M-%S`
mysqldump --default-character-set=latin1 -h localhost
     -u USER -pPASSWORD -f DATABASE
     --lock-tables=false > /root/db.sql
tar -zcPf /root/${DATE}-blog-mysql.tar.gz /root/db.sql
rm /root/db.sql

tar -zcPf /root/${DATE}-blog-data.tar.gz
     /srv/www/vhosts/julianmichel.de/httpdocs

mutt -a "/root/${DATE}-blog-data.tar.gz"
     -a "/root/${DATE}-blog-mysql.tar.gz"
     eine@adresse.de -s "Backup Blog ${DATE}" < /dev/null

mv /root/${DATE}-blog-mysql.tar.gz /root/backup/
mv /root/${DATE}-blog-data.tar.gz /root/backup/

Das Skript ruft erst die Daten aus der MySQL Datenbank ab und komprimiert sie. Danach wird das Verzeichnis mit der Webanwendung gesichert. Die beiden Dateien werden dann per E-Mail versandt, so dass im E-Mail Postfach immer das aktuelle Backup liegt. Außerdem wird die Datei noch in ein Backup-Verzeichnis verschoben, damit das Backup auch nochmal auf dem Server liegt. Allerdings müssen diese Dateien regelmäßig gelöscht oder auf den eigenen PC verschoben werden, da sonst der Speicher des Servers nach einiger Zeit voll ist.

Fehler in Klausur-Aufgaben vermeidbar?

Freitag, 09. April 2010

Letztes Semester hatten wir bereits eine Klausur, in der die Aufgabenstellung einfach mit einem “und” aufgehört hat. Wenn sowas zum ersten Mal passiert, denkt man sich ja noch, dass sowas nicht so oft vorkommt.

Allerdings war dieses Semester wieder so eine Sache, diesmal in VWL. Dort gab es eine Aufgabe 1a, aber keinen b- oder gar c-Teil. Jetzt könnte da ja einfach nur das “a” reingerutscht sein, jedoch gab es für die Aufgabe 1 insgesamt 24 Punkte, das sind ungefähr ein viertel aller Punkte der Klausur. Und man musste dort keinen Text schreiben oder gar einen Zusammenhang erklären, sondern einfach nur 4 Begriffe nennen. Für 4 Begriffe 24 Punkte, macht 6 Punkte pro Begriff? Das ist dann doch etwas viel, also gehen wir hier davon aus, dass es wohl doch einen b-Teil hätte geben sollen.

Ist es denn so schwierig, eine Klausur ohne Fehler zu stellen? Vielleicht sollten die Dozenten sich einfach mal die Mühe machen und ihre Klausur von einem Kollegen durchlesen lassen. Schließlich müssen wir Studenten ja auch immer alles richtig machen in unseren Projektarbeiten usw.

Vertragswechsel bei o2

Sonntag, 04. April 2010

Diese Woche habe ich bei o2 meinen Handyvertrag auf einen neuen Tarif umstellen lassen. Bei meinem bisherigen Vertrag hatte ich bereits das Internet-Pack-M gebucht, um für das Handy eine Internetflatrate zu haben. Also fragte ich an der Hotline extra, ob der Internet-Pack-M erhalten bleibt oder ob ich ihn neu buchen muss. Die Antwort war, dass ich nichts neu beantragen muss und der Tarif weiterläuft. Soweit so gut.

Dann ging es aber los mit den Info-SMS von o2, dass der Vertrag umgestellt wird. Dabei kam dann auch folgende SMS:

  • Wir haben das von Ihnen gebuchte Internet-Pack-M wie gewünscht für Sie storniert. Ihr Team von o2.

Also mal wieder eine Falsch-Auskunft von der Hotline. Hab dann dort angerufen, um mir die Kosten erstatten zu lassen, die beim Surfen in dem teuren Standardtarif entstanden sind und um das Internet-Pack-M wieder zu buchen. Die Kosten würde man mir nach Erhalt der Rechnung gutschreiben und der Internet-Pack-M würde wieder gebucht werden.

Darauf ging es dann wieder mit den Info-SMS weiter:

  • o2 Info: Danke für Ihren Auftrag zur Deaktivierung Internet-Pack-M. Die Deaktivierung erfolgt am 13.05
  • o2 Info: Danke für Ihren Auftrag zur Deaktivierung Standardabrechnung-Volume. Die Deaktivierung erfolgt am 03.04
  • o2 Info: Danke für Ihren Auftrag zur Deaktivierung Standardabrechnung-Volume. Die Deaktivierung erfolgt am 03.04
  • Sehr geehrter o2 Kunde, ihre Bestellung für das Internet-Pack-M wird bearbeitet. Sie können das Pack ab dem nächsten Kalend Kalendertag ertrag nutzen. Ihr Team von o2

Theoretisch sollte jetzt also wieder alles richtig eingestellt sein, auch wenn das wohl ziemlich kompliziert für o2 war, wenn man die vielen SMS betrachtet… Jetzt muss ich nur noch hoffen, dass das mit der Gutschrift wieder klappt.

Mein Blog

Samstag, 03. April 2010

Nachdem ich mir schon länger eine eigene Homepage erstellen wollte, habe ich mir heute mal etwas Zeit genommen und diesen Blog installiert. Ich werde hier, sofern ich nicht von meinen Plänen abweiche, über mich, mein Studium und meine Hobbys schreiben bzw. bloggen.

In der nächsten beiden Wochen dürfte es aber noch etwas ruhiger sein, da nach Ostern meine Klausuren für mein Wirtschaftsinformatik-Studium beginnen. Insgesamt sind 10 Klausuren zu schreiben, für die ich jetzt noch fleißig lernen darf. Wer genau wissen will, über welche Themen die Klausuren gehen, findet unter http://pollux.ba-mosbach.de/cmos_extern_kurs_ext/wi08s-2010-13.pdf meinen Vorlesungsplan, in dem auch meine Klausuren eingetragen sind.

Jetzt wünsche ich allen noch viel Spaß beim Lesen meines Blogs, und dann ist der erste Artikel auch zu Ende.