What should I consider while buying developer laptops? Any recommendations?

Quote

The problem with laptop reviews is that they talk about so many hardware features. In the end they make it so confusing.

For a software developer or aspiring developer, it is important to have a laptop that is budget friendly and also is also powerful enough.

Think primarily about the following factors. Everything else is implicitly taken care by the segment of the laptop model.

Hard disk:

Top most factor is hard disk. For most development tasks and experimentations, you would end up downloading lot of source code bases. You might setup your github or bitbucket account. Also you will download lot of tools. And also you want to test the same thin on different OS instances.

When it comes to specializations like machine learning, Linux is preferred for training. For Dev Ops you want to server Jenkins server and add plugins.

As a developer, you know how OS crashes when you do hardcore experiments. So, you should be able to keep installing different OSes, keep altering partitions.

In my next buy, I am also looking for SSD hard disk (faster, but smaller & expensive) along with regular hard disk. It is faster and less power hungry (hence lower heat and better battery life).

Better make hard disk as priority factor during selection.  

OS and Hypervisor:

As mentioned earlier, developers should be able to switch across OSes. These days Microsoft .Net and Azure have gone beyond windows. Many tools are available in both Linux and windows. Container technology like docker is more Linux-native.

Then you should be able to keep building and trying different Linux versions also, if you want to try embedded.

If you have pre-installed windows it is cheaper than buying separate windows license. But with hypervisor it is lot easier to experiment with operating systems. From this point of view, having laptop without OS also is good option.

Maximum flexibility is the key, when it comes to developer machine.

Graphics:

Earlier, graphics used to be a comfort feature. It is no more for gaming. As gamification is increased, for some customer segments, gamified look replaces standard UIs. 

Apart from gaming, the GPU is a HUGE consideration for machine learning and AI applications. The magic lies in the GPU’s ability to do math-intensive operations. Machine learning is about math operations. There is version of ‘tensorflow’ machine learning library built specially for GPU. It is called ‘tensorflow-gpu’. Further, NVIDIA built a library called 'CUDA'. Machine learning has 2 major steps (1)Training and validation (C2) prediction (usage). The training is highly math intensive. It can run faster with GPU. With NVIDIA GPU you can take the benefits of CUDA. If you are a developer, you would be doing model training almost all the time.

All NVIDIA GPUs from past 3 years support cuda.

So, if you are buying laptop, make sure you have NVIDIA graphics. Higher, the better. Intel’s graphics has not matured yet. So, even if laptop is slightly cheaper, if you have machine learning in mind, go for NVIDIA.

CPU:

While CPU is important, it is not as important as earlier factors. Mainly because most processors have similar features unless you are doing very specialized programming (Example: calling ARM thumb instruction set or architecture-specific multimedia calls), it does not make too much of difference. You need to consider only the number of cores. You could go for more cores because it will help in experimenting with hardware hyperthreading, multiprocessing, multi-threading etc.

Intel i3 or higher is good enough. Power and processor cache gets better with more expensive processors.

USB 2.0 and USB 3.0:

You need at least 3 USB ports. If you do any embedded programming, you might need to use flash programmers or JTAG debuggers. These are on USB interface. Also you might extend hard drive with external device. And with USB 3.0 if you use multimedia related device classes, you might also have USB based monitors to deal with.

This is all you need to consider. Everything else is fancy. Now depending upon the budget, you should pick what you can.

Quote

Developer Laptops USA 2018

Consider the major factors relevant for developers here is what I suggest in 2018 in USA

Higher Price (Above 1000$):

  • If you can afford i9 processor and equivalent configuration, MacBook Pro Z0V3 at $5000. I can not afford and I won't buy this!
  • MacBook Pro 15 at $1700

Please note - Apple does not support NVIDIA. I have explained the reasons for NVIDIA graphics earlier (machine learning). With Mac, if you have Thunderbolt support, you could use products like Breakaway Box which can be used to add NVIDIA graphics.

Medium Price

Lower Price:

These do not have NVIDIA. But if you do not care about machine learning, this is fine. You could build separate machine for ML with selected hardware.

Quote

My recommendations for India 2018:

Above INR 100,000 : 

  • Go for MSI gaming laptop at INR 126,000 . There are more expensive options. But for a student, this is fine. Also it helps to test on average machine than top end work horse.
  • If you want to go for expensive one, there is acer model at INR 159,000.

INR 50,000 to INR 100,000 :

In the range of INR40,000:

There are many other options online as we all know. But I mentioned the considerations earlier. Hope this makes life lot easier.

-420
Translate »