Slashdot Mirror


Google Gets Serious About Open Source Mac Projects

mjasay sends us a link to a CNet story, which begins: "In the '20 percent time' that Google employees have to work on projects of personal interest, it turns out that an increasing number are spending time writing open-source projects for their Macs. Google has long had a fondness for the Mac, with upwards of 6,000 of its 20,000 current employees opting to use the Mac over Windows. It is in the 20 percent employee development time, however, where this statistic becomes interesting. At Google, development time translates into products. The more Mac-friendly employees, the more Mac-related development. The more Mac-related development, the more Google-sponsored Mac-based open-source code. As Google's Mac Developer Playground demonstrates, some of this code is quite interesting."

38 of 193 comments (clear)

  1. Open source on non open OS? by kipman725 · · Score: 5, Insightful

    To me open source on a non opensource OS (apple has a patchey history with opening bits of OS) has always seemed a little contridictory and defeating the purpose of running a free or opensource system.

    1. Re:Open source on non open OS? by FinchWorld · · Score: 4, Insightful

      Why? Surely if its open source anyone can take it, compile it, and use it on whatever they want. How much propriety software lets you do that? By limiting open source software to only play nice with other open source software (OS, whatever), you become a little bit like Microsoft.

      --
      "I may be full of crap about this game, and I may be wrong, and that's fine." -Jack Thompson
    2. Re:Open source on non open OS? by ColdWetDog · · Score: 5, Insightful

      To me open source on a non opensource OS (apple has a patchey history with opening bits of OS) has always seemed a little contridictory and defeating the purpose of running a free or opensource system.

      That's just plain silly. You don't have to have the source code for every tiny little bit on the computer for source code to be useful. Really, how many people need to dink with the kernel, be it Windows, OS X or Linux?

      Sharing code is useful at the application level. You should re examine your zealotry, son. It's gonna cause you some grief. Mark my words ... You'll grow a beard, be shunned at parties. You will want to put posters of RMS on your wall. Your mother will disown you.

      --
      Faster! Faster! Faster would be better!
    3. Re:Open source on non open OS? by MMC+Monster · · Score: 5, Insightful

      I don't know. Is Firefox on MSWindows useless? At some point they'll have to call a proprietary library.

      The nice thing is that they can put wrappers around the proprietary function call bits and potentially make the software run on multiple OSs. (As Firefox does.)

      --
      Help! I'm a slashdot refugee.
    4. Re:Open source on non open OS? by Znork · · Score: 4, Insightful

      Really, how many people need to dink with the kernel, be it Windows, OS X or Linux?

      Well, it's a fair number, but it's not necessarily the number of people, but the _right_ people we need to be dinking around with the kernel. Unfortunately, with proprietary operating systems, it seems the right people are not necessarily doing that.

      I don't personally dink around that much in the kernel (altho I've bypassed a bug or two in drivers), but I certainly want the genius with too much free time and the same hardware that I have who can fix the bugs to have access to the source. I dont want to hack my own paravirtualising hypervisor, but I'm very pleased to use xen technology, which would have been very difficult to implement without open source.

      As a user of programs and operating systems I usually dont need the source. But I do need many improvements made by people with similar interests to me; interests that may overlap very much less with the strategic thinking of a single monolithic corporation.

      Sharing code is useful at the application level.

      Free software is useful at any level you want to have improved. Which is pretty much all of them. Personally I dont have the patience for proprietary products anymore; I find most tend to have issues that would never survive a few iterations in an opensource product. With free software products I know that if it annoys me enough it'll annoy someone else enough to fix it.

      Now go away. I have a beard to tend to.

    5. Re:Open source on non open OS? by Eighty7 · · Score: 5, Insightful

      That's just plain silly. You don't have to have the source code for every tiny little bit on the computer for source code to be useful. Really, how many people need to dink with the kernel, be it Windows, OS X or Linux?
      You really think it's just the kernel? Jobs (goes for ballmer too) has complete control over his platform. Are you going to make all your users pay for 10.5? If he stops supporting Carbon, what can you do?

      My biggest gripe is with repositories. It would be absolutely trivial for MS to set up a repository & kill off 90% of the malware. Apple supposedly cares for its users - an add-remove button like ubuntu's would go a long way towards providing quality applications. I'm sure it's possible to add a repository afterwards, but it's nowhere as easy (popular) as ubuntu's default. When you find yourself having to explain to yet another person that legal, free, world class software actually exists -- remember that you're doing it because you're on someone else's platform & they want to make it difficult because they're in the business of selling proprietary software.
    6. Re:Open source on non open OS? by mrchaotica · · Score: 3, Informative

      Really, how many people need to dink with the kernel... Sharing code is useful at the application level.

      That's a bad example to use in this case, because for Mac OS the kernel is actually one of the Free Software bits! In fact, it is the application-level libraries (e.g. Cocoa) that are not Free.

      --

      "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

    7. Re:Open source on non open OS? by 99BottlesOfBeerInMyF · · Score: 4, Interesting

      My biggest gripe is with repositories. It would be absolutely trivial for MS to set up a repository & kill off 90% of the malware. Apple supposedly cares for its users - an add-remove button like ubuntu's would go a long way towards providing quality applications.

      I think what you're talking about is centralized package management. I agree Apple should add it into OS X, as they are doing with the iPhone. There is even some indication they might be planning to do so in the future.

      I'm not sure, however, that this is a one sided argument. Package managers are great and useful, in some cases, but all the current ones fail miserably for other workflows, sometimes in ways Apple has already solved. Package managers on Linux suck for commercial software developers and as a result are pretty much ignored by commercial developers. They also suck for installing software on remote drives for access by multiple systems, installing on removable media, easily moving installed applications to other systems, and installing from a Web page.

      Right now I'd say Apple has about 50% of the solution we all want, while Ubuntu has the other 50% and neither has gone and integrated the half the other vendor got right. Apple has their half right because they have one, centralized authority willing to make hard decisions and break compatibility with others when needed to make a real advancement. Ubuntu has the other half right because they have diverse contributors and a somewhat democratic, mob like way of making decisions that work for most people. That said, want to bet that Ubuntu gets drag and drop installs and all the other benefits they could get from GNUStep before Apple adds a centralized package manager and repository to OS X?

    8. Re:Open source on non open OS? by Eighty7 · · Score: 3, Insightful

      I think what you're talking about is centralized package management. I agree Apple should add it into OS X, as they are doing with the iPhone. There is even some indication they might be planning to do so in the future.
      Honestly, I'm not holding my breath. Did you see what apple made of the iphone attempt? And it costs $99 to get a cert? I've seen devs on ubuntuforums.org get approached by maintainers wanting to package some minor app for the repository. Apple certainly isn't poor. There's a conflict of interest here.
      And this supports my initial premise that OSS on non-OSS is no fun. (I know you weren't disagreeing with me)

      Package managers on Linux suck for commercial software developers and as a result are pretty much ignored by commercial developers.
      You ask most ubuntu people they'll probably tell you it's working as intended. If it's not free it's not GPL & probably not OSS either. Chances are it's a binary blob & that opens up a host of issues. Is it "zealotry" to actually want control over your own computer?

      ...and installing from a Web page.
      Yeah they're working on it. Did you see the new apt:// protocol?
  2. Here is another proof that CNET doesn't know Mac by Ilgaz · · Score: 5, Interesting

    When you write a story about open source and Google on Mac, you don't miss QuickSilver.app which is a record breaking download which turned to open source and Alcor, the developer is a Google employee.

    See the numbers just at its versiontracker page
    http://www.versiontracker.com/dyn/moreinfo/macosx/22549

    Also here is its source along with various Alcor programs:
    http://code.google.com/p/blacktree-alchemy/

    There is no chance you miss a 200.000 downloaded (just a single site!), used by newbie to advanced developer profile utility. Unless you have never used Mac regularly and sit there and write a story about Google and Mac code of course. Another thing to include in that story is the fiasco of Google Desktop search which seriously made everyone paranoid with its method of install, method of running and the idea of shipping that Windows wonder to an OS which invented dynamic/extended search in its core.

  3. Mac developers don't do cross platform. by Anonymous Coward · · Score: 5, Interesting

    Not true for "open source" OS X software. Developers on this platform are generally opposed to cross platform application development and Apple works hard to ensure that applications written to OS X will not easily be ported to other platforms.

    If you disagree, can you name a single significant open source desktop application that originated on the Mac and is now cross platform (supporting Windows, Mac and Linux at least)?

    This is why I consider the Mac OSS community to be a bunch of leeches. They've ported most open source unix applications to OS X but to date have given nothing useful back. The attitude seems to be that its fine for them to use stuff from BSD or Linux, but if you want to run their software, you should just buy a Mac. And that makes them a lot more like Microsoft than the person who asked the original question.

    1. Re:Mac developers don't do cross platform. by Anonymous Coward · · Score: 4, Informative


      Not desktop apps, but Apple has a put good effort into OSS server and network apps.

      http://www.macosforge.org/

    2. Re:Mac developers don't do cross platform. by GalionTheElf · · Score: 5, Informative

      If you disagree, can you name a single significant open source desktop application that originated on the Mac and is now cross platform (supporting Windows, Mac and Linux at least)? Handbrake.

      Please note though that I'm not particularly up on the politics here, but handbrake is a brilliant, once mac-only, video conversion tool.
      --
      I'm going over here and I don't know why!
    3. Re:Mac developers don't do cross platform. by cleatsupkeep · · Score: 5, Informative
    4. Re:Mac developers don't do cross platform. by 0100010001010011 · · Score: 4, Insightful

      #include
      main()
      {
              printf("Hello World");

      }
      -
      Hrm. Seems to work just fine on my Mac and my Debian Box. I guess I foiled apple again.

      Or if you mean Apple has their own language, Cocoa, which isn't ported to XP or Linux. Funny thing is, you're not forced to use it.

      Since we're on the topic of cross plat form stuff, it's not OSS, but it was one of the best selling games ever: Myst.

    5. Re:Mac developers don't do cross platform. by 0100010001010011 · · Score: 4, Informative

      And i nearly forgot: launchd.

      "The launchd daemon is essentially a replacement for init, rc, the init.d and rc.d scripts, SystemStarter (Mac OS X), inetd and xinetd, atd, crond and watchdogd."

      Yeah, it's open source and even written by Apple themselves.

    6. Re:Mac developers don't do cross platform. by Randle_Revar · · Score: 4, Informative

      Cocoa is not a language, just as Win32, GTK and QT are not languages.

    7. Re:Mac developers don't do cross platform. by Paradise+Pete · · Score: 5, Insightful
      This is why I consider the Mac OSS community to be a bunch of leeches. They've ported most open source unix applications to OS X but to date have given nothing useful back.

      I think you misunderstand how it works. The original author rarely ports it to a platform he doesn't use. He makes the source available, and someone who is willing and able to make it work on another platform can do that. You even said it yourself - "They've ported." If few Mac open source projects have been ported to a particular platform, blame the users of that platform, not the people who don't use it.

    8. Re:Mac developers don't do cross platform. by RiotingPacifist · · Score: 4, Insightful

      by that definition mac didnt start on mac.

      --
      IranAir Flight 655 never forget!
    9. Re:Mac developers don't do cross platform. by larry+bagina · · Score: 5, Insightful

      Apple works hard to ensure that applications written to OS X will not easily be ported to other platforms.

      Just like KDE works hard to ensure that applications written for KDE aren't easily ported to other APIs? And GNOME works hard to ensure that applications written for GTK aren't easily ported to other APIs? And X.org works hard to ensure that applications written for xlib aren't easily ported to other APIs? And Be works hard to ensure that applications written for belib aren't easily ported to other APIs? And Microsoft works hard to ensure that applications written for Win32 aren't easily ported to other APIs? And Sun works hard to ensure that applications written for Swing aren't easily ported to other APIs? And Open Group works hard to ensure that applications written for Motif aren't easily ported to other APIs? And QNX works hard to ensure that applications written for Photon aren't easily ported to other APIs? And Donald Knuth works hard to ensure that documents written for TeX aren't easily ported to other markup languages? And Intel works hard to ensure that x86 assembly code isn't easily ported to other architectures? And Toyota works hard to ensure that gasoline-powered internal combustion engines can't easily run on hydrogen?

      --
      Do you even lift?

      These aren't the 'roids you're looking for.

    10. Re:Mac developers don't do cross platform. by blacklint · · Score: 5, Informative

      Did you actually look at that link? Darwin Streaming Server and CalendarServer are Apple written server applications that can be run on other operating systems, not the other way around. I've personally run Darwin Streaming Server, the open sourced version of QuickTime Streaming Server, on a Debian box.

    11. Re:Mac developers don't do cross platform. by mrchaotica · · Score: 3, Informative

      Actually, Handbrake used to be cross-platform between Mac and BeOS. Apparently the BeOS version has been dropped in favor of Linux and Windows (a reasonable decision, I must say), but it could very well have been the original version.

      --

      "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

    12. Re:Mac developers don't do cross platform. by SoupIsGoodFood_42 · · Score: 3, Interesting

      Apple works hard to ensure that applications written to OS X will not easily be ported to other platforms.

      And you have good evidence that this is the reason for the way they have done things, as opposed to making sure that apps written for OS X simply integrate well with the system to provide a good and consistent user experience?

      In a world where most apps are written for Windows, it doesn't really make sense for Apple to try and make it hard to stop people from porting Mac apps to other platforms. Apple aren't stupid.

      This is why I consider the Mac OSS community to be a bunch of leeches. They've ported most open source unix applications to OS X but to date have given nothing useful back. The attitude seems to be that its fine for them to use stuff from BSD or Linux, but if you want to run their software, you should just buy a Mac.

      Or perhaps they are only interesting in creating apps for OS X? I mean, if they take from the OSS community to begin with, then how can they consider it their software? How do you know that they simply don't consider themselves porting software to OS X for the benefit of OS X users? What would they contribute back, anyway? remove all the OS X parts and give back what they took in the first place? You're not making much sense.

      I think you are simply being paranoid or have something against people who use Macs.

    13. Re:Mac developers don't do cross platform. by onefriedrice · · Score: 4, Insightful

      Exactly. Objective-C is the language, and, oh yeah, it has excellent support in gcc thanks to Apple giving back its improvements in that area.

      --
      This author takes full ownership and responsibility for the unpopular opinions outlined above.
  4. Re:Why Mac, though ? by radarsat1 · · Score: 4, Interesting

    The appeal, I think, is that Mac provides a pretty unique development environment. Not *my* favorite, mind you (I do prefer using a terminal to XCode, so emacs and Linux are my thing), but I definitely see the appeal of the Objective C thing.

    Only, I wish those same people putting all that work into OS X applications would instead redirect their efforts to improving GNUStep, making Linux a place that can have the same set of appeals. Right now it's pretty ugly, but it has so much potential.. it seems to only lack developers. I'd love to see it go somewhere.

  5. So where is Picasa for the Mac? by Anonymous Coward · · Score: 4, Interesting

    If Google is so big on the Mac, where is the Mac version of Picasa? It's been rumored for months. iPhoto's interface is poor by comparison.

  6. GCal Sync by 0100010001010011 · · Score: 3, Interesting

    Give me a damn google calendar sync. The free one (gcaldaemon) broke under Leopard and hasn't been updated. There are a few but the one I looked at sent the data to their servers and then used that to sync.

  7. Re:Why Mac, though ? by Cannelloni · · Score: 5, Insightful

    Because it's a damn good and user-friendly operating system, with a large user base and a vibrant developer community and thousands of professional and home user applications. That's why.

    --
    Beauty is in the beholder of the eye.
  8. Re:Why Mac, though ? by abigor · · Score: 3, Insightful

    Because a lot of Google people love Unix, and the Mac is the best desktop Unix environment. That's why.

    And do you think Google are so penny-pinchingly cheap that the massive boost in developer productivity they get from using Macs isn't worth the small extra cost over a system running Windows or Linux? Give me a break. What are they spending, maybe $50 000 extra total for the Macs? Google earns that in probably around 5 seconds.

  9. Re:Why Mac, though ? by harryman100 · · Score: 3, Insightful

    Because a lot of Google people love Unix, and the Mac is the best desktop Unix environment. That's why. I'm not sure it's OSX on desktop which is the primary appeal. I own a powerbook because when I bought it, it was the best unix laptop available. On the desktop I still think a more conventional distro of linux is better (but that's my personal opinion).
    --
    .sigs are for losers
  10. Re:Why Mac, though ? by Ihmhi · · Score: 4, Funny

    Don't forget all the productivity saved on not playing games on the Mac.

  11. Incorrect summary by sentientbrendan · · Score: 4, Informative

    >with upwards of 6,000 of its 20,000 current
    >employees opting to use the Mac over Windows.

    Actually, Google developers have *Linux* boxes by default, so many of these people are opting for Mac over *Linux*.

    Currently, there are way more development tools available for the mac than Linux. Things like textmate, araxis merge, DTrace, etc. Thus a lot of people, inside google and out, use mac workstations to develop software that gets deployed to linux servers.

    1. Re:Incorrect summary by Anonymous Coward · · Score: 5, Informative

      Incorrect summary and incorrect correction. I work at google and we get to choose twice: on the desktop and on the laptop. Most developers choose a linux desktop and mac laptop. A few choose a windows laptop, but end up installing linux on it as well.

      Also, nothing in the company is 'by default'. If it involves how you work, you get asked how you want to do it. If it's not something completely insane, it's usually approved, since forcing you to go work in a way that you're not used to causes loss of productivity until you get used to the new way.

    2. Re:Incorrect summary by Dominic_Mazzoni · · Score: 4, Informative

      I work at Google. Most full-time engineering developers have both a Linux desktop and a Windows or Mac laptop. It's a great combination, since all of Google's web backend stuff runs on Linux, but it's often nice to have a Windows or Mac box around too, and they tend to be better choices for laptops.

      There are lots of exceptions, of course - Mac desktops, Linux laptops, etc. - plus of course everyone whose full-time job at Google is to write Windows or Mac client software.

      I don't have any statistics, but my observation is that even more than 30% of laptops are Macs - probably close to 50%. Desktops are 90% Linux.

      Anyway, when you consider that most Google developers use Linux as their development machine and they're trying to decide between a Mac or Windows laptop as a second machine, the article is accurate.

  12. Re:Why Mac, though ? by 99BottlesOfBeerInMyF · · Score: 4, Interesting

    I think the reason that there are lots of macs in Google is that many use the laptops, and the company just caters for the employee's preferences.

    It sounds like a reasonable policy to me. It's the same one we had at my last employer. Users choose what works best for them. Since several of those people now work at Google, I imagine they feel right at home.

    It's a pity, because the thinkpads are better built and more easily serviced.

    Actually, according to Consumer Reports Thinkpads have a higher failure rate than MacBooks or MacBook pros, by a decent margin. At that last employer those were our two pre-approved vendors and our data showed the same thing. As for ease of service, who services their own machines? We put in RAM and the like, which is plenty easy on Apple systems. Anything else, we copied the data to a spare machine (if possible) and shipped the broken one back to the vendor. On site repairs may make sense for servers, but not for laptops. It just isn't worth the employee down time. A couple of spare laptops are a cheap way to keep people working.

    Despite the relatively good support for linux laptops at Google, using them remains cumbersome...

    I find using them anywhere as a primary desktop is cumbersome. It's come a long way, but there is still a lot of tinkering and hands on work that needs to be done to get them running with whatever infrastructure and keep them that way. I use one daily, but I don't find it to be as painless and enjoyable as OS X for most tasks (although for some tasks it is quite superior).

    I'd note most all of the problems you list are probably the result of having a distro not tailored to your hardware. That will hopefully be less of a problem in future as laptop makers customize Linux for their machine and keep it supported.

    I probably would use Mac too if it weren't for the absence of the nipple-trackpoint and the user interface that drives me crazy.

    Yeah, we all become accustomed to interfaces and the like. I've used ThinPads and they are fairly reliable (number 3 or 4 right now?) but I've never been fond of the nipple-pointer thingy. Over the last couple of years I've noticed that OS X has incorporated pretty much all the old UNIX style interface features I missed, but the big Linux distros are still lacking in reciprocation. Ubuntu still does not ship with an expose clone by default or with two-finger trackpad clicking and scrolling. From what I've seen this has facilitated a large exodus of laptop users away from Linux and to OS X for their primary OS. Where I worked last they went from about 5% to about 70% in the last 4 years, mostly converting Linux people (and a few BSD users). It worries me because a lot of those people are now developing applications and the like to solve problems on OS X and there are even fewer people doing so for Linux on the desktop.

  13. Re:Why Mac, though ? by 99BottlesOfBeerInMyF · · Score: 3, Interesting

    Only, I wish those same people putting all that work into OS X applications would instead redirect their efforts to improving GNUStep, making Linux a place that can have the same set of appeals.

    Most people work to solve a problem, either their own, personal itch, or what their employer needs done. Those that care about the benefits of GNUStep have mostly moved to the Mac for the desktop. The rest don't know or care about those benefits. Many angrily defend Linux claiming it is better the way it is now than being more "like OS X" which they believe is obviously inferior (although many have no real experience to make this determination). Others understand the benefits of GNUStep for the desktop, but already use OS X for the desktop and really want Linux to be the perfect Server OS for them, and actively oppose any compromise that might add "bloat" without benefitting Linux as a Server. Finally, there are those that would like Linux to be an ideal desktop OS and understand how GNUStep can help, but pragmatically believe compatibility with other Linux distros is more important than the benefits of GNUStep and at the same time believe it is too hard to get all the major distros to buy in to a better way all at once.

    I'd love to see GNUStep match and exceed OS X's implementation through integration with package managers and extending packages for that purpose. Sadly I don't think it will happen. Really Linux needs a hardware OEM to champion it on their hardware and work towards making it an ideal desktop, including feature parity with OS X (and interoperability where possible). Basically what would be needed is an Apple like company that had one executive who could make hard decisions and break compatibility with other Linux distros. They could undercut Apple on price by leveraging all the shared work from other Linux developers. Alas, it is just a pipe dream for now.

  14. Slightly Stacked Deck by Brownian+Motion · · Score: 5, Interesting

    You limit to significant open source programs that have to originate on Mac OS X.

    That's right, let's compare vs. Linux (1991) vs. OS X (2001).

    And, since you said, 'significant', this makes it a bit harder, as to be significant, something generally has to be around for awhile, reducing OS X's ability to produce something.

    And guys like you crack me up, as, a bunch of significant open source programs did not originate on Linux - the Gnu tools, gcc, perl, Apache, X11, python, samba, java, and I'm sure the list goes on.

    I couldn't find out where mysql started. But that's three letters out of LAMP that didn't originate on Linux. Linux could not have originated ON Linux by definition, and I'd have a hard time counting it anyway, since it owes heavily to Unix in design and implementation. (Note: this is not a knock on Linus, or Linux, just if you're getting picky, w/o Minux or UNIX linux would not exist.)

    Apple has made contributions back to open source, the easy example here is KHTML which even ended up changing it's name to WebKit.

    Apple has originated open source projects as well. Take a look at iCal Server, which is an open source, cross platform Calendar server written in python.

    launchd is open source, and I vaugley recall that it inspired some changes in Linux booting.

    Others have noted several user supplied open source projects.

    It's hardly a one way street Open Source -> Apple.

  15. Google engineers' equipment by LauraW · · Score: 4, Informative

    >Actually, Google developers have *Linux* boxes by default,

    True, on the desktop.

    >so many of these people are opting for Mac over *Linux*.

    Not true, mostly. Most developers have Linux desktops, since most of us work on server-side applications. (Many of us have more than one, actually. I have an extra one that runs my group's continuous builds and tests.) But engineers who are working on Windows or Mac apps have a desktop box running one of those. Or maybe more than one if they work on multiple platforms. All of us also get a laptop if we want one. We can choose between a Mac or PC laptop. Most of the folks with PCs run XP on them, but some run various flavors of Linux. (I have an XP laptop because that's what I still use at home, mostly due to Photoshop and Lightroom. I dumped the Mach for NT 4.0 back in the days when Macs had no protected memory or hardware multitasking and crashed all the time. Next time I upgrade my home machine I may switch both back to the Mac.)

    The reason I said "mostly" is that some people I know run their main monitors off of their Mac laptops and do remote X sessions on their Linux boxes so that they get the best of both worlds: the Mac UI and all the development tools on Linux.

    One thing I love about working at Google is that they give us all the tools we need to do our jobs. You get all the computers you need, and primary workstations come with a 30" monitor or two 24" ones (your choice) and a ton of RAM. If you need another software package (say, an IDE) or more RAM, you just file a "ticket" asking for it, and it shows up on your desk a few days later. Most items don't need approval. I just asked for an 8 Gb RAM upgrade for one of my workstations recently (for analyzing insanely large heap dumps) and got it with no questions asked.

    -- Laura