[prev] [thread] [next] [lurker] [Date index for 2006/10/17]
So, in the land of UNIX, there exists three normal channels from the outside world to a program: standard in, standard out, and standard error. Standard in is where a program can expect to recieve keystrokes. Standard out is where a program can send its normal output. Standard error is where a program can send messages about unusual conditions and situations. In this simplistic but effective system it is possible to run programs, feed them input, see the output, and seperately find out about problems along the way. Modern toolkit authors seem to be suffering from some kind of cargo cult mentality. They noticed that a datastream existed for finding out about unusual conditions, and decided that this data channel is actually a good place to put any and all possible messages relating to potential problems which may not even exist or matter. Thus, in a modern KDE or GTK/GNOME application, standard error no longer actually represents errors. It in fact is full of status of lunched subdaemons, errors parsing some tree of mime types 8 libraries away from your application, warnings about slightly incorrect type declarions, complaints about buttons that are slightly the wrong size, and so on. The best part of all this spew is that if your program actually _does_ encounter something that you would need to know about "programname: error opening your_letter.doc: permission denied", it is buried in pages of spew, and you'll never see it. Even better is that of course the x console is totally useless. There is no way you would ever see an error produced by the X system itself, because any directly launched gui bits are all spewing in parallel to the same stderr inherited by the X server. So after suffering with this idiocy for many years, I decided to file a clear and cogent request for the GTK developers to address the issue. http://bugzilla.gnome.org/show_bug.cgi?id=362749 The response of course was, to paraphrase: Well, these messages indicate a buggy program, therefore our action is correct. So, to dissect this reducto-ad-absurdism style. If glib notices the program is running has a bug, it should detonate a nuclear warhead in downtown Manhattan. After all, once it is clear you are dealing with a buggy program, there is no need to actually consider whether your response is reasonable, helpful, or useful, it is self-justified because it is a response to a bug! Q. E. D.
Generated at 16:01 on 02 Nov 2006 by mariachi 0.52