Saturday, 30 May 2015

To software, or not to software

The oldest computers were not easy to use. Every time they were switched on, they had to be programmed before they could be operated. My first computer was a Sinclair ZX81. It had 1 kilobyte of RAM, and no hard drive. You had to either write commands and programs in BASIC, or you had to load a program from a cassette tape.

Compare this to a modern tablet computer, and the difference is astounding. You switch it on, and right away you can perform tasks with the glide of your finger across the screen. This is all due to the magic of modern software.

Software are computer programs that enable a user to carry out tasks without having to program the computer first. So, your computer/tablet/phone's operating system (Windows, OS-X, Linux, Android, Unix, Chrome etc.) is software. You will also have a number of programs that you may have added to help you do common tasks, like image editing or playing videos.

However, when you take a serious look at what a lot of the software is doing (particularly when reading that huge license that appears when you first install the software), it is not hard to come to the conclusion that not all of it is ideal!

  • Many operating systems share your data with government agencies (Snowden revelations).
  • Google/Andriod uses your data for advertising purposes.
  • Apple's digital rights management means you cannot play their movies using non-apple software, or using non-apple portable devices.
  • Some Android apps collect your location data and contacts details. 
  • Many specalised programs have their own proprietary formats that cannot be used by other software.
So it is clear that not all software (particularly when it comes free) is working in your best interests. Even when you pay, you may find that the commercial interests of the company that created your software is enforced.

The most common large scale problem I have seen, is when a company buys an operational system, only to find out that they cannot easily obtain management information from the data, due to vital data being over-written or not saved. They have to go back to the software company to buy their proprietary management information layer to fill in the gaps.

I have also seen projects derailed because a supplier would not share their entity, or how they were going to administer their process.

So to be truly free in computing, it is clear that you need to be able to write your own software using a programming language (Java, C, Python, etc. etc.). A programmer can deliver bespoke systems that enable your organisation to do exactly what it needs to do, without conflicts of commercial interference from suppliers.

Many organisations with vision are now seeing that we need to be generally a more tech savvy society. The BBC, the UK's government, Google and Barclays Bank are just a few organisations that are investing in programming education for children. They now see that programming is a high value skill that benefits everyone.

No comments:

Post a Comment