ddate installieren (ArchLinux)

Today is Pungenday, the 17th day of Confusion in the YOLD 3179


cd /tmp
wget https://aur.archlinux.org/packages/dd/ddate/ddate.tar.gz
tar xzvf ddate.tar.gz
cd ddate
makepkg -s
sudo pacmatic -U ddate-0.2-1-x86_64.pkg.tar.xz

Bequeme ssfs-Mounts in zsh (Linux, OSX)

Im Rahmen meiner Arbeit, aber auch bei Zugriff auf Fileebene auf meine Websiteprojekte, setze ich auf eine umfangreiche .ssh/config-Datei, in der ich für jeden SSH-Login einen Kurznamen definiere:

Host bla
  Username x92762361
  ForwardAgent yes
  Hostname hosted.someprovider.net
...

Diese bei „Host“ angegebenen Kurznamen kann man sowohl für „ssh“, „scp“, als auch für Mounts per „sshfs“ verwenden:

ssh bla
scp archive.tgz bla:files/
sshfs bla: /mnt/bla

Das geht witzigerweise auch für „Hosts in Hosts“, also etwa KVM-Clients:

Host redmine
  User redmine
  Hostname prosystem413
  ForwardAgent yes
  ProxyCommand ssh -q -a -x myuser@otherhost nc %h 22
...

Mein neuster Hack dabei sind drei ZSH-Functions (in .zshrc), die mir das lokale Mounten von Remote-Filesystemen erheblich erleichtern. Dazu habe ich mir als Kommandonamen „mox“ (mount external) bzw. „umox“ ausgedacht:

function mox()
{
   MOUNTPOINT="$HOME/extern/$1"
   if [ ! -d "$MOUNTPOINT" ]; then
      mkdir "$MOUNTPOINT"
   fi
   sshfs "$1:" "$MOUNTPOINT"
   cd "$MOUNTPOINT"
}

function umox()
{
   fusermount -u "$HOME/extern/$1"
}

function moxpoints
{
   reply=(`grep 'Host ' ~/.ssh/config | awk '{print $2}'`)
}

function umoxpoints
{
   reply=(`mount | grep "$HOME/extern" | awk -F: '{print $1}'`)
}

compctl -K moxpoints mox
compctl -K umoxpoints umox

„moxpoints“ dient der Completion, d.h. „mox redTAB“ würde mir das zu „mox redmine“ completen. Ähnlich bei „umox“ zum fuse-umounten des sshfs-Mounts: hier suche ich in der Ausgabe von „mount“ nach passenden gemounteten Mountpoints.

Unoptimal ist noch, dass ich nicht Unterverzeichnisse im Remotefilesystem als Basisverzeichnis für sshfs angeben kann. Hierzu müsste man irgendwelche speziellen Kommentare in der „.ssh/config“ einbauen, nur reicht dann nicht mehr ein Grep zur Ermittlung der Hosts. Die Praxis hat aber gezeigt, dass man auch ohne tiefe Remotemountdirs auskommt.

Unter OSX (zsh, fuse, sshfs per homebrew installieren) funktioniert „mox“ auch prima. Leider zeigt der Finder dort aber nicht die Namen der Mountverzeichnisse an. Da verliert man schnell die Übersicht. Außerdem braucht OSX spezielle Optionen, um die Remoteuser auf den lokalen User zu mappen. Die .zshrc wäre dann anzupassen.

Ich gehe davon aus, dass man mox/umox mit Completion auch in bash realisieren kann. Aber wer nutzt schon bash? :-)

Game of life

Wie kam ich eigentlich darauf, irgendwie stolperte ich die Tage über das alterwürdige Game of Life von Conway, in Form eines Livehintergrunds für mein Androidhandy. Schockierenderweise kennen einige meiner Kollegen und Verwandten/Freunde das nicht. Sapperlot!

Ich meine, wir hatten das damals schon auf dem ZX81 programmiert, aber vielleicht wars auch auf dem Atari oder Amiga. Das ist schon eine Weile her.

Gestern hatte ich im HaSi etwas Zeit, und herausgekommen ist eine Javascript-Version (aktuell abrufbar auf http://www.taponet.de/canvas/canvas1.html).

Die Regeln holte ich mir aus der Wikipedia, die in einem langen Artikel auch Dinge wusste, die mir noch nicht bekannt waren. Hey damals war ich noch ein Kind.

Hier ein paar Links:

Nochmal Kraniche

Nach dem Erinnerungschaos der letzten Beobachtungen (hier fliegen aktuell beinahe täglich Kraniche herum) hier noch ein Schnappschuss, der mir am 9.3.2013 mit dem Handy gelang. Diesmal kann man a) alle Kraniche zweifelsfrei erkennen, und b) weiß ich noch, welche Zahl ich abgeschätzt hatte: 50.

Kraniche_20130309_094905

Abgezählt im Foto sind es genau X Kraniche (fahr mit der Maus auf diesen Satz…).

Kraniche, überall Kraniche…

Also vorvorgestern waren es meine ich ~160, vorgestern und gestern ja ca. 120, aber wer erinnert sich schon an vorgestern… Ach und gestern abend im Dunkeln flogen auch noch ein paar kreischende Ufos vorbei.

Ich hatte doch nochmal prüfen wollen, wie gut die Abschätzung am Himmel mit einer echten Zählung übereinstimmt. EIN Foto zeigt halbwegs erkennbar Kraniche. Nur sind leider ein paar der Pixel etwas unscharf. Ich muss wohl doch mal Geld für ein Handy mit besserer Kamera ausgeben, um vom Real-Parkplatz aus fliegende Kraniche fotografieren zu können.

Hier das Foto: Versuche schnell zu schätzen, wieviele es sind [und ratet, wo da die Kraniche sind :-)]:

20130304_174403_Kraniche

Hier eine Detailvergrößerung:

20130304_174403_Kraniche-a

Die Auflösung habe ich im Alt-Text dieses Satzes versteckt — einfach mit der Maus drüber anhalten.

WTF Was will XFCE/Clipman von mir?

Ich habe eben mal die Properties vom XFCE-Clipman geöffnet, weil bei mir zickt das Teil ja immer wieder (vergisst Clipboardeinträge).

Was mag da jetzt der Unterschied zwischen den unteren beiden Optionen sein? Muss ich beide Anklicken, damit die Sortierung wieder normal ist?

xfce-clipman

Versteckte Tasten, Optimierungen usw in OSX (Lion)

Schön aufgeräumt kommt die Tastatur vom MacBook Pro daher — nur wo findet man die ganzen Zeichen, die man so im Alltag benötigt? Hier eine kurze Auflistung (da muss es aber noch mehr geben, etwa Anführungsstriche oben und unten usw):


alt 5, 6: [ ]
alt 8, 9: { }
alt 7: |
shift-alt 7: \
alt n: ~
alt Backspace: Wort nach links löschen
fn up/down: Page up/down
ctrl a: Pos 1

Desweiteren nervt es, mit mit Cmd-Tab nicht zwischen Unterfenstern wechseln zu können. Entweder tippt man /F3, oder man definiert in Systemeinstellungen/Tastatur/Tastaturkurzbefehle in „Tastatur & Texteingabe“ den Shortcut von „Fokus zum nächsten Fenster bewegen“ auf Cmd-^.
Dann kann man nach Cmd-Tab immerhin mit Cmd-^ die Fenster der Anwendung wechseln.

Zu den wichtigsten Installs gehört für mich:
* Homebrew
* mit „brew“ dann sshfs, fuse4x, zsh, zshcompletions, pwgen
* VLC Player für MP3s installieren . Dazu im Finder auf ein MP3 Rechtsklick, Informationen, Standard-Player wählen und „für alle anwenden“.
* Als Editor entweder Komodo Edit (kostenlos, OpenSource) oder Sublime Text 2 (kostet, kann aber auch so benutzt werden). Die Tastatursteuerung von Sublime Text 2 ist genial, auch die Fuzzy Search beim Öffnen von Dateien. Gerade bei Symfonyprojekten ist das unschlagbar.
* iterm2 als Ersatz fürs Terminal. Aber nicht das Fenster maximieren, weil Cmd-Tab dann mit anstrengenden optischen Effekten nervt.

Weiteres folgt.

Nützliche Inhalte in QR-Codes

Dies ist ein Repost eines Artikels aus meinem alten Blog. Ich brauche diese Sachen sporadisch selber, und nach Abschaltung des alten Blogs hatte ich keinen Ort mehr, wo ich sie nachlesen konnte.

Wo ich ja jetzt ein Android-Telefon habe interessiere ich mich naturgemäß wieder mehr für 2D-Barcodes wie QR-Code und Datamatrix. So zeigen viele AppStores und Sites QR-Codes mit market-Urls an, die man beispielsweise mit der App „Barcode Scanner“ vom Bildschirm ablesen kann. Diese market-Urls sind einfache Texte, die wegen des Textanfangs „market:..“ vom Scanner als market-Url erkannt werden. Neben „market:“ gibt es noch eine ganze Reihe weiterer verbreiteter Schlüsselwörter, mit denen man sein mobiles Leben vereinfachen kann.

Damit ich mir die nicht immer wieder neu zusammensuchen muss, will ich hier alle mir bekannten Inhaltsformate aufführen. Ausprobieren kann man die — meist unter Wahl einer einfachen Klapplistenoption — mit einem der Online-Barcode-Generatoren (s.u.). Es gibt aber auch Linuxtools wie „qrencode“, mit denen man das lokal auf das Kommandozeile machen kann. Das hat den Vorteil, dass man dann beispielsweise seinen Wifi-Zugang (siehe unten) nicht unverschüsselt übers Netz überträgt.

Sämtliche Formate sind Variationen des Textformats. Man kann sie also alle auch mit einem einfachen Text-Code-Generator erzeugen.

Online-Generatoren

Dann möchte ich noch auf die Firefox-Extension Mobile Barcoder hinweisen, mit der man in Firefox einen QR-Code der aktuellen Browseradresse erzeugen kann. So kann man eine Website leicht vom Desktop aufs Android-Telefon übernehmen.

Inhaltsformate

TEXT

Einfacher Text. Alle anderen Formate basieren hierdrauf.

Android-Market

Folgende Formate sind mir begegnet:

Beispiel

Termin/Kalendereintrag

BEGIN:VEVENT
SUMMARY:Meine Party
DTSTART:20110218T072200Z
DTEND:20110218T092200Z
LOCATION:Am Nordpol
DESCRIPTION:Warm anziehen
END:VEVENT

Hinweise: Die Zeilenumbrüche sollten als 0d0a codiert werden. Die Uhrzeiten sind offenbar UTC-Uhrzeiten. Man müsste mal ausprobieren, anstelle des Z etwa CET anzugeben.

Visitenkarte

Textinhalt: "MECARD:N:Myname;TEL:01234;URL:www.taponet.de;EMAIL:my@company.com;ADR:Address1 Address2;NOTE:MyMemo;;"

Das MECARD-Format kann noch am ehesten von Handys verstanden werden, im Gegensatz zu VCARD. Bevor man das itw verwendet, sollte man es mit den Zielgeräten ausprobieren.

E-Mailadresse


Textinhalt: "mailto:bla@fasel.de"


Geo-Koordinaten

geo:50.1,8.0

Hinweise: Offenbar wird einfach angenommen, dass es WGS84-Koordinaten sind. Dabei gibt es eine ganze Reihe weiterer Systeme, etwa UTM.

Telefonnummer

tel:…. (Beispiel: "tel:+4012341234")

SMS

Beispiel: "smsto:01700000000:Hallo der Text"

URL

Dies ist einfach eine Url (»http://de.wikipedia.org/wiki/Code128«) im Textformat. Die meisten Reader erkennen die Url dann am »http:« und bieten das Öffnen eines Browsers an. Code128 ist übrigens auch interessant, der barcode wird nur schnell so breit, dass er vom Reader nicht mehr aufgenommen werden kann.

Nachtrag: Man kann auch mit Newlines formatierten Text, der auch Urls enthalten kann, in einen QR-Code tun.

Wifi

Dies ist ein sehr interessantes Format, um Gästen einen einfachen Zugang zum eigenen WLAN zu ermöglichen:

  • WPA/PSK: "WIFI:S:MySSid;T:WPA;P:MyPass;;"
  • WEP: "WIFI:S:MySSid;T:WEP;P:MyWEPPass;;"
  • Offen: "WIFI:S:MySSid;T:nopass;P:MyWEPPass;;" (vermutlich kann dann „P:MyPass“ entfallen?)

So, ich hoffe das war auch für deinen Einen oder Anderen da draußen interessant.

1062 Kronkorken und viel Spaß

So! Viele! Kronkorken! Gut, es waren 1052 plus 10 Schraubverschlüsse. Und ein bisschen Müll war auch dabei. Aber es hat Spaß gemacht:

Foto mit 1071 sortierten Kronkorken

Beim einem Schätzversuch vorher waren wir auf ca. 460 Deckel gekommen. Wir lagen also deutlich daneben. Ob das bei meinen Kranichzug-Flugformation-Abschätzungen genauso ist, werde ich mal überprüfen. Dazu ein andermal mehr. Zurück zu den Kronkorken:

Folgende Mengen habe ich ermittelt:

      C*c*Cola: 1              HB grün/rot: 6
     J*ver FUN: 1                HB ws/rot: 41
  Velt*ns Pils: 1               HB grün/or: 29
     Erz*-Pils: 3               HB or/grün: 17
      rotlicht: 1                 HB li/ge: 23
          gold: 20            HB rosa/grün: 19
          weiß: 50
      hm braun: 48            Kr*mbacherPi: 318
      hm beige: 154        
  Spitzhut rot: 159          Spitzhut blau: 161
                        Spitz-blau,schraub: 10

Die erste „Herausforderung“ besteht im Addieren der Zahlen. Taschenrechner kann jeder, und mein Androidhandy mit dem HP48G-Emulator lag auch weit weg. Also Papier und Stift nehmen und spaltenweise die Einer, Zehner, Hunderter addieren. Fit sein für die Zeit nach dem EMP.

Hier hatte ich die Idee, mit der linken Hand pro Spalte die Überträge zu zählen, während ich mit dem Kopf nur die Spaltensummen-Einer verfolge, und mit der rechten Hand mit dem Stift die Zahlen entlang gehe und die Schreibarbeit leiste.

Man zählt ja in Deutschland beginnend mit dem Daumen (1), Zeigefinger dazu (2), Mittelfinger dazu (3), Ringfinger dazu (4), Kleiner Finger dazu (5). Es gibt weltweit dutzende andere Vorgehen, mit denen man teilweise was für mich schon immer interessant war. Ich hatte jetzt die Idee, „nur Kleinerfinger“ als (6), Ringfinger dazu (7), Mi.fi. dazu (8), Zeigefinger dazu (9) zu zählen.

Das reicht hier aus, wobei man bei 18 Zahlenwerten mit jeweils Neunen bis 162 kommen könnte (also 16 Überträge). Ich kenne eine indische Methode, mit der man an einer Hand bis 14 kommt, die hätte ich dann erweitert.

Beim Addieren einer Spalte behält man nur die Einer der Summe im Kopf. Bei jedem Übertrag über die 10 zählt die Hand einen weiter, und im Kopf hält man weiter nur die Einer:

Stelle Hand Kopf
1        0   1
1            2
1            3
3            6
1            7
...
8        1   5
4            9
9        2   8
..      ..  ..
         6   2 = Summe der Einerspalte der Werte

Bei mehrfachen Versuchen kommt man natürlich auf unterschiedliche Ergebnisse, wie sollte es anders sein.

Jetzt könnten noch die Anteile einzelner Sorten an der Gesamtzahl interessieren. Was liegt hier näher als der Griff zum Aristo Scholar Rechenschieber?

Da ich den so selten verwende, benutze ich nur die Grundskalen und muss auch erst Neun durch Zwei teilen, um das mit dem Übertrag/Untertrag neu zu erinnern. Interessant beim Rechenschieber ist, dass man vor jeder Rechnung abschätzen muss, was denn ungefähr als Ergebnis zu erwarten ist, damit man das Ergebnis mit der richtigen Kommaposition abgelesen bekommt.

Um den Anteil der Deckel von Kr*mbacherPi (318) an der Gesamtanzahl 1062 zu berechnen, müssen wir 318 durch 1062 teilen. Wir erwarten dafür einen Wert knapp unter einem Drittel. Wie stellen wir auf Skala D 3,18 ein, sowie auf Skala C den Nenner als 1,062. Die Zehnerpotenzen werden nicht eingestellt. Das Ergebnis kann dann unter der 1 von Skala C abgelesen werden: 2,95. Nmmt man die Zehnerpotenzen wieder dazu, erhält man 29.5% als Ergebnis:

Rechenschieber einstellen auf 318 / 1062 und Ablesen des Ergebnisses

Es stammen also rund 29.5 % der Deckel von Kr*mbacher-Pils-Flaschen.

Viel Spaß beim Ausrechnen der übrigen Anteile mit einem Online-Rechenschieber!