luriel
Not to mention that as many have pointed out over and over again, the main expenses of drug companies are not research, but drug approval bureaucracy and marketing.
Still, abolishing patents would go a long way to allowing real competition and progress in healthcare.
Where the regulated industry ends up in some kind of symbiosis with its regulator, encouraging it to both grow and to keep competition at bay.
The conflict between the regulators and the regulated industry is largely a farce as they know they need each other.
One could talk of NSA backdoors, but there is no need, the security of Oracle products is laughable at best, there is no need for backdoors.
That way it will never complain that fmt is imported but not used.
Still, I never had need for this. Once you have written a bit of code the import list remains relatively stable.
Nobody has bothered to add parallel compilation because building Go code is already so ridiculously fast.
See Rob Pike's essay on this very topic and the design of Go:
http://commandcenter.blogspot.nl/2012/06/less-is-exponential...
Passing a closure on a channel is both idiomatic and relatively common in Go code.
This and other comments make me suspect the author could have benefited from spending more time looking at existing Go codebases (the source of the Go stdlib is excellent).
Edit: His (IMHO somewhat strange) complaint that "Channel reads violate the laws of time and space by changing their behavior based on how their return values get used." doesn't apply anymore, now to do async reads from a channel you use select with a default, not the comma-ok idiom.
Also a package including more 'clever' Unicode operations will also be part of Go 1.1, but I have personally never found the existing support lacking, and no, I don't live in an English speaking country.
Sane and simple standards that can be implemented in any platform without requiring hundreds of man years of effort.
Nothing done in the web today is particularly technically advanced, we are about the same UI level as standard apps were more than 10 years ago (hell, I doubt you can build a photo manipulation app today that can compete with where Photoshop was 10 years ago).
Most of the complexity burden the web has is purely gratuitous and product of how flawed the standards it is built on are.
How JSON replaced XML is a good illustration of what is the right direction to go. Now if for example JavaScript was replaced with something considerably simpler, like, say, Scheme, instead of trying to bolt even more OO-crud into it and turn it into another pseudo-Java, that would be another good step.
There is little doubt the DOM and CSS could be dramatically simplified without reducing functionality, same goes for HTTP (as a recent post to hacker news illustrated).
And is only going to get worse, with WebGL is not just "Sorry your browser is not supported, please download a different one.", but "Your video card drivers are not supported, buy new hardware and/or install a different Operating System"
Is not just unidiomatic code in itself, but it creates unidiomatic APIs that behave in ways Go programmers don't usually have to worry about.
Unlike Python programmers, who should always be worrying about what exceptions any function or method they call could throw, hell, even setting a property or adding an item to a map or list can throw all kinds of exceptions. And this is rarely documented, and when it is documented it is usually incomplete, because whoever wrote that code doesn't know what exceptions might be thrown by any other code he calls.
Put another way: when you call an API correctly, it should be safe to assume it will never panic().
Panic/recover can be used in rare occasions within libraries to do more exception-ish style error handling, but those panics should never be allowed to escape and cross API boundaries.
But so far I have not noticed anyone doing this, perhaps because actually returning and handling errors properly is not as much of an issue as most people make it to be.
Of course, unchecked exceptions have the problem that is basically impossible to keep track of what exceptions a function might throw (because it has to document all the exceptions that any functions it calls might throw too, and so on and on.)
In the end, of all error handling mechanisms around, Go is by far one of the best.
Even if I write the software myself I'm supposed to pay Apple for the privilege of running software I wrote on hardware I own!
If that is not insanely outrageous, I don't know what is.
Make it acceptable that users have no control over the operating system running on their hardware, and much more importantly: what applications they are allowed to run on that hardware.
Can anyone imagine Microsoft banning all non-MS-approved programs from running on Windows in the 90s? Or starting to sell computers that can only run Windows, and where you can only install MS-approved software (and software for which MS takes a 30% cut, if you are lucky to get approved).
And can anyone imagine Microsoft suing, say, Netscape or Sun for patent infringement?
Apple's behavior wold have been beyond outrageously unthinkable from the most vilified tech company of the last 20 years.
But because it is Apple, it gets a pass. Is the victory of form over substance, of marketing and hype over principles and values.
It will take decades to undo the damage Apple has done, if we ever recover.
This kinds of laws that make all kinds of utterly harmless speech a very serious risk are very widespread.
See also what happened to some poor guy that made a joke in Twitter about his trip to the US.
People in favor of "Real Names" are the same kind of people who say "If you have nothing to hide, why do you care about privacy?"
This is known as regulatory capture, and is what is to be expected once the government starts to grant monopolies: instead of competing and innovating, corporations dedicate themselves to much more lucrative rent-seeking.
When the government is the one who decides who can do business and how, it becomes much more lucrative to put your energy in lobbying the government for rules favorable to you, than to put the energy in competing and pleasing consumers.
Without patents the only thing that matters is execution: pleasing consumers, with patents all that matters is how you can milk the system and use it to crush your competitors that might have more competitive products.
http://levine.sscnet.ucla.edu/general/intellectual/against.h...
And is not surprising when you realize that it is basically the government going around granting monopolies to private entities, and what incentives that creates (the main incentive is to expand the monopoly power rather than to create and innovate, innovation is contrary to monopolies).