linux developer thinking about going mac

Discussion in 'Buying Tips and Advice' started by alecbenzer, May 15, 2011.

  1. alecbenzer macrumors newbie

    Joined:
    May 2, 2010
    #1
    I'm a linux dev (as in I'm a developer that programs on a linux distro, not that I work on the linux kernel). I've been using linux for 3-4 years, but recently I've been considering buying a mac. Anyone have advice on what would be good for me, and/or reasons to (or to not) switch?
     
  2. w00d macrumors member

    Joined:
    Sep 14, 2010
    #2
    I spent a few years going Java development on Linux, but switched to Mac for my desktop. I still use Fedora in a VM fairly often on my desktop, just to keep some project environments isolated. I always deploy to a linux server somewhere.

    When I bought this 27" imac, I figured if I hated OSX, I could always install Linux and still have a sweet desktop machine with the imac. Could I build a machine with the same specs for less money? I would argue no, but even so, it's not worth it to me to worry about it in the grand scheme of things. Instead of messing around with hardware, I can spend that time coding and making money.

    If you're getting paid to write code, I think it is worth it to research and evaluate what tools will help you be the most productive. I found a ton of little things in OSX that I really like and have no plans to switch back to Linux on desktop anytime soon.

    The only way to find out is to try it for yourself.

    If you have any specific questions let me know and I will try to answer.
     
  3. Tomorrow macrumors 604

    Tomorrow

    Joined:
    Mar 2, 2008
    Location:
    Always a day away
    #3
    I've found that much of my linux knowledge also applies to Macs, particularly understanding terminal operations, permissions, filesystem structure, etc. You should be fine. :)
     
  4. alecbenzer thread starter macrumors newbie

    Joined:
    May 2, 2010
    #4
    I'm going to be a college freshmen next year so I'm not really working for production (should have probably clarified in the OP). My primary concern with switching is that I have a usable (or usablish, depending on the day) laptop sitting in front of me running linux, and I'm wondering if the 1k+ is going to be worth it. The battery on it is pretty meh, and I run into glitches occasionally, but it's here, and I feel like I'll have other, possibly more important things to spend money on as a college freshmen (though I am a cs major so I guess having a machine I'm happy with is pretty important).

    As far as specific questions, I guess one would be what mac I should get if I were to get one. Mbp, air, regular mac book (not really looking for a desktop atm - if I were going for a desktop I'd probably be building it for gaming so I wouldn't be using a mac), and which version? Would I be fine with the cheaper models or are there good reasons to go for the more expensive ones?

    Another question would be how easily can mac be set up for development? On a ubuntu install I kinda just apt-get install vim, build-essential, git and I've got most of what I need. I also use rvm, which works with just git, bash, and curl. Is getting a mac set up any more or less complicated? From stuff I've read, you need to like install Xcode to get some of the development stuff? (sounds annoying in principle but I guess it's not too much of a hassle?)
     
  5. w00d macrumors member

    Joined:
    Sep 14, 2010
    #5
    OSX has a lot of features: svn, bash, vim, javac, ant, ssh, scp, rsync, curl, perl, apache, php to name a few. I had to install git and mysql manually but it is no big deal to do that. I also installed the Xcode package but seriously that is one download and two clicks and you are done; this should be the least of your worries.

    I use Eclipse and Netbeans and MacVIM for an IDE, depending on what I am working on.

    At the command line, it "feels" very much like Linux to me.

    If you can get into a shell and have a compiler on a unix-like OS, you'll probably have everything you need. Having a fancy new Mac laptop is a luxury. I am sure you would appreciate the hardware and OS, but there is something to be said for getting down and dirty with Linux for a few years when you are starting out as a developer. I would recommend also looking into a used Thinkpad: install linux, experiment, learn, use that money you saved for buying beer instead of computers, and be happy.
     
  6. alecbenzer thread starter macrumors newbie

    Joined:
    May 2, 2010
    #6
    Well, like I said, I've got a pretty new laptop with ubuntu on it right now, so I don't think I'm going to be buying a non-mac laptop anytime soon. It's a Toshiba satellite. It was only $500, which was nice, but the battery only gets me about 3 hours and I'm experiencing some hard drive issues (which I'm hoping to resolve with toshiba, though, as it's still under warranty)
     
  7. brendu macrumors 68020

    Joined:
    Apr 23, 2009
    Location:
    USA
    #7
    If you decide you really want to get a Mac go with the 13 inch mbp base model and use your student discount. Otherwise just use the laptop you have and save your money for beer, books, and The dozens of other things you will be spending it on next year.
     
  8. r0k macrumors 68040

    r0k

    Joined:
    Mar 3, 2008
    Location:
    Detroit
    #8
    I got interested in OS X because of my experience with Linux. I only had 1 machine where Linux was my desktop. It was an Acer Aspire One netbook. I haven't used it since I got an iPad on 4/3/2010. Meanwhile, OS X has been my main desktop OS since 2008. I was using OS X part time since the Mac Mini came out but didn't switch over completely until 2008. I have used Linux all along and still have a couple of Linux boxes lying up and running.

    There are differences such as where config files are kept and whether there is a GUI to make system changes but overall I like OS X better for every day use. I prefer Linux for a "headless" machine such as a file server, web server without any GUI running and accessed only by ssh.

    You can hold off as long as you like before switching to OS X for your desktop and whenever you decide to go for it, the transition should be an easy one. And the terminal is right there for those times when you feel nostalgic for bash, sed, awk and grep.
     
  9. willieva macrumors 6502

    Joined:
    Mar 12, 2010
    #9
    A mac is a great choice for a linux developer. Install some virtualization software on it and you can have many flavors of linux installed. Want to learn some network programming? You have a network in a box already. And a lot of what you learn to do on linux will work on the mac. vi, emacs, eclipse, and the command line tools all work pretty similarly between linux and mac.

    The big downside to macs is the cost to get a laptop with a good screen. My 1920x1200 15" dell linux laptop is decent to program on. My 13" mbp is not. A secondary monitor is very nice to have, but obviously jacks up the cost.
     
  10. jtara macrumors 65816

    Joined:
    Mar 23, 2009
    #10
    Really depends on what kind of Linux development you are doing as to whether this makes sense or not. You really need to supply more information.

    Keep in mind that OSX is based on BSD. It isn't Linux. Close, but no cigar. It's a familiar environment, but that's about it.

    If you are doing web or server development, I'd say probably yes. Application development would depend on tools/language/libraries. For example, if you are doing GUI application development, I'd say almost certainly no, unless you are using highly portable tools.

    I always prefer to do development on the target platform, unless the target platform has no development capabilities (e.g. iOS). In that case, I prefer to use the best-supported cross-development environment. So, I do iOS development on OSX, rather than trying something silly like developing on Linux (yes, there are some open-source tools for this) or Windows (dunno if there is there).

    If you just like the Mac hardware and are willing to pay the premium... sure, get a Mac and load a partition with the Linux distribution of your choice. VMWare on top of OSX might be a decent choice, again, depending on just what kind of software you are developing.
     

Share This Page