Well, I finally did it. I actually have a project that's hosted on https://bitbucket.org/Dauntless/sojourner (see my links to the left)
I decided to put up the work I've been doing on my clojure project there. Eventually I will probably move it to github, but I know at least some of mercurial, while the only thing I know about git is how to clone something. Unfortunately I don't think bitbucket has a good open-source plan like github does (hmmm, maybe that's why git is wining the DCVS contest).
Basically this project is first and foremost a learning project for me on many levels. I've never done an open source project before...not even as a commiter. Secondly, this will help me learn clojure. Thirdly, it will hopefully have at least some practical value. And finally, I wish to document this very well so that others can also learn from it.
This project has one major philosophical mantra:
1. If it's not documented, it's a bug
I'm not just talking about API documentation either. I like projects that have high level guides, tutorials or other documentation. I find most API documentation next to useless (and I will point my finger here at clojure itself). I will take a project that has less features but better documentation than a project with more features but little documentation. It's a sad fact that most open source projects have poor docs.
I would also like the project to follow a test driven development philosophy, but honestly, I'm not sure how I am going to do this for a gui program (selenium?). I also have to be honest and say that I still haven't yet wrapped my head around TDD despite being Test Automation Engineer. TDD makes sense when your API is already solidified, and therefore you have a spec to test against. But how do you create tests when you are still exploring and shaping up the API?
Nevertheless I am stoked on this. Even if no one else uses it, it is still a great learning tool for me.
No comments:
Post a Comment