Steini lässt die Kuh fliegen
und für alle denen noch nicht klar ist, das es gar keine schlechte idee ist mal auf dem 23. Chaos Computer Club Kongress im Berlin Convention Center vorbeizuschauen hab ich hier mal als kleines Appetithäppchen ein video gepostet, in dem steini die kuh fliegen lässt. Die kuh in diesem fall ist eine kommerzielle Drone die er im saal schön über den köpfen kreisen lässt und von dort live den videofeed des so überwachten publikums auf dem screen projeziert. Das Ding ist schlecht zu sehen, ich weiss, aber das ist ja auch sinn der sache. Das ist nur einer von vielen Vortraegen und workshops an diesen drei tagen. Ein bisschen kann man ihm ja auch auf den tonspur lauschen. Fazit ist, dass in ca. 1 Jahr die community eine selbstbausatz für ca. < 1000 Euro auf die Strasse bringen kann. Schöne vorstellung auch wie 5 Dieter Bohlen dronen gegen 15 paparazzi dronen kämpfen, oder was mann z.B. machen kann wenn man ein quasi unsichtbares flugrät hat, das vollkommen selbständig(GPS geleitet, keine fernsteuerung notwendig, Google EArth koordinaten reichen :-) mit 20-30KM/h ca. 500Gramm fuer eine halbe Stunde durch die gegen fliegt.
Welcome to The Venice Project
i got my the-venice-project beta test player download credentials on saturday. That is two days ago and i didn’t even found time to check it out. When i can believe what the papers say, i’m part of a 6000 people strong elite! Yeah! I feel so special now. Just in case you don’t now, The Venice Project
combines the best things about television with the social power of the internet
and is the next project of the guys which brought to us KaZaa and Skype before. So it might be worth checking out. And i really would like to do so, but it is windows only, argh. so i have to wait for being in the office on tuesday. today on monday, what an irony, i had no chance, because i spend the day in zagreb to visit the strategic IPTV project of two major german companies in the croation market. What can i say about the trip? Nothing i’ve seen will be part of the future of television/iptiv, that is for sure. Nothing worth talking about, only a nice picture i made, which i post tomorrow when i found the cam cable.
And The Venice Project? “So please don’t give the application to anybody else..”, ok, not quite unusual, but “…, or even show it to them”???
What the hell they are thinking? Do they expect me to become part of their secret armee just by signing up for a beta? And “We hope you enjoy helping us create the future of TV”, yeah, sure you do.
“It’s very early days for us, and we want to make sure that the right people see the right software, at the right time”
I can’t decide. Do they want to make fun of me? Is this honest marketing? Do they now want me to keep the player secret or just want to force the opposite? I will check the player on tuesday and let you know, and who knows? Maybe i even post my very personalized beta venice player beta test account here. And that would be my very first cliffhanger now.
cheers
It’s always the people, not the institution
Whenever you have worked with large institution or company, employed or in a project, you will know the pattern. Sooner or later you hit the wall, a barrier beyond getting your project moving becomes close to impossible, a kind of e=mc2 acceleration limit for managment. You might started in good hope for having your special project being started differently than all the failing others before. You maybe had a great kick-off and the backing from top-ranking executives, a clear goal and an common understanding on the strategic importance. And then, sooner or later, progress gets slower and slower. There are a lots of reasons for it and even in the smallest group, project management is far from being a self-burner. Project managment seems to be closer to an black art and I don’t want to talk about it here, way to boring(read the book, it works). I only want to comment this single argument you will always hear:
This company can’t do any better, it is in the companies genes, it is slow because it is so big and the processes are the reason for the project is only dragging along.
Wrong! Utterly wrong! This are just excuses from the people who are in charge and actually step back from taking the personal risk to make accountable, risky decisions on their own. Oh, yeah, they always claim they would if they could. No! They are in their positions at that company for a reason, choosing the comfortable cooperate payments structure with fixed bonus payments and a lifetime security plan over the entrepreneurial approach. Don’t get me wrong here, this is perfectly ok. For them. But please, don’t bother me with claiming it is not their fault. Please say something, like:
ok, i think you got the right idea here, but overall it is risky and it could fail and when i approve it and it fails it will be bad for my career. And when it succeeds it will just give me a just a minor boost beyond the raise i will get anyhow just for beeing here and keeping things calm and not getting my boss in trouble.
yes, it is in the company genes, YOU ARE the company genes. Blame yourself for not getting off the ground. Start mutating and evolve or keep going and go bust. farewell to extinction, and
have fun
ps.: if you are a telco interested in communities and social software go check out: webjam,
“Myspace
plus netvibes on steroids” Pete
Cashmore, Mashable
ruby in multimedia: a state of affairs
ruby is the shiny new jewel for attacking all and any programming task. But it a has a dirty secret. No, i’m not talking performance here. I don’t usally care for performance, it hardly doesn’t matter with fast machines and low volume traffic. I’m talking about multimedia and thereby i basically mean gfx. A while ago i already checked for OpenGL bindings and in the past i played with rmovie, scruffy, gruffy and RMagick. RMagick is kind of mature and it got the job done. Still, I don’t get to like RMagick though, that might be to the fact i did(and learned) coding on SGI machines for way to long(sigh), more than 10 years. There i got used to/hooked on the basic idea of integrated multimedia environments. SGI was way ahead at their times and it was a pleasure to join them on their ride, while it lasted(most of the time, but that is another story, for the history books maybe -> serious fun with sirus(tm) boards).
Nowerdays i make a living out of everything centered around internet related lifestyle oriented marketing driven projects, huh. Despite this prosaic description that is ok, actually it is great. I have a lot of really great cool people around me, working with them is a pleasure. But still, sometimes i got reminded to some old projects of mine and actually have the task of undusting some stuff for beeing revitalized in a museal context and than i go and check for updates of the above mentions mumedia bindings. And that is no fun. Way to slow progress there. I would love dropping all old-school technology(c++, Java) and just use ruby for taming the the beast (beast in this case are all modern gfx cards). Processing is java and can’t win my heart. My current hope now is G3DRuby. And here is the deal: I will try my very best to help establishing solid multimedia bindings for ruby. For Q3 2007 i have an exhibition scheduled, until then i will look for places in opensource multimedia ruby land which might need a helping hand. Requests welcomed.
simpler comandline application context/configs
A couple of days ago i stumbled upon the SimpleConsole. Really a nice piece of software, pretty close to what i was pondering about already for some time. And just two weeks before i did put up (try: gem install app-ctx) my own take on that. App-ctx shares some of the design decisions of SimpleConsole like
- ruby classes as controllers
- automatic method invokation from arguments
- parameter parsing and conversion
still though, app-ctx has some differences, and tries to be just a little simpler(and add some more). You might use classes, similar to SimpleConsole:
class Simple
def add context
a, b = context.argv
puts "#{a} + #{b} = #{a + b}"
end
end
App::run :class => Simple
Argument type conversions are build in, no declarations:
"foo
bar" becomes a string, 23 a int and 3.14 a Float. Same with options: –int=23 –text=”some text here” –float=3.14.But I did not want to force this inheritance thing upon the humble user so she can use her own baseclasses(SimpleConsole::Controller maybe?). Next, i wanted to support blocks, just being more ruby like:
class Simple
# $ ./examples/run_with_block.rb add 1 5
# 1 + 5 = 6
# $
def add a, b
puts "#{a} + #{b} = #{a + b}"
end
# $ ./examples/run_with_block.rb sub 1 5
# 1 - 5 = 6
# $
def sub a, b
puts "#{a} - #{b} = #{a - b}"
end
end
App::run do |context|
puts context
Simple.new.send(context.argv.shift, *context.argv)
end
The general setup of the comand line i wanted to stay good old unix style: <comand> [options] [arguments...] only. I don’t like these: <comand> --foo --bar=1 action --help where there are more options after the last argument.
And than there is the problem with resonable default values. You need configuration and app-ctx defines some clear rules on where to put them. On default, app-ctx pulls a YAML default values file from next to where your application script lives, e.g:
$ ~/bin/my-script.rb
preloads its default values from
~/bin/my-script.yml
Values from the command line then will simply overload setting from your config file and your app can’t distinguish from where the values are actually coming. Thisway you can extract default values from your code an put them in a separate file.
But if you prefer to keep things together instead, you may also set defaults directly from the code:
class Simple
def initialize(context)
context.set_default_values({
:desc => "programatically setting default values",
:port => 1234,
})
end
def show context
puts context
end
end
App::run :class => Simple
app-ctx tries calling a c’tor of your class with a context argument and you can set your default values there. Last but not least, you can define from where to load the config file with a command line option:
~/bin/my-script --config=/tmp/bogus-setup-here show
will not load the
~/bin/my-script.rb but the one you supplied.Thats most of the stuff i could recall right now and if you like it, go ahead use it. In case you do, i might feel challenged to put up some concise online documentation and a little tutorial. ’till then
have fun
whatsyourcommand
function whatsyourcommand ()
{
history | awk '{print $2}' | sort | uniq -c | sort -n | tail -23
}
this little bash function pulls some stats from your history:
3 tar
4 %1
4 %2
4 nmap
5 rake
5 vi
6 irb
7 ./t_graph.rb
7 open
8 dwhatsnew
8 geheim
9 ifconfig
11 mysql
14 pgoogle
17 svn
17 telnet
18 syncdir
20 ping
29 cd
36 j
43 ./t_instant-instance-config.rb
70 ls
98 fg
“…,then they fight you,
…then you win” (Mohandas Gandhi).
Steve Ballmer got smart on OpenSource. What does it tell us? Did we won? Or do we better get scared now?
Open source is not a new technology area. It was a new business model. Open source never goes away as a business model or competitor. We have learned how to compete with open source, and we will compete with it for the rest of time
and even more. Not only did he got the idea of OpenSource, he also understood this software thing:
iPod is a software thing. You just happen to collect the money on the hardware.
challenging times indeed, have a lut of fun cheers
I am annoyed
My fault i did not read the documentation(where to find it?), and i’m still grateful for the dojo toolkit, but please, from a testScripting ant target i definitly do not expect 1) to install its configuration/extension/script files in my home directory(unasked!) and then 2) quitting with BUILD FAILED and complain about the author of the Ant build tool. This is rude.
I can agree with Alex Russels dislike for Java and Ant, but still, i would be perfectly pissed when i would be the the author of ant and Alex just complains about “horrendous design decisions by the authors”. Maybe true, but please, at least a hint about what caused the problem should be given.
dluesebrink dl-mbook trunk/buildscripts: ant testScripting
Buildfile: build.xml
-check-config:
-fix-config: [copy] Copying 5 files to /Users/dluesebrink/.ant/lib
[echo] +——————————————————–+ [echo] | Due to some horrendous design decisions by the authors | [echo] | of Ant, it has been necessary to install some jar | [echo] | files to your ~/.ant/ directory. Given the nature of | [echo] | the problem, it will be necessary for you to re-run | [echo] | your build command. | [echo] | | [echo] | The Dojo team apologies for this inconvenience. | [echo] | | [echo] | The system will now exit. | [echo] +——————————————————–+
BUILD FAILED /Users/dluesebrink/idmedia/Project-3/resources/dojo/trunk/buildscripts/build.xml:226: Sorry, please re-run your build command, it should work now
Total time: 1 second back my pardon, but i doubt it. I wrote a lot of Ant files in my life, and never there was an unavoidable need to install .jar files in the home directory of the calling user. this is just ONE option. for me it looks more like beeing to lazy to bother, but i’m to lazy to track it down.