Alo Sarv
lead developer

Donate via

Latest Builds

version 0.3
tar.gz tar.bz2
Boost 1.33.1 Headers
MLDonkey Downloads Import Module Development
Payment completed
Development in progress.
Developer's Diary

Sunday, March 20, 2005

Nearing the end...

Every time you think you see light at the end of the tunnel, as you near it, it always seems to fade away and move farther away. We'v been on this path for long time already ... really frustrating, I might add. But I guess that's the thing with entering the arena as newcomer - you need to be capable of doing everything the existing masters are capable of - masters that have been around for years already - and then also have things the existing masters aren't capable of.

In current context, we'r still playing catch-up game with emule ... but the end is near. Basically, we'r missing secident and kademlia ...

It seems the closer to the end you get, the slower things are moving. Things that used to take mere few hours now take days. Take SecIdent for example - normally it would'v taken cpl days to implement, but now I'v been sitting on it for two days already. Sure, there's progress, but cmon - 2 days for some simple feature? Guess the spring or whatever tiredness is kicking in again.

Besides progressing on the SecIdent stuff, I also managed to close a major memory leak - we were leaving around lots of zombie clients due to some internal variables not being reset properly in Client class. There still seems to be one more leak around, regarding SourceInfo member, which I hope to close also before 0.1 release.

Yes, you heard correctly ... I'm thinking 0.1 release soon. Thing is - if I don't release 0.1 soon, I probably never will. You know all those dead projects on sourceforge, which usually die either before, or shortly after 0.1 release? Wouldn't want hydranode become yet another one of those. Technically, I should'v moved to 0.1 release months ago, but no, I wouldn't listen (to myself), I still had to spend time rewriting some internal API's, and perfect things ... time well spent, no doubt, but at some point you just have to tell yourself "its good enough" and move on ...

Current 0.1 roadmap indicates that we need SecIdent, dynamic incoming data decompression and better usability in shell (cancel `download` command would be nice). Everything else just has to stay as is - we really need to move on.

Kademlia, Ares, Bittorrent and GUI are the 4 additional things I need to implement before 1.0, so 0.2, 0.4, 0.6 and 0.8 releases could be dedicated to each of those 4 features. Technically, Kad, Ares and BT should be rather easy to implement, considering we have a pretty good API implemented in core, but only time will tell what will really happen. On the GUI stuff, considering that I have to also learn QT in the process (experience with wx helps tho), it probably takes a while too. Whatever the case, 1.0 won't be out before june/july, simply because of QT4 release date, which we are bound to (can't release win32 version of GUI before QT4 due to licence restrictions, though it's unlikely the GUI would be finished before that anyway).

So anyway, back to sleep, regain some strength, and try to finish SecIdent tomorrow.

Madcat, ZzZz

Well, maybe you should just take a day off, read a good book or just lie in the sun (I just hope that you have some atm :)). That's what helps me to replenish my powers, this way it's more like 'yay, coding!' than 'omg another feature I've got to add'.
Concerning the new protocols, I think you should finish ed2k and then move onto the GUI protocol. That way it takes the least time for a usable (for the average user) hydranode version, which will attract more people to hydranode (+ more helpings hands, hopefully).
Sun? Nah, no sun here for another month or so ...

But you are right about the GUI stuff - it needs to be done before additional protocols. Only exception here is Kademlia - I think that one should be in as soon as possible, because it boosts ed2k performance significently.

Hi, I'm an average user and I've been watching your progress for some months now. Your project sounds great and I'm keen to play with your first release. Keep up the good work.
Please don't make 0.1 to complex to configure and get running, a makefile should be all that is needed right?
There will be static binaries available for each release, since compiling hydranode can be very timeconsuming process on low/mid-range processors.

What I'm more worried though is usability and learning curve - the built-in shell interface might not be very intuitive for first-time user, so more work needs to be done at that end.

don't worry, your shellinterface is great (compared to the mldonkey one), but please make a possibility to turn the automatic statistics off, these really get on my nerve :)
Will be done.
Post a Comment

<< Home

This page is powered by Blogger. Isn't yours?