For quite sometime now, I have not been keeping by blogs updated. Here, my
work blog and the blog at work.
And when I do update things here, it is just to drop a line or push some link ...
I was tempted to call it the 007 effect, but considering it started earlier - I cant use that tag :-P
Essentially it is a combination of work becoming really interesting (and so a bit too hectic), and some really interesting projects I am doing in my free time.
Cant discuss much about work - except to say that we are trying out some really interesting stuff on the server :-)
In my freetime, I am currently doing two things primarily ... a webserver and a chess engine (yet again :-P).
I was at home this december during Christmas for two weeks, and by the second week I was bored ... The webserver was a result of that: spent the second week hacking at my sisters laptop to write the initial
NIO based code.
It was essentially an expiriment to see how efficient I can make a webserver in java and to rethink on async IO ... whether I can reuse any ideas for our server at the end of it (yep, there are things I am reusing btw :-) ).
Ever since I joined Sun, I have been associated with HTTP in one way or the other - and so it is not surprising that this expiriment pretty soon became a slightly more interesting effort.
Though there are about 30 points still left in my todo list before I can claim complete conformence with 2616, in most cases the things left out are just optional features.
The initial idea was just to serve static pages, no dynamic content - that was easy :and no, I am not using mmap'ing stuff, etc to make the actual file IO performent - I am interested in the server performance w.r.t network IO & overall design, not performance of a specific spi impl.
Then I dabbled with making it support the
servlet spec : but the 'heavy duty' nature of the spec, coupled with the non scalable approach w.r.t thread usage made me ditch that idea - no offence to the designers of that spec, but the design principals there just do not match mine : I just dont want to encourage the pattern on one thread blocking until the client code returns ! I was not writing a general purpose server - a specialised server with performance & throughput in mind for people who want to leverage that :-)
Next was to use it as a webdav server to try
this idea out (well what is mentioned by Jean-Louis Seguineau in the comments on how to use webdav actually).
The webdav idea still stands ... but in the meantime, I modelled an async IO based api for content developers (nope, no one else has used this server to date) who want to use the server essentially as an http infrastructure - and surprisingly, I did not have too much trouble porting an old servlet I had written into this new one.
The best part was, it was not as disruptive as I believed it would be : though I guess I am used to thinking this way (async notifications, event handlers, etc) which is not the case for most people I guess .....
Also, extended this to support and enable
comet apps to use the server as infrastructure - though I dont have any apps which use this yet.
Once both of these were done, suddenly I have a server which is designed to support and scales really well for both long poll & comet apps ! (the usual paradigms for async notifications to client in ajax apps).
Should be interesting to see how it actually performs with a real world app (I do plan to port something I wrote for work as an expiriment - though that would remain confidential code).
I am yet to decide what I will do with this server, but for now it remains private with access to none :-)
The chess engine was started ... god knows why, I just love writing one :-P
The main expiriments this time are in evaluation, qsearch and move ordering. I am also using move ordering & static position analysis data to try out some pruning ideas ... so far it seems to be doing quite well. But as usual, unless I actually dig into
Fine's book I guess it will not play real good chess - leaf evals suffer from lack of sufficient positional knownledge ... I have owned this book for almost 4 years now and yet to go through more than about 20 pages !
4 Comments:
Ah, not feeling *that* bad about missing it now :D
Me2
Radhika Suman
Why is it that presentations by Googlers inevitably end up sounding like recruiting campaigns. Either they must have some serious Kool Aid there or....
Also, was at the last NY talk and the Q&A there blew too; half the room left, the other half just talked over it.
@compu
yep, the ol' google name does not do it anymore to pull candidates imo ... there are people who actively shoot down a google interview offer 'cos of their snobbish attitude.
So they are sponsoring events/talks/code camps to attract recruits.
What is sad is the people they use to pitch for these drives.
Post a Comment
<< Home