GSoC Final Report: GNOME Clocks

I am both excited and sad to see the end of Summer of Code rapidly approaching – in just two days we will have reached the ‘hard pencils down’ date set by Google by which time our projects must be finished. As such the last couple of weeks since GUADEC have been spent hunting down and fixing as many bugs as we can in GNOME Clocks. The progress made has been remarkable, thanks in large part to the contributions from new contributors like Paolo Borelli and Alex Anthony who have been an immense help recently both reporting & fixing numerous bugs.

GNOME Clocks has developed from its initial mockups and prototype to a fully functioning clock application for GNOME. At the same time I have learned much about both programming (Python & GTK+3) as well as working collaboratively as part of a larger team. I’ve also had the opportunity to work with and, thanks to GUADEC, meet dozens of amazing hackers from all over the world. Even as GSoC ends, I plan to continue contributing to GNOME, as a member of the Marketing Team, a contributor to GNOME Clocks and wherever else I can.

A few screenshots of GNOME Clocks as of today:

World Clock:




Finally, I’d like to thank my mentors Seif Lotfy & Allan Day for all the time and effort they have spent helping me over the last several months. I’d also like to especially thank Eslam Mostafa who has done so much of the development related to the Timer & Alarms. Without all of their help GNOME Clocks would not be anywhere near ready for release, let alone inclusion in GNOME 3.6, nor would I have learned half of what I have over the summer. Thanks guys!! 🙂

GNOME Clocks

Hi there, I know its been a while since I updated, and I’m sorry about that, but we’ve done a good bit of work on GNOME Clocks over the past couple weeks!

GNOME Clocks now has a working Timer thanks to Eslam Mostafa.  Alarms is coming along – we’ve run into some issues with Evolution’s API and figuring out how to tie into it, and hopefully we’ll have it figured out and up and running shortly. The GUI though is more-or less complete, and so we’ve spent the last week or two fixing a variety of bugs. It’s still a work in progress but is coming along nicely.

GUADEC is now just 2.5 weeks away and I am absolutely psyched to attend. It will be my second open source/free software conference and I can’t wait to see some of the folks I met at FOSDEM again and hopefully meet many more.

GNOME-Clocks Development Continues

The last couple of weeks have seen a major clean up of GNOME-Clocks code, and on-going development of Alarms by myself and Timer by Eslam Mostafa.

Below is a screenshot of the recently completed New Alarm dialog box in GNOME-Clocks:

Dialog box for a new alarm in GNOME-Clocks

The development of Timer has been headed by Eslam Mostafa (, and is looking quite good as can be seen below.

Timer running in GNOME-Clocks

With the near completion of both Alarms & Timer, much of the basic development of GNOME-Clocks is rapidly coming to an end. As a result, an important decision remains – how to implement and integrate GNOME-Clocks. Should we write an entirely new daemon in Python? Or tie into an existing framework such as Evolution?

Finally, we would like to invite anyone else interested in GNOME-Clocks development to join us in #gnome-clocks on GimpNet. The GNOME-Clocks repository is now available on gnome’s servers at:
Bug reports & suggestions are both welcomed and appreciated!! Thanks for reading!

First GSoC meeting and GNOME Clock design

On thursday I met with Allan Day and Seif Lotfy via a Google Hangout to discuss my project and soon-to-start internship via Google Summer of Code, starting officially on Monday. We discussed my/our goals for the upcoming months (to have GNOME Clocks mostly finished by GUADEC and submitted to GNOME 3.6 by the end of summer), and how we plan to get there. It sounds as though some parts of the design we don’t have to worry about for now, as they will (idealy) be using GTK widgets that aren’t yet completed (for setting times as pictured here: in the mockup for a New Alarm and Timer).

On monday we’ll be starting by cleaning up the current GNOME Clock code, and then begin working on Alarms as our first order of buisiness. We’re planning to get the basic functionality done first, and then begin iterating on design. We are hoping to get an alpha/beta release out shortly so that we can get bug reports as well as feedback on the design from actual users while we iterate on design.


So, yesterday I worked on GNOME Clocks ( code for the first time, and was able to get the ‘Cancel’ button to work when you go to add a new clock. Small I know, but its my first contribution and I have to say I’m pretty psyched! Today I spent the last couple hours going through git tutorials, setting up a github account, and finally getting my first commit uploaded, which is almost more exciting than getting the code to work 🙂

Now to decide what to work on next!!