Main

September 28, 2007

TinyPC talk in Japan

SIGCOMM 2007 workshop and main conference sessions were broadcasted live from Japan and are also archived here. Below is my TinyPC talk, you can also have a look at the paper and the presentation slides.

October 10, 2006

Moteiv on Discovery Channel

Joe Polastre, CEO of Moteiv (one of the co-authors of my recent MAC paper) recently got featured on Discovery Channel and Science Channel. Below is a YouTube embedded video of the Discovery Channel broadcast.

The story was later picked up by CNN as well. You can read the Moteiv news entry about these broadcasts here.

August 25, 2006

Protothreads and ACM SenSys 2006

I was a visiting researcher at SICS (Sweden) last fall where I had an amazing time working with Thiemo Voigt and Adam Dunkels. Adam's work on Protothreads recently got accepted at ACM SenSys 2006 and I am listed as a co-author on the paper.

If you don't know what SenSys is then you can try reading the Wikipedia article on SenSys. In short SenSys is the SIGCOMM of sensor networks, so I am more than glad about the Protothreads work being accepted at SenSys. :-)

acm-logo-small.png
"Threads vs. Event-Driven Programming" is an age-old debate in computer systems research. The late Roger Needham (Cambridge) tried to settle this debate with the "duality argument" in 1979 (essentially saying that threads and events are inter-convertible and are the same thing), but the Threads vs. Events remained a hot debatable topic e.g. Ousterhout (creator of the Tcl scripting language) made strong arguments against Threads in his "Why Threads Are A Bad Idea" invited talk at 1996 USENIX Technical Conference. An example of arguments in favour of Threads could be Eric Brewer's (UC Berkeley) "Why Events Are A Bad Idea" HotOS IX (2003) paper.

Protothreads are extremely lightweight stackless threads designed for severely memory constrained systems. One way to think about Protothreads is that they are a proof-of-concept of the 1979 Roger Needham "duality" argument. They are "something in-between" threads and event-driven programming. Maintaining state-machines makes event driven programming hard, but threads take too much memory to make them feasible on memory-constrained systems (e.g. sensor networks). Protothreads reduce/eliminate the need for maintaining explicit state-machines (the main argument against event-driven programming) while keeping the memory overhead very low (the main argument against threads). Protothreads (unlike traditional threads) are stack-less and their memory overhead is very small (only two bytes per protothread).

For more details, you can read the Protothreads SenSys 2006 paper ..... here

You can download and use the protothreads library ... here

Protothreads are already gaining some popularity, Google lists some 13,300 results for Protothreads; here are a few interesting links:

October 09, 2005

new webpage

... so EuroSys extended their deadline which gave me some free time and i finally updated my website from that to this. This website is hosted at my machine at SICS for now.

I got interested in upgrading to Moveable Type after meeting joe polastre in germany last month and viewing his webpage. So the design of this webpage is sort-of inspired by joe's website untill I get some more free time to do some creative thinking on ideas for a website (or maybe I could use the StyleCatcher plugin to give a different look without any effort but I dont really like the other available styles for now).

Speaking of StyleCatcher, it is buggy and amongst other things I needed a newer version of LWP to make it work. You could get an RPM for that here or If you do not have access to install LWP on your server then here is some discussion that might help.

and speaking of buggy things, a certain very important person needed to be reminded again and again about a certain very important task and I decided to use some script for sending that person automatic emails but apparently the available php scripts for doing that e.g. emrem are not exactly written as well as i might have wanted them to be - the way emrem sends these reminder emails results in the email 'appearing' from whatever address and name you specific in the configuration but the return path could end up being root@localhost.localdomain or the message ID could end up as something like 200510131700.j9DH011S017797@localhost.localdomain. Any sophisticated spam filter SHOULD categorize such emails as spam.

I was about to go for using Gunther for upgrading the website but then the website would look like this and no blog support.

I had a blog before as well but I am not exactly a big fan of subscribing to those blog websites, setting up a blog on your machine isnt rocket-science. So why subscribe when you can have complete control of things yourself?