Slashdot Mirror


Why Developers Are Switching To Macs

snydeq writes "Programmers are finding themselves increasingly drawn to the Mac as a development platform, in large part due to Apple's decision to move to Intel chips and to embrace virtualization of other OSes, which has turned Mac OS X into a flexible tool for development, InfoWorld reports. The explosion of interest in smartphone development is helping the trend, with iPhone development lock-in to the Mac environment the chief motivating factor for Apple as a platform of choice for mobile development. Yet for many, the Mac remains sluggish and poorly tuned for development, with developers citing its virtual memory system's poor performance in paging data in and out of memory and likening use of the default-network file system, AFS, to engaging oneself with 'some kind of passive-aggressive torture.' What remains unclear is whether Apple will lend an ear to this new wave of Mac-based development or continue to develop products that lock out uses programmers expect."

14 of 771 comments (clear)

  1. Re:Strange Complaints by RocketRabbit · · Score: 5, Informative

    It's Infoworld. What do you expect? They are a Windows-centric publication.

  2. AFP not AFS by Anonymous Coward · · Score: 5, Informative

    AFS is something else altogether.

  3. Now if only Apple would update their documentation by antifoidulus · · Score: 4, Informative

    recently got into Cocoa programming and for the most part absolutely love it, Apple has obviously put a lot of effort into their system and it shows. However, Apple seemingly skimped on one of the most important, but usually easiest to implement parts of their system: good, up to date documentation!

    For instance, in the QTKit documentation is just beyond abysmal. There is little documentation on how to do very common things, such as set your export settings. I had to do a lot of hackery just to figure that one out(and its still far from straightforward), they have typos that have been there for eons, even though I used their feedback form to tell them about it, and perhaps worst of all, they don't even mention many methods that are in the API.

    On multiple occasions I have had to go into the header files just to find out what I could do with various classes. I shouldn't have to do this! Compare this experience with say, Javadocs and its night and day. While Javadocs are far from perfect, they are infinitely better than what Apple puts out.

    Why would Apple do something like this? It costs them almost nothing to create a lot of these docs, and actually updating them once in a while could save developers tons of frustration. I guess maybe the paid ADC accounts are bit better? Thats really a low blow if they are though....

    Furthermore, Apple tends to deprecate APIs without really replacing them with an API with the same functionality. Case in point is QTKit. Its a nice API for what its worth, but there are tons of occasions you either:

    a) have to go down to the old Quicktime C APIs(which means your code won't be able to compile in 64 bit and may not work at all on Snow Leopard) or
    b) Have to come up with some creative hacks to get the functionality you want.

    For instance, in order to get an MPEG-4 formatted to anything but the default size you either have to use an atom container which is 32 bit only, or manually set up a Quicktime export with the settings you want, write some applescript to save that to a file, THEN read that file in as NSData THEN set that to be your export settings(which on Apple's website has the oh so helpful documentation:"Information to come."(That was over a year ago).

  4. Re:Strange Complaints by morgan_greywolf · · Score: 4, Informative

    I keep hoping that someone will come up with a better replacement, but CIFS/SMB will continue to work until that day comes.

    It's called NFS v4. Kerberos for authentication, encrypted traffic, lower overhead, no passwords or password hashes sent -- ever.

  5. Nice platform, but... by Daimaou · · Score: 5, Informative

    I really like developing on my Apple machine for the most part, but it has a few issues that make it less appealing to me than Linux.

    Currently, most of the development I'm doing is using Django and PostgreSQL. Installing PostgreSQL and the required Python libraries on OS X is tremendously painful. It was painful on Tiger and Leopard has made it more so. Macports tries to make it easier, but it could use a lot of work/testing/more work.

    Installing the same tools on Linux is so easy, a Windows user could do it.

  6. Re:Andrew File System??? by joe_bruin · · Score: 5, Informative

    The author is a moron. He meant AFP, Apple File Protocol. Macs do not support AFS out of the box.

  7. Re:Strange Complaints by Guy+Harris · · Score: 4, Informative

    Kerberos for authentication, encrypted traffic, lower overhead, no passwords or password hashes sent -- ever.

    Kerberos authentication, encrypted traffic, and "no passwords sent" apply also to NFSv2 and NFSv3; that's all done at the ONC RPC layer.

    And all of those are supported by Leopard's NFSv2 and NFSv3 (krb5 = Kerberos 5 for authentication; krb5i = Kerberos 5 with a signature for integrity checking; krb5p = Kerberos 5 with encryption for privacy).

  8. Re:MacOSX has awful Java support by mario_grgic · · Score: 4, Informative

    Java 1.6 for OS X, has been available for months now. And JDK 1.7 will not be out in a few months either.

    --
    As the island of our knowledge grows, so does the shore of our ignorance.
  9. Re:Strange Complaints by AKAImBatman · · Score: 4, Informative

    It's Unix-ish. Try compiling X11 (or any of hundreds of other POSIX compliant software packages) from source on a Mac. I'll wait.

    X11 compiles just fine.

    http://www.xfree86.org/current/Darwin.html
    http://developer.apple.com/opensource/tools/X11.html
    http://ftp.x.org/pub/X11R6.9.0/doc/html/Darwin.html

    My primary complaint is that most OSS developers expect all Unix systems to be Linux systems. Which means that I have to let Linux software get its hooks into my OS X system in order to get anything compiled. Since OS X is NOT Linux, this is quite an unpleasant process.

    It's capable of running its own proprietary OS that is specifically designed to not run on any otherwise capable hardware

    OS X runs Unix software. Period. I usually get a host of tools installed first thing on my Mac. Thankfully, this has become less and less necessary over time as Apple has started including many of the most useful utilities up front.

  10. Re:Strange Complaints by eggnoglatte · · Score: 4, Informative

    Unfortunately, NFS is not safe since it trusts clients. If users need to have root or sudo on their individual machines, they can go out and read any file on the server (well, technically partition, but who has one partition per user on their server?). NFS comes from a time of big iron servers where no end user EVER had root access. The world has changed.

    CIFS/SMB may be slow, but at least it got the per-user authentication right. If you want an alternative, something like the Andrew File System (the other AFS), or OpenAFS would be better. OpenAFS exists for Macs.

  11. Re:So, what would you pick? by egomaniac · · Score: 4, Informative

    Ummm... you realize you can format HFS+ case sensitive, right?

    --
    ZFS: because love is never having to say fsck
  12. Re:innovative by chaim79 · · Score: 4, Informative

    From what I understand reading the background of that functionality, the NVidia drivers for mac are a big part of the problem, so they are doing it now as logout feature, after NVidia gets the mac drivers sorted out it will be able to support switching right away.

    --
    DEMETRIUS: Villain, what hast thou done?
    AARON: Villain, I have done thy mother.
    Shakespeare invents 'your mom'
  13. Re:Strange Complaints by leamanc · · Score: 5, Informative

    As others have mentioned, it's AFP, not AFS, but the point remains the same. It's slow because it sacrifices speed for goodies like hi-res icons, and remembering icon positions.

    NFS is slower yet on OS X, both as a server and a client,

    The funny thing is, though, that Mac OS X Server can serve out the same sharepoint over AFP, SMB/CIFS, and NFS. All at the same time. There's no conversion necessary. Just click the checkbox for the protocols you want to turn on. (This includes FTP also.) So why they complain about AFP, when there are other options available with a click of a mouse, is a little puzzling.

    --
    :q!
  14. Re:Strange Complaints by Anonymous Coward · · Score: 5, Informative

    First, if you're really using a mac, you wouldn't say "alt-tab." It's Cmd-Tab.

    Second, this has nothing to do with maximizing at all (you rarely ever need to maximize on a mac anyway... it's pretty multi-window friendly). If you minimize a window on OS X, it goes down to the Dock, period. If you want it back, just click on the window in the Dock.

    If you didn't want to really minimize it, you could have hidden the application (Cmd-H), and then Cmd-Tabbing to that application or clicking on its icon in the Dock would bring everything back exactly as it was. Or you could put stuff in different spaces. Or you could use Expose to switch between windows.

    Same with whether or not closing a window closes the application as well. It's pretty simple... if the application only ever uses 1 window and there's nothing to do when the window is closed, closing the window quits the application. Otherwise it stays open. If you don't like it, you can always Cmd-Q quit everything, which would be the same regardless. And seriously... what are you possibly "fighting" with here? It sounds like you're just compiling a list of old rants, rather than saying anything relevant.

    And btw, who seriously installs the update for iTunes on their server? You could just ignore the update (or better yet, delete iTunes from your server... what's it even doing there?)

    If you don't like FileMaker, complain to them, or use something else... they're not Apple (yes, I know it's a subsidiary, but it's independently operated).

    You're simply used to a Windows paradigm, nothing more. Just because you're used to something one way doesn't make a different paradigm wrong.

    Rule of Thumb: 9 times out of 10, if somebody spends their first sentence trying to convince you they're using a specific system they want to criticize, they're probably not using it.