If fundamentals were *all* that investing was about, Oh! how simple. Just read Bernstein on asset allocation. And wait a decade or two.
Every algorithm -- read: trading strategy -- is inefficient in it's own way. Markets are random walks that remove inefficiency, at least over the long term. One can't eliminate extraordinary popular delusions and the madness of crowds. Let's program around them!
In the short run it's all about crowd psychology. In the markets, money is made in the short term by *taking* it from another investor.
This will go nowhere except for book and secret method sales.
Additional thought: medical devices do not need to be FDA approved if they are used under a physician's direct supervision. (I know a physician who has a semi-diagnostic piece of software that is sold and used under exactly this kind of exception. It's take years but his sales are quite good. Of course the software program is not nearly as invasive as this device.) Since endospcopy is practiced by MD's, this guy's device is perfectly legal and by all measures a total end-run around the major vendors. Of course it's a risk to the doc -- the first bad accident and there goes his license under perhaps a substandard care kind of malpractice prosecution. It's been my opinion that FDA device approval was as much about protecting physicians as it was the patient.
This study is only confirming the worst fears of academia. The bubble of 2000 is still contracting and its effects will soon be felt by the academics.
We are talking about whole computer science departments evaporating. Your third tier schools will simply loose their programs; the second tier schools will see signficantly reduced faculty head-count; the top-tier schools won't be affected -- for now.
The main trouble is that most CS Departments are in an "enrollment free-fall" and they don't know where it will bottom out.
I know that two years ago the institution at which I taught had a healthy MS and PhD program populated largely by foreign nationals. Immigration rules and procedures reduced enrollments *significantly*. Yet we have a huge faculty (22 tenure track.) AND the undergraduate program enrollment dropped by 2/3. Tell ya guys, you don't need many profs. if you don't have the students.
This particular study will be read by deans, provosts, and college presidents. They will put their money where there is growth. And it ain't in CS.
This is just one more chapter of the.com bust. It's finally caught up to the academics, and they are not going to like it. We still have a lot of oversupply.
The most recent Talbee survey shows fully 66% decline in CS enrollments at the *top* institutions. There are two effect, one of which is the tightening up if INS regulations for foreign studends. This affects graduate schools geneally. The other effect is word of mouth. If "Uncle Bob" was a programmer who's been out of work for awhile, it doen't send a good message to his freshman nephew looking for a major. I've seen this first hand since 2001.
This means that there is a tremendous oversupply of *faculty* at the second-tier instutions (at which I happend to be an adjunct, until recently. Gee, I wonder why?) This article is just some academic bigwigs bemoaning their situation with their industry friends. They're looking for cover.
It's not over till the fat lady sings. In this case, it's going to be massive layoffs in the academic community corresponding to the.com bust. It takes time, but the wonders of the capitalism will be felt by all. "I'm happy you lost your job." That's what happens with oversupply. We'll be better for it.
Until 2003 (for over 30 years) we've got unprecedented growth in academic CS. Some of these academic guys have never known what it means to see a decline. Tenure doesn't mean jack when the program is downsized. Expect more squeeling as the sausge is made.
The only hassle I had [recently] with putting Ubuntu on a top-of-the-line HP Notebook [Compaq NX 9500] (model came out in May 2004) was the fact that I had to run NdisWrapper for the Windows Broadcom driver (for the 802.11g). The Windows driver of course was part of the windows install
Maybe this announcement means that HP will distribute a Linux native Broadcom driver, which is rumored to exist.
CNN reported earlier today that the 9/11 commission has published a couple of monographs exploring two issues: what laws did the 9/11 terrorists break when they acquired visas, passports etc; and how did they get funded.
I think that in about a year -- when it finally sinks in what has been going on -- that this "airline security" reported in the article will be viewed for what it is -- ineffective.
But the specifics on the "visas" monograph seemed to me to indicate something much more interesting -- that rather ordinary diligence using existing tools could be more effective than shaking down elderly people and congress critters.
More effective, but less visible. I think one of the biggest criticisms I have of the Bush Administration is that it has taken steps in the name of national security that is largely ineffective. And it seems to pride itself in a "bread and circuses" concept of national defense. Don't you feel safer watching some smuck getting shaken down?
What has always struck me about the widsom of the BSD license was that it was a way for Regents of the University of California to make available work that was presumably owned by the State of California for the benefit of all commercial entities -- the lion's share of which are/were? in Silicon Valley.
But the work of tens of thousands of individuals across the world, unaffiliated except by a mutual common interest, would not be protected by such a BSD license. The GPL is better suited for that, as several other posters have noted.
Circa, 1968, this machine had a card read, line printer, a plotter, a selectric typewriter and keyboard, 1MB cartridge disk, and 8192 16-bit words. Fortran, APL, RPG. Remarkably forward looking. The cpu was IPLed (that's: initial program load for you youngsters.) I learned assembly lanugage programming on it... sniff.
"Corporate Trainers" are only mouthing conventional wisdom.
FWIW, many of the original studies are for software development projects for which (1) the system is unique (e.g., flight control); (2) has never been built before; and (3) "the right people" for the job exist but are too expensive (so you have to do with folks that are less skilled.)
With these constraints, the figures of 10x, 100x, 1000x help predict life-cycle cost given a larger economic constraint (i.e., scarcity of talent). Estimation is a major issue when bidding with the gov't. Inside a private company such statistics can be use to bludgeon the employees into all sorts of stupid actions.
The open source movement might provide an intersting counterpoint to this acepted wisdom. There might be some interesting results in the case that the developers are so highly qualified on a specific piece of code. The picture might be different for exploits vs. functionality, too.
Government legislators are too stupid.
I think if you look behind the scenes, you'll find a vast lobby of exiting telcos, manufacturers, etc, -- those already vested in the telecom industry.
Unfortunatly, VoIP is not just a lot of "young companies" innovating. It's just another "pure-play Internet" idea meeting the force of reality.
Medical devices controlled by software have stringent FDA approval cycles. Basically you establish the quality of the engineering process, document the heck out of it, and then show clinical effectiveness in random control trials.
What I find fascinating is that legal basis for this is Food and Drug Act -- for the protection of the public as the reason. But the more important side benefit for the approval process is to protect physicians from liability.
It's frightfully expensive. And, BTW, physicians *don't have to do this* if they are involved in active oversight when using an experimental device.
Conclusion: Most software products should be viewed as experimental devices which are being used by competent individuals and which therefore all liability is absorbed by the user. Check your EULA and GPL.
Overall this article is regrettably superficial and quite predictable given the history of the quotees, which in the case of Peter Neumann goes back at least 25 years. Not much has changed. Even the examples have the same kind of air about them.
Don't expect progress any time soon. Usually we need some kind of highly visible public disaster (e.g., like the recent nightclub fires) to motivate action.
And what's with the java comment, PHP is pretty much nothing like java....
I understood the sense of this remark to be more about the PHP's and Java's capabilities to access other software systems, rather than a comment strictly about the language. Check out the PHP reference manual. Sure, the language is the first few chapters. Then check out the other *100* chapters.
One of the things I find fascinating when I compare the two at a system capability level is that they are equally capable. It's just that PHP is so much more easy to use, whereas Java is so much more orthodox.
Easy to use often wins over orthodox.
In the long run PHP has as much chance to be a Java killer as.NET does. In the great battle for free vs. proprietary software do I really need orthodox?
Yes. And, (I speculate) that the internal struggle is between the (at least) "certain" hardware past and the (for sure) uncertain java future.
I think what we are seeing here is a "strategic" stonewalling of the hardware side to try to maintain its "margins" - which are often a consequence of some kind of proprietary software.
OpenBSD kind of kills that idea.
I speculate that internally Sun has advanced a kind of "let's have the best security platform in the industry" motion for its hardware. Release Ultrasparc III specs? That's counter strategic (aka - shoot yourself in the foot) especially if its OpenBSD.
So you be McNeally: how are you going to explain to stock analysts your great plan for resurrecting your company when you give away your proprietary advantage?
Postmodernism is a license to criticize without being held to the rigorous requirements of critical throught. Self consistency is not one of its strong points, at least by usual standards. Just to illustrate this point, the authors' cite Wittgenstein's Tractatus Logico-Philosphicus, and its famous initial assertion (Die Welt ist alles was der Fall ist. - "The world is all that is the case.") Postmodern critics like to avoid the use of abstraction, tending to rely on facts to establish contradictions. The authors' literal reading of the first assertion is fully consitient with postmodern criticism. Of course the rest of the Tractatus has a lot of abstractions in it, which puts it about as far from postmodern as you can get. And as "everybody" knows the Tractatus is the philosophical manifesto for databases, logic programming, UML,.... (which are about abstractions too.) Hmmmm.
Postmoderism tends to irk those who attempt to read it and apply purely "modernist" notions of criticism. At least it irks me. There is a rather well developed theory of postmodern criticism, which the authors of this paper try to explicate (terms like "antitotalizing" etc), examplified, e.g., in the writings of Jacques Derida and many others. This is usually where the academic starts - by aligning their field of study with the concepts of postmodern criticism. This is a small industry and this paper is of that ilk. The best that can be said about postmodernism, IMHO, is that it's like brainstorming written down on paper. It's usually thought provoking. Postmodernist thinking is like a written form of a stream of conscious -- only less well organized!;)
As an aside, when someone asks whatever became of all the nominal Marxists in this world? They all became postmodernist! They had to become something - given that their theory and all of its incarnations are failures. Marxism was the great 19th century critique of capitalism; it was successful so long as you didn't mind some nastiness on the road to Utopia. (Turns out, people *did* mind.) For a large portion of the political landscape both here in the US and around the world, the felt need to criticize the capitalist and capitalism has *not* diminished. Postmodern literary criticism fulfills that role nicely.
But these authors do make a point. Why do you need to learn programming if the reality is that you can purchase the answer? Or look it up for free. I think programming is good for the soul, but some might dispute that motive. Or that to even have the software given to you?? What would be the point of learning to program? Best to leave it to the highly productive few who are best able to do it. With the Internet, the answers are all there for the taking. Don't need nearly as much in the way of university faculty as you might have thought.
I sympathize with the authors' point of view because in my day job I profess computer science for a living. After 34 years of programming (hardly any of it in teaching, but with teaching experience separated by over two decades) I can see a pretty substantive material change in attitude.
However, to claim that all of computer science is only about programming -- this is not quite a postmodernist sentiment!
This problem is not one of transport, its one of SQL capabilities.
The issue is not how you get there (i.e., ODBC vs. JDBC vs. RogueWave et. al.). The issue is what you want to do once you get there.
Consider MySQL and Postgres vs MS SQL, Oracle and Sybase. MS SQL and Sybase are basically the same. In MySQL and Postgres you don't have stored procedures or nested queries. MySQL support for transactions depends on the version. MS SQL et. al. support all of these things. So, for example, in MySQL, you cant do the following:
update (select * from t_1, t_2 where complex condition) as A set A.xxx=where another condition.
I believe the best advice is to build a data abstraction layer for your application (i.e., a base class with virtual member functions for each operation) and to build a subclass for each different database you want to support that's able to exploit all the advantages of each database.
I've had success with this approach. This is the kind flavors and variations issue that C++ (and other OO languages) are good for.
Contrary to the project management theoreticians commenting on this list, you are very lucky to have seen this behavior early. There are worse situations.
Right now you need to make the plan very visible to your manager. It's his/her problem too.
Use your management to sustain accountability for individual commitments of your team peers to the plan. If you can't get that -- leave, you don't have management support. You will need to use shame and threat and fear to get action; because goodness didn't work; your manager has to play the role of the bad guy, because you have another role...
Help your peers to be a team and be successful. Forget coding. Clearly your part is under control. You can do it in your sleep. Don't try to be a savior.
Your project has four extra bodies; be sure you understand why that staffing level was needed.
Make sure you let your management know what you are doing.
You will look like a fool or an ass if you think you can do it all. You will be much more effective if you can make this team perform inspite of its appearant limitations.
If fundamentals were *all* that investing was about, Oh! how simple. Just read Bernstein on asset allocation. And wait a decade or two.
Every algorithm -- read: trading strategy -- is inefficient in it's own way. Markets are random walks that remove inefficiency, at least over the long term. One can't eliminate extraordinary popular delusions and the madness of crowds. Let's program around them!
In the short run it's all about crowd psychology. In the markets, money is made in the short term by *taking* it from another investor.
This will go nowhere except for book and secret method sales.
http://news.bbc.co.uk/2/hi/technology/5140066.stm go figure
Additional thought: medical devices do not need to be FDA approved if they are used under a physician's direct supervision. (I know a physician who has a semi-diagnostic piece of software that is sold and used under exactly this kind of exception. It's take years but his sales are quite good. Of course the software program is not nearly as invasive as this device.) Since endospcopy is practiced by MD's, this guy's device is perfectly legal and by all measures a total end-run around the major vendors. Of course it's a risk to the doc -- the first bad accident and there goes his license under perhaps a substandard care kind of malpractice prosecution. It's been my opinion that FDA device approval was as much about protecting physicians as it was the patient.
Interesting ... I'm a Vonage customer and have yet to receive any info about this. In fact, this Slashdot article is the first I've heard about it.
They must think I'm a customer because I still have service and they keep charging me ...
This study is only confirming the worst fears of academia. The bubble of 2000 is still contracting and its effects will soon be felt by the academics. We are talking about whole computer science departments evaporating. Your third tier schools will simply loose their programs; the second tier schools will see signficantly reduced faculty head-count; the top-tier schools won't be affected -- for now.
The main trouble is that most CS Departments are in an "enrollment free-fall" and they don't know where it will bottom out. I know that two years ago the institution at which I taught had a healthy MS and PhD program populated largely by foreign nationals. Immigration rules and procedures reduced enrollments *significantly*. Yet we have a huge faculty (22 tenure track.) AND the undergraduate program enrollment dropped by 2/3. Tell ya guys, you don't need many profs. if you don't have the students. This particular study will be read by deans, provosts, and college presidents. They will put their money where there is growth. And it ain't in CS.
This is just one more chapter of the .com bust. It's finally caught up to the academics, and they are not going to like it. We still have a lot of oversupply.
The most recent Talbee survey shows fully 66% decline in CS enrollments at the *top* institutions. There are two effect, one of which is the tightening up if INS regulations for foreign studends. This affects graduate schools geneally. The other effect is word of mouth. If "Uncle Bob" was a programmer who's been out of work for awhile, it doen't send a good message to his freshman nephew looking for a major. I've seen this first hand since 2001.
This means that there is a tremendous oversupply of *faculty* at the second-tier instutions (at which I happend to be an adjunct, until recently. Gee, I wonder why?) This article is just some academic bigwigs bemoaning their situation with their industry friends. They're looking for cover.
It's not over till the fat lady sings. In this case, it's going to be massive layoffs in the academic community corresponding to the .com bust. It takes time, but the wonders of the capitalism will be felt by all. "I'm happy you lost your job." That's what happens with oversupply. We'll be better for it.
Until 2003 (for over 30 years) we've got unprecedented growth in academic CS. Some of these academic guys have never known what it means to see a decline. Tenure doesn't mean jack when the program is downsized. Expect more squeeling as the sausge is made.
Yea, the correction continues.
Maybe this announcement means that HP will distribute a Linux native Broadcom driver, which is rumored to exist.
... of a public person. This is a trick worthy of Karl Rove.
CNN reported earlier today that the 9/11 commission has published a couple of monographs exploring two issues: what laws did the 9/11 terrorists break when they acquired visas, passports etc; and how did they get funded.
I think that in about a year -- when it finally sinks in what has been going on -- that this "airline security" reported in the article will be viewed for what it is -- ineffective.
But the specifics on the "visas" monograph seemed to me to indicate something much more interesting -- that rather ordinary diligence using existing tools could be more effective than shaking down elderly people and congress critters.
More effective, but less visible. I think one of the biggest criticisms I have of the Bush Administration is that it has taken steps in the name of national security that is largely ineffective. And it seems to pride itself in a "bread and circuses" concept of national defense. Don't you feel safer watching some smuck getting shaken down?
What has always struck me about the widsom of the BSD license was that it was a way for Regents of the University of California to make available work that was presumably owned by the State of California for the benefit of all commercial entities -- the lion's share of which are/were? in Silicon Valley.
But the work of tens of thousands of individuals across the world, unaffiliated except by a mutual common interest, would not be protected by such a BSD license. The GPL is better suited for that, as several other posters have noted.
What's the smallest rfc number that's still considered "important".
I love generalization.
Circa, 1968, this machine had a card read, line printer, a plotter, a selectric typewriter and keyboard, 1MB cartridge disk, and 8192 16-bit words. Fortran, APL, RPG. Remarkably forward looking. The cpu was IPLed (that's: initial program load for you youngsters.) I learned assembly lanugage programming on it ... sniff.
This has nothing to do with the concept of software patents, or there merit.
The reason for this is because there are patent lawyers that would be out of work if were not for software patents.
There will be about as much progress here as there has been in tort law reform.
"Corporate Trainers" are only mouthing conventional wisdom.
FWIW, many of the original studies are for software development projects for which (1) the system is unique (e.g., flight control); (2) has never been built before; and (3) "the right people" for the job exist but are too expensive (so you have to do with folks that are less skilled.)
With these constraints, the figures of 10x, 100x, 1000x help predict life-cycle cost given a larger economic constraint (i.e., scarcity of talent). Estimation is a major issue when bidding with the gov't. Inside a private company such statistics can be use to bludgeon the employees into all sorts of stupid actions.
The open source movement might provide an intersting counterpoint to this acepted wisdom. There might be some interesting results in the case that the developers are so highly qualified on a specific piece of code. The picture might be different for exploits vs. functionality, too.
Government legislators are too stupid. I think if you look behind the scenes, you'll find a vast lobby of exiting telcos, manufacturers, etc, -- those already vested in the telecom industry.
Unfortunatly, VoIP is not just a lot of "young companies" innovating. It's just another "pure-play Internet" idea meeting the force of reality.
Medical devices controlled by software have stringent FDA approval cycles. Basically you establish the quality of the engineering process, document the heck out of it, and then show clinical effectiveness in random control trials.
What I find fascinating is that legal basis for this is Food and Drug Act -- for the protection of the public as the reason. But the more important side benefit for the approval process is to protect physicians from liability. It's frightfully expensive. And, BTW, physicians *don't have to do this* if they are involved in active oversight when using an experimental device.
Conclusion: Most software products should be viewed as experimental devices which are being used by competent individuals and which therefore all liability is absorbed by the user. Check your EULA and GPL.
Overall this article is regrettably superficial and quite predictable given the history of the quotees, which in the case of Peter Neumann goes back at least 25 years. Not much has changed. Even the examples have the same kind of air about them.
Don't expect progress any time soon. Usually we need some kind of highly visible public disaster (e.g., like the recent nightclub fires) to motivate action.
Why don't we allow for the rights of other fictitous entities? Say superheros?
Public policy can't be formulated except on *facts* and *existence*.
Unfortunately, such creatures GM will have to fight for their own rights, because I'm too busy defending my own.
I love perpetual motion machines.
One of the things I find fascinating when I compare the two at a system capability level is that they are equally capable. It's just that PHP is so much more easy to use, whereas Java is so much more orthodox. Easy to use often wins over orthodox.
In the long run PHP has as much chance to be a Java killer as .NET does. In the great battle for free vs. proprietary software do I really need orthodox?
I think what we are seeing here is a "strategic" stonewalling of the hardware side to try to maintain its "margins" - which are often a consequence of some kind of proprietary software. OpenBSD kind of kills that idea.
I speculate that internally Sun has advanced a kind of "let's have the best security platform in the industry" motion for its hardware. Release Ultrasparc III specs? That's counter strategic (aka - shoot yourself in the foot) especially if its OpenBSD.
So you be McNeally: how are you going to explain to stock analysts your great plan for resurrecting your company when you give away your proprietary advantage?
I'm just a bitter shareholder.
Postmodernism is a license to criticize without being held to the rigorous requirements of critical throught. Self consistency is not one of its strong points, at least by usual standards. Just to illustrate this point, the authors' cite Wittgenstein's Tractatus Logico-Philosphicus, and its famous initial assertion (Die Welt ist alles was der Fall ist. - "The world is all that is the case.") Postmodern critics like to avoid the use of abstraction, tending to rely on facts to establish contradictions. The authors' literal reading of the first assertion is fully consitient with postmodern criticism. Of course the rest of the Tractatus has a lot of abstractions in it, which puts it about as far from postmodern as you can get. And as "everybody" knows the Tractatus is the philosophical manifesto for databases, logic programming, UML, .... (which are about abstractions too.) Hmmmm.
Postmoderism tends to irk those who attempt to read it and apply purely "modernist" notions of criticism. At least it irks me. There is a rather well developed theory of postmodern criticism, which the authors of this paper try to explicate (terms like "antitotalizing" etc), examplified, e.g., in the writings of Jacques Derida and many others. This is usually where the academic starts - by aligning their field of study with the concepts of postmodern criticism. This is a small industry and this paper is of that ilk. The best that can be said about postmodernism, IMHO, is that it's like brainstorming written down on paper. It's usually thought provoking. Postmodernist thinking is like a written form of a stream of conscious -- only less well organized! ;)
As an aside, when someone asks whatever became of all the nominal Marxists in this world? They all became postmodernist! They had to become something - given that their theory and all of its incarnations are failures. Marxism was the great 19th century critique of capitalism; it was successful so long as you didn't mind some nastiness on the road to Utopia. (Turns out, people *did* mind.) For a large portion of the political landscape both here in the US and around the world, the felt need to criticize the capitalist and capitalism has *not* diminished. Postmodern literary criticism fulfills that role nicely.
But these authors do make a point. Why do you need to learn programming if the reality is that you can purchase the answer? Or look it up for free. I think programming is good for the soul, but some might dispute that motive. Or that to even have the software given to you?? What would be the point of learning to program? Best to leave it to the highly productive few who are best able to do it. With the Internet, the answers are all there for the taking. Don't need nearly as much in the way of university faculty as you might have thought.
I sympathize with the authors' point of view because in my day job I profess computer science for a living. After 34 years of programming (hardly any of it in teaching, but with teaching experience separated by over two decades) I can see a pretty substantive material change in attitude.
However, to claim that all of computer science is only about programming -- this is not quite a postmodernist sentiment!
This problem is not one of transport, its one of SQL capabilities. The issue is not how you get there (i.e., ODBC vs. JDBC vs. RogueWave et. al.). The issue is what you want to do once you get there.
Consider MySQL and Postgres vs MS SQL, Oracle and Sybase. MS SQL and Sybase are basically the same. In MySQL and Postgres you don't have stored procedures or nested queries. MySQL support for transactions depends on the version. MS SQL et. al. support all of these things. So, for example, in MySQL, you cant do the following: update (select * from t_1, t_2 where complex condition) as A set A.xxx=where another condition.
I believe the best advice is to build a data abstraction layer for your application (i.e., a base class with virtual member functions for each operation) and to build a subclass for each different database you want to support that's able to exploit all the advantages of each database.
I've had success with this approach. This is the kind flavors and variations issue that C++ (and other OO languages) are good for.
Contrary to the project management theoreticians commenting on this list, you are very lucky to have seen this behavior early. There are worse situations.
Right now you need to make the plan very visible to your manager. It's his/her problem too.
Use your management to sustain accountability for individual commitments of your team peers to the plan. If you can't get that -- leave, you don't have management support. You will need to use shame and threat and fear to get action; because goodness didn't work; your manager has to play the role of the bad guy, because you have another role ...
Help your peers to be a team and be successful. Forget coding. Clearly your part is under control. You can do it in your sleep. Don't try to be a savior. Your project has four extra bodies; be sure you understand why that staffing level was needed.
Make sure you let your management know what you are doing.
You will look like a fool or an ass if you think you can do it all. You will be much more effective if you can make this team perform inspite of its appearant limitations.