"Open Core" is not the reason why Ubuntu is "making headway in the UI department". It's the work of a large community of developers, many of whom do not work for Canonical, and indeed, work for competing companies.
"Open Core" generally involves a single controlling stakeholder, which almost always means no properly enfranchised co-developers, no developer community, no collaborative innovation, etc.
I like the idea of a startup putting a slick frontend on OOo because it'd be just what I want - but it'd be a tough slog for them to make money from, so I'm not expecting to see it anytime soon.
Notice how much more popular Ubuntu is than Fedora, a distro that is more strict against proprietary software, but is criticized for including firmware support. Very interesting.
I love Ubuntu because its commandline and developer
tools are fantastic, really a pleasure to use
Then you should give credit where credit is due: to Debian, not Ubuntu.I love Ubuntu for their UI breakthroughs, but I'm only tolerating them for stealing Debian's work as long as Ubuntu stays free (as in price).
If you want to sell your Linux distribution, at least build it yourself.
So I could develop useful applications for myself or
other developers, but not for too many end users.
If your app is so dependent on GTK+ as to be unportable to other platforms, you're doing it wrong.That's a completely unfair statement. I wasn't aware following the license of an open source statement constituted stealing.
Then you should give credit where credit is due:
to Debian, not Ubuntu.
I didn't mean to say Ubuntu, actually. I just meant that Linux is a great place for developers because the tools are there (and fantastic). That said, making (say) my Ruby Unix utilities available to my typical audience (my boss... very much on Windows XP) just doesn't work. Instead my workflow goes something like... 1. code a nifty tool to process data, 2. realize that my boss probably doesn't know what a commandline is, and 3. shoot him an e-mail saying "send me your data files, and I'll have my program analyze them". There's a disconnect there that seems hard to break if we don't get a useful/clean UI system going. And not many developers are willing to add UI sugar to their solid open-source libraries. If your app is so dependent on GTK+ as to be
unportable to other platforms, you're doing it wrong.
I guarantee the typical Mac or Windows user is not going to install my GTK app on their computer, whether it's portable or not. Mac users will loathe the new interface and icons, while Windows users will not like the manual upgrades or quasi-FHS-compliant config file locations.If instead you're suggesting I recode my GTK app in Cocoa and .NET, I can't use my beloved Linux tools for that, so in that case, I'd stick to coding on non-Linux platforms.
I think the article linked here is too extremist. I still believe open core can be done in a manner that satisfies everyone. On the other hand, I can't think of any good examples.
> If you want to sell your Linux distribution, at least build it yourself.
So you're saying that what the free-software community really values is more package managers? Red Hat, SUSE and Debian all have their own, and if you want to be respected like the big boys you'd damn well better invent your own packaging format?
According to the author, this is exactly where Canonical is headed, because (1) Canonical demands contributors to assign copyright to them, (2) the terms of the copyright assignment offer no protection against Canonical making the code non-free in the future, and (3) Mark Shuttleworth seems to imply that making code non-free is exactly what he's going to do with code that was contributed by others.
Or does Open Core mean that they can take my code and use it for their own means without my permission if they so choose? (But I can continue using and developing mine myself.)
This line of thought comes from curiosity, not because of an agenda. I really don't know what tack I should be taking here, so insight is welcome.
Is there a problem with a company taking source code that I've licensed as free to use (code that I haven't bothered to make consumer-friendly, just well-written) and then turn that into a viable product, where the core of the product--my core--is very much open source? If not this way, then how will the vast majority of open-source products find acceptable use to the everyday consumer in the market of applications?
It seems to me like many open source programs don't strive to improve the user experience, at least very rapidly. For example, OpenOffice (to me) could use a lot of tweaking, at least in GNOME. For such an open product, I can't modify very much about the interface as a user. Of course, I could go in and recode part of the application to my liking. But I probably don't want to expend that kind of effort just to get a suitable (to me) looking product. Evolution also comes to mind. There are changes that I find obvious and pressing--appearance settings, more minimalist interface, better interface with an external contacts manager--but have yet to improve. Where will the impetus for these kinds of changes come from if there is no monetary incentive?
If allowing a company to add proprietary UI goodness on top of an open source core means that we get solid products with a secure, beautiful, open base, what is not to like? If a developer can develop solid, clean libraries and then license his product for other companies to follow through with design that he doesn't want to do, why not support his decision to do so?
Especially in an arena where standards and interoperability are valued, it seems like allowing a company to use open source code in its proprietary software won't harm data portability or open source ideals. For example, say some startup X takes OpenOffice's core and redoes it using slick GTK and innovative UI elements. The company will likely fail unless its quasi-proprietary software supports open document format standards. (Interop with existing standards is likely key to success in current data processing markets.) If indeed it does support those standards, and I know what the core source code is, what do I care if the UI code is proprietary? I get a solid program out of it and can take my data elsewhere without conversion if I become dissatisfied.
It seems to me like the alternative to a hybrid model is a developer-centric platform and ecosystem that lacks many end-users to develop for. I love Ubuntu because its commandline and developer tools are fantastic, really a pleasure to use. But I have maybe 10 friends who also use Linux. So I could develop useful applications for myself or other developers, but not for too many end users. Without compelling UI, this situation isn't likely to change, right?
I know that Ubuntu is making headway in the UI department, and I think 10.10 is slick. Is that a result of the movement toward OpenCore described in this article?