Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Yes the MBP is a good machine, and you can get all of the items you listed on OSX. It is a good development platform if you decide to go that route. I have worked exclusively on MBP for the last two generations of my machines. This is coming from a guy that got burnt really bad on the 68-PPC conversion a while back (had basically a brick within 6mo of buying a new 68). That is another story but sufficient to say, I swore off Apple computers and after using a MBP for a while, I decided that it really was worth the switch. I don't consider myself a fanboy so I feel that I offer a pragmatic opinion to people on the advantages of switching.

Also a thing to consider is that with the MBP if you decide that OSX is not for you, you can always install Linux or do Bootcamp and dual boot, or run Virtual Box and have a Linux VM. I do the latter for any odds and ends Windows only software that I need to run, but those are getting fewer and fewer these days.

If you decide to stay in the PC world I recommend Sager laptops. They are probably close to or superior to the MBP in terms of quality.



Ubuntu runs hot on the MBP and will chew through your battery power even if you aren't running it in a VM. So MacOS is Unix anyway, you say? Too bad the default libraries are a pain to upgrade, trivial applications like "locate" and "wget" are missing and you'll have to manually configure stuff like page up/page down if you want the terminal to be useful.

I've had repeated issues compiling different "cross platform" applications on MacOS that compile painlessly under various Linux distributions and even Windows! So you end up being heavily reliant on "port" to install software instead of "./configure / make / make install". The last thing that drove me up the wall was a bizarre failure in statically-linking SQLite into a QT application. Every other platform worked. MacOS failed spectacularly.

If you want a Linux laptop, get a Linux laptop. I'm only on a Macbook for video editing and iPhone/iPad development. It is excellent for that and it is a beautiful machine in many ways (love the chassis), but it is not nearly as good a platform for developers as Ubuntu by any means.


So MacOS is Unix anyway, you say?

I don't recall saying that it is or is not in my post above. Please don't put words in my mouth.

but it is not nearly as good a platform for developers as Ubuntu by any means

you are painting a pretty broad stroke there.

I do web and mobile development, both require application like Photoshop, professional video editing tools while web specifically Chrome, Firefox, Safari, Opera and IE, Flash and a few others. For me Linux is not a superior development platform because getting some of these running is just as hacky as getting libs to work correctly on OSX. I use Netbeans as my development IDE which is available on OSX and I have to run a virtual for IE so for me OSX offers a happy middle-ground because I get iOS development while only having to trade running IE in a virtual. So while Ubuntu may be a superior development platform for what you do, it may not be for other developers. The original poster specifically highlighted web development tools. And for web development OSX offers a good value proposition. It has its frustrations just as other OS's do.


Just a heads up, you can feel perfectly confident saying that OS X is Unix. Snow Leopard is UNIX 03 certified.

http://www.opengroup.org/openbrand/register/brand3581.htm


I don't know what UNIX means to you but where I come from UNIX means an atomic rename(2).

http://www.weirdnet.nl/apple/rename.html


I said specifically in my post that OS X is UNIX 03 certified.

http://www.unix.org/version3/

The Open Group owns the Unix trademark, which is what we're all referring to.

http://en.wikipedia.org/wiki/The_Open_Group

So I don't know what UNIX means to you, but where I come from, it's based on a certification that adheres to a defined set of standards.

What you posted is an unresolved bug report that doesn't prove or disprove that OS X is Unix certified.


I'm well aware of what UNIX 03 means. Are you? The core of it is IEEE Std 1003.1. Here's a quote from the Rationale section of the rename(2) page from IEEE Std 1003.1, 2004 edition:

"This rename() function is equivalent for regular files to that defined by the ISO C standard. Its inclusion here expands that definition to include actions on directories and specifies behavior when the new parameter names a file that already exists. That specification requires that the action of the function be atomic."

So to comply with the Single Unix specification, rename(2) must be atomic. The rename(2) function on OS X has been empirically shown to not be atomic. What reasonable conclusions can be drawn here?


The reasonable conclusion is that a bug exists where -- under certain circumstances -- rename(2) fails in a way that is not expected. It's a bug. It's not as if rename(2) is intentionally implemented in a way that is not atomic; it's that there is a bug. Should it be fixed? Yes. Does it mean that OS X is not Unix? No.


> Does it mean that OS X is not Unix? No.

What exactly are you arguing? What is your definition of unix? A label purchased from the Open Group or an implementation of a specification?

If it's the former, I completely agree with you, OS X is UNIX. If it's the latter, what standard of proof would it take to convince you otherwise?


Ok, I'll state it clearly. I'm arguing that:

One may feel comfortable claiming that OS X is "Unix" based on the fact that all versions of OS X since 10.5 have been "Open Brand UNIX 03 Registered Product" (from an archive of the Apple website), signifying that they have met the requirements for the SUSv3 and POSIX 1003.1 specification.

http://web.archive.org/web/20070823040630/http://www.apple.c...

http://en.wikipedia.org/wiki/Single_UNIX_Specification


Sure, I was more offended by words being placed in my mouth. Whether it is UNIX or not is irrelevant to me if it does what I need it to do, I don't really get hung up in the dogma.


I think the "you" was directed hypothetically at the reader, not you specifically.

trevelyan makes some good points. I love my MBP, but consider it more of a host machine than a development machine. I do most of my development in VMs or while logged into various Linux machines. If you've never used OS X before, there are a few gotchas that can make it less suitable for cross platform development. Aside from Apple's unpredictable changes to upstream sources, my biggest complaint is the tendency of the Finder to leave turds everywhere it's been. I'm always disappointed when a vendor distributes source code with these intact (and by default, the Finder will try to write them to practically every network drive folder it visits). That's just one example of things you'll have to watch out for when you develop on the Mac.


If it was directed at a hypothetical reader, it was still implied that I represent the position that OSX = UNIX, based on the contents of my post. Which was never implied in my post.

I may have been a little too jumpy and he may have meant no harm by it, but people putting words in my mouth annoys me to no end. Many times It is used as a deception to falsely strengthen their position.


Relax! No-one is putting words in your mouth... this is a discussion board. The statement to which you're reacting negatively was a rhetorical flourish.... :)

My comment was in reply to your statement that you can virtualize Linux and that makes the MBP an equivalent platform, and I posted because I've gone through these issues and it wasn't fun. The MBP really isn't good for Linux because of the battery issue and then a host of other small problems (sleep, etc.) that make installing dual-boot troublesome:

https://help.ubuntu.com/community/MacBookPro

I'm glad that you can do your web development work on Mac. They are really nice machines. But if this guy needs Ubuntu it is probably because he needs software that runs reliably on it. Knowing that Photoshop will run on the MBP isn't a great impetus to switch when you need to compile various non-default libraries, setup software that isn't packaged with port, or work with almost anything coded in C or C++. This doesn't mean that Mac isn't good at what it does. It just means that if the guy needs Linux, he shouldn't think MacOS is equivalent just because it's based on Unix.


or work with almost anything coded in C or C++

Right, and I agree 100% I would not do sys-dev on OSX unless it was OSX sys-dev. But he specifically listed an array of web-dev technologies not sys-dev and that is why I made the recommendation that a MBP would suffice. He did not mention Photoshop but I assumed if he is doing web-dev he will need it at some point unless he works with a team and has a dedicated graphics resource. Anyway, the list of technologies provided by the poster leaned heavily to the fact that he would be doing web-dev and for me the MBP works as a web-dev platform.

If he would have asked about embedded, I would have said hell no, I have suffered first hand (as a hobbyist) at the utter lack of serious PCB design software, or dev kits available on the Mac for embedded work.

And if he would have said, I want to do C dev on an open stack, I would have also said you many want to look at a Sager Notebook as opposed to a MBP.

BTW, I apologize for jumping the gun on you. I mistook the context of your wording.


There are various kinds of web-dev. OSX might be perfect for front-end development (Photoshop, HTML, CSS) while sucking for back-end development (3rd-party Python libraries with random C/C++/Fortran--NumPy, if I'm not mistaken--extensions).


I've been using Macs as my development machines since before Darwin became OSX and that's the only thing that frustrates me sometimes: decent package/library management like on Linux. I've resorted to isolating these issues in VMs running Linux. Anyone else has a better approach? Do you --PREFIX everything you compile? This can be particularly painful for academic software: this type of soft has the annoying tendency to become abandonware the second the Phd thesis is written or publication has been accepted.


Is using prefix really all that annoying? I run Ubuntu as well as OS X, and I like to keep my compiled software segregated from my package installed software. This means I "prefix everything". I mean really, using --prefix is minor in contrast to some of the other difficulties encountered when compiling software.

Homebrew has advanced the state of package management on OS X significantly. Anyone considering a Mac laptop should look in to it to see if the packages you need are there.

http://mxcl.github.com/homebrew/


Ubuntu runs hot on the MBP and will chew through your battery power

This was the case with my Lenovo as well until I found powertop and followed its suggestions.


What do you use for video editing? Just curious, since I have ports installed just to build kdenlive. I haven't had good luck with iMovie (crashing, poor MTS support, bloated AVHDC files, and choppy transcoding). I'm too cheap to buy Final Cut Pro, but would be interested in other options.


iMovie honestly. Don't need much and it isn't really professional-level stuff. But it is a work-related need and I don't know of anything comparable for Linux.


The solution to it running warmer with Ubuntu is to run a utility to manage the fan speeds and keep it cooler. It works just fine for me that way.

I've had a few Thinkpads running Ubuntu and now a MBP running Ubuntu.. and I prefer the MBP.


locate isn't missing. The database isn't built by default, but you can do that.

Mouse-Rig-Test:~ jon$ locate usage: locate [-0Scims] [-l limit] [-d database] pattern ...

default database: `/var/db/locate.database' or $LOCATE_PATH

Mouse-Rig-Test:~ jon$ which locate

/usr/bin/locate


Or, just use mdfind, the command line interface to spotlight.


Spotlight can be a little wonky as far as what it indexes. At least by default, it ignores things locate doesn't.


This is ultimately what led me to switch from OS X to Ubuntu. Been using Ubuntu full-time since May and its great! All those headaches are gone!


I take issue with several of the items you mentioned:

One, Terminal on Mac is extremely useful, even if the Page Up/Down keys don't work.

Second, those keys do what I expect in Terminal right now on my Mac, and I've done nothing special to get them working.

Third, Mac does come with curl preinstalled, which fits a very similar tool niche to wget.

In general, it is true that there are some Linux-centric tools and packages that currently don't build easily or have preexisting binary ports for Mac, however, that's true in reverse as well. And I can assure you that Mac provides a much more Linux-like experience in a terminal than MS Windows. Also, keep in mind, that with many of the software packages in the Open Source world, it's up to individual people to do the work to get a particular package working perfectly on a particular platform permutation. Nobody "owes" you anything, or guarantees any particular permutation will be perfect. Therefore, while there might be 1000's of libraries and applications that do work perfectly and have equal availability on Linux and Mac, it may not be wise to assume that everything will be, and then cite any specific imperfection as "bizarre" or spectacular failure. It's just software, it's very complex, and if nobody has come before you to smooth that particular cow path then it won't be smooth unless you yourself do the smoothing. :)


> those keys do what I expect in Terminal right now on my Mac, and I've done nothing special to get them working.

Try using vim or other applications that run in the command-line.

> And I can assure you that Mac provides a much more Linux-like experience in a terminal than MS Windows.

Yes. A much more Linux like experience than Windows. And a much less Linux like experience than Linux.


vim: k, but vi and other CLI apps tend to already have keys for doing paging that are "native" to the app and/or more "homerow friendly". The Page Up/Down keys on many keyboard tend to be in awkward locations like far off to the right side, for example, of where the center of typing gravity is located.


> This is coming from a guy that got burnt really bad on the 68-PPC conversion a while back (had basically a brick within 6mo of buying a new 68).

I assume you mean 68000 series to PowerPC transition? I lived through that and thought it was handled even better than the recent PPC -> Intel transition. Programs were compiled as FAT binaries for years and years because of the huge installed base of 68k machines. I don't see how you could have had a "brick" after just 6 months.




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: