Firefox 15 Bug im Websocket Code

Das schlimme ist ja: Jetzt wo ich den ganzen Tag arbeiten muss habe ich jede Menge Sachen gelernt, über die ich gerne bloggen würde – nur ich habe leider keine Zeit dafür 🙁

Zumindest eine Sache kann ich jetzt aber wirklich mal bloggen: Firefox 15 (und auch 15.0.1) hat einen Bug im Websocket Code, der mir viel Ärger gebracht hat:

Eine neues Feature in FF 15 ist es, Verbindungen schon zu öffnen, bevor komplett klar ist, ob man sie braucht. Das sollte das Laden von Websites beschleunigen. Das ganze nennt sich dann „speculative connect“, auch wenn ich nirgendwo Infos darüber gefunden habe.

Nun habe ich für meine Firma etwas gebastelt, bei dem eine Verbindung über WebSockets zu einem „richtigen“ Server hergestellt wurde. Normalerweise kann man über WebSockets keine „richtigen“ TCP-Sockets ansprechen, doch es gibt ja Websockify, ein kleines Programm das auf dem Zielrechner läuft, dort eine Websocket-Verbindung annimmt und dort auf eine TCP-Verbindung weiterleitet. Ein nettes Programm, und meine Idee klappt auch wunderbar damit mit alle Browsern (außer dem IE 9…).

Weiterlesen

CSS Farben schnell testen mit Firepicker

Zu Firebug selbst muss ich ja wohl kaum noch was schreiben, ohne dieses AddOn wäre jegliche Websitegestaltung eine Qual.(Wobei die Developer Tools von Chrome auch nicht schlecht sind!)

Ein wahnsinnig tolles Feature für unkreative Menschen wie mich ist die Möglichkeit, CSS live zu verändern. Ich gestehe: Ich baue CSS immer erst in Firebug und kopiere es dann in meine Datei… Ich kann mir sowas sonst einfach nicht vorstellen. Bei Zahlenwerten reicht ja z.B. ein Klick in die Zahl und danach kann man einfach mit den Pfeiltasten einen schönen Wert suchen. Bei Farben gibt es so eine Möglichkeit leider nicht. Und auch wenn es tausend Color-Picker im Web gibt, muss man die Farbe doch immer im Kontext sehen.

Natürlich gibt es ein AddOn für dieses Problem: Firepicker baut einen kleinen Colorpicker direkt in Firebug ein, der auch die Farbe auf der Seite live verändert. Wenn man in eine Eigenschaft klickt, die Farben beinhaltet, werden diese darunter aufgelistet und mit einem Klick darauf kann man dann die Farbe direkt ändern. Damit kann man natürlich auch sehr viel Spaß haben:

Weiterlesen

Software automatisch installieren

Gerade wenn es um eine große Menge an Rechnern geht, auf denen die gleiche Software installiert werden soll, ist man sehr froh, wenn es eine Möglichkeit gibt, das automatisch zu machen. Im Grunde reicht es dabei meistens ein /silent an Ende zu hängen, nur wenn man nicht die Standardkonfiguration haben will sieht es meistens schlecht aus.

Gut, dass sich jemand die Mühe gemacht hat und für über 600 Programme aufgeschrieben hat, wie es richtig geht: Auf der Seite von WPKG findet man die Informationen. (Im Grunde ist das wohl so ein System um solche Sachen noch mehr zu automatisieren, aber man kann sich die relevanten Sachen gut aus dem XML rauspicken…

Und zumindest die Erfahrung zeigt, dass es oft gar nicht geht: Aktuell musste ich einiges an Software installieren, dass nahezu alle Anweisungen an den Installer einfach ignoriert hat… Naja, man kann ja später aufräumen 😉

AVR Studio Vorlage für den NIBObee

Mein NIBObee nimmt langsam Formen an (ein paar „Bugs“ hat er noch), daher habe ich mich mal mit der Programmierung beschäftigt. Das erledigt mal in Atmel Studio, momentan Version 6. Leider muss man immer, wenn man ein neues Projekt anlegt relativ viele Pfade und ähnliches einstellen. Daher habe ich mir mal die Mühe gemacht und ein Project Template daraus gemacht.

Damit sieht das dann so aus:

Wenn mal so ein Project anlegt werden automatisch Verweise auf die Libraries gesetzt, ein paar Kostanten gesetzt  und der ATmega 168 als Controller ausgewählt. Leider gibt es noch zwei Probleme: Die Libraries werden nicht korrekt eingebunden. Es ist immer noch nötig die gewünschten Libraries (nibobee_line, nibobee_base und nibobee_utils) unter Projects/Properties/Toolchain/Linker/Libraries einzustellen. Ich habe keine Ahnung, warum das nicht automatisch geht, in der Vorlage ist es alles eingetragen…

Weiterlesen

Publisher: Nur teilweise farbige PDFs erstellen

Nach dem unser Jahrbuch nun bald (morgen) in der Druck gehen soll, kann ich ja langsam mal anfangen und meine Erkenntnisse aus dem layoten aufschreiben. In diesem Posts soll es erst Mal darum gehen, wie man es schafft, ein Publisher-Dokument (damit haben wir das Jahrbuch gesetzt) so in ein PDF zu bannen, das nur ein Teil der Seiten farbig ist. Die Druckerei will genau so ein PDF haben, da eben nur ein (kleiner) Teil der Seiten farbig gedruckt werden soll.

Zwar hat Publisher auch einen eingebauten PDF-Export, der ist bei mir aber immer nur mit zu wenig Speicher abgestürzt, so dass ich dann auf einen der zahlreichen PDF-Drucker ausgewichen bin. Meine Wahl viel dabei auf den PDFCreator, im Grunde ist das aber egal.

Nun wird das Dokument in Publisher zwei mal „ausgedruckt“, also zwei PDFs erzeugt. Dabei wird eines komplett in Farbe erzeugt, das andere komplett in s/w (lässt sich in den Druckeinstellungen wunderbar angeben). Die beiden Dokumente werden irgendwo gespeichert. Als nächstes geht es darum, die beiden Dokumente so zu kombinieren, das die farbigen Seiten jeweils aus der einen Datei stammen, und die s/w Seiten aus der anderen. Es gibt einige Tools für diesen Zweck: PDFsam hat sogar eine tolle Drag&Drop Oberfläche dafür, stürzte bei mir aber immer mit zu wenig Speicher ab (auch als er 1GB bekam). Als nächstes habe ich die PDF-Wunderwaffe Ghostscript ausprobiert, allerdings wird das PDF durch Ghostscript immer komplett neu geschrieben, und dabei wurden auch alle Bilder erneut komprimiert. Zudem muss man immer erst Teil-PDFs erzeugen, was ziemlich lange dauert. (Die Neukodierung der Bilder kann man unterdrücken) Jetzt war ich kurz davor ein kleines Programm zu schreiben, dass die richtige Ghostscript-Aufrufe generiert.

Weiterlesen

Endlich: Skype verschwindet wieder aus der Taskleiste

Kaum zu glauben: Vor 2 Jahren (WTF ?? so lange schon her?) habe ich gemeckert, dass das neue Skype sich nicht mehr ins Tray schicken lässt, außer man lässt es im Kompatibilitätsmodus für Vista laufen. Heute gab es wieder mal ein Skype Update, und danach war meine Einstellung leider wieder weg, Skype saß also wieder nervig in der Superbar.

Doch was hat dieses Update eigentlich gebracht? Haben sie vielleicht…? Ja, haben sie:

Es gibt tatsächlich nach nur zwei Jahren eine Einstellung Skype wieder ins Tray zu schicken! Danke Microsoft 😉

Publisher: Nicht die Datenquelle ändern!

Kleiner Tipp für Leute, die was mit Publisher machen (dem InDesign von Microsoft): Publisher hat ja eine tolle Funktion namens „Katalogseiten“, damit kann man Seiten automatisch auf Basis einer Excel-Tabelle (oder Datenbank etc.) generieren. Extrem praktisch das Ding (auch für andere Sachen, ich hoffe ich komme noch dazu, darüber zu bloggen). Sollte man sich definitiv mal ansehen.

Ich hab diese Funktion jetzt genutzt, um die 12 Seiten mit Umfragen in unserem Jahrbuch automatisch zu generieren. Dummerweise musste ich danach noch ein paar Werte ändern und hab bei der Gelegenheit gleich die Quell-Tabelle in Excel etwas aufgeräumt und ein paar nicht benutzte Spalten am Ende gelöscht. Und das  war eine ganz blöde Idee: Danach ist Publisher schon beim Speichern der Datei abgestürzt und beim „Zusammenführen in vorhandene Datei“ wollte er 32.767 Seiten anhängen… (Ja, das ist 0x7FFF ;))

Die Lösung: Neue Excel-Datei erstellen, alle Daten rüberkopieren, in der Präsentation Katalogtools/Liste hinzufügen/Vorhandene Liste wählen/Ja. Danach muss man leider alle Platzhalter erneut einfügen, aber die Präsentation sollte gerettet sein.

Weiterlesen

Aprilscherz: Post-mortem

Ja, schon wieder ein dummer Titel, ich weiß…

Nach dem ja nun wohl jeder begriffen hat, das mein letzter Post ein Aprilscherz war, interessiert den einen oder anderen ja vielleicht auch die Technik dahinter. Die ist nämlich ziemlich interessant.

Die erste Frage war, wie komme ich an die Posts meines Blogs. Als erstes hatte ich überlegt einfach die letzten fünf fest in die Seite einzubauen, aber das fand ich dann doch langweilig. Dann erinnerte ich mich daran, das ich mal etwas über die wp-load-php gelesen hatte. Wenn man diese Datei in ein PHP-Script einbaut, wird WordPress komplett geladen, aber ohne eine Ausgabe zu erzeugen. Jetzt kann man quasi ein WordPress Theme nachbauen. Der folgende Code steckt hinter der Seite:

Weiterlesen

Richtige Aufentshaltdauer mit Piwik ermitteln

Seit geraumer Zeit benutze ich ja nun Piwik, um die Besucherzahlen meiner Website zu messen. Vor ein paar Wochen hat dann ein Beitrag bei virtual-maxim meine Aufmerksamkeit erregt. Dabei ging es darum, das Piwik die Aufenthaltsdauer auf einer Website, und damit verbunden die Apsprungrate nicht richtig berechnet. Wenn der Besucher nur eine Seite aufruft, und dann den Tab schließt, wird eine Aktion mit einer Besuchslänge von 0 sek gezählt. Das ist natürlich unschön, weil man ja grade Blog-Artikel länger ließt, ohne auf einen Link zu klicken.

Die Lösung, die auch schon in Piwiks Trac diskutiert wird, und auch in dem oben verlinkten Artikel vorgestellt wird, ist es, nach einer gewissen Frist einen „Pulsschlag“ an Piwik zu senden, um anzuzeigen, das der Besucher noch auf der Seite ist. Die Lösung aus dem Artikel hat den Nachteil, das dadurch viele falsche Page-Impression erzeugt werden, weil Piwik (noch) kein API hat, um zu sagen „Besucher ist noch da“. Das einzige, was man machen kann, ist, den Klick auf einen Link vorzutäuschen. (Wenn man nicht im Core etwas ändern will).

Weiterlesen