Table of contents
Felix Baumgartner Sonic Freefall Live
Grad bei RTL haben sie angekündigt, den Schallmauersprung live zu übertragen. Aber statt dessen kam irgendein Scheiss. Zum Glück haben wir das Internet Ihr Deppen: http://www.ustream.tv/cbsnews. Da kann man live zuschauen. Wie cool ist das denn?! Witzigerweise befindet sich Mission Control in Roswell, New Mexico :)
2012-10-14 - Mission Control CBS:
2012-10-14 - Capsule Outside View:
2012-10-14 - Baumgartner Inside:
Update 2012-10-14:
Rekord geschafft! Klasse!Update 2012-10-14:
Er steht jetzt draussen auf der Rampe!Update 2012-10-14:
Ah, bei N-TV kommt es auch liveUpdate 2012-10-14:
Druckausgleich, man hört es zischen und der Luftdruck geht langsam runter.Update 2012-10-14:
"We're getting serious now, Felix"Update 2012-10-14:
Pfft, die sind gründlich :)Update 2012-10-14:
Absprunghöhe erreicht, die gehen die Checkliste durch. Wow, voll aufregend!Krimskrams, Goggelmoggel und Muggefugg
Update 2012-10-24:
Wie LUpdate 2012-10-14:
LUpdate 2012-10-14:
Ein Bürger braucht keine rechtliche Grundlage dafür zu handeln. Nur staatliches Handeln bedarf einer ausdrücklichen rechtlichen Grundlage.Thomas Stadler
Update 2012-10-11:
LUpdate 2012-10-11:
Hm. Pocketbook wird vom Rechner nicht erkannt. OS zu alt zum Updaten. Micro-SD-Adapter-Stick hab ich nicht hier. Was tun? Karte ins Handy getan, eBooks auf den Server geladen, vom Handy aus runtergeladen, auf die Karte geschoben, Karte in den Reader und ab dafür. Warum einfach?Update 2012-10-11:
L<7 Bücher zum Preis von 12 Euro|https://www.humblebundle.com/>. SO verkauft man eBooks! Und nicht wie hierzulande mit Buchpreisbindung für 20-30 Euro pro Datei!Klick. Deal. Download. Sehr schön, so muß das..
Update 2012-10-11:
Weil die Klügeren ständig nachgeben, regieren die Dummen diese Welt!
Plugin Interface für Config::General
Meistens sind Bugreports eher lästig. Zum einen verursachen sie Arbeit und zum anderen erinnern sie den Entwickler mit zuverlässiger Regelmäßigkeit daran, dass niemand perfekt ist, auch man selbst nicht. Und dass die besten Unittests niemals alle Anwendungsfälle abdecken können.
Aktuell habe ich für das Perl Modul Config::General einen Bugreport, der eigentlich ein Featurerequest ist: rt.cpan.org#79694. Aber die Idee an sich finde ich überaus charmant: Plugins. Immer wieder kommen nämlich Leute daher, die gerne dieses Spezialverhalten brauchen oder jenes Spezialverhalten. Sofern ich das als sinnvoll erachte und es machbar ist, implementiere ich dann einen entsprechenden Parameter, der das Verhalten einschaltet und programmiere es in das Modul ein.
Das ist schön für den OP, aber es bläht mit der Zeit den Code auf. Tatsächlich bestehen sicher über 80% des Moduls nur aus solchen implementieren Feature-Requests. Entsprechend viele Parameter hat das Modul, die sich zu allem Unglück auch gerne mal in die Quere kommen, weshalb es weitere Parameter und Code gibt, um das zu verhindern oder umgehen zu können.
Man ahnt schon, wo das hinführen wird: ins Chaos.
Aber mit Plugins kann ich mir das "Problem" immer abgedrehterer Spezialwünsche elegant vom Hals halten. Der jenige kann sich dann sein Spezialverhalten einfach selber bauen. Womöglich kann ich auch sowas wie eine "Rezeptesammlung" der besten Plugins anlegen oder so.
Hier also mein Kommentar dazu im erwähnten Bugreport.
Well. Now I started to add some kind of plugin interface to the module. This way one could change the modules behavior in any way. This would solve your problem as well, I think.
Here's some first shot at it:
#!/usr/bin/perl use lib qw(blib/lib); use Config::General qw(ParseConfig); use Data::Dumper;sub ck { my($file, $base) = @_; print “open() tries $file … “; if($file =~ /blah/) { print “ignored\n”; return (0); } else { print “allowed\n”; return (1, @); } }
my %c = ParseConfig( -IncludeGlob => 1, -UseApacheInclude => 1, -ConfigFile => shift, -Plug => { pre_open => *ck } );
print Dumper(%c);
Output:
_open() tries cfg ... allowed _open() tries x/*.conf ... allowed _open() tries x/1.conf ... allowed _open() tries x/2.conf ... allowed _open() tries x/blah.conf ... ignored $VAR1 = { 'niemand' => '2', 'hallo' => '1' };However, I'll need some time to figure out which are the best places for hooks to add. But you'll get the picture.
error: 'TWSR' undeclared (first use in this function)
Momentan bin ich ja am überlegen, in meinen Terrarium Controller "Terraduino" eine Failsafe-Platine einzubauen. Dafür bin ich jetzt am experimentieren, wie man am Attiny85 (den hab ich da), I2C spricht. Ich hab mir also die "TWI/I2C library for Wiring & Arduino" zur Brust genommen, mir einen Attiny-Compatibility-Layer besorgt, den Kram zusammengehackt und dann mit dem avr-gcc versucht zu compilieren. Das kam dabei heraus:
env -P/usr/local/bin:/usr/bin - avr-gcc -g -mmcu=attiny85 \ -Wall -Wstrict-prototypes -Os -mcall-prologues -funsigned-char \ -funsigned-bitfields -fpack-struct -fshort-enums -Wundef -I. \ -I../at/tiny/cores/tiny -DARDUINO=101 \ -DF_CPU=16000000L -Os -c twi.c -o twi.o twi.c: In function 'twi_init': twi.c:80: error: 'TWSR' undeclared (first use in this function) twi.c:80: error: (Each undeclared identifier is reported only once twi.c:80: error: for each function it appears in.) twi.c:80: error: 'TWPS0' undeclared (first use in this function) twi.c:81: error: 'TWPS1' undeclared (first use in this function) twi.c:82: error: 'TWBR' undeclared (first use in this function) twi.c:90: error: 'TWCR' undeclared (first use in this function) twi.c:90: error: 'TWEN' undeclared (first use in this function) twi.c:90: error: 'TWIE' undeclared (first use in this function) twi.c:90: error: 'TWEA' undeclared (first use in this function) [..]
Tja. Und dann habe ich mich praktisch zu Tode gegoogelt. Verursacht wird das Ganze weil die entsprechenden Makros fehlen. Zunächst dachte ich, die fehlen, weil auf irgendeine magische Weise die Datei avr/iotn85.h nicht included wurde. Also hab ich sie included und bekam noch mehr komische Fehlermeldungen:
Attempt to include more than one file. Include instead of this file.
Natürlich hat das nichts gerbacht, zumal die avr/io.h bereits included war. Langer Rede, kurzer Sinn: letzlich habe ich herausgefunden, dass der Attiny85 halt keinen TWI Support hat. Somit sind die entsprechenden Macros nicht definiert und daher kamen die Fehler.
Zum Glück hat der Attiny85 aber USI Support eingebaut und dafür gibt es auch eine I2C Slave Library. Runtergeladen, Eingebunden und den avr-gcc damit gefüttert: Läuft.
Sehr schön :)
Ein scheiss Tag
Heute war einer dieser Tage. An sich nicht dramatisch aber in Summe eher wenig erbaulich.
In die Innenstadt gefahren.
Mehr als 10 Minuten zur Bank gelatscht.
War ein Typ vor mir am Schalter, der dort offenbar dabei war eine Bank zu gründen oder so.
Nach 20 Minuten Scheck eingelöst.
"Das hätten Sie auch draussen am Automaten machen können".
Vielen Dank.
Wieder zurück gelatscht.
In den Saturn gegangen wegen MP3 Player Gucken, weil iPod tot.
Es war nur Scheisse im Angebot.
Zum S-Bahnhof zurück getapert.
S-Bahn verpasst.
Endlich kam eine, die hielt aber am Ostbahnhof anstatt durchzufahren.
Also aussteigen und auf die nächste warten.
Falscher Bahnsteig.
Es fing an zu regnen.
Aus der S-Bahn gestiegen und 15 Minuten nach Hause geschwommen.
Türe geöffnet.
Es stank (und stinkt noch immer) nach Katzenklo. Weil die neue Mieterin etwa 20 Katzen beherbergt.
Oben in der Wohnung angekommen.
Es stinkt immer noch nach Katzenklo. IN meiner Wohnung.
Was für ein scheiss Tag!