Chapter 3: Our Starter Language

In this chapter, we'll start to do some coding for ourselves. But which language to start from?

Countless new programming languages have appeared throughout history since Grace Hopper first introduced the idea of a common language, each of them claiming to be easier to use than the others. This forces us to ask: which language should you learn to start with? We asked some expert computer programmers what they thought:

Wow. Not helpful. And that ones and zeros guy should really check out the last section of this course.

Ideally, the first language you learn would teach you the fundamentals of programming without anything getting in the way, like spending ages setting up your computer or buying new equipment. It would be simple enough to start learning but still complex enough for you to learn everything you need to know.

It should also be one with a proven track record of helping people learning programming for the first time. We've seen earlier how most modern day coding languages are too complicated to be used as a starting point. So what language did the good coders of today start off learning?

Let's pick someone who it's safe to say is a good computer programmer. Heck, lets shoot for the moon. Let's pick Bill Gates:

Bill Gates. Image credit: Kuhlmann / MSC. Released under the Creative Commons Attribution 3.0 Germany license.

Bill Gates is the creator of Microsoft and programmed the first versions of Windows. I probably don't need to tell you that his combination of programming skills and business acumen lead him to enormous success. He would probably be the richest person in the world today if he hadn't given most of his fortune away to charity.

So I think we can safely say he's a good coder.

The first versions of Windows were programmed in a language called C, but as we've discussed, this is unlikely to have been the first language that Bill Gates learned. In fact, we can guarantee it, because Bill Gates has been programming since he was a child, and the C language hadn't been invented back then.

Research tells us that Bill first started learning programming at the age of 13. His school had a single computer, a Teletype Model 33, generously purchased for them by his school's voluntary Mothers' Club. This was happening in 1969, so computers had advanced somewhat since the days of the UNIVAC and the Harvard Mark I, in that they could now have interactive programmes that could pause while running and wait for the operator (fashionably now called a "user") to give an additional instruction before it resumed.

However, still like its recent ancestors, it still needed to be told exactly what to do. If you didn't know how to code, then you couldn't use it.

The coding language it used was called BASIC, which stood for Beginners' All-purpose Symbolic Instruction Code. Bill took an interest in the machine, so he learnt enough of the BASIC language to be able to make his first programme: a noughts and crosses game, also known as tic-tac-toe.

Young Bill Gates on his school's Teletype Model 33. Image credit: Bruce Burgess. Public Domain.

From this starting point, Bill continued to learn more BASIC and then moved on to other languages. He also learned exactly how the code was compiled into the machine language of ones and zeros. With this knowledge he was able to create versions of BASIC on newer computers that didn't yet run it, which he did under the company name of “Micro-Soft”. The name demonstrated his knowledge of computer hardware (micro-processors) and coding programmes (programmes were also known as software).

As well as creating versions of BASIC for new computers, he and his team were able to create programmes that made the computers easier to use for non-programmers, known as “operating systems”. The first operating system they made was operated purely by keyboard, and was called MS-DOS (Microsoft's Disk Operating System).

With the invention of the computer mouse, they created a visual operating system called Windows. They then kept creating newer and better versions of Windows and we can probably end the story there as it's highly likely you are using a version of Windows right now, or one of its main competitors.

So we can agree that Bill Gates is a good programmer, and that the language he first learned from was called BASIC.

Let's think of another person that it's safe to say is a good programmer. How about Mark Zuckerberg?

Mark Zuckerberg. Image credit: World Economic Forum. Released under the Creative Commons Attribution-Share Alike 2.0 Generic license.

Mark Zuckerberg is the creator of Facebook. I probably don't need to explain much more than that. When Facebook became popular, he became one of the youngest billionaires in the world. The dude is incredibly successful and we can say with relative certainty he is a good coder.

The Facebook website is made in a language called PHP. But again, it is unlikely that this was the first programming language Mark learned, as research tell us he also learned programming as a child in the early 1990s, and PHP was not in widespread use back then.

In fact, research tells us that when he was a child his father gave him an Atari 800 computer, which he learned how to programme for fun. And the main language of the Atari 800 was, as it turns out, also BASIC!

Both Bill Gates and Mark Zuckerberg started their learning with the same language... BASIC. Why did they both start with the same language when Bill was learning in the 1960s and Mark in the early 1990s? Because Bill was learning from a cutting edge business computer bought for his school, while Mark was learning from an older personal computer bought for him by his dad. Bill had access to a cutting edge computer in the 1960s while Mark had an older personal computer in the 1990s.

I don't think it's a coincidence that they are both good coders and both started by learning BASIC. The BASIC language includes almost everything that is important to learn for computer programming, but is also easy to get started with.

And so that is exactly why we will start with it too. If it was good enough for them I think it will probably be good enough for us.

So click the button below to see how you can get yourself access to BASIC:

Continue to 3.1: Back to BASICs