Utilisation of cloud services in software development education

16.12.2015 :: Teksti: Pekka Ojala  Author: Pekka Ojala

Cloud services play a significant role in software development. When training future software developers, it is important to provide the students with information about cloud services and the opportunities they offer. Students that master the use of cloud services utilised in software development have better chances to hold their own in the labour market and to learn technical skills required to operate as a software industry entrepreneur.

The emergence of cloud services

The development of the Internet has led to rapid digitalisation of our society. This development has taken place at an accelerating pace over the last 20 years. Along with this development, cloud services have become increasingly important, and the term itself has become an everyday concept for most people.

The history of cloud services originates in the 1950s in the era of centralised computers [1]. The general public became aware of the existence of the Internet in the 1990s, but at that time no one talked about cloud services even though the technology already existed. The concept of cloud was introduced to the general public by Google’s Eric Schmidt in 2006 [2]. Of the present cloud service giants, Salesforce.com, Google and Netflix were established in the late 1990s and Facebook in 2004. Amazon published its industry-leading cloud service Amazon Web Services in 2006. The software giants Microsoft and Apple entered the cloud services market more visibly in the 2010s. [1]

Introduction of cloud services in education

Utilisation of cloud services in education can be promoted mainly through the following three ways: The training organisation provides some cloud services, such as those intended for all persons operating within the organisation, including students. Alternatively, teachers may decide to use certain cloud services through which they can effectively distribute information to a large group of people. It is also possible that cloud services become commonplace without any external effort. For example, a person such as a student may inform other students about a cloud service, and these students in turn may continue to spread the information about the service to others.

Conscious utilisation of social media services such as Facebook in information technology education is less common. However, its use is becoming more popular. For example, in group work, social media services can be utilised in communication – for instance, Facebook could be used as the group’s primary communication channel. Furthermore, Facebook’s application development option provides software developers with a different and interesting approach to Facebook.

In the Oulu UAS Degree Programme in Information Technology, one of the first more widely used cloud services was Google Docs. The service enabled students and teachers to share and use documents saved to the Google cloud. The use of Google Docs became more popular in education in the late 2000s. In 2012, Google Docs changed its name to the present Google Drive. Facebook application development was introduced as part of information technology education in the 2010s.

Cloud services and software development education

For the purposes of this article, the author interviewed Sami Iljin, who completed his degree of Bachelor of Business Administration from the Degree Programme in Information Technology in December 2014. Iljin had chosen web application development as his study option and knew how to utilise cloud services in his studies in a versatile manner (Figure 1). He had received information about the services from his fellow students and from the Internet. [3]

Kuvio_1_vaihtoehto_2.pngFIGURE 1. Cloud services utilised by an information technology student [3]

Finnish

English

USEITA TEKNOLOGIOITA TUKEVA OHJELMISTOKEHITYSALUSTA

SOFTWARE DEVELOPMENT PLATFORM THAT SUPPORTS A NUMBER OF TECHNOLOGIES

Heroku

Heroku

VERSIONHALLINTA, PROJEKTINHALLINTA

VERSION MANAGEMENT, PROJECT MANAGEMENT

GitLab

GitLab

GitHub

GitHub

BitBucket

Bitbucket

TIEDOSTOJEN TALLENNUS

DATA STORAGE

Dropbox

Dropbox

DOKUMENTOINTI

DOCUMENTATION

Google Drive

Google Drive

VIRTUAALIPALVELIMET OMAAN HALLINTAAN

VIRTUAL SERVERS FOR PERSONAL MANAGEMENT NEEDS

DigitalOcean

DigitalOcean

PIKAVIESTINTÄ

INSTANT MESSAGING

Telegram

Telegram

AJATUSKARTAT

MIND MAPPING

MindMeister

MindMeister

Some of the services presented in Figure 1 are today utilised in information technology education. For example, the Bitbucket version management service is used in several software development study modules. Bitbucket has a free service level which enables using private repositories, i.e. data storages containing application source codes.

GitHub is another popular version management service. Like Bitbucket, it also offers a free service level. Compared to Bitbucket, the major difference with GitHub is that at the free service level, the repositories are public. Students can, however, gain user rights to private repositories by registering as a GitHub Student Developer Pack user[4].

For students, services such as Bitbucket and GitHub are handy because they can also be utilised in study modules not requiring use of such services. The core function of these services is version management, but they also include, among others, ticketing systems that facilitate task management and multi-user support enabling collaboration. Since GitHub repositories are public, students can also utilise them in their portfolios to demonstrate their skills. For students or graduates applying for a software developer position, the personal public GitHub page can be the best possible demonstration of their competence.

Benefits of cloud services

When asked about the benefits of cloud services, Sami Iljin emphasised the ease of use and flexibility:

“The absolute best feature of Heroku is how easy it makes to publish an application. In addition, if you do not have the time or expertise required for server hosting, Heroku is the best choice. Configuration takes place almost automatically. Another benefit of Heroku is the fact that it is also available free of charge (although with some restrictions).” [3]

Heroku is flexible also in the sense that it supports a number of different programming languages [5]. For example, web hotels typically support PHP (Hypertext Preprocessor), which is one of the most popular web application scripting languages, but may completely lack support for other languages, or their use can be restricted in some other manner.

“DigitalOcean, on the other hand, is a good choice if you are interested in server hosting and installation. DigitalOcean is a very affordable means to set up an SSD dedicated server. You can then set up a number of operating systems on the server and configure it for any desired purpose.” [3]

In the autumn of 2014, GitHub published its Student Developer Pack, which provides students with an affordable selection of products and cloud services[4]. The Pack also includes the aforementioned DigitalOcean service, for which students are offered USD 50 in platform credit.

VIDEO 1. Github Student Developer Pack [6] 
“All of the cloud services I use share one important feature: ease of deployment. Typically, the deployment of a cloud service only requires signing in. After that, the service becomes available for use.” [3]

Challenges in utilisation of cloud services in education

Utilisation of cloud services has certain challenges. When asked about the disadvantages of cloud services, Sami Iljin could pinpoint only a few.

“I have no major issues with any of the services. Minor features are sometimes irritating, such as the slow operation of Dropbox. Or with Telegram the fact that the settings for group chats are user-specific instead of device-specific. [3]

From a teacher’s viewpoint, the situation is slightly different and more challenging. If a teacher decides to utilise a certain cloud service in education, they must get all their students to register for the service. In such a situation, the teacher should also inform the students about how they can discontinue the use of the service if necessary.

Several cloud services are free of charge. However, some services such as the abovementioned DigitalOcean are subject to a fee and teachers cannot obligate their students to subscribe to a service requiring a card or PayPal payment to use it [7].

Cloud services may also involve other restrictions. For example, Microsoft, whose cloud services are utilised at the Oulu UAS, provides students with a trial period to the Azure service. The trial period, however, is limited to six months [8].

Liability issues are also important to consider. Acquiring a cloud service means that the service owner becomes subject to some liability provisions. Therefore, the terms of use and data security settings of each service must be carefully reviewed in advance.

Future developments

The Oulu University of Applied Sciences has acquired some cloud services, such as Microsoft Office 365 and Google Apps for Education, for the use of its staff and students. However, these services do not include, for example, the abovementioned services required in software development. Microsoft Office 365 and Google Apps for Education are targeted at all the users at the UAS and their product and tool selections are mainly intended for basic uses that facilitate studying and working.

It is likely that private cloud service deployments will become more common in the future, which would mean a shift towards the BYOC (Bring Your Own Cloud) environment, where during study modules, teachers and students would utilise the services they have acquired by themselves. This would bring significant benefits: teachers could focus their efforts on their core task and educational institutes would not need to provide students with a wide range of different services.

References

1. AB Staff Writer. 2015. Cloud through the ages: 1950s to present day. Retrieval date 12/06/2015. http://www.thoughtsoncloud.com/2015/04/a-brief-history-of-cloud-1950-to-present-day/

2. Schmidt, E. 2006. Search Engine Strategies Conference. Conversation with Eric Schmidt hosted by Danny Sullivan. Retrieval date 12/06/2015. http://www.google.com/press/podium/ses2006.html

3. ABCDEF Iljin, S. 2014. Bachelor of Business Administration. Email interview conducted on 20/12/2014. In the possession of the author.

4. AB GitHub. 2014. The best developer tools, now free for students. Retrieval date 12/06/2015.
https://github.com/blog/1900-the-best-developer-tools-now-free-for-students

5. Heroku. 2015. Features. Retrieval date 12/06/2015. https://www.heroku.com/features

6. MicrowaveSam. 2014. Github Student Developer Pack - Get It. Retrieval date 03/09/2015.
https://www.youtube.com/watch?v=9xI8DbkRq6w 


7. DigitalOcean. 2015. Terms of Service Agreement. Retrieval date 30/09/2015. https://www.digitalocean.com/legal/terms/ 


8. Microsoft. 2015. Try Microsoft Azure. Retrieval date 30/09/2015. https://www.microsoftazurepass.com/azureu

This article was originally published in Finnish in ePooki – Oulu UAS research and development publications.