Slashdot Mirror


Qt Opens Source Code Repositories

sobral writes "Following the announcement of the LGPL license model, since yesterday the Qt source code repositories are open to the public together with their roadmap. The contribution model is online and will enable developers from the community to submit patches through a single click process, avoiding the previous hassle of sending in signed paperwork. The code is hosted at qt.gitorious.org and an instant benefit of this launch is that Qt Software has been working together with Gitorious maintainers for the last four months to improve Gitorious and all these new features are already submitted upstream."

26 of 230 comments (clear)

  1. Re:QT Looks Like Shit by NoStarchPlox · · Score: 4, Funny

    Yes, QuickTime is definitely shitty but what does that have to do with Qt?

  2. Re:Should be a followup, actually by skeezixcodejedi · · Score: 4, Insightful

    Ignoring the enormous benefits of a single codebase for Windows, Linux/BSD and Mac OSX of course. (Yes, people still make applications for desktops and notebooks .. not just netbooks, PDAs/smartphones)

  3. Qt GTK by Anonymous Coward · · Score: 5, Interesting

    I hope Gnome switches to Qt one day, its so much nicer than GTK.

  4. Re:Should be a followup, actually by NoStarchPlox · · Score: 5, Informative

    You must be a bit behind the times as Qt no longer emulates a native look-and-feel but uses the native widgets of the platform.

  5. Re:I'm at a loss for words. by dwater · · Score: 5, Funny

    > I'm at a loss for words.

    The word you're looking for is 'too'.

    --
    Max.
  6. Re:Should be a followup, actually by Anonymous Coward · · Score: 5, Informative
  7. Re:Should be a followup, actually by vrai · · Score: 5, Insightful

    Yes - because web frontends are the silver bullet that solves all of our client-side needs. In fact, why bother having general purpose computers out side of data centres? Instead we can have a global installation of five (for example) really big computers and we can access them using dumb internet terminals. Luckily the infinite bandwidth and uninterrupted global connectivity on offer, combined with the well enforced WWW standards means that even the most complex of GUIs can be provided via the browser. Why do we even bother with proper operating systems when everything man could need from a computer can be provided via a TCP/IP stack and XULRunner?

    Oh wait, because even the best web based GUIs are primitive and unresponsive compared to a well designed, well implemented local interface. With Qt it's possible to create a native GUI that runs on all major desktop platform (and even Solaris) with less effort than it takes to get even a moderately complex web interface running correctly on IE, Firefox, Safari, Chrome and Opera.

    Web interfaces are excellent for simple tasks like email and feed reading; they are terrible when deployed in more complex arenas. Even when you take in to account proprietary, binary only workarounds like Flash and Silverlight.

  8. Re:I'm at a loss for words. by entgod · · Score: 4, Insightful

    Too late for what? Too late for it to become adopted? Have you heard of the K desktop environment?

  9. Re:Should be a followup, actually by Anonymous Coward · · Score: 5, Informative

    Yeah sure...

    >> Sales of Linux netbooks collapsed.

    Proof? Sure lots of netbooks are Windows, but that doesn't mean sales of Linux models aren't increasing with the market segment.

    >> Google is providing a standardized UI on top of Linux.

    Incredibly immature project, and isn't even close to a competitor to Qt on anything but embedded.

    >> Symbian is dead.

    Well, there are millions of devices out there still with Symbian, but I agree it probably has little future.

    >> Basically, there is very little need for a specialized UI toolkit like Qt

    Qt is not a specialized UI toolkit. It is a general class library for C++ that happens to include UI classes.

    >> now that there are both fewer platforms for it to run

    Qt runs on more platforms now than ever before. I don't know what you're talking about. Symbian, WinCE, Windows 98 to 7, Linux (normal and embedded), and Mac (with Cocoa even). Name another platform that can do that.

    >> and more mature competitors on the remaining platforms.

    Like what? Each platform has their own thing, but unless you feel like implementing your interface 5 times, that's not really an option.

  10. Re:QT is used on cell phones as well by larry+bagina · · Score: 5, Informative
    Qt was Open Source in that it was GPL, however trolltech was dual licensing it. Being GPL, it was toxic to anything but GPL programs, which meant closed source (or even non-GPL open source) would need to pay for Qt.

    Nokia relicensed Qt as LGPL which makes it usable by non-GPL programs.

    --
    Do you even lift?

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

  11. Re:Should be a followup, actually by NormalVisual · · Score: 4, Informative

    Qt offers quite a bit more than just an abstracted UI model. Being able to have a totally common codebase across a number of platforms for a given application (including lower-level network code, threading, non-UI graphics manipulation, file I/O, printing, etc.) is a great help.

    The only thing holding me back from totally adopting Qt was the outrageous licensing cost, not anything lacking in the toolkit itself. With it having gone to LGPL now, that is no longer an issue.

    --
    Please stand clear of the doors, por favor mantenganse alejado de las puertas
  12. The first things to do by master_p · · Score: 4, Insightful

    1) replace Qt memory management with TR1::shared_ptr (or boost).

    2) replace Qt collections with STL collections.

    3) replace Qt threads with boost::threads.

    4) replace Qt signals and slots with boost::signals.

    In other words, make Qt play nice with STL and boost, which are the foundations for developing C++ code these days.

    1. Re:The first things to do by Clith · · Score: 5, Insightful

      Qt's collection classes are API compatible with STL. So I would argue that it plays nicely already. I prefer Qt containers to STL containers because Qt's classes have been optimized. STL has some issues with performance.

      --
      [ReidNews]
    2. Re:The first things to do by pyrico · · Score: 5, Insightful

      1) replace Qt memory management with TR1::shared_ptr (or boost).

      For the core purpose of Qt (GUIs), Qt's various memory models work very well. Every widget is a QObject and by default they fall into parent child releationships that include life-cycle management of your objects. Why would you want to mess up that clean model?

      2) replace Qt collections with STL collections.

      Another unnecessary generalization. I actually much prefer Qt's collections because A) they are implicitly shared (you can pass them around without getting deep copies) and B) they have one clean and very efficient implementation across platforms, so I don't have to worry about the memory and performance characteristics of a MSVC std::map vs a GCC std::map. Also they are much cleaner to work with and don't require hideous iterators every step of the way.

      3) replace Qt threads with boost::threads.

      Again, Qt threads will perform as good as native threads on each platform, something you can not guarantee with pthreads (with weaker windows support). Also, QThread and friends (QMutex, QSemaphore, QWaitCondition, QThreadStorage) are very C++ oriented and stylistically much cleaner than pthreads and even go beyond it in scope.

      4) replace Qt signals and slots with boost::signals.

      This is probably the most valid argument, and there is some legacy reasons why Qt had to throw a meta object compiler on top of C++ to get this to work 18 years ago. But in the mean time, that moc layer has paid off in gold. Now you the ability to get free introspection on classes of your choosing which is vital in making C++ suck less in well designed programs (i.e. can do automatic class instance serialization etc).

      In other words, make Qt play nice with STL and boost, which are the foundations for developing C++ code these days.

      In other words, Qt is a great one-stop-shop for cross platform development and I wouldn't change a single thing you listed. In fact, if you write your C++ code in stylelistic keeping with the Qt libraries, you avoid most of C++'s warts and can even enjoy the language.

  13. Re:Should be a followup, actually by daem0n1x · · Score: 4, Informative

    My company develops cross-platform applications for Windows, MAC and LInux in C++. Qt is one hell of a cross-platform UI toolkit.

  14. Re:Die to unify by Saffaya · · Score: 4, Insightful

    Just to clarify :

    Nokia acquired TrollTech.

    Nokia then decided to license QT under the LGPL, it wasn't a decision made by TrollTech while they were still independent

  15. Re:Should be a followup, actually by garvon · · Score: 5, Informative

    qt 4.5 does have a gtk theme that uses gtk to draw the widgets. It allows me to continue using qt applications and have them match my desktop now that i no longer find kde usable as a desktop. The applications are still 1st rate.

  16. TGI Git by iluvcapra · · Score: 4, Interesting

    I have to say, I'm glad of this trend lately for open source projects to primarily publish their source through Git, and particularly through these very able Git hosting sites like gitorious and github. If you've worked with CVS and SVN open-source projects most of your career, the experience is simply incomparable. With the way Git works, and particularly with the implementations the hosting companies provide, it's very easy to fork a project, make the changes you want, and always have the power to commit to a remote repository that not only keeps track of all your commits but ALSO how all your commits relate back to the original forked project...

    Instead of downloading someone's tarball and (maybe) emailing them a diff (or just posting your own duplicate of their source with your little changes), it's like you're making a shadow copy of a projects source, where you have all the control but no information is duplicated or lost.

    --
    Don't blame me, I voted for Baltar.
    1. Re:TGI Git by ultrabot · · Score: 4, Interesting

      have to say, I'm glad of this trend lately for open source projects to primarily publish their source through Git, and particularly through these very able Git hosting sites like gitorious and github. If you've worked with CVS and SVN open-source projects most of your career, the experience is simply incomparable.

      However, if you've worked with mercurial before, the experience is comparable - but not really favorably for Git.

      It seems Git is this shiny thing every trend chaser is picking it up right now, but it has the overall feel of not really being ready yet. I'm glad it's having some serious competition right now, so it won't be the "obvious" choice like svn was for the previous generation. It's a mixed blessing - I'd really want us to have one obvious DVCS choice, but on the other hand I don't want it to be git as it is right now. And Git doesn't seem to be getting better fast enough, since the current users are familiar with its quirks and don't really mind that much.

      --
      Save your wrists today - switch to Dvorak
  17. Re:QT Looks Like Shit by Frnknstn · · Score: 4, Funny

    I wasn't aware that software could smell at all. Unless...

    >>> import odour

    Oh Python, I love you...

    --
    If it's in you sig, it's in your post.
  18. Re:MATLAB on OS X won't suck now? by sys.stdout.write · · Score: 5, Insightful

    As somebody who has just spent the morning trying to work out inconsistencies in wxWidgets between Windows and Linux, let me just say: shush. It's not that wxWidgets is bad, but Qt's we-are-going-to-implement-everything-ourselves-so-it-acts-the-same-on-all-platforms approach has merit.

  19. Re:Die to unify by MemoryDragon · · Score: 4, Informative

    Actually Qt was relicensed into GPL because of KDE, not because of Gnome. KDE used Qt and came under heavy fire due to using Qt, TrollTech relicensed then Qt due to this criticis, and later on hired some of the KDE developers!

    The relicensing to LGPL now happened after the Nokia buyout, and was also preplanned because Trolltech always said, if it was bought or went bankrupt it would relicense it into LGPL!

  20. not a troll by CarpetShark · · Score: 4, Insightful

    What reactionaries are modding this "troll"? It's a perfectly valid comment, for anyone who has actually sat down and compared the libraries. Also, it's a perfectly reasonable issue to consider, now that both desktops' core libraries share common licenses and have essentially become interchangeable. Yes, that interchange would involve hard work, which may lead reactionaries to reject it, but what progress doesn't involve hard work? It would at least be nice to see a study of some GNOME app re-implemented in Qt, and what the pros/cons are. I know for a fact that at least a few apps have have been ported from GNOME to Qt (Qt3, though, I think), and probably some have been ported the other way too. Even just those historical cases with Qt3, the case study would be interesting.

  21. Re:Die to unify by Brandybuck · · Score: 4, Insightful

    Interested rewrite of history. But it's not true. GNOME didn't drive Trolltech to open source Qt, KDE did. GNOME wasn't (and still is not) using Qt, so why should have Trolltech cared about their whines? It was KDE developers advocating for real open source that did it.

    --
    Don't blame me, I didn't vote for either of them!
  22. Re:Should be a followup, actually by DuckDodgers · · Score: 4, Insightful

    The problem with fat client software is not that it's equal or inferior to a well-built website. It's definitely superior.

    The problem is deployment and support. As much as Javascript is a pain, non-standard HTML support in IE is a pain, and a million other headaches come with a website, in many ways it's far less headache than supporting a .msi/tar.gz/.deb/.rpm installer and getting tech support calls that have nothing to do with your application.

    There's certainly a wide range of applications that will always remain fat client only. But the terminal-server model makes a lot of sense from the support perspective for many applications.

  23. Re:Mercurial hosting? by ultrabot · · Score: 4, Informative

    Is there any kind of Mercurial hosting for open source projects you can recommend?

    http://bitbucket.org/

    And soon, google code

    --
    Save your wrists today - switch to Dvorak