Vor einiger Zeit habe ich ein kleines Bastelprojekt mit den Namen JiTT ins Leben gerufen um das Kaazing Gateway zu testen. Leider gibt es am Kaazing Gateway schon seit einiger Zeit keine Aktualisierungen mehr und mich habe mich nach Alternativen umgeschaut. Gefunden habe ich die Ajax Push Engine kurz APE.
Genau wie das Kaazing Gateway bietet APE die Möglichkeit persistente Verbindungen zwischen Client (Browser) und Server aufzubauen. Dabei wird ein Coment-Server und ein kleines Javascript Framework benutzt.
Die Installation ist Dank eines deb-Paketes sehr einfach und gut dokumentiert. Weiterhin gibt es einige Demo-Anwendungen so dass man schnell anfangen kann zu basteln.
Ein Vorteil gegenüber dem Kaazing-Gateway: APE benötigt keine Java-Laufzeitumgebung und kommt somit mit wesentlich weniger Arbeitsspeicher aus. Insgesamt wirkt der Comet-Server um einiges schlaker und performanter. Lasttests konnte ich bisher noch nicht machen, ich werde mich aber bemühen dies nachzuholen.
Abschließend noch der Hinweis, dass das Projekt JiTT ab sofort und folgender URL zu finden ist: http://jitt.geekservice.de
No Comments . read more
February 10th, 2010
PHP
Andauernd vergesse ich dass es Sie gibt: Konstanten für verschiedene Datumsformate. Ausserdem sind Sie (wie ich finde) bei php.net nur schlecht dokumentiert. Darum hier nun für alle ein Codebeispiel und der Link zu den restlichen Konstanten.
Folgender Code würde z.B. soetwas ausgeben:
Wednesday, 10-Feb-10 18:02:49 CET
1
| echo date(DATE_COOKIE, time()); |
Alle dieser nützlichen Konstanten sind hier dokumentiert: Datumskonstanten bei php.net
No Comments . read more
October 7th, 2009
Performance . PHP . Webtechnik
Heute möchte ich mal ein paar Worte zu den Funktionen isset und array_key_exists loswerden. Genauer angeschaut habe ich mir das Verhalten der beiden Funktionen beim Prüfen ob ein Feld in einem Array existiert. Bevor ich zur Performance komme möchte ich jedoch noch auf ein paar Besonderheiten der Funktionen eingehen:
Um zu prüfen ob ein Feld in einem Array existiert ohne dabei Fehlermeldungen zu erzeugen muss vor beiden Funktionen isset und is_array aufgerufen werden.
Beispiel:
1
2
3
4
| if(isset($foo) && is_array($foo) && isset($foo['bar']))
{
$check = true;
} |
1
2
3
4
| if(isset($foo) && is_array($foo) && array_key_exists('bar', $foo))
{
$check = true;
} |
[more...]
1 Comment . read more
October 1st, 2009
Performance . PHP . Webtechnik
Folgendes Problem hat man als Coder sicherlich öfters zu lösen: Man möchte wissen ob String A, String B oder String C (u.s.w) in einem Text vorkommen. Beispielsweise holt man eine Liste mit Keywords aus einer Datenbank und möchte wissen ob eins dieser Keywords in einem Text vorkommt.
Um das Problem zu lösen gibt es sicherlich zig verschiedene Möglichkeiten. Die gängigsten sehen wahrscheinlich in etwas so aus:
1
2
3
4
| if(stripos($haystack, $needle) !== false)
{
$found = true;
} |
1
2
3
4
| if(preg_match('/'.$needle.'/is', $haystack) == 1)
{
$found = true;
} |
[more...]
1 Comment . read more
August 2nd, 2009
Geek . Packet-Radio
Eigentlich habe ich ein S-Video Kabel gesucht (und auch gefunden). Wesentlich interessanter war aber, dass ich mein altes TNC 95 im Keller entdeckt habe. Ein Paket-Radio-Modem aus CB-Funk Zeiten. Mit einem solchen TNC konnte man damals Daten per CB-Funkgerät übertragen. Die maximale Datenübertragungsrate lag bei 2400 Boud, üblich waren aber eher 1200. Das besondere an diesem damals 250 DM teuren Gerät: Es konnte, ähnlich einem Bouncer, auch dann antworten wenn der angeschlossene PC aus war. Nur das TNC und ein Funkgerät wurden benötigt.
Beitreibt heutzutage eigentlich noch jemand ernsthaft Packt-Radio?
No Comments . read more
August 1st, 2009
lemmingzshadow
Gerade habe ich endlich mal die (schon vor langem angelegte) About-Seite mit ein wenig Inhalt gefüllt. In dem Zuge habe ich auch gleich mal Links zu den diversen Social-Networks hinzugefügt, bei denen ich angemeldet bin. Ein schönes einheitliches Iconset welches sich dafür prima verwenden lässt findet man hier: Free glossy Community Icons (Danke für’s kostenlose bereitstellen)
1 Comment . read more
August 1st, 2009
MySQLi . PHP
Um auf MySQL Datenbanken zuzugreifen verwende ich gerne die MySQLi-Erweiterung von PHP. Vor ein paar Tagen musste ich dabei feststellen, dass es einen fiesen Fehler in der Methode “set_charset” gibt der zur Folge hat, dass die UTF-8 Unterstützung teilweise nicht funktioniert. Wenn man eine Verbindung zur Datenbank herstellt und Dabei den Konstruktor der MySQLi-Klasse verwendet funktioniert das anschließende setzten des UTF-8 Zeichensatzes nicht. Wenn man die Verbindung allerdings mit der Methode “real_connect” öffnet funktioniert es wunderbar.
[more...]
No Comments . read more
July 21st, 2009
Azubi . Fliks
Mein Arbeitgeber, die Fliks GmbH, sucht aktuell noch einen Auszubildenden zum “Mediengestalter Digital- und Printmedien”. Weitere Informationen (Anforderungen, Einsatzbereiche, etc.) gibt es in einem Artikel auf macnotes.de. Natürlich gibt es auch eine richtige Stellenausschreibung.
Bitte weitersagen oder direkt bewerben
No Comments . read more
Soeben habe ich das erste Update an meinem Websocket-Projekt jitt.cc live geschaltet. Ab sofort können neben der Public Timeline von twitter auch Walls “live” angeschaut werden. In Twitter-Walls werden nur Tweets gelistet welche einen bestimmten Suchbegriff enthalten. Neue Tweets erscheinen auch hier direkt ohne das der Client einen Reload o.Ä. machen muss. (Beispiel: http://jitt.cc/wall/simpsons/)
[more...]
No Comments . read more
Am Wochenende habe ich ein erstes kleines neues Projekt zusammen gebastelt um ein wenig mit Websocketes zu experimentieren. jitt.cc macht momentan nicht viel mehr als die Twitter Public Timeline “live” im Browser anzuzeigen. Natürlich ist mir bekannt, dass es schon viele Projekte gibt die genau diese Funktion bereits bieten. Mir geht es aber weniger um die Funktion sondern um die eingesetzte Technik. [more...]
2 Comments . read more