I've just completed my industrial experience year, so I had previous work experience with C#, WPF and Visual Studio but I didn't have any personal projects, therefore this vacation job was great opportunity to use all that I've learnt.
I was challenged for my vacation project to update an existing application Accessible Google Calendar (AGC) created by a previous MSc student several years ago as Google are changing their API and implement a couple of new features.
After my investigation of required changes I suggested to completely remake this application and I was supervised through this process by Professor Robert Stevens.
The previous version of AGC was written using Winforms, but I decided to develop a new one using WPF with MVVM pattern as these were more modern technologies. I've just completed my industrial experience year,
so I had previous work experience with C#, WPF and Visual Studio but I didn't have any personal projects, therefore this was a great opportunity to use all that I've learnt.
Apart from re-implementing and improving existing functionality I also added several new features such as an 'update events' option, customized templates for quick events, sound settings to use custom sounds and I created an installer. Although I was working alone I tried to organize my work in a similar way as if I was at work, so I used GitHub where I linked my submitted code to tasks with description.
Apart from improving my programming skills I also decided to practice my software skills and used several agile practices. I was working remotely, so instead of daily meetings I was sending email reports about my progress and plans.
After I created a first working version I was attaching it to my emails, so Professor Robert Stevens started using it quite early and provided me with great feedback and ideas for improvements.
Overall I would say that this was a great experience for me and I would recommend to any students who are interested in undertaking a vacation role to apply!
Discover more about the project and it's functionality:
It's also an open source project, which can be easily distributed to people who might need it using installer available here: