For most university students the summer means a relaxation from studying, exams and assessments. Many students spend their time on holidays, while others spend their summers in employment. For me it was slightly different.
I was on a trip away at the time when I was told of an internship within Computing, Digital Forensics and Cybersecurity at Canterbury Christ Church University (CCCU). I was instantly intrigued. Having read the job description, I soon realised it would be a programming role. I knew I wanted to apply … so, that very afternoon I completed a job application for an internship in the development of an application to help first responders when carrying out first aid. The design of the app itself was to be based around if the Primary and Secondary surveys in first aid had already been accomplished by responders.
Within a few days of returning home from holiday, I received an email inviting me to an interview at the university. The interview consisted of questions about my knowledge of first aid (e.g. what would you do if you found someone unconscious?). Questions quickly turned to programming (e.g. what is Black Box Testing?). A week after completing my interview I received confirmation of my success.
Application to an Interview: What to expect?
The interview process was a learning curve where, in particular, I learnt to always make sure to be prepared and ready to have my knowledge tested. One question asked whether I had completed any First Aid training in the past, I answered yes but in reality all I had done was a few hours of CPR training back in Year 7 of school. My lack of knowledge in the area was very obvious when asked follow-up and probing questions. Looking back, I should have made it clear I had very limited knowledge of the subject to avoid in-depth scrutiny for which I could not answer sufficiently.
Although it was clear I had very limited knowledge of First Aid, I could demonstrate my strong interests in computing. The start of it all – since about the age of nine when I got my first computer, an Asus (Eee PC 900) Netbook. It had an impressive 1GB RAM, 20GB SSD, and a 900 MHz Celeron M CPU. However, even with the awful specs, the biggest surprise to me when I first turned it on was the operating system, it ran an ASUS variation of Linux. At this time, I did not even know about the existence of Linux, nor was I even aware of MacOS. The ASUS OS was slow, unresponsive and only came with a few basic apps, this was not helped by the fact that the built-in software store never worked! To try and combat this problem I started researching and discovered the whole world of Linux and learnt how to install different distributions onto my Netbook. In just the first few months of learning about Linux I must have installed over a dozen different OSes, from Ubuntu (probably the most known and straightforward Linux OS) to Arch Linux (basically a build it yourself OS). A few years after, I decided it was time to upgrade but this time I wanted to build my own computer. I spent a year saving and researching exactly what I wanted to buy. On Boxing Day 2011 I ordered everything I needed. Waiting for the parts to arrive felt like a lifetime as I was so excited. I built the computer the same day the parts turned up; it was up and running by New Years Day. Since then, I have continued to build several computers, however, more recently I have moved into the Apple ecosystem with the purchase of a MacBook Pro in 2015 which I upgraded to an iMac in 2017, as well as having an iPhone and iPad. Thus, my interests in computing have continued to grow, extending to programming and mobile applications.
Working as an Intern: What did I learn?
One of the biggest challenges faced during the project was actually getting the app to work. We built a demo in MIT App Inventor, a service that is designed to teach new programmers how to code simple Android apps. However, our demo app ended up being a great deal more than a simple app, with over 20 different screens on the first build. App Inventor only actually recommends 10 screens (Massachusetts Institute of Technology, 2015) so, when starting the initial build, everything quickly started to crash.
We realised that to continue using MIT App Inventor we were going to have to be creative with the way we built the app. It is hard to explain everything we did in a blog post but essentially, we took around 10 screens and condensed them down into one; we then used lists that stored instructions for how the screen should look when a button is pressed, and then used these lists to change the content of the screen when a button is pressed instead of simply building another screen. This is not the only workaround we ended up using to get the app working but it is probably the one with the greatest impact. This example shows why being adaptable is so important when programming. We would never have had a functioning demo if we could not adapt to the limitations of the service we were using.
The figures below demonstrate some of the screens available to app users. One screen displays the location information, which the app is able to access, to help responders identify and reveal their location to the emergency services.
During the project, I had the opportunity to meet some willing participants to demo the app: Lifeguards based in the Kent Region. This was one of the first instances where I had to give a presentation to a group of people I did not know. A learning curve which meant, more than ever before, I had to ensure myself and my presentation were clear, informative, accurate and professional.
Working as an Intern: What have I done post-internship?
Since finishing my internship, I have a very different view of university. Initially, I thought of university as a place to go and get my degree. Now university is more about the experience and using what you learn to develop your career.
I now spend more time thinking about how something can be implemented, or used in scenarios outside of what we are given during our labs. I have used many of the skills I developed during my internship to launch my own website, Student App Centre. The site is a student discount site for premium software. To access many of the discounts on offer it relied on me developing my professional circles, contacting developers and discussing the idea with them and getting them to agree to be a part of the site. Further to this, I have also worked with my project supervisor: Dr. Bennett to give a presentation to research at Canterbury Christ Church University to explain the work we accomplished during my internship.
An internship may seem a little intimidating and have a number of associated anxieties, but it is important to examine interests and new research areas. An internship is also great for helping to develop your soft-skills, professional networks and developing your potential for employment. Most importantly, have fun!
Post by: Jake Harris – Computing Student
Academic Lead: Dr. D Bennett