Ask HN: MacBook Air for Web Development?

12 points by NoahBuscher ↗ HN
Okay... This may be a bit late as I already placed my order for a MacBook Air 13" 8gb RAM, 126gb SSD [latest model] (phew!), but I am wondering if you see it as a fit laptop for web development? I'm keeping my 15.6" Ubuntu Dell Inspiron laptop, but don't intend on using it much.

Also, are there any apps I NEED to know about if I'm going to be coding on a MacBook Air? If so, which ones? I'm mainly a Node backend developer.

55 comments

[ 5.4 ms ] story [ 31.2 ms ] thread
You'll want iTerm2 (free) as well as a good editor (I use SublimeText).
Awesome! Thanks.

I already have SublimeText and have been using it for a while, so I believe I'll continue to do so on the Mac.

After purchasing my Air (same specs as you, apart from SSD, mine is 256GB), I sold pretty much every computer I had because I just stopped using them. I do a lot of Ruby on Rails and AngularJS development + a bit of NodeJS from time to time. One thing I'd recommend is having an external monitor (preferably somewhere in 24"-27") because 13" IS to small to comfortably work on every day, 8+ hours a day.

Regarding programs, well, apart from your favourite editor I recommend an application launcher (http://www.alfredapp.com/) plus a terminal replacement (http://iterm2.com/). Plus a ton of necessary tools to work with terminal, such as git, homebrew, oh-my-zsh,...

Good luck with your new Air! :)

Thanks for the awesome suggestions! I'll look into monitors.

Can I ask what Homebrew is? I've seen it on GitHub, but I'm a bit confused. Is is comparable to apt-get?

It's an OS X package manager. Indeed, it is comparable to Aptitude.

Edit: My app recommendation is Spectacle (a window manager) http://spectacleapp.com/

I also have an external display but I actually prefer just the (11") air. Because with less on the screen it lets me focus better. Very personal though. But it works well for me.
Neat perspective. I'll have to wait to compare it to my existing laptop (15.6 inches).
Vagrant is great for dev. Sublime is awesome and atom is pretty decent too. I use Smultron for short text notes. I don't use iTerm2 ... just the built-in terminal.

P.S. I use a 2010 Macbook Pro (upgraded to 16 GB of RAM). Looking to upgrade as soon as the new Intel chips get released/offered in a Macbook. I'm happy with this dinosaur of a machine except I wish I had more cores for when I run VMs.

Vagrant looks awesome! I'll totally get that.

I currently use SublimeText (been using it for about a year or so), as I'm just so used to it, and I've already forked over the money. When ST 4 comes around, I'll totally look into starting with Atom.

Nice! This one is a Haswell. I never used a computer with a Haswell before, so this is new to me. Hoping for the best!

I snagged the same machine + the 256GB SSD upgrade two weeks ago and am quite pleased (I spend the bulk of my day in Meteor). Coming from a 15" MBP I was a bit nervous about screen real estate, but the 13" is plenty. One side benefit I didn't expect was the portability of the thing got me away from the desk more (moving around is a good thing imho). So...damn...light!
Awesome! My current computer is a BEAST (in terms of size - definitely not power), so portability will be pretty new to me.
Seconded on the screen real estate - I went from a desktop setup with 2 widescreen monitors, to the MBA and I'm more productive than ever.
Seriously, yes.

I bought the cheapest Air I could get (4 gig, 13 inch) and its been a dream. In the end my logic really was that, If what I'm creating (for the web) doesn't perform fantastically on this laptop, then its not worth shipping out.

So no regrets here.

Awesome! That's exactly what I wanted to hear.
I bought Air (2013 model) 13" 256Gb and 4gigs of RAM. Using following iTerm2, Photoshop, Safari (occasionally Chrome when some web videos are not working on safari because of flash).

I own 24" monitor but i used it only couple times with macbook, for me 13" is perfect size. I do rails, php and some web design and macbook air is just perfect for it.

Btw being able to take you laptop outside and not have to worry for power is just awesome.

Sweet! Battery life on my existing laptop sucks, and Ubuntu is a power hog. As noted, I'm getting a 8gb version, but are you finding 4gb is enough?
I've found 4GB to be more than enough. I don't use a ton of memory-hungry software at once, though. Chrome with a few tabs, one or two terminal tabs (iTerm 2 sliced up into ~3 sections), a few Node processes, Skype, and Spotify is what my daily userspace software usage looks like. I fire up Photoshop every now and again, and my laptop doesn't miss a beat, even with all of the above running. I literally never find myself wishing I had more RAM.
Wow! Great to hear! I just wanted to be sure I had a buffer in the event I ever needed to edit a longer video or wanted to do some 3D work in Blender.
Given that the MBA RAM is not upgradable, it'd be wise to max it out - just in case.
You should be fine for sure. Some software you need to be using (in my opinion, at least):

- iTerm 2 (use ZSH for your shell and oh-my-zsh to extend it);

- Sublime (although it looks like abandonware because it hasn't been updated since December of last year);

- Dash for reading documentation;

- Hub (https://github.com/github/hub) to make Git better;

- Homesick (https://github.com/technicalpickles/homesick) for keeping your dotfiles backed up properly

Some other things you may want to look into for setting up your dev env:

- Boxen (https://boxen.github.com/_

- Laptop by Thoughbot (https://github.com/thoughtbot/laptop)

- Homebrew (this one's kind of obvious)

Thanks, Devin! Bookmarked.

Sad to hear about SublimeText. It's a really good project in my opinion, but I have to agree with you.

I still use Sublime every day, and probably will continue to do so until Atom becomes usable. iTerm2 is awesome, but zsh hasn't won me over yet.

I'd like to add Alfred to this list. Aside from my MacBook Air itself, it's probably the best purchase I've ever made.

This... This is a feel-good comment. +1
With regards to Sublime Text, there's a few forum posts asking whether or not its been abandoned. So far the only response was back in March (http://www.sublimetext.com/forum/viewtopic.php?f=2&t=15477&p...), and not from the creator (Jon), but those handling sales enquiries.

All up, it seems the creator has taken a break and momentum has stalled. Sad, since I can't think of an editor I like as much as Sublime.

Hmm... I really do hope they start up again. It's by far my most used application and it'd kill me to find another editor I like as much as it.

I have tried Atom in the past, but it just felt "thin" and "flimsy". Maybe it's because I've been using ST for so long I just am automatically against any other project that tries to compete for the market share. :)

Huge Sublime fan here, recently switched to Atom. With the new React-driven editor buffers, it feels much more native. Give it another spin! Properly configured, it's pretty much at parity with Sublime. Insane momentum behind it with new plugins every day.

And if you don't like something, just pop open DevTools and dive in! A lot to be said for that.

Okay. I'll try it out, but no promises. ;)
What exactly is missing from SublimeText 3 that causes people to think development has been abandoned?

It seems to work great? Do we really need our text editors on a rapid release cycle?

No - There's nothing wrong with it. But they have to continue to release builds at least or operating systems may not support it without using a VM and an older version of the OS.

That's my main concern at the moment.

Sublime Text 3 is still in beta. It doesn't need a new release but it's been 6 months since the last build, so if it's feature-complete it should be reflected with a major, stable 3.0 release.
I know this is kinda late, but I would go for 8GB RAM and 256GB if possible. 126GB is too little for me, I own rMBP 13" with 512GB (roughly 500GB free for storage), but even with that I have used 200GB. I don't store musics, pictures, etc. It is just my development folder. 256GB will give you more room to breath although you can just use external.
The order already shipped, but I have an array of flash drives and most of my files are online.
I agree, 126GB is far too little the moment you have to start using a virtual machine for anything. Suddenly your options are to swap appliances (if using more than one) or try and run from an external drive. Both aren't fantastic options...
Do you have any experience running a VM from an external drive? Is there a significant speed decrease from an internal SSD?
I'm going to go against the grain here, but if you're planning on using it at a desk most of the time, I think it's not necessarily the best option.

The primary reason is that it's underpowered. A number of my co-workers used them until they got really frustrated with resource starvation slowing them down, and they switched to MBPs. Starting up Firebug on an Air on a sufficiently complex page or a webpage in Chrome that uses Flash can bring the thing to its knees.

The second thing is that I'm a big fan of developers developing in an environment analogous to their deployment environment. Chances are pretty good that as a Node developer, you'll be deploying on Linux, not on OS X. OS X does a good Linux impression, but there are a lot of errata that you're going to run into. Running a VM on an Air is going to really tax it. As the "Linux user" in my group, I tend to know what kinds of deployment issues the software will have, while my co-workers struggle with a host of OS X-specific bugs that I never contend with.

I use a pretty oldschool setup - headless Linux server that I work on via SSH/Samba. It's not for everyone, but it lets me work on my desktop (custom built beast of a Windows machine), Chromebook, Linux laptop, MBP, or even from more exotic locations (I've fixed production bugs from my phone before, including running test suites). Having your full development environment a) mimic your production environment, and b) be accessible from anywhere that you can get SSH is amazing.

That said, the MBA is a great machine if you're going to be moving around a lot. The form factor and weight are significant benefits, and the battery life is remarkable given its size.

Great post.

I totally agree with analogous environments, and that's the reason I'm keeping my Ubuntu laptop.

I do move around quite a bit, and my current computer only has 6gb RAM and an i3, so they're both upgrades, and I usually never run into issues regarding CPU usage or RAM usage.

I primarily develop Node on OSX and have no issues with running multiple linux VM's on Vagrant. (2013 Air, 16GB RAM, i7 Haswell)
How did you get 16gb RAM on an Air? I only saw the option for 8.
This isn't the case depending on how new your MBA is, or what the specs are. Generally the top of the line MBA has way more then enough power to run a linux VM.
I have a 2011 Macbook Air whose CPU has more than enough power to handle anything you throw at it.

The huge downside is that I made the mistake of getting the 128gb option, which frankly is far too little. VM images, Photoshop, Office, and lots of little project files all take up a surprisingly large amount of space.

If you want to go for the MBA, get at least 256gb.

Darn! I think I'm good for now, though, as I don't use VMs, PhotoShop, and I use .md files for all my documents, so I never have Office installed (though I have a license).

What CPU does yours have? I bought the i5 Haswell.

I have the same machine and I'm doing C++, OpenGL development and I'm very happy. The portability is great. Combine with GitHub and I can easily switch to my work horse machine when I am stationary at home.

ST3, iTerm 2 2.0, XCode, Dash.

I went with the MBP 13" because...

-You get 2 thunderbolt ports instead of 1, so you can run dual external monitors. (Yes the air can run dual apple thunderbolt screens but that's stupid - glossy, overpriced, etc).

-Retina resolution = more lines of code

If neither of those matter and you don't need 16gb of ram, then the air offers less weight and better battery.

Yeah. I'm totally okay without Retina, though it does look pretty sweet, and I currently don't have a use for an external monitor - I'll need to see the Air in person before I make the decision to buy. :)
To be honest,128G is obviously not enough, dont make mistake like me.
I kind of figured that, but I have almost no pictures and definitely no videos.

Is it possible to upgrade the SSD after purchase?

I think the machine is good enough. Portable and Fast. A little short on storage space, but if you don't hog it by huge files or photos then that is not a problem.

Also, I will add the following to the list of apps you should have:

- Flycut (Clipboard Manager)

- GasMask (host file editor)

- Sequel Pro (if you're using MySQL)

- Dotfiles by Mathias Bynens (https://github.com/mathiasbynens/dotfiles)

- Any of your favorite task/to-do list manager.

Feel free to add more.

Great suggestions!

If you're going to be using Mongo, I highly recommend RoboMongo.

Vagrant/VirtualBox is the top of the list, I usually run a 64bit Ubuntu 13.10 instance for dev and production.
+1 for a fellow Ubuntu user.

I currently don't have a use for a VM, as I just deploy to a staging server after local testing, but I'll keep those in mind!