Domain: gnu.org
Stories and comments across the archive that link to gnu.org.
Comments · 13,360
-
Re:Koffice
Repeat after me, Qt/X11 != Linux, Qt/X11 != Windows. Qt/X11=X11.
Actually, Qt/X11 is more Free Software than gtk+ will ever be. This is because Qt is GPL, and gtk+ is LGPL. I suggest you check out what rms thinks about the GPL vs. LGPL.
Do not taint your boxen with things that are not purer than alternatives. Use Qt/X11 over gtk+ if you support Free Software. -
Re:mixing patent and copyrightThe GPL doesn't allow for patented techniques to be used that aren't licensed for everyone's free use
That depends on how you're interpreting "everyone's free use." It is definitely possible to license a patent for use only in GPLed software. See, for example, the RTLinux open patent license.
If I had a patent, I'd license it defensively: to people who have no patents and to people who only use patents defensively. In terms of mutual defense, I wouldn't grant a license to patent aggressors. This is similar to the Gilmore patent license someone mentioned in another post.
-
A good readFrom the gnu project:
Software patents
The worst threat we face comes from software patents, which can put algorithms and features off limits to free software for up to twenty years. The LZW compression algorithm patents were applied for in 1983, and we still cannot release free software to produce proper compressed GIFs. In 1998, a free program to produce MP3 compressed audio was removed from distribution under threat of a patent suit.
There are ways to cope with patents: we can search for evidence that a patent is invalid, and we can look for alternative ways to do a job. But each of these methods works only sometimes; when both fail, a patent may force all free software to lack some feature that users want. What will we do when this happens?
Those of us who value free software for freedom's sake will stay with free software anyway. We will manage to get work done without the patented features. But those who value free software because they expect it to be techically superior are likely to call it a failure when a patent holds it back. Thus, while it is useful to talk about the practical effectiveness of the "cathedral" model of development(1), and the reliability and power of some free software, we must not stop there. We must talk about freedom and principle.
-
License terms.One has to wonder (if their patents are granted) what their licensing terms will be.... free for open source, or a tool to try and screw other Linux distros?"
What's the big deal? The GPL is pretty clear on this:if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.
So, Redhat can't use these patents in an abusive manner unless they're going to release this stuff in some kind of software that's released under a GPL-incompatible license.
Last i checked, Redhat had a policy of releasing software they write under Free Software licenses. So unless i'm badly mistaken, or Redhat is moving away from Free Software, which i haven't heard they were doing, then this is nothing at all to worry about.
Now, if redhat were going to announce they were going to start writing software and releasing it under non-free licenses, i would be worried indeed.
But for now.. Haven't you people ever heard of a defensive patent? Maybe a bit unecessary, maybe a bit worrying, but this isn't the end of the world.
- super ugly ultraman anonymous cowards filtered. if their comments aren't worth so much as a nom de plume why should i read them? -
Re:What if this could defeat GNU license?
- I just had an unecessarily alarmist thought. Could this be used to defeat the GNU license? Sure, you still release your source code under the GNU license, but also charge everyone for using 'your' patents.
I don't think so, but maybe I don't understand what you're getting at. I think these clauses from the GPL pretty much cover this potential problem (along with the GPL as a whole and the associated rights that everyone are granted who receives GPLd code):
7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.
It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.
This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.
ooohhhh... quoting the GPL on Slashdot... (-1:Karmawhore)
-
Try GNU Emacs for Windows
My web editor is... notepad... Which is the only editor 100% compliant with all standards
No. Try GNU Emacs for Windows. Notepad (at least the version shipped with Windows 3.1 through ME) doesn't support any character encodings other than Windows-1252 (a variant of ISO-8859-1). Heck, it doesn't even allow editing of text files bigger than 32 KB. Emacs, on the other hand, is fully scriptable, allows editing of huge files, and supports many character encodings.
-
There is no obligation to distribute Free Software
However, if you read the bill (and the rest of the letter for that matter), you'll see that it describes perfectly OPEN SOURCE SOFTWARE.
No, it doesn't (and your point is not well served by pointing out how the letter starts off by correcting the use of that term). The Open Source movement is primarily targetting businesses. The Free Software movement speaks to all computer users. The Peruvian bill speaks to all Peruvian computer users, not just businesses. This is one way in which the wording in the letter is correct.
The bill is concerned with user's freedoms. The Open Source movement takes pains to avoid talking about software freedom because they believe their development methodology message will go over easier with businesses if they stop the freedom talk (in their FAQ they refer to freedom talk as "ideological tub-thumping" with no further analysis of the Free Software movement's motives). This is another way in which the wording in the letter is correct.
See how there's no mention of any obligation to redistribute the modified source.
I see now where your misunderstanding lies: There is no obligation to redistribute programs in the Free Software movement. The Free Software movement is geared around freedoms you need in "the system of free expression in a technological society" (from the FSF's Amicus brief for Eldred v. Ashcroft). Nowhere in the Free Software definition is there a requirement to distribute Free Software. Quite to the contrary:
You should also have the freedom to make modifications and use them privately in your own work or play, without even mentioning that they exist. If you do publish your changes, you should not be required to notify anyone in particular, or in any particular way.
Software licenses requiring publication or notification are non-free (such as the APSL, the Apple Public Source License, which requires any modified version of APSL-covered software "deployed" in an organization must be published).
They must have the right to do so but there is no requirement to do so.
Exactly—users must have the right to do so. That's freedom talk which is totally synonymous with the Free Software movement, not the Open Source movement.
I think any reasonable person has to conclude that Dr. Villanueva knew what he was talking about and he meant what he said throughout the letter, including his repeated support for Free Software.
-
There is no obligation to distribute Free Software
However, if you read the bill (and the rest of the letter for that matter), you'll see that it describes perfectly OPEN SOURCE SOFTWARE.
No, it doesn't (and your point is not well served by pointing out how the letter starts off by correcting the use of that term). The Open Source movement is primarily targetting businesses. The Free Software movement speaks to all computer users. The Peruvian bill speaks to all Peruvian computer users, not just businesses. This is one way in which the wording in the letter is correct.
The bill is concerned with user's freedoms. The Open Source movement takes pains to avoid talking about software freedom because they believe their development methodology message will go over easier with businesses if they stop the freedom talk (in their FAQ they refer to freedom talk as "ideological tub-thumping" with no further analysis of the Free Software movement's motives). This is another way in which the wording in the letter is correct.
See how there's no mention of any obligation to redistribute the modified source.
I see now where your misunderstanding lies: There is no obligation to redistribute programs in the Free Software movement. The Free Software movement is geared around freedoms you need in "the system of free expression in a technological society" (from the FSF's Amicus brief for Eldred v. Ashcroft). Nowhere in the Free Software definition is there a requirement to distribute Free Software. Quite to the contrary:
You should also have the freedom to make modifications and use them privately in your own work or play, without even mentioning that they exist. If you do publish your changes, you should not be required to notify anyone in particular, or in any particular way.
Software licenses requiring publication or notification are non-free (such as the APSL, the Apple Public Source License, which requires any modified version of APSL-covered software "deployed" in an organization must be published).
They must have the right to do so but there is no requirement to do so.
Exactly—users must have the right to do so. That's freedom talk which is totally synonymous with the Free Software movement, not the Open Source movement.
I think any reasonable person has to conclude that Dr. Villanueva knew what he was talking about and he meant what he said throughout the letter, including his repeated support for Free Software.
-
There is no obligation to distribute Free Software
However, if you read the bill (and the rest of the letter for that matter), you'll see that it describes perfectly OPEN SOURCE SOFTWARE.
No, it doesn't (and your point is not well served by pointing out how the letter starts off by correcting the use of that term). The Open Source movement is primarily targetting businesses. The Free Software movement speaks to all computer users. The Peruvian bill speaks to all Peruvian computer users, not just businesses. This is one way in which the wording in the letter is correct.
The bill is concerned with user's freedoms. The Open Source movement takes pains to avoid talking about software freedom because they believe their development methodology message will go over easier with businesses if they stop the freedom talk (in their FAQ they refer to freedom talk as "ideological tub-thumping" with no further analysis of the Free Software movement's motives). This is another way in which the wording in the letter is correct.
See how there's no mention of any obligation to redistribute the modified source.
I see now where your misunderstanding lies: There is no obligation to redistribute programs in the Free Software movement. The Free Software movement is geared around freedoms you need in "the system of free expression in a technological society" (from the FSF's Amicus brief for Eldred v. Ashcroft). Nowhere in the Free Software definition is there a requirement to distribute Free Software. Quite to the contrary:
You should also have the freedom to make modifications and use them privately in your own work or play, without even mentioning that they exist. If you do publish your changes, you should not be required to notify anyone in particular, or in any particular way.
Software licenses requiring publication or notification are non-free (such as the APSL, the Apple Public Source License, which requires any modified version of APSL-covered software "deployed" in an organization must be published).
They must have the right to do so but there is no requirement to do so.
Exactly—users must have the right to do so. That's freedom talk which is totally synonymous with the Free Software movement, not the Open Source movement.
I think any reasonable person has to conclude that Dr. Villanueva knew what he was talking about and he meant what he said throughout the letter, including his repeated support for Free Software.
-
Re:Speed of compilationYou're not the only one worried about compilation speed. A long thread just recently popped up on the gcc development list about this very issue. See the recent gcc mailing list archives here, especially the threads starting with this message, this message, this message, and this message, among others. (And don't pay too much heed to Robert Dewar's vocal pessimism; he sent out a lot of messages on these threads doubting the need or feasibility of speed improvements, but his arguments were pretty much refuted by many other developers.)
gcc's compilation speed can certainly be a problem for very large projects or even smaller projects on slower machines. Unfortunately, things have actually been getting worse for newer releases. Part of this is due to additional optimizations, but there are some genuine performance problems that the gcc developers would very much like to solve.
Now that this has become a major priority, I expect things to start improving in the not too distant future.
-
Re:Speed of compilationYou're not the only one worried about compilation speed. A long thread just recently popped up on the gcc development list about this very issue. See the recent gcc mailing list archives here, especially the threads starting with this message, this message, this message, and this message, among others. (And don't pay too much heed to Robert Dewar's vocal pessimism; he sent out a lot of messages on these threads doubting the need or feasibility of speed improvements, but his arguments were pretty much refuted by many other developers.)
gcc's compilation speed can certainly be a problem for very large projects or even smaller projects on slower machines. Unfortunately, things have actually been getting worse for newer releases. Part of this is due to additional optimizations, but there are some genuine performance problems that the gcc developers would very much like to solve.
Now that this has become a major priority, I expect things to start improving in the not too distant future.
-
Re:Speed of compilationYou're not the only one worried about compilation speed. A long thread just recently popped up on the gcc development list about this very issue. See the recent gcc mailing list archives here, especially the threads starting with this message, this message, this message, and this message, among others. (And don't pay too much heed to Robert Dewar's vocal pessimism; he sent out a lot of messages on these threads doubting the need or feasibility of speed improvements, but his arguments were pretty much refuted by many other developers.)
gcc's compilation speed can certainly be a problem for very large projects or even smaller projects on slower machines. Unfortunately, things have actually been getting worse for newer releases. Part of this is due to additional optimizations, but there are some genuine performance problems that the gcc developers would very much like to solve.
Now that this has become a major priority, I expect things to start improving in the not too distant future.
-
Re:Speed of compilationYou're not the only one worried about compilation speed. A long thread just recently popped up on the gcc development list about this very issue. See the recent gcc mailing list archives here, especially the threads starting with this message, this message, this message, and this message, among others. (And don't pay too much heed to Robert Dewar's vocal pessimism; he sent out a lot of messages on these threads doubting the need or feasibility of speed improvements, but his arguments were pretty much refuted by many other developers.)
gcc's compilation speed can certainly be a problem for very large projects or even smaller projects on slower machines. Unfortunately, things have actually been getting worse for newer releases. Part of this is due to additional optimizations, but there are some genuine performance problems that the gcc developers would very much like to solve.
Now that this has become a major priority, I expect things to start improving in the not too distant future.
-
Re:Speed of compilationYou're not the only one worried about compilation speed. A long thread just recently popped up on the gcc development list about this very issue. See the recent gcc mailing list archives here, especially the threads starting with this message, this message, this message, and this message, among others. (And don't pay too much heed to Robert Dewar's vocal pessimism; he sent out a lot of messages on these threads doubting the need or feasibility of speed improvements, but his arguments were pretty much refuted by many other developers.)
gcc's compilation speed can certainly be a problem for very large projects or even smaller projects on slower machines. Unfortunately, things have actually been getting worse for newer releases. Part of this is due to additional optimizations, but there are some genuine performance problems that the gcc developers would very much like to solve.
Now that this has become a major priority, I expect things to start improving in the not too distant future.
-
Re:Agreed
I don't think you understand the man at all. He doesn't want anything that isn't GNU to be called GNU. He does think that when you have the various distributions of 'Linux' which are bundles of the linux kernel and a bunch of other Free Software, a good portion GNU, you should call it GNU/LINUX. I don't think that's so crazy.
I don't think it's so crazy either, except that RMS is going after developers and geeks who already *know* the relationship that GNU has with Linux. He's not trying to persuade the distribution creators to change their names (to Red Hat GNU/Linux, for example). Instead he chastises a LUG... his own fans.
I don't disagree that RMS has done a *lot* more than most could ever dream of in the interests of free software. The GNU tools are great, but just as much as a kernel alone doesn't make an operating system, the inverse is also true. Much to Stallman's chagrin, a set of utilities and libraries do nothing at all if you don't have the kernel. (As many who have tried Hurd can attest to.)
Crucial tools without which a Free kernel could not be written - shells, fileutilities, compilers, text editors. The infrastructure of the Operating System.
On this page, Stallman would have everyone believe that the Linux kernel would never have even been written if it weren't for GNU. This is patently false. Torvalds designed the first stages of the Linux kernel on top of Minix, largely using Minix tools. But he knew all along that he wanted to get away from Minix and at the time, GNU had the most complete set of libraries and utilities available for free. (In fact, if I recall, it wasn't even Linus who started porting the GNU stuff over to Linux, it was other developers in it just for the hacking.)
But if GNU did not exist, then I promise you that people would have started writing their own or grabbing utilities and libraries from the net into a big collection for use with the kernel. There's more than one way to skin a /bin/cat, you know. The spirit of free software says that if what you need doesn't exist, write it and then share it. I have no doubt that Linus would have begun writing his own tools even if none at all were available.
Another argument: If development of the Linux kernel would have been delayed or started a couple years later, BSD's tools would have been in prime position to get ported to the Linux kernel. (But of course, then it is debatable whether Linux would have taken off at all.)
GNU tools are used on every Unix, on Apple systems, on Microsoft systems, on VMS even. The GNU tools literally made Linux possible, and Linux is not the only kernel on which the GNU tools and other Free Software can be combined to produce a complete functional and completely Free system.
Just because GNU tools have been ported to almost every OS doesn't really mean that they're being used on almost every OS. BSD offers GNU tools in ports, but they don't come with any BSD by default. Most BSD users just stick with the BSD tools, I think. Apple and Microsoft... good grief. Just because you *can* use bash or Emacs on Windows or Mac OS = 9 doesn't mean you should. (That was a joke.)
Hurd doesn't count as a "completely functional and completely Free system." (I'm honestly interested in hearing about which other kernels work in concert with the GNU tools. A BSD perhaps?) Likewise, the GNU tools are not the only software that can be combined with Linux to form a complete usable operating system. There is at least one group that has had success in getting the BSD tools ported to Linux and yet another who were creating their own tools from scratch. (Not sure on the current status of that last one.) I also seem to remember a commercial company who did this as well, only with proprietary tools. Needless to say, they don't seem to be around any more.
Don't get me wrong, I love GNU software. Much better than I like BSD's, even. But it was never the only choice for the early Linux kernel developers, just the easiest. -
Re:Battlebots
Now a beowulf cluster of these would certainly be a party.
Or would it be a Gnu Hurd?
Cheers,
Jim in Tokyo -
Slashdotted already!Interview by Christian Fredrik Kalager Schaller
If you have followed GNU/Linux for the last few years you know that GNOME has long been a stronghold of C, Perl and Python GUI programming. With Ximian's work on Mono, C# seems also to be a language that will see wide use in GNOME. Sun's involvement should also make Java applications integrate strongly with GNOME. But what about C++? Even in the GNU/Linux and Unix world this language has received many advocates and developers. I sat down with Murray Cumming, lead developer on the gtkmm and gnomemm C++ bindings for GTK+ and GNOME to get some information on the status of C++ development in GNOME.
Christian: What is your background and what puts food on your table in real life?
Murray: I'm a freelance developer, though that's difficult in the current market. I do C++ development on Unix, on all kinds of projects, such as protocol implementations, compilers, interpreters, data converters, management systems, and GUIs to make sense of all these. I've lived in Munich, Germany, for the past 3 years, but I'm officially a Brit. I love Munich's healthy outdoors lifestyle and easy-going socialising. I try to put the Lederhosen out of my mind.
Over the past ten years I worked my way up through paper-shuffling, data-entry, typography/design, tech-support, database consultancy, and Windows development. I didn't learn programming at a college, and I still stubbornly believe that it made me a better developer. You have to really care about something to teach yourself in your spare time.
I didn't use any Unix-like systems until Linux was widely available. People forget that before Linux you had to go to University to use Unix. Some companies had big Unix boxes, and the staff who used them generally earned huge sums because they knew how to move files around. Naturally they didn't let anyone else near them.
I've grown to love the control that Unix gives you but I've done hardcore GUI development on MacOS and Windows, so I know there's more to life. Unlike lots of GNOME developers, I know that the Mac is a worthy influence but that Windows gives us nothing to chase.
Christian: How did you get involved in developing gtkmm and gnomemm?
Murray: I was originally just a user, more attracted to the up-to-date gtkmm than the awkward (and then non-free) QT. I did the carthorse work necessary to get gnomemm 1.2 usable and stable, and that's how I learned about the general issues involved.
Then I decided to make a big effort to get gtkmm2 going, when it didn't look like anyone else was going to do it. Karl had the beginnings of gtkmm2, but it didn't build and he was reluctant to show it to the world, fearing that people would expect a certain amount of work from him. He didn't have time to do much more on it, but I did persuade him to put it on the gnome cvs. I worked on it gradually, sending progress reports to the list in case anyone was interested, and so that other people could learn too. After about 4 months I understood what it was doing, and it was able to run simple example code. As soon as I reached that stage lots of people started helping out.
Christian: What are the main design ideas of gtkmm and gnomemm?
Murray: We aim to provide the interface that a skilled C++ coder would expect, based on his experience of the language and the standard C++ Library. We try to use the standard language features wherever possible, just as any sensible C++ coder should. There would be nothing unusual about this if it weren't for bizarre C++ libraries such as QT and MFC. Is sanity really a design decision?
It's not really a design decision, but we are particularly proud that C++ allows us to simplify the underlying C interfaces. For instance, GtkTreeView has a great deal of flexibility, but gtkmm doesn't expect you to worry about that functionality unless you actually want to use it.
Christian: Okay, as you told me you made an effort to get gtkmm going, what where your aims when starting out with it?
Murray: I had 2 aims for gtkmm2:
1) Refactor it until both the interface and the implementation were ridiculously clear. I did not want any lingering doubt about the code just because people couldn't understand it. I believe that even a dull-witted person, with enough time, and enough notepaper, can make sense of anything. If he's not dull-witted then he'll make it easier for the next person.
2) Get more developers involved. This becomes easier after 1) when people can understand the code enough to improve it, but it's also necessary to:
- Present a clear vision so people know what's happening. To this end, I make a point of pre-announcing all major changes, discussing them, and announcing my interpretation of the consensus before proceeding. Everybody now understands that that's how we work, and that's why we've been successful. We only have to point to the list archives to justify our decisions in detail.
- Nurture people to get them started. We do this on the mailing list and in the #c++ IRC channel on irc.gimp.net.
- Let people know that their contributions are valued.
I know from commercial software development that money alone doesn't motivate people. In both proprietary and open-source projects, a team can only succeed if its members feel valued and involved in something worthwhile. That requires constant attention, but it pays off eventually.
Christian: That sounds good, so what is the current status of the C++ bindings for GNOME 2?
Murray: We are approaching API stability for gtkmm2, I think. Our code generator warns us about any functions that we've forgotten to wrap, and we are keeping track of API coverage manually too. We are spending most of our time now perfecting and simplifying the complex TreeView and TextView interfaces, and I see the end in sight there too. Lots of people are using gtkmm2 now and the response is overwhelmingly positive.
gnomemm 2 is progressing more slowly, mostly because it's more difficult for people to install all the latest GNOME 2 libraries. While it's still in development. Gnomemm 2 is much more integrated than gnomemm 1.2 - you can even download and install it as one tarball to get wrappers for libgnomeui, libglade, and gconf, among others.
I recently shared the gtkmm maintainership with Daniel Elstner because he's been doing so much good work on fundamental stuff. With two committed maintainers, and several regular developers, the future should be secure.
Also, we just announced support for the Forte C++ compiler that Sun will use for GNOME 2 on Solaris. And we are on the threshold of supporting Windows. Both of these platforms should be of great interest to commercial in-house developers.
Christian: Do looking ahead, what are the future directions of gtkmm and gnomemm?
Murray: For the future, we need to work on more Rapid Application Development stuff. The idea should be to add convenience without adding complication or straying from existing standards.
I'm working on some libglade additions that should make it easier to link custom code with separately-designed user interfaces. libglademm's syntax is already simpler and more helpful than libglade.
When GNOME's Anjuta2 is released, and when I can easily install KDevelop for KDE3, we need to add helper features for gtkmm.
We need to add things such as:
- Application-creation wizards so people can get started quickly.
- An "Add a signal handler for this widget to this class" feature
- An "Add a member variable for this Glade widget to this container class" feature.
- A widget creation wizard.
- A Bonobo control creation wizard.
- Add a class, deriving from this widget class.
- Add a method to this class.
- Override this method in this class.
Christian: OrbitCpp is being integrated to ship as part of the core ORBit2 package. What will this mean for C++ developers working on GNOME apps?
Murray: The Bonobo bindings are progressing well, but until ORBit2's C++ support is merged in, just after GNOME 2, we must supply bonobomm separately. I'm particularly proud of the Bonobo bindings - the lack of API clarity in Bonobo has long irritated me and this is an opportunity to show that it's not really that difficult. I've explained the issues in more detail elsewhere. C++ is the natural language for CORBA, which is inherently object-orientated - CORBA in C was always a freakish idea so it's no wonder that it's difficult.
So this means more people can use Bonobo. And the API clarity should mean that the Bonobo interfaces receive more scrutiny, because people will understand them well enough to criticize them.
We're really lucky that Michael Meeks decided to support our efforts by merging the C++ mapping into ORBit2 itself. It gives it a mainstream future.
Christian: The release of GNOME 2 is approaching fast now, how does the GNOME 2 platform look from the view of someone producing language bindings for the GNOME platform? Will there be any significant design changes introduced into the bindings due to the changed in the GNOME 2 platform?
Murray: Language bindings should now be much easier. The GTK+ and GNOME authors are more aware of the needs of language bindings and the various bindings are cooperating more, particularly with the
.defs interface-definition files. For instance, we use James Henstridge's .defs generation scripts for pygtk.The transition to GNOME 2 has allowed us to make previously forbidden interface changes to the underlying libraries. We developed gtkmm2 while GTK+ 2 was being developed. With gtkmm 1.2, we just complained about problems in GTK+ 1.2, but this time we fixed the problems in GTK+ as we found them.
gtkmm2 (for GNOME 2) is significantly different than gtkmm 1.2 (for GNOME 1.x). Some of these changes are due to changes in GTK+, but most are just lessons that we learned from gtkmm 1.2. GNOME 2 rationalizes its interfaces a lot by deprecating its more crufty stuff, and we make our interfaces even clearer by omitting those deprecated parts completely.
Christian: What are you favourite applications that has been developed using the gtkmm and gnomemm bindings?
Murray: I use Gabber every day as an instant messenger client - I love how it Just Works. I'm trying to persuade Julian to start the gnomemm2 port, even if I have to code it myself.
Cactus's Guikachu is also pretty impressive - it has made me want to do some Palm development.
There's a bunch of specialist apps out there, though not so many have been ported to gtkmm2 yet. I think that a lot of our users are doing in-house stuff. C++ is much more popular than C for that kind of thing.
I have high hopes for my own Glom app. It's meant to be a very easy-to-use database application that embodies my years of database design experience. But I've been too busy working on gtkmm2/gnomemm2 to port it properly. In the meantime, I released a small file utility, PrefixSuffix, which is a pretty good gtkmm2 example.
Christian: What are your thoughts on the future of the C++ language? Will it continue to be one of the major computer languages or is it set to be replaced by languages such as Java and C#?
Murray: In my opinion, Java and C# are much closer to interpreted languages in their design. By this I mean that much more is decided at runtime than at compile-time. I'm bored by discussions of executable speed, but I do feel that compile-time checking verifies designs and speeds development. Java and C# offer object-orientated improvements over scripting languages such as Perl and Visual Basic, but I see no competitor to C++'s feature set. I expect it to maintain its current high level of popularity.
Christian: About two years ago there was a lot of noise around gtkmm and gnomemm, with Havoc Pennington having started the Inti project, and with the leaving of Guillaume Laurent from gtkmm development, after which Guillaume was quite vocal in why he felt that gtkmm wasn't what thought is should be, in fact he called it a 'throw-away prototype' for a GTK+ C++ wrapper. Two years is a lot of time in the software world so I'm wondering what your thoughts are on the issues debated on back then, and how you see today's versions of gtkmm and gnomemm responding to any real issues raised back then.
Murray: I wasn't involved in those discussions, but I was annoyed at the schism. I like to think that I would have found an acceptable consensus. Most gtkmm users and developers strongly disagreed with Inti's design decisions so we carried on hoping that we would prevail. We did, and Inti didn't, and it's all history now. Inti died because it never involved a community of hackers, whereas I like to think that people preferred to work on gtkmm's design and felt more welcome in the gtkmm community.
RedHat's whole Inti framework never made much sense to people. Havoc is such a pragmatic developer that I still don't believe it was really his brainchild.
But Inti did create confusion among users, and even prompted one of the gtkmm maintainers to give up. My guess is that Guillaume never really got a handle on the gtkmm codebase and took the opportunity to jump clear of something that daunted him. When I was building gtkmm2 I sometimes felt the same but I chose instead to radically refactor it until it was manageable. I believe Guillaume felt certain anyway that, with RedHat's backing, Inti would succeed and gtkmm would fade away.
Guillaume uses QT now. He has stated that it was more important for him to have a full working toolkit than a perfect API. gtkmm2 will go stable soon - then we will have both in one toolkit.
Christian: What are the main differences of coding with gtkmm and gnomemm compared to coding with QT and KDE?
Murray: I addressed this in my GUADEC talk (1) and (2).
Basically, QT isn't developed publicly so it makes a number of mistakes without the benefit of any real criticism. Chief among these is its modification of the C++ language and the use of its own non-standard string class. It isn't necessary, as we've proved. These are just two ways that we've kept more up-to-date with the state-of-the-art in C++. It's then easier to use gtkmm in combination with other C++ APIs. I believe that you'll love gtkmm if you love C++, and that gtkmm is a better role-model if you're learning C++.
People sometimes complain about a lack of gtkmm documentation compared to QT, but that hasn't been true for a long time(*).
And perhaps most importantly, if you find a problem with gtkmm you can submit a patch or discuss it with the developers.
Christian: What is the advantage of using the bindings when creating GNOME and GTK+ applications in C++ compared to just accessing the C widgets?
Murray: Again, the GUADEC talk mentioned this (1) and (2).
gtkmm applications tends to be more organized than GTK+ programs. That's mostly because it's laughably easy for us to derive new widgets just to organise our code. In comparison, the structure of GTK+ code tends to be defined by the path that data happens to take through the code, rather than the layout of the source code itself.
Christian: What would you say to a developer who is trying to decide whether to write his application in C or whether to use gtkmm and gnomemm and C++?
Murray: I believe it's easier to develop software with C++, even if you're not very experienced, because the structure is there in the code, not just in your head. If you're as good as the GTK+/GNOME developers then maybe you can deal with the underlying C interfaces, but, in my experience, most coders want an easier life.
I'd recommend that people compare the C and C++ versions of the examples before deciding.
Christian: You made a presentation at GUADEC 3 this year. What is your impression of the GNOME community, is it becoming more language agnostic or is there still a strong favouring of C among the hackers you talked too?
Murray: I think people accept now that there will always be active language bindings for GNOME, and many of the core hackers now routinely use more than one programming language. There is still some general Unix-style dislike of C++, but interest has grown as people have seen that gtkmm is very much alive and useful.
Christian: For anyone wanting to learn how to create applications using gtkmm and gnomemm, where should they start looking? Are there any applications out there that you think a newbie would find a easy starting point to look at before starting creating their own applications?
Murray: Assuming that you're already a C++ coder, you should be able to get started easily by looking at the examples and the 'Programming with gtkmm' book. In fact, we have a particularly good documentation overview page with quick links into the manual and the reference documentation: http://www.gtkmm.org/gtkmm2/
We have converted all of the GTK+ examples and demos and added some of our own. I believe it's easier for a C++ coder to understand the gtkmm examples than it is for a C coder to understand the GTK+ examples.
I strongly suggest that you start with gtkmm2 rather than the stable gtkmm 1.2, because we have obliterated several confusing things.
People should also join the gtkmm-main mailing list and the #c++ channel on irc.gnome.org. We are a helpful bunch.
Christian: Okay, thanks for taking the time to talk with me Murray.
Murray: No problem, it was a pleasure.
-
Re:What are their selling points?
capitalism is the opposite of communism. in communism - man exploits man -
Therefore in capitalism, man exploits man. Ooooh spooky! The exact opposite!
On one side, we have Mr William Gates III who says that you should use only his software, and you should pay him a lot of money for it. And if somebody else tries making software, Mr Gates and his cronies will illegally drive them out of business and take over their market. Even his Hotmail site now says that Konqueror browser is "No longer supported, please upgrade to MSIE" if you try to change your "Options". Yes changing options on a web site MUST require a much more advanced browser than Konqueror. ILLEGAL ANTI-COMPETITIVE PRACTICES. CONVICTED.
On the other side we have Mr Richard Stallman and friends (and some enemies) who want software to be FREE and want you to have it. They want you to have every right to use the software any way you like, except you can't take away anybody else's right to do the same thing.
I know which side I'm on. LIVE FREE OR DIE! -
Under GPL NSA must release source code?According to the article,
Among the most high-profile efforts is research funded by the National Security Agency to develop a more secure version of the open-source Linux operating system, which competes with Microsoft's Windows.
My question is, under the GPL, will they have to tell us what modifications they made?
From GPL:
The GPL does not require you to release your modified version. You are free to make modifications and use them privately, without ever releasing them. This applies to organizations (including companies), too; an organization can make a modified version and use it internally without ever releasing it outside the organization.
But if you release the modified version to the public in some way, the GPL requires you to make the modified source code available to the users, under the GPL.
Thus, the GPL gives permission to release the modified program in certain ways, and not in other ways; but the decision of whether to release it is up to you.
What could the NSA do to compel them to show us what modifications they made?
-
Under GPL NSA must release source code?According to the article,
Among the most high-profile efforts is research funded by the National Security Agency to develop a more secure version of the open-source Linux operating system, which competes with Microsoft's Windows.
My question is, under the GPL, will they have to tell us what modifications they made?
From GPL:
The GPL does not require you to release your modified version. You are free to make modifications and use them privately, without ever releasing them. This applies to organizations (including companies), too; an organization can make a modified version and use it internally without ever releasing it outside the organization.
But if you release the modified version to the public in some way, the GPL requires you to make the modified source code available to the users, under the GPL.
Thus, the GPL gives permission to release the modified program in certain ways, and not in other ways; but the decision of whether to release it is up to you.
What could the NSA do to compel them to show us what modifications they made?
-
Re:interference..
He's talking about 802.11a though, which operates at 5Ghz and is far less polluted (not to mention much faster, and with a comparable range in real life tests).
Offtopic: I have "s" as a nickname for Slashdot in Opera (so I enter s in the address bar and it brings me to Slashdot), but every now and then I forget to hit F2 and put "s" in Google (which happens to be my homepage). I find the first result (searching on the letter "s") rather hilarious given the context...conspiracy? -
GNU files amicus curiae brief
Also, the FSF filed a "friend of the court" brief, though if, like me, you are not a lawyer, you might rather just read the press release.
-
GNU files amicus curiae brief
Also, the FSF filed a "friend of the court" brief, though if, like me, you are not a lawyer, you might rather just read the press release.
-
Re:Personally...
just for openers, depending upon how doctrinaire you are about "free," lcc is free for free software...
Doctrinaire? Nice bit of intellectual baiting there.I suppose I could say lcc is just fine, depending on how cavalier you are in supporting free software.
I personally want free as in liberty, not beer. Lcc doesn't meet the requirements.
But, since you said "just for openers", I assume that you have a whole list of free (in some sense) compilers? If so, please share!
I personally know of only one other free C compiler, and it only parses K&R C and produces 16-bit 8086 code.
-
Re:But such an important piece
Stallman's claims are that he doesn't get enough credit.
Stallman's claim is that GNU doesn't get enough credit.
And for people who keep saying "HuH HuH What about GNU/XFree86/Linux/Apache... OH DAMN IM SO SMART", XFree86 is part of the GNU system. The GNU system is a bunch of stuff from a bunch of different groups. Not all of it written by the GNU Project members and not all of it is copyrighted under the GPL. It's not even very hard to find RMS saying this himself.
Developing a whole system is a very large project. To bring it into reach, I decided to adapt and use existing pieces of free software wherever that was possible. For example, I decided at the very beginning to use TeX as the principal text formatter; a few years later, I decided to use the X Window System rather than writing another window system for GNU.
Because of this decision, the GNU system is not the same as the collection of all GNU software. The GNU system includes programs that are not GNU software, programs that were developed by other people and projects for their own purposes, but which we can use because they are free software.
The incredible irony is that Stallman should have just called GNU + Linux by the common name "The GNU System". He was already calling XFree86 + GCC + TeX by the name "The GNU System" and nobody complained about that. But instead Stallman recognised the huge contribution that the Linux kernel provided to the GNU system and graciously called it the GNU/Linux system instead of just the GNU system.
I get the impression that the people who insult RMS - like you - simply don't understand what he's saying. Admittedly RMS is not a very good communicator of his ideas but ingrates like you don't make it any easier.
-
His Movement?Actually RMS is very clear that he isn't part of the open source movement. He is trying to emphasize the difference between the Open Source movement and the Free Software movement. This isn't some sort of unnecessary division, it underlies the fundamental differences between the two similar movements.
http://www.gnu.org/philosophy/free-software-for-fr eedom.html
We are not against the Open Source movement, but we don't want to be lumped in with them. We acknowledge that they have contributed to our community, but we created our community. We want people to associate our achievements with our values and our philosophy. We want to be heard, not hidden behind a different view
-
GNU Wants to Own Software
There is a nice article on the GNU site entitled, "Why Software Should Not Have Owners". Isn't Stallman, by insisting that Linux be called GNU/Linux, trying to claim ownership? If software should not have owners, why does Stallman care what it's called? As long as Linux is GPL'd and his propaganda is spread throughout the land, his insistence that it be called GNU/Linux seems a bit disingenuous to me.
-
"Free" means more than one thing in English.
The problem with "free" is a problem in English, not other languages where the difference between price and liberty are clear. The FSF offers a list of translations to use for Free Software when speaking other languages so people understand you're not talking about price (yes, I know the link points to a term on "Freeware", that's where they put it because the list answers another question relating to the term "Freeware").
-
Re:the name of the OS shouldn't matter
Idiot.
Stallman has said, categorically and repeatedly, that selling software is OK . He himself used to subsist on selling mail-order tapes of GNU software before the Internet was as pervasive as it is today.
He has also written about the GNU/Linux thing. In essence he doesn't want recognition for himself -- He wants GNU/Linux systems to promote Free Software in general. He wants more people to read the stuff at gnu.org, so they aren't as ignorant as your post shows you are.
Personally, when talking amongst friends, I abbreviate GNU/Linux to ``Linux'', but in writing I generally write ``GNU/Linux'', after all, if we cared about our keystrokes, we wouldn't be writing on Slashdot, now would we? -
Re:the name of the OS shouldn't matter
Idiot.
Stallman has said, categorically and repeatedly, that selling software is OK . He himself used to subsist on selling mail-order tapes of GNU software before the Internet was as pervasive as it is today.
He has also written about the GNU/Linux thing. In essence he doesn't want recognition for himself -- He wants GNU/Linux systems to promote Free Software in general. He wants more people to read the stuff at gnu.org, so they aren't as ignorant as your post shows you are.
Personally, when talking amongst friends, I abbreviate GNU/Linux to ``Linux'', but in writing I generally write ``GNU/Linux'', after all, if we cared about our keystrokes, we wouldn't be writing on Slashdot, now would we? -
Re:the name of the OS shouldn't matter
Idiot.
Stallman has said, categorically and repeatedly, that selling software is OK . He himself used to subsist on selling mail-order tapes of GNU software before the Internet was as pervasive as it is today.
He has also written about the GNU/Linux thing. In essence he doesn't want recognition for himself -- He wants GNU/Linux systems to promote Free Software in general. He wants more people to read the stuff at gnu.org, so they aren't as ignorant as your post shows you are.
Personally, when talking amongst friends, I abbreviate GNU/Linux to ``Linux'', but in writing I generally write ``GNU/Linux'', after all, if we cared about our keystrokes, we wouldn't be writing on Slashdot, now would we? -
Re:Stallman misses a chance...[ Here's a shortened version of a comment I posted when Barr's article was originally slashdotted, that is pertinent here.
"Change your name before I come" is RMS' personal requirement when accepting a speaking engagement. Actually, other FSF speakers often speak to groups that call themselves "Linux" groups. We ask only that the advertising and press material about our particular speech call the system, GNU/Linux.
Of course, when I and other FSF speakers make a speech, one of the items on our agenda is to ask such groups, as a favor to the GNU project, to change their name and/or documents to say "GNU/Linux" consistently. While it is RMS' personal demand that the name change occur as a term to accept the engagement, the FSF does not, as an organization, demand such name changes. We simply request them.
Comparing it to Microsoft's tactics is out of proportion. FSF firmly stands for free speech rights. We assert your right to call the operating system anything you like; we request as a favor that you call it GNU/Linux.
RMS is a highly sought-after speaker. As it turns out, since he is not (nor never has been) paid a salary by the FSF, he collects speaker fees to help pay for his living expenses. As with any speaker, it's his prerogative to set the terms of his speaking engagements. Indeed, every speaker has his or her own set of requirements. (AAMOF, ESR's are available online.) Personally, I have a rule that there must be vegetarian restaurants that someone can take me to in the towns I visit. Of course, FSF doesn't take a position on vegetarianism, but it's a personal need of mine that I can't ignore---even when I am speaking on behalf of FSF.
While RMS won't come to speak for your group if it's called a "Linux" group, I'd be happy to come, as would many of the other FSF speakers. While I am there, I am, of course, going to ask you to change the name of the group. But, please note the key point here: just because RMS sets a personal rule doesn't mean it is ipso facto FSF policy.
While it is RMS' personal demand that the name change occur as a term to accept the engagement, the FSF does not, as an organization, demand such name changes. We simply request them.
Bradley M. Kuhn, Executive Director of the FSF
-
Re:Personally...This is why. RMS isn't the "insane" person you seem to think he is.
For instance, has it occurred to you that every time something like this makes the news, it's extra publicity for the FSF? Even if people think RMS is a bit of a nut (most would anyway), it still serves to inform people.
Regarding your comment that "Linux is Linus Torvalds' brainchild", nobody is suggesting that Linus call the *kernel* "GNU/Linux", but the operating system that it runs has GNU at its core. gcc and glibc are certainly not Linus' brainchildren.
Besides, "GNU/Linux" serves as a good distinction between itself, "GNU/HURD", "Linux" (the kernel), and other non-GNU-running Linux systems.
-
karma whore extraordinaire
For those who don't know, the GNU project is located here.
-
RMS can use BitKeeper
Contrary to what RMS says in the article about the free software foundation not being able to use bitkeeper (since they don't want any non-free software on their computers) and therefore having to depend on another to put the kernel source in CVS or to create a free implementation of BitKeeper, in an article about the history of the GNU project he comes to the conclusion he should allow himself to use non-free software in order to create a free implementation of it.
UNIX was (and is) proprietary software, and the GNU project's philosophy said that we should not use proprietary software. But, applying the same reasoning that leads to the conclusion that violence in self defense is justified, I concluded that it was legitimate to use a proprietary package when that was crucial for developing free replacement that would help others stop using the proprietary package.
-
Re:"Dubious Ethical Value"
> > IP Lawyer...
> Sheesh, enough with the lawyer bashing already.Speaking as somebody who's decided not to become an IP lawyer precisely *because* this profession is of dubious ethical value, I'd like to point out that you've missed the point entirely.
Being a lawyer isn't, in itself, morally dubious. But defending copyrights and patents under current US law IS of questionable moral value. (Never call it "intellectual property", as that term confuses the issues.)
I double majored in Biomedical Engineering and Philosophy in college, but no matter how "hot" the job might be, you couldn't give me enough money to do what I'd have to do as a patent lawyer in my field. I'd have to try to prevent companies from offering cheap alternatives that the poor could afford. I'd have to prevent research on the grounds that licensing fees weren't paid. I'd have to attack companies as part of a business model in which extortionary patents are the main sources of income.
If I worked as a "copyright" lawyer, just to get paid as much as I get paid as an engineer right now, I'd have to argue that my rich clients deserve money from anyone who challenges the powers they bought from Congress; I'd have to try to move more money into their hands because Republicans can't understand the difference between Communism and the public domain and because Democrats are watching out for their good friends and patrons in Hollywood.
As this kind of lawyer, I would never *make* money; I would only move money from one person to another.
I'm open-minded enough to see that there are clear arguments against my views, mostly grounded in the semantics of "incentives." Some of those arguments may be right. But I think it'd take a closed-minded and exceptionally blinkered point of view to fail to see that being an "IP lawyer" is, indeed, of dubious ethical value.
-
GPL violation: the best corrective action?What's the best corrective action for GPL license violations?
Scenario:
Let's say a company piggybacks on some GPL code and sells that solution to the public without releasing the source code as specified in the GPL license.
How should monetary damages be determined? In the case of other (more typical) infringments, it is easier to show that one person gained $X at someone else's expense. How do you put a price on damages done to the public good?
Who is best fit to enforce it? And what is the appropriate way to deal with violators? -
GPL violation: the best corrective action?What's the best corrective action for GPL license violations?
Scenario:
Let's say a company piggybacks on some GPL code and sells that solution to the public without releasing the source code as specified in the GPL license.
How should monetary damages be determined? In the case of other (more typical) infringments, it is easier to show that one person gained $X at someone else's expense. How do you put a price on damages done to the public good?
Who is best fit to enforce it? And what is the appropriate way to deal with violators? -
Re:Multiple passes to your codejust add " }
//end if" or something.I find most of your suggestions very good, and fairly standard - but the idea of adding comments to the end of closures seems a little
.. pedantic.Surely most coders use a decent editor - to make comments like that entirely superfluous?
I use DOC++ on my C++ code, after falling in love with JavaDoc several years ago. You can see an example of a fairly complex application documented :
-
Re:Don't forget...
That sure beats the hell out of a certain other song that gets mentioned around here now and then.
-
/usr/bin/bc
For decades now I have used
/usr/bin/bc as my personal finance software. Give it just one try and you'll never go back to GUIs again. (I'm currently using v1.06 from GNU.) -
/usr/bin/bc
For decades now I have used
/usr/bin/bc as my personal finance software. Give it just one try and you'll never go back to GUIs again. (I'm currently using v1.06 from GNU.) -
Re:Quick question
-
Welcome to the future
Have you read Right to read yet?
-
Small-Mid Sized Business GNU/Linux Demo in NYCCoincidentally, New York Linux Scene, a volunteer advocacy group in NYC, is planning a demonstration of GNU/Linux solutions for small-mid sized businesses next Friday (May 24th).
The show will demonstrate how small-mid sized businesses can save money and take advantage of the latest technology showing off such goodies as Bayonne, LTSP, X Terminal services, OpenOffice.org, and Evolution
If you are interested in what GNU/Linux solutions are out there for your small to mid sized office, come over to Segal Theater at CUNY Graduate Center, 34th St. and 5th Ave from 10am-5pm next Friday the 24th. [Free and Open to the Public]
This is a volunteer demonstration. With work like this, we are changing the face of New York. If you are interested in coming or helping, contact paulr at nylxs.com. -
Something to be careful of
They've provided an online wizard where you can choose the type of license and restrictions you want to put on your work
IANAL, but choosing licensing options from a menu sounds like a potentially dangerous idea. It may be possible that some restrictions may conflict with others, making it possible to breach whatever mix-and-match license options are offered.If an author/artist/programmer wants a customized "sharing" license for their work, they'd be well advised to run it by a lawyer or stick with an existing license
-
Is it just me...
...or has this already been done?
There are also other sites dedicated to this idea. -
Re:A T*roll....
-
Textbooks, Resources, LDP
As an academic myself, a few different issues spring to mind. I'll try to organize them in a somewhat coherent fashion.
First, I would ask if you really need textbooks? While most professors still use textbooks, a lot of people do fine without using any textbooks at all. Yes, it requires more effort on the part of the professor to research all of the sources themself; however, in my experience, the results are certainly worth it. Rather than teaching a politically-correct, watered-down course, you can tailor it to precisely what you feel is important. And shouldn't that be a professor's obligation anyhow?
For sources, I would start with the LDP, the FSF, O'Reilly, and Addison-Wesley. These guys easily make up over 95% of my tech bookshelf.
Addison-Wesley also does textbooks. I don't know how good they are but if they pay as much attention to their textbooks as they do to their IT texts, they'll be excellent.
On another matter, if you're going to consider rolling your own textbooks, don't reinvent the wheel. Much, if not most, of the documenation out there is under a free-as-in-speech license. Use it. Also, I don't think that you need to start your own website. I can't speak for the LDP but it seems to me that they would be delighted to assist you in developing the texts that you need.
Finally, if you go to the effort of developing all of this content, please do the right thing and share it with the community. Ideally, this would through a free-as-in-speech license. -
[Q] diff Vovida Bayonne?
The article seems to show a fairly simple state model for Vovida.
I love simplicity, but worry about feature completeness and extensibility, too.
Does anyone knowledgable know how Vovida compare with Bayonne?