The computer for the programmer is the main working tool, after the head. Although portability is an optional attribute, the laptop is very convenient for some objective and many subjective reasons:
- you can take it with you on a long trip for urgent tasks
- it is more convenient to have a customized tool at hand than to deploy a temporary development environment on someone else's machine every time
- you can work with it both sitting at the table and on the sofa
So which laptop should you choose?
The most important question to ask when choosing a laptop for programming is - what platforms are you writing software for? In this regard, software development can be divided into the following types: web development (browsers, web servers), software development for desktop operating systems (computers, laptops), mobile development (smartphones, tablets, watches, etc.). There are also areas of complex scientific computing and machine learning, but for them, as a rule, specialized equipment is used, so we will not consider them.
With iron, everything is simple - the more powerful and modern, the better. But still, you should not mindlessly run to buy up every new laptop model that comes out. For more or less comfortable development, at least 8 gigabytes of RAM, an SSD drive of 100 gigabytes and some processor no older than 5 years are suitable. The overall performance of the hardware directly affects the speed of building and compiling applications, which reduces the cycle of software development and testing.
With the screen size, everything is also intuitively clear - the larger the screen, the more information can fit on it and the larger the case and, consequently, the weight of the laptop. In most cases, a standard 15-inch screen is fine.
But the choice of the operating system can impose some restrictions on subsequent work. The thing is that to compile applications for Apple platforms (macOS, iOS, watchOS, tvOS and others), you need a computer running the macOS operating system.
Therefore, if you are writing software for one of the Apple platforms, then most likely you will need a MacBook. In principle, there are ways to put macOS on hardware from other manufacturers, but this will violate the license agreement and require additional efforts (selection of a specific hardware configuration, for example) without guaranteeing a working result.
Development for Windows and Linux is a little easier - nothing prevents you from compiling an application for Windows or Linux on any of the three most popular desktop operating systems (Windows, Linux, macOS), but it is still more convenient to develop software on the target platform. With the installation of Windows and Linux at the same time on the same laptop, in order to switch between them if necessary, there is usually no problem either, the main thing is to have enough hard disk space.
If you are doing web development, then a laptop running any of these three operating systems will work for you.