A browser that adheres to the unix philosophy

One of my projects that am currently working is in Digital Media Space. When i came into this project it was built on top of Microsoft Windows. We had more than 500+ LCD screen at various location powered by Windows machine. The place where these machines run dosen't have great power support and we had frequent crashes. 

Inorder to get things under control i started porting these application to Linux. When i started porting i realized that its not easy to port because the application are built on top of VC++. It was a easier decision to write it from scratch in Python.  

The architecture layer includes bare bone X86 hardware, X11, a Video Player to play different media content and a browser to display dynamic content. 

Since we did not use any X11 window manager running vlcplayer with geometry was good enough to get media content ready to play. Second challenge was dynamic content using a browser. Most of the browser that was available were bloated. Hence we really had to break our head to get the right browser. 

One of the great Unix pundit "Eric Raymond" in his book write about beauty of Unix where each module just does one thing at a time, at the same time do it well. More here

So we needed a browser which does HTML rendering well and nothing more ( not to worry about window border, integration with other services in desktop, etc ... ) A browser that adheres to the unix philosophy and also at the same time lightweight which support X11 geometry, javascript, html, css, etc was the need of the hour.

Few days me and simran banged our head to find one. Open source has never short of great tools. We did find one in few days. There are quiet a few of them like dillo, uzbl-core, kazehakase (interesting name right !!!), etc.

Out of all the browsers dillo seems is really really fast but has no javascript engine. kazehakase is brilliantly engineered but take a long time to understand the xml format for configuration. 

uzbl-core on the other hand is just perfect for gtk based desktop and follows the standard linux philosophy. Very minimal interface. No unnecessary interface elements and its controllable through a FIFO and with external scripts (must if you want to script it)

Read more about uzbl here Some screen shots here