As applications based on gtk-python, Gtk# and gtkmm become aplenty, many casual Gnome users find it difficult to install them painlessly as these GTK+ bindings are not part of the default Gnome distribution and they usually don’t come with the distro by default. Gtkmm’s Murray Cumming is now suggesting that the project creates a GNOME Bindings release set with all the needed libraries and deps in the “package” in a way that makes it easier for both distro maintainers and casual users to install them. If the idea takes off it can be very beneficial for all.
Good idea, actually. Gtkmm is really starting to see use as an alternative to Qt (LGPL vs. GPL), and it seems like there’s no quick solution to getting the libs on your system besides grabbing a million RPMs/DEBs/TGZs.
As a developer, I also wouldn’t mind getting all my GNOME binding love in one shot, either…
-Erwos
that is one of the nice things bout Gnome is that all the stuff they are doing to stream line the system makes the Gnome Environmnet sort of become part of the tool, just like Mac OS X, rather than the tool used to get to the tools you need, like Windows.
How about some new, interesting features.. How about magic keys technology? What if when I’m at the desktop, if I start pressing numbers, a calculator automatically pops up? Or how about coming up with other interesting ideas, like Apple did with Expose?
God no. Gnome is about minimalism and less is better, good defaults are better than a plethora of options, the user knows what he /she wants, just make it easy for them to get to what they want.
having the DE anticipate through magic keys is hard to do and will be more annoying than anything. if I am entering a serial number, the last thing I want is a calculator to pop up. just give me a nicely organized main menu and I will be happy as will most users.
it would be better to have a hot-key combo to bring up the run dialogue and allow me to type calculator.
If you re-read my post, you will notice I said at the desktop. Why are you entering serial numbers at the desktop, which does not take any input except for renaming desktop items, and using letters to jump to icons. And why are you entering serial numbers? RMS/Linux software does not require licenses- its FREE as in GPL.
And your “hot-key” suggestion is terrible because no one woudl know it existed. Oh, you just press Left Ctrl+ Right Shift + Meta while tapping ~ and $ together at two beats per second to activate the calculator? How handy!
Were you saying no to creative ideas in general, or just my second suggestion? You might notice that “How about some new, interesting features” is the thesis of my original post, so it seems that you are indicating you do are not pro-original ideas. Please let me know if I’m misunderstanding you.
[/i]God no. Gnome is about minimalism and less is better, good defaults are better than a plethora of options[/i]
This logic sounds good in theory but the problem is, who decides what are good defaults and what are not?
so what is the point?
Micro soft tries this anticipatory crap all the time and it is just annoying.
And your “hot-key” suggestion is terrible because no one woudl know it existed. Oh, you just press Left Ctrl+ Right Shift + Meta while tapping ~ and $ together at two beats per second to activate the calculator? How handy
Toggle “Alt + F2”
That launches the run command.
Type “gcalctool”
It’s only two steps dude. I think it’s handier than hitting the number randomly to launch a calculator.
This logic sounds good in theory but the problem is, who decides what are good defaults and what are not?
The GNOME Human User Interface.
>How about magic keys technology?
All you need is a ten dollar InLand or BTC “multimedia” keyboard (the one withe the additional special keys). Examples: http://shop.store.yahoo.com/tigerdirect-com/a450-1006.html or http://www.inlandfaq.com/keyboards.htm (the second one in the list)
These extra dark keys can be programmed very nicely with the “Multimedia Keys” preference panel hat comes with Gnome 2.4 as stadnard.
Funny we have this conversation, because I was at Frys on Saturday and I bought such a a cheap-a$$ PS/2 multimedia keyboard for ten bucks to use with my AthlonXP and I NEVER inteded to use these extra keys. But when I found out that Gnome supports it, I actually now kinda use them! 😮
This logic sounds good in theory but the problem is, who decides what are good defaults and what are not?
The GNOME Human User Interface.
And who are these guys, God? I’m certainly not saying it is necessarily a bad thing to have an established standard for the way GUIs should be laid out and such, but this mentality of “Well, these are good defaults, so screw all the options” is just not a very good approach, IMHO.
Give me what you consider good defaults, but let me have the ability to customize/change if I want.
And who are these guys, God? I’m certainly not saying it is necessarily a bad thing to have an established standard for the way GUIs should be laid out and such, but this mentality of “Well, these are good defaults, so screw all the options” is just not a very good approach, IMHO.
Give me what you consider good defaults, but let me have the ability to customize/change if I want.
That’s exactly as it is.
It’s only two steps dude. I think it’s handier than hitting the number randomly to launch a calculator.
Oh yeah, why didn’t I think to press Alt F2 and then typing “gcalctool.” That is so much more intuitive then pressing the keys on my keyboard (10-key) that is organized similar to a calculator. And I love how everyone attacks my specific example, and no one is willing to agree that Gnome should innovate. And the keys are not “random” they are the first numbers you want entered in the calculator, and should be passed in. I don’t know if this level of integration is possible within Gnome, though.
>no one is willing to agree that Gnome should innovate
I do. I had a long discussion (see: argument) with Havoc Pennington about it a few weeks ago via email. His main viewpoint was that Gnome and surrounded technologies just needed to be “good enough” in order to become more broadly used as he believes that being “Free” is more important than actually solving real user problems. My standpoint was that innovation and problem solution should be the No1 target for all software, open or closed (that doesn’t matter). We use computers to solve problems, that’s why we need the best tool for the job and if that comes through innovation, even better. I like Havoc a lot, he is a very bright and energetic engineer, but he kinda dissapointed me there.
I believe that all software should innovate. But that shouldn’t necessarily mean “bloating” as in your suggestion. Just use a $10 multimedia keyboard and do the job.
if (window_selection == G_DESKTOP && is_numeric(key_in) )
exec ( “gcalc –first-key=%s”)
The bloat! The horror! 😉
And I do agree with what you said. Interesting that politics is more important than a better product for the end-user.
My point with that admittedly not important example was… that I think desktop environments should be about understanding the user, and not the other way around. What can the user possibly be trying to say if he is typing at the desktop? Just an example of that, a specific thing that has to be implemented ASAP. Sometimes I feel people focus on the details, and miss the bigger picture.
what can he mean if he is typing on the desktop? he could just be thinking. I tap on keys all the time as I think while working at the computer.
Gnome has the programable hot-key support, so why not just use a keyboard with that on it?
Well first, do you type numbers? And second, who cares? If you randomly clicked on things, would it be the computers job to decide if you really meant to make an input or not? No.
Anyways, I think this topic is a bit off topic to the bindings news item.
So up the news item, I would love to have an gtkmm package that installs _all_ its libs with configure and make install. I alredy have compiled python for gtk myself, and in my experience it can help lots of people out there. I also compiled Mono the other day, but because Mono is in still in a state of flux I hope that upgrading its version manually later won’t break things on the gnome-bindings package in any way…
but because Mono is in still in a state of flux I hope that upgrading its version manually later won’t break things on the gnome-bindings package in any way…
Don’t worry, Linux and other associated open source projects has a long history of maintaining backwards compatibility. I bet you can just apt-get whatever, or emerge foo, urpmi the_moon and you will be set. I think is actually a big advantage. I don’t have to go search for programs like on Windows, I just have to memorize a slighly cryptic name and setup the configuration file of my package manager to make sure I have the proper repositories and that I have updated the cache.
I think that GTKmm is great to have in a nice package. it would be nice to have a objC GTK wrapper or perhaps an extended GTK for ObjC. it would be nice for C programers who want to extend their code.
As for what the user could possibly want when typing at the desktop: On the MacOS, typing in the Finder (including the desktop) does a look-ahead select of the filename you type. This is incredibly useful, and GNOME would do well to follow suit.
As for innovation in general, I believe there is a lot of innovation going on around GNOME. But we don’t include applications in the GNOME desktop and then write them. Innovative applications are written by people. Dashboard, Storage, and Dasher are three very innovate applications that aren’t part of GNOME, but they’re being developed around GNOME technologies.
As for Eugenia’s disappointment with Havoc: Did that actually come as a surprise to you? That’s a very common attitude in the Free Software community. Of course we should innovate. Of course we should try to solve real-world problems. But if the software isn’t free, it doesn’t matter. The primary goal is to create free software.
Oh, and what do any of these comments have to do with including language bindings in the developer platform?
Hmm, I wonder where he got that idea from /me rolls his eyes remembering a post from a while back he made.
What I would like to see is with this bindings idea is a move away from the shopping list of dependencies that exist. For example, why not have the various libgnome* and so forth? Make it simple? KDE is simply, download qt, download the source tar balls and compile the stuff from qt, kdelibs and so forth.
What’s funny is that I was sort of complaining about this a couple weeks ago and someone(I forgot who) posting on OSnews mentioned this exact same idea.
Let’s face it, writing Gnome/Gtk+ apps in straight c isn’t that much fun anymore and really isn’t that productive. Havoc Pennington and Owen Taylor have said for quite a while now that most application development should probably be done in more productive languages.
This is great for developers and end-users if distros include this in gnome upgrades or installations. For the developers, they can be assured if someone has Gnome 2.6.0 installed and their bindings package is included in the meta-bindings package then all these dependencies are resolved. For the end-user, all they need to know is that since they have gnome 2.6.0 or whatever version that the dependencies are satisfied.
Gtkmm really is a good toolkit and probably isn’t used as much as it should be because the de-facto(you know a gnome desktop will have it) toolkit has been straight c and developers will tend to focus on the least common denominator.
Another thing that has been discussed and I hope also comes about is the folding of the major parts of the Gnome gui libraries into gtk+ proper. I run fluxbox on an older laptop and it’s somewhat of a pain(Multi-Gnome-terminal for example) to have gnome libraries as a dependency when it shouldn’t be needed. Does anybody know of a tabbed terminal app that just relies on gtk2?
Eugenia said:
> I would love to have an gtkmm package that installs _all_
> its libs with configure and make install.
Firstly, it’s not a very good idea to install from source. Your distro should make it easy to install packages.
Secondly, there is such a gnomemm-all source tarball. Tell us if it works for you. There is also garnome and jhbuild to make building from source easier.
The proposed Binding release set is largely about marketing and providing a schedule and rules to aim for, not about making it easier for you to install stuff. But hopefully that will be a side-effect as we encourage distros to ship the bindings.
Let’s face it, writing Gnome/Gtk+ apps in straight c isn’t that much fun anymore and really isn’t that productive.
How is Gnome/Gtk+ and C not productive? Do you think the majority of GNOME and GNOME apps are written in Java? Or do you want me to give you a list of high quality apps that have been produced via GNOME/Gtk+/C? Now tell me any other language or binding as productive as Gtk+/C?
Look, feel free to write your code in any language you wish. But don’t count on me to use a browser written in python or perl or worst still Java.
Please, do this soon. Users don’t care about libraries. They care about tasks. Programs are how they accomplish those tasks, so users already think in terms of programs. Why abstract them one further to have to thing: Gee, do I have PyGTK, and gnome-python-canvas installed?
How big are all these packages anyway. Maybe better yet, have a container package for all these in repositories like apt, urpmi and so on.
Then I just type “apt-get install gnome-bindings-all” and it installs all the bindings. Makes it easier to update the bindings one at a time, That way, I do not have trouble when updated bindings come later.
How is Gnome/Gtk+ and C not productive? Do you think the majority of GNOME and GNOME apps are written in Java? Or do you want me to give you a list of high quality apps that have been produced via GNOME/Gtk+/C? Now tell me any other language or binding as productive as Gtk+/C?
Python.
For many things, Python is easier. A calculator in C? A media player in C? A little panel utility written in C?
You are suggesting that saying something is more productive than C, it must be better. That is not what is being said.
Their are many things that are better left to C. For example, that media player that is written in Python would use libraries written in C that python has bindings for. So suddenly, you can quickly and easily create solid applications.
On another note, while I know it won’t make people happy, this reminds me somewhat of Visual Basic. While Visual Basic didn’t exactly bring in hoards of good programmers, it still made it easier to develop for windows. By easily providing the bindings, it makes the job easier for developers. Suddenly, they don’t have to write the whole application in C, but rather, write a library in C, and make the interface in Python (or something else, obviously, I prefer Python for this sort of thing =) ). Making things easier for developers means more programs.
And while you will get many programs that suck, you will get a lot of programs that do the job, and do it well.
I’ve used hundreds of programs over my years (thousdands even), and the quality of the program had no relation with the language that was used. Any contention to the contrary is hogwash.
great idea.
windows has VB, Mac OS X has Apple script, why not have a scripting language for GUI development? having python the gui language would make it very easy to make front ends for apps, it might actual make the app lighter.
What about php-gtk?
Anyone know when it will work with gtk 2.x?
“How is Gnome/Gtk+ and C not productive? Do you think the majority of GNOME and GNOME apps are written in Java? Or do you want me to give you a list of high quality apps that have been produced via GNOME/Gtk+/C? Now tell me any other language or binding as productive as Gtk+/C?”
Have you even tried to write in Gtk+/C? It is horrible. They take C and put this big hack around it to make it object oriented… That is the problem! gtkmm or pygtk are much more reasonable since there is a natural mapping between what GTK+ is trying to do and OO in those languages.
How is Gnome/Gtk+ and C not productive? Do you think the majority of GNOME and GNOME apps are written in Java? Or do you want me to give you a list of high quality apps that have been produced via GNOME/Gtk+/C? Now tell me any other language or binding as productive as Gtk+/C?
I learned QT before gtk, and moving to Gtk+/C was moving backwards in time. I hated it. gtkmm & pygtk on the other hand while not as “feature full” as QT (it is a lot more than a GUI library) are very nice.
It isn’t that Gtk+/C aren’t capable of certian tasks, it is that it is an ugly hack! If you want OO, use an OO language. Use a language that doesn’t fight with you!
Jesse
Anyone know when it will work with gtk 2.x?
It’s on the way, it will be only with PHP5.
My Bright idea was dockable applications. I think the Longhorn is tending that way with its sidebar (I’d like to say now I had this idea back when I was using my amiga)
Atm whenever I am at a computer I have icq open, I generally have a mail client open. If I was more organised I might also have a calendar, more musically inclined an mp3 player, more literary inclined a dictionary etc.
What I would like it a panel where I can put this applications so that they are part of the desktop framework rather than floating windows that bloat my taskbar and hide underneath each other.
I would like to have a shrink expand setup ala Macromedia Studio MX so that I can have a summary of the new messages in my inbox which expands to show more details, temporarily obscuring my gaim contact list. Clicking on said links would open link to the mail program of choice and display the correct message.
The big advantage is that as part of the “walls” of my desktop it would feel less like a whole plethora of disparate systems and more like a “just works” environment where applications are mostly related to work and productivity.
This is my idea. It’s probably not even mine. However lately any new ideas not explicity duplicated in windows or OSX are fringe madness it seems.
I note that numerous projects provide something similar to this, Dashboard, Applets that Swallow applications etc. but none of them quite scratch the right itch.