Monday, June 17, 2013

Toggl Target : An Open Source Project

This was originally published on June 17th, 2013

At our company, Yubb Software (now zla.bs), we track our working hours using the great time tracker created by the folks at Toggl, and we have monthly goals that we need to achieve. I have always had a problem with time management, and this time I decided I should start working on them.

So I created this small project to calculate how many more hours I should work to achieve my monthly goals.

This is how the output of this script looks like :

Hi
Checking Internet connectivity...
Internet seems fine!

Trying to connect to Toggl, hang on!

So far you have tracked 120.00 hours

Business days left till deadline : 7
Total days left till deadline : 10

Required working hours for this month : 170

To achieve the minimum :
    you should log 4.00 hours every business day
    or log 3.00 hours every day

To achieve the required :
    you should log 7.00 hours every business day
    or log 5.0 hours every day

So far you have achieved:

70.59% [================================================----------|-----]
 
This information has provided me with a whole new level of awareness of how productive I am! It is scary, but at the same time it gives you a great indicator of how good -or bad- you are sticking to your goals and if you need to have some crunch time or just relax the next weekend.

I then published the script under GPL license V2 on Github.

I got great deal of help from one of my role model software engineers in Egypt, Mohammed Tayseer, making the code more Pythonic. He also added installation instructions for Windows users, as I don’t use windows anymore, and he is now a contributor to the repository on Github.

Today, Monday June 17th, Toggl added a link to my script on their new documentation in the Code Examples section.

My little open source script that uses is the first -and so far the only- mentioned project in their new API Documentation. Check it on their API Documenation on Github.

This really made my day. Thank you Toggl :)

Update 1 : Friday June 21st, 3:50 PM

I received an email today from someone with the following content :
Hi Mosab,
I’m currently making a small Python app that interacts with the toggl API, and your toggl target script has been helpful in getting me started. I’m using a modified version of your api.py file, and I’d like to credit you in my project when I put it on GitHub, but I’m not sure how (I’m rather new to all of this). Is it sufficient to mention that in the readme or should I leave the line “#@author Mosab Ahmad mosab.ahmad@gmail.com” at the beginning of the file?
If you’re interested, it’s an implementation of this (percentile feedback)
Best
I am really glad my code helped someone :)

Update 2 : Wednesday Jul 10th, 11:43 PM

Seems that my little Toggl Target script is picking up some momentum.
I got this email 45 minutes ago :
hi,
you probably have already seen it, but i forked your toggl_target repo.
i just wanted to see how fast i could add reports api support and what data comes out of there… while doing that i replaced the way the config is loaded to something similar like django works and loading a config file directly from a user’s home dir… and added a setup.py to install everything.
so now there is a separate script to get some reports and an api wrapper for reports subclassing yours. i also did a little refactoring in your code.
since you seem to plan on writing a separate pytoggle lib i thought some of that is useful for you… so i wanted to give you an overview of what i changed and let you know, i probably won’t do anything more with that.
here is the sauce:
https://github.com/fdemmer/toggl_target
regards,
Florian
I am really surprised and humbled by all your contributions, thank you.

Wednesday, November 24, 2010

I got the cryptex!


Although it is old, I saw it hanging in my driver and I remembered the movie "Angels and Demons".

And yeah "I got the Cryptex".

This post is to thank Hana Zain for she is the one who bought me the DVD with its marvelous collection as a birthday present.

Monday, May 25, 2009

inbox 404!


What would be your feeling when you find that your inbox contains "404" unread messages?!

Sunday, December 14, 2008

Adhere : first open source mobile advertising platform

adhere mobile advertising platform
Citex Software (then company i work for now) has launched beta release of adhere -the first open source mobile advertising platform- on its website. You can download the product, or post any support issues on the adhere support forum.



For more info about Citex Sopftware Ltd. visit : http://www.citexsoftware.com



Long Live open source :)

originally written on my website.

Thursday, November 06, 2008

my dual monitor at work


Hi all,
This is my dual monitor at work, my laptop is Amilo (Fujitsu-Siemens), running Debian Etch. The setup is made using nvidia-settings.

Thursday, September 18, 2008

Chrome's sad tab


This is what Google's Chrome display when a tab goes bad! I really loved it so much (click on image to enlarge).

Note: This is my work pc, it is running windows -which i don't like- so I installed a Mac Theme.

Wednesday, September 10, 2008

Good Bye IOL..



Dear IOL* members,

It has been nearly 4 years now in IOL in different positions and departments. I believe it is time for me now to move, I should have done this at least a year ago, but I didn't in three different occasions because of many factors, most importantly 20at's** benefit. These years meant a lot to me, I learned many things really, but I believe I have now reached a saturation point, where my stay will not be of acceptable benefits for both IOL and me, in fact it even may do nothing but hold me still instead of going forward. Thus I decided a while ago considering opportunities that come along.

  Today at nearly 4:00 pm i received an offer, that I accepted, from a software company named "Citex Software" to work there as a software engineer. The offer satisfies many needs at this phase of my career basically and my life as well. On top of them is the need of new and fresh career blood, working with a young team that understands each other and can really think of things differently and effectively, a place where I can learn a lot of new things and a better financial level. All these factors exist in this opportunity along with others, so I am accepting the offer. I should start there right after The Eid, that means 2 weeks and a half from now.

  Despite the fact that there were some issues inside the company that could be dealt with better, I really find it hard to take such a decision and will always remember IOL was like home to me. It is the nature of things anyway; people leave their homes when they are grown up and choose their own way. Thank you all for everything, and yes I think this is a Goodbye. Hope you all the best from all my heart.

Best wishes ever,
Mosab Ahmad.

---
* IOL = islamonline.net, and media international company
** 20at = 20at.com, may main project i am was working on, i built it from scratch.

Saturday, July 26, 2008

How big is the internet?!

I was also wondering about this, till Google Gave me the answer!

Check this post

Sunday, July 20, 2008

[[ wikimania 2008 ]]



Just arrived home at Cairo from Alexandria after three days in wikimania 2008,

The event was great at all levels, and i have a lot to tell, but right now i just need some sleep.

see you when i wake up*.

for now i will leave you with a photo i took with jimmy wales



---
* citation needed!

Friday, May 16, 2008

debian and ubuntu dual boot



i finally decided to put another system besides my beloved debian,
yesterday i installed a dual boot (debian-ubuntu) system on my fujitsu siemens laptop.

Grandpa and Grandson i call both distros :)

long live GNU.