A Computer For Programming

To learn to program computers you are going to need a computer.

If all you have is a phone or a tablet, there are ways to learn and program, but they don't usually have all the tools that you will need to learn in the best way possible.

What you really need is a 'full' computer, with a keyboard and a pointing device (a mouse or a trackpad) which is running a 'desktop' operating system - probably Windows, Linux or MacOS.

Windows is the most widely used operating system in the world. Linux is open-source and available legally for free. MacOS is generally considered to provide the best experience of the three, but it can only be legally run on Apple hardware.

If all you have is a Windows PC, use that, at least to begin with.

If you have a Windows PC, especially one with low specs, and you find that you're spending a long time waiting for it to do things, it's worth trying a live-boot version of Linux to see how your computer runs.

The best option is to get a Mac, but they're expensive. Even a used/second-hand Mac, anything from the last 5 years or so, is probably going to give you a much better experience than using a PC with Windows.

The problem with Windows is that it's slow and it often breaks. If you know all about how Windows works and how to tweak and fix things, then it might be fine but for anyone who's not an expert, Windows can be a real time-drain.

Case Study:A Cheap Windows Laptop?

Linux

Linux is a good choice for learning to program, because it's free, gives you lots of control over how your machine works, and runs well on low-spec hardware.

MacOS

The advantage that Apple have is being able to tightly integrate their operating system with their hardware, which means they provide a very good 'managed' experience where things rarely go wrong and need fixing. Because MacOS is based on Linux, it gives you access to all the same power-tools if you need to use them. It offers the 'best of both worlds'.

Connecting to the Internet