The ultimate machine (PC, laptop or Mac) to buy for programming?
I get this question so often that I find it useful to talk about if you need a PC or a laptop.
First, it all depends on where and how you plan to work
If you want to move a lot, work from different locations like parks, cafe’s, office or home you need a laptop. You can travel with your motorcycle, car etc. and you will have it with you. Work from anywhere, this is the new age.
Second, it depends on what your profession is
If you are a web developer a machine with 4 GB of RAM will surely be enough for you. 8 GB would be great if you are doing web development with Java (we all know it eats RAM). If you are programming for Android, like me, I would recommend you go buy a machine with 16 GB of RAM, just because an Android emulator and an Android Studio open + few chrome tabs will eat your RAM. Less than 8 GB is really annoying for mobile development.
Where PC’s excel
Well, PC’s are faster. Really. I have a desktop PC with an i7 processor which makes 3 of my old laptops look like a VW racing a Ferrari. You can easily switch parts on the PC, it does not overheat, and yes, builds for Android take much less time. That’s why I love PC. On the other hand, I don’t use it as often as I want. It is always more comfortable for me to sit in the bed, open the laptop and read some news or program something simple. It is all based on comfortability.
The perfect configuration for Android development on PC and laptop
You will want to get the best possible from your machine. Either PC or laptop, to get the maximum out of it you will need the following things:
- i7 processor with 4 cores
- SSD – 256 GB would be great
- Separate video card – Nvidia would be the best choice, because it works better with Ubuntu than ATI
- 13″ or 15″ display for laptop 24″ monitor at least for PC. You don’t need more.
- Matte LCD for monitor – just so when you go out on a sunny day you won’t need to stare at your monitor on full brightness
What about Mac’s?
A Mac here costs 1750 euro’s for the 13″ version with i5 processor, 16 GB RAM, integrated vga and 256 SSD. A lot of money. And it is so slow for Android development. I am working on a big project with 270 screens and the Android Studio build process (I have optimized it a lot) takes sometimes 3 minutes. And it is slow and buggy. I have a personal laptop, Dell 7559 with 512 GB SSD, i7, 16 GB RAM and a separate video card and the same build happens much faster. Everything works fine and nothing lags. So it is up to you to decide if you want to invest in the 13″ version or just go buy the 15″ version with 512 GB SSD, i7 processor, 16 GB RAM and ATI Radeon external video card for the amount of 2750 euros. Or go buy a Dell 7559 for 1000 euro with configuration like mine and fuck all the Mac shit.
But what about OSX
I find to be hard to work on OSX. It needs some time to adapt to the new OS features and I want to speak about the keyboard button positions. They are awful. I mean, they are really awful. You need to use your thumb a lot in most of the shortcuts and this makes me feel like a turtle using it. That command key does not belong there. I feel they put it there just to make users adjust to Mac and never return back again.
Where Mac’s excel
They have a wonderful hardware. I reinstalled the Mac which I got to work on with Ubuntu and I really enjoy it. It works great and the audio is really incredible. And it doesn’t get so hot like my previous laptop, for which I bought an additional air pad so I don’t have to keep it burning my knees.
What is the best choice
It is all up to your budget. If I had a lot of money and I didn’t care I would buy a 15 inch Macbook Pro with i7 and 16 GB of RAM. But I care about the money and I bought a Dell 7559 with the same characteristics but for 2 and a half times less money. I also have a PC which has the same characteristics as the MAC but for 600 euro. If you are just starting, don’t waste your money. Buy a mediocre machine, start coding and when you start earning money go buy a better one. Build times does not matter, knowledge matters.