Abnehmen

Seitdem ich vollzeit arbeite, kann ich nicht mehr den ganzen Tag mit dem Rad durch die Gegen düsen oder auf andere Weise in Bewegung bleiben. Nur noch den halben Tag;) Recht schnell habe ich festgestellt, dass ich, wenn ich die meisten Zeit nur vor dem PC sitze deutlich weniger Kalorien brauche als ich während meines Studiums verbrennen konnte, und so habe ich zwischenzeitlich ganz ordentlich zugelegt. Seit einigen Wochen achte ich verstärkt darauf, nicht zuviel auf einmal zu essen, was auf jeden Fall schon mal nützlich ist. Die Nudelberge, die man in den Restaurants hier im Nordend Mittags aufgetischt bekommen kann, versuche ich beispielsweise durch Suppen oder Salat zu ersetzen. Und ich versuche auf Weißbrot und Zucker möglichst zu verzichten, und mich möglichst eiweißreich zu ernähren. Sport mache ich ja sowieso schon viel, und das werde ich auch weiter so durchziehen.

Um mich zusätzlich zu motivieren, Süßkram, Pizza, Nudeln usw möglichst fern zu bleiben, muss ich mir mal künstlich etwas Druck aufbauen und mir ein klares Ziel setzen. Es ist allgemein bekannt, dass allgemeine gute Vorsätze der Art „ich möchte mehr Sport machen“ oder „ich möchte irgendwann mal chinesisch lernen oder so“ nicht viel bringen, solange kein klaren, erreichbaren, zeitlich klar abgegrenztes Ziel damit verbunden ist. Und genau ein solches Ziel setze ich mir hiermit, offiziell für alle nachlesbar, was den Druck natürlich noch mal erhöht und damit die Erfolgswahrscheinlichkeit erhöhen sollte:

Wenn ich am 1.4.2009 weniger als 74 Kilogramm wiege, spende ich 150 Euro für einen noch zu bestimmenden wohltätigen Zweck.

Ein genialer Schachzug. Jetzt wirkt meine Eitelkeit gleich viel weniger egoistisch, und ich motiviere mich zusätzlich, weil ich die Katzenbabys oder hungernden Kinder (mit denen ich in den nächsten Wochen ganz gut sympathisieren können sollte^^) oder wasweißich nicht enttäuschen möchte;)

Nun ist „Gewicht“ nicht unbedingt der beste Indikator für den Erfolg von Abnahme-Maßnahmen. Denn natürlich will ich Fett loswerden und keine Muskeln. Bauchumfang oder Körperfettanteil wären also eine aussagekräftigere Metrik, aber sind halt auch schwieriger exakt zu bestimmen. Und ich will es vorerst einfach halten. Wenn ich weiter Krafttraining mache und viel Eiweiß esse, sollte der absolute Hauptanteil des Gewichtsverlustes schon Fett sein, so hoffe ich. Mein aktuelles Gewicht beträgt je nach Tageszeit zwischen 76 und 80 Kilo, und das sind schon ein paar Kilo weniger als noch vor einem Monat.

Erste Eindrücke zu Ruby

rubyVor einem Jahr habe ich Why the Lucky Stiffs‘ poignant guide to ruby mal recht oberflächlich überflogen, mich aber ansonsten nicht weiter mit Ruby beschäftigt. Nachdem ich mir vor kurzem Perl angesehen habe, was durch die vielen globalen Funktionen und Ausnahmen zu Sonderregeln keinen besonders guten Eindruck auf mich machte, will ich mich jetzt doch wieder mit der moderneren, vollständig objektorientierten und vielleicht auch in absehbarer Zukunft relevanteren Variante aus Japan beschäftigen. Ich will gar nicht leugnen, dass Steve Yegges‘ gemeine Abrechnung mit Perl auch eine Rolle dabei gespielt hat, mich von Perl (vorerst) sehr schnell wieder abzuwenden.

Ruby ist eine „Scriptsprache“, genauso wie Perl oder Python. Das heißt vor allem, dass sie interpretiert und nicht kompiliert wird, und dass dynamische Typisierung verwendet wird. Dadurch eignen sich Scriptsprachen gut dazu, schnell kleine Programme zu entwickeln, sind aber prinzipiell weniger geeignet für große Projekte mit vielen Abhängigkeiten (weil das Sicherheitsnetz der statischen Typisierung nicht gegeben ist) und performance-kritische Anwendungen (weil das Programm zur Laufzeit in Maschinencode umgewandelt werden muss). Wobei es mittlerweile riesige Projekte in Perl und Ruby gibt, und auch Computerspiele mittlerweile in Python programmiert werden können. Allgemein scheinen dynamisch typisierte Sprachen im Kommen zu sein, wobei man allerdings dynamische Typisierung nicht mit schwacher Typisierung verwechseln sollte: In Ruby etwa werden die Typen zwar erst zur Laufzeit, beim Aufruf der entsprechenden Stelle im Code, überprüft. Aber sie werden halt überprüft, und wenn der Typ des übergebenen Objekts unpassend ist, dann wird das Programm abgebrochen. In PHP und Perl würde in vielen Fällen einfach weitergemacht, was zu schwer nachvollziehbaren Fehlern im Programm führen kann.

Als Ruby-Version habe ich mich für das normale Ruby 1.8.6 für Windows entschieden. Jruby, XRuby, Groovy, IronRuby usw hören sich auch interessant an, aber erstmal wollte ich mit der Standard-Variante anfangen. Im Gegensatz zu perl, das sich unter Windows zu fühlen scheint wie ein Tiger im Zoo, ist die Installation bei Ruby wirklich kinderleicht und man kann sofort anfangen, Programme zu schreiben und die Konsole zu nutzen:
Ein Ruby Programm kann man einfach ausführen, in dem man eine *.rb-Datei doppelklickt, und die interaktive Ruby-Shell erreicht man durch den Befehl irb in der Windows-Kommandozeile. Auch sehr praktisch:
y:\ruby\projects>irb
irb: load "hello.rb"
=> true
irb: hello("World")
helloWorld

Man kann also Ruby-Quellcode mit dem load-Befehl in irb laden und dann die dort definierten Klassen und Methoden nutzen. Sowas kann beim Debuggen natürlich sehr nützlich sein.

Nach einiger Zeit mit Notepad++ habe ich natürlich nach einer echte IDE verlangt, da ich ein verwöhntes Eclipse-Kind bin. aptana

Ich versuche es mal mit Aptana als Standalone-Produkt. Das Programm basiert auf Eclipse, konzentriert sich aber auf Webentwicklung und ist open source sowie in der Standard-Version auch kostenlos.

Stackoverflow.com

stackoverflowDie Entstehung der Seite verfolge ich bereits seit über einem halben Jahr als Abonnent des Stackoverflow Podcasts, aber selbst angemeldet habe ich mich erst später. In der Seite geht es um nichts als das Stellen und Beantworten von Programmierfragen. An sich nichts weltbewegend neues, aber die unheimliche Dichte von Experten stellt sicher, dass sogar schwierige Fragen meist schnell beantwortet werden könnten. Und durch das motivierende Punkte und Auszeichnungen-System nehmen sich die Experten auch tatsächlich die Zeit, die Fragen tatsächlich zu beantworten. Etwas frustrierend ist, dass man als Anfänger (bevor man 50 Punkte hat) sogut wie gar nichts auf der Seite machen darf. Heute habe ich diese Grenze endlich überschritten, und werde versuchen die Seite in Zukunft noch öfter zu nutzen, sowohl um Fragen zu stellen, als auch um mich am Beantworten anderer Leute Fragen zu beteiligen.

Ich würde behaupten, dass jeder Softwareentwickler oder Informatiker sich die Stackoverflow zumindest mal angesehen haben sollte.

Ode an mein iPhone

Das iPhoneMittlerweile besitze ich mein iPhone seit etwa einem halben Jahr, und ich muss sagen, es ist den Preis (den mein Vater berappt hat:P) vielfach wert, zumindest für mich.

Das Gerät ist schon recht nah dran an den Systemen, die ich aus Science-Fiction Büchern kenne. Ich nutze es zum Telefonieren (selten und knapp, wie es meine Art ist^^), gelegentliches E-Mail lesen und Websurfen (nur wenn kein PC erreichbar ist allerdings), zum Spielen, zum Musik-, Literatur- und Podcast-Hören. Die Map-Funktion samt GPS sorgt dafür, dass ich mich deutlich seltener verlaufe oder verfahre, ich kann jederzeit dringend benötigte Infos im Netz suchen, und obwohl die Foto-Qualität recht mäßig ist, mache ich auch meine Fotos damit.

Kein Wunder, dass ich nicht einmal daran denken möchte, mein iPhone zu verlieren oder kaputt zu machen. Gestern abend hatte ich einen Schockmoment, als es mir weggerutscht und aus etwa 1,30 Meter auf den Steinboden gefallen ist. Beindruckenderweise hat es nicht einmal eine Delle davongetragen. Ich werde das trotzdem nicht zur Angewohnheit werden lassen;)

Die Bindung an T-Mobile und an iTunes, und die Unfähigkeit, Ogg-Vorbis- und insbesondere WMA-Dateien abzuspielen, mögen einige Leute abschrecken, aber ich nehme das in diesem Fall gern in Kauf. Über die genial-intuitive Bedienbarkeit des Touch-Displays wurde ja schon geschrieben, ich kann mich dem nur anschließen;)

Die Trade-Deadline rückt näher

vladimir_radmanovic. photo by michael248Die angespannte Wirtschaftslage lässt auch die NBA nicht kalt. Es wird gemunkelt, dass Teams, die dieses Jahr nicht um den Titel mitspielen werden, durch Trades die Ausgaben in Zeiten sinkender Ticket-Einnahmen reduzieren möchten, was für die Favoriten eine Chance ist, sich noch einmal zu verstärken. Bei den Suns wird sowohl ein Trade von Amare wie von Shaq für Möglich gehalten, ebenso könnten auch T-Mac oder Lamar Odom ein neues Zuhause finden. Sogar Chris Bosh könnte in einem Monat in einem anderen Team spielen. Interessant wird auch sein, wie die Magic und Sixers auf die schweren Verletzungen von Jameer Nelson und Elton Brand reagieren werden. Die Deadline müsste Ende Februar sein.

Ein Trade hat bereits statt gefunden:

The Charlotte Bobcats have traded Adam Morrison and Shannon Brown to the L.A. Lakers in exchange for Vladimir Radmanovic.

Nicht wirklich sehr spannend. Beide Spieler in L.A. werden wohl im wesentlichen die Bank wärmen und Radmann wird vielleicht ein paar ganz solide Stats in Charlotte abliefern, ohne dass die Bobcats plötzlich ein Playoff-Team werden.

Futures und Forwards

eschersheimerlandstrasse6Das Bild zeigt übrigens die Aussicht aus dem Fenster im Büro bei mir auf der Arbeit, und hat thematisch nichts mit dem Post zu tun. Aber bunte Bilder kommen immer gut.

Futures sind schon ein recht altes Finanzprodukt. Im Prinzip geht es darum, den Preis für eine bestimmte Transaktion schon im Voraus festzulegen. Beispielsweise könnte ein Bauer, um das Risiko schwankender Preise zu reduzieren, mit einem Abnehmer einen Future-Vertrag über 2 Tonnen Getreide zum Preis von 10ct pro Kilogramm, fällig im August, abschließen. Wenn der Marktpreis zu diesem Zeitpunkt niedriger ist, als der vereinbarte Preis, macht er einen Gewinn, wenn es andersherum ist, einen Verlust. Der Vorteil aus der Sicht des Hedgers ist aber, dass man Preise hat, mit denen man planen und rechnen kann.

Aus der Sicht des Spekulaten haben Futures den Vorteil, dass man mit deutlich weniger initalem Kapitaleinsatz den gleichen Gewinn (oder, wenn es schlecht läuft, Verlust) erzielen kann wie wenn man beispielsweise sofort Aktien kauft (Hebelwirkung). Schließlich muss, abgesehen von einem verhältnismäßig kleinem Vorschuss (Margin), erst zum Schluss bezahlt werden.

Forwards funktionieren nach dem gleichen Prinzip, aber es gibt einige Unterschiede im Detail zwischen den beiden Vertragsarten:

  • Futures werden an (Warentermin-)Börsen gehandelt, Forwards nicht
  • Aufgrund dessen sind die Eigenschaften der gehandelten Güter bei Futures sehr genau standardisiert, bei Forwards können Details direkt zwischen den Vertragspartnern ausgehandelt werden
  • Futures werden in der Regel „glattgestellt“, das heißt, die Ansprüche auf die Ware werden verkauft, bevor es zur Lieferung kommt

Periodic.csv

periodicAls Nebenprodukt der Entwicklung des Molrechners ist eine CSV (Comma separated values, die einfachste Methode, Tabelleninhalte in leicht zu parsenden Textdateien zu speichern)-Datei des Periodensystems der Elemente entstanden, die ich aus einer deutlich umfangreicheren XML-Datei gewonnen habe. Die Tabelle hat nur vier Spalten:

Name, Masse, Ordnungszahl, Symbol

Also zum Beispiel:

Oxygen,15.9994, 8, O

Vielleicht kann ja irgendwer das irgendwann noch mal gebrauchen:
periodic.csv

Niederlage in Bad Homburg

Nachdem wir Zeuge wurden, wie die weibliche U14 von Bad Homburg die armen Mädchen vom TV Hofheim mit 124:18 bezwang, mussten wir selbst gegen Bad Homburg antreten (Allerdings nicht gegen die U14^^). Dank zahlreicher Tournovers und reichlich Wurfpech zu Beginn der zweiten Halbzeit waren wir allerdings beinahe ebenso chancenlos wie die Mädchen aus Hofheim: Mit 59:73 ging die Partie gegen den Tabellensiebten verloren. Wobei ich schon anerkennen möchte, dass die Bad Homburger auch einfach die bessere Mannschaft hatten und wirklich gut gespielt haben: Mit ihrer Trap-Defense haben sie reichlich Turnover erzwungen(auch von mir :(), und in der Offensive haben sie sich deutlich treffsicherer als wir gezeigt. Da hat unsere Überlegenheit am Brett letztendlich auch nichts mehr gebracht.

Vor dem Ende der Saison stehen noch weitere 4 Spiele aus. Wenn man auf die Tabelle schaut, deutet sich doch sehr deutlich an, dass wir die Saison auf dem 8. Tabellenrang (von 10 Teams) beenden werden: Die Teams unter uns werden uns nicht mehr einholen, und die Teams über uns sind (Homburg wegen des direkten Vergleichs) nur bei einer perfekten Ausbeute noch erreichbar. Nun weiß ich allerdings nicht, ob der 8. Platz zum Klassenerhalt reicht, aber da die Kreisliga B unter uns genauso zweigleisig wie die Kreisliga A ist, würde es mich doch sehr wundern, wenn es drei Absteiger gäbe.