Archiv ‘Uncategorized’

Samstag, 11. März 2006

How-To: Debug

Wil Shipley gibt in seinem abonnierenswerten Blog einen Blick auf das Debugging von Delicious Library. Ein sehr interessanter Artikel – auch wenn ich nach dessen Lektüre gemerkt habe, dass auch die nur mit Wasser kochen. Da sie aber keine Web-Applikation entwickeln, die auf einem bestimmten Server mit bestimmter Software läuft, ist die Fehlersuche deutlich aufwendiger. Nicht so aufwendig wie bei Microsoft Windows, dass noch einmal eine Million weiterer Kombinationen von Hard- und Software vorweist als die relative bescheidene Mac OS X-Plattform.

Einige Ausschnitte, die mir persönlich gefallen haben:

Now, let me state something unequivocally: 98% of the time when you think you’ve found a bug that is not your fault, it really is your fault. The other 2% of the time… well, it’s probably your fault as well.

Quelle (im folgenden): Pimp My Code, Part 8: Mary, Mary, why you buggin?

Das ist nicht nur beim Programmieren so, sondern auch beim PC-Support. Allzuoft schiebt man dem Benutzer die Schuld in die Schuhe und muss im nachhinein zugeben, dass er überhaupt nicht für den Fehler verantwortlich ist.

Oder man erinnere sich daran, was/wem man die Schuld in die Schuhe schob, als man das letzte Mal etwas verloren hatte und es nicht mehr finden konnte. Zuerst verdächtigt man jedes einzelne Mitglied der Familie als den hinterhältigen Bösewicht, bis man am Schluss eingestehen muss, dass man den Schlüsselbund wohl selber unters Sofa fallen liess.

Es entspricht wohl einfach dem menschlichen Ego, aus Reflex zuerst einmal die Mitmenschen für Fehler und eigenes Fehlverhalten verantwortlich zu machen.

First off, when you’re tracing down a bug, keep your mind open. Don’t get married to a theory or an approach. This isn’t like programming, you’ve got to defocus your mind, read a bunch, look at your code. Don’t think „I know I did this,“ think, „I *thought* I did this, but maybe I’m crazy.“ Question EVERY LINE around the crash. Does „if“ really mean what I think it does? Does „*“ bind tighter than „++“? Did I really write the correct variable name there, or did I write in some different variable and I keep reading it as the correct variable because that’s what I meant to write?

Das ist ein weiteres Problem beim Debugging: Es ist sehr schwer, den im Geiste bildlich vorhandenen Code (der natürlich funktioniert, ist ja klar! *smile*) beiseite zu schieben und die tatsächlich niedergeschriebenen Anweisungen zu realisieren. Es erfordert grosse Konzentration, zu erkennen, was man schlussendlich wirklich zu „Papier“ gebracht hat. Gelingt dies, findet man den Fehler wenige Minuten später.

Debuggen will gelernt sein!

A propos debuggen: Ich kann mich gut daran erinnern, als ich im 2001 für einige Monate bei einem Gymer-Kollegen in seinem Studenten-Studio in Zürich unterkam (er war … im Militär?). Es war ein Studentenwohnheim an der Wehntalerstrasse, wenn ich mich richtig erinnere, wo sich weitere Kollegen aus dem Kirchenfeld aufhielten und ihr erstes Semester Elektro-Technik an der ETH absolvierten.

Der Zufall wollte es, dass ich eines Abends bei einem Kollegen auf ein Bier vorbeiging und dieser mit den anderen Studenten vor dem Laptop sass und Java-Übungen programmierte.

Fasziniert sah ich ihm über die Schultern, als das Programm Fehlermeldungen ausspuckte. Hilflos sass er vor dem Computer, sah die Fehlermeldungen an – und wusste nicht weiter. Da ich Java bis heute nicht erlernt habe, konnte ich ihm nicht in spezifischen Fragen helfen. Doch mich juckte es förmlich in den Fingern, einzugreifen und das zu tun, was ich täglich bei streikenden .asp und .php-Scripts tat: print()-Befehle einzubauen, um zu schauen, wo genau der Code durchkam und welche Abschnitte er nicht erreichte. Oder auch, welchen Wert eine Variable zugewiesen bekam. Ihm mangelte dieses Wissen und die Erfahrung, weil er noch nie aus eigenem Antrieb etwas programmiert hatte und ihm somit die Übung und die Verbissenheit fehlte. Das Problem liess sich einfach nicht lösen, indem man nur auf den Bildschirm starrte. Man musste etwas tun – den Profi-Coder zu rufen und ihn das Debugging übernehmen zu lassen, war aber wohl die schlechteste Idee von allen …

Damals begann es mir zu dämmern, dass Programmieren die eine, richtiges Debuggen die andere Fähigkeit eines guten Entwicklers ist. Wer das eine gut konnte, war noch nicht prädestiniert, auch das andere – das Auftreten von Fehlern und unerwartetes Verhalten von Programm-Code – richtig zu handhaben.

Moral der Geschicht: Noch während den Prüfungen im Sommer kam besagter Kollege zurück auf Bern und begann im nächsten Semester einen neuen Studiengang.

Tags:
Labels: Uncategorized

Keine Kommentare | neuen Kommentar verfassen

Samstag, 11. März 2006

Satzzeichen

tja du solltes die aktuellen nachrichten verfolgen Frau Merkel hat dies der Telekom auf der CEBIT versprochen………… weiss auch nicht was das geschrei soll die T Com sind nicht die ersten da gibts schon arcor usw die das schon längst im angebot haben ………

Das nächste Mal bitte die Punkte (Satzzeichen) nicht gruppieren sondern an die entsprechenden Stellen setzen. Vielen Dank.

Quelle: Weitere Details zum kommenden IPTV-Angebot von T-Online Vision

Tags:
Labels: Uncategorized

Keine Kommentare | neuen Kommentar verfassen

Samstag, 11. März 2006

gangstahVille n‘ generation G

LuLus (nicht mehr so) anonyme Eskapaden haben mich auf seine persönliche Web-Site gebracht – unglaublich, was ich dort vorfinde:

[…] All die 14-jährigen Pimps mit ihren 12-jährigen Biatches gehen mir langsam auf den Keks. […] Man könnte glatt eifersüchtig werden, denn wenn diesen Posern mal das Geld ausgeht, können sie einfach in ihren Hosen wohnen.

Quelle: generation_g.zip

Das hatte ich heute doch gerade! Der Artikel rundet die ganze Diskussion ab und lässt keine Fragen mehr offen. Wenn dies ein Spiegelbild des neuen Zürichs ist, dann haben wir es hier in Bern ja noch ganz gemütlich …

LuLu, du bist ein Schatz!

Via: di lorenzo – downloads und meh

Tags:
Labels: Uncategorized

Keine Kommentare | neuen Kommentar verfassen

Freitag, 10. März 2006

Just Fucking Google It!

Wenn der Chat-Partner mal wieder selten blöde Fragen stellt:

Just Fucking Google It!

Wenn er eher orthographische Mankos aufweist:

Tags:
Labels: Uncategorized

Keine Kommentare | neuen Kommentar verfassen

Freitag, 10. März 2006

Google Analytics sau-langsam

Wer wie ich seit einigen Tagen Probleme mit Blogger.com hat (träge Ladezeiten), sollte in seiner /etc/hosts folgendes eintragen:

127.0.0.1     www.google-analytics.com

Blogger selbst funktioniert nämlich, aber Google Analytics Server scheinen einen Performance-Engpass zu haben. Die Browser legen sich so lahm, weil sie unzählige Sekunden (Minuten?!) auf die Antwort dieses Services warten.

Vgl. bspw. auch Google Analytics saugt! oder Google Analytics

Tags:
Labels: Uncategorized

Keine Kommentare | neuen Kommentar verfassen

Freitag, 10. März 2006

Pänzerle

Irgendwie scheint beim Bund immer noch zuviel Geld einfach so „rumzuliegen“. Wie sonst kommen unsere obersten Krieger auf die Idee, eine halbe Milliarde (!) Schweizer Franken für die Aufrüstung des Panzer-Fuhrparks zu fordern? Haben wir in Zeiten der überaus knappen Bundeskassen nichts besseres zu tun, als vorweihnächtlich Spielzeuge für unsere Kinder in Feldgrün anzuschaffen?

Neben 12 Minenräum- und Geniepanzer hat man auch ein Auge auf Kampfpanzer geworfen. Brauchen wir das wirklich? Kommt die Waffe der Blitzkriege im 20. Jahrhundert auch in diesem Jahrhundert zu neuem Ruhm? Und das erst noch unter Schweizer Flagge? Wow! Ich kann mir das einfach (noch?) nicht vorstellen. Unsere Militärs dagegen wohl schon …

Was machen Kampfpanzer, für mich eine Offensivwaffe erster Güte, in den Händen eines neutralen Staates? Da wir hoffentlich in nächster Zeit nicht vorhaben, einen unserer Nachbaren hinterfutzig zu überfallen, sehe ich nicht ganz genau, wieso wir derart teure Tanks benötigen. Stellen wir sie ins Mittelland und warten, bis der Feind auftaucht? Oder fahren wir sie in unwegige Bergtäler und lassen die Besatzungen einen haufen wertlose Steine verteidigen, während die wichtigen Städte in die Hände des Gegners fallen?

Andererseits frage ich mich sowieso, woher wir in einem kriegerischen Konflikt (um uns herum – wir sind ja neutral) all das Benzin hernehmen, um diese Gefährte in der halben Weltgeschichte herumzuschicken. Oder kaufen wir etwa die VW Lupo 3L-Version der Gefährte? Kompogas-Schüsseln? Vielleicht doch lieber mit Rapsöl betriebene Gefährte.

Und drittens glaube ich immer noch nicht, dass unsere „3-Wochen-im-Jahr“-Pänzeler sehr gut abschneiden würden im Kampf gegen hochtechnisierte und kampferprobte Verbände. Da nützen einem auch die dicksten Stahlplatten nicht mehr …

Eben gerade darum benötigen wir laut den Armee-Planern die Dinger:

Um aber eine minimale Kompetenz zur Abwehr eines militärischen Angriffs zu erhalten, müsse der verbleibende Verteidigungskern der Armee unbedingt „vollständig ausgerüstet“ sein. Wenn kritische Komponenten fehlten, sei das Konzept des Aufwuchses gefährdet: Es sieht vor, dass ein minimaler Teil der Armee den Verteidigungskampf weiter trainiert, damit daraus in Zeiten militärischer Bedrohung wieder eine kampfstarke Truppe aufgebaut werden könnte.

Quelle: Halbe Milliarde für bessere Panzer

Denke nur ich, dass hier der Realismus abhanden gekommen ist? Bis unsere Truppen das „Pänzerlen“ wieder (konnten wir es jemals?) erlernt haben, sind im Bundesbern schon längstens die Flaggen des Annexors gehisst und wir gehen wieder unserer Arbeit nach – anderer Boss, aber immer noch derselbe Trott wie vorher.

Die Schweiz ist ja sowieso nur interessant, wenn der Finanzplatz intakt bleibt. Ob man die UBS, Credit Suisse und die Nationalbank im 21. Jahrhundert mit Panzern einnimmt?

Tags:
Labels: Uncategorized

Keine Kommentare | neuen Kommentar verfassen

Freitag, 10. März 2006

Microsofts erste Web-Site

A Brief History of Microsoft on the Web

Tags:
Labels: Uncategorized

Keine Kommentare | neuen Kommentar verfassen

Donnerstag, 9. März 2006

Googles Motto

… operational mantra: „If it can’t be indexed it must be destroyed“ …

Quelle: Google plans orbital mind control

Warten wir mal ab – es sollen zuerst ja noch Google Calendar und Google Drive („GDrive“) im Anmarsch sein.

Tags:
Labels: Uncategorized

Keine Kommentare | neuen Kommentar verfassen

Donnerstag, 9. März 2006

Humvees in Irak

Ein spannender Artikel über die Gefahren im mobilen Alltag im Dreistromland:

Irak: Darauf waren wir nicht eingestellt

Guerilla – eine sehr effektive Waffe, der die am besten ausgebildete und ausgestattete Armee der Welt nichts gross entgegenhalten kann.

Tags:
Labels: Uncategorized

Keine Kommentare | neuen Kommentar verfassen

Mittwoch, 8. März 2006

Terminfinder 2.0

Nach langer Wartezeit habe ich heute Terminfinder 2.0 den letzten Schliff verpasst. Auf Anregung eines Bekannten habe ich das Produkt in TerminGenius! umbenannt. Danke, Sacha!

Was kann TerminGenius!/Terminfinder?

Dieses kleine Tool eignet sich für alle Leute, die mit vielen Personen einen Termin festlegen müssen, beispielsweise für Sitzungen oder Ferienreisen. Anstelle eine grosse Anzahl Mails in der Weltgeschichte herumzuschicken, können Termine auf diese Weise effizient und transparent festgelegt werden. Bestehend aus drei Files erlaubt es die permanente Speicherung von Teilnahme-Daten unendlich vieler Personen an unendlich vielen Tagen. Jedermann kann mittels Web-Browser auf die Applikation zugreifen und seine Daten allen anderen Teilnehmern bekannt geben. Einzelne Tage lassen sich ausblenden, entweder definiert durch den Wochentag oder das exakte Datum. Tage können zudem in kleinere Zeitabschnitte unterteilt werden (bspw. Vor- und Nachmittag).

Quelle: Quelloffene Software

Das Programm ist in PHP geschrieben und setzt minimale Anforderungen an den Web-Server voraus. Der Anwender muss die beiden mitgelieferten .txt-Dateien schreibbar machen (chmod 666) und danach über einen Web-Browser das Script aufrufen. Es empfiehlt sich, vorher das Initialpasswort in der Datei index.php zu ändern.

Download (.tar.gz)

Viel Spass bei den Sitzungen!

Tags:
Labels: Uncategorized

3 Kommentare | neuen Kommentar verfassen