More Flexibility

January 6, 2008

I’ve started working on making ClockingIT a lot more customizable, as it’s too rigid and geared towards software development at the moment.

Giving you control over the task types, as well as making most attributes / fields of a task customizable would give you a lot of flexibility for how you work. Adding a flexible and customizable workflow would really give you a system where you can work exactly like you want.

My local development branch (living in a git branch at the moment) is moving along nicely, and I’ve got support for custom task types, custom text fields and select boxes. I’ve still got loads to do before this is anywhere near done, but it’s coming along nicely.

The hardest part will be to integrate all of this flexibility into the browsing/filtering/views while not making the interface overly complicated and making sure I don’t forget any hardcoded properties from before this big change.

Another challenge will be to make the admin interface for all of this, and keep it simple enough to use. I’ll also have to provide project templates now, as configuring a new project take a lot longer than before if you have to start from scratch each time.

I’m also a tiny bit concerned about increased rendering time, as I need to do more database lookups per task than before, but by introducing caching again it should end up being faster than it currently is.

Git trial

January 4, 2008

I’ve been trying git locally for the past few weeks, and I must say I’ve grown quite fond of the easy branching and stellar merging. As ClockingIT doesn’t run on Windows anyways, I guess there’s not much stopping me from switching from darcs to git.

Darcs back to normal…

December 16, 2007

.. after committing my (somewhat) large changes, the whatsnew and diff commands went back to normal speeds.

Although, now that Git has git add --interactive the main reason for staying with Darcs seems to have disappeared. I’ve managed to import my Darcs repository into Git via tailor, and will try to use both Darcs and Git for a while to see which one I end up liking the best.

Darcs is getting slow

December 11, 2007

time darcs whatsnew -ls
real    3m35.948s

time git status
real    0m0.450s

I’ve added and modified a few hundred files, but still..

Coming this weekend….

November 29, 2007


Recent changes..

July 31, 2007

I’ve been busy the last couple of days, and it’s now possible to collapse/expand a client on the Overview page, Browse supports task grouping and sorting, users can have custom avatars, and both Overview and Browse have gotten a speedup.

In my case, Overview went from 1.7 seconds to 0.7 seconds, and Browse from 1.2 to 0.5 seconds. Quite nice for an evenings worth of optimizing (mostly :include but also a few TimeZone fixes, and rewriting so I use user.project_id.to_i == 0 instead of user.project.nil?

Darcs again…

July 31, 2007

For some reason, Darcs has started insisting that I’ve removed / emptied out some files that most certainly are there. This happened after I moved a plugin temporarily to disable it, then did some records, then moved the plugin back to re-enable it.

And now, I’m told the plugin is gone every time I record some changes. Git is still doing the right thing and didn’t get confused at all.

I guess it’s time to switch soon.


July 28, 2007

I’ve integrated Beast into ClockingIT, allowing for installation/company/project-wide discussions. Looks great, and seems to work without any problems. I did have to munge it a bit to make it work with my current model, but no major surgery was needed. I also had to add some more security to limit regular administrators from messing with the public forums.

Anyways, here’s a simple screenshot from my development version.

Beast integrated into ClockingIT

Source Control

July 27, 2007

I’ve been mostly happy with my choice of Darcs for ClockingIT source control, even though it’s gotten slower and slower. But, today I ended up with a broken repository after aborting a conflicting pull. That’s not supposed to happen ever. So, I’ve converted the whole history to Git with Tailor, and am going to try using that for a while before I possibly swap.

I just need to wrap my head around all the git commands and try not to break things too often. 🙂

iCalendar feeds

July 21, 2007

Last weekend I sat down and implemented iCalendar feeds for your projects. There are several to select from, both personal and for all people in your ClockingIT company.

After finding the icalendar gem for Ruby and reading a bit of documentation, implementation was a breeze. What took most time was finding an export format that contained correct information so that Google Calendar could parse it. It seems that if you use an end time of less then an hour, Google Calendar sets it to one hour, but if you specify a duration it gets it right. The gem also output the wrong tag for a VTODO percentage, but that was easily fixable with a gsub.

The end result is that Google Calendar now polls my feeds once a day, and I get a nice view of the work I log and the tasks I close. And as I split different information into different feeds, I can filter the view easily to see just the information I’m looking for.

Google Calendar Feeds