The poster states, "Two stories in the news offer contrasting approaches by Web companies to questions of free speech," and continues with stories about YouTube and Amazon.
By "free speech" one must assume that the poster refers to the First Amendment to the United States Constitution, which states in part, "Congress shall make no law... abridging the freedom of speech, or of the press....
Neither YouTube nor Amazon are Congress and therefore there is no question of free speech.
Why is this simple distinction so often missed, even among the cognoscenti?
If all of this turns out to be true, it would be a sad re-playing of the history of penicillin. Some say that Sir Fleming's decision to not patent penicillin and to instead make it freely available delayed its acceptance and a the development of a viable method of mass production by 10-15 years for exactly the same reason as cited above--no company saw a benefit in making a product which was essentially a commodity from the beginning. The resulting unnecessary deaths, some spanning World War II, as a result of this misguided altruism, is a true tragedy--and perhaps a lesson for those who don't appreciate property rights generally.
You ask some good questions, especially considering that my original post smelled of flaimbait.
I have a mind, I've heard of Ada, and I've read about it, but I've never touched an Ada compiler.
You may touch an Ada compiler for free 8^) since Ada is an official member of gcc. It is therefore available for any platform for which gcc is available. You may download from gcc.gnu.org or better (pre-compiled) from libre2.adacore. It is called GNAT and is written in Ada (at least the front end is.)
So, where is it written that all software must be written in C or C++? Its not, but TONS of software and especially existing libraries are written in C/C++.
Can Ada be used for Linux kernel modules or Windows device drivers?
Absolutely.
I know C and possibly C++ can be used. Does Ada have hooks to common libraries like SSL and zlib?
As another poster commented, it is trivial (really) to make Ada bindings to C libraries. The "connection" is an official part of the Ada language specification. I did this recently for a plotting library written in C called PLplot plplot.sourceforge.net. I was just learning Ada and knew even less C. Most of my effort was involved in learning enough C to get the job done. I have posted information about these bindings at http://homepage.mac.com/oscarruitt/plplotinada/plp lot_ada.html. Note that this software is not yet released and is still under review by the PLplot folks; the usual disclaimers about suitability and nonliabiity apply.
How proven is the Ada compiler for Solaris, Linux, Windows, and AIX?
I'm not sure what you mean by "proven," but Ada is surely as proven as C and C++ is for these platforms. Ada can do anything that C and C++ can, as far as I know. Ada compilers typically undergo a notoriously stringent testing suite. When you fly on modern commercial jet aircraft, you're flying Ada. Post your question to comp.lang.ada and you'll get answers from actual Ada experts.
I've got years of experience with C/C++, zero with Ada, if you really want that code to be written yesterday, how long will it take me to be as proficient in Ada as I am in C/C++?
Tough question. Again, others with more experience in all of these languages can answer better. I'll answer this way at the risk of sounding prejudiced: You can become proficient in the subset of Ada that "covers" C and C++ in less time than it took you to learn them. Also, once you achieve some level of proficiency in Ada, it is commonly reported that development time is less than for C/C++. And Ada is said to excel in long-term maintenance of large projects.
Personally, I (like everyone else) have looked time and time again at getting serious with C. (I first learned to program in 1973 and have used many languages.) Maybe I'm lucky, but I've always had the final choice in what languages I use. I am a big proponent of knowing several languages and choosing the best one(s) for the job. Not only has C struck me as being inappropriate for every programming task that I have had with respect to reliability, it has also struck me to be hard to learn and even harder to read. Ada, on the other hand, has a clean, consistent syntax and of course is designed from the ground up to be safe.
I ask people all the time why the still use Windows just like you are asking about why people still use C or C++. The difference in my question is that there is a clear migration from Windows via virtualization and/or using alternatives to Windows specific solutions. The fact of the matter is that change takes time and effort, and people are fundamentally lazy and comfortable with what they are already familiar with. Couple that with ignorance of there being a better way, and your stuck with the lowest common denomina
Ada is comparable to C and C++ in the area of "efficiency/performance." The misconception which you propagate disappears when fair comparisons are made.
Remember that Ada is used in many embedded real-time applications; indeed, that is much of the reason that it came into existence in the first place.
"How do you go about making sure your code is secure? Especially if you have to write in a language like C or C++?"
Don't write in C or C++. Duh. Where is it written that all software must be written in C or C++? Is anyone capable of independent thought? There are plenty of fine languages that are safe. Ada comes to mind. Maybe others will come to your mind (if you have one).
"One only has to look at the fruits of the space program (from computers to microwave ovens to Tang)."
Presumably the author refers the the tube in a microwave oven called a magnetron. If so, then this was developed in World War II for use in radars. Incidentally, the invention of the transistor was a direct follow-on to WWII efforts to build crystal detectors. See the book, "The Invention that Changed the World" by Robert Buderi, a history of the development and aftermath of the invention of radar. It is said that the atomic bomb ended the war but radar won the war.
Patents are published before allowance for a reason. The Slashdot community could be an effective filter for nonsense patents. So--in addition to complaining on Slashdot, why don't some of you who are experts in a particular field (say, emotiflags) get involved in the public review process and cut off some of these applications at the knees.
Here are some simple and possibly relevant facts that one would have thought the/.ers would have considered by this point in the discussion. In no particular order:
2.4 GHz is a molecular resonance of water. That's why that frequency was chosen for microwave ovens--you shake the water molecule really really hard and viola, your (water-bearing) food gets hot. Your brain is mostly water. No offense intended.
Any damage from WiFi is not going to be caused by heating because there simply isn't enough power do do much heating.
The more-relevant figure to consider is not power but something like power density or electric field strength.
Health effects, if any, would most likely to be caused by molecular effects. For example, there is solid research that says that certain cell phones affect certain brain proteins in a dish in a laboratory. Cancer would be caused by an ionizing incident resulting in a mutated DNA molecule.
The energy of any periodic single-frequency signal or wave goes as the square of its frequency. For periodic non-sinusoidal waves, the energy is sum of the energies of each harmonic (Parseval's theorem).
Visit the MythTV web site, for example, this page, http://mythtv.org/modules.php?name=MythInstall, and you will get an idea of why so much OSS is doomed to failure, at least outside the tiny world of dedicated computer hobbyists. This page represents the opposite of "ease-of-use."
I know that Carbon Copy Cloner is very highly rated. However, in my first attempt, it failed to complete the job--I'm apparently a rare case. However, that led me to the most excellent of excellence, SuperDuper!. Except for the ! in its name, this is first-class stuff and supported by a guy who makes money so that you are less likely to be left in the lurch as I've heard some complain lately with respect to CCC.
I am always amazed when I read a piece on software security--in almost every case, one of the problems that gets mentioned is buffer overflow. My amazement comes from how deeply ingrained it has become in much of the world's programming community (certainly the American branch) to use an inappropriate programming language for such important work.
I have heard that Microsoft has modified its own compiler to do array range checking. I wonder if they have ever used it--a simple re-compile with range checking turned should turn up no problems. Surely no programmer would ever write a program that _depended_ on a buffer overflow in order to work correctly. If one such programmer was ever found, surely he would be hung up by his testicles at the employee entrance to the Microsoft campus.
To "beg the question" means something very specific and something very different than as used in "Design News discusses Boston's Big Dig and begs the question - is it one of engineering's greatest failures?" I know this is off-topic but it's one of my pet peeves and surely/. types know better.
It is astonishing that a company such as Microsoft has to constantly play catch-up in operating system technology; it is simply incomprehensible that they apparently are not doing any planning for future OSes.
a great quote from physicist Joseph Henry: 'The seeds of great discoveries are constantly floating around us, but they only take root in minds well prepared to receive them.'
This is an inelegant paraphrase of Blaise Pascal: "Chance favors the prepared mind," sometimes also attributed to Louis Pasteur.
This is one of my favorite engineer exchanges in movies, from "No Way Out," 1987, with Kevin Costner, Gene Hackman, and Sean Young. A computer is crunching away at a bad photograph which when enhanced will incorrectly incriminate Costner in the death of Sean Young's character. He estimates that he has only a few hours to find the true killer before the photo is legible. The following exchange takes place. (Compare and contrast this with absolutely every other movie and TV show in which a photograph can be zoomed indefinitely by simply clicking on the interesting part, or can be immediately enhanced by the geek of the day with only a few key strokes (never a mouse) upon directions from a superior such as, "Can you make it clearer?")
- What do you want me to do?
- Slow up the resolution on that picture.
I need more time, Sam. I need more time to get this straightened out.
That's what I need.
I'm not satisfied with the way this is coming up. The eigenvalue is off.
Looks all right to me.
We're pulling away from our reference information. Program a Fourier transform.
It could be used to break the interconnect barrier by having optical interconnects, the interconnect barrier threatens Moore's law unless a faster way of connecting chips is found."
People who make run-on sentences should be shot, don't you agree.
The new work, Microsoft decided, would take a new approach. Vista was built more in small modules that then fit together like Lego blocks, making development and testing easier to manage.
Cool. They should patent this. Maybe call it "modular programming."
The poster states, "Two stories in the news offer contrasting approaches by Web companies to questions of free speech," and continues with stories about YouTube and Amazon.
... abridging the freedom of speech, or of the press....
By "free speech" one must assume that the poster refers to the First Amendment to the United States Constitution, which states in part, "Congress shall make no law
Neither YouTube nor Amazon are Congress and therefore there is no question of free speech.
Why is this simple distinction so often missed, even among the cognoscenti?
How many mistakes can one poster put per line?
The link needs a password.
"groundbreaking new" is redundant.
"Anyways" is, what, Canadian?
"it's" is a fuck*ng contraction, not a pronoun. Kids, let's get this right just once, OK?
If all of this turns out to be true, it would be a sad re-playing of the history of penicillin. Some say that Sir Fleming's decision to not patent penicillin and to instead make it freely available delayed its acceptance and a the development of a viable method of mass production by 10-15 years for exactly the same reason as cited above--no company saw a benefit in making a product which was essentially a commodity from the beginning. The resulting unnecessary deaths, some spanning World War II, as a result of this misguided altruism, is a true tragedy--and perhaps a lesson for those who don't appreciate property rights generally.
You ask some good questions, especially considering that my original post smelled of flaimbait.
I have a mind, I've heard of Ada, and I've read about it, but I've never touched an Ada compiler.
You may touch an Ada compiler for free 8^) since Ada is an official member of gcc. It is therefore available for any platform for which gcc is available. You may download from gcc.gnu.org or better (pre-compiled) from libre2.adacore. It is called GNAT and is written in Ada (at least the front end is.)
So, where is it written that all software must be written in C or C++? Its not, but TONS of software and especially existing libraries are written in C/C++.
Can Ada be used for Linux kernel modules or Windows device drivers?
Absolutely.
I know C and possibly C++ can be used. Does Ada have hooks to common libraries like SSL and zlib?
As another poster commented, it is trivial (really) to make Ada bindings to C libraries. The "connection" is an official part of the Ada language specification. I did this recently for a plotting library written in C called PLplot plplot.sourceforge.net. I was just learning Ada and knew even less C. Most of my effort was involved in learning enough C to get the job done. I have posted information about these bindings at http://homepage.mac.com/oscarruitt/plplotinada/plp lot_ada.html. Note that this software is not yet released and is still under review by the PLplot folks; the usual disclaimers about suitability and nonliabiity apply.
How proven is the Ada compiler for Solaris, Linux, Windows, and AIX?
I'm not sure what you mean by "proven," but Ada is surely as proven as C and C++ is for these platforms. Ada can do anything that C and C++ can, as far as I know. Ada compilers typically undergo a notoriously stringent testing suite. When you fly on modern commercial jet aircraft, you're flying Ada. Post your question to comp.lang.ada and you'll get answers from actual Ada experts.
I've got years of experience with C/C++, zero with Ada, if you really want that code to be written yesterday, how long will it take me to be as proficient in Ada as I am in C/C++?
Tough question. Again, others with more experience in all of these languages can answer better. I'll answer this way at the risk of sounding prejudiced: You can become proficient in the subset of Ada that "covers" C and C++ in less time than it took you to learn them. Also, once you achieve some level of proficiency in Ada, it is commonly reported that development time is less than for C/C++. And Ada is said to excel in long-term maintenance of large projects.
Personally, I (like everyone else) have looked time and time again at getting serious with C. (I first learned to program in 1973 and have used many languages.) Maybe I'm lucky, but I've always had the final choice in what languages I use. I am a big proponent of knowing several languages and choosing the best one(s) for the job. Not only has C struck me as being inappropriate for every programming task that I have had with respect to reliability, it has also struck me to be hard to learn and even harder to read. Ada, on the other hand, has a clean, consistent syntax and of course is designed from the ground up to be safe.
I ask people all the time why the still use Windows just like you are asking about why people still use C or C++. The difference in my question is that there is a clear migration from Windows via virtualization and/or using alternatives to Windows specific solutions. The fact of the matter is that change takes time and effort, and people are fundamentally lazy and comfortable with what they are already familiar with. Couple that with ignorance of there being a better way, and your stuck with the lowest common denomina
Ada is comparable to C and C++ in the area of "efficiency/performance." The misconception which you propagate disappears when fair comparisons are made. Remember that Ada is used in many embedded real-time applications; indeed, that is much of the reason that it came into existence in the first place.
"How do you go about making sure your code is secure? Especially if you have to write in a language like C or C++?" Don't write in C or C++. Duh. Where is it written that all software must be written in C or C++? Is anyone capable of independent thought? There are plenty of fine languages that are safe. Ada comes to mind. Maybe others will come to your mind (if you have one).
"One only has to look at the fruits of the space program (from computers to microwave ovens to Tang)."
Presumably the author refers the the tube in a microwave oven called a magnetron. If so, then this was developed in World War II for use in radars. Incidentally, the invention of the transistor was a direct follow-on to WWII efforts to build crystal detectors. See the book, "The Invention that Changed the World" by Robert Buderi, a history of the development and aftermath of the invention of radar. It is said that the atomic bomb ended the war but radar won the war.
Patents are published before allowance for a reason. The Slashdot community could be an effective filter for nonsense patents. So--in addition to complaining on Slashdot, why don't some of you who are experts in a particular field (say, emotiflags) get involved in the public review process and cut off some of these applications at the knees.
Here are some simple and possibly relevant facts that one would have thought the /.ers would have considered by this point in the discussion. In no particular order:
2.4 GHz is a molecular resonance of water. That's why that frequency was chosen for microwave ovens--you shake the water molecule really really hard and viola, your (water-bearing) food gets hot. Your brain is mostly water. No offense intended.
Any damage from WiFi is not going to be caused by heating because there simply isn't enough power do do much heating.
The more-relevant figure to consider is not power but something like power density or electric field strength.
Health effects, if any, would most likely to be caused by molecular effects. For example, there is solid research that says that certain cell phones affect certain brain proteins in a dish in a laboratory. Cancer would be caused by an ionizing incident resulting in a mutated DNA molecule.
The energy of any periodic single-frequency signal or wave goes as the square of its frequency. For periodic non-sinusoidal waves, the energy is sum of the energies of each harmonic (Parseval's theorem).
China - We're Not Chinese
Learn Ada. You'll be amazed.
Would you wear this if the software were written in C?
Visit the MythTV web site, for example, this page, http://mythtv.org/modules.php?name=MythInstall, and you will get an idea of why so much OSS is doomed to failure, at least outside the tiny world of dedicated computer hobbyists. This page represents the opposite of "ease-of-use."
I know that Carbon Copy Cloner is very highly rated. However, in my first attempt, it failed to complete the job--I'm apparently a rare case. However, that led me to the most excellent of excellence, SuperDuper!. Except for the ! in its name, this is first-class stuff and supported by a guy who makes money so that you are less likely to be left in the lurch as I've heard some complain lately with respect to CCC.
"I am trying to do a simple backup on my home XP system/s"
Patient to Doctor: It hurts every time I do this."
Doctor to Patient: Stop doing that.
I am always amazed when I read a piece on software security--in almost every case, one of the problems that gets mentioned is buffer overflow. My amazement comes from how deeply ingrained it has become in much of the world's programming community (certainly the American branch) to use an inappropriate programming language for such important work.
I have heard that Microsoft has modified its own compiler to do array range checking. I wonder if they have ever used it--a simple re-compile with range checking turned should turn up no problems. Surely no programmer would ever write a program that _depended_ on a buffer overflow in order to work correctly. If one such programmer was ever found, surely he would be hung up by his testicles at the employee entrance to the Microsoft campus.
(N.B. All programmers have testicles 8^).
To "beg the question" means something very specific and something very different than as used in "Design News discusses Boston's Big Dig and begs the question - is it one of engineering's greatest failures?" I know this is off-topic but it's one of my pet peeves and surely /. types know better.
Read this and be wiser:
http://www.answers.com/main/ntquery?s=begging+the+ question/
This, following on the heels of outlawing booth bunnies--coincidence?
It is astonishing that a company such as Microsoft has to constantly play catch-up in operating system technology; it is simply incomprehensible that they apparently are not doing any planning for future OSes.
a great quote from physicist Joseph Henry: 'The seeds of great discoveries are constantly floating around us, but they only take root in minds well prepared to receive them.'
This is an inelegant paraphrase of Blaise Pascal: "Chance favors the prepared mind," sometimes also attributed to Louis Pasteur.
The article is very poorly reasoned, equating all political speech to copyrighted material.
Typical half-baked blogshit.
The incidents involved are not wiretaps. The demagogues always have their day, but at least on /. let's keep the facts straight.
This is one of my favorite engineer exchanges in movies, from "No Way Out," 1987, with Kevin Costner, Gene Hackman, and Sean Young. A computer is crunching away at a bad photograph which when enhanced will incorrectly incriminate Costner in the death of Sean Young's character. He estimates that he has only a few hours to find the true killer before the photo is legible. The following exchange takes place. (Compare and contrast this with absolutely every other movie and TV show in which a photograph can be zoomed indefinitely by simply clicking on the interesting part, or can be immediately enhanced by the geek of the day with only a few key strokes (never a mouse) upon directions from a superior such as, "Can you make it clearer?")
- What do you want me to do?
- Slow up the resolution on that picture.
I need more time, Sam. I need more time to get this straightened out.
That's what I need.
I'm not satisfied with the way this is coming up. The eigenvalue is off.
Looks all right to me.
We're pulling away from our reference information. Program a Fourier transform.
- That seems like a waste of time.
- Just do what I want, OK?
It could be used to break the interconnect barrier by having optical interconnects, the interconnect barrier threatens Moore's law unless a faster way of connecting chips is found."
People who make run-on sentences should be shot, don't you agree.
The new work, Microsoft decided, would take a new approach. Vista was built more in small modules that then fit together like Lego blocks, making development and testing easier to manage.
Cool. They should patent this. Maybe call it "modular programming."