Archiv der Kategorie ‘Programmieren‘

Linktipps (5)

Dienstag, den 2. September 2008

Es ist eine Weile her, seit ich die letzten Linktipps veröffentlicht habe. Daher haben sich in der Zwischenzeit auch wieder einige angesammelt.Normalerweise zähle ich die Links hier in der Reihenfolge auf, in der ich im Web über sie stolpere. Aber heute morgen viel mir eine Meldung auf, die so tagesaktuell war, dass ich sie als erstes Posten wollte und damit auch diesen Beitrag schon heute veröffentlichen. Daher hier aus aktuellem Anlass:

Google Chrome Comic

Gestern hat Google angekündigt, dass es morgen einen eigenen Open-Source Browser namens Google Chrome veröffentlichen wird. Hier schon einmal ein Comic, welches die Features und Konzepte hinter Google Chrome erläutert. Ich muss sagen, es sind einige interessante und erwähnenswerte Denkansätze dahinter und ich werde ihn auch selber sicherlich ausprobieren, aber ich glaube nicht, dass ich dafür Firefox aufgeben werde. Bei einigen der (zugegeben kleineren) neuen Funktionen kann ich mir sehr gut vorstellen, dass man diese als Firefox Addon umsetzten kann.(von nun an die Beitrage mit dem ältestend zuerst)

Harvard Graduation Speech von J. K. Rowling

Dieses Jahr hat J. K. Rowling, die Autorin der Harry Potter Bücher, die Abschlussrede für die Harvard Absolventen gehalten. Eine sehr beeindruckende und gleichzeitig unterhaltsame Rede und keine Angst, man kann sie auch genießen wenn man die Harry Potter Anspielungen nicht versteht. Das Thema der Rede ist “The Fringe Benefits of Failure, and the Importance of Imagination”.Wenn man nun schon bei den Harvard Graduation Speeches ist, kommt man an dem “Klassiker” nicht vorbei. Im Jahre 2000 hielt der Talkmaster Conan O’Brien die Abschlußrede und diese ist trotz der schlechten Tonqualität sehr unterhaltsam.

Etwas Disziplin, bitte!

Ein Text über Selbstdisziplin und den inneren Schweinehund. Vielleicht hätte ich diesen Link besser posten sollen, als ich und viele meiner Kommilitonen noch an ihren Bachelorarbeiten saßen, aber es wird sicherlich nicht die letzte Situation in unserem Leben sein, in denen wir eine Portion Selbstdisziplin gebrauchen können.

Einfachheit siegt

Ein Cartoon für alle, die im Bereich GUI-Design tätig sind.

TED Talks

TED steht für “Technology, Entertainment and Design” und ist eine jährliche Konferenz in Kalifornien zu der sich eine große Gruppe recht einflussreicher Leute treffen und über alle möglichen Themen reden. Meist gibt es ein Thema unter dem eine Konferenz steht, aber die Vorträge dazu kommen aus allen möglichen Bereicht wie z.B. Informatik, Biologie, Psychologie, Ethnologie uvm. Dabei erzählen absolute Koryphäen ihrer Fachrichtung über den aktuellen Stand in ihrem Feld, über bewegenden Geschichten oder über besondere Projekte. Die Videoaufzeichnungen dieser Vorträge werden nach und nach online gestellt. Die meisten sind zwischen 10 und 20 Minuten lang und insgesamt gibt es bereits über 280 solcher Videos. Ich habe bereits knapp die Hälfte aller Videos gesehen und kann sagen, dass fast alle im besonderen Maße beeindruckend sind. Man lernt sehr viel dabei und nach 2 Stunden TED Talks fühlt man sich deutlich besser als nach 2 Stunden Fernsehen. Vorträge, die ich im ganz besonders erwähnenswert finde, notiere ich mir und irgendwann werde ich diese Liste hier veröffentlichen. Bis dahin könnt ihr euch selber durch die Liste der Talks durcharbeiten. Ein kleiner Zusammenschnitt der am häufigsten geschauten Filme kann man hier finden: TED Top 10. Und hier noch eines meiner Lieblingsvideos: Rives on 4 a.m. Es ist jetzt nicht gerade eines der lehrreichen Videos, dafür aber um so amüsanter.

CAN YOU GUESS THE MOVIE FROM JUST ONE LETTER?

Dies ist ein Quiz für wirkliche Filmfans. Der oben stehende Satz wird angezeigt wobei jeder einzelne Buchstabe von dem Filmplakat eines anderen Films genommen wurde. Die Aufgabe besteht nun darin den Filmtitel (in englisch) nur anhand dieses einen Buchstaben zu erkennen. Bei einigen Filmen ist das recht einfach, bei der Mehrheit jedoch sehr schwer. Neben den Buchstaben ist ein Textfeld, in dem man seinen Tipp eintragen kann und wenn man Enter drückt zeigt ein roter oder grüner Punkt an, ob die Eingabe korrekt ist. Wenn man auf die Bilder der einzelnen Buchstaben klickt sieht man das Poster von dem es ist. Ich bin mit meinen 19 von 46 Buchstaben, die ich richtig erkannt habe, bereits sehr zufrieden.

LEGO Powered Time Tracking

Auch eine Art seine Arbeitszeiten festzuhalten. Mit dem besten und universellsten Spielzeug aller Zeiten.

Wie man eine Bachelorarbeit schreibt

Mittwoch, den 23. Juli 2008

Da ich ja nun mit meiner Bachelorarbeit fertig geworden bin, wollte ich einige der Erfahrungen teilen, die ich in den letzten Monaten gemacht habe.

Diese Tipps habe ich im Laufe der letzten Monate gesammelt habe und sie haben mir beim Bewerkstelligen meiner Arbeit geholfen. Sie sind sicherlich nur für Bachelorarbeiten geeignet, sondern auch für alle möglichen anderen Ausarbeitungen. Sicherlich könnte man viele der Punkte als “Common Sense” verstehen, aber ich halte es dennoch nicht für falsch, sie hier noch einmal zu erwähnen.

Die folgenden Punkte sind eher als allgemeine Regeln aufzufassen und es ist mir auch nicht immer gelungen mich daran zu halten, aber dennoch glaube ich, dass sie mir sehr geholfen haben.

Den ganzen Beitrag lesen »

Geschafft!

Dienstag, den 15. Juli 2008

Heute habe ich meine Bachelorarbeit eingereicht. Es ist geschafft!

Die letzten Wochen waren dementsprechend hektisch und anstrengend, aber jetzt macht sich ein Gefühl der Erleiterung aber auch der Erschöpfung breit.

An dieser Stelle möchte ich mich bei all jenen bedanken, die mich in den letzten Wochen und Monaten unterstützt haben. Besonderen Dank geht dabei an meine Korrekturleser.

Auch möchte ich mich hiermit für all die unbeantwortet E-Mails und ausgeschlagenen Einladungen der letzten Zeit entschuldigen. Ich versuche das alles möglichst schnell nachzuholen.

Noch ein kleiner Rückblick auf meine Arbeit: ich bin ganz zufrieden mit dem was ich geschafft habe. Letztendlich bin ich 3 Wochen vor dem offiziellen Abgabetermin fertig geworden (das hat allerdings auch den Grund, dass ich speziell um eine vorzeitige Prüfung gebeten habe und mein Kolloquiumstermin bereits in 3 Wochen ist und etwas Zeit sollte man ja den Betreuern dann doch noch gönnen, sich da durch zu arbeiten) und habe es geschafft nicht eine Nacht durcharbeiten zu müssen. Auch mit den inhaltlichen Aspekten bin ich zufrieden. Sowohl das Konzept, was ich erstellt habe, als auch dessen prototypische Implementierung, ist eine runde Sache geworden und in etwa so, wie ich es mir vorgestellt habe. Natürlich hätte man mit mehr Aufwand das noch weiter verbessern können, aber das ist ja eigentlich immer der Fall und irgendwo muss man halt die Grenze ziehen.

Wen es interessiert, hier noch einige Zahlen zu der Arbeit: Insgesamt habe ich 242 Arbeitsstunden hineingepackt, davon 150 im letzten Monat. Das mag jetzt nicht viel klingen, allerdings hatte ich nebenbei noch 5 weitere Kurse belegt mit Übungsaufgaben, Vorträgen, Projektausarbeitungen und Prüfungen. Am Ende waren es 46 Seiten reiner Text mit insgesamt 19.000 Wörtern (alles in Englisch) und rund 1500 Zeilen Code.

Jetzt werde ich mir jedenfalls erst mal ein paar Tage Entspannung gönnen, bevor ich mich daran mache, den Berg an Aufgaben abzuarbeiten, der sich in den letzten Wochen/Monaten so angesammelt hat.

Ankündigung: Firefox 3

Donnerstag, den 12. Juni 2008

Firefox LogoAm kommenden Dienstag (dem 17.6.2008) ist es endlich so weit: die neue Version des besten Browsers aller Zeiten wird veröffentlicht: Firefox 3.

Zu diesem Anlass soll der Weltrekord für die am meisten heruntergeladene Software innerhalb von 24 Stunden aufgestellt werde. Genauere Informationen dazu gibt es hier: Spread Firefox: Download Day 2008. Also alle schön am kommenden Dienstag den Firefox herunterladen.

Aber auch unabhängig von dem Weltrekordversuch lohnt es sich den Firefox 3 herunterzuladen und zu nutzen. Er bringt eine Menge neuer und besserer Funktionen. Besonders erwähnenswert sind in diesem Zusammenhang verbesserte Sicherheitsfunktionen, bessere Speicherverwaltung (mehr dazu hier: Firefox 3 Memory Use und hier: Firefox 3 Memory Usage (die Titel sind sich sehr ähnlich, aber es sind dennoch unterschiedliche Artikel, der erste ist kürzer und übersichtlicher und bezieht sich auf den zweiten welcher von einem der Firefox Entwickler stammt)), deutlich verbessertes Bookmarking (auch wenn der Export einzelner Bookmark Ordner immer noch nicht geht), Add-Ons können direkt über die Add-On-Verwaltung gesucht und heruntergeladen werden, und noch einiges mehr. Ich habe selber schon ein bisschen mit der Beta-Version herumgespielt und bin ganz zufrieden.

Leider sind immer noch nicht alle Add-Ons mit der neuen Version kompatible aber ich hoffe, dass das jetzt recht schnell geht.

Bug oder Informatikerhumor?

Donnerstag, den 29. Mai 2008

Ich habe gerade in der Fußzeile einer Website folgenden Text entdeckt:

${NameOfCMS*} ${copyright} 2000-${current_year} ${CMSDevelopmentTeam*} et al.

Ich bin mir wirklich nicht sicher, ob das ein Bug sein soll, oder ein Witz der betreibenden Seite (informatiklastig), welche  diese Meldung auf diese Weise darstellen wollte. Ich halte den Bug für die leider wahrscheinlichere, sowie langweiligere Antwort.

* Den Namen des CMS sowie dessen Entwicklungsteam habe ich anonymisiert.

JAlbum 8.0 veröffentlicht

Mittwoch, den 21. Mai 2008

Heute wurde die neue Version der JAlbum-Software veröffentlicht. JAlbum 8.0 ist die beste JAlbum Version, die es je gab. Wer jetzt nicht (mehr) weiß, was die JAlbum-Software genau kann und macht, sollte vielleicht vorher noch einmal kurz hier vorbei schauen: Artikel über JAlbum-Software.

Zu den wichtigsten Neuerungen der Version 8.0 zählen:

  • Drag & Drop funktioniert nun für alle Bilder und in der ganzen Ordnerstruktur
  • automatisch generierte RSS Feeds für die Alben
  • Performance Verbesserungen
  • modulare Architektur für bessere (zukünftige) PlugIn-Unterstützung

Die gesamte Liste alle Änderungen kann kann auf der JAlbum Homepage eingesehen werden.

Die (wie ich finde) wohl wichtigste Verbesserung ist die Möglichkeit die Bilder auch innerhalb von JAlbum bearbeiten zu können. Die gesamten Bildbearbeitungsfunktionen sowie deren Verwaltung habe ich während meines Praktikums erstellt.

Screenshot von JAlbum 8

Und es sind noch nicht einmal alle Bildfilter. Es gibt noch 7 weitere, die jedoch noch etwas Feinschliff brauche, bevor wir sie richtig veröffentlichen können. Es wird also noch einiges kommen. Die Filter sind so modular programmiert, dass man auch eigene programmieren kann und diese dem Programm hinzu fügen kann. Die bestehenden Filter sollen in absehbarer Zeit unter einer OpenSource-Lizenz veröffentlicht werden, um andere Entwickler zu ermutigen ebenfalls Bildbearbeitungsfilter für JAlbum zu programmieren.

Ich hoffe, dass diese neuen Funktionen allgemeines Gefallen finden. Ich jedenfalls bin froh, dass ich während meines Praktikums tatsächlich etwas schaffen konnte, was nun auch tatsächlich veröffentlicht wurde.

Edit (22.5.): Mashable hat jetzt auch einen Artikel darüber geschrieben, mit den Bildbearbeitungsfunktionen als Aufhänger.

Homepage Sektion: Code

Montag, den 10. März 2008

Da ich im Laufe der letzten Monate verschiedene kleine Programmierprojekte an verschiedenen Orten veröffentlicht habe, habe ich mich entschieden einen neuen Bereich für meine Homepage zu erstellen, wo ich all meine veröffentlichten Programme, Scripte und Codeschnipsel zusammentrage. Zu den meisten dieser Programme habe ich Extraseiten erstellt, mit Featurelisten, Versionsübersicht, Screenshots und Ideen für zukünftige Ideen. All das ist in dem neuen Bereich Code zu finden. Im Laufe der Zeit werde ich sicherlich noch andere Sachen dort hinzufügen. Ab und zu vorbei schauen, lohnt sich also.

Mein erstes Greasemonkey-Script: BVG Suche vorausfüllen

Donnerstag, den 28. Februar 2008

Wie ja bereits erwähnt, ist der Firefox mein Lieblingsbrowser, unter anderem, weil es dafür so viele tolle PlugIns gibt. Eines der von mir meist genutztesten PlugIns ist der Greasemonkey. Mit dem Greasemonkey kann man für bestimmte oder alle Internetseiten beim Laden Scripte einbinden, die dann das Aussehen oder die Funktionalität der Internetseite verändern/verbessern können (”Ich mach’ mir die (online) Welt, Widdewidde wie sie mir gefällt!”). Von diesen Scripten gibt es wiederum eine ganze Menge, die z.B. bei userscripts.org durchstöbert werden können.

Gestern habe ich nun mein erstes eigenes Script fertig gestellt. Hier ist einmal zu meinem Problem, welches vielleicht vielen Berlinern bekannt sein sollte, die die öffentlichen Verkehrsmittel nutzen. Wenn man eine Verbindung auf der Seite www.bvg.de sucht, so steht standardmäßig in den Suchfeldern für Start und Ziel “Haltest. / Str., Nr.”. Da man meist aber Verbindungen zu oder von der nächst gelegenen Station sucht, muss man diese immer wieder einfüllen (oder den ersten Buchstaben eintippen und dann aus den Vorschlägen, die richtige Station anklicken). Ich wollte aber, dass es mir meine Station von Anfang an vorschlägt und wenn ich darauf klicke, sie sofort verschwindet, wie sonst der Text “Haltest. / Str., Nr.”. Klingt eigentlich recht einfach, hat aber dennoch eine Weile gedauert, bis ich es so weit hatte, als in erste Linie an meinen minimalistischen JavaScript-Kenntnissen liegt. In der Zeit hätte ich das Suchformular sicherlich tausende Male ausfüllen können, aber das ist nicht der Punkt (I said it before and I will say it again: Taubenwallnister-Syndrom!).

Jedenfalls ist jetzt mein Greasemonkey-Script “BVG Suche vorausfüllen” fertig und bereit heruntergeladen zu werden.

Wie wendet man das Script jetzt an?
Ganz einfach:

  1. (wer noch nicht hat: Firefox herunterladen)
  2. (wer noch nicht hat: Greasemonkey herunterladen)
  3. ‘BVG Suche vorausfüllen’ herunterladen
  4. auf Extras->Greasemonkey->Benutzerscripte verwalten gehen
  5. Das Script ‘BVG Suche vorausfüllen’ auswählen und auf ‘Bearbeiten’ klicken (Das Script öffnet sich nun ein einem Texteditor)
  6. Im Code in Zeile 15 statt Hackescher Markt deine Station eintragen (am besten so, dass sie von der BVG Seite erkannt wird, also nicht ‘Alexanderplatz’ sondern ‘S+U Alexanderplatz Bhf’, einfach mal vorher in der Suche austesten)
  7. Speichern
  8. Jedes Mal, wenn du auf www.bvg.de gehst, dich darüber freuen, dass deine Station bereits da steht.

Bei Fragen könnt ihr euch gerne an mich wenden. Ich hoffe, dass dem/der ein oder anderen dieses Script nützlich ist.

Edit (29.2.): Einen Link habe ich noch vergessen. Wer sich auch einmal an seinem eigenen Greasemonkey-Script versuchen möchte, dem empfehle ich das Buch “Dive into Greasemonkey“, das man sich gratis herunterladen oder online lesen kann. Es enthält sehr schöne und einfach erklärte Codebeispiele, gerade auch für typische Anwendungsfälle.

das Internet ist verdammt klein

Mittwoch, den 5. Dezember 2007

Mein Chef hat mich gebeten, mir ein spezifisches Problem anzuschauen. Es geht darum, dass Bilder im AdobeRGB-Farbraum von JAlbum automatisch als sRGB-Bilder erkannt werden, wodurch die Bilder mit deutlich weniger Sättigung dargestellt werden.

Nach einigem Suchen (ich wusste inzwischen etwas mehr über das Problem und suchte nach einer bestehenden Möglichkeit den AdobeRGB-Farbraum in Java zu nutzen) tippte ich “java adobe rgb icc” bei Google ein und was ist das erste Resultat, das ich bekomme? Richtig, genau jener Post im JAlbum-Forum, in dem ein Nutzer dieses Problem beschreibt. War zwar ganz nett das zu sehen, weiter geholfen hat es mir selbstverständlich nicht.

Auch wenn das jetzt sicher nichts bringt, einen Versuch ist es trotzdem wert: Falls jemand von euch zufällig einen AdobeRGB-to-sRGB-Converter hat, geschrieben hat oder kennt, schreibt mir bitte.

Edit: Never Mind. Ich habe mir selber einen Converter geschrieben. Ging einfacher als erwartet. Darum verstehe ich nicht, warum zwar überall nach einem solchen Converter gesucht wird, es aber so wenig Implementationen gibt. Ist jetzt aber auch egal. Jetzt bin ich zumindest einer der Top-Treffer zu diesem Thema.

Sammelbeitrag: Fotos meines Zimmers, Bankkonto u.a.

Samstag, den 24. November 2007

Ich weiß, dass ich in der letzten Zeit hier nicht sehr ausführlich geschrieben habe. Das lag teilweise daran, dass ich lang gearbeitet habe und Abends auch unterwegs war. Es gibt einige Dinge zu berichten, aber die meisten davon sind es nicht wert, extra einen einzelnen Post dafür zu schreiben. Also habe ich mich entschlossen, die Sachen jetzt einfach hier in einem Sammelbeitrag zu veröffentlichen.

Mein Zimmer

Auch wenn ich nun seit mittlerweile schon 3 Wochen in meinem neuen Zimmer hier wohne, habe ich es bisher noch nicht geschafft Bilder davon zu veröffentlichen. Hier sind sie jetzt endlich:
zimmer1 zimmer2 zimmer3
Und ja, ich habe ein wenig aufgeräumt, bevor ich die Bilder gemacht habe. Außerdem möchte ich darauf hinweisen, dass mein Bett auf diesem Bid unbezogen ist, da die Bettwäsche zum Zeitpunkt des Bildes gerade in der Waschmaschine war. Also nicht über die komischen Blümchenmuster wundern. So sieht mein Bett normalerweise nicht aus.

Hier noch der Blick aus meinem Fenster:
fensterblick

Und das Haus von außen:
haus

Bankkonto

Ich habe nun endlich ein Konto bei einer schwedischen Bank. Wer denkt, dass mal als EU-Bürger hier einfach in eine Bank spazieren kann, seinen Perso vorlegt und ein Konto bekommt (wovon ich ausging), ist hoffnungslos naiv. Jeder der 5 Bankangestellten, die ich gefragt habe, hat mir eine andere Liste mit Dokumenten und Bescheinigungen gegeben, die ich angeblich brauche um ein Konto zu öffnen, auch wenn es sich dabei zwei mal nur um zwei verschiedene Filialen der gleichen Bank handelte. Als ich meinem Chef von diesem Problem erzählte rief er die Hausbank unserer Firma an, sprach mit dem Bankberater und 2 Tage später konnte ich zur Bank fahren und die Unterlagen unterschreiben. (Auf dem Weg dahin wurde ich übrigens um die Erkenntnis reicher, dass die Wärme, die man verliert, wenn bei 2 Grad Minus in der Rush Hour ein Nahverkehrszug ausfällt und der darauffolgende verspätet kommt, auch nicht durch das anschließende Gruppenkuscheln im Inneren des Zuges wieder gewinnen kann.) Jedenfalls habe ich jetzt ein Konto, mit Online-Banking und Kreditkarte. Aber das zeigt doch mal wieder, dass Banken zu den rückständigsten Unternehmen überhaupt gehören, wenn man in einem vereinten Europa immer noch solche Tortouren auf sich nehmen muss. Ein weiterer Beweis dafür war übrigens die eingesetzte Software, die der Bankangestellte für die Eröffnung des Kontos nutze. Meinen vorsichtigen Schätzungen zufolge war diese mindestens 10 Jahre alt und sah selbst in der Windows 98 Umgebung, in der sie eingesetzt wurde, optisch bereits hoffnungslos veraltet aus. Darüber hinaus konnte sie nicht zwischen Groß-und Kleinbuchstaben unterscheiden. Aber immerhin war es möglich ein ‘ü’ einzutippen, welches in der schwedischen Sprache eigentlich nicht vorkommt.

Wachwechsel vor dem königlichen Schloss

Als ich letztes Wochenende durch die Stockholmer Altstadt spaziert bin, kam ich an dem königlichen Schloss vorbei, als gerade der Wachwechsel war. Es war eine ziemliche Inszenierung und ich fühlte mich auch nicht wirklich wohl inmitten der Scharen von Touristen. Dennoch habe ich ein paar Fotos gemacht. Was tut man nicht alles für die Leser seines Blogs.

wachen1 wachen2

Vasamuseum

Ebenfalls letztes Wochenende war ich im Vasa-Museum. Bei der Vasa handelt es sich nicht etwa um ein Knäckebrot (auch wenn beide ihren Namen von dem gleichnamigen Königsgeschlecht habe), sondern um ein prunkvolles Kriegsschiff, dass 1628 auf der Jungfernfahrt noch im Hafenbecken sank. 1956 wurde es wiedergefunden und 1961 gehoben und restauriert. Jetzt steht es in dem meist besuchten Museum Skandinaviens, welches über die Entstehung des Schiffes, den Untergang und Bergung, sowie das Leben im Schweden des 17. Jahrhundert informiert.

Der Anblick ist wirklich beeindruckend, leider hatte ich vergessen meine Kamera aufzuladen, sodass sie mir schon auf dem Hinweg den Dienst verweigerte. Da das Museum jedoch so interessant war, werde ich sicherlich im Laufe der nächsten Monate noch einmal dort hin gehen und dann mache ich Fotos. Versprochen.

Und zu guter Letzt:

Erkenntnis aus dem Programmieralltag

Wenn mein 2 Stunden mit einer Fehlersuche in einem vermeintlich einwandfreien Stück Code verbringt, nur um dann festzustellen, dass die besagte Methode von einer erbenden Klasse überschrieben wird, so ist es Zeit Feierabend zu machen!