47 comments

[ 2.8 ms ] story [ 88.7 ms ] thread
It would be an interesting move. I would see one or both of two things happening. First, people would take it and run with it, eventually coming up with a decent piece of software. Second, Apple could do the same. Either way, though, Adobe would lose control for sure.

The big question to me is, why isn't Adobe serious about making this technology better? I mean, if Flash worked superbly well we might be not having this discussion. If they want sole control, then it has to work. If they can't fix it, find someone who can, or release it and let the masses figure it out. I think Jobs is right, they're lazy. They wasted a good position.

'lazy' is one way to put it. another might be 'paralyzed'. it's a rare company that gets as big as adobe without growing so many layers of middle management that it becomes difficult to get anything done anymore.
<em>"The big question to me is, why isn't Adobe serious about making this technology better? I mean, if Flash worked superbly well we might be not having this discussion."</em>

It's much better than it was, and about to become even moreso. The major part of work over the past year has been invisible to you so far, but cross-device predictability is coming from almost every major manufacturer this year.

The Apple problems are only partly about technology.

I have always been under the impression that the primary sticking point with Apple with regards to Flash is that it would allow the implementation of everything in the App Store without involving Apple.
it would allow the implementation of everything in the App Store

How?

On the other hand Flash wasn't welcome on the iPhone when Apple didn't want native Apps made by third parties running on it... the App Store was an afterthought, leaving Flash on the side of the road clearly was not.

Or maybe the App Store was just a very well kept secret...

Apple didn’t have to release WebKit as an open source project — they could have taken the BSD-licensed KHTML and kept their derivative rendering engine private.

Yes, they did have to release it as open source, as KHTML is LGPL, not BSD licensed. I don't believe for a minute that Apple is any more open than they are legally required to be, and even then only after some arm-twisting.

Why won't Apple want WebKit everywhere? The value of a html rendering engine is proportional to the number of clients running it (especially in 2003 when the project was announced). The fact that WebKit has become large enough that it can't be ignored (thanks to multiple vendors using it in their browsers) is a huge boon for Apple.

LLVM, Clang, Darwin, libdispatch and many others are all liberally-licensed open source projects that Apple leads. More contributions are listed at http://www.apple.com/opensource/.

This isn't because Apple cares about software freedom, it's a simple calculation: these are components of the system that need to be high quality, but don't differentiate the product. If using and contributing to open source software makes the systems programming simpler, the business case has been made.

They released blocks.
Now if the gcc mainstream folks would just integrate it. I like gcc's non-standard nested functions for C, but blocks is superior. Sadly the gcc folks don't seem interested.
GCC's non-standard extensions are typically compiler features, whereas Apple's "C blocks" involves a substantial addition to the runtime. IMHO the GCC folks have good reason to avoid runtime extensions.

Apple does provide the source for their blocks environment... But it's the type of code that probably has subtle platform-specific ABI dependencies. Who is going to port and verify it on all the platforms GCC supports?

If the copyleft portion of the LGPL applies to the parts of WebKit outside of WebCore, then how could WebKit be released under the BSD license?
Good point, here's a block from the WebKit goals page.

WebKit should remain freely usable for both open source and proprietary applications. To that end, we use BSD-style and LGPL licenses. Specifically, we aim for licensing compatible with LGPL 2.1+. We do not currently plan to move to LGPL 3. In addition, we strive to create a courteous, welcoming environment that feels approachable to newcomers. WebKit maintains a public IRC chat room and a public mailing list where the ideas of contributors both new and old are heard and discussed with equal weight.

I'm pretty sure the code coming out of Apple's WebKit team is more than what the LGPL legally requires -- remember, LGPL is much more lax about what you can do in terms of building on the work without having to open up your own stuff.

Edit: And... yeah, they do go above and beyond, since there are bits in there that they've written and licensed BSD. If that code was encumbered by LGPL they wouldn't have been able to relicense it or claim original authorship.

I don't believe for a minute that Apple is any more open than they are legally required to be...

You would be right to point out that Gruber was mistaken in saying KHTML is BSD-licensed, but the rest is demonstrably false.

They were legally required to open source WebCore, derived from KHTML, because it is LGPL. And they did so, as soon as Safari was announced. They were not legally required to release WebKit, which is BSD. That release came several years later, and is certainly a more significant project than KTHML or WebCore alone are.

> I don't believe for a minute that Apple is any more open than they are legally required to be, and even then only after some arm-twisting.

Too bad this was upvoted so highly because you clearly have no idea what you're talking about. Review the history of Apple's involvement in the project.

(comment deleted)
That article gives Apple way to much credit. KHTML is LGPL licensed They had to release source. Blocks in GCC had to release source. The only thing he gets right is that Apple contributes to BSD licensed LLVM, but then he calls it Apple's technology. The project was around a long time before Apple showed up to contribute.

So on the whole I'd say Apple doesn't care if its technology is open or not as long as they are in control. Note the KHTML guys have said that Apple has dorked up the source so much that they basically can't use anything Apple has done, pretty much the same for GCC. LLVM is the only project where they seem to be playing nice and I don't see that lasting past the point where Apple starts using it heavily.

It's worth noting that Apple's chief compiler architect is Chris Lattner, who started LLVM as part of his Master's Thesis. I think "playing nice" has more to do with hiring the founder and lead of the project than with any Apple policy.

Although, yes, I found it odd that Gruber implied it was Apple's technology.

edit: Lattner's page with publications and projects: http://www.nondot.org/sabre/

Apple didn't invent LLVM, but they certainly control it now that they employ all the core developers.
Apple doesn't care whether the technology is open, so long as nobody else has sole control.

Supporting open web standards is the only way Apple can provide a decent web experience without constantly playing catch-up to whatever Microsoft implements in IE.

Creating OpenCL as an open standard was the only way they could provide GPU computing that wasn't totally controlled by NVidia, but would still get support from GPU vendors. Unlike Microsoft, Apple doesn't have the resources to maintain their own proprietary GPU computing language.

Killing Flash is the only way Apple can give their users access to dynamic web content with good performance, because Adobe clearly doesn't have the motivation to do it for them.

libdispatch is Apple's way of trying to make multithreaded programming easier, and open-sourcing it is the only way that it will become popular enough for most programmers to bother to learn it. Apple wants third-party software on their systems to be multithreaded so that it won't make their system seem slow. Similar things can be said about some of their other open-source projects, like launchd.

Overall, it feels like open-source is one of Apple's tools for avoiding the influence of monopolies. When Apple weakens existing monopolies or prevents the formation of new ones, it has the side effect of helping all the other little guys, too.

Oh I agree open standards and open source has saved their bacon and will again in the future. To bad they seem intent to go the embrace and extend route.
Where do you think Apple is doing an "embrace, extend, extinguish"? Can you point to an open standard that they have added proprietary extensions to?

Apple definitely mixes open and proprietary components in their own systems, but I don't see how that hurts any of the open parts, since the closed parts serve different purposes.

They took free bsd made their own OS. Have they given back to BSD? Not in any major way. Sure they released Darwin but now they started keeping parts back to stop hackintoshes. They took KHTML for webkit sure they release source as required but they don't contribute upstream. So they embrace and extend but so far they have only taken from places that are so impoverished that their is no point to extinguish(desktop freebsd, KHTML user share?)
You're using a very strange definition of embrace, extend, extinguish.
With KHTML they became the de facto upstream very quickly, though it took a few years for the KDE people to play along, become downstream, and make it de jure.

Apple has employed a bunch of the FreeBSD developers, but there's really not that much relevant code there, much less contributable code. The non-mac-specific patches to the userland utilities does make it upstream.

You are correct in that most of the FOSS projects that Apple picks up were playing for relative tiddlywinks before they came along with piles of money (excepting GCC and maybe CUPS). They're one of the only companies that has done this kind of thing with any success.

KHTML is LGPL licensed They had to release source.

And then they also opened up (BSD license) a bunch of other stuff they didn't have to. "Apple only open-sources when a license holds a gun to their head" is, unfortunately for many commenters here, a myth.

Yes, this is one of those times when the voting distribution in the discussion absurdly contradicts the facts.
There's also CUPS. Even though Apple bought the rights to it, they kept it open. Also, the KHTML-Apple relationship appears to have been fixed (according to Wikipedia, anyway).
But what if the source code to Flash Player is — as many would wager — a huge steaming pile of convoluted C++ horseshit? It’s sort of like what if Microsoft open-sourced the Internet Explorer rendering engine.

Flash Player was rewritten for AS3. It's actually two engines: AVM 1 (Flash 8, AS 1 & 2) and AVM 2 (Flash 9, AS3).

So only half of the pile actually stinks...

Why are you assuming the second pile got any moreattention to quality (vs. "we have to ship it") than the first one?
The point here is AVM2 is new, not "piled on" code like AVM1.

Pong: why should I assume they didn't payattention like somepeople are prone todo?

Sorry. iPod Touch combined to fat fingers.
But the VM was never the real problem: it's all the native runtime code that's dogshit everywhere but 32-bit Win32.
This started off interesting but quickly got tainted by retardedness... zomg it's pointless opening it because the code is probably crap and zomg everyone's already using teh html5 for everything!!! That same argument could have been why not to form Mozilla on the ghost of Netscape just a handful of years ago.

I think the idea's got a lot of merit, it'd definitely help Adobe in that someone competent could actually fix and stabilize their platform. But I also think it'd be pointless, the iPhone/iPad would only get an Apple-tailored fork with all app-like capabilities removed.

I don't think Apple is thinking this through clearly enough.

It's pretty well agreed that Flash is a buggy resource hog (at least on non-Windows platforms). Unfortunately, HTML5 is not quite a drop-in replacement yet. Hell, even the AJAX/DHTML ninja at Google have to break down every now and then and use Flash (StreetView, Google Talk, etc).

Additionally, you have the fact that Google has hinted that Flash will be on Android platform soon.

Though it would be great for web standards, the last thing Apple needs right now is to be trying to force people to quite their Farmville-esque habits cold turkey while the up-and-coming Android phones are beckoning them back into the alleyways.

Apple must have some awfully spectacular features in the works for iPhone 4 if they think they can pull this off...

In my experience Flash on Windows is a less-buggy resource hog, so that statement is somewhat universally true.
What if they offer to pay for development of a Farmville app and a Hulu app and just go through one by one knocking out all of the killer Flash apps and turning them into native iPad/iPhone apps?

They've already got the YouTube app. And that looked pretty dang gorgeous.

Keep in mind that Adobe's already pushing their Flash-to-iPhone (App Store) compiler.

And that many (most? I'd imagine!) Flash games would be rather sub-optimal, if even playable, without modification to support multitouch instead of keyboard/mouse.

So if I were Farmville, why wouldn't I just wrap my modified-to-support-multitouch FLV with Adobe's tool and put it on the App Store?

Then maybe we'd have a fast and stable implementation of it with things like built in accessibility.
The problem for Flash is just like the problem for IE — the web has already moved on.

I don't know which planet John is from, but the above is certainly not true on my planet. Some people may wish and/or hope that, certainly, but the reality is not that.

If he had written "the web wants/hopes/wishes/etc. to move on" I would have paid more weight to the rest of the argument, but "has already moves on", yeah right.

"... I do understand the fear. It’s indisputable that Apple seeks large amounts of control over its products. So it’s a reasonable question to ask whether Apple sees the web itself, which they have no control over, as a problem. I don’t think that’s the case at all, though. The web, as a whole, is arguably the single most entrenched computer technology ever created. So where Apple seeks control with regard to the web is in the technology to render it ..."

The weakness or limitation of the Internet is it's Hubs. Compromise or take down a hub and the network fails. Crackers go for DNS. A smart business will try to monopolise publication of information, news and media. Publishing of information on the Web is a Hub. Hence the tussle between traditional newspapers and electronic publishers like Apple and news distributors like Google.

It's irrelevant. Apple has already decided they can move forward without Flash. If they won Flash in the lottery they still wouldn't incorporate it in their mobile platforms regardless of how clean the source is...why would they bother?

Yes, there are still large parts of the web that rely on Flash. And popular parts of the web. But none of them are important parts of the web. There is no critical Flash-based infrastructure that, if Flash went away tomorrow, would prevent people across the Internet from doing their jobs. You can't run Farmville without Flash, but Farmville is a fad...six months or a year or two years from now people will be obsessing over some other online diversion.

The only people who depend on Flash are the people who design and run the sites with Flash content. Lots of others enjoy Flash but can live without it.