markdown guide
 

Personally I think it comes down to one thing, and it's something that people don't talk about.

You pick the setup that enables you to easily jump in and get shit done. We can argue all day about cost-to-specs of Macs and how it's gotten progressively worse over the years, but it's still the best device to let you jump right in to your workflow and actually get developing today. Everything boots up incredibly fast and it's got the most intuitive and minimal interface to give your mind room to be pragmatic and efficient.

What about Windows? You lose some of that intuitive UI and it's a little more convoluted and clunky, but for any discipline of coding that requires compiling and rendering, you want that power. But in that case, Windows doesn't have a competitor; you need one for this kind of heavy-duty programming. Either that, or Linux.

Given that this is a website for programmers and developers, we should put gaming as far down the list of priorities as possible. If you want an all-in-one that can dev, game, watch movies and help you raise your newborn, then you're going to have to accept that whatever rig you buy/build, will definitely be overkill for what you need to code stuff.

I believe a good Windows laptop with a decent screen/ram/processor is the best of all worlds. It doesn't do anything the best, but it does well at everything enough. For that reason, I bought the Dell XPS 15 2018 for around £1800 on Black Friday and it's been a great all-rounder.

 

I would like to make some points in your comment.

Do you really think that "jump right in to your workflow" is that important? I may be being a little naive, but unless my laptop break in the middle of the week by the morning and the difference in price is less than a day of my work, I prefer to customise everything and lose some time to win productivity on the long term.

Same thing about the "intuitive interface". I don't care about some learning curve that will benefit me latter.
If I make an app for the normal users like my mom, these are some points I will definitely take into consideration. But as a developer, I am always searching and learning new things to make me do more for less.

 

Kind Sir or Madam,
Why limit yourself to Windows or Macs? Ubuntu, Mint, RedHat or CentOS, to name a few, are very good to excellent.

I know many love Macs but I can't stand their repair tactics. Windows will not even allow you to swap out a hard drive with having to buy the OS twice! Why should software negate you from changing out your own equipment? You bought it but you can't open it!

After of years playing with computers, every one should be willing and able to fix/upgrade their own. Heck, the only reason I might go to repair shops is not bc I can't do it but I don't have the time.

Now the actual hardware, Dell XPS 13 or 15, Asus or Lenovo laptops suit me.

 

I'm sorry but that is not true. Windows 10 actually registers itself to the motherboard of the machine you install it on so you can easily swap out the hard drive on it. In fact, i do this often as I build PCs when I am not developing.

 

Good to know. Maybe I have come across unscrupulous sales ppl.

I have used linux machines for quite some time and do not deal with Windows anymore.

 

I second this. I've replaced a hard drive and a motherboard on my pc and did not need to repurchase a license in either case. (Ymmv)

Generally if more than x (pretty sure x is 4 or 5) pieces of HW change all at once, it considers it a different system. You can deactivate your license and reapply to the new computer in this scenario.

 

Windows will not even allow you to swap out a hard drive with having to buy the OS twice!

That sucks you have had to deal with that. Windows has activated surprisingly painlessly when I have done major hardware changes and I don't recall ever having to pay again to do it.

That being said, it is always a good idea to look all the options for operating systems and when doing so, weighing all the pros and cons for your use case. For many, not only would a Linux-based system be able to do the job, it probably is the better tool for the job.

 

James,
I was in a Staple's recently and looking over the laptops when the sales person stopped by. I mentioned that I usually like swapping out HD's. When the sales person told me about this nifty "feature" requiring a second purchase of Windows, IF I were to upgrade their laptops.

I was amazed too!

Wow... that seems a bit like a dodgy salesman, or at least an incompetent one. 😕

I bought a laptop a few years back and swapped the mechanical drive for an SSD. I cloned the drive and besides working faster, I had no issues whatsoever.

Your underlying point from your original comment still is good though - don't limit yourself to Windows and Mac. 🙂

 
  • ArchLinux all the way and laptop for simple gaming (linux Steam games appear overnight) and work.
  • Yes, unfortunetly is a little impossible right now, until the company stops using skype for business (it doesn't works on linux distributions).
  • Console.

No windows os was hurt during the creation of this comment.

 

I've owned a variety of computers over the years, but I definitely lean towards System76, especially their laptops. Retrospectively, I wish I'd found out about them years ago.

If I could find where I'd parked my TARDIS, I'd also go back to my early days coding, and tell myself to install and learn Linux immediately. Windows 10 has made some significant improvements to their ecosystem (especially Clang support and WSL), but Windows 7 and 8 are not respectable development environments. I've come to regret my early foray into .NET 2010.

 

I 've always wanted to make the leap to System76 but I'm a highly mobile developer (coding in airports..) and I was never able to find a good review regarding the battery life of their laptops? Any feedback to offer?

 

For what it's worth, I have a ten hour battery...and this is an older model I refurbished. (The battery is original, as far as I know.)

 

I'm quite happy with my thinkpad carbon x1 dual booting Linux (I basically never use Windows at this point, but it's on there still). The latest Dell XPS 13 looks nice as well.

All that being said, in some ways I wish I'd gone with a Mac even though at the time I justified the thinkpad as a better investment (better hardware for the same price or a little less depending on config), I think having a single, widely used OS that's Unix based would have made my life simpler at least at the beginning of my learning journey. As a plus, I'm very glad I sort of forced myself to learn Linux, and it's a great laptop.

 

Definitely get a Linux distro and separate gaming from work. Dev tools often don't work (well) on Windows and gaming on Linux is a joke.

Hardware depends on workload.
Just coding is going to require fuck all, we've been able to do simple text editing for quite a while now. Good peripherals (monitor, keyboard) and a fast, but not necessarily large, drive (SSD) seem like the biggest issues.
If you're working on VR/AR, AI, HPC or similar you might want to cram as many GPUs in there as you can afford.
If you've got more advanced deployments, various containers running, complex environments etc. I'd say CPU and RAM are important aspects.

For my laptop, I picked the largest screen I could find, crammed an i7 in there with as much RAM as I could afford and a small SSD. Running Linux Mint.

 

I use a Macbook Pro and a Windows machine with Subsystem Linux and both of them work just fine for me so it is just a matter of preference I would say.

I like Linux distros but I need to reliably run software that is not available for them at this point in time. i.e If you do design and other media work you might not want to use it as your main system.

Hope this helps!

 

I have a MacBook Pro for work and a Dell XPS13 at home. The lack of Sketch support is my main drawback for switching to Windows permanently. The hardware on the Mac is, imho, subpar. I've only had it since July and the keyboard is intermittently failing on frequently used keys 😣

 

I hear you, Sketch is great but I have stopped using it as solid cross-platform alternatives are starting to get of the ground.

Sorry to hear about your Macbook, seems to be a common issue on models with the butterfly keyboard, I have a 2015 and had no issues as of yet. (fingers crossed)

Heard good things about the XPS series and the Razer machines but it seems like we cannot win with laptops at the end of the day. 😄

Really interesting video on defects, thanks 😊

I'd read about the butterfly keyboard issues, just need to bother our IT department for a repair but I'm dead lazy!

Taught myself to use the other CMD key instead, haha!

 

Appreciate you mentioning the caveat with Linux and design 🙌 It's probably the major thing holding me back, the lack of first party support for design software (Adobe, Sketch, etc).

 

I would go for thin gaming laptops, windows subsystem for Linux has solved most of my problems with windows and you can game whenever you want ;) I have two windows user accounts - workhard and gameinsane.. Works for me

 

Depends on whether you need to travel with it or not. If you are going to use it from home, get a desktop. It can offer unrivaled performance and get something like:

  • Ryzen CPU (whatever is currently best, I got 2700X last June)
  • Geforce 1080Ti - good GPU never goes to waste :)
  • 32GB RAM (you probably don't need 64 yet but 16 is too low)
  • Intel Optane SSD

And a good monitor as very important as well, get some ultra wide monitor, it helps to better concentrate as compared to two smaller monitors.

If you need a laptop, this is way better than mac: razer.com/gaming-laptops/razer-bla...

 

I built a machine similar to this recently. For starting from the ground up (no reused parts), I have a Ryzen 7 2700X, 32GB DDR-4 (with option to go 64 in future), 2 Samsung 970 Elite 512GB NVMe drives and a Radeon RX570 for around 1200. When my MBP dies, I am going to buy either a bottom-spec Mac or generic Windows laptop and set up a VPN to my network environment which would allow me to RDP into my desktop for real work.

 

I appreciate the specs and laptop recommendation. It's been hard to decide on what minimum PC specs are performant nowadays. Ended up using this website to get an idea of what's a "slow" vs "ridiculous" PC.

And thanks for the laptop rec! I've been trying to find a solid Windows alternative to the Macbook that isn't too low-end. Razer seems like it's a great choice 👍

 
  • Mac. Probably one of the new iMacs or the Mac Mini since I already have a Macbook Pro powerful enough for whenever I need it on the go.
  • Definitely. I got so used to keyboard shortcuts, folder distribution, terminal aliases, etc. that whenever I'm away from my computer I feel like my productivity falls dramatically.
  • Yep. I'm not much of a gamer, so my PS4 is more than enough for my gaming needs.
 

What year of Macbook Pro are you rocking if I may ask? I notice a lot of people hanging with the pre-keyboard-change option.

 

A mid-2015 13”, and yeah, after seeing how much shit the new keyboards are getting I won’t even consider upgrading until Apple does something with it; besides my MBP is still working pretty great as long as I don’t ask much graphic processing from it!

 

13 Macbook pro with 16gb ram, perfect portability, 15 is too bulky.
Ultrawide monitor to dock at work and home!
A dedicated gaming pc connected at home to the same monitor because gaming on mac is a joke.

 

Mac laptop. A mac is the easiest to setup. And as a new dev you need to be focusing on learning development. Not messing around in windows/linux.

Separate windows desktop rig for gaming. You can hack it later and multiboot linux when/if you get the urge to do so.

 

I would always buy a Mac for a DEV machine, but the spec and price of the 13” MacBook Pro and MacBook Air looks very similar now so I don’t know which one to recommend. For games, I personally prefer the simplicity of a console as I know the game will work and it’s much cheaper than a gaming pc.

 

Definitely in a similar boat, hard to shake the Macbook + Switch/PS4 combo.

 

The gaming problem is being solved with the GeForce Now and Stadia services. Anything that can stream video can run games at full quality.

I used to prefer a Mac or Linux OS, but Windows 10 has won me over.

 

First, laptops:

I am currently rocking a maxed out xps 13, the 2015 model (aka a model before they were "amazing")

Unfortunately, after the 8-month mark or so, it started giving me problems. lots of them, and now the only way I can use the device is by running Linux on it (I am a windows guy). It works, but not ideally ¯\_(ツ)_/¯

If I could get a new one right now, I would... wait.
I would love to have a mac (had one as my previous work laptop) but the keyboard issues right now are awful (for example, on my work laptop, the "t" button would always click twice. I clicked backspace by reflex every time I typed "t" after a while)

A lot of development tools require a MacOS machine, and since I work w/ react native sometimes, I would rather have a Mac as my daily driver.
(I find myself developing on my laptop the most personally. It's really convenient)

As for Desktop:

I would go for a custom built Windows Machine.
I don't do much programming on my desktop, but if I do, it's nothing that needs a mac. (on my laptop I sometimes develop apps, so I need the MacOS support to develop for iOS)

Moreover, I prefer to keep my desktop for light gaming. So a decent Windows machine wins over a mac.

Those are my two cents :P

tl;dr:

Laptop -> I would prefer a Mac, I do most of my development on my laptop.

Desktop -> Windows, I use it for gaming mostly, and some programming. But nothing that requires a mac.

 

I'd probably go with an ultra wide screen, and something like the MSI Cubi Silent 3 S attached to the monitor mount. Would make an excellent workstation(albeit not the most powerful one) with passive cooling and little cable management. Install CentOS on it and you're good to go.

I've recently got one myself but for another purpose. Might need to change that.

 

If I had to replace my computing infrastructure today, I'd by a refurbished 15" mid-2015 MacBook Pro to replace the one I'm typing on now (the newer models have atrocious keyboards) and an HPE MicroServer to replace the one running upstairs. I have a few tools that tie me strongly to macOS, otherwise I'd probably go to Windows at this point.

I doubt I'll run Linux on the desktop again, despite doing so for well over a decade.

 

I thought long and hard about building a Hackintosh setup for my new PC, but ultimately decided against it. I have a 2013 MBP that is still running strong, but with each update, it struggles a little bit more. I can't justify buying the kind of specs I want in a DEV machine for a new MBP, so unless my employer wants to pay for it...not gonna happen :(

Hackintosh was really tempting and would be really cool if I got it to work, but the fact that it can fail without reason pretty much at any time makes it unacceptable for anything except bragging about how you have a Hackintosh

 

I've used both Windows and Mac for coding, and as much as I love my PC, my favorite and currently used setup is on my Mac laptop.
I have a work Mac laptop that I will carry with me to work if I go in, and when I work from home I have it set up so I just plug it in my USB hub that's connected to a keyboard, screen, and mouse.

If I go in to work, it's the same setup, except not as good equipment. An Amazon Basics keyboard and mouse hooked up to a Sony monitor.

I use to game, and during those days I had a USB "switcher". If I worked, I press the button and the accessories were on the laptop. if I wanted to play some Roller Coaster Tycoon, I press the button and go on my Windows.

What's yours? Are you debating a setup?

 

I personally would get a Dell Latitude, they support both Windows & Linux, have good battery life, have good screens, have good keyboard, they are light weighted and they have a reasonable price.

My setup goes like this: Desktop (Windows) Gaming/Visual Studio, Laptop (Linux) Work

 

Currently, I am using a MacBook Pro for my working purpose. However as many said already, I am super unhappy with their repair tactics. Also, their Butterfly keyboard sucks a lot!
In future, I might buy Dell XPS, Razer Stealth or Asus Zenbook depending on the price: value ratio.

As for gaming, I do have a separate desktop RIG which focuses on gaming.

 

I currently have a gaming desktop running Windows 10 and a separate work laptop running Arch Linux, and I'm pretty happy with the setup. The only downside for me is that I'm always too lazy to re-plug the peripherals and this means I almost never use my desk when working from home. If I were to do it all over again (and didn't have a wife who recently uses the desktop more than me :D), I would consider having just a gaming laptop with separate users and taming WSL.

 

I'm pretty ok with my current setup (I have an old Macbook Pro that I attach to an external monitor when I'm home).

What PC would I buy? The newest Dell XPS that has the webcam on top (at last!). I'm sure you can fit either Windows or Linux on there.

What Mac would I buy? I'd wait the new Macbook Pro 2019 to see if they finally fixed the keyboard problems and hopefully restored the esc key and maybe added some ports other than a couple of USB-C 😅

Can't help you with desktops and or gaming computers, don't know.

 

I use a entry-level gaming laptop, Windows for playing games and Linux Mint for coding.

 

My 2 cents, you get so much more value for a desktop and between docker and linux subsystem for windows I think Windows has become a great choice for devs especially if you like gaming :)

 

That new Razer with the 64gb ram, 512gb add and rtx2070 maxq is what is go for..I have the earlier version... Love it, good key board for both gaming and coding.

 

2013 15" MacBook-Pro for all the things! The latest is also nice but the keyboard is just too fragile.

 

Isn't it absurd that we're holding on for dear life to older Macbook Pros because the new one are faulty?

What happened to Apple? 😂

I mean, the keyboard is the primary input, one thing they had to get right :D

 

I wouldn't mind having a touch-only-keyboard if it means less repairs and more stability. They nailed the touch-pad, so why not go super-bold and ditch the buttons. Like on the first Surface-Machines, but better.
If I could work in a terminal-based environment I'd only get an iPad and ssh into everything.
Recently I wanted to do some light coding (Elixir) on vacation, so I got a cheap virtual server and a small BT-keyboard for the iPad. I'm used to VIM-Keys anyway, so it was a good dev-experience. I used Tmux to have a split view with Vim and IEX, and connected the server to the Github-repo. After a little getting-used-to it worked really well!

.

I wouldn't mind having a touch-only-keyboard if it means less repairs and more stability.

The thing is that the previous keyboard had zero problems, they can just re-use it :D

They nailed the touch-pad, so why not go super-bold and ditch the buttons. Like on the first Surface-Machines, but better.

I don't know. There's a difference between a tablet and a laptop, maybe in the future they will converge but I don't see the keyboard disappearing anytime soon for every kind of user. Maybe the Surface Pro is the right device, maybe not.

I think there's space in the market for tablets, hybrids and laptops right now

 
  • mac 13", 2x25" screen, StarTech monitor/power hub
  • same setup for work vs home
  • windows pc (i5, 16GB RAM) for gaming, yeah I am playing only one game (bf4), so this setup is pretty simple
 
 
Classic DEV Post from Mar 13

The Internet Lottery™ for content creators

How luck plays a vital role in the success of content.

Ryosuke profile image
For over 10 years now, I've been developing innovative cannabis technology, and producing engaging marijuana-centric media to entertain and educate stoned masses.