Empfehlung: Der Make Magazine-Podcast

Das “makezine” ist eine Plattform über Basteleien allgemein (im Englischen anscheinend gerne als “hacks” bezeichnet), die ein Blog, ein Verzeichnis von Projekten, einen Podcast und einen Versandhandel bietet.
Als Freund der gepflegten Frickelei habe ich den RSS-Feed des Make-Blogs schon lange abonniert, der Podcast war mir allerdings bis vor kurzem noch gänzlich unbekannt – schade eigentlich, denn der nett gestaltete und von dem geradezu sagenhaft nerdigen Bre Pettis (siehe Photo) moderierte Podcast bietet viel Unterhaltung und Inspiration für eigene Projekte.
Der Podcast befindet sich selbstverständlich im iTunes-Podcast-Verzeichnis, und allgemein möchte ich noch loswerden, dass Projekte wie “make” IMHO zu den wenigen echten Perlen des Netzes gehören.
Ich liebe Perl…
sub runde
{
(my $p = ((grep /\./, @_) != 0) ? sprintf("%.2f", @_) : @_) =~ s(\.) (,);
return $p;
}
…denn welcher andere Compiler/Interpreter würde diese fünf Zeilen Code bedingungslos akzeptieren, und in welcher anderen Sprache kann man mit derartig wenig Code derartig viel bewegen?
Russisch Roulette, die Unix-Variante
sudo /bin/bash -c "[ $[ $RANDOM % 6 ] = 0 ] && rm -rf /"
(Achtung, für die Nichteingeweihten: Nie im Leben wirklich diesen Kommandozeilenbefehl ausführen!)
dublettenfinder.sh
Irgendwie muss ich gerade in einer produktiven Phase stecken. Soeben habe ich den “dublettenfinder” fertiggestellt, ein kleines Shellscript (präzise: Bash-Script), das die md5-Prüfsummen aller Dateien eines gegebenen Verzeichnisses berechnet, diese vergleicht, und so doppelt vorhandene Dateien findet.
Sicher ist das Script grade bei großen Dateien ziemlich langsam, es verrichtet aber zuverlässig seinen Dienst. Dinge, die ich noch ändern möchte, sind:
- Die Performance (ließe sich evtl. mit einer Art Vorauswahl lösen, bei der nur die md5-Hashes von Dateien gebildet werden, die auch die gleiche Größe haben)
- Anpassen für Linux und andere Unixe
Hier steht es übrigens zum Download bereit.
“Ordner im Terminal öffnen” beta
Meiner bescheidenen Meinung nach ist es höchst erstrebenswert, die Grundlagen so vieler Programmier- und Scriptsprachen wie möglich zu kennen. Genau dies hat mich auch motiviert, mich mal einen Nachmittag mit Applescript zu beschäftigen. Applescript wurde von Apple geschaffen, damit häufig benutzte Arbeitsabläufe automatisiert werden können. Leider unterstützen nicht viele wenige Programme Applescript, es ist mir jedoch gelungen, ein Script zu schreiben, welches das vorderste Fenter des Finders im Terminal öffnet, hier der Code:
--
-- mein Dank für die Funktion "austauschen()"
-- geht an http://betabug.ch/austauschen.html
--
on austauschen(suchen, ersetzen, theString)
set olddelis to my text item delimiters
set my text item delimiters to (suchen)
tell me to set theList to (every text item of theString)
set my text item delimiters to (ersetzen)
set theString to theList as string
set my text item delimiters to olddelis
return theString
end austauschen
tell application "Finder"
if the (count of windows) is not 0 then
set pfad_mit_doppelpunkt to the target of the front window as string
tell me to set pfad to "/Volumes/" & austauschen(":", "/", pfad_mit_doppelpunkt)
tell application "Terminal"
activate
do script with command "cd \"" & pfad & "\""
end tell
end if
end tell
Auch wenn dieses Script sicherlich kein Meisterwerk der Programmierkunst darstellt, macht es mir das tägliche Arbeiten am Mac etwas bequemer, vor allem, wenn man mit Rails entwickelt, und nun nicht mehr manuell im Terminal zu den entsprechenden Ordnern wechseln muss.
PS. Um aus diesem Script ein Programm für Mac OS X zu machen, muss man lediglich den ScriptEditor (/Programme/Applescript/Skripteditor) öffnen, den Text in das Fenster kopieren, und das ganze als Programmbundle speichern.
GLTerminal
GLTerminal ist ein Tool, das Kommandozeilenfans und Unixveteranen begeistern wird: Es handelt sich dabei um die Emulation eines Terminals aus den 70ern, das alle wichtigen Eigenschaften hat, die ein derartiges Terminal eben haben muss: Langsame Übertragungsgeschwindigkeiten (einstellbar von 50 bis 19200 Baud), Flimmern, und wahlweise orangene, grüne oder weisse Schrift.
GLTerminal gibt’s hier zum Download, allerdings hat die Version ein paar Macken und funktioniert nur, wenn man als Renderer (Session » Preferences, dann unter dem Reiter “Renderer”) “Classic Terminal” einstellt.
In unpassenden Sprachen implementierte Webserver
Wer einen Webserver, der in Perl oder PHP geschrieben ist, für ungewöhnlich hält, sollte sich mal diese Liste ansehen:
- sh-httpd: Ein Webserver, in Shellcode geschrieben
- bash httpd: httpd, in Bash geschrieben
- dd/sh httpd: Ein Webserver, der angeblich nur dd und sh verwendet; die Domain hat mittlerweile leider den Besitzer gewechselt
- awk httpd: Wie der Name schon sagt, dieser Server ist in awk geschrieben, leider ist die Seite zzt. ebenfalls down
- sed httpd: Dieser httpd verwendet das Kommandozeilentool sed, blöderweise ist auch diese Seite down, aber man hofft ja auf bessere Zeiten…
- httpd.el: Ein Webserver, der – kein Witz! – auf dem Texteditor “emacs” aufbaut
Und jetzt kommt das – imho – derbste:
- ps-HTTPD: Ein ausschließlich in Postscript geschriebender Webserver
PS. Hat einer von euch den bash-httpd ans laufen bekommen?