Beats und Bytes http://blog.beatsundbytes.de Notizen zum Thema Webentwicklung und anderen nerdigen Dingen posterous.com Mon, 26 Jul 2010 06:39:00 -0700 Hier passiert nix mehr. http://blog.beatsundbytes.de/hier-passiert-nix-mehr http://blog.beatsundbytes.de/hier-passiert-nix-mehr

Posterous war ein kurzes Vergnügen. Aber Tumblr gefällt mir besser. Alles was also ich zu sagen habe, sage ich entweder wie gewohnt auf Twitter oder eben auf nerdism.us, meinem Tumblelog. 

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/81583/n1048092432_30094126_6329.jpg http://posterous.com/users/eMD7ltT2MN Nils Riedemann NilsR Nils Riedemann
Wed, 06 Jan 2010 00:25:49 -0800 Untitled http://blog.beatsundbytes.de/9524081 http://blog.beatsundbytes.de/9524081

Image

via tweetie

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/81583/n1048092432_30094126_6329.jpg http://posterous.com/users/eMD7ltT2MN Nils Riedemann NilsR Nils Riedemann
Wed, 16 Dec 2009 02:04:52 -0800 Untitled http://blog.beatsundbytes.de/8744072 http://blog.beatsundbytes.de/8744072

Image

via tweetie

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/81583/n1048092432_30094126_6329.jpg http://posterous.com/users/eMD7ltT2MN Nils Riedemann NilsR Nils Riedemann
Fri, 06 Nov 2009 01:03:19 -0800 Google Wave Tastenkombinationen für den Anfang http://blog.beatsundbytes.de/google-wave-tastenkombinationen-fur-den-anfan http://blog.beatsundbytes.de/google-wave-tastenkombinationen-fur-den-anfan Seit ein paar Tagen benutze ich Google Wave. Es ist fühlt sich am Anfang etwas schwammig an. Aber mit ein paar Tastenkombinationen, die man sich schnell merken kann, fühlt es sich gleich viel besser an.

Return: Antwort auf den ausgewählten Blip
Shift-Return: "Diskussion fortsetzen" Platziert einen Blip an das Ende der aktuellen Einrückungsebene.
Shift-return im Schreibmodus: Schreibmodus beenden (quasi "Done")
Ctrl+e: ausgewählten Blip editieren

Mit den Cursor-Tasten kann man von Blip zu Blip springen und mit Space zum nächsten ungelesenen Blip springen. Egal ob in der aktuellen wave oder in einer anderen. Ist er in einer Anderen wird erst die Wave ausgewählt und durch nochmaliges drücken der Space-Taste öffnet die Wave und springt darin zum ersten ungelesen Blip usw..

Das sind wohl so die wichtigsten Tastenkombinationen für den Anfang.  

Permalink | Leave a comment  »

]]>
http://posterous.com/images/profile/missing-user-75.png http://posterous.com/users/hesfOthEtac2u nilsr nilsr nilsr
Wed, 04 Nov 2009 00:42:00 -0800 Untitled http://blog.beatsundbytes.de/6993847 http://blog.beatsundbytes.de/6993847

Image

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/81583/n1048092432_30094126_6329.jpg http://posterous.com/users/eMD7ltT2MN Nils Riedemann NilsR Nils Riedemann
Mon, 02 Nov 2009 00:30:29 -0800 Google Wave http://blog.beatsundbytes.de/google-wave-942 http://blog.beatsundbytes.de/google-wave-942 Das wurde ja auch so langsam Zeit. Nun darf ich endlich auch bei der Wave mitspielen. Auf den ersten Blick ist alles wie erwartet und ich bin gespannt wo die Reise hingeht. 

Permalink | Leave a comment  »

]]>
http://posterous.com/images/profile/missing-user-75.png http://posterous.com/users/hesfOthEtac2u nilsr nilsr nilsr
Wed, 21 Oct 2009 04:14:00 -0700 Welche Probleme löst Google Wave? http://blog.beatsundbytes.de/welche-probleme-lost-google-wave http://blog.beatsundbytes.de/welche-probleme-lost-google-wave

Über Martin Labuschin bin ich auf den Artikel von Daniel Tenner gestoßen, in dem er schön erörtert, welche Probleme Google Wave löst bzw. überhaupt lösen will.

Sollte man sich als interessierter auf jeden Fall einmal durchgelesen haben.

Permalink | Leave a comment  »

]]>
http://posterous.com/images/profile/missing-user-75.png http://posterous.com/users/hesfOthEtac2u nilsr nilsr nilsr
Sun, 11 Oct 2009 07:58:39 -0700 BDD mit Cucumber ist großartig http://blog.beatsundbytes.de/bdd-mit-cucumber-ist-groartig http://blog.beatsundbytes.de/bdd-mit-cucumber-ist-groartig

BDD - Behaviour Driven Development. Lange habe ich mich irgendwie um das Thema herumgeschlichen, aber nach ein paar größeren Rails-Projekten habe ich gemerkt, dass auf lange Sicht kein Weg daran vorbeiführt. Bei BDD geht es darum, erst das Verhalten einer Anwendung zu beschreiben und dieses dann zu implentieren. Das Tolle dabei ist, dass die Spezifikationen die man schreibt, gleichzeitig die Anwendung testen. Bei größeren Anwendungen ist es normal, dass man irgendwann den Überblick verliert und nicht alle Auswirkungen einer Änderungen berücksichtigen kann, weil man nicht mehr weiss wo überall die Methode xyz benutzt wird. Hat man aber Spezifikationen geschrieben, dann sieht man sofort, dass noch alles funktioniert - oder eben wo genau Fehler auftreten.

Der Grund warum ich bisher mich davor gedrückt hatte ist banal: der Mehraufwand. Es war schon eine Hürde, weil Spezifikationen bislang immer irgendwie merkwürdig waren und nicht so leicht von der Hand gingen. So brauchte ich für ein Funktion in einer Rails-App die in ihrer eigentlich Umsetzung nur zB 10min gedauert hätte, geschlagene 30min bis ich die Spezifikationen geschrieben habe, den testenden Ruby-Code und und und. Logisch, dass es weniger wird, wenn man es häufiger gemacht hat. Hinzu kommt aber noch, dass die Spezifikationen, die im Prinzip auch Dokumentation sind, da sie ja das Verhalten der Anwendung sehr genau beschreiben, nur von Entwicklern gelesen und verstanden werden können. 

Bei Cucumber ist das alles viel toller. Das schreiben der Spezifikation erfolgt in Plain-Text. Ganz normale Sprache, die jeder versteht. Es gibt ein paar Regeln, die aber das Arbeiten damit erleichtern. Eine Spezifikation in Cucumber kann wie folgt aussehen:

Feature: Manage Articles
        In order to make a blog
        As an author
        I want to create and manage articles

  Scenario: Articles List
    Given I have articles titled "Some last few words", "I want my panties back"
    When I go to the list of articles
    Then I should see "Some last few words"
    And I should see "I want my panties back"

Klar ein ziemlich simples Beispiel, aber was auffällt ist, dass jeder es lesen und verstehen kann. Auch ein Laie, zB. der Kunde, kann sich vorstellen was passieren soll. Cucumber ist auch nicht an die englische Sprache gebunden, man könnte die Spezifikationen also auch auf deutsch verfassen. 

Ich habe es mit rSpec und Test-Unit versucht, aber erst mit Cucumber scheint es mir so richtig sinnvoll und es macht sogar noch spaß. Ich empfehle daher Rails Entwicklern, sich Cucumber auf jeden Fall einmal anzuschauen. Es gibt auch einen wunderbaren Vortrag von Joseph Wilk, ein Mitentwickler von Cucumber, der es in 26 Minuten wirklich gut zusammenfasst. Etwas mehr ins Detail gehen die Railscast Episoden 155 und 159, die einen guten Einstieg beiten.

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/81583/n1048092432_30094126_6329.jpg http://posterous.com/users/eMD7ltT2MN Nils Riedemann NilsR Nils Riedemann
Mon, 05 Oct 2009 01:42:00 -0700 Twitter bald mit Listen bzw. Gruppen http://blog.beatsundbytes.de/twitter-bald-mit-listen-bzw-gruppen-0 http://blog.beatsundbytes.de/twitter-bald-mit-listen-bzw-gruppen-0

Wer wie ich Twitter viel nutzt kommt eigentlich kaum drum herum seinen Stream irgendwie zu Filtern. Ich benutze dazu mehrere Accounts und gespeicherte Suchen in Tweetie. Andere Clients wie zum Beispiel Tweetdeck oder Nambu haben die Möglichkeit Gruppen anzulegen. Letzteres soll schon bald von Haus aus gehen und sich dann "List" nennen. Man wird dann öffentliche und private Listen von gefolgten Twitter-Accounts anlegen und so seinen Stream filtern können.

Finde ich wirklich gut und ich bin auf die Umsetzung und Auswirkungen gleichermaßen gespannt - sowohl auf die Clients wie auch die Community. Ich denke dass, dadurch wieder ein bisschen Schwung in die Follower-Bude kommen wird. Nicht nur für Twitter-Neulinge wird es so erheblich einfacher für sie interessante Accounts zu finden.

Da werde ich den einen oder anderen Twitter-Account entsorgen können. Nur welchen…

Quelle: http://blog.twitter.com/2009_09_01_archive.html

Permalink | Leave a comment  »

]]>
Thu, 01 Oct 2009 00:50:00 -0700 gmail.com Adressen in Deutschland anlegen http://blog.beatsundbytes.de/gmailcom-adressen-in-deutschland-anlegen http://blog.beatsundbytes.de/gmailcom-adressen-in-deutschland-anlegen

Bekanntermaßen ist es nicht ohne weiteres möglich sich eine @gmail.com-Adresse in Deutschland zu besorgen. Bedingt durch einen Rechtsstreit gibt es in Deutschland nur die @googlemail. Nun hat man entweder die Möglichkeit, dass man jemanden von ausserhalb bittet einen Account anzulegen, oder man bedient sich eines Proxy-Servers. Nachdem ich die gängigen (hidemyass.com, vtunnel.com usw.) getestet hatte, stöberte ich weiter und landete letztendlich auf www.remainhidden.com, mit dem das Ganze problemlos funktioniert.

Also: für eine gmail-Adresse einfach über den Proxy von remainhidden.com gehen, und alles läuft. 

Permalink | Leave a comment  »

]]>
http://posterous.com/images/profile/missing-user-75.png http://posterous.com/users/hesfOthEtac2u nilsr nilsr nilsr
Tue, 04 Aug 2009 02:22:20 -0700 Passenger: undefined method rewind http://blog.beatsundbytes.de/passenger-undefined-method-rewind http://blog.beatsundbytes.de/passenger-undefined-method-rewind
Soeben wurde ich beim aufrufen von localhost:3000 mit einem freundlichen "Something went wrong" begrüßt. Ein Blick in die development.log offenbarte mir folgende Fehlermeldung:

 /!\ FAILSAFE /!\  Tue Aug 04 09:43:00 +0200 2009
  500 Internal Server Error
  undefined method `rewind' for #<TCPSocket:0x21811e8>

Nach kurzer recherche fand ich heraus, dass Passenger 2.1.3 anscheinend nicht mit der Rails 2.3.3 kompatibel ist. Also schnell ein Passenger-Update und es läuft wieder:

$ sudo gem install passenger && sudo passenger-install-apache2-module

Und nicht vergessen die httpd.conf zu aktualiseren.

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/81583/n1048092432_30094126_6329.jpg http://posterous.com/users/eMD7ltT2MN Nils Riedemann NilsR Nils Riedemann
Mon, 03 Aug 2009 08:27:00 -0700 really simple tooltips (jQuery Plugin) http://blog.beatsundbytes.de/really-simple-tooltips-jquery-plugin http://blog.beatsundbytes.de/really-simple-tooltips-jquery-plugin

Neulich war ich auf der Suche nach einem Tooltip Plugin für jQuery. Da ich auf anhieb keins gefunden hab*, das möglichst simpel ist, habe ich mir ein eigenes geschrieben.

$("a[title]").tooltip();
Das ganze trägt den wunderschönen Namen "(really) simple tooltips", kann, darf und soll bei github geforkt werden.

* Naja es gab schon einige, aber ich wollte wissen, wie man ein jQuery-Plugin schreibt.

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/81583/n1048092432_30094126_6329.jpg http://posterous.com/users/eMD7ltT2MN Nils Riedemann NilsR Nils Riedemann
Fri, 31 Jul 2009 08:43:29 -0700 iPod nach Absturz neu starten http://blog.beatsundbytes.de/ipod-nach-absturz-neu-starten http://blog.beatsundbytes.de/ipod-nach-absturz-neu-starten Hin und wieder schmiert mir mein iPod Nano ab. Meistens dann, wenn ich ihn "ausversehen" rausgezogen habe, ohne ihn vorher auszuwerfen. Bislang hab ich dann immer gewartet bis der Akku alle war, da es ja keinen "aus"-Knopf gibt. Nervig und vor allem unnötig, wie mir nun Mitgeteilt wurde. 

Hält man für mehrere Sekunden die Menü und Auswahltaste gedrückt, startet der iPod neu. 

Stunden im ÖPNV ohne Musik, vollkommen unnötig. Zum Glück hat das nun ein Ende.

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/81583/n1048092432_30094126_6329.jpg http://posterous.com/users/eMD7ltT2MN Nils Riedemann NilsR Nils Riedemann
Wed, 29 Jul 2009 07:51:00 -0700 Rails: In Log-Dateien schreiben http://blog.beatsundbytes.de/rails-in-log-dateien-schreiben http://blog.beatsundbytes.de/rails-in-log-dateien-schreiben

Manchmal ist es angebracht eigene Dinge in die Log-Dateien zu schreiben. Dafür gibt es in Rails den, nicht ganz so leicht zu findenden, `RAILS_DEFAULT_LOGGER`. Damit kann man an beliebiger Stelle der Rails-Anwendung in die aktuelle Log-Datei schreiben.

RAILS_DEFAULT_LOGGER.info "CSV wird importiert: #{csv.name}" # Oder so

Neben info() gibt es noch die Methoden debug(), warn(), error() und fatal().

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/81583/n1048092432_30094126_6329.jpg http://posterous.com/users/eMD7ltT2MN Nils Riedemann NilsR Nils Riedemann
Fri, 03 Jul 2009 00:13:00 -0700 Linksammlung I: HTML5 http://blog.beatsundbytes.de/linksammlung-i-html5 http://blog.beatsundbytes.de/linksammlung-i-html5

Ich habe die ganze HTML5 Entwicklung leider etwas verschlafen. Um das nachzuholen habe ich ein paar Links zusammengetragen, die ich zwar ehrlich gesagt noch nicht alle komplett gelesen habe, aber zumindest auf den ersten Blick brauchbar aussahen.

Sollte einer meiner zahlreichen Leser noch weitere brauchbare Links haben, werde ich die Liste gerne ergänzen.

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/81583/n1048092432_30094126_6329.jpg http://posterous.com/users/eMD7ltT2MN Nils Riedemann NilsR Nils Riedemann
Tue, 30 Jun 2009 02:57:44 -0700 Posterous http://blog.beatsundbytes.de/posterous-11543 http://blog.beatsundbytes.de/posterous-11543 Wordpress bietet zwar auch die Möglichkeit ein E-Mail-Konto abzurufen, allerdings sind dabei die Möglichkeiten auf reine Text-Posts beschränkt. Mit dem ohnehin eigentlich recht gutem Dienst posterous.com, bei dem man für seine Posts in erster Linie ausschliesslich E-Mails verwendet, kann seinen Post in ansprechender Form in viele verschiedene Dienste (wordpress, twitter, facebook …) portieren.

Genau wie dieser Post gerade, den ich über gmail verfasst habe. Bin wirklich gespannt wie gut das funktioniert. Damit es ein wenig kniffliger wird, mal mit YouTube-Video:

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/81583/n1048092432_30094126_6329.jpg http://posterous.com/users/eMD7ltT2MN Nils Riedemann NilsR Nils Riedemann