Michael Ivey recently wrote about his git work flow over at My Git Workflow and it turned out to be a pretty useful article and was just the encouragement that i needed to blog about my own experience. Although I’ve used git before, I much rather use bzr whenever possible. I’m not into religious wars about tools, so use whatever you like. I work as an independent programmer(freelance programmer if you prefer) and so I am often working on several projects at the same time, mostly on my own, but sometimes with 1 or 2 more people involved.
Wikipedia has been a vital source of information for me and hardly a day goes by where i don’t use it to read up on something. Amazingly, topics covered on it range from the down right silly to the most advanced technical topic. All reviewed and scrutinized by the mass public. I just donated today as part of the “put your money where your mouth is” campaign. Although my donation is small and something i should have done a long time ago, I think that every bit helps and its always better late than never.
Last week, i sat through a demo of a certain document management system provided by a vendor. The system in itself is pretty good. Although if it was up to me, I would never choose a proprietary system for a vital project. Since you essentially would be putting yourself and your data at the mercy of the provider. What was interesting though was their licensing terms. Aside from the system itself, you have to buy “modules”.
A couple of months ago, we started working on a project, code named firemote, to help in the detection and prevention of forest fires in Lebanon. I didn’t say anything about it because i was waiting for it to be announced, and the announcement was finally done a few days ago. The press coverage(in english) is at The Daily Star - Politics - AUB team invents new tool to help battle forest fires
It just occurred to me today. Running your own business, you try to optimize the hell out of everything to make as much use of your time as possible. Employees on the other hand, wish to be as unproductive as possible. But i have to say, I still don’t understand how people think. Its one thing to have a lazy day, but to turn laziness into a habit is just plain wrong.
My NDA Policy ~ I have decided to starting signing them! : Texas Startup Blog discusses Non-Disclosure Agreements and how the author has decided to react to it. I think it is brilliant. Also of interest are the other linked articles such as To NDA or Not to NDA? That is the question. My stance on NDAs is that i only sign specific ones that actually relate to confidential information. And i only do that to make newer clients feel more at ease.
I finally got around to releasing the BombMaker Gnome applet that i blogged about. I’ll share with you a little secret, I’ve actually been using it for the past 6 months or so. I even learned to package debian packages just so that i can release it.(manually installing gnome applets is a bit too much) There were a couple of snags along the way, mainly in the packaging part and specifically in using autotools for that.
Strange title, isn’t? I don’t actually make bombs :) although during the last war, a lot of people probably thought i did. In my KDE days, i used to make a lot of use of an applet called KTeaTime(http://docs.kde.org/stable/en/kdetoys/kteatime/introduction.html#whats-kteatime). Its a nice little applet that tells you when your tea is ready after you select what type of tea you want. So if you select extra black tea for example, it will remind you that your tea is done after 10 mins for example.
Update: I removed the source code from the blog post. You can now find it on my github account. Most Hadoop tutorials use the wordcount application as a demo application. And while this might be a good demo application, it is not particularly helpful. So i wanted to think of an idea for a more useful application to use on a cluster. My first thought was trying to implement the famous Sieve of Eratosthenes.
My last twitter was “Its after midnight and i just finished my first MapReduce application. Next up, blogging about it.” Well now its time to blog about it. And share some code…won’t that be fun? So I’ve always wanted to do some distributed programming or parallel programming(technically not the same, but aim at solving similar problems), but the barrier of entry was always too high and the learning curve a bit steep.