I've spent most of the week reading papers about techniques for distributed backups. It seems to exist lots of theory about it, but no free software application in active development.
I only have found existing code for DIBS (Distributed Internet Backup System), but last commit seems to date back from 2009. I'll study its code to learn about the problem I'm trying to solve.
After this little research done I've come to conclusion that the program I'm writting can be compared with building a deathstar, not a kennel as I first thought. So, even sticking to the initial idea of "evolutive development", I need to gather quite a lot of information before producing any actual code.
Other issue that keeps bothering my mind is the idea that I can be reinventing the wheel. It seems that the rsync protocol is well suited for the problem of transmitting data between peers. If that's the case, I will try to use it. Even more, I will try to find an existing implementation or library in Go and use it. I need to make an effort to remind to myself: It's free software. Reuse when possible. This mantra should be extended to the whole development process. Try to rely in existing standards and working implementations as much as possible.
So, for a while, expect activity in this blog, but not much it the repository. It's time for reading and summarizing information.
No comments:
Post a Comment