I feel the new MacBook's keyboard is poorly done. Surface Pro is good, but not sure about Windows environment for development. What according to you is the most suitable machine for developers?

Write your answer…

10 answers

I'm not fond of laptops for coding, it just seems less fast and comfortable due to small keyboard and screen and lack of mouse. They're also expensive, and I don't need the mobility. If you do need to be mobile, disregard this answer :-)

Besides that, I prefer Ubuntu for coding, but Windows is also workable. Those are the only two I tried. For hardware, I'd say save on GPU and invest in RAM unless you're doing webGL stuff.

Hashnode is building a friendly and inclusive dev community. Come jump on the bandwagon!

  • đź’¬ A beginner friendly place

  • 🧠 Stay in the loop and grow your knowledge

  • 🍕 >500K developers share programming wisdom here

  • ❤️ Support the growing dev community!

Register ( 500k+ developers strong đź‘Š)

One dependency that's hard to work around is if you/your designers are tied to Sketch, which is still Mac-only (Figma is a good cross-platform alternative if that's viable).

Otherwise purely for web development Win10 with WSL is a capable dev machine; almost exactly the same tooling support as a Linux machine but with the added advantage of IE11 and Edge ready for testing without VMs.

"Best" is extremely subjective. But I would say that Win10 works fine, so if you can't stand the mac's keyboard (and you sure wouldn't be the only one) then it sounds like you kinda know where you're going already ;)

Surface Pro is good, but not sure about Windows environment for development.

I love using my Surface Pro for web development... because I do my development in a Linux VM and can still use Windows.

It's a full power but highly portable machine. It's versatile. I can also use it as a tablet. Unlike a laptop I can switch to a vertical portrait orientation if I need to test something or want a tall split screen. I can sign documents with it. I can read and highlight technical books. I can run Photoshop or any other Adobe product if I want to.

The only downside is that the battery life is not amazing. If you're going off-the-grid for long periods of time then it's probably not the device for you.

I haven't had a chance to try the new MacBooks, my late 2013 is still running beautifully (and plenty quick & powerful for years to come), but if I had to buy a new laptop and wasn't impressed with the latest revisions.. I'd buy a decent PC laptop and run Linux, personally. Probably a Debian or variant as that's what I'm used to.

But then I can't stand working on Windows as it's too inconsistent and fiddly for me (I'm also autistic, so it's not just a religious opinion in the way some seem to express themselves).

However, personal preferences aside, you really need to consider what is most appropriate for the type of work you are doing. Are you going to need to use Adobe products now or in the future? If you do, will you be able to? What about other commercial closed source products that may not be available for Linux? You can run some things with Wine of course, but it's not a silver bullet and you run the risk of updates breaking compatibility. Will it be sufficient for you to dual boot to Windows should you need to do some things? You could also run Windows in a VM, but would you be happy with the performance?

Lots to consider, but essentially you need to weigh up your preferences against the technical requirements and decide just how much headache it might cause.

Never quite sure where people get this trepidation about Windows for development. The content creation tools tend to be there and rarely anywhere else -- the majority of your end users are going to be on Windows -- so you should be using windows at LEAST for testing REGARDLESS, so what difference does it make if that's your host OS?

Much less you should have VM's installed of other OS so you have some clue what they do to your page anyways, what with the differences in font rendering technologies and how some browser engines (like gecko, the engine under Firefox) behaves differently on layout across platforms.

The font rendering in particular, there are a LOT of fonts that look acceptable on OSX's blurry "everything is bold" renderer that look like ass on Windows cleartype. See the oh so popular but ultimately a middle finger to users that is Google's "Raleway" font and similar "thin glyph" faces.

Saying the Quackbook's keyboard is "poorly done" is a bit redundant.

1) it's a huffing notebook they are universally trash (excepting perhaps the MSI GT80)

2) and, well... to be frank it's built by crApple -- which means it's rinky poorly cobbled together overpriced steaming pile of manure that is likely to break if you sneeze in the same room, and they'll tell you to go f* yourself when it comes to getting it fixed... assuming they haven't ripped you off with components that don't even meet the advertised specifications, intentionally neutered hardware, or a Xeon that is stuck thermally throttled down to Core 2 speeds.

Between their COUNTERINTUITIVE UI (there I said it) piss poor manufacturing and design, ridiculously absurd price gouging, crappy slow OS with a near useless interface, I really have to wonder what the f* is in that Kool-Aid. That they have a cult-like following and thrive entirely on a perception and feelings instead of facts? Well...

Mind you this is coming from a guy who used to be an Apple Certified Repair tech during the G3 and early G4 era's... they're shit by every meaningful metric. They've always been shit and they're always going to be shit!

But again, I say that design is engineering that incorporates art, and what crApple does is the same "artist under the DELUSION they're a designer" bullshit we see from the asshats who call themselves "web designers" and don't know anything but Photoshop.

Laptop computers on top of the shitty keyboard are also out of the running in terms of screen real-estate and uncomfortably close viewing distance.

You are going to spend HOURS on these -- on the keyboard, on the mouse, in front of the screen, and if you are SERIOUS about that it means finding the best seating position (good business chair, I suggest mesh back so it can breathe), good keyboard height (lower in a tray not on the desk), good neck position for looking at the display (slightly upwards or straight, NOT DOWN), and comfortable distance from the screen so you don't give yourself unwanted eye strain and headaches (three feet should be your minimum, part of why touch screens are epic /fail/). Sit back, bump the font sizes to 8514 / Large Fonts / Win7+ medium / 120% / 120dpi / 20px / PickANameNotYourNose or higher as the system default (also important for testing your elasticity of design -- aka using EM instead of going full Pakled with pixels) instead of making it so in five to eight years you're wondering why your head is pounding, you're constantly nauseous, you've got carpal, and your back hurts.

Also why I would suggest a proper mechanical keyboard -- one with Cherry Blue's should be the minimum, and the outemu equivalents aren't bad. Green's are better, and the price on mechanicals is no longer prohibitive, and if you spend the three bucks for some of the little silicon o-rings to soften the keystroke bottoming out. For a long time (close to three decades) I was a "IBM Model M or GTFO" kind of developer, but Cherry Greens + the silicon dampers (and custom keycaps for colour coding) can give a Model M a good run for its money.

You also should consider a thumb based trackball, like the Logitech M570. Once you adjust it's not only more accurate, and more functional than any mouse, it solves a lot of wrist and arm strain issues -- since you don't move either to use it, and requires a fraction the desktop real estate. (they also make really good media center PC remotes!) Even better are the old white Logitech Trackman Marble's as they have superior ergonomics (newer ones I'm stuck wondering where the pinky on the oven mitts I have for hands is even supposed to go) but both are entirely adequate solutions and far, FAR superior to mice for all sorts of reasons.

Screen real-estate is also important -- which means multiple monitors. I also suggest that if you're designing, or working with front-end design from artists under the DELUSION that they are designers, that you get different QUALITY displays on one system. Cheap displays don't have the pixel clarity, colour clarity, or colour reproduction capabilities of more expensive ones, so you should be accounting for that as well!

I run three displays on my workstation -- center is a 28" 1440p IPS, it gives me a lot of pixels and an idea what high end machines get for output. On the right is a 24" 1080 Samsung, which has excellent (though not as good as IPS) quality giving me an idea of the middle ground. On the left is a bargain basement "Envision" brand 24" 1080p display, providing an idea of what "normal people have".

All of the above are the things that SHOULD last you across multiple workstation configurations, and if done properly much of it should last you a decade or more.

Leaving just the system itself... and I suggest that you man up and learn to build for yourself. That way you can pick and choose the best and the configuration that best suits the task.

... and you do NOT need some bleeding edge i7 or Threadripper if all you are doing is web development. Core count is nice for those VM's as is plenty of RAM for the same reasons, but you don't have to go psycho with it.

In fact staying down low gives you what REAL people have, so you aren't tricking yourself into thinking something bloated, slow, and agonizing to use is in fact fine because "but it was fine on my 18 core machine". Same for the hosting side where having a lesser machine in a single user can often give you an idea what's going to happen on a laden server.

I'll often neuter my server testing VM's RAM and CPU shares (it's a 1:1 of most of my VPS host configs) to emulate that server load.

SO many developers basically screw themselves by having high end systems, then wonder why normal people can't use what they've made. I've seen it in every form of development from standalone AAA gaming to web development.

It also helps to build low-power. All those displays are gonna suck juice, and everything makes heat, so a processor with a high performance per watt is great -- that's why my workstation is a lowly Celeron J1900. It's a 2ghz quad core which frankly is OVERKILL for most of the development I do, but peak the CPU only draws 8 watts and can get by on passive cooling. (Though I do put a 120mm fan on it anyways). This has the added benefit of keeping my electric bill under control, since every penny counts on a machine that -- again -- will spend hours a day under constant use.

... and all that is running Winblows 10, which after using classic shell and 7 task tweaker to drag the UI back into being USEFUL, is more than enough to do any development task. In fact most of the tools I rely on have no Linsux equivalent...

NOT that linsux is an option with the crippled hardware support, bizzaroland UI feedback (or lack therein, damn X servers suck), and piss poor font rendering and text kerning like a sweetly retarded rhesus monkey on crack. (On font rendering ALONE I cannot stomach most nix flavors for any length of time in actual development!)*

Linux is a great server OS, but as a desktop OS it's a crippled toy with a dearth of practical applications when it comes to content generation. It does a very good job of LOOKING like a modern desktop OS... unfortunately that's all it does is LOOK the part, since in many ways Linux desktop environments and Window managers haven't even caught up to Windows 3.0.

Show all replies

Sorry Christian WattengĂĄrd but I was being serious, since I've spent close to four decades wondering just what the F* is in the flavor-aid Apple has been peddling -- since reality seems to have little if anything to do with the outright SCAM everything about them is.

After all we're talking the company that cannot even be bothered to seal the area around the trackpad so even the smallest bit of spittle can get in and completely corrode various chips like the SMC and power regulators? The company that sold 18 bit displays claiming they were '8 bit per channel'? The company that used paints illegal to APPLY in the US (but apparently not sell) that continued to vent toxic fumes well past point of sale? The company that used the wrong size flat cables resulting in the premature 'striping' death of their IPS. The company that took 500-600mhz G3's and underclocked them to 233-300mhz so they could wrap them in insulating foam instead of a cooling solution? The company that took perfectly good PCMCIA slots and left out two power rails so they could call it "airport" and you couldn't use third party cards in them? The company that required optical drives be hardwired to master instead of slave in laptops so you couldn't connect a third party drive without shorting pins 45 and 47 together? The company that wouldn't know proper cooling if it stripped naked, painted itself noctua tan, and hopped up on a table to sing "Oh look at what a big cooling fan I am" -- to the point that those big fancy expensive Xeons end up spending so much of their lives thermally throttled you might as well have bought an i3! The company that not solders in their SSD's so if the mainboard goes you're shit out of luck on your data?

Any of this ringing any bells?

Which is why when people talk about the ALLEGED "quality" of crApple products I genuinely have ZERO damned clue what the blazes they are talking about!

... and that's before we talk their preference for slave labor, unsafe construction materials, skirting pollution laws by picking and choosing their OEM partners, vendor lock-in, active opposition to "right to repair", and general sleazeball business practices that no other company on the plant could possibly get away with.

Why or even HOW anyone could be DUMB ENOUGH to buy ANY of their products by choice completely escapes me.... and that goes right back to Apple's earliest days when they built entire computers where the only thing holding in the peripheral cards was the edge-card connector and wishful thinking! Skipping right past how they got so in bed with education they were able to rewrite computer history and their place in it.

... and that's before we talk their bloated, slow, counterintuitive OS that still has gaping security flaws dating back to the 1980's version of the Mach microkernel that's at the heart of Darwin!

They have always been cheaply made, poorly designed (if one can even call it design), and ridiculously overpriced train wrecks of how NOT to build a computer, and the only way anyone continues to be DUPED into buying their rubbish is the continued delusional cult-like status based entirely in lies, propaganda, and outright bunko.

Which is why to be frank I find Apple -- and their fans -- to be very special. In the same way some Olympics are special. I genuinely have to question the sanity and intelligence of anyone suckered into their outright snake oil peddling.

... which to be brutally frank makes the BS dimestore hoodoo peddled by dirtbags like Paltrow or that Avacado whackjob seem legit!

P.S. I also spread the hate around, since I refer to Linsux and Winblows, but no, "Wah wah, hees beez teh badsmuthing muh Apples!" had to be the knee-jerk reaction. They all "inhale upon the proverbial equine of short stature" just in different ways.

Reply to this…

Load more responses