Feeds:
Posts
Comments

Archive for the ‘Software Development’ Category

Hoare on Testing

On the flight to the ISO C standards meeting this morning, I was reading this month’s issue of CACM, and found that Sir C.A.R. (Tony) Hoare wrote a nice piece called Retrospective: An Axiomatic Basis for Computer Programming.
Hoare has long been a noted proponent of axioms and formal proofs of program correctness. In that light, [...]

Read Full Post »

I’ve opened up a short concurrency poll to get a sense of what concurrency issues are top-of-mind for programmers, and I’d appreciate it if you could take a few minutes to participate. Some questions are about what you want to learn more about, others about your tools of choice in specific areas, and a few [...]

Read Full Post »

This month’s Effective Concurrency column, Avoid Exposing Concurrency – Hide It Inside Synchronous Methods, is now live on DDJ’s website.
From the article:
You have a mass of existing code and want to add concurrency. Where do you start?
Let’s say you need to migrate existing code to take advantage of concurrent execution or scale on parallel hardware. [...]

Read Full Post »

This month’s Effective Concurrency column, Design for Manycore Systems, is now live on DDJ’s website.
From the article:
Why worry about “manycore” today?
Dual- and quad-core computers are obviously here to stay for mainstream desktops and notebooks. But do we really need to think about "many-core" systems if we’re building a typical mainstream application right now? I find [...]

Read Full Post »

This month’s Effective Concurrency column, The Power of “In Progress”, is now live on DDJ’s website.
From the article:
Don’t let a long-running operation take hostages. When some work that takes a long time to complete holds exclusive access to one or more popular shared resources, such as a thread or a mutex that controls access to [...]

Read Full Post »

This month’s Effective Concurrency column, “Eliminate False Sharing”, is now live on DDJ’s website.
People keep writing asking me about my previous mentions of false sharing, even debating whether it’s really a problem. So this month I decided to treat it in depth, including:

A compelling and realistic example where just changing a couple of lines to [...]

Read Full Post »

This month’s Effective Concurrency column, “Use Thread Pools Correctly: Keep Tasks Short and Nonblocking”, is now live on DDJ’s website.
From the article:
… But the thread pool is a leaky abstraction. That is, the pool hides a lot of details from us, but to use it effectively we do need to be aware of some things [...]

Read Full Post »

Now that I’m over the icky flu that forced me to postpone the seminar two weeks ago, I’m happy to say that we have new dates: Effective Concurrency (Europe) will be held on May 27-29, 2009, in Stockholm, Sweden. I’ll cover the following topics:

Fundamentals: Define basic concurrency goals and requirements • Understand applications’ scalability needs [...]

Read Full Post »

The latest casualties in the technical education world are the Software Development conferences – SD West, SD Best Practices, and Architecture & Design World – which are being discontinued effective immediately, making the SD West that was just held earlier this month the last of its kind. The conferences were run by the same company [...]

Read Full Post »

This month’s Effective Concurrency column, “Use Threads Correctly = Isolation + Asynchronous Messages”, is now live on DDJ’s website.
From the article:
Explicit threads are undisciplined. They need some structure to keep them in line. In this column, we’re going to see what that structure is, as we motivate and illustrate best practices for using threads — [...]

Read Full Post »

Older Posts »