Um auch unterwegs ein wenig an meinen Horrorblog Reviews zu arbeiten und Konzepte zu schreiben oder sonstwas zu machen habe ich mir in der letzten Woche mein erstes Netbook zugelegt. Das trendige iPad kam nicht in Frage, da es keine Tastatur hat, nicht erweiterbar ist und man nur die Apps aus dem AppStore installieren kann.
Um mich nicht mit dem auf dem Samsung N150
vorinstalliertem Windows 7 rumägern zu müssen hab ich direkt beim zweiten mal hochfahren den vorher präparierten USB Stick mit der Ubuntu Live-CD angesteckt und schon nach wenigen Klicks war Ubuntu installiert. Beim erstellen des USB Sticks hat es sich herausgestellt, dass die Anleitung auf der Ubuntu Download Seite für OSX nicht funktioniert und dass man mit der Windows Anleitung besser fährt.
Nach der Installation stand mir die ganze Open-Source Welt offen und ich hab’ erstmal meine Lieblinge cmatrix und figlet für die Kommandozeile installiert. Weitere Programme findet man über die Software suche und kann sie super schnell und einfach installieren.
Da mir schon vor einiger Zeit der Computer-Lesestoff ausging, hab’ ich mir letzte Woche jQuery Cookbook
bei Amazon bestellt.
Das Buch ist angefüllt mit praktischen Beispielen und Lösungen, auf die man, wenn man viel mit jQuery arbeitet, schon gestoßen ist. Wenn ihr Glück habt findet ich viele, oder so wie ich, weniger neue Sachen in dem Buch. Auf jeden Fall sollte man mal reinschauen! Die deutsche Ausgabe kommt im Juni raus, jQuery Kochbuch
kann man schon vorbestellen.
Wie manche von euch wissen betreibe ich seit einiger Zeit ja ein kleines aber mittlerweile echt ganz gut erfolgreiches Blog über Horror- und Fantasyfilme. Bei dem dritten Gewinnspiel haben über 150 Leute mitgemacht und mir eine Email geschickt. Leider etwas viele um per Losverfahren Gewinner auszuwählen. Das folgende Beispiel wird für erfahrene Programmierer nichts neues sein oder total langweilig. Eventuell hilft’s aber dem einen oder anderen weiter ;-)
Einfach mit OSX Mail die Mails extrahieren, die das richtige Lösungswort enthalten, oder die man untersuchen möchte. Dabei erstellt Mail einfach eine Datei mit allen Email-Quelltexten untereinander in einer Textdatei. Diese kann man super mit der Bash maltretieren und die Absenderadresse extrahieren:
grep -Z -P '^From:s(.+)' mail_export.txt | uniq
Wenn man dann noch zwei Gewinner auswählen möchte, braucht man nur doch die Anzahl der Zeilen in der Datei und wählt dann einfach zwei aus. Das ganze Shell-Script sieht dann so aus:
#!/bin/bash
##########################################################
# Extract n radom emails from a file
#
# Usage:
# winner.sh [filename] [count]
#
# Author: Marcel Eichner // Ephigenia <love@ephigenia.de>
# Date: 2009-03-30
##########################################################
TMPFILE=`mktemp -t emails` || exit 1
grep -Z -P '^From:s(.+)' "$1" | uniq > $TMPFILE
# select random line from file
LCOUNT=`wc -l "${TMPFILE}" | awk ' { print $1; }'`
echo "Choosing ${2:-1} winners from ${LCOUNT} emails"
for (( i = 0 ; i < ${2:-1}; i++ ))
do
LINENUMBER=$((($RANDOM % $LCOUNT) + 1))
sed -n ${LINENUMBER}p ${TMPFILE}
done
Das Script kann wenn es ganz doof kommt auch zwei mal die gleichen Absender auswählen. Wenn das passiert kann man das Bash-Script ja gleich noch mal laufen lassen. Danke an Caspar der noch weitere hilfreiche Anregungen gegeben hat!
Die Berliner Gazette ist ein seit 1999 bestehendes Online Feuiletton. Pünktlich zum Beginn des neuen Monats ist die neue aktualisierte Website online gegangen. Ich konnte in den letzten zwei Monaten sporadisch, an der auf Wordpress basierenden Seite, arbeiten - Da viele bisherige Inhalte schon in Wordpress vorhanden waren eine leichte Entscheidung.
Ich hoffe, das durch diese neue Version, in der auch bald alle Inhalte gesammelt sein werden, die Interaktivität gesteigert wird und alles viel dynamischer ist. Ich wünsche der Redaktion viel Erfolg!
Freunde von Freunden ist ein Online- und Interviewmagazin, das Kreative und Meinungsführer in ihren Arbeits- und Lebensräumen dokumentiert und persönliche individuelle Perspektiven und Eindrücke vermittelt.
Wir schauen hinter die Kulissen und zeigen, wie unsere Freunde leben und wohnen. Mit Hilfe von Fotostrecken porträtieren wir ausgewählte Personen in ihrer direkten Lebensumgebung, sei es zu Hause, im Studio, im Apartment oder in deren Kiez.
Ein einmaliger und exklusiver Einblick mit visuellen Eindrücken, viel Liebe zum Detail, Hintergrundinformation zum Alltag der Gäste und Geheimtipps durch Text- und Videointerviews.
Umgesetzt hat das ganze, nach einer Idee von Timmi Seifert, Nomoresleep und die Photos stammen von Ailine Liefeld.
Max Lisewski hat es mal wieder geschafft! Mit seiner wirklich umfangreichen Diplomarbeit die sich mit Prokrastination beschäftigt hat er vor gut einer Woche den Lucky Strike Designers Award verliehen bekommen. Mehr zu dem Buch gibt es auf der Portfolio Seite von Max und auf der Raymond Loewy Foundation Seite mit den Preisträgern
Herzlichen Glückwunsch!
Wie gestern schon beschrieben kann man super ab (Apache Bench) die Performance seiner Applikationen im Web testen. Durch Zufall hab ich in meiner Ports Sammlung noch ein anderes Programm gefunden das auch sehr vielversprechend aussieht: siege.
Dort kann man auch mehrere URLs testen, einen User simulieren und noch viel mehr. Damit habe ich allerdings noch nicht so viel Erfahrung. Hab aber gleich mal meine App getestet:
siege -c 100 -t 10s http://localhost/myProject/
Die Ausgabe sieht fast so aus wie beim ab:
Transactions: 545 hits
Availability: 100.00 %
Elapsed time: 17.85 secs
Data transferred: 1.33 MB
Response time: 1.02 secs
Transaction rate: 30.53 trans/sec
Throughput: 0.07 MB/sec
Concurrency: 31.01
Successful transactions: 604
Failed transactions: 0
Longest transaction: 3.31
Shortest transaction: 0.03
Mit einem Config File kann man aber auch noch mehrere Urls abfragen und so ein realistischeres Ergebnis erzielen. Mehr dazu steht in der Docu von Siege oder in Tutorials die man so im Netz findet: Regression testing with Siege.
Ich denke mal das solche Tools auch eine wunderbare Möglichkeit sind verschiedene Hoster zu testen oder einem Kunden zu zeigen wie Vorteilhaft eine Optimierung seiner Applikation wäre oder einfach nur welchen extremen Effekt der Einbau eines Caches hat.
Wer sich mit Websiten beschäftigt die von mehr als 100 Besuchern am Tag besucht werden und nicht wirklich viel im Terminal macht freut sich eventuell über Apache Bench.
Das ist ein Programm das man auf OSX ganz einfach im Terminal laufen lassen kann um seinen Server mal so richtig schwitzen zu lassen.
Ein üblicher (und auch vergleichbarer) Aufruf ist der folgende:
ab -c 10 -t 60 http://localhost/myProject/
Was 60 Sekunden lang, immer 10 Requests auf die Seite abfeuert und einem danach folgende Ausgabe generiert:
Finished 3102 requests
Server Software: Apache/2.0.59
Server Hostname: localhost
Server Port: 80
Document Path: /myProject/
Document Length: 2005 bytes
Concurrency Level: 10
Time taken for tests: 60.002 seconds
Complete requests: 3102
Failed requests: 303
(Connect: 0, Receive: 0, Length: 303, Exceptions: 0)
Write errors: 0
Total transferred: 7530897 bytes
HTML transferred: 6211149 bytes
Requests per second: 51.70 [#/sec] (mean)
Time per request: 193.431 [ms] (mean)
Time per request: 19.343 [ms] (mean, across all concurrent requests)
Transfer rate: 122.57 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 1 1.2 0 11
Processing: 30 186 663.6 157 20630
Waiting: 0 161 83.6 155 621
Total: 30 187 663.6 157 20631
Percentage of the requests served within a certain time (ms)
50% 157
66% 196
75% 219
80% 235
90% 276
95% 309
98% 354
99% 386
100% 20631 (longest request)
In dieser Ausgabe kann man erkennen das das aktuelle Projekt so ca. 50 Leute gleichzeitig aushalten könnte. Im vergleich mit anderen Projekten kann man dann Rückschlüsse darauf ziehen wie gut man programmiert hat ;-)
Viele benutzen ab auch zum Vergleich von verschiedenen Frameworks die ich euch natürlich nicht vorenthalten möchte: Test1, Test2 und Test3.
ab kann man wie üblich über macports installieren (OSX Developer Tools müssen installiert sein):
sudo port install ab
Vor ein paar Wochen war ich auf einer Lesung von Ivo Sachs.
In dem echt "überfüllten" Cafe konnte man sich bei ein zwei Bier gut in die gefüllten Anekdoten reinversetzen. In seinem Buch Schimpansen am Abgrund gibts nur so was. Leseprobe gibts auch undzwar auf der Seite vom Proviantbuch Verlag.
Maiko Gubler aka Mongrelnation hat endlich ihr Portfolio online gestellt! Zu sehen gibt es verschiedene Arbeiten von ihr aus dem Bereich 3D - Renderings von Diamanten, Schnürsenkeln und ganze Trailer für’s TV.
Die Seite basiert auf NMS.Folio, dem selben System mit dem auch meine Seite läuft und für Maiko war es ein Kinderspiel ihre Arbeiten einzupflegen. Bald gibt es mehr darüber bei NoMoreSleep.