History always repeats itself and sometimes that's good. Here's a second chance to be part of it: tmdtc.com

Friday 28 December 2007

Interactive Voice Response adventures

I already had a "funny" adventure with an IVR, where after goind 10 entries deep I got a ringing tone but no one answering.

Now, I got it again at the belgian Finance ministry. I called the number on their website and after choosing several options, I get a message "We wish you happy celebrations, you can contact us back from 4 january". I tried several path in the IVR and all end up with this message.

I wonder what's the cause of this config: the system that's not flexible enough, or the admin people who were too lazy?

Friday 21 December 2007

A Profoss ad published

IT Professional has published the first ad for the virtualisation event in january. You can see it included in their newsletter as displayed here.

I really took great care to make the schedule interesting, and I hope lots of people will agree with me of course! :-)

Remember that if you want to help promote Profoss, there's some material available. Let me know when you use it, and I'll include you in the promoters list.

bulkmail.pl to ease the sending of season's greetings

So I wanted to mail season's greetings to quite some people. And I needed a solution with very simple requirements:
  • recipients to be stored in a text file
  • message to be stored in a text file
  • To: set to the recipient's mail
With these requirements I couldn't use the solution based on ActiveMailer I used for MyOwnDB.
But I didn't find a solution. My currently prefered language being Ruby, I looked for a Ruby library, and found Bulkmail, but it didn't work out of the box, and error logs were not very informational. And I really didn't want to loose time on that....

As the title implies, I finally settled on using Perl's Mail::Bulkmail to write a small script with this usage:

bulkmail.pl -f '"mailer name" ' \
-m path/to/message.txt \
-r "/path/to/recipients_list.txt" \
-s "subject of mail"

You can put all the recipients in one text file, one recipient per line:
"John Doe"

You can download the script, but before running it, edit the config file to set the correct domain used for the SMTP HELO!

It had been years I haven't touched to Perl, and this wasn't enough to remind me of Perl's syntax and concepts. But this has only confirmed what I knew: Perl has an unbelievably high number of libraries and that can make it the tool to use for a lot of applications! Wondering if I shouldn't refresh my Perl :-)

Tuesday 11 December 2007

Open source virtualization group on LinkedIn

Tarry Singh has started a Group on LinkedIn for people interested in Open Source virtualisation. You can become a member here.

Tarry is a speaker at the next Profoss event, and even links to Profoss' website from the group. Cool!

Monday 10 December 2007

Quand la politique dépasse la fiction

D'abord la réalité: un politicien compare la RTBF à Radio Mille Collines.

Et voici la fiction:

Lequel est le plus déjanté? Je ne suis pas sûr que Pirette aurait pu placer les mots de Leterme dans son sketch vieux de 2 ans sans se faire lyncher médiatiquement.

Enfin, au moins, avec Pirette, on peut rire le coeur léger. Pas sûr que ça soit le cas avec Leterme....

La question qui reste: quand va-t-on cesser cette politique d'une niveau équivalent aux disputes dans les cours de récréation de maternelle? Chaque fois que j'en parle à des francophones ou des flamands, on trouve ça ridicule. Et pourtant ça continue.... Il faut dire que c'est plus facile de bomber le torse sur des questions futiles que de s'occuper des vrais problèmes de sociétés.

Monday 19 November 2007

You better know who to talk to before calling AMD UK

I just called AMD UK, on the number shown on their website, to know if they would have interest in the virtualisation event. But I got in the 5th dimension: when calling to that number, you reach the reception, and AMD has the policy to not transfer your call unless you give the exact name of the person you want to talk to. So saying "I want to talk to a sales representative" or "Let me talk to the marketing team to let them know about my event" is not going to lead you anywhere.

Makes me wanna sing: "Braziiil, lalalalalalalalaaaa...."

Friday 16 November 2007

You can't please everybody

Yesterday I found this article: Some Open-Source Advocates Find Google's Android a Sinister Threat. The reason? It's under the Apache license, which doesn't require changes to be shared, enabling closed, modified, incompatible versions.

It's funny to see you had the opposite criticism from IBM when Sun decided to put Java under the GPL.

Same thing with Qt: when it was released under the GPL, people complained it should have been under the LGPL.

Each critics in these 3 examples had good reasons, that's not the point. The point is: whatever the field and subject, do your best, but never, never expect to please everyone, and, even more important, be ready to be criticised and don't let this criticism drag you down!

Monday 12 November 2007

Android is now more than a press release

I have to admit I was disappointed by what went on last week. Even if I didn't believe all the hype around a GPhone, the announcement of the Open Handheld Alliance last week was really light as there was nothing concrete. This has changed now, as the Android SDK is available in an early version. The video below looks interesting, and there is quite some documentation available. There are even developers challenges organised with a total of 10 million dollars prices.

An interesting point is that the SDK contains webkit (although Google employs several Firefox developers) and an optimised JVM called Dalvik. This JVM requires byte-code to be optimised. This seems to be done with a simple command.

The prefered development tool is based on Eclipse, but other IDEs can also be used. Development tools are available for windows, Mac and Linux.

Could this be the phone platform I was looking for?

Tuesday 6 November 2007

Share your professional virtualisation experience!

We just issued a call for paper for the next Profoss event, on 22 and 23 january, about virtualisation.

If you have deployed a Free or Open Source virtualisation technology in a demanding professional environment, if you're a services company with extended expertise with virtualisation, or if you have developed a virtualisation software under an open source license, or built a product based on open source technology, and want to share your experience with your peers, please don't hesitate to submit your proposal as described below.

Talks should not be commercial shows, but bring interesting information for professional ICT users, based on real world experience.

All info and submission form at http://www.profoss.eu/events/january-2008-virtualisation/call-for-papers

Friday 2 November 2007

Rent-a-terminal disagreement: end of story

As I just received a mail from Rent-a-terminal threatening to take juridical steps against me if I removed their comment on my previous blog post, I think it's better to clarify some things, and definitively close the matter:

- I signed and agreed with their general conditions, and they are covered by these. If it wasn't the case, it is me who could have threatened of juridical actions
- I don't ask for compensation of lost revenue, even thought there have been some......
- I signed a contract wiht Rent-a-Terminal, they work with Taxipost (not De Post as I wrongly described). If something goes wrong, it's normal I complain to the company I signed a contract with., ie Rent-a-Terminal.
- I would have been a happy future customer of Rent-a-Terminal if they just hadn't invoiced the rent and transport costs. See this as a long-term investment

I also invite Rent-a-Terminal to comment further if they wish to further clarify things. I do not delete comments except for spams.

Wednesday 31 October 2007

rent-a-terminal and get very bad service

For Profoss I had signed a contract with Rent-a-Terminal (RAT below) to get a VISA + Mistercash terminal at the event. This terminal was supposed to be delivered the day before the event, on monday.

As this packet didn't arrive on monday, I called RAT and their attitude was: "we sent it, we don't care anymore. If you need more info, call the post office and request info for this packet number". I did this, but they couldn't give me more info about the delivery date.

At 17:55 I called them back, and they nearly called me dumb to loose time on the phone with them rather than phone De Post (where they didn't answer anymore at that time). I asked if they could change the delivery address to the event location, but the answer was that they don't deliver to events. Yeah, I see, but I was supposed to get it the day before....

Yesterday I got an invoice from them of 105.5 euros, of which 49 euros are VISA costs, and 4 € testing costs. On the renting cost (70€) and transport costs (35€), they give me a reduction of 50%. Great!

The best thing is that you need to pay a warranty of 1000€, and you get is back when you return the terminal. Well, this invoice amount has been deducted of the 1000€ and I got exactly 872,35€.

I really hate companies that don't take their responsabilities. Of course they are covered by their general conditions. This shouldn't prevent companies to act responsibly. I signed a contract with them, I received none of their service, how comes I still have to pay 50% of the service?

You may be sure I won't work with them anymore, and that I'll discourage people to work with them, starting with this blog post.

Friday 26 October 2007

100 posts on news.profoss.eu!

The first post was about Intel freeing their multicore dev tools, and the current last post, number 101, is about Linux' growth apprently slowing down in server deployments.

For those who don't know, News.Profoss.eu focuses on news for professional users of Free and Open Source software.

In the future, I'll look to broaden the content offered, and hope to be able to have content in multiple languages. If you have suggestions or want to translate posts in your native language, let me know!

Wednesday 24 October 2007

Photosmart C7280: my new printer

So, I finally found my new printer. I needed a device including fax, scanner, copier, printer, with wireless capabilities. It also neede to be working flawlessly with a Linux system, which explains why I chose an HP as they actively develop linux drivers for their devices. The Photosmart C7280 has it all, and some more too! It also prints double-sided, and it lets you print pics from several memory card formats. And did I say it has an Automatic Document Feeder?

I'm using a wifi network with WPA authentication, and the configuration of the printer to connect was so easy there's not a lot to say: choose the network to connect to from the list displayed on the printer screen, and then enter the passphrase.

I tried the access the IP of printer with a browser, and I got the good surprise to have access to a lot of functionalities: lots of settings, current ink levels and even the possibility to scan through the web interface.

The printer is only supported by very recent versions of hplip, so I had to install it manually. I tried hplip's binary installer, but it kept complaining libcupsys2 was missing, although the last version was well installed (this is on Ubuntu 7.04).
I finally installed it manually in /usr/local and running hp-setup as root configured the printer correctly in cups. The only problem encountered is that it didn't find the needed PPD file. This was corrected after installing Ubuntu's foomatic and hpijs packages.

From the first test, I'm happy of the printer. I've discovered it's possible to scan document to a memory card, without using a computer. This could be quite handy too.

Just one reserve: inks come in a strange, small, format. As the price of the printer is very reasonable (about 300€ only for all these features!), I hope the inks won't be too expensive, or that refills will be available.

I'm also wondering what OS is running in the printer, as a reasonably advance OS is needed to manage all these features, including simple photo manipulations, such as rotation and red eye corrections. It's really impressive how printers have evolved! There's no comparison between this printer and my previous, 9 years old, Officejet 1170C, which cost nearly 3 times at much at the time!

Tuesday 23 October 2007

Reminder: you can pipe through ssh

ssh is useful for more than just opening a terminal session to servers. You can also pipe standard input and output in and out of ssh. This is the command I used to compress a log file on the remote host and save it on my local disk, all in one command and not intermediate file saved on the remote host:

ssh host '( cd /usr/local/app/log/ && tar -jcvf - production.log)' > /tmp/app_production.log.tar.bz2

It is so useful I thought it was worth a reminder.

Monday 15 October 2007

For when you feel down

I found this excerpt from a Roosevelt speech on TechCrunch, and will always keep it close, for when I feel like my different projects don't go as I would like:

It is not the critic who counts; not the man who points out how the strong man stumbles, or where the doer of deeds could have done them better. The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood; who strives valiantly; who errs, who comes short again and again, because there is no effort without error and shortcoming; but who does actually strive to do the deeds; who knows great enthusiasms, the great devotions; who spends himself in a worthy cause; who at the best knows in the end the triumph of high achievement, and who at the worst, if he fails, at least fails while daring greatly, so that his place shall never be with those cold and timid souls who neither know victory nor defeat.

Thursday 11 October 2007

Asus' embedded linux needs windows to be updated

I was reding the Phoronix review of the ASUS P5E3 Deluxe motherboard, coming with an embedded linux you can choose to run from a boot prompt. This is quite cool, and Asus plans to publish updated of the embedded system. It will sadly require to run Windows on the hard disk to update it.

When will this stop? This is a wide-spread situation: plenty of Linux server applications require windows to run the client or administration tools.

Tuesday 9 October 2007

Profoss day 1: what happened?

Well, as usual in such organisations, little problems bugged the organisator :-)

Terrible traffic jams delayed the first speaker, who arrived 10 minutes late. Then my laptop he was using for his presentation went into powersafe and refused to send its display to the beamer. It was solved by a restart of X, and by me, replaced by Christophe, moving the mouse cursor every minute....

What's really sad is that the panel discussion I was looking forward to lost the most interesting participants: both Cisco and Avaya pulled out due to their speaker being sick..... It's a real pitty, but Dominique Deckmyn, of our partner IT Professionals, accepted to play the devil's advocate ad bring the arguments of closed source vendors. Thanks Dominique!

About the good news: feedback I got from participants and sponsors was positive, but we'll have to wait tomorrow when we'll distribute the feedback forms to all participants to really get an idea of the global opinion of participants.

Kevin P. Fleming also arrived without problems, and already participates in the panel discussion mentioned above.

All in all a good day!

Looking forward to tomorrow already, and hoping this is the start of a successful series of event!

Monday 1 October 2007

Set your price for Radiohead's new album

Radiohead is unsigned, meaning they don't have a contract with a big music publishing multinational. This gives them a lot of freedom, to the point that it is now possible to pre-order their album, In Rainbows, in download form for.... the price that you set yourself!

Wishing them a lot of success as such experiments could shake the big record labels a bit more, or encourage others to follow Radiohead's track. Some will get it for a very low price, but putting trust in the buyers certainly will make that lots of people will actually be honest, and pay a reasonable price.

Thursday 27 September 2007

zattoo: legal online TV

Last week-end I was sick. And being sick is the only situation in which I would like to watch TV. As I haven't had TV for years, I was left in the sofa, waiting for the time to pass, and hoping I get better fast.

Well, next time I'm sick there's hope I won't have to sleep all day: Zattoo is available in Belgium and it seems really good. The good surprise is that they have a package for Debian and Ubuntu!!

Things are not perfect: the line-up is still limited (no VRT eg), and the channels available can have some problems (I don't have sound for la une, and I have a lot of frames skipped for la deux).

It seems this is all legal too: they get broadcast licenses in the countries they are available. I've read their business plan is to earn money by advertising displayed when you zap from one channel to another, during the time take to fill the buffer with the new channel's stream.

Wednesday 26 September 2007

My first travel

Here it is.

I didn't even know the .travel TLD existed. I've somehow missed its creation, and it's very strange to see an URL of which you don't know the extension :-)

Wednesday 19 September 2007

Google Reader already out of Beta!

After nearly 2 years of beta, Google Reader is now out of beta. That's fast compared to Google News, which stayed in Beta for more than 3 years......

Tuesday 11 September 2007

Kevin P. Fleming interviewed on Profoss

Kevin P. Fleming is co-maintainer of Asterisk, and will speak at the "Asterisk and Voip" event on 9&10 october in Brussels. His interview is now available, along with the other speakers' interviews.

Monday 10 September 2007

Management from the towers

Last year, InBev decided to move production of the beer Hoegaarden from ... Hoegaarden to Jupille. There were lots of protests, and I remember an interview on the radio where someone mentioned it would be impossible to produce the same beer, if only because the water used in Jupille had different characteristics. I immediately thought about this interview when I heard that production went back to Hoegaarden.

Although I have no insight on the way the initial decision was taken, I can imagine consultants looking at numbers, sure they know everything, although they don't even know how beer is brewed, and seeing clearly there is money spilled in inefficiencies. I can imagine managers following the consultants, not listening to people on the field or specialists in beer brewing.

In the end, the initial decision taken to limit cost, has cost lots of money: moving the production to the new site, but keeping some production on the old site powered by temporary workers (but with the impossibility to produce a lot because part of the installations where moved to the new site...), getting loads of production back due to bad quality, leading to a shortage, etc, etc

A good example of what happens when you loose touch with reality. Something that happens way too often with managers and consultants alike.....

Sunday 9 September 2007

Javascript on the server

Although there's not much news of Phobos recently, Helma is being developed further, with the 1.6 release available since on month ago.
If you're fluent in Javascript, it could be useful. Both are based on the Java platform. If you want to experiment with Javascript on the Java platform, you can do it with Rhino, included in Java 6.

Single Page Applications: something to watch?

I discovered Trimpath Junction today, a MVC javascript bringing RubyOnRails' convention over configuration to javascript. But what I really found interesting, is their Next Action demo available as a Single Page Application. The concept: with Firefox, you save the page on your disc, and you have the application on your disk. After you edited or added data, you save the page again and the application with the updated data is saved.

Of course, there are downsides. Isn't one of the advantages of web applications their centralisation and their remote availability? Anyway, I find it an interesting concept. Interesting enough to keep an eye on to see how it evolves.

Thursday 6 September 2007

First batch of speakers interview

Today we've published the first interviews of the Profoss Asterisk speakers. Get an idea of who you can meet on 9&10 october by reading the interviews of Raphaël Libois, Vincent Luba and Jordi Nelissen.

Each have a different profile (proprietary systems vendor, developer, company co-founder) and offer their view on Asterisk.

Wednesday 5 September 2007

xmonad: a tiling window manager in Haskell

With the Ion 3 stable release around the corner, alpha geeks could be tempted to look for another alternative. Well, there is xmonad written in Haskell, and its development seems quite active, with lots of extensions available, even though it's only at its 0.3 release!

For those interested, xmonad's name comes from the concept of monads in functional programming languages, of which you can find a definition on wikipedia.

Although I'm an Ion 3 addict, I'll keep an eye on it. Along
with StumpWM, written in Common Lisp, even if its development doesn't seem as dynamic as xmonad's.

Friday 31 August 2007

Unbelievable amount of spam

I was surprised that Blogger didn't implement trackbacks. I think to remember to have read somewhere that trackback spam was one of the reasons. And if my experience with News.Profoss is an indication, it might be a valid reason.

Yesterday I had deleted all Trackback spam on News.Profoss, and I was surprised this morning to see, in the admin interface, 12 pages with about 50 trackback spams each. That's 600 spam in one day! On a recent and quite modest website.

I better understand now the decision to not implement Trackbacks. There are spam detection techniques for trackbacks, and I installed it on News.Profoss, but this still takes resources and bandwidth. On a platform hosting thousands of blogs, it makes for a significant resource spilling.

Even some other blogging services like Wordpress implement and propose Trackback spam filtering, I can understand the decision to not propose it due to the spam problem. I'm not even sure I'll leave trackbacks available on News.Profoss. I'm not sure it's worth the pain.

Thursday 30 August 2007

Free Software graphics problems illustrated

With Adobe's John Loiacono made some noise with its post title "Innovate or Integrate?". And although publishing Adobe products under an open source license wouldn't prevent them to integrate and innovate, I understand that Free Software graphics solutions cost more when used intensively than the license cost of Adobe's products.

I've already blogged about my problems with FOSS graphics solutions, and here's another illustration. I need to provide a 120x120px logo of the Profoss. As I have material in SVG, I generated a bitmap from Inkscape. This is a png of good quality:

The problem is that I have to send a GIF. Krita in Ubuntu doesn't support GIF. ImageMagick(s convert command is easy to use:

convert profoss-logo-120.png profoss-logo-120.gif

and gives this result:

Disappointing isn't it? The URL is nearly unreadable, and doesn't look professional.

After looking at IMageMagick's documentation, I tried
convert -background White -flatten -channel A -threshold 65% logo-profoss-120x120.png logo-profoss-120x120.gif
gives a better result:

Let's try with the Gimp (indexed to default settings):
Still not good...

I tried to specify the color index in Gimp, to change the color of the text, to no avail. Finally I asked to a friend to generated a gif, and he used Adobe's ImageReady, and here's the result:

It's much better, isn't it? And I specifically asked if settings had to be adapted to get this result. The answer: "Just an export".

The funny thing is that he wanted to use Fireworks to do the export, but it refused to start (for an unknown reason, it worked fine before!) , so he had to fall back on ImageReady. Clearly shows even proprietary graphics software has its quirks :-)

Monday 27 August 2007

Free and legal music streaming

Deezer lets you listen on your PC, for free. It is streamed like with last.fm, but you can actually choose which song you want to listen to. Deezer has reached an agreement with the SACEM, the musicians association in France. Some problems are looming though....

Deezer is the new iteration of blogmuzik.net, which was claused earlier by... the SACEM. It seems to be launched by Free, the french ISP.

The interface is well done, but the site is quite slow at the moment. Worth a try I think.

Wednesday 22 August 2007

Add Yahoo! Pipes to your toolbox!

TodayI added a feed to the Profoss website. The problem is that the Profoss website contains news in different sections: one for each event, and a general news section about the Profoss itself. And I didn't want to publish multiple feeds: each time a new event is announced, people would have to subscribe to an additional feed; and each time an event is over, people would have to unsubscribe as no more news would be published.

I could have developed this on the server, but it was much easier to generate a feed for each of the news sections, and combine them with Yahoo! Pipes. I had never used Yahoo! Pipes before, but this didn't prevent me of getting a working (and definitive) solution in less than 10 minutes! I created 3 feed reader elements (one for the Asterisk event, one for the virtualisation event, and one for the general news) I then added an union node that combines all input in one output, and connected the feed readers' outputs to the input of this node. As I wanted the items to be ordered by publishing date, I added a sorting node, and specified the publishing date as sorting criteria. After connecting the output of the sorting node to the pipe's output, I was done. Running the piped provides a feed combining all items of the individual feeds ordered by publishig date.

Using the url of the rss output of the pipe with FeedBurner gives the final feed to subscribe to.

This is a very simple example of Yahoo! Pipes use, but the fact that it took me only 10 minutes to get the definitive solution working is a good indication it is very intuitive and effective. It is well thought out, eg you can see the output generated by each node of the graph, which helps you debugging your pipes. There's also good documentation, and the great variety of nodes available (there's a location extractor node for example!) should help you manipulate feeds in a lot of situations.

Using it made me think of CloverETL, also a great tool, but for data(base) migration and manipulation.

Sunday 19 August 2007

Building a webcam recorder with VLC, Ion and Ruby

I promised to build a system to let people leave video messages at a party. The requirements were:
  • people have to see the stream while it is recorded, so they're sure they are in the video
  • the system has to be extremely simple to use, possibly requiring the use of only one keyboard keypress to start and stop recording
  • the recorded video have a maximum length, so that we avoid recording when someone forgot to stop the recording after his/her message
After looking at several options, including GStreamer and Ffmpeg, there was no easy solution in sight. And then I took a look at Videolan, also known as VLC. Here's how I got to a working solution. Note however this is a quick hack.

With VLC's WxWidgets interface, it is easy to open a video4linux device (I'm using QuickCam Express II): File > Open Capture Device:

In this dialog, check that the correct device is opened (I open /dev/video0), and things should work as expected: when you click "OK", you see the images captured by your webcam.

In the dialog above, you might have seen the checkbox "Stream/Save". Checking it enables to save the stream from your webcam to a file, the spec of this file being set in the dialog appearing when you click on the Settings Button:

From top to bottom:
  1. Check "Play locally", as this shows the stream captured by the webcam on your screen
  2. check "File", as this will save the stream coming from the webcam into the filename you enter in the textbox.
  3. choose MP4 as "Encapsulated Method". You need to choose this carefully as not all encapsulation methods accept all format. Check the VLC streaming features page for more info.
  4. According to the Encapsulation Method you have chosen, choose the right video and audio codec. For MP4 it's respectively mp4v and mpga. If you only want to dump the video, only the video checkbox has to be ticked.
Clicking ok in each dialog will show you the stream in VLC's window, and dump it in the file you entered in the configuration dialog.

Now that it is working with the interface, the next step is to get it working from the command line. As you may have noticed, when you set options in the configuration dialogs above, a text field is filled accordingly. For example, when setting the configuration in the "Save/Stream" options dialog, the top text field has its value set to

which contain all configuration option set in the dialog.

And in the "Open Capture Device", the bottom text field has its value set to

v4l:// :v4l-vdev="/dev/video0" :v4l-adev="/dev/dsp" :v4l-norm=3 :v4l-frequency=-1

These configuration strings can be used on the command line when launching vlc. Each v4l corresponds to a long option passed to vlc. :v4l-vdev="/dev/video0" becomes --v4l-vdev /dev/video0 on the command line.

We end up with this command:

The next step is to start and stop the recording from a script. This is possible thanks to the RC interface offered by vlc. the RC interface, launched by passing the option -I RC to vlc, gives you a command prompt to control VLC. With the option "--rc-host localhost:4444", this command interface is even reachable by telnet on port 4444.

Typing help at the command prompt will give all commands available, but we'll only need:
  • add v4l:// to start the recording. It opens the v4l device passed in the options of the command line, and outputs the stream to what we configured on the command line as well: the file and the screen.
  • stop to end the recording
Before building an interface on this, I had to correct a little problem: the image displayed was way too dark. In the vlc interface, in Settings > Extended GUI , you have access to Image adjustments, where you can activate and set Hue, Contrast, Brightness, Saturation and Gamma correction. These can be set and activated from the command line with the corresponding option. Here are the options I had to use:

--contrast 1.9 --brightness 1.7 --saturation 2.3

I've had problem sometimes for the options to be taken into account. Going through the vlc extended GUI and enabling the image adjustements usually fixed it.

Building a little interface on this is quite straight-forward. I used Ruby and Tk. The GUI is made of.... 1 button used to start and stop the recording. It is triggered by pressing the "Enter" key. The control GUI also shows how long, in seconds, the person still has before reaching the maximum lenght of the recording.

The script starts VLC with the RC interface and the telnet connections accepted on port 4444. All commands are passed to VLC through the telnet connection. VLC always stores the dumped stream in the same location, and at the end of the recording session, the script moves it over to a definitive location, with a unique name based on the timestamp.

The problem with this setup in a "standard" window manager, is that recording starts, a window is opened to display the image coming in from the camera. this window covers the command unterface, which makes it impossible for the user to simply press on Enter to stop the recording, and the focus is on the vlc output window.

For Ion 3 users, there a quick solution here: split your workspace in two, and make the GUI appear in the left frame, and the vlc output window in the right. What's even cooler is that when the vlc output window is opened when the user starts the recording, the focus stays with the command GUI.

I will assume that you have installed Ion3, and copied the standard config files to ~/.ion3, as explained in the Ion3 documentation.

I created a new user, for which I set Ion3 as the window manager to use. I'm using kdm, so I edit .xsession with this content

exec /usr/local/ion3/bin/ion3

and at log in I choose the "Default" window manager.

When you log in, you get a workspace with one frame. To split it vertically, use Meta+K S. You can bind the key you want to Meta in ~/.ion3/cfg_ion.lua. I set it to Meta4, which is the Windows key on my laptop.

To identify the frame, it is necessary to give them a name. Focus the frame you want to rename, and press Meta+F3. This brings up the Lua code interpreter. Type the following command:


and press "Enter". You are then promted for a name. Give the name app to the left frame, and vlc to the right one.
Ion automatically saves your workspaces when you log out. As the app is running under a specific user, this will not have to be repeated.

To make a window appear in a specific frame is achieved with the defwinprop directive in the user configuration of Ion. To identify the properties of a window, the xprop command can be used, or, even better when using the Ion WM, use the frame context menu (left click on the title bar of the frame, of Meta+M) to get the "Window Info":

Once you have this info, you can configure the GUI window to appear in the left frame.

The class of the command GUI is Webcamrecorder.rb, the instance is webcamrecorder.rb. It should go in the app frame, and focus should go to this window. This gives this configuration line in cfg_user.lua:

The problem with the vlc output window is that it has no class nor instance property set... Only the title is set to "VLC XVideo ouput", which is an identification information not supported by defwinprop.... I set this in the cfg_user.lua file, so that all windows except the control GUI appear in the right frame:

defwinprop { target = "vlc"}

I set the last line of the cfg_user.lua file to

exec('xterm -e /usr/local/bin/webcamrecorder.rb')

to start the webcamrecorder immediately when logging in.

Note that I first wanted to place this in the .xsession file, but it didn't work. Apparently, webcamrecorder.rb has to be started from a terminal, or it won't work. I suspect this is due to the RC interface we request from vlc.

Once you have your solution up, you can clean your Ion bindings to avoid users switching frames, creating workspaces or starting terminals. I also cleaned up cfg_ion.lua to limit the number of modules loaded. I end up with these config files: cfg_ion.lua, cfg_ionws.lua, cfg_menu.lua, cfg_query.lua. Together with the webcamrecorder.rb script, it's all what makes up this quick hack.

Update: Richard took the script and made a GTK version. He posted it in the comments, together with information on how he's using v4l2. I put the script in a file webcamrecordergtk.rb that you can download. Thanks Richard!

Ordering photo prints online on GNU/Linux

I wanted to order photo prints from an online shop. The problem is that those shops upload tools are not very effective under Linux. Although they propose native tools under Windows and sometimes Mac, the solution for Linux users is a simple HTML form. When you have to upload 100+ photos, it's not very convenient..... Sometimes you get a useless, buggy, Java applet.

The best solution I've found is to use Picasa for Linux. After you import your pics in Picasa, you click order prints, choose your prefered shop, and your photos are automatically transfered. You then just have to confirm your order and you're done!

Although running on Wine, and as such not a native application, Picasa for Linux is quite good. It won't replace Digikam for me, but it's a good complement. A negative thing is that when you import pictures, it copies it under its own directory ~/.picasa, which can become a waste of storage space.

Although my prefered option would be to use a Firefox extension to upload photos to the print shop, like Yahoo Photos had, this Picasa will do well enough.

Friday 17 August 2007

Two-pass algorithm illustrated

Here's joke illustrating what a two-pass algorithm is, as found in "The Art of Computer Programming":

Old lady on the bus
: "Young boy, can you tell me how to get off at Pasadena Street?"
Young boy: "Just watch me, and get off two stops before I do"

Wednesday 15 August 2007

Virtualisation is hot

As VMWare's IPO showed, virutalisation is a very hot subject. And Free and Open Source based solutions are showing good progress too. This should ensure an event you won't want to miss will take place in Brussels in january :-)

Tuesday 14 August 2007

Continued learning online

Google Code for Educators has some course material as well as videos, with for example Ajax tutorials and Distributed Systems tutorials. This last contains an Introduction to MapReduce, which I already mentioned on this blog.

With YUI's Theater and Google's Googleplex videos, there's really interesting online material to keep you up to date, and learn new stuff.

Back to MapReduce: I again (second time only though ;-) read the paper "Why functional programming matters", and it motivates me, again, to learn a functional language, and Lisp to begin with. I've read Practical Common Lisp during last year's holydays, and the watch Googleplex' Lisp video, but never got to practice. And it won't be for this year though, as I first want to progress in my reading of "The Art of Computer Programming".

It's so frustrating: there's so much I want to learn! It's hard to make a choice. The good thing though is that I'm not bored :-)

Toolinux à propos du Profoss

Toolinux a publié un article sur le Profoss, qualifié d'"événement de taille dédié à la voix sur IP". Il mentionne également le site d'actualité news.profoss.eu lancé il y a peu.

Monday 13 August 2007

Exim on EC2

When you configure your Exim on an EC2 server, remember to set the hostname or it'll use Amazon's internal, private unresolvable name. Here's what I did for the Profoss newsletter server configuration in exim.conf:

primary_hostname = newsletter.profoss.eu

This resolves this kind of error messages in you mainlog file:

Recipient address rejected: No IP address found for HELO/EHLO domU-12-31-35-00-39-A1.z-2.compute-1.internal - try again later

Saturday 11 August 2007

Discovering the Symbian platform

As I'm considering the purchase of a Symbian powered phone, I took a look at the platform, and there are some good stuff: Ruby and Ogg are available.

Other things are not that good though, especially C++ development tools that are only available for windows, although they're based on Eclipse......

Better than image embedded in word attached to mail

Sow I was looking further at Symbian development tools, and discovered their Open C lib, which "provide a Linux-like, vendor-neutral C-programming interface to core functions on S60 devices". And I wanted to watch their screen cast, and was surprised it was proposed as a downloadable.... .exe file!


Firefox: the next step

Remember the time when many doubted Firefox would reach 10% market share? It's been some time now that Firefox reached and surpassed this level, and the evolution of the project makes it look to the next step: improve rentention rates (this is the percentage of people downloading Firefox actually continuing to use it). This retention rate is suprising low, at about 25%, and a new plan is in the works to improve this retention rate.

I was actually surprised at this low retention rate. I thought people downloading Firefox were already convinced that it was needed to switch, which would have given a higher retention rate than 25%(only 1 in 4!).

I haven't seen documentation about their methodology to get this 25% figure. It would be an interesting read.

Thursday 9 August 2007

[SOLVED] PDA Keyboard too small

You do have a hard time trying to hit the right key on this damn small keyboard of your PDA? Here's, the solution: get your thumbs whittled. After aesthetic surgery, is this the start of geek surgery?

Open source VoIP doubts?

Reading the article entitled "Doubts persist about open source IP telephony", I'm happy to see that the first edition of Profoss is targetting the exact questions mentioned in this article: long term costs, comparison with proprietary solutions, security, deployments in professional environments plus integration with your current system, Free or propietary.

If you're looking for objective information about professional use of Asterisk, I hope to see you on 9&10 october in Brussels! I'm sure you won't regret your participation!

Vim in Eclipse

If you're a vim addict, but need to use Eclipse, you can have your way thanks to the Vim Plugin for Eclipse.

It is based Vim tip #1031 to embed vim in your Java applications, thanks to the Java terminal emulation JTA.

Netbeans alsa has an external editor module, but things don't seem to be active, with no Vim 7 support.

Update: on the other hand, Netbeans has nbvi, a Netbeans module to integrate a java vi/vim clone. And this module is actively supported, with a release early july (2007).

Wednesday 8 August 2007

Freespire 2.0 released with proprietary bits

So, Freespire 2.0 has been released by Linspire. It is based on Ubuntu and "Enhances the Popular Ubuntu Distribution by Adding Proprietary Software, Drivers and Codecs". This will be shocking some people, but is seen by others as very positive.

I've personally never used Linspire nor Freespire, but their focus on non geek PC users and their support of several FOSS initiatives are certainly positive. Is that erased by their inclusion of proprietary software in their distribution? Is it that negative if this inclusion of proprietary software enables its distribution to be used by non geek users, and this way introduce Free and Open Source software to new users?

There could be another way: educating people. But is it really possible to educate people so that they understand the importance of open formats and free software? To the point that they refuse to use proprietary software? I'm afraid not. A lot, and mean a lot, of people really don't care and don't understand the importance of Free Software and open formats.

These days, even some Free Software diehards are communicating with MSN for practical matters. Maybe we should accept Freespire's proprietary bits that give Linux users a legal way to watch proprietary video formats for practical matters? At least Freespire's users will be watching these videos legally, not like some Linux users using windows codec dlls with (e.g.) mplayer.

Anyway, whatever the way we get there, I hope we can get rid of those proprietary formats. When you see how things have progressed with the Open Document Format, and the existing alternatives like Ogg Vorbis and Theora, there's still hope. In the mean time, some people will compromise but hopefully they will not forget the importance of open formats and Free Software.

Linux mobile phone from Motorola

Motorola is shipping a linux powered phone.... in the US. The RAZR2 V8 is apparently focused on multimedia capabilities. No trace of it on the Motorola Belgium website.

Monday 6 August 2007

L'arroseur arrosé

Un journaliste travaillant "undercover" espérait pouvoir enregistrer des présentations compromettante durant une réunion de spécialiste de la sécurité informatique. Mal lui en a pris: les organisateur ayant été mis au courant, ils ont organisé un nouveau jeu: "Spot the undercover journalist". Résultat: une horde de participant poursuivant la journaliste pour la filmer et la photographier.

Friday 3 August 2007

Google mashup editor in limited beta

The Google Mashup Editor is available in limited beta. Reading the introduction (I'm not part of the beta :-)), it seems to be a cool product which facilitates development of mashups with eg easy access to feeds and their structure and Google's infrastructures such as maps. It's all built with GWT. I'm curious to test it, and see how this compares with yahoo's pipes

Yahoo gets behind Hadoop

Hadoop, the (recent) Apache implementation of MapReduce in Java, has seen its developer Doug Cutting hired by Yahoo.

The funny thing is that the first time I read about MapReduce was in a (very interesting) paper titled "Why functional programming matters" which was written in .... 1984!

It's not always the lates technology that brings advancement: good use of existing technology can do a lot too. Ever heard of Ajax? ;-)

Amazon Flexible Payment Beta available

Amazon has started a limited beta of Flexible Payment System that they describe as "the first payments service designed from the ground up specifically for developers".

Features look interesting, and try to make micropayments possible (I remember having read somewhere that Amazon was seen as the only company that would be able to make micropayments viable due to the amount of credit card transfers they do monthly): for example you can aggregate several micro-payments in one transaction.

It also features easy billing of Amazon shoppers as the same credential can be used to log in Amazon and pay with FPS. FPS also uses the data stored in the shopper's account, so no need to ask credit card numbers.

It seems flexibility is key to their offer. Apparently it would be possible to build a market place where you aren't the paid entity. Their example is proposing mp3 downloads where the payment goes to the artist, with the market place getting a share of the transaction.

But what about the fees? Well, here's the situation for credit cards: For a payment higher than 10$, Amazon charge 2.9% + 0.30$, same as Paypal. But Paypal lowers the fee for transaction higher than 3000$. And Amazon changes the fee for payments lower than 10$:
5.0% + $0.05. Google checkout is free for the moment, but will charge 2%+0.20$ from january 2008.
When you compare these solutions, it becomes clear that Amazon is looking to grab market share in smaller payments: the smaller the payment, the cheaper they are compared to their competitors, the biggest the payment, le least competitive they are (except if you qualify for their volume discounts, which give you the same rates as Paypal):

Amount Amazon fee
Paypal fee
Google fee
1 0,1 0,33 0,22
5 0,3 0,45 0,3
11 0,62 0,62 0,42
3001 87,33 75,33 60,22

Now for the bad news: this beta service is reserved to developers having a credit card issued by an american bank.... As Google Checkout is only available to US and UK vendors, this leaves me with only Paypal as a viable solution. It's working fine for me in Myowndb and Profoss, but although the documentation is complete, using their development sandbox is time consuming, the forum is not great (just did a search that ended with a "ODBC Drivers error '80040e31'") and the lack of competition made them leave useful features unimplemented (eg reactivate a subscription that expired).

FPS is the latest Amazon webservice released. They started in 2002 and have built business on each of them, as Jeff describes.

Remote Device Acces by Nokia

Nokia now proposes a free service to Forum Nokia members: you can test your application on different Nokia devices through the internet, and it's called Remote Device Access.

The E90 isn't there yet, but it could be a good way to see how it behaves with different applications available before I possibly get one. The cool thing is that it's not an emulator, as the name implies. What you see is the display of a real device connected to Nokia's server. You reserve the device you want to test for a timeslot, and you can play with it. Here's a blog post describing how it works.

Thursday 2 August 2007

Extjs 1.1 released!

Wow, first Yui 2.3.0 and now Extjs 1.1!

This is the first stable released not mandating the use of a third party library (YUI, prototype or jquery) which gives a way to have a smaller size for the base library to download in a web page to use Ext's power.

The HTML editor is also a big addition to the library.

I've already been using 1.1 beta in production, and it was really solid and enabled me to build really advanced features very rapidly. And as I'm not a designer, Extjs' good look by default is really a strong point for me (Have you seen the layouts possibilities available?).

If you haven't made your choice on which Ajax library to use, take a look at Extjs! You get flexible data sources (reading XML, JSON) that you can use in different widgets (grid, combo box), layout facilities to build desktop-like apps, localisation, inline editing grids and lots of other widgets, a fast CSS selector, great documentation, active community to ask and reply to questions, user developed extensions, etc....

Congrats to Jack Slocum and all contributors for this excellent release. Looking forward to what Ext 2.0 will bring us!

YUI 2.3.0 released

Version 2.3.0 of Yahoo's User Interface library is available. Although I'm using Extjs, which can now be used independently from any other library, I still keep an eye on this library, and it's good to see it progress and add interesting stuff (rich text editor, a loader utility, an image loader, unit testing, etc). The documentation available with YUI is impressive and lets developers get up to speed rapidly.

Tuesday 31 July 2007

Mr Wong's logo insulting?

I can't believe this. Since when is using a caricatural face in an insult to this face's race? Are people so stupid? Or is this a marketing trick from Mr Wong to get attention? I find it surprising that the company so swiftly changes its logo....

If a company ever use a big person with a pack of french fries, I don't think I would feel insulted....

Gimp interface overhaul

It seems Gimp's interface will be changed to a single window interface. I for one won't be against that change. I'm using Ion because I can't organise windows that clutter my desktop, so you can imagine how much I like Gimp's multiple windows: on for the image, one for the tools, one for the layers, one for the currunt tool's settings, etc, etc.

Sunday 29 July 2007

Krita: the reconciliation

After the miserable failure of yesterday, I was again forced to use graphics design software and I launched the gimp. It was a very bad start as when I added text to the image I was editing, the text appeared garbled. I went over to Krita. There it worked fine, houray! And I even found the brush! It's hidden behind the broken line icon, the first of the list and tooltiped "Draw freehand".

When I wanted to save it as gif however, it failed. It seems Krita in Ubuntu doesn't have support for GIFs because Krita uses graphicsmagick, a fork of imagemagick that won't be included in Ubuntu anytime soon. Free software is great, but it has its problems too... The solution was to use ImageMacgick's convert. Did you know it's as easy as
convert image.gif image.png


As Krita doesn't have support for animated GIFs, I've had to use the gimp anyway. And I again encountered a problem with the gimp: to be able to specify the delay between 2 frames of the animated GIF, I had first to do a "save as". A simple save didn't do the trick.

Anyway, now the Profoss finally has usable banners. Take a look!

Saturday 28 July 2007

The Gimp and Krita

Warning: this can be considered as a rant, needed needed to get back to a normal state after 2 frustrating hours of work with the gimp and krita

I tried to make a banner for the Profoss, and failed miserably. I had a template, and just had to fill in the text. But the background was a bit too dark on the right, and I wanted to make it lighter but gradually, as the left was fine. It was impossible (for me) to find a way to do that (there was a pattern in the background), so I went for a plain background.

The main reason of the failure is I'm not a designer. It's not that I'm a bad designer, I'm worse than that. But combined with unintuitive tools as The Gimp and Krita, it ended up in a catastrophe. Here are examples:

  • in Gimp, I ended up not being able to draw with the brush anymore. I had done it 10 minutes earlier, but when I tried again I couldn't. I searched if there was a selection, if I was on a bad layer, but I couldn't change its behaviour to doing what I wanted: draw with the brush
  • in Krita I didn't even find the brush tool!
  • I didn't find the option to add text with the border of the letters in another color than the body of the letter. This is easy to do with Inkscape eg, but doesn't seem possible with those tools.

Is is me that is not understanding the tools, or is such a frustrating experience normal with these tools for a beginner like me? Whatever the reason, I don't even want to know it: I won't try the experience again anytime soon....

Friday 27 July 2007

Hotel contract signed

Today I went to the Thon Hotel and signed the contract for the organisation of the Profoss on 9&10 october. Until now it was booked but needed a contract signed and a confirmation (by means of a payment :-)

It's good that I went to the hotel with Gerry, who will organise the network and visitors badges, as we discovered that the hall where I wanted to organise the coffee breaks and sponsor stands was in fact not exclusive to our event.... By luck, we can get a room beside the one we had, but by paying a supplement of course.

It's also a mess with the exclusivity contracts those hotels have with network providers.... It's 20€ per day for wifi for one computer! An event having 100 visitors for 2 days wanting to propose WIFI to it's participants would have to pay 4000€! It's really not reasonable. I hope to get a better deal (though other hotels in Brussels refused to even talk about group price).

Thursday 26 July 2007

I need a PDA phone!

I'm currently looking to get a new phone with PDA functionalities. I used a Palm Zire to keep all my contacts, but it's getting old and nearly unusable. My first choice would be to get a device running on Free Sofware, but none of these devices are broadly available (I know the Green phone by Trolltec and the Neo 1973 runiing on OpenMoko, but these are currently more developers products), and they don't cover my needs from what I've read.

I could buy a PocketPC device and put Familiar on it, but I'm not motivated disappointing experience with the Zaurus. I never found a satisfying solution for synchronisation with my desktop. And I'm confused over which environment I should run. GPE? I prefered Opie but I'm waiting for Opie 2 since I don't remember when. Qtopia? Or should I go for Angström? And I still wouldn't have the phone capabilities.

This leaves me with devices running on proprietary software. There's HTC, which I was told by a friend are good, and you can possibly install linux on it, but it can be tricky as HTC doesn't support the Free Software development for their platform (even no tech specs are shared).

And then there's Nokia. I first saw the N95, which is really a beautiful product: good phone functionality and ergonomy thanks to S60 platform (that's a pre-requisite...), 5MP camera, GPS, WIFI, etc. However I heard negative feedback about the integration of all these functions, and I'm not convinced I could keep my addressbook up to date by entering all data on a GSM keyboard (type 2 times on 3 for the lettre e...). For the price of the N95, I'd prefer something really good :-)

And this morning I discovered the E90. Even more expensive, but with really interesting features: a big 800 pixel wide screen and a keyboard become available when you open it. There's still a 3.2MP camera, GPS, Wifi, etc. I thinks this is really what I need, but I'll wait a bit to find the right promo and read further reviews, although those I read are really positive.

Wednesday 25 July 2007

The start, le commencement, het begin

Here it is, my first personal generally available blog post. Although I've already postes on other blogs, those where very specific (like MyownDB's blog, or aimed at close family.

You can expect posts in english, mais aussi en français, in het nederlands, y tal vez en español!

Subjects of my posts will mainly be my projects, which means you should get news about the Profoss here :-)