User: Password:
|
|
Subscribe / Log in / New account

Mark Shuttleworth on the future of Ubuntu

Mark Shuttleworth on the future of Ubuntu

Posted Jun 4, 2008 15:45 UTC (Wed) by glynmoody (guest, #34032)
In reply to: Mark Shuttleworth on the future of Ubuntu by jdub
Parent article: Mark Shuttleworth on the future of Ubuntu

From the Mono FAQ (http://www.mono-project.com/FAQ:_General):

"How is Mono related to GNOME?

In a number of ways. This project was born out of the need of providing improved tools for the
GNOME community, and will use existing components that have been developed for GNOME when they
are available. Mono team members work actively on the Gtk#
(http://www.mono-project.com/GtkSharp) project: a binding of the GNOME class libraries for
.NET and Mono."

Part of the problem - and the danger - is that the relationship between GNOME and Mono is
rather ill-defined, certainly in terms of perceptions.  That makes Mono's very close
relationship with Microsoft a problem for GNOME - even if there has been a "less than lukewarm
embrace of Mono from the greater GNOME community."


(Log in to post comments)

Mark Shuttleworth on the future of Ubuntu

Posted Jun 4, 2008 16:42 UTC (Wed) by jdub (subscriber, #27) [Link]

But again, you're blaming GNOME for Mono. Miguel has done a lot of things that not everyone
agrees with -- why should GNOME be responsible for what he has chosen to do, just because his
experience with GNOME prompted it?

Please, don't confuse Mono (or Miguel) for GNOME and vice versa.

Also, you're suggesting that Mono has a relationship with Microsoft, which, to be completely
fair to the Mono folks, it doesn't. Yes, it's a Free Software implementation of a technology
designed by Microsoft, but that's where the "relationship" ends.

Say what you will about Microsoft/Novell and its impact on the viability of Mono (which
certainly didn't do it any favours in the GNOME world), but it's not like you're opting out of
all Novell-contributed code as a result.

Mark Shuttleworth on the future of Ubuntu

Posted Jun 4, 2008 16:56 UTC (Wed) by glynmoody (guest, #34032) [Link]

I'm not blaming anyone, merely pointing out that there is a conceptual link between GNOME and
Mono, and Mono and Microsoft; those doesn't exist with KDE, say.  

The problem is the vague nature of those relationships - you say there isn't one, but that
rather depends what we mean by a "relationship" - financial, logical, conceptual, emotional,
technical, etc.   

Ill-defined boundaries mean that it's hard to tell what's going on when vendors base their
offerings on GNOME: does that include Mono technologies? And what about when users install
apps - something small and innocuous like Tomboy, say - which uses Mono? 

Mark Shuttleworth on the future of Ubuntu

Posted Jun 4, 2008 21:15 UTC (Wed) by ajross (guest, #4563) [Link]

Oh, stop it.  You might as well rail on about KDE's incestuous and *clearly* unethical
relationship with Nokia.  :)

Argue about the software.  Don't spin about the politics.  Mono is a language runtime based on
a Microsoft standard, and with a good deal of integration with the core GNOME libraries.  Is
there something specific you don't like?

Mark Shuttleworth on the future of Ubuntu

Posted Jun 4, 2008 22:19 UTC (Wed) by glynmoody (guest, #34032) [Link]

I'm talking about the concrete threat that technologies for which Microsoft claims patents (at
least in those jurisdictions that recognise them) could appear on GNOME-based systems via
Mono. I don't think that's an issue of "politics", but concretely about one of the few
remaining weapons that Microsoft can use against open source.  Wikipedia has some links on
these issues:
http://en.wikipedia.org/wiki/Mono_(software)#Mono_and_Microsoft.E2.80.99s_patents

Mark Shuttleworth on the future of Ubuntu

Posted Jun 5, 2008 1:09 UTC (Thu) by jdub (subscriber, #27) [Link]

Despite the equivocation, even that article notes that the problems exist primarily for the
Windows API compatibility implementations, not so much the basic (ECMA-standardised, however
useful that might be) .NET platform. When writing a GNOME/Mono/C# application, you don't need
to use any of that stuff.

Given that other distributions have been comfortable enough to ship those pieces (for use with
a small number of GNOME/Mono/C# applications, only one of which is actually included with the
GNOME releases), and for OIN to include it among the software components it will protect, it
seems odd to focus on GNOME as a vector for Mono.

There is certainly no strategic adoption of Mono within the GNOME project (nor, it should be
pointed out, has there been of Java before or since it became usefully Free Software).

I'm not sure your blame attribution is correctly targeted. :-)

Mark Shuttleworth on the future of Ubuntu

Posted Jun 5, 2008 2:12 UTC (Thu) by felixfix (subscriber, #242) [Link]

No one is saying Gnome is in bed with Microsoft, but to say Gnome has no relationship with
Mono and Microsoft is disingenuous at best, and to compare that relationship to KDE and Nokia
is flat wrong.  Microsoft could bring a patent suit against Mono; they can change the API,
they can do any number of things to make Mono a poor country cousin to the city slicker from
Redmond, and that will all cascade into problems for Gnome.  There is no such problem for KDE,
least of all from Nokia.

Mark Shuttleworth on the future of Ubuntu

Posted Jun 5, 2008 6:15 UTC (Thu) by kripkenstein (guest, #43281) [Link]

Mono/GNOME and KDE/Nokia are very different, I agree, but I think not in the way you describe.

Nokia *owns* Qt, the foundation of KDE. This is a very close relationship therefore. And it
might have various consequences, for example, Nokia might decide not to allow Qt to be used to
create GPL4-licensed apps when that license comes out (speaking of which, does Qt allow AGPL
apps currently? I can't find a link). Also, Nokia might dramatically raise the cost of
programming proprietary apps in Qt, etc.

Mono has its issues (potential patent matters with Microsoft, copying another system instead
of innovating, etc.), but most of that is irrelevant to GNOME. Very few GNOME apps use Mono,
as I said elsewhere in this discussion, far more GNOME apps use Python for example. So, while
Mono is GNOME-focused (with GTK#, etc.), GNOME is not Mono-focused. Don't blame GNOME for Mono
having GNOME bindings.

Mark Shuttleworth on the future of Ubuntu

Posted Jun 5, 2008 7:14 UTC (Thu) by jdub (subscriber, #27) [Link]

Please, don't be deceptive: There is no organisational relationship between GNOME and
Microsoft or GNOME and the Mono project (that said, the principal development entity behind
Mono, Novell, is a member of the GNOME Foundation Advisory Board, but this does not involve or
imply technical influence).

GNOME includes only the Mono bindings and Tomboy in its official release set. New Mono-based
modules and dependencies in existing modules are special-cased in the release team inclusion
policies. This very clearly demonstrates that the GNOME community has not bought into Mono at
a strategic level, and that at any point we could cease shipping any Mono related software in
our regular six-month releases without great concern.

If it became clear through desire or force that the GNOME community could no longer ship the
very small amount Mono related software included in our official releases, we could. Tomorrow.

But right now, it's not clear, no matter what the non-practitioning extremists might want you
to think (note that I'm not including Glyn in that set, but I am disappointed that the
ill-researched and nuance-free ideas of those extremists have spread to bastions of sanity
such as LWN).

Unlike the other poster, I don't believe the KDE/Nokia situation is useful or relevant to this
discussion.

A bit harsh...

Posted Jun 5, 2008 17:27 UTC (Thu) by grantingram (guest, #18390) [Link]

Well although it is true that there might be no organisational relationship between GNOME and
$ORGANISATION.  As far as I can see GNOME (and I've been wrong many times before :-( ) is the
only major desktop shipping Mono applications.  

Now I'm a big fan of GNOME and suspect that the patent problems are the usual load of hot air.
But the fact that GNOME is shipping Mono based software seems to me as an outside observer
that GNOME has in fact "bought into" Mono at some level...  

Glyn's question didn't strike me as unreasonable and Shuttleworth's answer was quite
illuminating and I think the flak he is taking reflects more the sensitivity over this issue
rather than anything objectionable about the interview.  

Of course my contribution to the free software world has been to program as little as
possible, thereby significantly raising the average standard of code produced so what do I
know!  

Throwing out the baby with the bathwater.

Posted Jun 10, 2008 21:42 UTC (Tue) by Kamujin (guest, #52482) [Link]

I find it funny how close minded people are being about the benefits of C# and Mono just
because of its source.

I understand skepticism. I don't understand irrational fear.

I understand engagement. I don't understand isolationism.

Which camp are you in?

Throwing out the baby with the bathwater.

Posted Jun 10, 2008 23:54 UTC (Tue) by felixfix (subscriber, #242) [Link]

When one company has spent decades building up their reputation as someone not to be trusted,
it is only surprising that gullible people pop up now and again to trust them.

It isn't Mono and C# that are the questionable items, it is the company behind them, who have
made plenty of noise about enforcing their patents on those items.  Address that issue, and
perhaps then you will have some cred.

Throwing out the baby with the bathwater.

Posted Jun 11, 2008 12:55 UTC (Wed) by Kamujin (guest, #52482) [Link]

I agree that MS has earned its bad reputation.

I think your response proves my point though. I am not aware of any real patent issues that
exist with Mono and C#. If there are issues, then there should be debate and action taken to
correct them. I don't hear real issues being raised. I just hear a lot of anti-MS rhetoric.

If your just going to dismiss a really good technology because you don't like who invented it,
I think your making a mistake.

Throwing out the baby with the bathwater.

Posted Jun 16, 2008 12:31 UTC (Mon) by occ (guest, #38482) [Link]

>"Which camp are you in?"

I'm in the anti- "false dichotomy fallacy" camp. (1)


"I find it funny how close minded people are being about the benefits of C# and Mono just
because of its source."

I find it sad how gold-fish-memory like people are being about the said 'source'. Heck the
recent story of another of their ECMA so-called-standard  - pushed down ISO with corruption,
pressures, ballot stuffing and plain smear campaigns - should alone give any rational person
pause.(2)



(1) "you are either with me or against me" (a brilliant early 21th century philosopher circa
2001.)
(2) "Fool me once, shame on ... shame on you, fool me twice ... euh. fool me I can't get
fooled again" (same brilliant early 21th century mind, circa 2006)

Throwing out the baby with the bathwater.

Posted Jun 16, 2008 16:12 UTC (Mon) by Kamujin (guest, #52482) [Link]

I think your being extreme.

"Trust but verify" is what I am advocating. Not blind acceptance. And certainly not the "I'm
smarter then the world" attitude that is the logical implication of your disengaged viewpoint.

Mark Shuttleworth on the future of Ubuntu

Posted Jun 5, 2008 3:26 UTC (Thu) by elanthis (guest, #6227) [Link]

Why did you leave out OpenGL, for which Microsoft has some patents thanks to acquisitions from
SGI?

Why did you leave out Samba, which is clearly just a reimplementation of Microsoft's obviously
patented protocols?

Why did you leave out FAT file system support we all use on memory cards, which is a Microsoft
technology?

Why the hell do you think that a KDE-based distribution can't have Mono?  Or an XFCE one?  Or
one that doesn't even have a GUI?

Just own up to being a bigot and quit trying to cover your ass with generality and assumptions
stated as facts.  Your clear copying of Microsoft's FUD technology might open you up to a
patent lawsuit, you know.

Mark Shuttleworth on the future of Ubuntu

Posted Jun 5, 2008 4:36 UTC (Thu) by lysse (guest, #3190) [Link]

Perhaps, in between the "preview comment" button and the "submit" button, there is an
occasional need - one I've fallen foul of myself at times - for a "have a cup of peppermint
tea and chill out a bit" button...?

Mark Shuttleworth on the future of Ubuntu

Posted Jun 6, 2008 12:37 UTC (Fri) by filipjoelsson (guest, #2622) [Link]

I hereby nominate the parent comment to the (as yet non-existing) award: Reader comment of the
week!

Anyway, I'd really like such i feature... :)

Mark Shuttleworth on the future of Ubuntu

Posted Jun 6, 2008 21:33 UTC (Fri) by amazingblair (guest, #2789) [Link]

I second the nomination, and hereby suggest that LWN adopt a
"Reader Comment of the Week" Award
for meritorious verbality. (ooh! "meritorious verbality" -- that was good right there!) :-)

-Amazing Blair

Mark Shuttleworth on the future of Ubuntu

Posted Jun 5, 2008 8:46 UTC (Thu) by glynmoody (guest, #34032) [Link]

As for Samba, see the comment lower down.  I'm not quite sure which OpenGL patents you're
referring to: if you could please specify, I'll try to comment.  The FAT patents look likely
to be thrown out (http://en.wikipedia.org/wiki/File_allocation_table#Appeal).

Other non-GNOME distributions could certainly have Mono, but it wouldn't be very natural.
Part of my point about the relationship between GNOME and Mono is that it *is* very natural to
install the latter, even if there is no formal link between the projects.

As for bigotry, I'm not quite sure where my obstinacy or intolerance lies.  It's certainly not
in my attitude to GNOME, which I use on all my main machines.  I'm just pointing out that
there are issues that are worth exploring in this area, which is what I tried to do with Mark
Shuttleworth, since his perspective would obviously be interesting and important.  I don't
think that's bigotry.

Mark Shuttleworth on the future of Ubuntu

Posted Jun 5, 2008 7:46 UTC (Thu) by jschrod (subscriber, #1646) [Link]

So, how do you think about a distribution that includes Samba?

You know, Samba, that reverse-engineered implementation of Microsoft's patent-encumbered
network file system protocol stack? Including parts of its proprietary directory technology?

Please note that I use neither GNOME nor Mono. I'm just responding because I find your
comments about Mono hypocritical.

Mark Shuttleworth on the future of Ubuntu

Posted Jun 5, 2008 8:29 UTC (Thu) by glynmoody (guest, #34032) [Link]

Samba reverse-engineers for the sake of interoperability, in order to work in a world where
Microsoft's protocols are widely used, not because it's great technology; it's a moot point
whether that's really infringing on Microsoft's patents, leaving aside that such patents
aren't even valid in certain jurisdictions.  Mono reverse-engineers Microsoft technology in
order to use it because the Mono team think it's useful to do so, and that the technology is
worth porting.

I don't think my comments about Mono are hypocritical.  I focussed on GNOME and Mono because I
was interviewing the man behind Ubuntu, which uses the former.  I think it was important to
explore the potential problems with software patents, albeit indirect ones, given Ubuntu's
growing success.  The question was really about whether Ubuntu was so committed to GNOME that
it would be implicated in any such problems; Shuttleworth has indicated that if –
hypothetically – such a situation arose, Ubuntu could switch to KDE.

Mark Shuttleworth on the future of Ubuntu

Posted Jun 5, 2008 8:41 UTC (Thu) by jschrod (subscriber, #1646) [Link]

> The question was really about whether Ubuntu was so committed to GNOME
> that it would be implicated in any such problems

Well, that's actually a very good and interesting question. But I'll have to say that, for me,
the question came not across with that semantic. So you might have a communication problem in
your article. :-)

Concerning your 1st paragraph: For risk assessment of patent dangers, it is not relevant why a
technology is cloned. That it is cloned is all that matters. FTR, I actually think that patent
attacks against both technologies don't have any practical chance to arrive, it's more fudder
for FUD than for actual law suits. My reasons for this opinion are neither legal nor
technological, but from a business viewpoint. Patent attacks just don't make business sense
for MS, but patent FUD does. And we in the OSS community should not increase the FUD that
emanates from MS, IMHO.

But then, I live in one of those jurisdictions where software patents are (still) not allowed,
so maybe I can be more relaxed than others on the American side of the pond.

Mark Shuttleworth on the future of Ubuntu

Posted Jun 5, 2008 19:29 UTC (Thu) by oak (guest, #2786) [Link]

Once you can interact with www-services only through MS Silverlight[1], 
like some services currently can be used only with Flash, your 
interoperability argument becomes moot...

[1] e.g. Nokia has announced that its S60 phones are going to support it, 
so it seems to be spreading.

Mark Shuttleworth on the future of Ubuntu

Posted Jun 4, 2008 17:44 UTC (Wed) by kripkenstein (guest, #43281) [Link]

You quote from the Mono FAQ. But, unsurprisingly, there is no corresponding entry in the GNOME
FAQ (that I am aware of, at least). My point is that Mono attempts to emphasize its standing
w.r.t. GNOME, to prove that Mono is a powerful tool for writing applications. But its actual
position in GNOME is quite unimportant. I'm running GNOME right now with no Mono apps, and I
didn't make any effort to do so.

"Part of the problem - and the danger - is that the relationship between GNOME and Mono is
rather ill-defined"

On the contrary, I think the relationship between GNOME and Mono is quite well defined: Mono
is a tool used by a few GNOME apps. That's it. Another tool used by GNOME apps is Python.
Python is no more nor less important than Mono in GNOME, on the principle of the thing;
whereas practically speaking, in fact Python is more important simply because it is used more.

Note that the fact Vala is in development says something about GNOME's lack of interest in
adopting Mono. Vala gives similar syntax to Mono (C# specifically), but without a special
runtime, nor has it any connection to the .NET framework, etc. If Mono was enthusiastically
embraced by GNOME, Vala wouldn't exist.

Mark Shuttleworth on the future of Ubuntu

Posted Jun 4, 2008 21:27 UTC (Wed) by and (subscriber, #2883) [Link]

This is somewhat off topic, but somehow I don't see the point in Vala. The 
code sample I've seen on wikipedia looks a lot like Qt, but the approach 
has the disadvantage that if the generated C code is incorrect you're in 
deep trouble. Given the fact that Qt recently acquired the ability to use 
the native GTK style engines and glib's mainloop, why is Gnome not simply 
starting to adopt Qt apps where it makes sense? IMHO the philosophic 
differences between Qt and Gnome are much smaller than those between Mono 
and Gnome... 

Mark Shuttleworth on the future of Ubuntu

Posted Jun 5, 2008 5:34 UTC (Thu) by kripkenstein (guest, #43281) [Link]

I'm not sure what you mean here, perhaps I don't understand your point.

I don't see much similarity between Vala and Qt. Vala is C#, but tailored for the GObject
system, while Qt is built on top of C++ and has nothing to do with GObject. That is, Vala is a
new programming language, with syntax optimized for GObject. It includes things like automatic
memory management, nice 'for' loops, and various other things from modern languages like
Java/C#/etc.

Also I'm not sure what you mean by "if the generated C code is incorrect you're in deep
trouble." If the assembly code generated by GCC from your C source is incorrect you're also in
deep trouble - don't we always have to trust our compilers?

Mark Shuttleworth on the future of Ubuntu

Posted Jun 5, 2008 8:14 UTC (Thu) by and (subscriber, #2883) [Link]

Actually my point was that the existence of Vala is an indication that 
Gnome at least has deeper ties to Mono and C# than for example to Qt and 
C++ for some non-technical reason which is not obvious to me.

My issues with C code generation are that (a) the generated code basically 
becomes unreadable by mere mortals, so using vala parts in C projects (and 
vince versa) is much harder than necessary (b) what happens if the 
underlying C libraries (gtk, say) change their interfaces or even just the 
semantics? Then the vala to c translator always produces incorrect code 
which you can only fix by hacking the translator. this problem won't occur 
if the toolkit is used directly from within the language it is written in. 
(c) it takes away the strengths of C (i.e. ability for low level 
programming, bindings to just about any library imaginable) without adding 
much which C++ doesn't offer and finally (d) to my knowledge it is very 
difficult to use debuggers such as gdb using vala's aproach since you 
would have to wade through the generated C code (on the other hand real 
programmers don't need debuggers anyway ;).

On the Qt/C++ side of the fence there has been (semi) automatic memory 
management by means of the Q*Pointer and various Container classes for an 
eternity (read: Qt 2.0), it has a nice foreach statement since 4.2 (IIRC), 
always had a very nice event notification mechanism and so on. Also you 
can use any C or C++ library out there without too much of a hassle. For 
all these reasons vala seems to be redundant from a technology perspective 
to me. 

Mark Shuttleworth on the future of Ubuntu

Posted Jun 5, 2008 8:52 UTC (Thu) by kripkenstein (guest, #43281) [Link]

Actually my point was that the existence of Vala is an indication that Gnome at least has deeper ties to Mono and C# than for example to Qt and C++ for some non-technical reason which is not obvious to me.
Actually this implies the opposite to me. The only similarity between Vala and Mono/C# is some of the syntax, and that's it (and while C# is a main source of inspiration for the syntax, so is Java, etc.). Vala doesn't use the Mono VM (or any VM), it doesn't use the .Net class library, and it's syntax is first and foremost meant to implement GObject conveniently. Also, if GNOME really liked Mono, it wouldn't bother with Vala. In fact Vala might seem at first antagonistic to Mono, which is why the Vala FAQ goes to great efforts to clarify that it's goal is not to duel with Mono.
(a) the generated code basically becomes unreadable by mere mortals, so using vala parts in C projects (and vince versa) is much harder than necessary
No, you should *never* need to look at the generated code (just as you don't look at generated assembler by GCC). When integrating Vala and C/GObject, you should have the files describing the API (.vapi, etc.), which describe the GObject overview, and are very clear and human-readable. You would use them. In fact one main goal of Vala, if not *the* goal, is to facilitate such convenient interoperability between Vala and C/GObject, e.g., writing libraries in Vala that are used by C/GObject, etc.
(b) what happens if the underlying C libraries (gtk, say) change their interfaces or even just the semantics? Then the vala to c translator always produces incorrect code which you can only fix by hacking the translator. this problem won't occur if the toolkit is used directly from within the language it is written in.
Well, if the interfaces change a little then the bindings for Vala need to change as well (the same goes for PyGTK). Note that you don't need to change the Vala compiler in this case, just the .vapi files that describe the language bindings. I guess in theory a more 'deep' change to GTK might necessitate changing the compiler - by a 'deep' change I mean one in which the semantics of GObject itself change - however, in that case you'd need to change C/GObject programs using GTK as well.
(d) to my knowledge it is very difficult to use debuggers such as gdb using vala's aproach since you would have to wade through the generated C code (on the other hand real programmers don't need debuggers anyway ;).
I agree with you, this is a very valid concern, it's a disadvantage of the approach. Perhaps in theory you might insert debug information that makes it better, but it'll never be quite as smooth as it should be. (And even debugging in C is cumbersome compared to debugging a VM-ed language like Python or Java.)
On the Qt/C++ side of the fence there has been (semi) automatic memory management by means of the Q*Pointer and various Container classes for an eternity (read: Qt 2.0), it has a nice foreach statement since 4.2 (IIRC), always had a very nice event notification mechanism and so on. Also you can use any C or C++ library out there without too much of a hassle. For all these reasons vala seems to be redundant from a technology perspective to me.
Ok, I am not up-to-date on the specifics of Qt, it seems. It sounds better than I thought. That said, it still isn't a good fit for GNOME, since it doesn't natively support the GObject system in its syntax, which is the whole purpose of Vala. Also, it's licensing is very different from the GNOME approach.

Mark Shuttleworth on the future of Ubuntu

Posted Jun 5, 2008 20:06 UTC (Thu) by and (subscriber, #2883) [Link]

> Ok, I am not up-to-date on the specifics of Qt, it seems. It sounds better    than I
thought. That said, it still isn't a good fit for GNOME, since it doesn't natively support the
GObject system in its syntax, which is the whole purpose of Vala. Also, it's licensing is very
different from the GNOME approach.

I always thought Gnome was started because Qt/Kde were not considered free enough. given the
fact that Qt is GPL and you're can use basically any other FOSS license in conjunction with Qt
as long as you keep providing the source, I don't get the point about licensing differences. I
think a free desktop should be all about free software and shouldn't worry too much about how
much proprietary developers have to pay for a development license. 

Maybe my original comment was also a bit ambiguous: I didn't argue in favour of Gnome dropping
GTK or anything, I just wanted to point out that for Gnome there is not much difference from
bundling C#/Mono apps from bundling Qt/C++ apps when it comes to technical considerations
(basically both live within their own separate ecosystem).In my opinion gnome should come with
a few Qt apps (also KDE should come with a few gtk apps, but that's a different story) if
these applications  blend sufficiently well into the 'alien' desktop environment... 

Mark Shuttleworth on the future of Ubuntu

Posted Jun 5, 2008 20:21 UTC (Thu) by kripkenstein (guest, #43281) [Link]

I always thought Gnome was started because Qt/Kde were not considered free enough
Yes, historically GTK was (at least in part) a response to licensing issues with Qt. Most (but not all) of those issues have meanwhile been resolved.
given the fact that Qt is GPL and you're can use basically any other FOSS license in conjunction with Qt as long as you keep providing the source, I don't get the point about licensing differences.
The problem is that you can't use all the FOSS licenses, you depend on Nokia agreeing to your using them. For example, last I heard the AGPL wasn't permissible (but perhaps this has changed?), and when the GPL4 comes out, there is no guarantee that Qt apps can be written using it. Should Nokia become less cooperative than Trolltech has historically been, this might be very problematic. It's hard to gauge how likely this danger is - probably not very much - but the risk is large enough to cause concern.

GNOME/GTK avoid this sort of problem entirely, by licensing the GNOME libraries under the LGPL.
I think a free desktop should be all about free software and shouldn't worry too much about how much proprietary developers have to pay for a development license.
I tend to agree with this, for the most part, but as I argued above the issue that concerns me is that Qt's licensing has potential risks for FOSS developers. If Nokia legally committed itself to allowing Qt apps to be written in any OSI or FSF-approved license, I would be happy, but that is not the case.
In my opinion gnome should come with a few Qt apps (also KDE should come with a few gtk apps, but that's a different story) if these applications blend sufficiently well into the 'alien' desktop environment...
Well, I'm in agreement - we should all collaborate as much as possible, when it makes sense. The issue is that (sadly) generally the apps don't blend in seamlessly. But perhaps this will improve in time.

Mark Shuttleworth on the future of Ubuntu

Posted Jun 5, 2008 22:48 UTC (Thu) by and (subscriber, #2883) [Link]

> The problem is that you can't use all the FOSS licenses, you depend on 
Nokia agreeing to your using them. For example, last I heard the AGPL 
wasn't permissible

Explicitly listing the AGPL is actually not necessary, since according to 

http://doc.trolltech.com/main-snapshot/license-gpl-except...

Qt is also licensed under GPLv3. In section 13 the GPLv3 states that "you 
have permission to link or combine any covered work with a work licensed 
under version 3 of the GNU Affero General Public License".

> Should Nokia become less cooperative than Trolltech has historically 
been, this might be very problematic.

this is true for any project which requires copyright assignments: 
OpenOffice and MySql come to mind. But they can't revoke the licensing of  
the current version including the GPL exception which means that they 
can't prevent forks. Also, there is still the QtFreeFoundation (or however 
it is was called again) which where is effectively controlled by the KDE 
community (KDE e.v ??) and has the right to release Qt under a BSD license 
if Trolltech "misbehaves". So, I really don't think there is any danger of 
losing the toolkit, not even for proprietary applications.

Mark Shuttleworth on the future of Ubuntu

Posted Jun 6, 2008 4:57 UTC (Fri) by kripkenstein (guest, #43281) [Link]


That's good to know about the AGPL, thanks for the information.
Should Nokia become less cooperative than Trolltech has historically been, this might be very problematic.
this is true for any project which requires copyright assignments: OpenOffice and MySql come to mind.
I don't think copyright assignments is the issue.

I'm not familiar with MySQL, but OpenOffice is LGPL, not GPL; furthermore, OpenOffice is an app, not a framework like Qt. For both of these reasons I see little or no cause for concern if Sun should change OpenOffice's license to some other FOSS license. That is, if I want to write a plugin for OpenOffice using the GPL4, I will have no problem.

A more relevant comparison is GTK, which is a framework like Qt. GTK being LGPL, I have no worries about writing GTK apps in my FOSS license of choice in the future.
But they can't revoke the licensing of the current version including the GPL exception which means that they can't prevent forks.
The problem is that no fork can add additional licenses, so if e.g. Nokia decides not to allow Qt apps to be written in GPL4, then no forking can help with that. We will be stuck in perpetuity with the last list of licenses Nokia has allowed us to use.
Also, there is still the QtFreeFoundation (or however it is was called again) which where is effectively controlled by the KDE community (KDE e.v ??) and has the right to release Qt under a BSD license if Trolltech "misbehaves".
This does not solve the problems I've mentioned. Nokia can continue to release Qt regularly while not allowing the GPL4, and Qt will not revert to a BSD license. "Misbehaves", as defined in that agreement, doesn't cover the problems that concern me.

(Also, it isn't Trolltech anymore, but Nokia ;) )

Mark Shuttleworth on the future of Ubuntu

Posted Jun 6, 2008 15:13 UTC (Fri) by and (subscriber, #2883) [Link]

> I'm not familiar with MySQL, but OpenOffice is LGPL, not GPL;       
furthermore, OpenOffice is an app, not a framework like Qt. For both of       
these reasons I see little or no cause for concern if Sun should change       
OpenOffice's license to some other FOSS license. That is, if I want to       
write a plugin for OpenOffice using the GPL4, I will have no problem.        
       
if you are really this much concerned about not being able to use       
not-yet-existing OSS licenses and about being able to write proprietary    
derivate works without a payment, you really should be using a BSD instead    
of the linux kernel: Even if there  was desire to switch to GPLv3, linux    
is still stuck to the GPL v2 until _every_ contributor agreed on    
relicensing or alternatively every single line of code from authors who    
haven't agreed is removed.     
     
on the other hand you will always be able to use/fork/remix all versions  
of Qt with (A)GPLv(2|3) code and link it to any code which uses one of the       
licenses mentioned in Qt's GPL exception. Also if you want to use your 
code with a newer license you can still dual-license it. 

Mark Shuttleworth on the future of Ubuntu

Posted Jun 6, 2008 18:24 UTC (Fri) by kripkenstein (guest, #43281) [Link]

Actually the Linux kernel is close enough to what I want: I can write userspace apps using any
license and run them on the Linux kernel. It's like the LGPL in that respect. That is, only if
I want to extend the kernel itself do I have license issues - which is the same situation with
GTK+, which is LGPL.

In other words, that the Linux kernel stays GPL2 doesn't matter to me, unless I want to extend
the kernel itself. Same as with GTK (which is also GPL2 last I checked, and again, it doesn't
matter unless I extend GTK itself).

This is the reason I prefer GTK and the Linux kernel's approach to licensing over Qt's (for
libraries/frameworks, at least. For normal apps, other licenses might be better).

Mark Shuttleworth on the future of Ubuntu

Posted Jun 5, 2008 19:23 UTC (Thu) by oak (guest, #2786) [Link]

Regarding C code generation, C++ compilers were for many years just C 
pre-processors like Vala is now.  Vala is just younger (and prettier)  
language than C++, just give it time and it may grow into a real compiler 
like C++ compilers did.  Whether we need yet another language is another 
matter...

As to Gtk/Gobject and Qt, having programmed a little bit with both, 
there's much less difference between Gtk and Qt that with C and C++.  If 
you know Gtk & C, Qt itself is not a problem, but C++[1] can be.  Like 
Perl, it's a bit of a line noise compared to better designed languages 
(better designed meaning orthogonality etc, not performance & 
practicality).

[1] and Qt's moc variant of C++ with its magic defines.

Mark Shuttleworth on the future of Ubuntu

Posted Jun 5, 2008 19:55 UTC (Thu) by nix (subscriber, #2304) [Link]

The only C++ compiler I've ever heard of that used a C compiler as its 
code generator was Cfront (and even that was quite unusual: it wasn't a 
preprocessor in any sense, in that it did full translation and just 
happened to emit C code: that C could would never contain e.g. any syntax 
errors unless Cfront was buggy).

Mark Shuttleworth on the future of Ubuntu

Posted Jun 5, 2008 21:06 UTC (Thu) by oak (guest, #2786) [Link]

> The only C++ compiler I've ever heard of that used a C compiler as its  
code generator was Cfront

I have some faint recollections that some other C++ compilers were derived 
from that and then there was also Glockenspiel C++ and stuff using the EDG 
C++ frontend like Comeau C++.


> (and even that was quite unusual: it wasn't a preprocessor in any sense, 
in that it did full translation and just  happened to emit C code:

Yes, sorry my terminology was bad.  But isn't this also how Vala works?

Mark Shuttleworth on the future of Ubuntu

Posted Jun 8, 2008 16:03 UTC (Sun) by salimma (subscriber, #34460) [Link]

Regarding C code generation, C++ compilers were for many years just C pre-processors like Vala is now. Vala is just younger (and prettier) language than C++, just give it time and it may grow into a real compiler like C++ compilers did. Whether we need yet another language is another matter...

There is a difference: Cfront *defines* its own object model, and because the C code it produces is not supposed to have a stable interface, it's easy to abandon C-code generation in favour of a full-blown compiler.

Vala, by design, targets the GObject type system (letting users write GObject applications much more naturally than writing them in C). I don't think we'll ever get to a situation where valac's backend does not actually generate straight C code..

Mark Shuttleworth on the future of Ubuntu

Posted Jun 5, 2008 11:52 UTC (Thu) by erwbgy (subscriber, #4104) [Link]

You quote from the Mono FAQ. But, unsurprisingly, there is no corresponding entry in the GNOME FAQ (that I am aware of, at least).

I think such an entry regarding Mono in the GNOME FAQ would go a long way to addressing concerns from some of the community about the relationship between Microsoft, Mono and GNOME.

Mark Shuttleworth on the future of Ubuntu

Posted Jun 5, 2008 12:09 UTC (Thu) by kripkenstein (guest, #43281) [Link]

Well, given your and others' suspicion, I guess such a FAQ entry is warranted. I'm just
surprised, because it's about as justified as a FAQ entry explaining the 'relationship'
between GNOME and Python, or GNOME and GCC, etc. etc.

In other words, the FAQ entry should read:


Q: What is the relationship between GNOME and Mono?

A: No special relationship exists.

There is a very small number of GNOME apps utilizing Mono. The programmers of those apps chose
to use Mono, and GNOME sees no reason to reject their work just because of that, just as we
accept apps into GNOME (if they are worthy) that are written in Python, C, C++, Perl, etc.


Copyright © 2017, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds