26

I am enrolled in a Front End Developer course that starts in January. I need a laptop for the class. I am trying to decide between a Windows machine or a MacBook Pro. The class info says that either are acceptable. Will either environment offer me an advantage when doing front-end development or are they both identical? Basically, will both platforms offer equal access to the programming tools I will use or will one platform offer more compatibility?

The course will use HTML5, CSS, Javascript, AJAX, PHP, SASS, jQuery, Angular, Git, and Photoshop.

  • 2
    I ended up purchasing a Macbook Pro 15 retina (mid 2015) laptop. Several factors played into this choice. The main two factors are: 1) The people who will be mentoring me alongside the class all use Macbook Pros so following their instructions will be easier. 2) It turns out that I get a big discount from apple through my place of employment. – Richard Troester Sep 24 '15 at 1:17
  • Why do they discriminate Linux? You can seamlessly do front-end develoment on Linux, even opening Photoshop files through Adobe Extract, Wine or VirtualBox. – niutech Feb 8 '16 at 0:33
17

I'm going against the tide here: OS X. It can be easier to use for development stuff (especially web, can't vouch for .NET development and other such Microsoft technologies.), and it doesn't cost as much. Stop looking at me funny, there's data to come...

First, here's why I like OS X more:

  • It has a native UNIX terminal which, in my experience, in most cases works like a standard Linux command line in terms of built in commands (by which I mean most things I find on the Internet can be copy-pasted into my terminal and work fine with minimal modification).

    You also have Homebrew, which allows you to easily install things that aren't bundled with OS X - think wget, htop, etc.

  • Because it's UNIX-based, lots of things just work where you would have to fiddle with them in Windows. Also, OS X plays much nicer with Git-type tools, and really any collaboration. I can't count how many times I've had to revert a change from a Windows user that adds strange linebreaks.

    These are all things that can be overcome with some tinkering... but it's still tinkering when you could be racking up billable hours.

  • I personally like it better. Things make more sense, but that could be because I haven't used Windows as much as most people.

Now, the price argument: I would argue that OS X does not cost that much more than Windows. I know this is radical, but hear me out. Let's look at resale prices on Windows machines from 2010 - see this eBay search. That's for Windows laptops from 2010, five years ago.

I'm seeing ~$150-200 max unless you have an AlienWare laptop. AlienWare machines are really expensive and you probably won't be buying one for development work.

Now let's look at 2010 MacBook Pros. Outside of the for-parts machines (some of which still are selling for $300), I'm seeing $500 to $700. Even some for-parts MacBooks are selling for more than Windows laptops from the same year.

Note that some of these eBay links have expired, I didn't know eBay did that. I'll be trying to replace them with something firmer in the future.

Going through the first couple laptops on the Windows list:

I could keep going, and you should to make an informed purchase decision, but doing this all manually is a lot of work. From those 6 most recently sold, there's an average drop of $1272 over the five years.

Now we look at the 2010 MacBook Pros. The first 6:

Adding up those six, I get $1064 average loss over those five years. A couple notes on the data gathering:

  • I'd give a larger sample size if I thought it wouldn't make me go insane. If you want to do some research and add to the list, please do. I'll accept the edit.

    Still, this is a phenomenon I've been observing for years. MacBooks simply hold their value better.

  • I tried to be fairly generous with adding investments to the purchase price for people who upgraded their MacBooks. I didn't do that with Windows machines (didn't even take it into account, I always assumed the base model), and OS X still edged out Windows by a couple hundred dollars.

  • Some of the Windows machines were from 2008/2009. I realize that, but I don't think it messed with the data that much.

  • Resale prices on today's Windows machines may be higher in the future... but I don't think so. That's a decision you have to make.

Overall, the decision you have to make isn't about cost, but how much you want to invest in a machine. There is capital tied up in your laptop, and it's often more with OS X machines. That's a valid point against buying MacBooks.

Another thing: I was assuming you're buying your machine new. Don't do that. I have bought my MacBooks used off Craigslist - a 2009 13" Pro for $500 a few years back, and my current 2012 13" for $800 a few years ago. I could still get at least $500 out of it. Standard disclaimers apply, Craigslist is creepy. Bring a friend and meet in public.

If Craigslist is too creepy for you (don't blame you), buy a refurbished machine directly from Apple. They're better than a new machine and have 10-25% discounts. I've bought a MacBook Air, iPad, and an iPod Touch from there, and haven't had an issue with any of them.

| improve this answer | |
  • 2
    Take into account that students have often free Windows because of the participation in the Microsoft DreamSpark. You can even buy second-hand notebook without hdd and invest money for bigger ssd. – belford Sep 23 '15 at 10:10
  • @belford I thought about that, but it's balanced out by OS X always being free, with free upgrades for the life of the machine (2009 MacBook Pros were still getting upgrades). As for buying a second-hand one, you could do the same with OS X - I'm fairly certain that half of the for-parts ones on eBay just need a new HDD or HDD controller, possibly a new battery. – Undo Sep 23 '15 at 13:13
  • Forget about MacBook, it is overpriced, even when on sale. Go get a mid-range Linux laptop with a lot of RAM. You can cut PSD files using Adobe Extract or open Photoshop using Wine or VirtualBox. – niutech Feb 8 '16 at 0:34
  • @niutech Did you read the answer? I'm not saying it's not "overpriced" at retail, I'm saying that you can recoup far more of that investment than you can with any other laptop - and you don't have to deal with Wine & friends when you want to get stuff done. – Undo Feb 8 '16 at 3:42
  • uhhhh for front end development I buy my laptops at around $150 dollars. Replace it with a non OEM battery and its basically works great. Also I own both a mac and pc and I will say mac's are way overrated but unix is nice. Just run linux if you want a real server environment. – William Dec 10 '18 at 1:42
8

A short answer would be a Windows machine.

Why?

Because it is cheaper than a Mac machine, and both the machines offer the same support, and none have any significant advantages over the other when it comes to web dev. or specifically front-end development.

This Reddit thread might also be of some help for you to decide.

So, if money is not a burden, then you can go for either one, without any bias when it comes to ease of development tools.

| improve this answer | |
  • 1
    I'd have to disagree with the price point - see my answer. – Undo Sep 23 '15 at 13:17
  • Damn, that's a nice analysis. I've considered the showroom price in my answer. Nevertheless, a job well done on the answer @Undo – Dawny33 Sep 23 '15 at 13:23
7

Personally, I would go with a Mac here, but that is because it is what I am familiar with for development work. I have been a Windows user since the 90s, and still have a Windows machine, but since 2004 (ish) I have used OS X for professional work (multiple Macbook Pros and Mac Minis) and have never regretted it once the initial adjustment period was over.

I will point something out that has not been mentioned, if you you pick a Macbook Pro you still have the option to legally use Windows in a VM (I have a Windows 10 VM on my MBP) or via Bootcamp. If you pick a Windows laptop then you no longer have OS X as a (legal, non-hacky) option. So, ignoring the cost aspect, the Macbook Pro leaves your options open in terms of what OS to use.

Generally, with the stated goal of learning Front End Development, I would recommend that you choose whatever represents the least impediment to your learning. If you are most comfortable with Windows, then go with that, if you are more comfortable with OS X, then that should be your choice.

Now, with that said, this is a hardware recommendation site so I should tackle the question from that point of view rather than ease of use and the OS options.

First on my list, is build quality. There are some non-Apple models that approach the build quality of a Macbook Pro, but you will need to do some research - consistency between model refreshes can be a problem even for normally reliable brands. I have used multiple models over multiple years from Apple and they are very, very consistent in this regard.

Perhaps even more telling: I have had 4 Macbook Pros provided for me by my employer, but for about 18 months that was not the case and I had to buy my own laptop. I evaluated many, many options (several years previously I did the same thing and ended up with a Sony). In the end, none of the models I evaluated could touch the Mac for build quality. I purchased the MBP with my own money and can honestly say that I felt no regret at all, I felt I had gotten value - it's a good acid test for anything - when you fork over the money, do you feel ripped off or do you feel satisfaction with your purchase?

Second in my list comes the keyboard and trackpad. Make sure you use the keyboard and trackpad in person, don't rely on reviews - it's too much of a personal preference in terms of tactile response, feedback etc. - only you know what laptop "feels right" when you are using it. You are going to do a lot of typing on it, make sure it feels good. Note: here is where I am mostly "locked in" to Mac laptops now - their keyboards and trackpads are how I expect things to work, anything that fails to hit those same notes just feels wrong.

Next, the screen. The retina screen tech is very nice and the extra real estate helps if you aren't going to be plugging it into external monitors. Yes, you can get non-Mac laptops to match the resolutions, but they won't come cheap. I used to detest glossy screens, but the retinas are nice enough to convince me to give them a shot - so far, so good.

Finally, size and weight. I am not a small person, and I find the 15" MBP to be the perfect trade off in terms of size versus functionality in a laptop. I have tried out smaller laptops and found the keyboard and the screen too cramped. Plus, they keep making it smaller and lighter - my 2015 MBP is a lot better than my 2009 in that regard (I no longer have my 2004 model to compare unfortunately). That being said - you have to lug this thing around, so make sure you won't be looking enviously at people with 11" ultrabooks when doing so.

It might seem odd that I don't mention memory, CPU or disk. I don't mention them because if you pick a recent model MBP it won't be a concern for the work you mentioned (maybe for Photoshop), and if you pick something else you will be looking to match or exceed those specifications in any case. Just make sure you have an SSD - it's just not worth it not to these days.

| improve this answer | |
4
  1. In terms of price it would be better to choose Windows.

  2. Front-end developers often use Macs because of the healthy balance between unix-based system and "working out of the box".

  3. There was an option to install Photoshop CS2 on Ubuntu. I wish it could be possible for every version :D. http://www.omgubuntu.co.uk/2013/01/photoshop-cs2-available-for-free-works-fine-in-wine

According to @Adam's answer, I can say that using Sublime Text with some Live Reload plugin will do a better job than Notepad++.

In your case the most important part is connected with browser compatibility rather than system itself. The only program that needs better hardware is Photoshop but it also depends on the size of the project.

Console in Windows is not a big problem because you can do a lot of things in the browser's built-in inspector.

Running a server on your localhost is easy too. They are plenty of tools like XAMPP which contain basic software in one package.

| improve this answer | |
  • Can you explain point 2 in more depth? I noticed while trying to research an answer myself that most front end developers use macbooks and many favor the pro model line. I would really like to understand why. – Richard Troester Sep 18 '15 at 1:55
  • First of all: Being successful as a front end developer does not depend on the kind of computer you have, especially in the beginning. The most likely reason to hate Windows is a terminal & interation with the OS. You can check this topic also: teamtreehouse.com/community/why-mac-not-pc. I would like to recommend installing Ubuntu as a second OS just for test purposes. For now, you do not have to worry much about it. The power of the command line lies in the fact that many things can be done faster and it forces you to understand the topic. – belford Sep 18 '15 at 9:32
  • If we are talking about useful tools... Check emmet.io. – belford Sep 18 '15 at 9:33
  • Having read the treehouse forum p osts, I see that some tools either don't work or are simply hampered in functionality due to the windows command prompt. So I could get a windows machine and install Ubuntu on it as a second os and use that as my primary development environment. Would running Ubuntu in a virtual machine work? – Richard Troester Sep 18 '15 at 15:36
  • Sure. Being familiar with the Linux command line is always a plus. If you are curious about the terminology, this question may be helpful: unix.stackexchange.com/questions/4126/… – belford Sep 18 '15 at 15:39
2

I strongly suggest a Windows machine. There are a bunch of reasons for this, some more important than others, so here goes:

Pricing
Windows machines are usually significantly cheaper than Macs by at least $300. Since you're just doing web dev and probably some slightly heavy multitasking, no need for a big price tag.

Software
The big one, Notepad++, isn't available for Mac. This text editor has FTP Sync which allows you to connect to a database and live edit and reupload files — a huge time-saver. That and the hundreds of other great features it has that make writing things like HTML, CSS, or JS a breeze.

Hardware
This is where the biggest feats are.
You, of course, have a far larger selection of laptop specs with Windows. Although a Mac might do just fine for you, you still might want less of something you won't need much of (e.g. video capabilities) so you won't have to pay as much.

The other huge thing about Windows machines is the choice of a touch screen and similar technologies. A touch screen is an excellent thing to have at your disposal as a web developer because you'll need to develop for mobile, so all you'll need to do is use your laptop as if it were a big phone or tablet. Without this, mobile development can be a massive pain.

Macbooks are famous for having almost none of the ports people need for everyday activities (as I'll state below, compatibility isn't great). With a Windows machine, you, again, have a wide selection of USB ports, video/audio ports, etc. This may not be a big deal for many, but I personally find it a great benefit.

Other
Windows is the most widely used OS in business (which is where web dev falls under) because of it's dependability and compatibility. Very few things are compatible with OSX compared to Windows and that's a big deal when it comes to software availability, workflows, and general productivity in business.


Now, keep in mind that Mac isn't terrible either. It does have some extremely useful straight-out-of-the-box features like an eyedropper and the ability to view every window you have open at the same time (good for organization).

| improve this answer | |
1

I'd say you should choose a Windows platform.

Windows, in general, will give you a more flexible platform to work from.

  • The vast majority of programs work with Windows (not that I have stats for this - but when looking for software, the most common download type seems to be for Windows)
  • It's dead easy to run a web server off a Windows platform: either Microsoft's IIS, or Apache using a WAMP stack will work fine. I run WampServer on my own computer.
  • If you can, get one with Windows 10. WinX now comes with some of the advanced features that a Mac has; as Adam mentions that you can view all open windows simultaneously, it's worth noting that X can do this too.
  • There is a much higher degree of compatibility with Windows in many areas than there is with Mac OS X.
  • You get flexibility in specification that a Macbook simply can't parallel; there are laptops designed so you can take them apart and change any component inside them.
  • As Adam rightly mentions, Windows is used in 99% of web development in the business world. If you get used to OS X, then you'll have to re-learn where everything is when you get a job.

Of course, everyone mentions that Windows is also the cheaper option - but it's a significant point for students, so it really is worth strong consideration.


If you're looking for a concrete recommendation, I'd recommend my laptop, which is an Acer Aspire E1-572. (NB: the linked page doesn't quite reflect the laptop I have, but it's pretty close.) Quoting the label I've got in front of me:

  • Intel Core i3-4010U (1.7 GHz, 3 MB L3 cache)
  • Intel HD Graphics 4400, up to 1792 MB Dynamic Video Memory
  • 15.6" HD LED LCD
  • 8GB DDR3 L Memory
  • 1000 GB HDD
  • DVD-Super Multi DL drive

Plus a number of other, less relevant specs. It's not a massively powered machine, but it's certainly adequate for front-end development, which is what I use it for regularly. The lower power and spec also serves to reduce the price: I got mine for around £300.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.