Geek-Humor

written by Martin Häcker on

Schnell noch aus der Kategorie "Geek-Humor".

FĂĽr alle die die Prometheus Seite noch nicht besucht haben.

GroĂźartig.

Fone2Phone

written by Martin Häcker on

Image My first complete piece of work for Nova Media. I did this after working there for about a month.

Fone2Phone allows you to have a one stop solution to transferring everything from your cell phone to your macintosh. From there on you can either put it on your iPhone or iPod (Touch), just use it on your System or sync it to a different cell phone.

As far as the technology is concerned Fone2Phone is a subset of our more capable application FoneLink which allows you to do all this and more. Check it out!

Skewed Lines Screen-saver

written by Martin Häcker on

Image Just two days ago I watched the episode "Wie man sich täuschen kann" of Quarks und Co. (Which has a very nice Video Podcast - by the way)

They had this beautiful illusion - but in an animated form, which I have never seen before.

Well, after two hours, I had a screen-saver running and really like the results.

So, here you go too. :)

  • download
  • [source:open-source/skewed-lines-illusion-screensaver browse source]

God wrote in Lisp-Code!

written by Martin Häcker on

Supreme Geek-Unterhaltung aus dem Vortrag [wiki:2008/02/05/22.00 50 of 50].

download - mp3 (von Prometheus Music)

Beautiful Code

written by Martin Häcker on

"Lest mehr Code!" werde ich mir immer als Schlusswort des Literarischen Code-Quartetts merken.

Und weil man ja auch verdauen muss was man liest, empfiehlt sich natĂĽrlich guter Code - an dem man auch noch mehr lernen kann.

Daher war ich begeistert, dass O'Reilly das Buch "Beautiful Code" (blog) herausbrachte. Das geniale daran: Es werden nicht nur gute Programme abgedruckt, sondern Erklärungen, was hervorragende Programmierer daran schön finden und warum!

Und was fĂĽr Perlen da drin sind.

Besonders haben mir gefallen (ich bin noch nicht durch)

  • Kapitel 1: Regex matcher in C - Brian Kernighan hat Stil! (und pointer :)
  • Kapitel 14: Wie sich LAPACK ĂĽber die Zeit und die verwendete Hardware veränderte
  • Kapitel 17: Ein Rundgang durch die Layer des Virtuellen Dateisystems von BSD
  • Kapitel 18: Wie Pythons Dictionaries implementiert sind
  • Kapitel 22: Deadlock-Detection und subtile Bugs im Solaris Kernel (faszinierend)

Und so geht es grade weiter.

Gibts auf Amazon oder einem Tracker in deiner Nähe.

Kathy Sierra - Didaktik fĂĽr Reiche

written by Martin Häcker on

… und wem es reicht, von Lehrenden ständig für dumm verkauft zu werden.

Endlich mal jemand, der das, was wir aus Computerspielen und Psychologie gelernt haben, zu einem schlĂĽssigen Didaktik-Konzept zusammenbringt und auf ernsthafte Themen anwendet!

Und das beste - sie bringt ihre Theorien und deren Anwendungen in diesem wundervollen Podcast (von der OOPSLA) auch noch auf den Punkt!

Yeah.

download - mp3

p.s.: Kathy Sierra hat nicht nur die Head First-Serie bei O'Reilly mitgestaltet, sondern auch einen Blog den sie leider aufgegeben hat, nachdem ein paar Idioten sie auf ihrem Blog aufs Korn genommen haben - bis hin zu äusserst graphischen Drohungen. :-(

Hoffentlich fängt wieder zu Bloggen an - und ich bin sicher, dass jede e-mail hilft!

50 of 50

written by Martin Häcker on

Guy Steele kennt man ja. Richard Gabriel schon weniger.

Wenn die beiden aber zusammen einen Vortrag auf der OOPSLA halten - dann sollte man zuhören.

Richtiges, echtes, Geek-Kabarett.

Wie man eine schöne Animation macht...

written by Martin Häcker on

Das ist nämlich gar nicht so einfach.

Ich arbeite ja nun seit ein paar Monaten bei Novamedia - und mein erstes Projekt war, (mit einem 'sportlichen' Zeitplan von etwa 6 Wochen) bis zur Macworld im Januar 08 das Produkt Fone2Phone fertigzustellen.

Ziel der Aktion war es, ein Produkt zu haben, was bei der Migration von einem Telefon weg hilft. Dazu sollte Fone2Phone alles, was das Telefon an Daten enthält, aus diesem herausholen und in die jeweils zuständigen Apple-Applikationen befördern.

Das ist für sich genommen natürlich recht wenig (wenn auch technisch anspruchsvoll), darum haben wir uns von vornherein das Ziel gesetzt, mit dem Produkt auf der Macworld möglichst viele Preise abzusahnen. (Was auch geklappt hat. :)

Aber das ist alles nur Vorrede (und Stolz, schlieĂźlich hab ich damit gezeigt, was ich kann). Also auf zum eigentlichen Zweck dieses Posts.

Image

Die Animation. Damit Fone2Phone wirklich geil aussieht, haben wir tief in die Trickkiste gegriffen ('Wir' ist in diesem Zusammenhang mein Kollege Andreas).

Denn damit die Animation richtig gut aussieht, ĂĽberlagern wir drei Elemente.

  1. Eine Animation, die die beiden Views austauscht
  2. Eine variable Geschwindigkeit, das heiĂźt die Animation beginnt langsam, beschleunigt sich dann und wird am Schluss wieder langsam.

Bis hierher wäre ich auch darauf gekommen - aber der eigentliche Geniestreich liegt in dem letzten Element, das da noch oben drauf kommt:

  1. Die Views werden mit dem Hereinschieben eingeblendet / mit dem Herausschieben ausgeblendet.

Dieses letzte Element macht die Animation soo viel besser - obwohl es in der Komposition zuerst bewust ĂĽberhaupt nicht wahrgenommen wird.

Und das ist die Lektion, die ich heute mitgenommen habe.

Shell-Scripting aus Python

written by Martin Häcker on

Ich wollte ja schon länger meine Shell-Scripte eigentlich gerne in Python schreiben - einfach weil mich bash so fürchterlich nervt.

Allerdings ist der call-out zu shell-scripten ziemlich ekelhaft. All die schönen / ekelhaften Dinge die man in der Shell so einfach machen kann, gehen nicht.

Naja, dachte ich. :)

Mit ein bisschen Googeln hab ich [source:open-source/python-shell-scripting nämlich das hier gefunden].

Wunderschön einfach und simpel:

import shell

print shell.prefix
shell.prefix="/usr/bin"
print shell.prefix
shell.wait=False
print "calling true:", shell.true().returncode
shell.wait=True
print "calling true:", shell.true().returncode

shell.prefix="/bin"
print shell.ls("~/").stdout

Nice! Nie wieder Bash bashen.

:)

  • [source:open-source/python-shell-scripting browse source]

Vergessene Objective C-Möglichkeiten

written by Martin Häcker on

Da gibt es doch tatsächlich in Objective C die Möglichkeit, jederzeit eine Klasse unter einem anderen Namen zu importieren.

Nice.

@compatibility_alias MyShortClassName MyVeryLongClassNameThatIDontWantToTypeEveryTime;

Von Write a Screen Saver Part II