One benefit to open-source applications is they can run on any operating system you want. But getting open-source software developed for the Mac is — depending on whom you ask — slow as molasses or quick as lightning. Mac expert Lisa Hoover collected several viewpoints. Which do you think is right?
Macs are definitely not the redheaded step child of the open source world. I find some of the opinions in that article hard to substantiate. For example, on page 2 John Mark Walker claims that opening up the OS X widget libraries will spur open source adoption. Like … huh?
Though one thing I do agree is the statement that Mac users will not settle for poorly written pieces of software. Anything that doesn’t have as it should, gets thrown away. The end result is that open source projects specific to the Mac appear, and flourish.
One example would be Adium. Pidgin looks like crap on the Mac thanks to the lack of a viable GTK+ Mac port. So Adium steps in and uses libgaim as its backend and slaps on a nice professional looking Cocoa front end. The result is a beautiful application that integrates well with OS X that leverages open source software.
Open Source on the Mac is fine. Developers just cannot bank on having one code base and then expecting it to work on all operating systems without any issue.
“Good Enough” isn’t good enough on OS X.
Adium is a prime example. Open Source will flourish on the Mac, as long as it’s for the Mac.
So Mac people have to “fork” every project like they did Adium, cause hardly any open source projects are started on Macs.
Well .. maybe OT4 gpl and KDE4 will change that in a few years ( not too soon I guess ).
There is no fork involved with Adium. (at least not this far down the line)
It’s standard libpurple, with their own Cocoa front-end.
You have to understand that open source on the Mac does not always equal “portable” & “cross platform”. It just means open source, and that’s it.
Edited 2008-07-09 13:55 UTC
In other words, “portable” & “cross platform” are weak points we don’t really want to discuss?
But I know how you feel. GTK isn’t much more acceptable on Windows.
I dunno. VLC media player seems to be doing pretty well on the Mac platform. Most of the Mac users I know prefer VLC over quicktime.
Most Windows users too
Ever tried playing a MKV containing 1080p h.264 video with VLC?
Edited 2008-07-09 15:50 UTC
Actually, yes. I had a hard time. Then I tried QuickTime. Suddenly, VLC’s hard time seemed like paradise to me.
But my anecdotal reference is probably not a good gauge.
Well I tried it not just on Macbook with VLC, but on windows opteron desktop also and not just with VLC but with CoreAVC also. And in all cases I couldn’t play with out dropped frames. Most of the CPUs out there today cannot play that. openCL may change that.
Having a video card with HD video decoding hardware helps now..
They prefer it because all the really useful stuff in QuickTime requires the Professional License and then it’s overkill for most users.
Of course QuickTime X being Pure Cocoa utilizing OpenCL and Multi-Core from the ground up with the design of the consumer not needing all the add-on codecs to do some of the work they’d like to do, as a bonus for buying Snow Leopard, will enjoy it immensely.
Hell, even VLC will benefit if it writes to the Snow Leopard QTKit for Cocoa under 10.6.
More like they will not settle for anything with poor interface. I have used a number of applications which had limited functionality but excellent interface.
To be serious, I think pidgin looks like grap on Windows and Linux also…
If you write your front-end correctly, that is, don’t build business logic into the views (MVC), then porting from one platform to another is not only reasonably easy, but you also get a “native” experience, which users of all platforms prefer.
Writing Aqua (Cocoa), WPF (.Net), Gnome (GTK+) or whatever is not that hard if you are only creating a front end without the business logic… There will always be exceptions, but this general rule holds true most of the time.
For larger commercial projects I write views with this in mind, it’s a little harder to begin with, but the benefits, not just in portability, but in adding functionality, maintainability, delegation of work and so forth are worth it…
Ah, so what’s my point. If you are creating your app/suite to be an open source project, and you want it to be “native” on more than Linux, then MVC (or similar) is not a bad way to go…
From lots of posts that I have read here, it’s not just Mac users who prefer a native look…
Look at Transmission, probably one of the best OSX apps out there thats open source.
Open source doesn’t necessarily mean cross-platform. People get that confused sometimes. There are plenty of OSS projects in OSX, not to mention that Apple themselves contribute code to the OSS community. Mac applications have a different standard than other platforms, the interface is paramount in OSX, if the interface doesn’t get proper attention then it usually gets ignored. Thsi usually translates to developers using the native toolkit since it usually easier to use than the alternatives and that is exactly the way Apple wants it. why use anything else but cocoa when all the tools are provided for you right in the os?
Running CoaCoa (OSX’ API) yes, however Apple includes an X11 environment with OSX that allows the user to compile most apps easily or by using darwinports’ portage tree. OSX just runs a BSD backbone – based on FreeBSD – that allows it to run most Open Source apps with ease. Just because it doesn’t have the “Aqua” finished look, doesn’t mean it doesn’t run fine..
Well, yeah. But we just don’t like it not native.
Have you run applications on macosx using X11? It doesn’t work the same, its not just about looks its about functionality and using X11 through OSX is almost like running parallels, it may look like its running native, but its not. Many things don’t work correctly.
Apple is probably more hostile in its practice to the ideals of open-source than Microsoft. It has more lockins, it has proprietary hardware and software wherever it can. It does everything technical and legal that it can to prevent people using its hardware and software in any other way than it wants them to. This is from the lockins in iTunes, to the lockin of the OS to Apple hardware, to the lockin of the iPhone to one network. And to iTunes. Does it ’embrace’ open-source, as one of the comments put it? Of course it does not. This conduct is totally contrary to the open-source value system. Apple takes everything it can, if you call that embracing. But open-source and its values has no other influence on Apple.
This creates a problem for Cupertino. The business practices of the company are more restrictive and closed and anti competitive even than those of Microsoft. But its users really think they are moving to something which is a different, gentler, nicer, more liberal animal altogether and are full of a liberal idealism which the company’s practice is incompatible with. So what has to give is marketing. Somehow we have to sell the company as something which it is not and never will be. And so we get articles like this, which pretend that there is some sympathy between Apple and open-source.
There isn’t. Its like reading an article that pretends that Pepsi is more sympathetic to the organic food movement than Coke. Sickening, and absurd with it.
Lets be clear. Microsoft has done more for open-source than Apple ever will. Its greatest service was to split standard hardware from the OS. It is this that allows us to buy a white label PC with no operating system from one of 100+ suppliers, and know that we can install the Linux or Unix distribution of our choice on it. Never think Apple for a moment is sympathetic to OSS. But do expect it to pretend to be as long as its a convenient way to burnish its image.
You doubt it? You are filled with indignation? Well, lets make a suggestion. Try getting some help from Apple to install OSX on someone else’s hardware. And when you get through, try buying an Apple computer without having to buy the OS with it, so you can put Debian on it and not pay for what you don’t need.
Still think Apple has some special sympathy for OSS that MS doesn’t have?
Edited 2008-07-09 17:10 UTC
No indignation here, more like pity. It’s a pity you wrote such a long rant and it’s a pity that it’s non sequitor.
Apple contributes to the following open source projects:
– CUPS
– GCC
– WebKit
– LLVM
I’m sure others will chime in and provide you with a comprehensive list of Open Source projects that Apple is actively involved in.
You seem to have a bone to pick with Apple because they do not allow you to run OS X on anything other than a Mac. Guess what? It’s a totally different business model to what MS and other Unix companies are adopting. Looking at the bottom line, it seems to work really well for them
Don’t like it, don’t use it. But credit where credit is due. Apple does contribute back to open source projects, and there is a very vibrant open source community on OS X. In fact, there is an even more vibrant shareware community on the Mac something that Mac a very attractive platform for hobbyist programmers.
No, I’ve no desire to run OSX on anything. Neither like nor approve of it. But I do think that:
Locking the OS to your hardware
Locking the iTunes store to your purchasing software
Locking the tunes themselves to your player
Locking the iPhone to one particular network
Locking the iPhone to iTunes
And initially, trying to bar third parties from writing apps for the iPhone
Is an approach to doing business that is totally incompatible with open source values. You are right, it is a different business model all right. As for shareware, it has nothing to do with open source, its just a different method of marketing proprietary software. Who cares how much shareware there is or is not for Macs?
The interesting thing is why people try to deny this. I think it happens because of a felt need to pretend the company is not what it really is. We approve of open source because it has values that sound good, we approve of Apple because we do, well then, they must be compatible, Apple too must have those values.
It must, mustn’t it? Alas, no.
Yes it does but for its own profit, not for OSS.
Apple owe more to OSS than the reverse. Indeed it built its business model on OSS !
I’m sorry but they don;t owe OSS anything. That’s why its OSS. the only they owe it is the code and they vie plenty of that already. Thus far they have helped more than they’ve hurt.
And why do you think, say, IBM contributes to open source projects? What about RedHat? Novell? Sun?
I think your rant does actually have a point, but you’re confusing different topics. Company’s need a reason to be in business, and “perfect” open source software would kill most business models: free software, cheap hardware, and easy interoperability.
As much as I prefer the business models of RedHat, etc, they obviously benefit from the fact that the software isn’t always intuitive and easy to configure (that slightly side-steps the fact that they make money providing services for the OS). For the desktop, that model doesn’t really make sense and you have something like MacOS X. Microsoft benefits from running on any kind of hardware, but they didn’t do that for OSS, it’s just something that happens when you can plug multiple components in.
I think the thing about Apple that harms OSS the most is using proprietary formats/protocols. Microsoft does that _and_ is militant in keeping a monopoly alive. At least with Apple, some argument can be made that they want their stuff to “just work” and their formats help them accomplish it.
On the other hand, a lot of developers and users like Apple because they use open source as a foundation (which also makes using that platform somewhat easier for development) and they contribute back, even when the projects don’t require it.
I certainly don’t love Apple, but I don’t think it’s nearly as much of a threat to open source software.
Hm. Was it Microsoft that let you buy a white label PC that would run “any OS” or was it the BIOS vendors reverse-engineering IBM’s BIOS? Microsoft is happy to SELL their PROPRIETARY product to anyone who wants, and Apple doesn’t want to “part-out” their software/hardware solution, but Microsoft is just pushing their proprietary solution(convicted monopoly) ‘on top’ of functionallly open hardware… Oh yeah, where are those contributions back to “Open Source” instead of just milking it?…
It does seem strange, that for doing “everything technical and legal that it can to prevent people using its hardware and software in any other way than it wants them to”, Apple isn’t even using Intel’s TPM chip to try and lock OSX onto it’s own hardware. You probably wouldn’t want to use my laptop, either, as it’s running evil anti-Open Source Apple OS X on top of it’s cheap-ass low-end Compaq hardware.
The thing is, plenty of companys that solely known for being “Open Source Companies”, i.e Linux vendors, etc, sell a version of their software that is different than the free version. Darwin is free. Aqua is not. You might note Apple’s contribution to WebKit, which many of their competitors in the smartphone arena are now using (Nokia, etc). And it’s usually the most Acid3 compliant engine. That’s lock-in, folks.
The complaints about the remaining numbers of PowerPC computers as being an open-source obstacle…!?!?!? So non-compatability with Microsoft De-facto standards is opposed to open source? So this means IBM selling Power-based servers is anti-Open Source? When they’ve been pushing Open Source/ Linux like no-one else!? You have to wonder, then, whether GCC is secretly trying to subvert Open Source by targeting non-x86 architectures…. I mean, they even target ARM!!!! That means you might even try to run Linux on your cellphone!!! Don’t they understand the beauty of Windows Mobile?
It should be noted that Apple always stated they didn’t want to sell DRM music, but that was what the “Music Majors” insisted on. Apple now sells plenty of DRM free music, they just refuse to sell DRM music except for Apple’s FairPlay. Also note Apple support of open standard: mp4/aac, along with h.264/QuickTime container format (not free, as the codecs are owned by many parties, but open)
But Microsoft has to be applauded for it’s efforts to promote “Open Source”. By losing their shorts to the EU Competion Authority in court, and being forced to hand over their proprietary binary file format specifications and server protocols, the Open Source community is alive and thriving. At least more so than they were when Microsoft was still forgetting how much they loved Open Source, and were trying to keep all that stuff under lock and key.
Edited 2008-07-09 20:48 UTC
I’ve been brutal concerning software available on Linux but I’m also brutal about Windows software. There is something so good about software that doesn’t get in the way, that shows you in a quiet way how to proceed to the next step, and that helps you achieve it with a minimum of fuss.
The problem with most open source software is that there is no visual design staff and there is no documentation staff. Elegance inside the code rarely is seen on the outside, so no matter how beautiful it is inside, the end user doesn’t care if it looks messy on the outside.
Isn’t good software supposed to be ignorant of the processor? There are always quirks jumping from one platform to another, but the compiler should handle processor specific quirks (unless you’re using Microsoft tools) instead of the programmer. It’s not like we’re spending time unrolling loops now, are we?
I’ll admit that I’ve had an argument or two with the Apple Developer Connection people about proper tools, but generally, it’s all gcc in the end. I’d say it’s more about a lack of experience targeting multiple platforms that makes any software difficult to port. Maybe, people writing software just need more experience with other platforms.
However, most of the XWindows-targeted software I’ve tried on Mac OS X worked just fine. Even Evolution worked okay. Don’t start me on Pidgin/Adium, though.
I’m not positive, but I’d guess that there are a fair number of artist-types (who are reasonably tech savvy) that would be willing to help with UI design if it was easy to do in Linux.
I rant about this occasionally, but I truly believe that people need to start completely separating the UI from the functional code. The desktop UI is more complicated (or at least quite a bit different) from the web, but I think something similar should be possible with the desktop.
For a web designer working with a backend application, they’re usually using templates and don’t have to mangle HTML in to code. “I have these variables available for my interface, and there are simple constructs for loops, etc.” I’d love to write apps that export functionality that someone with little to no programming knowledge could use to plug in a sexy interface.
Plus, pluggable architecture is totally the UNIX way 😉
Let’s face it: When you write OSS code that supports Apple’s commercial interests, you’re nothing more than an exploited slave. They’re laughing their way to the bank. You’re sitting in your parents’ basement.
Edited 2008-07-09 19:56 UTC
Someday, when you get your tongue out of Steve Ballmers ass, then we can talk.
Shouldn’t you be waxing Stevie’s car or buffing the Apple sign at One Infinite Loop in Cupertino? C’mon! The Apple capitalists need free labor. Sign up today!
Edited 2008-07-10 00:51 UTC
As a person of red headness I find it offensive to use that term.
1) As others have pointed out on this forum so far – opensource does not equal multiplatform, although there is the potential for multiplatformness.
2) I’d love to see Apple fix the issues which developers come across when writing software – turn Mac OS X into *the* development platform by quickly fixing up bugs in the framework as soon as they’re found by third parties.
3) Regarding integration, the one thing I think opensource developers need to realise is that we Mac folk are particularly fussy about our applications – we not only want our applications to work, we also want them to fit into how things are meant to work on Macs.