Meine bevorzugte Software, um Photos mit GPS-Koordinaten zu versehen, ist GPSPhotoLinker.

Until recently, it was not easy to find an affordable and easy-to-use software for the Mac to match photos with GPX track logs (see also the review on trick77). There is HoudahGeo, which works very well, but is also quite expensive (€25) for a tool that does only one thing.

  • PhotoGpsEditor works, but I don’t really like its interface. The Pictures and Track Lists are unsorted and when adjusting it’s not very clear if need a negative or positive offset.

    Unsorted lists in PhotoGpsEditor

    Unsorted lists in PhotoGpsEditor

  • The new version 6.2 (released a week ago) of GraphicConverter has now support for GPS data. As I use GC for other editing tasks, I would like to use the same program also for tagging. GC lacks control over the matching process, most important: you can’t specify the time offset. Before tagging, you have to change the time stamp in the photos themselves (!) to UTC (because all times in a GPX file are UTC times). Then you can match the photos with the GPS track points and revert the time adjustment (I use jhead for adjusting the time stamp of JPEG files).
  • What works best for me is GPSPhotoLinker. The version 1.6.0 was released two weeks ago and fixed a nasty time offset bug for photos that weren’t taken in the computer’s time zone. In GPSPhotoEditor you don’t specify a time offset (where you always have to think if you need to add or subtract), but you choose the time zone of the photo. And because it shows you the values of your system time zone together with its sign, it’s very intuitive which time zone you must choose.
    GPSPhotoLinker Time Zone Setting
Posted in Life/the Universe... | 1 Comment


Stone Colours  Signs

Fáilte is gaelic and means welcome. We stayed in Ireland this summer and enjoyed it very much. The Irish people are very friendly, and these places were outstandingly so:

Sometimes the friendliness of the street signs is a bit overwhelming and you have trouble discovering the sign that you are looking for when you are confronted with a whole tree of signs. The picture above shows a crossroads near Shannonbridge.

Posted in Life/the Universe... | Comments Off on Fáilte

Got rid of WordPress spam

I have finally updated to the latest version of WordPress and detected several different spam attempts in my blog.

  • The index.php and wp-content/index.php files contained a couple of unwanted links (their size should be less than 100 bytes).
  • One of my posts had some invisible links added at its end. One to a chinese site, disguised with the unescape Javascript function and others hidden by setting the style to display: none.
Posted in The Web | Comments Off on Got rid of WordPress spam

Datenflatrate für Mobilgeräte doch nicht so schlau?

Lieblings-Klagethema: die MNOs (Mobile Network Operators) in der Schweiz (und nicht nur hier) schaffen es immer noch nicht, attraktive Datenangebote zu schnüren; seit März hat sich nicht viel getan.

Tim Bray bringt eine neue Idee aufs Tapet: keine Flatrate anbieten, sondern einen lächerlich billigen Datentarif. Einige seiner Argumente: Kernkompetenzen von MNOs sind Bandbreite und Billing. Also sollen sie auch das Verkaufen: Bandbreite (Daten und Gespräche) und Billing (als Dienstleistung für Anbieter auf ihrem Netz).

An und für sich finde ich eine Flatrate zwar eine gute Idee, aber vielleicht ist die Zeit dafür noch nicht reif?

Bei ortsgebundenem Internet gab es auch nicht von Anfang eine Flatrate. Für den Durchbruch des Internet waren eine Telefonleitung und Kosten im Frankenbereich pro Stunde ausreichend; erst mit zunehmendem Datenhunger und Breitband-Technologien kam auch die Flatrate auf.

Ich wage zu behaupten, dass es im Moment noch weniger Leute gibt, die mobiles Internet verwenden, als es Surfer vor Einführung der Breitbandtechnologien gab. Also sollten vielleicht erst kleine Brötchen gebacken werden, mit einem billigen Tarif für den Gelegenheits-Benutzer, der den Appetit weckt.

Unter billigem Tarif verstehe 10 bis 20 Rappen pro Informations-Häppchen; schliesslich hat sich SMS mit ähnlichen Tarifen zu einer Cash-Cow der MNOs entwickelt. Und ein Informations-Häppchen in der heutigen Zeit ist für mich z.B. eine Google Maps Seite, auf meinem Telefon grob geschätzt etwa 500kB.

Posted in Life/the Universe..., Mobile Life, The Web | Comments Off on Datenflatrate für Mobilgeräte doch nicht so schlau?

Apple doesn't know how to count

Bei Apple können sie nicht zählen: nach 33 kommt bei Apple 14…

The Swiss Federal Court recently approved a copyright tax on MP3 players (and harddisk DVD recorders), effective from September 1st. If you don’t like to pay three times for your music (the download itself, the tax on blank CDs and the tax on players), you could write to your representative in parliament or join the initiative of the “Stiftung für Konsumentenschutz”.

Anyway, I took the opportunity to save 90 (!) CHF copyright tax and bought a new iPod now. The fun part happened when I tried to register my iPod (screenshot from the registration wizard):

10, 11, 12, 33, 14?

Suppose I’m 33: which range should I choose?

Posted in Life/the Universe... | Comments Off on Apple doesn't know how to count

Merge down, copy up

If you are using any SCM that allows cheap branches (like Perforce) and are following the advices from the High-level Best Practices document, you might be interested in (or already know) Laura Wingerd’s presentation Convergence vs. Divergence: Purposeful Merging with Perforce about how to converge to codelines using Merge Down, Copy Up [PDF]. I have seen it many times that a main codeline got broken because the Merge Down, Copy Up idiom was ignored.

The detailed procedure of Merge Down, Copy Up is explained on Slide 22 of the talk. Unfortunately it doesn’t work in the presence of files with expanded keywords (type text+k). All these files don’t get reverted in step 4 (p4 diff -sr | p4 -x - revert), although they differ only in keyword expansion.

There is currently no direct way using Perforce commands to work around this problem. However, the p4 diff commands to plug in a different diff tool. My solution on Windows therefore consists of two scripts, one to set up P4DIFF and call p4 diff (revert_unchanged.bat), the other as the plug in diff tool (diff_no_keywords.bat). The scripts need a couple of additional filters like diff, grep and cut. While the cygwin grep is fine, you must not use its diff and cut binaries, because these are too much unixish and have problems with the backslash path delimiters that p4 diff is handing out (or you could perhaps use the cygwin variant of p4, if you have a current one). I have used the binaries from

Both scripts are available from the Perforce Public Depot: revert_unchanged.bat, diff_no_keywords.bat. You use them as additional step 4a after the p4 diff -sr step.

Posted in Hug-Witschi, Programming | Comments Off on Merge down, copy up

Swisscom: Service und Kundenzufriedenheit

Seit meinem Wechsel zu Natel Easy haben mich als kritischen Kunden drei Punkte am meisten gestört:

  • Das Ausschalten der Combox wird im “Manual Prepaid” nicht erklärt. Diese kleine Unterlassungssünde ist nicht weiter schlimm, denn online in den FAQ wird’s erklärt: der Code ##004# schaltet die Combox aus.
  • Ich würde gerne meine Mails über die Vodafone Live Email-Funktion abfragen können. Das scheitert leider daran, dass das Vodafone Live Portal POP3 nur auf Standard-Port 110 unterstützt, nicht aber auf dem SSL-Port 995 (Port 995 ist in meinem Fall zwingend, weil Gmail POP3 nur via SSL unterstützt). Der Hotline-Mitarbeiter versuchte sein bestes (er meinte zuerst, ich möchte Emails mit dem Client des Mobilgeräts abholen), musste dann aber kapitulieren.
  • Was mich am meisten stört: Der Slogal zu Natel Easy lautet: “für die volle Kostenkontrolle”. Das ist schlicht gelogen! Das einzige was man kontrollieren kann, ist der Maximalbetrag, den man verbraucht. Aber unter voller Kostenkontrolle verstehe ich die Kontrolle darüber, wie man sein Guthaben aufgebraucht hat, also eine Aufstellung der Gespräche, SMS, MMS und Daten-Volumina. Natel Easy ist hier deutlich schlechter als M-Budget, welches Gespräche und SMS online auflistet. Das einzige, was Natel Easy hier bietet, ist die Benachrichtung über die Kosten des letzten Gesprächs…

Ich hoffe natürlich, dass mit der diese Woche verkündeteten Umstrukturierung von Swisscom und der “konsequenten Ausrichtung auf ihre Kunden” diese Kritikpunkte rasch beseitigt werden.

Posted in Life/the Universe..., Mobile Life | Comments Off on Swisscom: Service und Kundenzufriedenheit


I’m cleaning up shelves and have got an old “SIBO SDK 2.10″ which I haven’t used in years. It is a Software Development Kit for 16-Bit Psion handheld computers like Psion Series 3 or Psion Workabout.

If you are interested in two floppy disks and four folders of documentation, please drop me a note.

Posted in Life/the Universe..., Programming | Comments Off on Psion SIBO SDK


Wie zur Zeit viele Leute bin ich etwas ungehalten und ziemlich unzufrieden mit Cablecom, der “unbeliebtesten Firma” der Schweiz (Artikel in “Das Magazin” vom 11. März). Innerhalb der letzten sechs Monate sind Cablecom drei mal Fehler unterlaufen, die einfach nicht vorkommen dürften:

  • Der Besuch eines Cablecom-Technikers bei den Nachbarn führte dazu, dass in unserer Wohnung das Internet für etwa vier Tage nicht mehr funktionierte (das der Nachbarn aber schon).
  • Mindestens zwei Unternehmen (das Versandhaus Heine sowie Premium Daten at haben mir Spam gesendet an eine Email-Adresse, die ausser mir nur Cablecom kennt. In einem Artikel des K-Tipp vom 28. März über einen ähnlichen Fall steht, dass Cablecom in den AGB die Weitergabe nicht ausschliesse und dass in den Web-Formularen zur Bestellung eines Internet-Anschlusses nirgends eine Möglichkeit bestehe, die Weitergabe seiner Daten explizit zu unterbinden.Da ich schon jahrelang Kunde von Cablecom bin und prinzipiell immer die Weitergabe meiner Daten verbiete, muss ich annehmen, dass Cablecom mir nie die Gelegenheit gab, auf einem Formular ein entsprechendes Häkchen zu platzieren. Ob dieses Vorgehen mit den Datenschutz-Vorschriften vereinbar ist, kann ich nicht beurteilen; aber falls weiterhin Spam eintrifft, könnte das ein Fall für die neue Anti-Spam-Gesetzgebung sein, die seit dem 1. April Spam verbietet.
  • Trotz vieler kritischer Berichte haben wir es vor einigen Tagen riskiert, unseren Telefonanschluss zu Cablecom zu wechseln. Der Kundenberater im Fachmarkt, der meine Anmeldung entgegennahm, hat es jedoch nicht geschafft, das Formular richtig auszufüllen. Nach meiner Nachfrage beim Kundendienst musste ich heute das Formular ein zweites Mal unterschreiben. Es stellte sich heraus, dass der Kundenberater vergessen hatte, neben seinem Namen auch noch seine Personalnummer auf das Formular zu setzen. Jetzt bin ich ja gespannt, wie gut das Telefonieren mit Cablecom funktionieren wird.
Posted in Life/the Universe... | 1 Comment


Did you ever have the need to use different versions of Microsofts Visual C++ compiler from the command line? Did you wish you wouldn’t have to constantly call vcvars32.bat or change your environment (PATH, INCLUDE and LIB variables)?

In comes a little tool called envvc.exe. It sets the environment for the chosen version and then calls any chosen executable. As additional feature it verifies that you have installed the latest service pack for the chosen version.

Supported configurations:

  • VC 6, example:
    envvc 60 cl ...
    Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 12.00.8804 for 80x86
  • VC 7.1 (VS 2003). Example (without the current SP1, simulating an error message):
    envvc -f 71 cl ...
    C:\Program Files\Microsoft Visual Studio .NET 2003\install.htm(1) : error SP: there's a newer service pack available!
    Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 13.10.3077 for 80x86
  • VC 8 (VS 2005) Example:
    envvc 80 cl ...
    Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 14.00.50727.762 for 80x86
  • VC 8 with the .NET 3 SDK. Example:
    envvc fx 80 svcutil ...
    Microsoft (R) Service Model Metadata Tool
    [Microsoft (R) Windows (R) Communication Foundation, Version 3.0.4506.30]

No configuration is needed for envvc; all informations about where the compilers are installed and which service packs have been applied are read from the Windows Registry. But the known service packs are hard coded, so you have to patch envvc whenever Microsoft releases another service pack.

The source to envvc is available under the Boost Software License (local copy): envvc.cpp. Feedback is appreciated!

Update 2017-01-02:

Posted in Hug-Witschi, Programming | Comments Off on envvc