Also you must factor in the business-aware factor. People who ultimately make the buy decision are not usually that tech-savvy and like to see products from a "business perspective". They like to hear about their business terminology, the keywords they are familiar with. You can argue in favor or against this but it is a reality. Open source software (and its enthusiasts) usually come with three main arguments: (1) cost, (2) quality and (3) evolution/maintenance. I've seen these arguments failing routinely.
The cost argument fails both because a product's whole cost is tied to its market value and people are suspicious about free. They believe that a greater cost comes in the form of consulting or similar which means a much higher risk of budget and time overruns. The quality argument fails because it is not measurable. You can measure an engine's house power or a car's maximum speed but you can't measure the quality or fitness for purpose of a COTS easily so it boils down to confidence. How likely is software X from (Microsoft|Oracle|IBM|SAP) likely to work as advertised vs software Y from (place you favorite open source company here)? And gaining confidence is an art which big companies are very good at.
The last point is maintenance or evolution. Big CIO is pretty sure that Microsoft will be around here for the next years as well as IBM or Oracle. Even is some big merger occurs the products will be supported (theoretically). But what about, say, Canonical? Or EnterpriseDB?
As hard as it may be to accept, Marketing (and Publicity) has real effect on people and open source fails miserably most of the time...
Hummm, size of Jupiter but made of solid carbon? I wonder what the gravity would be like... my calculations say ****waaaaay**** big
Oh, yeah, and you still have to avoid the gravity pull/radiation from the pulsar... Minor stuff, tho, if your greed for diamond is big enough
If only KDE had a patent on that file copy dialog
But, nevertheless, both Windows and MacOS have waaaaay to go to even get close to KDE as desktop management. The only think I'm not totally sure I like on KDE is its file selection/click concept. I prefer clicking on buttons and double-clicking on icons... but that's maybe just a bad habit...
They are not ment to make money! They are ment as a big flashing warning sign you better not run this red light and an attempt to educate you this way.
I remember when in Lisbon they placed the speeding cameras with huge signs warning about the speed cameras. People would slow down near the camera but would speed up when away from it. Nevertheless, the average speed in the highway decreased significantly most of the time. It is not perfect but it works and no one complains on being "fooled"
The problem is when there are used to actually make money. You get this idea that the police is "sneaking" and they just loose credibility. But it is still attractive to money-loving mayors such as Bloomberg...
Part of the difference may not be in actual law but in actual practice. The USPO is doing a fine job at playing ridiculous. Patents for all sorts of stupid things have been awarded and the whole process is much more complex. For example, in Europe any company or individual may oppose patenting whereas in the US you must challenge the patent in court (which is very expensive and undoable in practice).
software in Europe can only legally be patented if it is associated with some sort of mechanical / physical device. Software, by itself, is not patenteable. But you must also be aware the the the law is interpreted differently in Europe than in the US: European courts tend to look more at intent than the actual writing of the law. In the US companies have been able to patent many purely algorithmical stuff and concepts that are either invalid or challengeable / unenforceable under European law.
Part of the recognition that patent law in Europe is much less enforceable than the US is the lesser number of challenges that to go court. Most companies are aware that -- with the current state of the law -- software patents are unenforceable and invalid under current law (regardless of what the EPO says and wants). The results in the European Parliament are proof of that and they can/should be used in Court to reveal "intention" of the legislator.
As a side note, you also forgot to include most of the EU countries in your list
Yes, I can see you are a US patent attorney but you don't seem knowledgeable of EU law (which has to include laws from all countries as we are not a federal state). The difference between what is patenteable in the US and in the EU is immense. And the interpretation of patents done by courts is also much different.
With all of its problems, the EU has had a much superior stance (in my position) regarding big-corporation as Europe's mentality is much different from US.
For your information, here is article 52 of the European Patent Convention:
(1) European patents shall be granted for any inventions, in all fields of technology, provided that they are new, involve an inventive step and are susceptible of industrial application. (2) The following in particular shall not be regarded as inventions within the meaning of paragraph 1: (a) discoveries, scientific theories and mathematical methods; (b) aesthetic creations; (c) schemes, rules and methods for performing mental acts, playing games or doing business, and programs for computers; (d) presentations of information.
Patents such as this (Microsoft's 'is not' operator) only exist in the US. Sometimes it is hard to understand how can an country with so many intelligent people produce such intellectual atrocities? O, wait...
No, it doesn't. But sometimes it is the only weapon you have at your disposal.
If no one ever broke the law when they disagreed with it then US would still be the UK and France would still be an absolutist monarchy. Sometimes we have to do wrong to get things right because they are wrong in the first place. So yes, sometimes two wrongs make one right. Or three. Or four. Depends. The real world(tm) is not boolean logic...
Of course, if our countries were real democracies, if the people had real power, then you would be right because we could fight the copyright industry at the same level. But since most western countries are companycracies there is no way the people can fight its way legally.
You must also distinguish law and justice. While the former should -- theoretically -- aim at the latter, this is not always the case. Mostly everyone is fond of justice and law when it is enforcing justice. But when the law is unjust, people just disregard it. They feel they can download a movie because paying $20 for a DVD you will see once is unfair. This is also justified on an economics perspective. If items were sold at the price they're worth, then I'm sure CDs and DVDs would be much cheaper then they are now. But we don't live in a really free market, competition is limited and most limitations are imposed by the companies holding the copyrights themselves.
Mod parent up! Finally a reply that goes straight to the core issue.
Learning to program is learning to design algorithms, data organization, encapsulation. It is learning module contracts and responsibilities. Once you master those (which is the difficult part), the language itself is irrelevant. I, as many around here surely, know how to program in a large number of languages. Certainly I know details of some languages better than others but I can make software in any (well, reasonable) language because I know how to program, not a specific language.
What takes time to master is logic and, up to a certain point, APIs (but there Google is your friend). Granted syntax does make some difference in my personal taste. Sure I wouldn't like to program in TeX or postcript for a living (both a Turing Complete so theoretically as powerful as any other). But please understand that learning to program is not learning a programming language.
This is also what I -- when contracting freshly-graduated software developers -- check for. I don't care about them showing me they can create a window with some text fields and buttons. I ask them how would they refactor some code in order to reuse parts of it in a new system forcing them to come up with an "interface" or "API" and decide how to modify the existing code to conform to that API. That is programming.
I don't know about US law but in all European countries I know of, the state can only act against its employees in case of negligence, corruption or other criminal activity. You cannot prosecute your employees for making mistakes. It simply would make everyone benefit big companies even more! Besides, just consider what would happen:
So, next time, second reviewer will always agree with first
I think you're missing a basic issue here.
You can be arrested for not paying taxes in dollars in the US. In Europe, you have to pay taxes in Euros. Nowhere in the world you pay taxes in Bitcoins. EUR is actually the same as USD (actually, a stronger currency ATM). It is same as CNY. And the same as NOK. And so on. They are soverign currencies. Bitcoin is the product of individuals not states. That is a HUGE difference...
A computer without COBOL and Fortran is like a piece of chocolate cake without ketchup and mustard.