"The number of active callers has exceeded the capacity of our phone system. Please try your call again later. Goodbye." and hangs up.
God, this times a 1000. Have you ever had a need for resettng PRAM and NVRAM?
- Locate the following keys on the keyboard: Command, Option, P, and R. You will need to hold these keys down simultaneously in step 4.
- Turn on the computer.
Uhh.... MOM!! Can you come help me turn on my computer?
True, I remember the game going black for a second and the start menu popping up, and then thinking "Shit."
But seriously, one thing Microsoft did get right is that they pretty much reserved the windows-key as a system-wide shortcut key. Start-D (desktop), Start-L (lock), Start-R (run), Start-F (find), Start-E (explorer). I *love* those key bindings.
Contrast with Mac's F9, F10, F11 and F12 keys. If your program just happens to use one of those keys, you're shit-out-of-luck (as is the case when trying to debug something in Visual Studio in a virtual machine, for example).
Shivetya is right, just look at the huge success that was the National Opt-Out Day for body scanners. It was the same crowd
People here need to subdue their knee-jerk reactions -- "OMFG Amazon == PURE EVIL, KITTEN KILLERS!" -- and examine the situation from a few different angles before jumping to action (or at least, the thought of action). Jumping on the "get the pitchforks!" bandwagon every time during a controversy dilutes calls to action that might actually matter, weakens any valid points made by your party, and destroys any diplomatic solution to the matter at hand.
Are you really suggesting that denying service to minorities is an acceptable cost saving measure?
Is this a serious question? Businesses are interested in getting the biggest ROI and therefore cut services that aren't profitable. This happens all the time outside of your armchair rights-activist circles. Amazon isn't offering hosting services so you can feel warm and fuzzy about the world - it's offering services to make cold, hard cash. Why should they bleed money and risk a nasty litigation process without any potential return on investment? Wikileaks came and it will go, and most people outside of civil liberty circles will forget about it in 3-6 months (which may be a gross overestimate). This really is a no-brainer on Amazon's part.
Now popularity is reason enough to discriminate?
What should Amazon do, in your opinion? Drag this out on principle, lose a bunch of money or cut Wikileaks' legally dubious services? Sounds simple to me. Show me a company that wouldn't cut Wikileaks under these circumstances*, and I will show you a company that will be bankrupt soon. *the only alternative is what they already did: move the servers to a country that offers some kind of safe-harbor against this.
And if I'd ask you to name another compiled language with dynamic message routing/dispatch it would be what?
Why do you think a compiled language with dynamic message routing/dispatch is superior to others? Personally, I think message routing and dispatching sucks (as implemented in Objective-C/XCode) because of a) null pointers and b) calling non-existent methods is perfectly valid. I can't tell you how many times XCode didn't throw even a warning (let alone a compile-time error) because I tried to call a method that didn't exist, or whose signature I messed up by, say, one parameter. Sometimes, I've had to clean all targets just to see if there are any warnings which the compiler didn't report previously -- and if you're using OpenFeint (for example), rebuilding the entire project is very, VERY slow. By the way, passing parameters as key:value pairs just so that you can pass parameters out of order creates one hell of a readability mess for no real gain.
How about passing messages to null pointers? Why should that even be legal? Java will complain about it at compile time, why can't XCode handle that at compile time too instead of letting my program blow up with _TERMINATED UNCAUGHT EXCEPTION_? (Yes, I'm a Java developer by day, iPhone by night)
But more to the point, why does it matter if a language is compiled, has a dynamic message routing/dispatch blah blah blah...? If the language does the job well and is easy to use, who really cares if it's object oriented, message/dispatch, procedural, functional, etc? Personally, I don't think that Obj-C is the best tool for the job as I feel like I just can't code as quickly in Obj-C as I can in Java (or PHP). Partly it's syntax problems (all those square brackets are kind of a pain), partly the nature of the language as described above, which makes reading and testing code much more difficult, IMHO.