Friday, 14 February 2014

First Programming Challenge

Half term is here.  But for those of you who would like a challenge there are still house pounds available.

In order to get these house pounds you need to simply either have a successful pull request, or a worthy comment on a pull request for the current programming challenge.

These house pounds are available to all year 10 students who are studying Computer science GCSE, or for any year 9 students who can contribute.

You will need to log into your GitHub account and make progress towards a solution in the following programming challenge.

https://github.com/10A/Programming-challenge-1

Contributions from all years welcome, but only those from students in years 7-10 will attract house pounds.

Cyber safety - Use a nickname on all social networks - including GitHub!

Please note that House pounds are only available to my students - Sorry, but feel free to give a pull request.

Thursday, 13 February 2014

Open Source.

Open source software

During the last revision test we had a question relating to open source and customized software.

The question went like this;

Karen wants to use handheld computers to take customers' orders in her restaurant. The is thinking of using custom written open source software.

a) State what is meant by custom written software

bi)  State a reason why Karen may decide to use custom written software
bii) State a Second reason why Karen may decide to use custom written software

c) Discuss the implications of creating open source software for the restauraunt.

There are two issues here that you need to think about;

Method of procurement.  

There are two methods of procurement - off the shelf and custom written.

Off the shelf software

This exists before you buy it.  It is available straight away.  Usually many users have used it, and they should have worked through the bugs in the system.  Usually there is also a wide community of users who can help each other.  You might find this help through the internet on wikis. and forums.

Custom Built Software

This is made specifically to meet the needs of a single user, or small number of users.  The users work directly with the developers to make the software.  The user should get what they ask for, but this takes some skill on the part of the user is knowing what to ask for.  the community of users is small if it exists at all, and this usually costs more than an off the shelf solution.  However the software should have the features that the user requires, and should be easier to use, because the user and developer have worked together.


Proprietary vs Open source software

Computers actually don't understand computer programmers that well.  Programming languages are a "halfway house" between being something for a human to read, and something for a developer to read.  What a developer actually writes is the source code.  This is compiled into binary machine code which the computer actually uses to run the program.  (We are talking a general case here, specific cases like the python programming language can be slightly different).  

The software that is distributed is the machine code, which runs the software fine.  With proprietary software the source code is owned and held by the company, or developer who wrote it.  The user owns a license to use the software (the machine code) but not the license to the source code.  It is the source code that allows a developer to change the software.

Open source software on the other hand is software that allows you access to read the source code.  The organisation, or developer, who wrote the code includes a license that tells you what you are allowed and not allowed to do with the source code.  Note that without a license the source code is still subject to copyright. For more information about specific licenses, check out Githubs guide.  http://choosealicense.com/ 

To review the videos we talked about in todays lesson.
Firstly here is Stephen Fry outlining the difference between open source, and Proprietary software, and telling us about its importance.


Secondly Here is the video Where Richard Stallman explained the birth of GNU.  This time pay particular attention to the subtitles for the different words in finnish between Free as in free beer, and free as in free speech.  On looking this up - I realized the mistake I made in todays lesson, Richard is actually American, not Finnish.  Two guesses who I was confusing him with...  (Sorry Mr Stallman!)



And finally the video that summed up the lesson.


Thanks for your attention this morning.