What to hack?!
By way of getting back into programming, decided to hack an existing a project instead of doing the learn-the-lang-from-textbook-and-start-mini-project-route. There sure are a lot of places where one can get hold of open source projects:
They were all very unfamiliar to me. Plus I had to use one of the version control system thingies to grab the sources.
The first thing that entered my head was Songbird, is that open source? Browse, browse, oops, Linux no longer supported. I have no idea why Songbird entered my head, don’t even use it. Wait, there’s the Nightangle project: bzr branch lp:nightangle. Errm, where’s the source.
Wasted a few more ticks and found the source to a bunch of potentials:
- Songbird (managed to find it somehow)
- Gnucash (I use and like this program)
- Clementine (which I stumbled upon after trying out Exaile, Banshee and Rhythmbox)
My first worry was how big are these projects. I wasn’t concerned about what programming language it is written in since I felt that my new found noobness more or less guarantees a level playing field in the choice of programming language. However, I wanted a project written in a popular language rather than something weird like … err I don’t know. Well it doesn’t matter, we’ll use the thoroughly scientific popularity metric.
How on earth am I going to figure out how big these projects are? Let’s examine the directory structure using tree, a ridiculously crude way of judging “size”. After some minutes, eliminated Songbird. After learning the find tool, I could do ‘find . -name “*.cpp” | wc’ (count how many cpp files there are), which is probably a smarter idea. In the end, I decide to keep gnucash and clementine to work on.