Archiv

Archiv für die Kategorie ‘Web 2.0’

Extensions für Google Chrome / Chromium

Ich schreibe derzeit einige Extensions für den Google Browser und finde das ein ganzes Stück einfacher als bei Firefox. Bin zwar nach wie vor Firefox-Nutzer und schreibe auch Extensions für diesen Browser, aber hier gebührt Google wirklich Lob. Das ist sehr gut gelöst.

Hintergrund für meine Extension-Entwicklung ist das Projekt 2ndspring. Letztlich geht es um ein Entwicklung für das Tablet um ältere Mitbürger mit einer vereinfachten Bedienoberfläche den Einstieg in das Netz der Netze möglichst einfach und intuitiv zu gestalten. Dabei nutzen wir natürlich Browser-Technologie als Basis und haben uns hier für den Google-Browser entschieden. Diese Entscheidung ist maßgeblich bestimmt durch 2 Dinge

  • Chrome gibt es auch als App für das iPad
  • Wir werden Telefonie und Video-Conferencing im Browser anbieten und nutzen daher WebRTC („WebRTC is a free, open project that enables web browsers with Real-Time Communications (RTC) capabilities via simple Javascript APIs.“)

Ziel unserer Entwicklung ist eine Web-Applikation, die im Kioskmode betrieben wird. Der Anwender am Tablet sieht also eine Seite ohne Browser-Rahmen und Navigation im Vollbild-Modus. Damit er aber während des Surfens wieder zurück zu seinem Heimathafen, der 2ndspring-Startseite, findet, benötigt er als Overlay eine unaufdringliche, aber permanent verfügbare Navigation über jeder besuchten Seite. Dazu soll die 2ndspring-Extension sich bei jedem Seitenaufruf einklinken und diese Navi drüberlegen (inject html auf gut Neudeutsch).

Nun aber genug Hintergrund. Ich beschreibe jetzt einfach kurz die Komponenten einer solchen Extension und biete dann zum Schluss einen Link um sich den Source-Code herunterzuladen. Mehr…

1000 Ideen produziert => Aber was passiert mit den ToDo’s ?

Diesmal ein etwas anderer Artikel in eigener Sache :-).

Wie man weiß, wenn man die Seite „Über mich“ gelesen hat, sind wir ein interdisziplinäres Team von systemischen Beratern und IT-lern. Eine seltene Kombination ;-).  Diese außergewöhnliche Kombination hat ein Tool hervorgebracht, das sich an Führungskräfte, Berater und Change Verantwortliche richtet : Unser preisgekröntes Change Controlling Tool ®

Best of 2012

Die Initiative Mittelstand prämiert mit dem INNOVATIONSPREIS-IT Firmen mit innovativen IT-Lösungen und hohem Nutzwert für den Mittelstand.

Die Experten-Jury zeichnete in dieser Kategorie unser Change Controlling Tool® mit dem Prädikat BEST OF 2012 aus.

Zusätzlich war mein Tool bei einer Hausmesse eines gr0ßen Beraternetzwerks ein echter Renner.

Beide Ursachen haben mich auf die Idee gebracht den Sonntag Nachmittag zu nutzen um auch ihnen das Tool kurz nahezubringen und darauf aufmerksam zu machen, dass man es online kostenlos für kleine Projekte nutzen kann.  Einfach per Selbstregistrierung ein Projekt anlegen und dann als Admin bis zu 9 Kollegen zuschalten. Ich denke dieses Angebot legitimiert diesen kleinen Marketing-Artikel :-)…

Um was geht es bei meinem Change Controlling Tool nun ? Nun letztlich gibt der Titel die Antwort :

Veränderungsprozess angestoßen => 1000 Ideen produziert => Aber was passiert mit den ToDo’s ?

Mehr…

Ein unternehmensinterner „Twitter“ : StatusNet

11. Dezember 2011 Keine Kommentare

Unser Unternehmen system worx GmbH&Co. KG hat seinen Sitz und seine Büros in München. Ich selbst wohne und arbeite im Rhein-Main-Gebiet. ein anderer lebt seid kurzem in Berlin. Dazu kommen noch eine Reihe von unabhängigen Partnern und Unternehmen, mit denen wir eng zusammen arbeiten. Diese sind über ganz Deutschland verteilt. Wie halten wir nun engen täglichen Kontakt miteinander und halten unsere Kommunikation aufrecht ?

Natürlich gibt es Mail und Skype und wir besitzen u.a. auch einen gemeinsamen Kalender und einen Dokumenten-Backbone. Telefon gibt es natürlich auch noch :-). Haben wir auch alles im Einsatz, aber so ganz zufrieden waren wir nicht. Telefon ist eine Eins-zu-eins-Angelegenheit.  2 Leute reden miteinander. Skype-Chats sind meist ähnlich angelegt. Außerdem muss man so einen Kanal auch aus Zeitgründen mal abschalten, da man sonst dauernd gestört wird. Auch Rundmails haben ihre Nachteile. Mal einfach einen „Seufzer“, einen Link oder ein Erfolgserlebnis an alle zu schicken, dafür taugt Mail nichts. Ist zu offiziell, aufdringlich und reisst die Partner aus der Konzentration. Alles nicht wirklich perfekt.

Dann kam uns die Idee Twitter zu nutzen. Für diese Zwecke perfekt, ABER nicht privat genug. Wir wollten unter uns bleiben und unsere Kommunikation verbessern, aber nicht alles was uns bewegt in die Welt posaunen :-).  Dann entdeckten wir einen solchen Service im Internet. Aber es war nicht so ganz klar, ob der auch kostenlos ist und was mit unseren Daten so passiert. Solche Befürchtungen sorgen auch nicht für ein sicheres Gefühl und das wirkt sich negativ auf die Kommunikation aus.

Glücklicherweise entdeckte ich dann ein geniales OpenSource-Projekt : StatusNet

Mehr…

Selenium: Test von Web-Applikationen

28. August 2011 6 Kommentare

Welcher Entwickler kennt das nicht : Endlose langweilige manuelle Tests, auch wenn man mal gerade nur ne Kleinigkeit geändert hat.

Testen ist ein Hauptbestandteil der Entwicklungsarbeit und nimmt eine Unmenge von Zeit in Anspruch.  Wenn man dann mal wochenlang gearbeitet hat und bis zum Erbrechen immer wieder die gleichen Tests durchgeführt hat, wird man leicht schlampig und die Qualität leidet darunter. Das darf nicht sein !

Oder ein anderes Szenario, das auch nicht ungewöhnlich und gerade bei einem aktuellen Projekt ein Thema ist:  Es gibt einen umfangreichen Registrationsprozeß für die Nutzer. Allgemeine Daten wie Adresse etc., technische Daten, sonstige Daten. In unserem Fall eine 5-stufige Abfolge von Formularen um die notwendigen Daten abzufragen. Auch hier muss man ständig testen ;-). Wer 50x diese Formulare ausgefüllt hat, wird dir die Füße küssen, wenn Du ihm eine Automatisierungsmöglichkeit bietest !

Für diese beiden Fälle (und eine Menge anderer, die im Laufe der Zeit auftauchen werden), gibt es eine sehr elegante und mächtige Lösung:

Das Open-Source Test-Framework Selenium IDE

Mehr…

Ein nützliches System-Plugin für Joomla : JB Library Plugin

19. Juni 2011 2 Kommentare

Heute eine kurze Vorstellung eines System-Plugins, das ich auf nahezu allen Joomla-Websites installiere :

JB Library Plugin

Was tut das Biest und warum empfehle ich es ?

Mehr…

Eigene Firefox-Erweiterung für automatischen Update signieren

Ich habe uns bei system worx GmbH&Co. KG vor geraumer Zeit eine eigene Firefox-Extension gebastelt, um meinen Kollegen und unseren Partnern einen schnellen Zugriff auf wichtige Links und unsere webgestützen Tools und Prozesse zu geben.

Sieht dann in etwa so aus:

system work Firefox Toolbar

Meine Kollegen verlassen sich voll auf diese Toolbar und nutzen sie permanent für ihre tägliche Arbeit. Naturgemäß ändert sich des öfteren etwas am Inhalt dieser Extension. Es kommen neue Links dazu, alte fallen weg oder ändern sich. Man entwickelt sich ja permanent weiter, nicht wahr 😉 ?

Deshalb benötigen wir den automatischen Update-Mechanismus für Firefox-Addons, damit ich diese Extension zentral pflegen kann und meine Kollegen automatisch die dabei geänderten Versionen bekommen.

In diesem Artikel werde ich jetzt, auch als Notizzettel für mich ;-), die notwendigen Schritte aufzeigen, damit dieser Update-Mechanismus problemlos funktioniert.

Mehr…

Tweetnest : Ein durchsuchbares Offsite-Twitter-Archiv der eigenen Tweets

20. Oktober 2010 Keine Kommentare

Ich habe mir gerade überlegt, was ich heute mit meinen Lesern teilen könnte. Spontan eingefallen ist mir eine Applikation, die auf meiner Webseite human touchnologies verlinkt ist und den hübschen Namen Tweetnest führt.

Tweetnest ist ein Offsite-Twitter-Archiv. Es handelt sich um eine php-mySQL-Webapplikation, die alle Twitter-Postings eines konfigurierten Twitter-Nutzers sortiert in Monatsscheiben und durchsuchbar anbietet. Damit verliert man nicht seine ganzen tollen Tweets und Links, die ansonsten ja nur eine sehr kurze Halbwertszeit bei Twitter haben.

Klingt doch gut, oder 😉 : „The below is an off-site archive of all tweets posted by @toni_kejr ever“

Mehr…

KategorienOpen Source, php, Web 2.0 Tags: , ,

jQuery: Cross-Browser Mouse-Over-Sound bei Bildern

22. September 2010 8 Kommentare

Heute möchte ich etwas aus der Entwickler-Küche plaudern …

Es geht um die Anforderung eines meiner Kunden, der in seinem Online-Shop einen Sound-Effekt haben wollte, wenn der Besucher mit der Maus über die Header-Grafik (Bildchen) fährt. Der Ton sollte aber wieder stoppen, wenn der Cursor, der Mauszeiger die Grafik wieder verlässt. Das natürlich endlos wiederholbar :-).

Nun grundsätzlich sollte man solche Sound-Effekte, wenn überhaupt, nur sparsam verwenden. Neben dem generellen Nerveffekt, denke ich auch an den Mitarbeiter im Großraum-Büro, der möglicherweise nicht so scharf drauf ist, dass  Kollegen und Chefs mitbekommen, wo er sich im Internet rumtreibt ;-).

Im vorliegenden Fall war eine solche Anforderung aber durchaus legitim. Es geht nämlich um einen Online-Shop für Tontechniker, Tonmeister, Theater, Radio, Film und Fernsehen. Dort werden professionell aufgenommene Töne an Sound-Profis verkauft. Na ich denke ein Link zum Shop mit einem solchen Soundeffekt-Bild sagt mehr als 1000 Worte.

Hier ist der Link : http://www.your-sounds.com

Einfach mal mit dem Mauszeiger über das Header-Bild (Brücke mit Mikro) fahren …

Mehr…

KategorienOpen Source, Web 2.0 Tags: ,

Cross Browser – JavaScript zur Iframe-Höhenanpassung

Vor einigen Wochen bekam ich den Auftrag eine Forensoftware in ein Internet-Portal einzubetten. Dies geschieht sinnvollerweise mit einem Iframe.

Nun eigentlich kein Problem, aber der Teufel steckt im Detail …

Automatische Breitenanpassung ist einfach: Der iFrame bekommt das Attrribut ‚width=“100%“‚

Die Anpassung der Höhe ist aber schwieriger. Man muss bedenken, dass sich die Höhe des Fensters bei der Arbeit mit der im Iframe eingebetteten Applikation permanent ändert. Bei einem Forum : Die Fensterhöhe der Forenübersicht wird sicher unterschiedlich zur Ansicht eines beliebigen Artikels sein. Und bei verschiedenen Artikeln ist die Höhe sicher auch jedesmal anders.

Eine Antwort darauf ist die Angabe eine festen Höhe im Iframe. Also zum Beispiel mit ‚height=“500px“‚. Passt diese Größe nicht, dann werden durch die Default-Voreinstellung ’scrolling=“auto“‚ automatisch Scrollbars (Bildlaufleisten in deutsch) erzeugt. Schön ist etwas anderes 😉 …

Was also tun ? Die andere Antwort ist ein JavaScript-Event an den Iframe zu „hängen“. Dieser wird bei jeder Größenänderung des eingebetteten Applikations aktiviert und kann dazu benutzt werden, die Größe des Iframes entsprechend zu ändern.

Klingt doch gut, nicht wahr ? Leider ist es nicht so ganz einfach, weil das Document Object Model (DOM) des Iframes auf jedem Browser anders ist. (DOM : damit kann man jedes Element einer HTML-Seite von z.B. JavaScript adressieren und ändern; z.B. auch die Höhe des Iframes)

Nun nachdem ich durch diese Hölle der Inkompatibilitäten gegangen bin, ist ein Script entstanden, das ich mit der Welt teilen möchte. Hoffe damit einigen Web-Entwicklern dieser Welt einige graue Haare zu ersparen 😉 …

Mehr…

Mindeständerungen für Umstieg auf php 5.3.x

16. Januar 2010 3 Kommentare

Wir stehen, wie sicher viele wissen, vor der Verbreitung des nächsten größeren php-Releases:

php 5.3 is coming

Normalerweise kein Grund zur Panik, aber wir sollten vorbereitet sein. Da ändert sich nämlich einiges, das sich ohne Änderung der bestehenden Applikationen durch üble Fehlermeldungen bemerkbar macht 😉 …

Man bekommt dann so nette Warnungen eingeblendet wie

PHP Warning:  date(): It is not safe to rely on the system’s timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected ‚Europe/Berlin‘ for ‚CET/1.0/no DST‘ instead in …

oder auch

Deprecated: Assigning the return value of new by reference is deprecated in …/xajax/xajax_core/xajax.inc.php on line 360

Xajax funktioniert dann natürlich nicht mehr …

Mehr…