2009-04-09

CSS Naked Day!

As is good tradition on this day of the year, I have cleared out my style sheet. Enjoy the early ‘90ies look!

14:17 [/netz] css_naked_2009 Google Trackback
Tags:

2009-04-02

April, April!

Meine alljährliche Sammlung von 1.-April-Scherzen:

Und noch dies:

Die neue Rechtschreibereform. Endlich sinnvoll!

Wieder steht eine neue Rechtschreibereform vor der Tür. Nachdem die letzte gescheitert ist und seither jeder so schreibt, wie er will, kommt nun ein absolut gesunder und durchdachter Neuansatz von Seiten der Dudenherausgebern auf den Markt (Erstausgabe vom April 2009 / in der Abteilung Grammatik für Alle! Seite 15). Wir zitieren:

1. alles wird kleingeschrieben! auch nach einem punkt. viele grafiker haben es vorgemacht und sind bereits vor jahren als vorreiter der neuen dudenreform zur kleinschreibung übergegangen. die meisten grafiker behandeln texte sowieso gerne als grauwerte! aber seit man auch nach punkten kleinschreiben kann, ist die fehlerquote bei erstklässlern enorm gesunken.

2. dehnungen und schärfungen werden entdehnt und entschärft! diese gotesgnädige masname eliminirt bereits in der grundschule di gröste felerursache überhaupt, den den sin der konsonantenverdopelung hat onehin nimand kapirt.

3. reduktion auf das wesentliche: v und ph werden durch f ersezt! z durch s und sch wird verkürzt auf s. dadurch wird das alfabet um swei buchstaben redusirt. das sreiben mit sreibmasinen fereinfacht sich enorm, damit so wertfole und vor allen dingen ausländise arbeitskräfte der wirtsaft als angelernte sugefürt werden könen, für ale sweiser, deutse und östereicher, di di snauze fol fon arbeit haben.

10:58 [/allgemein] _1_april_2009 Google Trackback
Tags:

2009-04-01

How to create an empty Git branch

(Source: Empty Branches)

Create a new symbolic reference:

git symbolic-ref HEAD refs/heads/<newbranch>

Empty the index:

git rm --cached -r .

Empty the working copy (watch out!):

rm -r * .gitignore

Commit the empty branch:

git commit --allow-empty -m'initial empty branch'

Because .gitignore is under Git control, this file can have different content depending on the current branch, so if you have e.g. your project’s homepage in a branch of your source repository, the website’s .gitignore can be different than the one from the source branch.

09:08 [/software] git_empty_branch Google Trackback
Tags:

bvg@six-card-solutions.com

Hey Bärni, ich wünsche dir einen guten Start bei deinem neuen Brötchengeber!

08:58 [/allgemein] bvg_six Google Trackback
Tags:

2008-12-12

Google Zeitgeist

I think these lists, while interesting, are at least inaccurate. Google should remove the obvious domain names from the lists. Most people don’t know the difference between the Google search box and the browser’s URL entry field.

13:16 [/netz] google_zeitgeist Google Trackback
Tags:

2008-12-06

A quote from Tim Bray

We visited some people at one of the exchanges, and I walked away from that with my mind boggling at their traffic levels, and the number of rows they think it’s reasonable to write into a database in 6½ hours.

Tim Bray

13:21 [/software] timbray_quote Google Trackback
Tags:

2008-11-11

A quote from Ian Hickson

On our way back the TSA told me I couldn’t keep my apple juice. I asked if I could drink it first. They said only if I went back outside. I asked if they meant that my apple juice was a danger in the security area but safe outside, and they confirmed that that was the case.

- Ian Hickson

14:56 [/allgemein] quote_ian_hickson Google Trackback
Tags:

2008-04-01

April, April!

Wieder einmal eine kleine Sammlung von 1.-April-Scherzen:

12:19 [/allgemein] _1_april_2008 Google Trackback
Tags:

2007-11-25

BSOD*: nicht einmal das Fernsehen ist davor sicher!

loly-20071125-214832.jpg
Das aktuelle Bild auf unserem Lokalfernsehen!

* BSOD: Blue Screen of Death

22:18 [/software/windows] loly Google Trackback
Tags:

2007-09-23

Swisscom: Infrastruktur und Dienste trennen!

Um ein von Fredy Künzler begonnenes Thema wieder aufzugreifen: Offenbar funktionert es eben doch!

Viviane Reding, the EU media commissioner, this week cited the decision to split the networks and services division of BT of the UK as a potential template for [European] former state-run telecoms operators… BT agreed in 2005 with national regulator Ofcom to create an independent unit responsible for giving rivals access to its networks. The division, which BT still owns, is obliged to treat competitors on the same basis as its own services.
Financial Times (leider hinter einem Paywall verschwunden), via isen.blog

Als Folge dieses Entscheids können Bewohner von England zwischen über 50 ISPs auswhlen und sich denjenigen aussuchen, der ihre Bedürfnisse am besten abdeckt.

13:46 [/netz] swisscom_auftrennen Google Trackback
Tags:

2007-08-26

Using the Midnight commander mc(1) in a screen(1) session

Just a quick note for those people whose function keys don’t work when they use the GNU Midnight commander inside a screen session: issuing export TERM=xterm before starting @mc@ helps!

Maybe this problem is related to my SSH client PuTTY, but setting TERM fixes it.

22:36 [/software/debian] mc_f_keys_in_screen Google Trackback
Tags:

2007-08-03

3b, 3r und zwei andere Geeks an der Assembly 2007

Ein paar Kollegen unseres geekinfo-Kollektivs sind dieses Jahr also tatsächlich nach Helsinki an die Assembly gefahren!

Laufende Updates gibts auf 3bs Blog, die Bilder sind hier.

19:56 [/software] assembly2007 Google Trackback
Tags:

2007-08-02

Jonas Gabriel Julmy

Herzliche Gratulationen und Alles Gute an Julmys zur Geburt ihres Sohnes! Eva wurde nochmals Gotti…

19:40 [/familie] jgjulmy Google Trackback

2007-07-16

Hochzeitstag #19!

Eva vor der Myonen-Funkenkammer in der Sphynx Heute besuchten Eva und ich das Jungfraujoch. Am bisher heissesten Tag des Jahres 2007 war es auf über 3500 Metern immer noch 3 °C “warm”.

Wir haben die Zweisamkeit und das geniale Wetter sehr genossen.

PS: Danke an die GVB für die verbilligten Billete…

23:26 [/familie] hochzeitstag_19 Google Trackback

2007-07-12

Abgabe auf Musik-Playern? WTF?

Jetzt haben es also die Suisa und Konsorten geschafft, dass auf DAPs(Digital Audio Player) Steuern erhoben werden. Betroffen sind Flash-Player, Geräte mit Harddisk sowie Video-Recorder mit HD. Die Gebühr soll zwischen CHF 30 und 90 kosten, je nach Kapazität.

Damit bezahlt man jetzt also drei Mal Urheberrechtsgebühren: beim Kauf von bespielten CDs, beim Kauf von Leer-CDs (die werden ja alle für illegal kopierte Musik verwendet, nicht wahr), sowie eben beim Kauf von Abspielgeräten. Wenn das ganze Geld mindestens den Künstlern verteilt würde, aber die Studios schöpfen ja den grössten Teil in die eigene Kasse ab…

Und das alles ausgerechnet am Fair-Use Day!

00:16 [/medien] suisa_mp3_tax Google Trackback
Tags:

2007-05-01

GPS-Koordinaten in EXIF-Infos nachführen

Angeregt durch ein Mail von Alexander Klein und einen Artikel in der aktuellsten c’t 10/2007 will ich jetzt doch noch erklären, wie die GPS-Positionen aus meinem ersten Artikel von der Karte in die Bilder gelangen.

In der Karten-Seite befindet sich ein HTML-Formular, das die Eingabe von Breite und Länge erlaubt:

<form method="post" action="exifupd.php">
    <input type="hidden" name="image" value="<?php echo $image ?>" />
    <label for="lat">Latitude:</label>
    <input type="text" id="lat" name="lat" /><br />
    <label for="lon">Longitude:</label>
    <input type="text" id="lon" name="lon" /><br />
    <button type="submit">Update</button>
</form>

Die Werte im Formular werden per JavaScript im onclick() Event der Karte gesetzt:

GEvent.addListener(gMap, 'click', function(obj, pos) {
    document.getElementById('lat').value = pos.lat();
    document.getElementById('lon').value = pos.lng();
});

exifupd.php setzt die Koordinaten via ein Python-Skript ins Bild hinein. Die relevante Zeile des Update-Skripts ist diese:

exec("sudo -u me /home/me/bin/gpstag '{$_POST['lat']}' '{$_POST['lon']}' '{$_SERVER['DOCUMENT_ROOT']}{$_POST['image']}'", $result, $rc);

Der Python-Skript gpstag benötigt seinerseits exiv2, ein Kommandozeilen-Tool zum Bearbeiten von EXIF-Infos.

Diese zwei Zeilen in /etc/sudoers ermöglichen sudo, dass www-data, der User, als der mein Webserver läuft, in meinem Namen das Programm gpstag ausführen darf:

# Apache may update GPS data in images
www-data        ALL = (me) NOPASSWD: /home/me/bin/gpstag

Das Bearbeiten von sudoers erfordert root-Rechte und sollte immer mit dem Befehl visudo geschehen.

Als letztes wird der Update-Skript noch mit einem Eintrag in .htaccess passwortgeschützt:

# Password protection for GPS updates

<Files exifupd.php>
    AuthType Basic
    AuthName "GPS Update"
    AuthUserFile /home/me/lib/htpasswd/php
    Require valid-user
</Files>

Wie man ein Passwort-File bereitstellt, ist unter man htpasswd nachzulesen.

20:27 [/software/php] exif_gps_update Google Trackback
Tags:

2007-04-06

Neues RAM und Harddisk im Server

Kürzlich konnte ich in einem alten Server-Rack zwei SIMMs ausbauen, die verdächtig nach PC-133 aussahen, das in meinem Server verwendet wird (ich weiss, das ist ja uralt, aber unter Linux hat Hardware ca. die doppelte Lebensdauer als unter anderen OSen). Item, die 128 MB, die der Server hatte, wurden in letzter Zeit ein wenig knapp, und so hoffte ich, dass die neuen SIMMs ein wenig grösser wären, und in der Tat hat mein Server jetzt 512 MB RAM (merci Jonas, eine Spende fürs Kino folgt)!

Da ich die (kleine!) Kiste gerade offen hatte, habe ich ihr auch gerade eine neue 80er-HD verpasst. Die alte 40 GB-Scheibe läuft jetzt doch seit über vier Jahren non-stop, und hat auch bereits Lesefehler produziert. Bei der Gelegenheit wollte ich auch die Partitionen optimieren, d.h. keine eigenen Partitionen mehr für /boot und /usr, nur noch für root, /home und /var (obwohl, wie 3w richtig bemerkt, die Zeiten wohl vorbei sind, als man mal kurz mit einem zu grossen Logfile die Partition zum Überlaufen brachte, zumindest auf einem Home-Server).

Also die neue Platte als IDE-Slave angehängt, partitioniert, formatiert und mit cp -r die Dateien kopiert. Ich weiss, es gibt noch rsync, aber ich behaupte jetzt einfach, dass ein cp alleweil schneller ist, wenn im Ziel noch keine Dateien vorhanden sind.

Das erste Problem stellte sich (wie bereits das letzte Mal, als ich eine HD in einem Linux-System ersetzte), als ich lilo beibringen sollte, sich auf /dev/hdb zu installieren, aber so, dass beim nächsten Booten alles stimmen würde, wenn ab der neuen Platte gestartet würde, die dann ja /dev/hda hiesse. Nach einigem RTFM erledigte aber ein lilo -v -r /mnt diese Aufgabe. Jetzt noch /etc/fstab angepasst, und alles ist in Butter?!?

Leider nicht, denn ich erhielt früh im Boot-Vorgang die kryptische Fehlermeldung /usr/lib/yaird/exec/run_init: opening console: No such file or directory. Unterdessen war 01:20, und ich beschloss, darüber zu schlafen. Die alte Platte startete unterdessen nämlich auch nicht mehr, irgendwie hatte ich sie mit meinen lilo Experimenten dauerhaft vom Booten abgehalten :-(

Heute Abend suchte ich im Internet (den Laptop direkt ins Kabelmodem gesteckt; zum Glück lief auch dort ein sicheres Betriebssystem!) nach dieser Meldung und fand schnell Verweise auf yaird, “Yet another initrd generator”. initrd? Das waren doch diese Files, die man dem Kernel mitgeben musste, damit der seine ersten paar Module fand, mit Hilfe derer er dann ab HD weiterbooten konnte? Vor Jahren hatte ich in den Kernel-Sourcen gelesen, dass das Format seit 2.6 dasjenige von cpio sei, aber file initrd.img-2.6.28-4-486 sagte mir, das sei eine gzip-Datei. Also ausgepackt, und jetzt hatte ich tatsächlich ein cpio-Archiv vor mir. Nach noch mehr RTFM und einem finalen cpio -i <../initrd hatte ich den ausgepackten initrd vor mir.

Schliesslich fand ich im Script init zwei Referenzen auf meine alte Root-Partition /dev/hda6, die jetzt eben /dev/hda1 war. Nachdem ich alles wieder verpackt und gezippt hatte, startete mein System wieder ohne Probleme!

Fazit:

  • Never change a running system!
  • lilo ist gefährlich, vielleicht sollte ich auf grub umsteigen?
  • Bei HD-Wechseln in Zukunft nicht gleichzeitig die Partitionierung ändern
  • Zum Glück wurden für die initrd Standard-Tools verwendet

01:41 [/hardware] neue_hd Google Trackback
Tags:

2007-04-02

Fotos von der CD-Taufe

Andreas Hurni war an der CD-Taufe dabei und hat einige Bilder gemacht, darunter auch eines von “yours truly”!

23:34 [/musik] cd_taufe_fotos Google Trackback
Tags:

2007-03-22

CD-Taufe «10 little songs»

Morgen abend präsentiert die Band ihre zweite CD! Alle sind herzlich eingeladen…

23:13 [/musik] cd_taufe_10_little_songs Google Trackback
Tags:

2007-02-06

UTF-8? UTF-8!

Warnung: In den nächsten Tagen könnte meine Homepage Probleme mit der Darstellung von Umlauten haben; ich bin dabei, das Filesystem von ISO-8859-1 auf UTF-8 umzustellen. Bei der Shell ist das bereits geschehen; jetzt ist noch ~/public_html dran…

17:02 [/software/blog] utf8_ahead Google Trackback
Tags: