I am always looking for opportunities to push myself as a developer so have been looking for opportunities to write more JavaScript. I've been dabbling in ReactJS and the static site generator GatsbyJS, but to date, I haven't had much of an opportunity to do this in work.

People and Money

While I was on shared parental leave, the University of Edinburgh launched a new HR system to centrally manage staff's annual leave. Prior to this my section had managed their leave on a shared Excel spreadsheet and there were similar solutions dotted around the university.

The need for a new centralised and robust leave management tool was sorely needed and the People and Money system delivered on this. However, when I logged into the system for the first time, there was once implementation detail made the new system more challenging to use for me.

I was unable to see the number of days of annual leave I had remaining as all totals were listed in hours. I was used to requesting my annual leave in days and seeing my remaining quota in days, so this mental shift made it hard for me to grasp how many days I had remaining.

An opportunity presents itself

I realised I could use this issue as an opportunity to practice my new JavaScript skills and hopefully help out colleagues who were having similar issues thinking in hours instead of days.

I created a simple add-on for Firefox that automatically converted the annual leave allowance in the new annual leave system to days. This was a great project because it:

  • Allowed me to learn about browser add-on development
  • Let me write some JavaScript
  • Added to my team's Open Source portfolio

The plugin took a few hours to write and is fairly simple but it does the job. With it installed, my previous allowance in hours...

Annual Leave in Hours

Now presented in days...

Annual Leave in Days

If you work at the University of Edinburgh, and would like to try out the plugin, you can download it from my team's [GitHub repository](https://github.com/uoe-dlam/people-and-money-days).

If you have any suggestions or feedback, please feel free to open an issue and we will update the plugin, which will be automatically downloaded to your browser.