Archiv der Kategorie 'Entwicklung'

XEN und die Uhrzeit…

Samstag, den 28. Juli 2007

Schonmal probiert, auf einem virtuellen XEN-Server die Systemzeit zu ändern (z.B. mit ntpdate)? Nein? Na dann viel Spaß. ;-)

Von CVS zu Subversion

Donnerstag, den 24. Mai 2007

Gerade ziehe ich ein größeres Softwareprojekt (~40.000 Zeilen C/C++ Code) vom bisherigen Versionsmanagement CVS in ein neu eingerichtetes Subversion-Repository um. Eigentlich war das schon längst überfällig, die neuen Möglichkeiten mit Subversion sind wirklich sehr verlockend. Allerdings habe ich bisher einfach die Arbeit gescheut (und eventuelle Migrationsprobleme).

Ich bin mal gespannt wie sich’s nun mit svn so arbeiten lässt… :-)

Ajax-HTTP-Push

Mittwoch, den 16. Mai 2007

Der Artikel ist gedruckt :-)

Ich beschreibe darin verschiedene Ansätze, wie man in Ajax-Anwendungen mit möglichst geringer Latenz Daten asynchron vom Webserver zum Browser senden kann. Ein einfaches Anwendungsbeispiel hierfür wäre ein Browser-Chat-System.

Wer mehr wissen will: aktuelles ix-Magazin (Ausgabe 6/2007), Seite 122.

Konsole mit Fenstern

Donnerstag, den 10. Mai 2007

Wir arbeiten ja derzeit an einer ganz tollen neuen Software. Diese läuft nicht nur unter Linux, Solaris usw., sondern auch unter Windows. Bei den Unix-Systemen als Daemon, unter Windows eben als Dienst.

Und ab sofort kann diese “Konsolenanwendung” auch Fenster anzeigen. Bis vor wenigen Stunden hätte ich das noch nicht so ganz für möglich gehalten, aber es geht wirklich. :-) Mittels der WIN32-API kann man auch “normale” Konsolenanwendungen dazu bringen, Fenster etc. zu erzeugen. Wenn der Dienst nun also startet, kommt erstmal ein informativer Splash-Screen, und solange er läuft steht im System Tray ein Icon, über welches dieser Dienst zur Laufzeit beobachtet und evtl. später auch konfiguriert werden kann. Und das alles ohne .Net oder MFC.
Zugegeben - an sich ist das nur eine kleine Spielerei, aber ich denke dass die Bedienung des Dienstes dadurch ein wenig intuitiver wird. Und es schaut einfach toll aus. :-P

Lernen von den Meistern

Freitag, den 20. April 2007

Für eine ganz bestimmte Anwendung habe ich nach einem technologischen Lösungsansatz gesucht. Es ging dabei um eine ziemlich spezielle Sache - im Grunde wie man auf Windows-Systemen von einem Programm aus den I/O eines anderen Programmes zuverlässig kontrollieren kann. Das ist leider nicht ganz so trivial wie auf Unix-Systemen (dank Pseudo-Terminals), aber es geht. Es muss gehen. Irgendwie.

Also habe ich mich schrittweise vorangearbeitet, die relevanten WIN32-API-Befehle herausgefunden und nach Beispielcode gegoogelt. Schließlich fand ich quasi den perfekten Anwendungscode, also genau das was ich gesucht hatte. Programmiert in zuckerfeinem C, dezent dokumentiert, ohne Geschnörksel. Keine 1000 Zeilen Programmcode, die compilierte Executable nur wenige Kilobyte groß. Was war das nur für ein Programm? … Der Quellcode eines Trojaners! :cool:

Ich muss schon sagen - DAS war sicher nicht die Arbeit eines “Script-Kiddies”, sondern über eine über etliche Programmversionen hinweg optimierte Arbeit eines oder mehrerer Profis. Egal - ich will ja schließlich keinen Trojaner schreiben, aber der Code hat mir bei meinen Aufgaben definitiv weitergeholfen. :-)

undefined

Montag, den 2. April 2007

Interessante Fehlermeldung in JavaScript:
undefined.gif

Lag übrigens daran, daß das Script auf eine eigene defined()-Funktion zurückgreifen wollte, die tatsächlich noch nicht definiert war…

function defined(obj) {
return(typeof(obj) != ‘undefined’);
}

Schönere Graphen

Donnerstag, den 22. März 2007

Für eine intern entwickelte Software habe ich nun die Grafik-Bibliothek überarbeitet:

test.png

Sieht zwar nicht so wahnsinnig spektakulär aus, steckt aber doch einige Arbeit dahinter. Wer schon mal eine Funktion für Kreissegmente mit Anti-Aliasing programmiert hat kann das sicher nachvollziehen. :-)

Ein paar Pixel sitzen noch nicht so ganz perfekt, das wird aber auch noch erledigt. Jedenfalls gibt’s nun eine C++-Klasse für alle notwendigen Grafikfunktionen (natürlich mit Anti-Aliasing) und statt bisherigem Pixeltext dank FreeType2 auch richtig schöne Schriften (inklusive der obligatorischen UTF8-zu-Unicode-Konvertierung). Ach toll… :-)

:gutenacht:

STL-Performance

Mittwoch, den 21. März 2007

Ich habe mich kürzlich etwas über den Performance-Aspekt beim Einsatz der STL in geschwindigkeitskritischen C++-Programmen informiert. Manche Sachen könnte man unter Umständen schon schneller machen, aber:

Life’s too short to spend reinventing [yacc,STL,wheels]

Das ist ein Argument. ;-)

Das Zitat stammt übrigens von jemandem, der die Regentropfen einer Szene in “Das Große Krabbeln” mit STL programmiert hat (siehe hier).