top | item 2731321

Ask HN: What is your primary development machine?

24 points| gacba | 14 years ago | reply

At a recent conference I attended, I noticed that 80+% of the attendees all had Macs of one flavor or another. Since this was a developer-centric conference, I wondered if this is a general trend for the community as a whole to migrate to Cupertino or is there a more even distribution in a wider group...

For any pedants in the group: "Primary" here means the machine you spend 80% or more of your time on doing development work. Not surfing, watching Netflix, or anything else. Development only.

59 comments

order
[+] simonsarris|14 years ago|reply
I'm always really surprised to see the large representation of Macs in the hacker community.

Apple seems to be loved by consumers, which no doubt makes people want to target things like the iPhone. But I admit I haven't bought anything from them because from my perspective their policies seem to be generally hostile to developers, and they seem to advocate the most-walled garden that they can get away with.

I'm guessing though that my views are perhaps either way off kilter, or people just don't mind as much as I do about these sort of things?

[+] zdw|14 years ago|reply
The point of people using OS X is that it works out of the box with things like power management, has great software design, runs a legitimate unix CLI, and has solid commercial apps like MS Office and Adobe CS.

In the portable realm other OS's fail on at least some/all of these points, hence all the Mac laptop users.

[+] sbalea|14 years ago|reply
Unix core with a nice UI, ability to run professional applications, can be used to develop for all major platforms, either desktop or mobile.
[+] bmelton|14 years ago|reply
Developing FOR the Apple garden is different than developing WITHIN the Apple garden.

Simply put, the Mac is probably the best development platform for a number of reasons. The hardware is generally top notch, the platform is, despite a lot of add-ons, nix-based (which means you have Vim, access to perl, python, ruby, Bash shell), can be dual-booted into Windows for access to Windows-only tools (Visual Studio, for example) and IS the only acceptable development platform for Mac tools.

In short, if I want to do Mac development, I have to have a Mac; and there's little that the Mac can't do for any other platforms.

[+] benologist|14 years ago|reply
Macbook Air. Really hoping the rumors of core i7 versions come true in the next couple weeks, and hopefully with more ram. That would make it a really killer machine, especially if something like that new Vaio's power dock came out to bolster it.

http://www.engadget.com/2011/06/28/sonys-new-vaio-z-ultrapor...

[+] modoc|14 years ago|reply
Yeah, if I could get the Air with 8 GB of RAM it would be REALLY tempting... (Oracle + Eclipse + JBoss etc... eats a lot of RAM).
[+] athst|14 years ago|reply
I can't wait to see what the new ones look like. I've been on the fence between going with Macbook Pro w/SSD or going with Macbook Air, and it feels like they're taking forever to get the new ones out.
[+] proxwell|14 years ago|reply
Maxed out MacBook Air 11" (1.6Ghz, 4G RAM). It works great for my development workflow. I do mostly Python, Plone, and Django apps and a lot of sysadmin work.

I use TextMate for my editor so I don't have the crazy RAM requirements of working with the java-based editing tools like Eclipse.

Looking forward to picking up the new MacBook Air version as soon as it's released.

[+] Pewpewarrows|14 years ago|reply
Currently using a netbook with Ubuntu 11.04 on it. Absolutely hating that I updated, because Unity is just barely able to run on it. I'm in the middle of a few projects, otherwise I'd take the time to either try out Unity 2D or go for something like Arch or Fedora.

But, I've already decided to pick-up a Macbook Air as soon as the product line is refreshed. I _want_ to like Linux on the "desktop" and continue using it, but after using a Mac at work for development for the past several months the difference is really night and day. The applications just aren't even close to being where I'd need them to be, and I want to branch out beyond Android apps to iOS as well in my free time.

In short: as long you're not using Windows you're fine. Unless you're a game developer targeting Windows and/or Xbox. Then you really have no choice.

[+] drongo|14 years ago|reply
I hate Unity too, it's really ugly. I just disabled it - and now Ubuntu looks nice again :)
[+] berntb|14 years ago|reply
>>The applications just aren't even close to being where I'd need them to be

I am a Mac/Linux user. My application problem is the opposite -- apt on Ubuntu is much less pain than port on the Mac.

[+] ajdecon|14 years ago|reply
The only meaningful answer for me is "Linux server (via ssh)". I do primarily HPC-related work, and it's almost never useful for me to work on a machine that isn't at least connected to my compute cluster. I suppose I could compile and test code on my laptop, but only my trivial tests could really complete with any speed on just 8 cores. (I'm not bragging, btw: this is, in fact, tremendously annoying, and one of my ongoing side projects is building useful tests I don't need a 64-core cluster for.)

The physical keyboard I use most of the time is attached to a Dell laptop dual-booting Windows and Ubuntu, but 90% of the time the only thing I have up is a bunch of ssh sessions. All my development is done in vim, server-side.

[+] phamilton|14 years ago|reply
Similar situation here. I use an iMac, but all of my work is in vim, over ssh.

I use Mac because it gives me access to the greatest breadth of local tools when I need them.

[+] Symbol|14 years ago|reply
Lest all the Mac people tilt this playing field, I'll weigh in and say I have a Windows laptop and desktop. I run a VM on each for Ubuntu when I can, and use Cygwin when I can't (I'm looking at you, Oracle, and shaming you for your USB device support under VirtualBox). I'd run Linux all the time if the driver support was there for my POS laptop, but it's not and I doubt it ever will be: I simply need the optimized Windows drivers for the display and battery. You can get A LOT of mileage out of Cygwin and the ilk - plenty for my needs. As a desktop/web developer, bash/vim/make/python, etc. are but a click away. I'd only get a Mac for iOS development, and even then I would hate my life under XCode.
[+] jsatok|14 years ago|reply
15" Early 2011 MBP, 8GB Ram, SSD, 27" Apple LED. I also have an 8-core Mac Pro, but find myself rarely using since getting the latest MBP (which is crazy fast, and with the SSD, feels faster than the Mac Pro in daily use)
[+] modoc|14 years ago|reply
17" MBP, SSD, 30" external monitor. Perfect machine for my needs, portable for meetings, travel, and when I just want to work out on the deck, but plenty powerful with good screen real estate.
[+] jfoutz|14 years ago|reply
The top three most important features: 1.SSD 2.SSD 3.SSD

It's amazing. If you're contemplating getting a new machine, you can probably get by with adding an SSD. They're incredible.

[+] gacba|14 years ago|reply
What's your experience with the Atwood Failure Rate for SSDs?
[+] andrewcooke|14 years ago|reply
yup. was going to replace my aging x60. tried out an ssd and it's rocking like new.

[this is for personal work - python apps, web pages etc - for "real work" where i often need to run several vms, i have a nice little shoe-box-sized "desktop" with sub-100W amd 6 core, 2.5" raid + ssd, etc]

[+] harryh|14 years ago|reply
The default config for server engineers @ foursquare:

15" MBP, 2.2GHz quad-core i7, 8GB ram, 256GB SSD, external 24" dell flatscreen, external mouse and/or keyboard to taste.

[+] bartonfink|14 years ago|reply
At work, I use a SPARC Ultra 45 with Solaris 10. It's a POS.
[+] zdw|14 years ago|reply
5+ year old hardware generally is, unless you have modest requirements.

Going forward can probably run OpenIndiana or OpenBSD on it, as Solaris 11 doesn't support non-T or -M class Sparc hardware.

[+] LukeShu|14 years ago|reply
I wasn't exactly sure if to answer [GNU/]Linux Laptop or Desktop. I spend most the most physical time on the laptop, but more CPU time is spent on a desktop/server via ssh. (I voted laptop)

FWIW, the laptop is running Parabola (a derivative of Arch), and the desktop is running a modified Ubuntu (It was once Ubuntu 9.04, but I've kept it up to date via source, since 9.04 stopped receiving updates).

[+] dkarl|14 years ago|reply
At work: Debian on a desktop stowed under my desk. I do all my work in Screen sessions accessed via Putty on a Windows XP Thinkpad. (Spinning hard disk + antivirus == often dog slow.)

Outside work: Debian on a Thinkpad (SSD, and none of the other specs matter by comparison.) Hardware support is great. It was a hassle to get it set up, but now it's great, zero friction.

[+] watmough|14 years ago|reply
Old iMac, which is going to need to be replaced for post-iOS 4 development. I think it will have been my longest serving box ever, going on 4 years now, though the Mac Mini hooked to the TV is just a tad older.

Still using my day 1 MacBook, though much of it has been replaced at one time or another. Just a surfing and occasional light dev machine.

[+] rolleiflex|14 years ago|reply
15" i7 mbp, ssd, 20" external. my one and only machine. I expect it to last at least two more years with a 8gb ram upgrade.
[+] alex3t|14 years ago|reply
Macbook Pro over then 3 years but plan buy iMac(performance is better for me, I want keep open: RubyMine(for ror projects), AppCode(for iOS)(both java based apps) + mysql server + postgres server, also chrome with 10-20 tabs + firefox(for development I like firebug) + skype etc)
[+] wurf|14 years ago|reply
The real blocker for using a Mac as a development machine is the case insensitve filesystem HFS. Nothing causes more havoc than renaming CamelHumpsAreOK.java to CamelHumpsAreOk.java. People will be blocked for hours when pulling a change like this from the repository.
[+] plq|14 years ago|reply
Basically, a <2kg laptop pc with ~13" screen with a 64-bit Intel CPU with decent linux support for critical devices. This generally means Nvidia GPU and NICs with intel chipsets.

While I like my gear efficient and portable, I don't know why I'm still on Gentoo.

[+] sbalea|14 years ago|reply
Old (quite beefy at the time, but still solid) Mac Pro, with dual 30" Cinema displays and a full size keyboard.

Even older, first gen MBP as a backup / portable system.

Hosted Debian boxes/instances for deployment.

[+] yankcrime|14 years ago|reply
MacBook Air, 13.3", maxed out specification. It's usually hooked up to a 20" ACD at work or a 24" Dell at home.

Does quite literally everything I ask of it, and with aplomb. It's an amazing piece of kit.