"Not using every means to track that stuff would be a dereliction"
Why is it not dereliction to arrest these individuals when you know who they are? If we know who they are, why are we tapping their phones instead of picking them up?
Um, lets remember that in the good 'ol USA, we elect representatives, NOT leaders. We elect people to represent us, NOT to lead us. We elect a president to lead the armed forces. We do NOT elect a president to lead the populace.
Maybe the reason these guys obtain so much power is because they have convinced so many that they are leaders.
"we hold our leaders to greater standards than we hold ourselves". To rephrase, we hold our REPRESENTATIVES to greater standards than we hold ourselves. When I received my DD-214, the president stopped being MY leader.
I thought the president said the wars in Iraq ("Mission Accomplished") and Afganistan (control handed over to new government) are over.
Or, do concepts count for emergency powers? hmmm... war on poverty, war on drugs, war on illiteracy, war on terror
Although you have an interesting argument, the wars are over. Neither the Taliban or Sadam is in charge anymore. As for other presidents, Roosevelt didn't authorize spying on citizens AFTER WWII (he was dead), Johnson didn't authorize spying on citizens AFTER the Vietnam war (he wasn't the president when the war ended). I'm curious, how long should a president have war power AFTER a war is over?
"I don't believe government has a right to video tape. I do believe, though, that anyone else is free to." -- very well said
This is very similar to how I respond about flag burning laws and free speech.
You should be free (as in liberty), from GOVERNMENT persecution, to burn flags as a form of free speech. However, this doesn't protect you from an a**kicking from a given individual.
Note, the article shows that radioactivity (released into the atmosphere) is higher when burning fossil fuels when the fly ash is not trapped. Most modern coal burning plants (I used to work at one) mix crushed limestone with crushed coal to react with the sulfur, to reduce sulphur dioxide emissions. The majority of the particles are trapped, as fly ash. The major (airborn) pollutant is CO2. In most plants the fly ash is shipped to landfills where it is sprayed with water to form a concrete like substance.
Most regions do not permit mixing the ash with concrete as a filler (even though is can make concrete up to 10x's stronger) because of (very valid) concerns of heavy metals leaching out of it. So, this stuff sits in landfills waiting for the liners to fails so that the heavy metals can leach into the water supply.
The radiation hazards from (modern) coal plants are trivial. The health risks from the other by products are huge. Besides, the newest reasearch into fission breeder reactors could have waste byproducts with half-lives in the hundreds of years vs. thousands with the old style fission reactors. In the U.S. about 5% energy is extracted from the fissile materials (6% in Europe), giving us about 70 years worth of known extractable ore. Using the newest technology for breeder reactors, we could get about 90-95% of the energy from the same materials, and generate much lower level waste. We could generate engery for another couple hundred years with the products already mined. The risks of bomb making material are also reduced.
"Rod Johnson"? Sounds like the name of a new adult film star.
decline in pure programming skills
on
Java Is So 90s
·
· Score: 1
Its not that pure programming skills are declining but, the demand for good programmers is so high. The demand is so high that salaries are pushed up. High salaries attract a lot of people who might perform better in other fields. So, we have to wade through thousands of people to find the gems. Programming is a complex task, and the people who do it well can do strange things with their brains. Classes and books can teach people language syntax and data structures but, unfortunately they can't make programmers. The result, we have lots of people just getting by writing spaghetti code until they get promoted to program mgt.
I agree with your fundamental point, that the language chosen should depend upon the objective. However, I strongly disagree with some of your points. C/C++ for really large programs - this gave us wonderful bugfree things like Windows, and Office. The power of the languages break down after a few hundred thousand lines of code as they turn into maintenance nightmares. Data dictionaries anyone? Java hard to use? - This is the first time I've ever seen anybody say that. Java has its issues but, if you think Java is hard to use then C or C++ will be way beyond reach.
Lets really break it down. Loosely typed languages tend to be best for small quick and dirty projects. Strongly typed languages tend to be better for large projects. Speed should just be treated as a requirement. Some things are faster in Java, some are faster in C++. The old law works here: make it work, then make it fast.
Ease of code maintenance will always depend upon the dicipline of the development team, regardless of language. However, strongly typed languages will tend to promote practices of more maintainable code. Loosely typed languages give quicker development in the short term.
When a strongly typed language is used the compiler becomes a powerful tool in the "prevention" of bugs. If you define a method in Java to take an integer, the compiler won't let you give it anything else. If you define a method in C to take a pointer, you can give it a pointer to anything. Perl is so loose about its types that its painful. The larger a program the more this becomes an issue.
Your points about million line Java programs being slow, or about java data structures not working in "big" "professional" systems just shows you might have a bit a learning to do. Some "big" "professional"'s using Java in large applications: RealNetworks - Tomcat/BEA Citibank - Java Web Server (very old version) Bank of America - IBM WebSphere and Sun One United States Navy - IBM Websphere United States Airforce - Tomcat/IBM Websphere Neilson Reasearch - IBM Websphere Fidelity - IBM Websphere Blue Cross Blue Sheild - IBM Websphere
Now these may not all be the best solution in each case but, these are some of the ones I have experience with.
"Which browser is going to be the first to stop supporting HTML?" My question is, which browser will be the first to stop supporting GOPHER? Firefox 1.5 supports the gopher protocol.
If brosers are still supporting the vast, huge quantities of gopher sites, I think it may be a little while before they stop supporting HTML.
This may not be practical for a primary display (resolution is too low). However, we're talking linux here. Pop in a cheap $30 ISA video card and use this as a secondary input. At home, this could be a control panel for MythTV, your music player, Audacity, etc... I know a guy who uses something very similar to control effects for his guitar (which is plugged into the linux box). In the office, this could display navigate email/calendar/etc..., while your primary display contains your work. In either environment, you could use the secondary video touchscreen for video Skype, leaving your primary display free for other tasks.
Admittedly, the article seems to indicate that this is being used as a primary display for a computer installed in a car. This seems like a good purpose for it. Now if I could find a good GPS/Map program for linux...
The poster stated his claim based on experience. This experience holds valid for most web applications (AJAX or not) as anyone who has worked on any large web applications can attest. Creative use of caching has shown time and again the most effective way to reduce server load. (for some reason spitting out a byte array is faster than calling a database and building a document with the results)
I'm curious how "you can use benchmarks to *identify* which parts of the app are the slowest". This could be done by *profiling*, not benchmarking. As for benchmarks, they are effective at measuring the effectiveness of a change. They don't tell you where to make it. I think spending 1/3 of your dev time on benchmarks is more than a bit overkill. These should take very little time and should be based on expected use cases. Developing load tests for very large applications rarely takes more than a week or two.
As for optimization, the general rule is run a standard use case or load (JMeter?) profile optimize the code with the heaviest use (identified by the profiler) repeat
I appears you are right about generalizations being a bad idea. A common generalization is most people in the north east are pretty thick skinned. Your offense at an old joke shows that some people there are actually very sensitive. Hmmm, its also interesting how you attack me more than the issues I raised (ahh, refreshing, lovely name calling, mmm, mmm, good).
God knows I would rather be somewhere else. As for this company, well, I'm not going to defend them. I agree with the opinion of them. When I worked in Seattle, candidates would interview at least 6 people and would only be chosen with a unanimous yes. However, ponder this. The unqualifed person we got spent time working at Bank of America. I've talked to people working at Citibank, State Farm, Blue Cross, Fidelity and other DoD contractors. They are experiencing a similar situation. Thats gotta give some confidence in the bank (sic).
As for my generalization of the job market. Well, I get daily calls for positions in DC, Boston, the triangle in NC, and CT. I would call that a sign of a pretty good job market.
The number of research centers and universities are here, doesn't seem relevant to the issue that companies here are having a hard time finding good people. Your description of your skills and your obvious employment further confirm the point. Now, if you were unemployed and had the same skill set, I'd definitely concede. Also, I was only really talking about software development positions, my experience, and the experience of those I've met. Granted, I've only been here a year. Maybe the shortage of developers is temporary.
Note: I'm speaking from the perspective of a developer experienced on both coasts.
I'm a J2EE dev who moved from Seattle to Florida for family reasons. At first I was a little worried about work since Florida isn't really known for IT. Technologically, it was like going backwards in time about 10 years. Once my resume hit the market, I got non-stop calls from headhunters. Most of the jobs here are for banks, insurance, and DoD. So, now I'm getting double my previous salary, full (better) benefits, and a much lower cost of living. I'm renting a large lake front house for about the same as my previous apartment. But, like all things, there is a down side. Rednecks, everywhere Good luck finding a bookstore (don't these people read?) I used to be the dev with upper-middle talent, now I'm the top talent Mass transit sucks. I used to read while commuting, now that time is lost driving Everything is a long drive
If you are a developer, and you are willing to move east, ask your company for a 20% raise and moving expenses. Also, update your resume and put it on the market. Here is what is happening. Your comapany wants to move you because it will save them money. They are planning on canning you after completion. It won't happen. Good talent is so rare on the east coast that you'll be able to stay comfortably. An example of how hard it is to find good devs here: My company recently brought in a new girl for "front-end" work. She didn't know HTML (not even the basics), she didn't know how to program in "any" language. I sent her to do an online tutorial, and said to just use notepad and the browser. She came back with a problem dragging the file to the browser window. She was trying to drag "notepad" into the browser. This, for $45/hour ?!?! She managed to last a month before getting moved out. I last heard that she's working as a business analyst at an insurance company.
Being employed on the east coast is not an issue. Whether or not you want to live and work here is. This is just the opinion of a developer. IT janitors, whoops, I mean system admins, program managers, etc... YMMV
"The US government is not completely dumb you know (regardless of its president)."
You've obviously never been in the military. I've served my time in the army and am currently developing software for the government. You give them a lot of credit. Granted there are some smart people in governemnt employment but, unfortunately, they are few and far between and their voices are drowned by the majority.
In many ways, this is actually a good thing. If the government had any kind of efficiency, we, the citizens, would be screwed. The inefficiency and beuracracy actually prevent the government from causing too much damage. Hooraay for red tape
Over complicated. Don't put anything in the passport, just have a small radio transmitter in your pocket. Put it in a toy cellphone if you like. You'll be pretty effective since its actively transmitting. OTOH, carrying a fake passport is kinda dumb. Since you will be breaking a number of laws in the process. About a million people enter the US every year with no passport. So, why bother faking it.
Excellent point. furthermore, isn't there something wrong with this picture: We want to make it harder to track you with a system whose purpose is to track you. We want to make it harder to identify you while making it easier to identify you.
A passport exists to identify and track you. The RFID system is being implemented to make this "easier". So, now we'll sheild the RFID chip and print a key, to make it harder to do the thing that is being implemented to make it easy.
Why don't we just get rid of the passport and do biometric analysis with a sperm sample. Then getting through customs could be an enjoyable experience.
When I was a kid, I used a clothes pin to keep a bag of chips closed. I was not upset to the the patented "Chip Clip" at the super market. They went through the effort of patenting and building a business. I didn't. They owe me nothing.
The problem with this isssue is the abuse of the patent system. Patents are supposed to give the small guy a chance to start a business in the face of competing big business. If someone "patents" something without even trying to build a business or product its more like squatting. I really don't see much difference between this and cyber-squatting other than it is more insiduous.
Just find a new job. Very politely give your two weeks notice, don't mention the project in any form. Delete the source code. If questioned just say, you didn't like the direction of the code and deleted it. Since you are leaving, you will not be working on the project anymore.
Its just a program. Big freakin deal. Any developer with any kind of experience has thousands of lines of their own code that they no longer use. No developer keeps around code written early in their career. Its just too damn embarassing to look at.
Forget the project, forget the boss. Get another job. Lets be honest, the first program written by customer service reps with no experience building large scalable apps isn't likely to be all that great. Suck it up as a learning experience and move on.
If they want to be developers they better get used to throwing away code.
We create a "secure" web browser but, its gonna cost $10K per copy. This will cover the cost of developemnet, security auditing, extra QA, and the dev cycles that go along with it. Since, the OS can't be trusted to run the browser, it will only work on a dedicated browsing computer with no operating system. Since other peoples code poses a risk, it will not run javascript, java, flash, or any kind of plugin. Who would buy this?
If developers are carrying malpractice insurance, then the insurance companies are going to have a lot to say about how development is done, and *if* it should be done. Your boss hands you a project specification, you send a copy to your insurance co. You then tell your boss that you can't work on his project because you won't be covered.
Developers are going to have to charge a lot more for their services. Both for the personal risk involved and to cover the cost of insurance.
Programs can be made "more" secure and have "fewer" bugs but, its going to take more time. Time=money. Look how eveybody is whining that Microsoft is taking too long for the next version of windows. Maybe if they want it to be *secure and bug free* they'll tell MS not to rush; to take a few extra years to be sure about the product; and they'll pay more for it.
Lets not forget that nobody has really figured how to manage software development while the demands of software keep going up.
Microsoft (in days of old) was criticized for raiding the top developers from other companies and universities. So with the top developers in the world we got Windows, Office and IE. (I don't think there is a need to say what people think of the quality here.) Google, now is the one raiding the top coders yet, they are still producing some buggy code.
If the best in the business can't produce secure bug-free software, how is anybody else? Granted, we should all strive to make the most secure and bug-free code possible. But, I really don't think it will be a common practice until the management of the process is figured out. We've seen waterfall fail, over and over and over and over.... RUP, while an improvement, still falls short. Agile (XP, etc...) tries to address some realities of development but, it still doesn't really manage it.
Still, we do see some really good software pop onto the scene every once and a while. Even this is a symptom. The same groups who produce these gems often fail to repeat the process on other projects.
"Not using every means to track that stuff would be a dereliction"
Why is it not dereliction to arrest these individuals when you know who they are? If we know who they are, why are we tapping their phones instead of picking them up?
Um, lets remember that in the good 'ol USA, we elect representatives, NOT leaders.
We elect people to represent us, NOT to lead us. We elect a president to lead the armed forces. We do NOT elect a president to lead the populace.
Maybe the reason these guys obtain so much power is because they have convinced so many that they are leaders.
"we hold our leaders to greater standards than we hold ourselves". To rephrase, we hold our REPRESENTATIVES to greater standards than we hold ourselves. When I received my DD-214, the president stopped being MY leader.
Don't you trust the President?
Didn't the President of the United States confirm his statements publicly?
Lets see, he told the papers, the president confirmed. What's the argument again?
I thought the president said the wars in Iraq ("Mission Accomplished") and Afganistan (control handed over to new government) are over.
Or, do concepts count for emergency powers?
hmmm... war on poverty, war on drugs, war on illiteracy, war on terror
Although you have an interesting argument, the wars are over.
Neither the Taliban or Sadam is in charge anymore. As for other presidents, Roosevelt didn't authorize spying on citizens AFTER WWII (he was dead), Johnson didn't authorize spying on citizens AFTER the Vietnam war (he wasn't the president when the war ended).
I'm curious, how long should a president have war power AFTER a war is over?
"I don't believe government has a right to video tape. I do believe, though, that anyone else is free to." -- very well said
This is very similar to how I respond about flag burning laws and free speech.
You should be free (as in liberty), from GOVERNMENT persecution, to burn flags as a form of free speech. However, this doesn't protect you from an a**kicking from a given individual.
Note, the article shows that radioactivity (released into the atmosphere) is higher when burning fossil fuels when the fly ash is not trapped. Most modern coal burning plants (I used to work at one) mix crushed limestone with crushed coal to react with the sulfur, to reduce sulphur dioxide emissions. The majority of the particles are trapped, as fly ash. The major (airborn) pollutant is CO2. In most plants the fly ash is shipped to landfills where it is sprayed with water to form a concrete like substance.
/ 17/192235) ?
Most regions do not permit mixing the ash with concrete as a filler (even though is can make concrete up to 10x's stronger) because of (very valid) concerns of heavy metals leaching out of it. So, this stuff sits in landfills waiting for the liners to fails so that the heavy metals can leach into the water supply.
The radiation hazards from (modern) coal plants are trivial. The health risks from the other by products are huge. Besides, the newest reasearch into fission breeder reactors could have waste byproducts with half-lives in the hundreds of years vs. thousands with the old style fission reactors.
In the U.S. about 5% energy is extracted from the fissile materials (6% in Europe), giving us about 70 years worth of known extractable ore. Using the newest technology for breeder reactors, we could get about 90-95% of the energy from the same materials, and generate much lower level waste. We could generate engery for another couple hundred years with the products already mined. The risks of bomb making material are also reduced.
As for dirty bombs, they could be made now (with readily available supplies) anyway. Anybody remember this (http://science.slashdot.org/article.pl?sid=02/06
"Rod Johnson"? Sounds like the name of a new adult film star.
Its not that pure programming skills are declining but, the demand for good programmers is so high.
The demand is so high that salaries are pushed up. High salaries attract a lot of people who might perform better in other fields. So, we have to wade through thousands of people to find the gems.
Programming is a complex task, and the people who do it well can do strange things with their brains.
Classes and books can teach people language syntax and data structures but, unfortunately they can't make programmers. The result, we have lots of people just getting by writing spaghetti code until they get promoted to program mgt.
I agree with your fundamental point, that the language chosen should depend upon the objective. However, I strongly disagree with some of your points.
C/C++ for really large programs - this gave us wonderful bugfree things like Windows, and Office. The power of the languages break down after a few hundred thousand lines of code as they turn into maintenance nightmares. Data dictionaries anyone?
Java hard to use? - This is the first time I've ever seen anybody say that. Java has its issues but, if you think Java is hard to use then C or C++ will be way beyond reach.
Lets really break it down. Loosely typed languages tend to be best for small quick and dirty projects. Strongly typed languages tend to be better for large projects. Speed should just be treated as a requirement. Some things are faster in Java, some are faster in C++. The old law works here: make it work, then make it fast.
Ease of code maintenance will always depend upon the dicipline of the development team, regardless of language. However, strongly typed languages will tend to promote practices of more maintainable code. Loosely typed languages give quicker development in the short term.
When a strongly typed language is used the compiler becomes a powerful tool in the "prevention" of bugs. If you define a method in Java to take an integer, the compiler won't let you give it anything else. If you define a method in C to take a pointer, you can give it a pointer to anything. Perl is so loose about its types that its painful. The larger a program the more this becomes an issue.
Your points about million line Java programs being slow, or about java data structures not working in "big" "professional" systems just shows you might have a bit a learning to do.
Some "big" "professional"'s using Java in large applications:
RealNetworks - Tomcat/BEA
Citibank - Java Web Server (very old version)
Bank of America - IBM WebSphere and Sun One
United States Navy - IBM Websphere
United States Airforce - Tomcat/IBM Websphere
Neilson Reasearch - IBM Websphere
Fidelity - IBM Websphere
Blue Cross Blue Sheild - IBM Websphere
Now these may not all be the best solution in each case but, these are some of the ones I have experience with.
"Which browser is going to be the first to stop supporting HTML?"
My question is, which browser will be the first to stop supporting GOPHER?
Firefox 1.5 supports the gopher protocol.
If brosers are still supporting the vast, huge quantities of gopher sites, I think it may be a little while before they stop supporting HTML.
This may not be practical for a primary display (resolution is too low). However, we're talking linux here. Pop in a cheap $30 ISA video card and use this as a secondary input.
At home, this could be a control panel for MythTV, your music player, Audacity, etc... I know a guy who uses something very similar to control effects for his guitar (which is plugged into the linux box).
In the office, this could display navigate email/calendar/etc..., while your primary display contains your work.
In either environment, you could use the secondary video touchscreen for video Skype, leaving your primary display free for other tasks.
Admittedly, the article seems to indicate that this is being used as a primary display for a computer installed in a car. This seems like a good purpose for it. Now if I could find a good GPS/Map program for linux...
The poster stated his claim based on experience.
This experience holds valid for most web applications (AJAX or not) as anyone who has worked on any large web applications can attest. Creative use of caching has shown time and again the most effective way to reduce server load. (for some reason spitting out a byte array is faster than calling a database and building a document with the results)
I'm curious how "you can use benchmarks to *identify* which parts of the app are the slowest". This could be done by *profiling*, not benchmarking. As for benchmarks, they are effective at measuring the effectiveness of a change. They don't tell you where to make it.
I think spending 1/3 of your dev time on benchmarks is more than a bit overkill. These should take very little time and should be based on expected use cases. Developing load tests for very large applications rarely takes more than a week or two.
As for optimization, the general rule is
run a standard use case or load (JMeter?)
profile
optimize the code with the heaviest use (identified by the profiler)
repeat
I think a better option would be to carry around a tin of ethanol.
dual purpose
power up yourself AND your gadgets
I get daily calls from headhunters in those areas. This would seem to indicate that the job market is pretty good there.
I appears you are right about generalizations being a bad idea.
A common generalization is most people in the north east are pretty thick skinned. Your offense at an old joke shows that some people there are actually very sensitive.
Hmmm, its also interesting how you attack me more than the issues I raised (ahh, refreshing, lovely name calling, mmm, mmm, good).
God knows I would rather be somewhere else.
As for this company, well, I'm not going to defend them. I agree with the opinion of them. When I worked in Seattle, candidates would interview at least 6 people and would only be chosen with a unanimous yes. However, ponder this. The unqualifed person we got spent time working at Bank of America. I've talked to people working at Citibank, State Farm, Blue Cross, Fidelity and other DoD contractors. They are experiencing a similar situation. Thats gotta give some confidence in the bank (sic).
As for my generalization of the job market. Well, I get daily calls for positions in DC, Boston, the triangle in NC, and CT. I would call that a sign of a pretty good job market.
The number of research centers and universities are here, doesn't seem relevant to the issue that companies here are having a hard time finding good people. Your description of your skills and your obvious employment further confirm the point. Now, if you were unemployed and had the same skill set, I'd definitely concede.
Also, I was only really talking about software development positions, my experience, and the experience of those I've met. Granted, I've only been here a year. Maybe the shortage of developers is temporary.
Note: I'm speaking from the perspective of a developer experienced on both coasts.
I'm a J2EE dev who moved from Seattle to Florida for family reasons.
At first I was a little worried about work since Florida isn't really known for IT. Technologically, it was like going backwards in time about 10 years.
Once my resume hit the market, I got non-stop calls from headhunters. Most of the jobs here are for banks, insurance, and DoD. So, now I'm getting double my previous salary, full (better) benefits, and a much lower cost of living. I'm renting a large lake front house for about the same as my previous apartment.
But, like all things, there is a down side.
Rednecks, everywhere
Good luck finding a bookstore (don't these people read?)
I used to be the dev with upper-middle talent, now I'm the top talent
Mass transit sucks. I used to read while commuting, now that time is lost driving
Everything is a long drive
If you are a developer, and you are willing to move east, ask your company for a 20% raise and moving expenses. Also, update your resume and put it on the market.
Here is what is happening. Your comapany wants to move you because it will save them money. They are planning on canning you after completion. It won't happen. Good talent is so rare on the east coast that you'll be able to stay comfortably.
An example of how hard it is to find good devs here:
My company recently brought in a new girl for "front-end" work. She didn't know HTML (not even the basics), she didn't know how to program in "any" language. I sent her to do an online tutorial, and said to just use notepad and the browser. She came back with a problem dragging the file to the browser window. She was trying to drag "notepad" into the browser. This, for $45/hour ?!?! She managed to last a month before getting moved out. I last heard that she's working as a business analyst at an insurance company.
Being employed on the east coast is not an issue. Whether or not you want to live and work here is.
This is just the opinion of a developer.
IT janitors, whoops, I mean system admins, program managers, etc... YMMV
"The US government is not completely dumb you know (regardless of its president)."
You've obviously never been in the military.
I've served my time in the army and am currently developing software for the government. You give them a lot of credit.
Granted there are some smart people in governemnt employment but, unfortunately, they are few and far between and their voices are drowned by the majority.
In many ways, this is actually a good thing. If the government had any kind of efficiency, we, the citizens, would be screwed. The inefficiency and beuracracy actually prevent the government from causing too much damage.
Hooraay for red tape
Over complicated.
Don't put anything in the passport, just have a small radio transmitter in your pocket. Put it in a toy cellphone if you like. You'll be pretty effective since its actively transmitting.
OTOH, carrying a fake passport is kinda dumb. Since you will be breaking a number of laws in the process. About a million people enter the US every year with no passport. So, why bother faking it.
Exactly, a good laser printer cost a couple hundred.
Components to fake out an RFID reader are about $20 at radio shack.
Of course, one laserprinter can make lots of bar codes. I wonder if passport forgery is really that big an issue.
Excellent point.
furthermore, isn't there something wrong with this picture:
We want to make it harder to track you with a system whose purpose is to track you. We want to make it harder to identify you while making it easier to identify you.
A passport exists to identify and track you. The RFID system is being implemented to make this "easier". So, now we'll sheild the RFID chip and print a key, to make it harder to do the thing that is being implemented to make it easy.
Why don't we just get rid of the passport and do biometric analysis with a sperm sample. Then getting through customs could be an enjoyable experience.
Simple test:
* move to the south
* spray for roaches
* wait a month
You now have roaches resistant to the spray used.
Evolution in action.
Antoher test:
* get lots of chickens
* infect them with bird flu
* handle the chickens daily
If evolution is false, then you will not get infected.
Simple verifiable/falsifiable tests anyone can perform.
Why is there a debate again?
When I was a kid, I used a clothes pin to keep a bag of chips closed.
I was not upset to the the patented "Chip Clip" at the super market. They went through the effort of patenting and building a business. I didn't. They owe me nothing.
The problem with this isssue is the abuse of the patent system.
Patents are supposed to give the small guy a chance to start a business in the face of competing big business. If someone "patents" something without even trying to build a business or product its more like squatting. I really don't see much difference between this and cyber-squatting other than it is more insiduous.
Just find a new job. Very politely give your two weeks notice, don't mention the project in any form.
Delete the source code. If questioned just say, you didn't like the direction of the code and deleted it. Since you are leaving, you will not be working on the project anymore.
Its just a program. Big freakin deal. Any developer with any kind of experience has thousands of lines of their own code that they no longer use. No developer keeps around code written early in their career. Its just too damn embarassing to look at.
Forget the project, forget the boss. Get another job.
Lets be honest, the first program written by customer service reps with no experience building large scalable apps isn't likely to be all that great. Suck it up as a learning experience and move on.
If they want to be developers they better get used to throwing away code.
And who is going to pay for this?
We create a "secure" web browser but, its gonna cost $10K per copy. This will cover the cost of developemnet, security auditing, extra QA, and the dev cycles that go along with it. Since, the OS can't be trusted to run the browser, it will only work on a dedicated browsing computer with no operating system. Since other peoples code poses a risk, it will not run javascript, java, flash, or any kind of plugin.
Who would buy this?
If developers are carrying malpractice insurance, then the insurance companies are going to have a lot to say about how development is done, and *if* it should be done. Your boss hands you a project specification, you send a copy to your insurance co. You then tell your boss that you can't work on his project because you won't be covered.
Developers are going to have to charge a lot more for their services. Both for the personal risk involved and to cover the cost of insurance.
Programs can be made "more" secure and have "fewer" bugs but, its going to take more time. Time=money. Look how eveybody is whining that Microsoft is taking too long for the next version of windows. Maybe if they want it to be *secure and bug free* they'll tell MS not to rush; to take a few extra years to be sure about the product; and they'll pay more for it.
Lets not forget that nobody has really figured how to manage software development while the demands of software keep going up.
....
Microsoft (in days of old) was criticized for raiding the top developers from other companies and universities. So with the top developers in the world we got Windows, Office and IE. (I don't think there is a need to say what people think of the quality here.) Google, now is the one raiding the top coders yet, they are still producing some buggy code.
If the best in the business can't produce secure bug-free software, how is anybody else? Granted, we should all strive to make the most secure and bug-free code possible. But, I really don't think it will be a common practice until the management of the process is figured out.
We've seen waterfall fail, over and over and over and over
RUP, while an improvement, still falls short.
Agile (XP, etc...) tries to address some realities of development but, it still doesn't really manage it.
Still, we do see some really good software pop onto the scene every once and a while. Even this is a symptom. The same groups who produce these gems often fail to repeat the process on other projects.