Given your antipathy towards Java I take it you tried it once perhaps Loooooong ago, didn't like it, and now spew the same antipathy today as if nothing has changed. Not trying to criticize your view or anything but they "were" valid... years ago.
Do you deny that it still takes a shell script to start most Java apps on Unix? The latest Ant apparently still does this, for example.
Do you deny that developing and building Java apps requires that you adjust you CLASSPATH in order for the compiler to find the locations of third-party libraries you are linking against?
Do you deny that running Java applications still requires you to obtain a JRE from Sun? And that many applications require at minimum a certain version of the JRE?
Have you actually tried writing a serious app in Java?
No, but the reason is that I've never come into contact with anything related to Java that left me with a good feeling. I figure that if no one else can make Java likable, it would be unrealistic to assume that I can.
I come into contact with Java at work, and I have experimented with small projects in Java in the past.
Now that you've spewed your uninformed assessment of my motives, let me tell you what they really are. I think the charge of "troll" is ridiculously overused and abused by people who read something that they strongly disagree with and call it a troll. "Troll" has a specific meaning, with a specific criterion that my post simply does not fit: namely that it is written solely to get a rise out of people. A troll is not a legitimate viewpoint, or it is so inflammatory that it cannot form the basis of a worthwhile discussion.
Recall the definition of a troll. A troll posts something intentionally inflamatory to get a rise out of people. You really think that my post had the sole purpose of making people angry?
People have watered down the meaning of "troll" to be "something strongly worded that may be controversial." And that's silly.
The "portability concerns" you mention are really quite minor, have you ever attempted to write a semi-complex cross-platform piece of software that strayed beyond the Standard C and C++ libraries?
Yes, I am a significant contributor to the audio editor Audacity. It runs on Windows, Linux, and Mac OS X. It uses cross-platform libraries to do:
GUI (wxWindows)
Audio I/O (portaudio)
PCM sound file i/o (libsndfile)
mp3 decoding (libmad)
id3 tagging (libid3tag)
pcm resampling (libsamplerate)
time and pitch stretching (soundstretch)
vorbis encoding and decoding (libogg/libvorbis)
XML parsing (expat)
Also, with Swing, you can make your app fit in perfectly with the underlying OS
Swing does not fit in perfectly by any means. Even someone who knows nothing about computers can tell you it looks different and feels different.
How is integrating your Java app into the system any different than making an InstallShield wizard for your C++ app on windows?
You don't even need an InstallShield wizard for apps written in C++, all you need is a.zip with the app and the DLLs. You don't even need that if you link statically, all you need in that case is an.exe! There's no comparison with the chore of making sure a JRE is installed, that it is a new enough version, and that your app can find the java vm and all it's libraries.
Why does anyone use Java, ever? In what situation does it offer anything that justifies the pain and inconvience that it incurs?
Can you think of even one Java application that you use on your desktop and like?
Can you think of a single language/runtime that feels so out of place no matter what platform you're running on? A platform that makes you deal with CLASSPATH, non-native and slow widgets, and shell scripts to set a thousand environment variables before starting your "portable" application?
Can you think of a single problem domain where Java offers greater portability than the competition? Standard C, C++ or Python (depending on your desired level of abstraction) are just as portable as Java as long as your libraries/toolkits are cross-platform. And programs written in these languages just fit in, they find their libraries without fuss, they start up rapidly (in comparison) instead of seemingly spawning an OS within an OS.
I've felt this way about Java since the moment I first tried it, and I'm still at a loss. I just don't get why so many people decide that Java is the solution for them.
Combine all of that with Fink and the Developer Tools and what more could you possibly ask for?
The source.
The freedom:
Gratis means that once I've figured out the solution to a general computing problem, it is available to me on any machine instantly; even if money is no object, nothing beats the convenience of everything being a download away. PuTTY is a prime example. No matter where I am, if I need to SSH to my computer, I can have PuTTY downloaded and running in under a minute.
Libre means that I will never have to curse at my computer for obeying the wishes of my vendor over the wishes of me, the end user. It also means that I can peek inside applications to see how they work, which has huge educational benefits.
Pursuit of the litigation against IBM and, potentially, others will be costly, and we expect our costs for legal fees could be substantial. In addition, we may experience a decrease in revenue as a result of the loss of sales of Linux products and initiatives previously undertaken jointly with IBM and others affiliated with IBM. We anticipate that participants in the Linux industry will seek to influence participants in the markets in which we sell our products to reduce or eliminate the amount of our products and services that they purchase. There is also a risk that the assertion of our intellectual property rights will be negatively viewed by participants in our marketplace and we may lose support from such participants. Any of the foregoing could adversely affect our position in the marketplace and our results of operations.
It's patented. Therefore it fails the test. If I wanted to put my music in a format that I have to (directly or indirectly) pay licensing fees to encode or decode, I'd use mp3.
Industry needs to settle itself on a media, and MP3 seems to be acceptable.
It is quite unacceptable when distributing an mp3 encoder requires paying patent license fees and distributing a deocoder avoids them only by the revocable policy of Thompson looking the other way.
I can think of only two possible reasons why Python's whitespace-significant block structure would bother people:
people are determined to write code that is not indented the way it looks (so that the parser will recognize a different block structure than the indentation implies)
people feel warm and fuzzy staring at braces and "begin/end" keywords.
Someone please explain: why does this feature make you so upset? How could it possibly make your life more difficult to know for a fact that the interpreter sees the blocks the same way you do on the screen?
An X server is still an X server. It's still network-transparent, and if you want to start it with only a single xterm and no window manager no one is going to stop you. You can spend as much time as you want configuring everything the way you like it. None of the old applications or environments you reminisce about have un-written themselves. You can do a base Debian install, be left with 80MB of nothing but GNU userspace and the infrastructure to install other packages. You don't even have to know KDE or Gnome exist.
Linux began as almost pure innovation, an OS written from the ground up by GNU and Linus Torvalds.
Linux began as nothing but a straightforward implementation of POSIX. It was x86 only, and Linus initially had no plans for portability to other architectures. GNU was just reimplementation of UNIX userspace. Pure innovation? Linus just wanted to have the same environment at home on his x86 box as he had at the university.
I would say it's self-evident that the direction that companies like RedHat are going represents what most people want. They're making money, and I assume they're doing market research to find out what people want. Maybe you're just frustrated that it's not the same as what you want. There's always Debian for you, which given enough time can be whatever you want it to be. Or you could pay Progeny to make this kind of customization easier with their Linux Platform Manager.
Who are these guys? I'm amazed at what they're pulling off, encoding and decoding all these proprietary formats. This isn't the kind of stuff that some bored college student can churn out on a lazy Sunday afternoon. And how do they manage to decode a format like Sorenson that isn't even publically documented (AFAIK)?
The lasers here use more than 1000 times the possible electric output of the United States in one burst (through capacitors.) (1.8MJ)
Excuse this physics initiate, but wouldn't the possible electric output of the United States need to be measured in Watts, not Joules? Given enough time, I bet the US could generate 1.8MJ of electrical energy.
This is all true. But don't forget the other side of the coin: want to open two mp3s, glue them end-to-end with a crossfade, and export to mp3? Ardour doesn't do mp3, and the rest of the process is going to take twice as much work. And you'll have to read the manual and become familiar with concepts like "diskstream," "route," "playlist," and "region." And you'll have to tweak JACK until it runs under your kernel and soundcard without xruns.
Ardour does what it's designed to do: studio recording in professional situations. But so does Audacity: soundfile editing and simple multitrack recording, all out-of-the-box and with minimal effort.
Oggs can be created on any platform, using software that exists, is maintained, and is royalty-free. There are two separate BSD-licensed libraries for decoding, also royalty-free. All the work's been done! All they have to do is download from a sourceforge mirror and integrate this work into their product.
Instead they choose AAC, a format that is patent-encumbered, royalty-incurring, unplayable on most platforms, and uncreatable on nearly all platforms. And they lose my business because I am unable make any use of their products.
As much as I dig Apple's products these days, I am not willing to succumb to any kind of lock-in to use them.
I agree completely. My point is that if he is legitimately adding value, he should be able to be frank with his customers about what he is doing and still get their business. The fact that he feels the need to keep his customers in the dark indicates to me that there is not enough value-add for the deal to stand on its own two legs.
My impression was that he means well, but I found his advertisements slightly deceptive by omission. He was upset that people were emailing his bidders, telling them they could get Audacity for free. My opinion was that if he wasn't value-adding, he didn't deserve their money.
Re:Trying very hard to not turn this into a troll.
on
Debian's Own SourceForge
·
· Score: 4, Insightful
I don't think your average Debian developer gives a shit about people leaving Debian for Gentoo. In fact they're glad because it means less "trendy" users who flock to whatever is in vogue. A few years ago it was apt, now it's emerge. Meanwhile our lives go on trying to get real work done, as opposed to tweaking our systems for trivial performance gains or having "ultimate control."
By always compiling locally, the apps on your machine are optimized the platform they run on, rather than the lowest common denominator.
An oft-repeated claim made by people who are never able to produce any evidence that it matters. But they swear up and down that it feels faster. I wonder if you also mark up all your CDs with green pen because it sounds so much better.
The kinds of applications that really benefit from this kind of arch-specific optimization are often available in several forms, one for each major arch.
This helps Sun as very few apps are compiled for Sparc architectures when distributed, so leveraging Gentoo this way will really help them.
Every single package in Debian is compiled for SPARC (provided it will actually compile successfully). There are more Debian packages than Gentoo ebuilds.
JACK performs well but is not (yet) a "do the right thing" kind of program. It requires a high amount of user intervention to do anything useful. At the moment it forces you to configure the period size and the number of periods manually. Too low and you will get dropouts, too high and you will get sub-par latency. You can't just tell it to optimize for reliability at the expense of latency, because it can only operate with period-size/number-of-period combinations that the underlying ALSA driver directly supports.
Additionally it will not resample for you, so if applications have sound data at a sample rate other than the rate JACK is running at, the application must be able to resample internally.
I want to see a standard sound server as much as anyone else, but I don't think JACK (in its current form) is ready to fill that role. The question is whether someone will step up to accomplish the difficult task of retaining JACK's high performance while also making it simpler to use for less demanding users.
Given your antipathy towards Java I take it you tried it once perhaps Loooooong ago, didn't like it, and now spew the same antipathy today as if nothing has changed. Not trying to criticize your view or anything but they "were" valid... years ago.
Do you deny that it still takes a shell script to start most Java apps on Unix? The latest Ant apparently still does this, for example.
Do you deny that developing and building Java apps requires that you adjust you CLASSPATH in order for the compiler to find the locations of third-party libraries you are linking against?
Do you deny that running Java applications still requires you to obtain a JRE from Sun? And that many applications require at minimum a certain version of the JRE?
So what exactly has changed?
Have you actually tried writing a serious app in Java?
No, but the reason is that I've never come into contact with anything related to Java that left me with a good feeling. I figure that if no one else can make Java likable, it would be unrealistic to assume that I can.
I come into contact with Java at work, and I have experimented with small projects in Java in the past.
Thank you. I can begin to relate to this line of reasoning.
>this is not a troll......
Please allow me to translate
Now that you've spewed your uninformed assessment of my motives, let me tell you what they really are. I think the charge of "troll" is ridiculously overused and abused by people who read something that they strongly disagree with and call it a troll. "Troll" has a specific meaning, with a specific criterion that my post simply does not fit: namely that it is written solely to get a rise out of people. A troll is not a legitimate viewpoint, or it is so inflammatory that it cannot form the basis of a worthwhile discussion.
Recall the definition of a troll. A troll posts something intentionally inflamatory to get a rise out of people. You really think that my post had the sole purpose of making people angry?
People have watered down the meaning of "troll" to be "something strongly worded that may be controversial." And that's silly.
Yes, I am a significant contributor to the audio editor Audacity. It runs on Windows, Linux, and Mac OS X. It uses cross-platform libraries to do:
Also, with Swing, you can make your app fit in perfectly with the underlying OS
Swing does not fit in perfectly by any means. Even someone who knows nothing about computers can tell you it looks different and feels different.
How is integrating your Java app into the system any different than making an InstallShield wizard for your C++ app on windows?
You don't even need an InstallShield wizard for apps written in C++, all you need is a
This is not a troll.
Why does anyone use Java, ever? In what situation does it offer anything that justifies the pain and inconvience that it incurs?
Can you think of even one Java application that you use on your desktop and like?
Can you think of a single language/runtime that feels so out of place no matter what platform you're running on? A platform that makes you deal with CLASSPATH, non-native and slow widgets, and shell scripts to set a thousand environment variables before starting your "portable" application?
Can you think of a single problem domain where Java offers greater portability than the competition? Standard C, C++ or Python (depending on your desired level of abstraction) are just as portable as Java as long as your libraries/toolkits are cross-platform. And programs written in these languages just fit in, they find their libraries without fuss, they start up rapidly (in comparison) instead of seemingly spawning an OS within an OS.
I've felt this way about Java since the moment I first tried it, and I'm still at a loss. I just don't get why so many people decide that Java is the solution for them.
What was it that you wanted, again? The source to the entire OS X operating system?
Yep.
Too bad, you don't get it.
Ok...NEXT! I mean you had a nice performance and all, but you're just not what we're looking for.
The source.
The freedom:
Wow, how interesting. Here is a priceless quote from their quarterly report:
Pursuit of the litigation against IBM and, potentially, others will be costly, and we expect our costs for legal fees could be substantial. In addition, we may experience a decrease in revenue as a result of the loss of sales of Linux products and initiatives previously undertaken jointly with IBM and others affiliated with IBM. We anticipate that participants in the Linux industry will seek to influence participants in the markets in which we sell our products to reduce or eliminate the amount of our products and services that they purchase. There is also a risk that the assertion of our intellectual property rights will be negatively viewed by participants in our marketplace and we may lose support from such participants. Any of the foregoing could adversely affect our position in the marketplace and our results of operations.
Hmm, ya think?
It's patented. Therefore it fails the test. If I wanted to put my music in a format that I have to (directly or indirectly) pay licensing fees to encode or decode, I'd use mp3.
Industry needs to settle itself on a media, and MP3 seems to be acceptable.
It is quite unacceptable when distributing an mp3 encoder requires paying patent license fees and distributing a deocoder avoids them only by the revocable policy of Thompson looking the other way.
Someone please explain: why does this feature make you so upset? How could it possibly make your life more difficult to know for a fact that the interpreter sees the blocks the same way you do on the screen?
That's because the majority of Linux users are ex-Windows users. They don't want a UNIX system; they want a free version of Windows.
Or, in cases such as mine, they want the best of both worlds. Everything Windows gets right, with a fully-powered command-line always a click away.
An X server is still an X server. It's still network-transparent, and if you want to start it with only a single xterm and no window manager no one is going to stop you. You can spend as much time as you want configuring everything the way you like it. None of the old applications or environments you reminisce about have un-written themselves. You can do a base Debian install, be left with 80MB of nothing but GNU userspace and the infrastructure to install other packages. You don't even have to know KDE or Gnome exist.
Linux began as almost pure innovation, an OS written from the ground up by GNU and Linus Torvalds.
Linux began as nothing but a straightforward implementation of POSIX. It was x86 only, and Linus initially had no plans for portability to other architectures. GNU was just reimplementation of UNIX userspace. Pure innovation? Linus just wanted to have the same environment at home on his x86 box as he had at the university.
I would say it's self-evident that the direction that companies like RedHat are going represents what most people want. They're making money, and I assume they're doing market research to find out what people want. Maybe you're just frustrated that it's not the same as what you want. There's always Debian for you, which given enough time can be whatever you want it to be. Or you could pay Progeny to make this kind of customization easier with their Linux Platform Manager.
Who are these guys? I'm amazed at what they're pulling off, encoding and decoding all these proprietary formats. This isn't the kind of stuff that some bored college student can churn out on a lazy Sunday afternoon. And how do they manage to decode a format like Sorenson that isn't even publically documented (AFAIK)?
The lasers here use more than 1000 times the possible electric output of the United States in one burst (through capacitors.) (1.8MJ)
Excuse this physics initiate, but wouldn't the possible electric output of the United States need to be measured in Watts, not Joules? Given enough time, I bet the US could generate 1.8MJ of electrical energy.
This is all true. But don't forget the other side of the coin: want to open two mp3s, glue them end-to-end with a crossfade, and export to mp3? Ardour doesn't do mp3, and the rest of the process is going to take twice as much work. And you'll have to read the manual and become familiar with concepts like "diskstream," "route," "playlist," and "region." And you'll have to tweak JACK until it runs under your kernel and soundcard without xruns.
Ardour does what it's designed to do: studio recording in professional situations. But so does Audacity: soundfile editing and simple multitrack recording, all out-of-the-box and with minimal effort.
WHY would they choose AAC over Ogg?
Oggs can be created on any platform, using software that exists, is maintained, and is royalty-free. There are two separate BSD-licensed libraries for decoding, also royalty-free. All the work's been done! All they have to do is download from a sourceforge mirror and integrate this work into their product.
Instead they choose AAC, a format that is patent-encumbered, royalty-incurring, unplayable on most platforms, and uncreatable on nearly all platforms. And they lose my business because I am unable make any use of their products.
As much as I dig Apple's products these days, I am not willing to succumb to any kind of lock-in to use them.
I agree completely. My point is that if he is legitimately adding value, he should be able to be frank with his customers about what he is doing and still get their business. The fact that he feels the need to keep his customers in the dark indicates to me that there is not enough value-add for the deal to stand on its own two legs.
When we were informed that Gregg Collins was selling Audacity on eBay, we contacted him with our concerns (we didn't have a problem with the concept, just specifics). There was later an exchange on our mailing list
My impression was that he means well, but I found his advertisements slightly deceptive by omission. He was upset that people were emailing his bidders, telling them they could get Audacity for free. My opinion was that if he wasn't value-adding, he didn't deserve their money.
I don't think your average Debian developer gives a shit about people leaving Debian for Gentoo. In fact they're glad because it means less "trendy" users who flock to whatever is in vogue. A few years ago it was apt, now it's emerge. Meanwhile our lives go on trying to get real work done, as opposed to tweaking our systems for trivial performance gains or having "ultimate control."
There already was a recount.
This is why people need to switch over to Gentoo Linux, it's so much easier than RedHat, Debian, and OpenDarwin.
You're right, it is so much easier to go through the process of
configuring and compiling the entire system from the command-line than it is to point and click through an installer that auto-detects everything and gives you a desktop right out of the box. Tell me with a straight face that you would recommend Gentoo to a novice friend before RedHat.
By always compiling locally, the apps on your machine are optimized the platform they run on, rather than the lowest common denominator.
An oft-repeated claim made by people who are never able to produce any evidence that it matters. But they swear up and down that it feels faster. I wonder if you also mark up all your CDs with green pen because it sounds so much better.
The kinds of applications that really benefit from this kind of arch-specific optimization are often available in several forms, one for each major arch.
This helps Sun as very few apps are compiled for Sparc architectures when distributed, so leveraging Gentoo this way will really help them.
Every single package in Debian is compiled for SPARC (provided it will actually compile successfully). There are more Debian packages than Gentoo ebuilds.
JACK performs well but is not (yet) a "do the right thing" kind of program. It requires a high amount of user intervention to do anything useful. At the moment it forces you to configure the period size and the number of periods manually. Too low and you will get dropouts, too high and you will get sub-par latency. You can't just tell it to optimize for reliability at the expense of latency, because it can only operate with period-size/number-of-period combinations that the underlying ALSA driver directly supports.
Additionally it will not resample for you, so if applications have sound data at a sample rate other than the rate JACK is running at, the application must be able to resample internally.
I want to see a standard sound server as much as anyone else, but I don't think JACK (in its current form) is ready to fill that role. The question is whether someone will step up to accomplish the difficult task of retaining JACK's high performance while also making it simpler to use for less demanding users.