hits
Streaming WebM (VP8) One Day Later
Yesterday, I left the office and headed back home a couple of hours after Google announced the VP8 liberation (GMT+2). At that moment I was trying to forecast the whole lot of changes that the WebM project would bring to the web. The VP8 release under a BSD license with patent rights grant is a huge step forward towards an open and modern WWW. That solves one of the biggest problems the web was facing nowadays. Actually, before I get any further, I'd like to thank Google for freeing VP8 and creating the WebM project.
It was today when I though about starting to test WebM. It looks good and it does sound really promising. However, I wanted to give it a try in order to see how good it actually is. It might be because I've been working so many years with Open Source software, but the first thing I did was to clone their code repository and check the source code. Everything looked alright at that front, so I went ahead to the next stage: use the VP8 code.
Wouldn't it be pretty cool to support WebM streaming over HTTP?
After getting my hands dirty for a couple of hours I came up with a Cherokee Web Server with WebM streaming capabilities. It's very basic stuff, but it does work alright. Basically it can read WebM encoded files and stream them, taking care of performing an initial content boost (so browser cache is filled up right away) and an optional streaming bitrate increase factor.
For my test I used Chromium 6.0.411.0 (47774), Opera 10.54 (21874) and, of course, Cherokee Web Server 1.0.1. For the record, this is the trivial HTML code I used to embed WebM encoded video in a HTML5 test page:
<html> <body> <video controls="controls"> <source src="BBC.webm" type='video/webm; codecs="vorbis,vp8"'> <p><a href="BBC.webm">Download the video</a>.</p> </video> </body> </html>
Check out the result!
First of all.. It was trivial to configure, wasn't it?! Cherokee is always configured in the same way, the days when you had to open a terminal, become root and edit a text file by hand are long gone. Hurray!!
Now, what does Cherokee do to stream the WebM video? The first thing it does internally is to figure out the bitrate of the main data stream (basically, audio + video). In this case, it was not as simple as I was expecting because of a couple of issues with libvpx-vp8 (related to VPX_CODEC_INCAPABLE). Anyway, once Cherokee figures a few details about the video, it can start streaming the content.
The following graph shows how the content is delivered by the server. At the beginning it pushes as much content as possible for a very short period of time. The intention is to get the client's browser cache filled up with information so the video can be played right away. After a couple of seconds Cherokee decreases the throughput so it matches the real video bitrate. There is an additional parameter that allows to define an increment constant though. In this case, Cherokee was configured to deliver an additional 10% over the bare minimum required rate.
And, that's it. This is how WebM streaming is performed!
hits
Cherokee Summit Big Success
This is the first chance I have to write something since the Cherokee Summit finished a couple of days ago. I have been trying to make up my mind about what to write regarding the event, and I must say I have failed to do so. I have too many things to talk about. There were too many interesting conversations, too many people giving talks about successful Cherokee deployments, discussions about the Cherokee 2.0 roadmap and our upcoming marketing efforts. There were those awesome community open sessions where we discussed about every single subject the Cherokee community proposed (with streaming and bridges to IRC and Twitter). I could talk for hours about all those things.
However, do you know what impressed me the most? Energy. The amazing amount of energy that the attendees brought to the conference. It was both totally amazing and exhausting! It isn't easy to gather together a group of high-profile IT people (developers, data-center gurus, specialists for government IT departments, entrepreneurs, etc), but when you do, and they are motivated about a project, the outcome is really unbelievable.
The Cherokee Summit has been a huge success. However, I must confess I could not even imagine it'd be such an amazing experience. Seriously. It surpassed my highest expectations in almost every way.
So now, after having enjoyed such a great experience, it's time to focus again. We have a whole lot of things to do, features to implement, bugs to fix.. and, Community to make. At the end of the day, that's the most important thing: the Community around the project.
We are currently uploading some pictures of the event. Hopefully we'll get the videos of all the talks in the website soon. Most likely it'll take us a few days though.
hits
Collaboration Summit & Cherokee Summit
It's been a little over two weeks since the Linux Foundation Collaboration Summit took place. As always, it was a pretty interesting event well worth attending.
The content of the summit was enlightening in so many ways. First because of the quality of the speakers. Not all the events have so many recognizable and highly involved speakers as the Collaboration Summit, and that is a huge plus for the event. Secondly, because of the propitious environment to meet people. I got to meet a whole of lot of people during the three days of the conference, and of course to greet many old friends.
So, having said that, it is time to look to the future and more specially the upcoming events and challenges. The first one will be the long-awaited Cherokee Summit 2010. I have no words to describe how excited I'm about this event. It will be the first users and developers conference around the Cherokee Project ever!
So far, there are around 80 registered attendees, so it will be a fairly modest conference. However, it represents an important milestone for the Cherokee project: we will be releasing Cherokee 1.0, and most importantly, it will mobilize a crowd of experts on High Performance and Scalable web around Cherokee. In fact, it will take advantage of the conjuncture, and we have scheduled an open session to discuss the Cherokee 2.0 roadmap.
Cherokee Summit will also be the perfect opportunity to engage conversation about the local communities. So far the Polish, German, Chinese and Hispanic Cherokee communities have popped up. However, there is no coordination between them and the main project, and that's something I think we ought to improve from now on. That will be the topic of the open session of the second day.
All in all, it will have plenty of interesting attendees, talks, chats, giveaways, etc. :-) There are still a few empty spaces, so do not hesitate to register if you'd like to attend!
hits
Linux Foundation Summit
The 4th Annual Linux Foundation Collaboration Summit will take place next week in San Francisco, CA.

I attended the previous five or six editions of the Summit, and I'm not willing to miss this edition either (Yeah, in the first two occasions OSDL hadn't joined forces with the Free Standards Group yet).
All the Linux Foundation events are usually great, although the Collaboration Summit is specially interesting. Check out its agenda and you'll realize what I'm talking about. It looks fantastic.
I'm quite excited about the event. It's the perfect place to hang out with old friends, to meet a lot of interesting people and to rub shoulders with other FLOSS players.
My plans for the Summit include to join the “High Performance Computing” and “Cloud Computing” workgroups. Depending on time constraints, I might also join the “Linux Standard Base” workgroup too.
By the way, I'll extend my staying in San Francisco a few extra days for some work related meetings. Drop me a line if you are around the Bay area and you'd like to go for a drink or something. :-)
hits
The European Space Agency runs Cherokee
Just learned through David Galan's LinkedIn profile that the European Space Agency (ESA) has been running Cherokee on some of their projects for a while now.
I must admit I'm delighted to see how the adoption of Cherokee is growing steadily. It's always encouraging to see how people and organizations migrate their Web Servers, Reverse Proxies and Video Streamers to Cherokee.
I'm aware of other well known organizations and companies deploying Cherokee at this moment. This, by no mean, is meant to suggest that ESA using Cherokee is more important.. but, you have to admit that such flashy subject is well worth a post. :-)
hits
Next destination The Gambia
It's been a while since the last time I post something unrelated to my work or the projects I'm working on. Of course, that doesn't mean I've been doing nothing but working. In fact, a whole lot of things have happened in the past few months.
The thing I personally enjoyed the most was an amazing, one month long trip to Southeast Asia. I must admit, I didn't know much about the region, and I was very pleasantly surprised about what a great place to visit it turned out to be.
Thailand
Laos
Cambodia
Vietnam
Singapore
Indonesia
Actually, we have been eager to make a new trip since we came back in October. We wanted it to be something different. Since our previous destination was Asia, and Europe and America was not appealing enough at this moment, we chose Africa as the next destination. More specifically, we planed a week long trip to The Gambia.
We'll be leaving to Banjul within a few hours. I am pretty excited about it! :-)
What does that mean? Firstly, I'll be off for a week. I won't commit any code to Cherokee, CTK or any of the projects I'm involved with. Ohhh.. and I'll forget about 'bellow zero degree Celsius' temperatures, it's quite warm over there. Hurray!! :-)
hits
Cherokee Summit brochure
Since the Cherokee Summit 2010 was announced, there's been a couple of friends who have asked me for an announcement brochure/mail they could circulate in their organizations.
Here is the small PDF file (~100KB) we have written for the occasion so you guys can let your colleagues know about the summit. It includes both English and Spanish versions.
Do not hesitate to send it to any coworker or friend who would be interested in attending a High Performance and Scalable Web event.
hits
Cherokee Summit 2010
It's been a while since people started asking us about holding a conference fully dedicated to the Cherokee project. As you can suppose, putting together a conference needs an immense amount of work, so it took us a while to get the ball rolling.
However, now we are ready to announce the details "Cherokee Summit 2010". It will be held on the 7th and 8th of May, in Madrid, Spain. This will tie in with the 1.0 release of Cherokee, and so we will be also having a 1.0 release party on Saturday May 8th!
All the details including a schedule of speakers will be made available at the conference's web site: http://summit.cherokee-project.com/
Besides the Cherokee related subjects, the summit will also be covering other High Performance and Scalable Web topics, so our fellow developers from projects such as Ruby on Rails, Django, PHP or Apache can also join the discussion.
It is important to notice that we have managed to make Cherokee Summit free for all the attendees, which looks pretty good compared to the usual ~1000€ fee for similar conferences.
On the downside, the conference will be limited to around 80 people, so if you’d like to rub shoulders with a a bunch of heavy-duty web infrastructure developers, be sure to register as soon as possible.
We look forward to seeing those that can make it.
It is going to rock!
Update (Mon Jan 11 16:00:14): Unixwars on the Cherokee Summit.
hits
Configuring Cherokee
If you are reading this post, odds are you have previously read about Cherokee. I've written many times about how easy and straightforward the Cherokee configuration is, and how simple it is to configure other third party web applications on Cherokee.
In this occasion, I'd like to draw your attention to a few videos on how to configure some of the most widespread web applications and frameworks on Cherokee:
Most of the videos are less than 2 minutes long - including the opening and the ending. That should give you an idea on how plain and simple the configuration process is.
This first batch covers: PHP (MP4, OGV), Django with Flup (MP4, OGV), Django with uWSGI (MP4, OGV), Ruby on Rails (MP4, OGV), Wordpress (MP4, OGV), Video Streaming (MP4, OGV), and a General Introduction (MP4, OGV).
hits
Cherokee has got Unicode support
I'm just writing this short post to show you guys this screenshot:
It's the upcoming Cherokee 0.99.33 version, featuring its new Unicode support. Isn't it cool?
If you didn't find it pretty interesting, odds are your mother tongue doesn't use non-ASCII characters. In that case, believe me, it is extremely desirable for a program to support the Universal Character Set. Basically it allows Cherokee to be deployed everywhere, independently of the local language or alphabet. So, let's just say that this new Unicode support removes some adoption barriers, which is always a great thing.
If everything goes as expected the new version will be released within the next few days. Meanwhile, you can always download the trunk snapshot and give it a try.











