MMmmm..... yeah it has. I'll agree on the silver bullet, but I don't think they need one.
Threads are all over the place, and easier than ever to use. They do require intelligence to use well, and people to think about things like locking strategies, but they really are not all that hard. It amazes me that people seem to be so scared of them for some reason.
Perhaps it's the problem domain I work in (back-end server systems) but I come across them all the time. When dealing with lots of distinct tasks for lots of distinct clients you can make good use of threads without needing to do the kind of hard-core mathematical analysis that you would apply to splitting single tasks across parallel systems.
(And no, I'm not suggesting that a one-thread-per-client model is a silver bullet, there are more efficient async ways of doing things)
Another cool product is Disruptor - they have figured out a good, fast way to do message passing that minimizes the need for concurrent data structures between worker threads. (Provided of course you can model your app in that way). Under the hood, they have some crazy dep memory barrier based stuff, but for most of the programmers on a team, thinking about that stuff is just not needed. (as an aside, I think if Beautiful Code 2 was being written, I think Disruptor should be included, that source code is downright inspiring.)
The point being, once you have a good, trusted and vetted set of primitives, and are willing to put a little effort into working in a paradigm someone else sets, you get a lot of benefit. This is no different than using RoR or Django instead of rolling your own web framework.
My point was that multi-threaded programming hasn't taken off because it hasn't needed to. We just get some really smart experienced guys to write our infrastructure that encapsulates thread use and all of us get to reuse that.
I really don't get on with this mindset that someone else can fix it.
In fact, using any thread or concurrency mechanism in JEE code is considered a code smell, you should be handling it with the Spring/JMS/Jboss setup
I've had the sort of career that involved highly-optimised in-memory databases, high-volume, low-latency payment processing and stuff like that. So I'm used to dealing with this stuff direct.
Consider this set of programmer "skill levels" where most (80%!) are above average: {10, 10, 10, 10, 1}
Because I'm somewhat tired of seeing this exact comment every time the word "average" is mentioned.
It's not a tautology, it's the asymptotic equipartition property.
> Of course most programmers will still be average, by definition. The problem is that the average level of quality and productivity probably won't have changed all that much.
It would appear not.
It's always funny how people take a serious person who has otherwise written a very insightful article, take a sentence out of context, and proclaim it silly.
RTFA
XML, JSON, MUMPS-storage are semantically equivalent.
XML is not about "<" and ">".
+ 1
> Apple's profits
With all respect, I have hard time seeing Apple laptops outside the US. Not counting some fanboys who acquired the taste trough some snob blogs.
Indeed. And where I am (also outside the US) I have a hard time seeing non-Apple laptops. Anecdotal evidence isn't really that useful when we're talking about global trends.
Not counting some fanboys who acquired the taste trough some snob blogs.
Making statements like this cause you come across as overly emotionally invested in your platform, and make others less likely to take your arguments seriously.
No. I happen to use anything. I am not against Apple, I am against the Apple fanboyism. And any type of fanboyism.
> Anecdotal evidence
http://en.wikipedia.org/wiki/Usage_share_of_operating_system...
"For example, most desktop and laptop computers use Microsoft Windows"
'Fanboy' is a pejorative term used on the internet to try and infer irrationality in others. It's like hipster. It doesn't make you magically qualified to judge others opinions or motivations just by using it.
"For example, most desktop and laptop computers use Microsoft Windows"
That is not anecdotal, though it's also not the fact being discussed. Note that I'm not trying to argue that Apple sells more laptops combined than the other main manufacturers, I don't believe they do.
Apples and oranges (no pun intended). We were talking about unit sales, not market share.
Turns out that Apple's laptop sales do not exceed those of HP/Compaq, IBM, Dell and Gateway combined but Apple's iPad sales was already doing it one year ago: http://www.computerworld.com/s/article/9223707/iPad_sales_be... and from profit POV I bet it is the same.
Maybe Africa? I live in China and I see a lot of them here; China is Apple's second largest market now.
The fanboy argument is funny to no end. I mean, I still can't find a freaking non-Apple laptop that isn't a huge piece of crap. Maybe the X1 will change my mind, but they are on hold right now due to faulty touch screens.
I'm scared to death that only Apple is willing to produce non-crappy laptops these days, that the other PC vendors have given up and are content putting out cheap crap (and expensive crap for the enterprise). Depressing.
Language like this seeds religious discussions. Please avoid it.
Well, I see tons of Apple laptops in places ranging from France, to poverty striken Greece to SE Asia.
If you live in some Eastern European country, Latin America or Africa you might see way less. Macs are for the richer part of the computing buying public.
Worldwide Apple commands around 4-5% of laptop shipments, but in places like US and Japan that can get to 15-20%, and for specific categories like ultraportables it can get to 60%.
More than half of our students (agriculture/environment at University of Copenhagen) have Macs, the fraction being higher in the earlier classes.
Thank god we dodged that bullet. I'm just glad people see XML for what it really is (useful, but not that useful).
> Not really. We are already in the multicore age, and it will only get moreticore.
The problem is multi-threaded has never really took off, even with all the cores we have today. There is still no silverbullet to harnessing parallelism.
> Apple's laptop sales will exceed those of HP/Compaq, IBM, Dell and Gateway combined by 2010. No way, thanks God.
Apple's profits on laptop sales (not other iOS devices) exceed those of HP, Lenovo, and Dell (everyone else being dead). Apple has been in no hurry to capture the unit shipped crown (and if we count iPads, they are already there).
> In five years' time, most programmers will still be average.
A tautology if I ever heard one.