When it comes to purchasing consumer-grade PCs these days, it’s rare to find a system with a CPU that only has a single core. Most laptops even offer a dual-core CPU. So as software developers, we’re entering a unique era where we can start to employ parallelism in ways that would not have been practical before. In some cases, we will need to exploit this parallelism if we hope to increase the performance of our software.
Unfortunately, we are also seeing a move towards the development and use of Web-based applications. These are applications that are hosted on a remote server, and provide an HTML- and AJAX-based interface that is accessed via a Web browser.