Friday, December 28, 2007

Memories of QCon San Francisco

I recently posted a blog entry about my experience as a track host at QCon San Francisco - in short, it was a fantastic experience, and it's quite interesting to be on the other side of the podium!

Friday, November 16, 2007

How will we adapt to the future?

When I was at QCon San Francisco last week, Martin Fowler put together a panel of 4 people that had been speakers at the conference. They accepted questions from the crowd, and I asked a question about the future of software development given recent changes in parallelism. I want to ask that same question here (with a little bit of preliminary set-up first).

There is general consensus that the current set of programming languages and paradigms is not well suited to concurrent/parallel programming - almost all of these languages were created with sequential, single-threaded development in mind. Given that it is now almost impossible to get a single-core CPU, and that the number of cores on a computer is going to keep expanding dramatically, we need to do something to address this pain point.

There seem to be four major things that we can change to address the parallelism/concurrency problem:

  1. The programming language
  2. The execution environment
  3. The abstractions and APIs
  4. The programmer

Which do you think is the most likely to succeed, and why?