Design patterns are part of a broader trend to slavish adherence to "Object-Oriented" technologies whose value and philosophy is overrated.
Fine, you are entitled to your opinion after all, but be aware that those advocating a complete scrapping of the object oriented paradigm, which you seem to be advocating, are in the minority.
Since 1994, garbage collection has become commonplace, which is good.
It has its pluses and minuses IMHO.
We've gotten languages better than C for general programming, which is at best faint praise, given that C is a language with many shortcomings, that was applied way beyond where it's actually good, back when computers weren't as powerful as they now are.
That is sort of an apples and oranges comparison. You understand that the original purpose of the C programming language was the construction of operating systems, namely the research project which became UNIX at the original Bell Labs, right? I haven't used C for some time now, but I would probably not consider using it again unless there was a very good project based reason to do so. Another reason that C tends to hang around is that C compilers have been written for just about every modern processor assembler language out there which is one reason, among others, that you do not see many operating system kernels written in languages other than C. I would argue that C was tremendously successful at accomplishing what its designers set out for it to do. What people have used it for subsequently does not in any way diminish the work of the original designers. In fact, IMHO it enhances it substantially. Many of the most popular modern programming languages owes a debt to C, it blazed the trail for just about everything that came afterwards (although C itself borrowed some concepts from previous languages, notably the ALGOL family of languages).
But there are a number of things that simply haven't happened, because of the reign of "Object-Oriented" programming:
I shall attempt to address your points in turn:
Paradigm improvements in relational database technology. We've had plenty of incremental improvements, but we're still largely stuck with SQL and ORM (the latter of which is a "solution" for problems caused by slavish application of OOP). (LINQ in.NET is certainly addressing this, but I can't really say much intelligent about it.)
Personally I don't see anything wrong with building adapters, which is really what an ORM is. You see adapters all of the time in other engineering solutions (your laptop battery power adapter for example). It is neither possible, nor even desirable IMHO, for a single model, format, or standard to be used across everything just to avoid having to build adapters. Adapters allow flexibility whereas what you are proposing will lock everyone into a "standards" battle that is essentially un-winnable because people will not agree or perhaps they cannot agree (there are no silver bullet solutions that solve all problems after all). The same is true whether we are talking about wall electrical current (i.e. 110v at 60hz in the United States but 220v at 50hz in Europe) or software programming.
As for LINQ I personally do not plan to use it in my projects mostly because it makes use of classes dynamically generated at runtime upon which it is not possible to make use of declarative programming with attributes. I also do not like the idea of mixing my business logic with my data access in partial classes. I understand why LINQ is being introduced (i.e. not every project should use the heavy duty solution regardless of size), but its use could be problematic. Perhaps I will change my opinion once I try it out in a sample application which does some real world task, but I doubt it.
Advanced and commercially feasible functional programming environments and technologies.
So what? The same can be said for object oriented programming environments
The fact is that programming by and large has gotten lazy, shiftless and sloppy over time and not any better or faster.
Nothing could be further from the truth, if anything the practice of programming has improved dramatically over the years and especially so in the last fourteen (14) years starting with the publication of the Design Patterns book in 1994 and continuing on through the development of better languages to support these methodologies such as Java, Python, and Delphi and really culminating thus far IMHO in the development of the C# programming language and the.NET Framework (which owes a debt to Java which owes a debt to C++ and so on back down the chain). If you haven't done much programming, particularly in the last five years then perhaps it is time for a second look, the state of the art in programming has definitely accelerated in recent years and it is heading in the right direction.
They really did rely on processing and memory architectures getting faster to overcome their coding bottlenecks.
Excuse me, but that has not been the case in my experience. There have always been poor implementations and even poor programmers, but that doesn't mean that the entire system was broken. In fact, the really poor algorithms and implementations tend to remain poor no matter how much processing power or memory you throw at them which is why good programming is orders of magnitude more important than faster hardware or hand optimization of the compiler output (which BTW hasn't been necessary for many years now thanks to the tremendous improvements in compiler construction). If your implementation sucked then no amount of hardware, within reason, was going to save you from a competitor who could just as well use the same hardware and still beat you with a more efficient program.
There once was time when debugging was part of your job. Now; someone else does that and at most, the better coders do some unit testing to ensure their code snippet does what it is supposed to.
I don't know about you, but I use the debugger almost every day and every other developer that I have met also uses the debugger extensively. The debugger and debug ability is really not an issue with any halfway decent programmer. I would say that formal unit and integration testing are somewhat less common in my experience, but there are tools and frameworks (open source and good quality) for those tasks as well.
There generally isn't any "standard" with regard to processes except in some houses that follow *recommended coding guidelines* but these are few and far between.
It may surprise you to learn that other engineering disciplines, especially when one takes a more international perspective on the issue, do not widely agree upon "standards" either or even if they do there are always dissenters. The software industry used to be notoriously bad on this count but again things have improved dramatically on this issue, especially in the last decade or so.
Old school coders had a process in mind to fit a project as a whole and could see the end running program.
Which was really an inferior way to approach the problem because it resulted in lots of cut and paste duplication of boilerplate code blocks across multiple projects with only coincidental variations. Did you ever have the nagging feeling, after writing the same subtle variation of some code block for the nth time, that maybe you could abstract that part of the problem out? This was not generally possible in the days before object oriented programing and design, but now that it is I don't know anyone who would want to go back to the old functional batch style programming days.
Many times now, you are to code an algorithm without any regard or concept as to how it might be used.
In fact this is exactly what you want to do. Abstraction is your friend. Why
Well, so much for equal justice under the civil law (I guess that only applies to criminal cases and even there money makes some people more equal than others). Isn't this precisely the sort of abuse that class action was designed to prevent? Perhaps some enteprising lawyers will find a way to collect from the RIAA on behalf of this class of defendants, well we can hope anyway. Thank you NewYorkCountryLawyer for answering my question.
How is it that the RIAA is always allowed to withdraw from a case, in order to avoid setting a disadvantageous precedent, without consequences? Does the casino let you take your chips of the table in the middle of the game because the hand is going badly for you? You can fold your hand, but you cannot withdraw without consequences (i.e. loosing your chips). The difference here is that the accused is forced to play the legal game by the accuser (i.e. the RIAA) and so there should be no privilege for the accuser to withdraw without consequences. Perhaps, for the benefit us laypeople, you can explain this one for us. Thank you.
for these reasons, among others, intelligence agencies and other adversaries usually try and attack the key management instead of brute forcing the algorithm: they bug your keyboard while you don't know that you are under surveillance. In fact, there is at least one case, involving a mob boss and PGP, where a certain three letter agency did exactly that to recover the passphrase. The security is only as strong as the weakest link in the chain after all and if your location is not secure then the strongest crypto in the world will not stand up to a determined attacker willing to try alternative means.
The progress is fairly slow in part because this is considered low priority research since there simply isn't much firm demand for faster air-breathing vehicles.
That was made abundantly clear by the commercial failure of the Concorde by the beginning of the 21st century (the last flight was in 2003, but it would have failed much sooner if not for supplemental financial support by the French and British governments). There is simply not enough demand, at the high ticket prices necessitated by exorbitant fuel and maintenance costs, to justify the service. There was also the issue of sonic booms limiting supersonic flight to non-populated areas (i.e. over the oceans) which further limits the number of useful routes that can be flown by these types of planes. It may be the case that technology has lowered these costs somewhat in the years following the cancellation of Concorde service, but the costs of regular airline service are influenced by many of the same factors and will thus always be in competition with super sonic transport (SST) service.
expecially ones that burn petrochemicals and therefore create more pollution than slower, more mature, and more efficient designs
Nobody would say that the Concorde was an environmentally friendly aircraft, it was dirty as heck, but the operators didn't really care because there were little or no pollution regulations over international territory or even in national territory at that time and even if there were who would enforce them? The supporting governments were supporters of the program as well so even if there were regulations the Concorde probably had waivers. This was a case of negative externality but it didn't cost the airlines (British Airways and AirFrance) any more simply because the Concorde was a pollution source.
however the research continues in the face of the harsh fact that speed is expensive.
Mostly as part of basic or military research funded by the government, not private enterprise.
Surely they would have built a limiter into the throttle so that the pilot could not willfully increase the engine thrust to the point where the aircraft would break up?
It seems to me that unless they need or want whole disk encryption of the boot partition, which still doesn't answer the unencrypted backup tape question, that TrueCrypt would have been perfect for them.
namely, that people just don't want to trust the market when it comes to eating versus starving and happily pay for supply security.
The people who argue that a good or service x or y is too important to leave up to the market strike me as being a bit off in their reasoning. For my own part, I do believe that government has a proper role to play in our society, but that does not mean that the government should be directly producing or even subsidizing the production of particular goods and services in preference to others. Governments should limit themselves to national defense, protecting people and their property from coercion (i.e. enforcing some limited set of laws, I say limited because we have far too many unnecessary laws right now), and ensuring the third parties are compensated for costs imposed upon them by other third parties (i.e. the redress of what economists call Negative Externalities).
the other is geopolitical. Even more than oil or manufactured goods, when you start importing your food you export your ability to bargain aggressively with the countries that you depend on to eat.
This concern is unfounded and the reason can be found in any economics textbook in the chapter on Trade. It is almost never the case, and certainly not with food, that one country would cease all local production and import their entire supply from somewhere else for the following reason: Trade in goods and services increases the amount of consumption possible by all parties, even though some countries have a comparative or even an absolute advantage in producing a particular good or service. For example even if Brazil has an absolute advantage in producing sugar cane as compared to the United States, it is still beneficial for the United States to produce and sell sugar, even to the Brazilians. The argument for this is rather complex and counter intuitive (economics is interesting in that regard sometimes), but basically it has to do with diminishing returns on additional investments in producing more of a good or service, even one that you have an absolute advantage in producing and the size of world markets (especially relevant when considering commodity food stuffs).
cut off a country's food long enough to empty out what's left in the distribution pipeline (which is very short for some staples, compared to manufactured goods with a long shelf life) and things can get very ugly. In the average house I suspect you'd run out of things to eat long before you'd run out of things to burn to keep from freezing.
Assuming for the moment that we are not discussing a city under military siege here (i.e. St.Petersburg in WWII) how would a country become cut off from staple commodities like food short of a natural disaster or military action? If one country cuts off supply then other sellers will happily step in to fill the gap (at the expense of the boycotting producer). Why do you suppose that the Arabs ended their oil embargo during the 1970s in rather short order? Was it because they suddenly changed their minds about the American people? Certainly not. They ended the embargo because the Europeans and others had no problem turning around and reselling the oil to the United States. The net result was that the Arabs received lower prices for their oil, the Americans paid higher prices, and the Europeans and other middlemen pocketed the difference. Markets work to resolve these shortages in very short order unless the area in question has been geographically cut off (i.e. natural disaster) or has been cut off by military force (i.e. the city under siege).
We've seen the panic Russia caused when it toyed with the idea of using its natural gas supplies to Europe for political ends
Again, the Arabs already tried that and found that they didn't like the results. All they were accomplishing was the enrichment of the middlemen.
Yes, most of us do not disagree completely with notion of copyright as a concept, but rather the particularly onerous and unbalanced implementation which has emerged in the first world in general and the United States in particular from about 1975 onward. Copyright is supposed to strike a balance between producers and consumers but how is it balanced to say that all of the works copyrighted in a single human lifetime will not be enjoyed by that same person in the public domain in his lifetime? In fact the balance has tilted so far in favor of the copyright holders that people in general, and college students in particular, are in open rebellion against a system which they perceive is no longer fair. They choose to act outside they system because the laws are so broken and the deck so stacked against them with regard to having those laws changed.
It really ought to be ended entirely. Why should farmers get a special subsidy when other Americans don't? As a student of economics I am always very suspsicious of anyone arguing in favor of a special legal protection or subsidy for their industry. I do not receive such considerations in my chosen profession so why should anyone else? Why is farming a special case and please don't tell me that nobody would grow food here in the United States if there were no subsidy. Like all other tarifs, quotas, and subsidies our farm policies in the United States hurt far more people, including poor Americans, than they help. They are a terribly inefficient way to help farmers, a tremendously regressive tax on the poor, and an very wasteful use of public resources.
And please don't think that I am just singling out farmers alone for special attention. The oil and gas subsidies, the war spending, and the entitlements programs (social security and medicare to name the two big ones) are all part of an almost inumerable number of wasteful programs undertaken by our government.
For those of you who are interested in a more detailed anyalysis of the harm caused by farm subsidies I would refer you the following article
If the first world countries *really* wanted to help the poor people of the world then they would end their generous farm subsidies and submit corporate agribusiness and wealthy first world farmers (the few who are left anyway...the mythical family farmer is largely gone in the United States today) to the discipline of the marketplace. The heavy first world farm subsidies are massively distoring and wasteful from an economic standpoint and must, as a matter of principle, be ended. In fact, it is this issue of farm subsidies which has caused the collapse of trade talks in the WTO for each of the last several rounds. Unfortunately, the wealthy first world farmers (particularly in France) and their agribusiness counterparts lobby hard politically to protect their subisidies and form a very vocal minority special interest in the whole affair (farm subsidies are the third rail for their elected officials...untouchable unless it is to increase them). It has been said that it is difficult to get a man to understand something when his livelihood depends upon him not understanding it and that is turning out to be very true indeed to the great detriment of the third world poor.
if you have 1,000,000,000+ people of your population rising against you, you'll be running for the exit while your head is still upon your shoulders.
Don't be so sure, it is all a matter of perspective. If what you say is true then why are the old men of the Chinese politburo and even worse, Kim Jong Il of North Korea, still in power after decades of people not liking them (even within their own countries where they are to afraid to say anything publicly)? If one is willing, as a dictatorial ruler, to machine gun people in the streets for rising up against the government then one need only maintain a small elite around oneself (i.e. the army) to exercise a pretty good degree of control. Americans and Europeans forget that outside of the first world there is largely not a great tradition of personal freedom or self determination, those were ideas that came out of western philosophy and the enlightenment, not some oriental despotism. Thus, there are a lot of people in this world who would rather be alive than free and particularly so when things "aren't that bad" as they are in China right now (North Korea still uses more hard power to keep the populace in line). Combine that with all of the distractions of modern life and who in China would want to stand in front of a firing line for the chance that their children might be free? Probably not very many.
The ISPs will have to get equipment that can tell the difference between encrypted BitTorrent traffic & all other encrypted and non-encrypted traffic.
Which is essentially an impossible problem with modern encryption algorithms, salting, and hashing of data in packets and other security techniques. In much the same way that you cannot judge a book by its cover neither can you decide a packet by its header and that is the beauty of the generic nature of network stacks and especially with encryption, data is data is data. The Internet is generic by design and packet level payload scanning was not a consideration when these protocols were first designed because of this notion of abstract layering of network architectures. Unless the MPAA is going to lobby to make the Internet as it exists now illegal and force a complete redesign under their control this is not going to change. Of course, that would never happen anyway, they might as well spit into the ocean for all the good their lobbying on that issue would do.
I have said it before, but I will say it again: A technology arms race between filtering / packet shaping and encryption / obfuscation will be won hands down by encryption and obfuscation. The MPAA is only hastening their own defeat by pressing the filtering / packet shaping "solution" to what is essentially a social and economic problem.
The problem with the argument of Mr Glickman, ignoring for a moment the fact that it most certainly does NOT come from a disinterested source (i.e. Mr Glickman is the paid hired gun of the MPAA, an organization which has a clear financial interest in squeezing as much power out of copyright as they possibly can, right and wrong be damned), is that it does not take into account the essentially adversarial nature of copyright and the economics driving the piracy of intellectual products be they movies, music, software or indeed any other reproducible and transmittable works.
The false assumption underlying the position of the MPAA, Mr Glickman, and many other copyright holders at large is this (from TFA): that technology that can be used to halt film piracy. And they (the copyright holders) expect ISPs to implement it.
However, as the author so aptly pointed out, what incentive do the ISPs have to do this other than the coercive threat of legal action (which invariably leads to an adversarial situation and grudging compliance)? It costs them money, their customers (i.e. the people paying the ISP for service) by and large don't care about filtering EXCEPT when their service is degraded (in the opinion of the customer and the customer is the one paying the bills which butter the bread of the ISP) and the customers want someone or something to blame. So how does it help the ISP to increase their costs AND piss of their customers? It seems to me that the MPAA and Glickman are all stick and no carrot here with their lawsuit threats.
People are turning to pirated works because they either (a) cannot afford to pay full price and probably live outside the United States, in which case they don't really give a s*** about American Copyright Laws OR (b) they want to pay a reasonable price for their copyrighted goods BUT they don't like all of the Digital Restrictions Management (i.e. playsforsure but only on WindowsCE devices...oops) bullcrap that comes with going legit so they get their fix someplace else.
Finally, if packet filtering ever becomes widespread then encryption will surely follow as an increasingly common feature and then what? The technology arms race is not going to solve what is essentially a social and economic problem with regard to piracy. In fact, I would bet upon encryption winning out in the arms race against packet filtering so it is not terribly wise for the copyright holders to press that issue anyway.
or safer for VeriSign, Thawte, and other certificate vendors who are fortunate enough to be included by default with Windows anyway. Seriously though, I think that the current warning system is just fine. I can decide for myself when I care about the warning and when I don't thank you very much. There are plenty of sites which either use https needlessly or just aren't that important and for the few that are I will heed the warning and close the tab. There is nothing more annoying than software which gets in the users face, assuming that it is smarter than the user, and refuses to give up control. At the very least make the "do not allow bypass of certificate warnings" feature optional so that those of us in the know can go into about:config and turn off the hand holding.
So just don't monitor anything. Who would want to assume this massive liability of monitoring in exchange for nothing other than being a "good citizen"? This is yet another example of a law which drives citizens to take an out of sight out of mind approach to their lives and makes the very criminal activity that it is attempting to control more likely than it otherwise would have been. Nobody wants to be the messenger when the messenger makes a convenient scapegoat when the "real" bad guys cannot be found (and you know that there will be massive pressure for the authorities to bust someone and who do you think will be left without a chair when the music stops? Surely not the "good citizen"...yeah right).
Ever heard of "shoot the messenger"? Would you trust the government not to turn on you when they couldn't find the "real" guilty party? There will be strong pressure to prosecute somebody once a prosecutor gets their hands on it and you are the owner of the network and you admitted that illegal content was going over your network didn't you? No, it is better to keep your mouth shut and avoid a major life changing fiasco on a politically charged issue then to be a good citizen. What a hassle, who needs it?
It is unenforceable because you are creating an incentive for anyone operating a free wifi service not to check what is going over their network. If you know about it but fail to report it then your are liable whereas ignorance is bliss as they say. This is the same type of disincentive that is created in other laws, patent law for example, which discourage people from performing due diligence type checking, whether that be searching for previous patents and prior art or monitoring their networks, because the penalties for willful disregard of the statute (i.e. you knew about it and did it or let it happen anyway) are higher than simply remaining ignorant.
It really is unforgivable, but unfortunately it is not as uncommon as you might think. I used to review completed projects from an Indian contractor of a company that I was consulting for and they were about to go into production with a health care information related website that was vulnerable to SQL injection of the login allowing full visibility of all health records of all users. Heck, even after I told them how to fix the problem they fixed it with client side javascript (which of course isn't a fix because the client could turn off javascript and still submit the form) and after that when they fixed their server side code they did it on a per page basis, so in the future if a new developer comes on board and he does not realize what is going on then new pages might be introduced that are again vulnerable to attack because the underlying query mechanism (i.e. building commands as strings and NOT using parameterized queries) remains unchanged. I tried to warn them, but the company didn't renew my contract when they declared the project "finished". As far as I know the site went into production in that state and remains so to this day (names not disclosed to protect the guilty).
This proposal illustrates clearly one of the main points that opponents of DRM have long made against DRM and that is that DRM allows the creators or owners of the work thus protected to seize extra rights for themselves or even those rights which have classically belonged to the consumer (i.e. fair use). Of course, the reason for doing this is so that the creator or owner can SELL that "privilege" back to the consumer when in fact that "privilege" is a right which belongs to the consumer and cannot be sold back to them because it was theirs in the first place.
Now, it may be the case that through DRM they have made it difficult to exercise my rights without paying them (i.e. I have to break the DRM to enable my rights), but that brings up another problem with DRM and specifically the DMCA. It is unlawful (technically) to break the DRM (aka access protection mechanism) even if I break it for the purpose of re-enabling my rights to time or format shift or for fair use. As the law is currently written it is unlawful to break the DRM no matter what the intent and that is wrong. The DMCA needs to be changed so that safe harbors for breaking the access protection mechanism are created when the consumer is re-enabling RIGHTS that the creator or owner has seized improperly via DRM (aka the access protection mechanism).
Design patterns are part of a broader trend to slavish adherence to "Object-Oriented" technologies whose value and philosophy is overrated.
.NET is certainly addressing this, but I can't really say much intelligent about it.)
Fine, you are entitled to your opinion after all, but be aware that those advocating a complete scrapping of the object oriented paradigm, which you seem to be advocating, are in the minority.
Since 1994, garbage collection has become commonplace, which is good.
It has its pluses and minuses IMHO.
We've gotten languages better than C for general programming, which is at best faint praise, given that C is a language with many shortcomings, that was applied way beyond where it's actually good, back when computers weren't as powerful as they now are.
That is sort of an apples and oranges comparison. You understand that the original purpose of the C programming language was the construction of operating systems, namely the research project which became UNIX at the original Bell Labs, right? I haven't used C for some time now, but I would probably not consider using it again unless there was a very good project based reason to do so. Another reason that C tends to hang around is that C compilers have been written for just about every modern processor assembler language out there which is one reason, among others, that you do not see many operating system kernels written in languages other than C. I would argue that C was tremendously successful at accomplishing what its designers set out for it to do. What people have used it for subsequently does not in any way diminish the work of the original designers. In fact, IMHO it enhances it substantially. Many of the most popular modern programming languages owes a debt to C, it blazed the trail for just about everything that came afterwards (although C itself borrowed some concepts from previous languages, notably the ALGOL family of languages).
But there are a number of things that simply haven't happened, because of the reign of "Object-Oriented" programming:
I shall attempt to address your points in turn:
Paradigm improvements in relational database technology. We've had plenty of incremental improvements, but we're still largely stuck with SQL and ORM (the latter of which is a "solution" for problems caused by slavish application of OOP). (LINQ in
Personally I don't see anything wrong with building adapters, which is really what an ORM is. You see adapters all of the time in other engineering solutions (your laptop battery power adapter for example). It is neither possible, nor even desirable IMHO, for a single model, format, or standard to be used across everything just to avoid having to build adapters. Adapters allow flexibility whereas what you are proposing will lock everyone into a "standards" battle that is essentially un-winnable because people will not agree or perhaps they cannot agree (there are no silver bullet solutions that solve all problems after all). The same is true whether we are talking about wall electrical current (i.e. 110v at 60hz in the United States but 220v at 50hz in Europe) or software programming.
As for LINQ I personally do not plan to use it in my projects mostly because it makes use of classes dynamically generated at runtime upon which it is not possible to make use of declarative programming with attributes. I also do not like the idea of mixing my business logic with my data access in partial classes. I understand why LINQ is being introduced (i.e. not every project should use the heavy duty solution regardless of size), but its use could be problematic. Perhaps I will change my opinion once I try it out in a sample application which does some real world task, but I doubt it.
Advanced and commercially feasible functional programming environments and technologies.
So what? The same can be said for object oriented programming environments
The fact is that programming by and large has gotten lazy, shiftless and sloppy over time and not any better or faster.
.NET Framework (which owes a debt to Java which owes a debt to C++ and so on back down the chain). If you haven't done much programming, particularly in the last five years then perhaps it is time for a second look, the state of the art in programming has definitely accelerated in recent years and it is heading in the right direction.
Nothing could be further from the truth, if anything the practice of programming has improved dramatically over the years and especially so in the last fourteen (14) years starting with the publication of the Design Patterns book in 1994 and continuing on through the development of better languages to support these methodologies such as Java, Python, and Delphi and really culminating thus far IMHO in the development of the C# programming language and the
They really did rely on processing and memory architectures getting faster to overcome their coding bottlenecks.
Excuse me, but that has not been the case in my experience. There have always been poor implementations and even poor programmers, but that doesn't mean that the entire system was broken. In fact, the really poor algorithms and implementations tend to remain poor no matter how much processing power or memory you throw at them which is why good programming is orders of magnitude more important than faster hardware or hand optimization of the compiler output (which BTW hasn't been necessary for many years now thanks to the tremendous improvements in compiler construction). If your implementation sucked then no amount of hardware, within reason, was going to save you from a competitor who could just as well use the same hardware and still beat you with a more efficient program.
There once was time when debugging was part of your job. Now; someone else does that and at most, the better coders do some unit testing to ensure their code snippet does what it is supposed to.
I don't know about you, but I use the debugger almost every day and every other developer that I have met also uses the debugger extensively. The debugger and debug ability is really not an issue with any halfway decent programmer. I would say that formal unit and integration testing are somewhat less common in my experience, but there are tools and frameworks (open source and good quality) for those tasks as well.
There generally isn't any "standard" with regard to processes except in some houses that follow *recommended coding guidelines* but these are few and far between.
It may surprise you to learn that other engineering disciplines, especially when one takes a more international perspective on the issue, do not widely agree upon "standards" either or even if they do there are always dissenters. The software industry used to be notoriously bad on this count but again things have improved dramatically on this issue, especially in the last decade or so.
Old school coders had a process in mind to fit a project as a whole and could see the end running program.
Which was really an inferior way to approach the problem because it resulted in lots of cut and paste duplication of boilerplate code blocks across multiple projects with only coincidental variations. Did you ever have the nagging feeling, after writing the same subtle variation of some code block for the nth time, that maybe you could abstract that part of the problem out? This was not generally possible in the days before object oriented programing and design, but now that it is I don't know anyone who would want to go back to the old functional batch style programming days.
Many times now, you are to code an algorithm without any regard or concept as to how it might be used.
In fact this is exactly what you want to do. Abstraction is your friend. Why
Well, so much for equal justice under the civil law (I guess that only applies to criminal cases and even there money makes some people more equal than others). Isn't this precisely the sort of abuse that class action was designed to prevent? Perhaps some enteprising lawyers will find a way to collect from the RIAA on behalf of this class of defendants, well we can hope anyway. Thank you NewYorkCountryLawyer for answering my question.
How is it that the RIAA is always allowed to withdraw from a case, in order to avoid setting a disadvantageous precedent, without consequences? Does the casino let you take your chips of the table in the middle of the game because the hand is going badly for you? You can fold your hand, but you cannot withdraw without consequences (i.e. loosing your chips). The difference here is that the accused is forced to play the legal game by the accuser (i.e. the RIAA) and so there should be no privilege for the accuser to withdraw without consequences. Perhaps, for the benefit us laypeople, you can explain this one for us. Thank you.
for these reasons, among others, intelligence agencies and other adversaries usually try and attack the key management instead of brute forcing the algorithm: they bug your keyboard while you don't know that you are under surveillance. In fact, there is at least one case, involving a mob boss and PGP, where a certain three letter agency did exactly that to recover the passphrase. The security is only as strong as the weakest link in the chain after all and if your location is not secure then the strongest crypto in the world will not stand up to a determined attacker willing to try alternative means.
So where is the section in this MAFIAA written legislation that defines copyright infringement as a water-boardable offense?
The progress is fairly slow in part because this is considered low priority research since there simply isn't much firm demand for faster air-breathing vehicles.
That was made abundantly clear by the commercial failure of the Concorde by the beginning of the 21st century (the last flight was in 2003, but it would have failed much sooner if not for supplemental financial support by the French and British governments). There is simply not enough demand, at the high ticket prices necessitated by exorbitant fuel and maintenance costs, to justify the service. There was also the issue of sonic booms limiting supersonic flight to non-populated areas (i.e. over the oceans) which further limits the number of useful routes that can be flown by these types of planes. It may be the case that technology has lowered these costs somewhat in the years following the cancellation of Concorde service, but the costs of regular airline service are influenced by many of the same factors and will thus always be in competition with super sonic transport (SST) service.
expecially ones that burn petrochemicals and therefore create more pollution than slower, more mature, and more efficient designs
Nobody would say that the Concorde was an environmentally friendly aircraft, it was dirty as heck, but the operators didn't really care because there were little or no pollution regulations over international territory or even in national territory at that time and even if there were who would enforce them? The supporting governments were supporters of the program as well so even if there were regulations the Concorde probably had waivers. This was a case of negative externality but it didn't cost the airlines (British Airways and AirFrance) any more simply because the Concorde was a pollution source.
however the research continues in the face of the harsh fact that speed is expensive.
Mostly as part of basic or military research funded by the government, not private enterprise.
Surely they would have built a limiter into the throttle so that the pilot could not willfully increase the engine thrust to the point where the aircraft would break up?
It seems to me that unless they need or want whole disk encryption of the boot partition, which still doesn't answer the unencrypted backup tape question, that TrueCrypt would have been perfect for them.
namely, that people just don't want to trust the market when it comes to eating versus starving and happily pay for supply security.
The people who argue that a good or service x or y is too important to leave up to the market strike me as being a bit off in their reasoning. For my own part, I do believe that government has a proper role to play in our society, but that does not mean that the government should be directly producing or even subsidizing the production of particular goods and services in preference to others. Governments should limit themselves to national defense, protecting people and their property from coercion (i.e. enforcing some limited set of laws, I say limited because we have far too many unnecessary laws right now), and ensuring the third parties are compensated for costs imposed upon them by other third parties (i.e. the redress of what economists call Negative Externalities).
the other is geopolitical. Even more than oil or manufactured goods, when you start importing your food you export your ability to bargain aggressively with the countries that you depend on to eat.
This concern is unfounded and the reason can be found in any economics textbook in the chapter on Trade. It is almost never the case, and certainly not with food, that one country would cease all local production and import their entire supply from somewhere else for the following reason: Trade in goods and services increases the amount of consumption possible by all parties, even though some countries have a comparative or even an absolute advantage in producing a particular good or service. For example even if Brazil has an absolute advantage in producing sugar cane as compared to the United States, it is still beneficial for the United States to produce and sell sugar, even to the Brazilians. The argument for this is rather complex and counter intuitive (economics is interesting in that regard sometimes), but basically it has to do with diminishing returns on additional investments in producing more of a good or service, even one that you have an absolute advantage in producing and the size of world markets (especially relevant when considering commodity food stuffs).
cut off a country's food long enough to empty out what's left in the distribution pipeline (which is very short for some staples, compared to manufactured goods with a long shelf life) and things can get very ugly. In the average house I suspect you'd run out of things to eat long before you'd run out of things to burn to keep from freezing.
Assuming for the moment that we are not discussing a city under military siege here (i.e. St.Petersburg in WWII) how would a country become cut off from staple commodities like food short of a natural disaster or military action? If one country cuts off supply then other sellers will happily step in to fill the gap (at the expense of the boycotting producer). Why do you suppose that the Arabs ended their oil embargo during the 1970s in rather short order? Was it because they suddenly changed their minds about the American people? Certainly not. They ended the embargo because the Europeans and others had no problem turning around and reselling the oil to the United States. The net result was that the Arabs received lower prices for their oil, the Americans paid higher prices, and the Europeans and other middlemen pocketed the difference. Markets work to resolve these shortages in very short order unless the area in question has been geographically cut off (i.e. natural disaster) or has been cut off by military force (i.e. the city under siege).
We've seen the panic Russia caused when it toyed with the idea of using its natural gas supplies to Europe for political ends
Again, the Arabs already tried that and found that they didn't like the results. All they were accomplishing was the enrichment of the middlemen.
Introduce a few 'unfortunate delays' into
Yes, most of us do not disagree completely with notion of copyright as a concept, but rather the particularly onerous and unbalanced implementation which has emerged in the first world in general and the United States in particular from about 1975 onward. Copyright is supposed to strike a balance between producers and consumers but how is it balanced to say that all of the works copyrighted in a single human lifetime will not be enjoyed by that same person in the public domain in his lifetime? In fact the balance has tilted so far in favor of the copyright holders that people in general, and college students in particular, are in open rebellion against a system which they perceive is no longer fair. They choose to act outside they system because the laws are so broken and the deck so stacked against them with regard to having those laws changed.
It really ought to be ended entirely. Why should farmers get a special subsidy when other Americans don't? As a student of economics I am always very suspsicious of anyone arguing in favor of a special legal protection or subsidy for their industry. I do not receive such considerations in my chosen profession so why should anyone else? Why is farming a special case and please don't tell me that nobody would grow food here in the United States if there were no subsidy. Like all other tarifs, quotas, and subsidies our farm policies in the United States hurt far more people, including poor Americans, than they help. They are a terribly inefficient way to help farmers, a tremendously regressive tax on the poor, and an very wasteful use of public resources.
And please don't think that I am just singling out farmers alone for special attention. The oil and gas subsidies, the war spending, and the entitlements programs (social security and medicare to name the two big ones) are all part of an almost inumerable number of wasteful programs undertaken by our government.
For those of you who are interested in a more detailed anyalysis of the harm caused by farm subsidies I would refer you the following article
Han Shot First!
If the first world countries *really* wanted to help the poor people of the world then they would end their generous farm subsidies and submit corporate agribusiness and wealthy first world farmers (the few who are left anyway...the mythical family farmer is largely gone in the United States today) to the discipline of the marketplace. The heavy first world farm subsidies are massively distoring and wasteful from an economic standpoint and must, as a matter of principle, be ended. In fact, it is this issue of farm subsidies which has caused the collapse of trade talks in the WTO for each of the last several rounds. Unfortunately, the wealthy first world farmers (particularly in France) and their agribusiness counterparts lobby hard politically to protect their subisidies and form a very vocal minority special interest in the whole affair (farm subsidies are the third rail for their elected officials...untouchable unless it is to increase them). It has been said that it is difficult to get a man to understand something when his livelihood depends upon him not understanding it and that is turning out to be very true indeed to the great detriment of the third world poor.
if you have 1,000,000,000+ people of your population rising against you, you'll be running for the exit while your head is still upon your shoulders.
Don't be so sure, it is all a matter of perspective. If what you say is true then why are the old men of the Chinese politburo and even worse, Kim Jong Il of North Korea, still in power after decades of people not liking them (even within their own countries where they are to afraid to say anything publicly)? If one is willing, as a dictatorial ruler, to machine gun people in the streets for rising up against the government then one need only maintain a small elite around oneself (i.e. the army) to exercise a pretty good degree of control. Americans and Europeans forget that outside of the first world there is largely not a great tradition of personal freedom or self determination, those were ideas that came out of western philosophy and the enlightenment, not some oriental despotism. Thus, there are a lot of people in this world who would rather be alive than free and particularly so when things "aren't that bad" as they are in China right now (North Korea still uses more hard power to keep the populace in line). Combine that with all of the distractions of modern life and who in China would want to stand in front of a firing line for the chance that their children might be free? Probably not very many.
The ISPs will have to get equipment that can tell the difference between encrypted BitTorrent traffic & all other encrypted and non-encrypted traffic.
Which is essentially an impossible problem with modern encryption algorithms, salting, and hashing of data in packets and other security techniques. In much the same way that you cannot judge a book by its cover neither can you decide a packet by its header and that is the beauty of the generic nature of network stacks and especially with encryption, data is data is data. The Internet is generic by design and packet level payload scanning was not a consideration when these protocols were first designed because of this notion of abstract layering of network architectures. Unless the MPAA is going to lobby to make the Internet as it exists now illegal and force a complete redesign under their control this is not going to change. Of course, that would never happen anyway, they might as well spit into the ocean for all the good their lobbying on that issue would do.
I have said it before, but I will say it again: A technology arms race between filtering / packet shaping and encryption / obfuscation will be won hands down by encryption and obfuscation. The MPAA is only hastening their own defeat by pressing the filtering / packet shaping "solution" to what is essentially a social and economic problem.
err....you mean Metalband_Enter_the_Sand_Dude.txt right?
The problem with the argument of Mr Glickman, ignoring for a moment the fact that it most certainly does NOT come from a disinterested source (i.e. Mr Glickman is the paid hired gun of the MPAA, an organization which has a clear financial interest in squeezing as much power out of copyright as they possibly can, right and wrong be damned), is that it does not take into account the essentially adversarial nature of copyright and the economics driving the piracy of intellectual products be they movies, music, software or indeed any other reproducible and transmittable works.
The false assumption underlying the position of the MPAA, Mr Glickman, and many other copyright holders at large is this (from TFA): that technology that can be used to halt film piracy. And they (the copyright holders) expect ISPs to implement it.
However, as the author so aptly pointed out, what incentive do the ISPs have to do this other than the coercive threat of legal action (which invariably leads to an adversarial situation and grudging compliance)? It costs them money, their customers (i.e. the people paying the ISP for service) by and large don't care about filtering EXCEPT when their service is degraded (in the opinion of the customer and the customer is the one paying the bills which butter the bread of the ISP) and the customers want someone or something to blame. So how does it help the ISP to increase their costs AND piss of their customers? It seems to me that the MPAA and Glickman are all stick and no carrot here with their lawsuit threats.
People are turning to pirated works because they either (a) cannot afford to pay full price and probably live outside the United States, in which case they don't really give a s*** about American Copyright Laws OR (b) they want to pay a reasonable price for their copyrighted goods BUT they don't like all of the Digital Restrictions Management (i.e. playsforsure but only on WindowsCE devices...oops) bullcrap that comes with going legit so they get their fix someplace else.
Finally, if packet filtering ever becomes widespread then encryption will surely follow as an increasingly common feature and then what? The technology arms race is not going to solve what is essentially a social and economic problem with regard to piracy. In fact, I would bet upon encryption winning out in the arms race against packet filtering so it is not terribly wise for the copyright holders to press that issue anyway.
and the web will be a safer place for everyone
or safer for VeriSign, Thawte, and other certificate vendors who are fortunate enough to be included by default with Windows anyway. Seriously though, I think that the current warning system is just fine. I can decide for myself when I care about the warning and when I don't thank you very much. There are plenty of sites which either use https needlessly or just aren't that important and for the few that are I will heed the warning and close the tab. There is nothing more annoying than software which gets in the users face, assuming that it is smarter than the user, and refuses to give up control. At the very least make the "do not allow bypass of certificate warnings" feature optional so that those of us in the know can go into about:config and turn off the hand holding.
So, if you don't monitor, you are not in trouble
So just don't monitor anything. Who would want to assume this massive liability of monitoring in exchange for nothing other than being a "good citizen"? This is yet another example of a law which drives citizens to take an out of sight out of mind approach to their lives and makes the very criminal activity that it is attempting to control more likely than it otherwise would have been. Nobody wants to be the messenger when the messenger makes a convenient scapegoat when the "real" bad guys cannot be found (and you know that there will be massive pressure for the authorities to bust someone and who do you think will be left without a chair when the music stops? Surely not the "good citizen"...yeah right).
Ever heard of "shoot the messenger"? Would you trust the government not to turn on you when they couldn't find the "real" guilty party? There will be strong pressure to prosecute somebody once a prosecutor gets their hands on it and you are the owner of the network and you admitted that illegal content was going over your network didn't you? No, it is better to keep your mouth shut and avoid a major life changing fiasco on a politically charged issue then to be a good citizen. What a hassle, who needs it?
It is unenforceable because you are creating an incentive for anyone operating a free wifi service not to check what is going over their network. If you know about it but fail to report it then your are liable whereas ignorance is bliss as they say. This is the same type of disincentive that is created in other laws, patent law for example, which discourage people from performing due diligence type checking, whether that be searching for previous patents and prior art or monitoring their networks, because the penalties for willful disregard of the statute (i.e. you knew about it and did it or let it happen anyway) are higher than simply remaining ignorant.
It really is unforgivable, but unfortunately it is not as uncommon as you might think. I used to review completed projects from an Indian contractor of a company that I was consulting for and they were about to go into production with a health care information related website that was vulnerable to SQL injection of the login allowing full visibility of all health records of all users. Heck, even after I told them how to fix the problem they fixed it with client side javascript (which of course isn't a fix because the client could turn off javascript and still submit the form) and after that when they fixed their server side code they did it on a per page basis, so in the future if a new developer comes on board and he does not realize what is going on then new pages might be introduced that are again vulnerable to attack because the underlying query mechanism (i.e. building commands as strings and NOT using parameterized queries) remains unchanged. I tried to warn them, but the company didn't renew my contract when they declared the project "finished". As far as I know the site went into production in that state and remains so to this day (names not disclosed to protect the guilty).
This proposal illustrates clearly one of the main points that opponents of DRM have long made against DRM and that is that DRM allows the creators or owners of the work thus protected to seize extra rights for themselves or even those rights which have classically belonged to the consumer (i.e. fair use). Of course, the reason for doing this is so that the creator or owner can SELL that "privilege" back to the consumer when in fact that "privilege" is a right which belongs to the consumer and cannot be sold back to them because it was theirs in the first place.
Now, it may be the case that through DRM they have made it difficult to exercise my rights without paying them (i.e. I have to break the DRM to enable my rights), but that brings up another problem with DRM and specifically the DMCA. It is unlawful (technically) to break the DRM (aka access protection mechanism) even if I break it for the purpose of re-enabling my rights to time or format shift or for fair use. As the law is currently written it is unlawful to break the DRM no matter what the intent and that is wrong. The DMCA needs to be changed so that safe harbors for breaking the access protection mechanism are created when the consumer is re-enabling RIGHTS that the creator or owner has seized improperly via DRM (aka the access protection mechanism).
Yes, but you will continue to pay your taxes and "vote" for the other guy and you will like it that way.