Tuesday, June 21, 2005

Malaria, Truce and libnetprog (What the heck!!!)

i'm feeling a bit under the weather...

Its like i have this running bet with Malaria, and every year, it tries to get me down at least once... there were times when i used to be gotten down... but these days... we sort of lock into a stale mate.

I keep going to work... being slightly affected with a nagging headache, and probably teary eyes that hurt. On my part.. i increase the intensity of my exercises, take more Vitamin C, drink lots of water... and work harder during the day than before.

This truce of convenience lasts for about 3 or 4 days, and eventually i'm back to normal. This is waaaaay much better than being enBEDDED for about 1wk. #:-s

Anyways... i'm in the middle of one now... started yesterday, and i still worked till 10.30pm yesterday, on one of those small and interesting utility projects.

In finishing that project, i had to dig up a library i had started work on a while back, and clean it up, extend it, and use it. I call it 'libnetprog', and was my way of 'pythonizing' or 'c-izing' .NET network programming. I TOTALLY HATE STREAMS!!! why Java, and .NET decide to NOT encapsulate if i will never know. Anyways..., libnetprog.NSTcpClient() [No Streams TcpClient()] is an encapsulation of System.Net.Sockets.TcpClient() but adds Send() and Recv() that allows more natural communication by abstracting the NetworkStream away from the user. That and the conversion that goes on with System.Text.Encoding.ASCII

libnetprog.SMTPClient() is another cool class. And it has a very usefull static function SendMail(), that is inspired by PHP's mail() function.

Anyways... lots of UnitTests in that library, and its looking good and stable. Its a 'driven-by-need' library, which i'm only extending as the need arises... i guess i should put this up on my website download area.

Ahh.... that reminds me... i've stumbled across a very nice way of layering GUI applications... its just a natural extension of Refactoring and Bottoms Up programming (Aggressive Unix Programming), applied to GUI's, and so far, all the stuff i'm building i'm building like that.

I *think* they're very stable (since i can trivially UnitTest the GUI using this method), and i end up having reusable components too... i'll blog about that latter... let me get the entire picture very clear :)

btw, good to be back.


Post a Comment

<< Home