SANTA BARBARA, CA–(Marketwired – Jul 2, 2013) – Green Hills Software, the largest independent vendor of embedded software solutions, has announced the availability of a complete integrated development environment for Ada users, who are targeting systems based on ARM® processors. AdaMULTI™ development environment for ARM has been created in response to increasing demand for ARM devices in embedded applications due to their excellent power/performance ratios and relative cost effectiveness.

The Ada programming language is typically used on projects that have real-time constraints, are developed by sizeable teams and require longevity of support. It is widely adopted in the defense sector and in security applications, such as access control. With the increasing requirement to extend the operating life of battery-powered equipment used on missions or remotely deployed in the field, ARM-based processors are being selected because of their ability to deliver the necessary performance with a reduced power budget.

Green Hills Software’s customers can rehost their existing Ada95 based applications with the new compilation environment. Additionally, some new features that have recently been added to the language are also included in the new release.

AdaMULTI for ARM is a fully integrated development environment that contains all the tools needed to complete a major programming project. These include: launcher, project manager, editor, source-level debugger, EventAnalyzer™, run-time error checking, code coverage analysis,TimeMachine™ tools suite, performance profiler and graphical browser. AdaMULTI development environment components are aware of each other and communicate among themselves, making the whole much greater than the sum of its parts. It runs on Windows, Solaris and Linux hosts and supports remote debugging for a variety of target environments, including with the Green Hills Probe and SuperTrace™ Probe for hardware debug and trace.

The AdaMULTI environment can also be used with Green Hills Software’s optimizing C/C++ compilers and other compilers that adhere to ARM Procedure Call and EABI standards. It supports a wide variety of real-time operating systems (RTOS), including Green Hills Software’s INTEGRITY® RTOS, third party and internally developed RTOSes. Because the AdaMULTI environment is fully RTOS-aware, designers can debug and tune their applications at the task level. It is particularly well suited to debugging multi-tasking programs and systems that employ multiple processors and cores.

Availability
Green Hills Software’s AdaMULTI development environment for ARM is available now for ARM processors including Cortex™-A and Cortex-R series and ARM7TDMI®.

About Green Hills Software
Founded in 1982, Green Hills Software is the largest independent vendor of embedded development solutions. In 2008, the Green Hills INTEGRITY-178B RTOS was the first and only operating system to be certified by NIAP (National Information Assurance Partnership comprised of NSA and NIST) to EAL 6+, High Robustness, the highest level of security ever achieved for any software product. Our open architecture integrated development solutions address deeply embedded, absolute security and high-reliability applications for the military/avionics, medical, industrial, automotive, networking, consumer and other markets that demand industry-certified solutions. Green Hills Software is headquartered in Santa Barbara, CA, with European headquarters in the United Kingdom.

“We’re at a tipping point with connected devices,” a recent blog post from Microsoft Microsoft‘s Internet Explorer team reads. “Every day, 3.6 million mobile devices and tablets are activated worldwide. That’s over five times more than the number of babies born each day!” They’ve got a point, but it is a sad irony for Microsoft that so few of those mobile devices run their software.

But Microsoft has sold more than 70 million Xbox 360s and has a very TV-centric followup, the Xbox One, coming in November. As Forbes.com contributor Tristan Louis points out in today’s post on Smarter TVs, ”the upcoming battle for the living room is a chance to redeem itself and turn its fortune around.” The parody video that Louis refers to shows all of the instances of the words “TV,” “television,” “sports” and “Call of Duty” in the launch announcement. Although the announcement raised the ire of hard core gamers, the emphasis on TV (and perhaps the two things TVs are most used for, watching sports and playing Call of Duty) must have been highly intentional.

Games have been Microsoft’s route into the living room, but that strong association is now an impediment to its more generalized assault of the living room. Non-gamers are probably thinking more about the future AppleApple TV than about the Xbox as their upgrade path to interactive TV. In response to this perception, Microsoft has launched a new program called “Companion Web.” The idea is to facilitate real time interactions between different devices. And because Microsoft has no footprint to speak of in the world of mobile, they are now trying to emerge as a unifying force between iOS and Android.

The problem Microsoft is trying to solve (other than the risk of their own irrelevance) is that “the majority of sites on the web are built for only one device at a time.” The user can search for related information to what they are watching on their TV, for instance, but real time it ain’t. And content owners can make second screen experiences, but they have tended to be operating system (and sometimes even device) specific. Microsoft is after a more generalized solution that does not impose an unmanageable burden on developers.

“Regardless of who makes the device or software that powers the device, the Companion Web enables the internet to bridge the gap between these devices,” the IE blog post reads. “For developers, Companion Web represents an opportunity to reuse code that works across multiple scenarios, enabling greater reach and ways to engage an audience. For consumers, Companion Web means you’ll seamlessly move from one device to the next, interacting with your photos, videos, music, movies, television shows, files, and more.”

Companion Web would seem to be a more generalized version of the Xbox SmartGlass, which also allowed you to interact with your TV via Windows devices and select iOS and Android devices, but only on very specific games and content. The promise of the Companion Web is of a much broader range of experiences that the user could have between devices.

So far, Microsoft has released three such “Companion Web experiences” working with outside developers. I became aware of the program through Luke Wroblewski who has created a version of his Polar app that works in this companion manner with Internet Explorer. As you can see in the video below, Polar uses IE’s snap mode to assign a “sidebar” portion of the screen (in this case a Surface tablet acts a s a proxy for a Windows 8/Xbox One enabled TV) to itself while the user uses the balance of the screen to watch Futurama.

Wroblewski demonstrates the ways that you can find polls with Polar about Futurama and watch the results update in real time while you are watching the show. You can imagine something like this being a lot of fun for big live TV events like the Oscars or the Super Bowl, where the amount of real time activity would be high and seeing how other people are reacting becomes part of the entertainment. Similarly, you can make up your own hashtags for polls in Polar so that the reactions you are monitoring are only a select group of people. Either way, mass or niche, the real time linkage with the content on the big screen really extends the idea of the Polar app by making these interactions available to a room full of people—each potentially interacting with their own mobile devices.

And, important to note (since this is IE, after all, that we are talking about) that this all uses standard open web technology. Specifically, Wroblewski tells me, Companion Web uses web sockets to create the real time connections between devices. He says, “you can make a connection between pretty much any two ‘modern’ Web browsers regardless of device.” One of the other really interesting things about the Polar demonstration is that, as I described in a recent post, it uses a multi-device web page that enables all kinds of input (touch, mouse and keyboard) depending on device. And in the Companion Web experience, all all of these inputs can be used to control the connected screen.

What the other “modern” browsers don’t have that Internet Explorer 10 has is this snap mode. If there was one thing that iOS 7 should have copied from Windows (instead of all that flatness stuff) it would have been snap mode. So these Companion Web experiences will work across virtually all devices (because they use standard web tech) but the Xbox One will retain an advantage of being the only way to uses these “companions” on the screen simultaneously with other activities. And Polar, I think, has shown how this could become a really powerful feature.

The other two Companion Web experiments released so far do not make use of this snap mode feature. DailyBurn, see video below, uses a smartphone or tablet to get real time data related to workouts you view on your TV. This app is clearly trying to appeal to users who may need some constructive excuse to get an Xbox One.

Mix Party, introduced in the (purposely?) obnoxious video below, allows people at a party to create real time, collaborative playlists with their phones. As with Polar, the real time aspect of this is part of the entertainment value. I’m not sure if DailyBurn is intended as a solo experience or if multiple people could monitor their own individual performance of a shared video workout or not, but Mix Party and Polar clearly have real time, fact to face interactions in mind.

What is interesting to me about this strategy is that there are some extra capabilities that Microsoft has built into IE 10/Xbox One (and likely will build more) that will give it an advantage as an app enabled web TV platform, but the apps developers write will also work well on all devices. This strategy of “progressive enhancement” is a comfortable one to developers because it keeps their options open. Allowing for these entropic possibilities is a smart way to get developers on board, which, in turn, could be the means to Microsoft’s resurgence through the big screen.

Former Apple CEO John Sculley gives important advice to the BlackBerry. In a statement, he said that BlackBerry should change its strategy and stop producing hardware.

Sculley, who served as CEO of Apple from 1983 to 1993 said that BlackBerry should focus on developing a secure messaging applications. He also believes that by developing it, the BlackBerry can be developed and can be equated himself with the world renowned brands like BMW.

John Sculley himself known as a user of BlackBerry products. Even more recently, this time he’s using new products from BlackBerry, the BlackBerry Q10.

BlackBerry itself is still struggling in the smartphone market. Although they’ve launched a new smartphone such as a BlackBerry Z10, Q10 or Q5, a Canadian company that still has not been able to raise significantly the BlackBerry name.

SOA Software, a leading provider of API Management that helps businesses plan, build, secure, monitor and share APIs, announced today API Management for the IBM WebSphere DataPower family of SOA appliances. The new solution manages the full lifecycle of DataPower-based APIs and extends the capabilities of the widely deployed SOA Software Integrated Governance Solution for IBM DataPower.

This unified approach to managing both APIs and services extends the capabilities of DataPower infrastructure, enabling mobile and web solutions for internal mainframe and WebSphere MQ based services. SOA Software’s API Gateway, Lifecycle Manager for APIs and Community Manager have been integrated with DataPower, providing our customers a seamless API Management solution.

SOA Software’s API Management solution for DataPower goes beyond basic API management by offering management of the full API lifecycle. From plan, to build, to run, to share, the API Management solution provides the ability for customers to manage every aspect of both APIs and internal services using a single, comprehensive solution. With this new solution, customers can realize a complete API solution quickly and cost effectively.

“APIs present a challenge to IT organizations today,” said Alistair Farquharson, CTO of SOA Software. “SOA Software’s unique approach to API management on DataPower allows IT organizations to keep pace with technology advances presented by next generation mobile and web applications while benefitting from the same rich enterprise support we already offer customers today. Our solution makes managing secure, integrated APIs easy, whether a mobile app needs to securely access mainframe data or a web application needs to initiate a business transaction using WebSphere MQ.”

The SOA Software API Management solution for DataPower supports a wide variety of API standards including REST, JSON, OAuth and OpenID. It ensures interoperability with diverse backend systems through its support for SOAP and WebSphere MQ. It supports diverse security standards including SAML, Kerberos, LDAP, X509 and WS-Security. DataPower’s enterprise integration capabilities for APIs are further strengthened by SOA Software’s rich orchestration features, as well as its support for transformations including WebSphere Transformation Extender. Support for monitoring, metrics, service level agreements, and API access control all ensure API programs run consistently and predictably.

The API Management solution for DataPower enables rich communities for DataPower API developers and app developers through its developer portal. The developer portal lets API developers publish their DataPower APIs for app developers to find and consume. Social media features, API documentation, and integrated forums make it easy for developers to collaborate. Real-time system monitoring gives developers up to date status of their APIs and apps.

APIs help organizations expose critical internal business data to their customers to increase transparency and improve the customer experience. SOA Software’s API Management solution for DataPower lets DataPower customers use DataPower to secure and integrate their APIs within an enterprise environment. The result is a cost effective, full lifecycle solution for DataPower APIs that makes it easy to quickly yet securely expose internal resources to mobile apps and Web applications.

About SOA Software

SOA Software is a leading provider of Enterprise API Management and SOA governance products that enable organizations to plan, build, run and share enterprise services and APIs. Some of the world’s largest companies including Bank of America, Pfizer, and Verizon use SOA Software products to harness the power of their technology and transform their businesses. Gartner placed SOA Software in the Leaders Quadrant for the 2011 “Magic Quadrant for SOA Governance Technologies.”

Because created and designed by one company, hardware and software from Apple can work optimally and efficiently. One of the advantages are when we install OS X, we do not need to fuss looking for drivers for the Mac that we use.

Moreover, because the security system, not many viruses that successfully made to screw up OS X, though there is still malware that managed to infiltrate. It was not to screw up OS X, but rather aims to steal sensitive data or personal in the Mac.

While it is arguably efficient, we can still fiddling with that OS X running faster again.
Here are some things we can do:

Hardware side

T02-436-111-make. Upgrading memory up stuck. Output for Macbook Pro 2012 to the above, this is not possible, because the memory is soldered directly to the motherboard. Even so great a minimum of memory available is quite capable, which is 4 GB. 4 GB of memory is the minimum for all major applications in both heavy-and could not walk comfortably. The bigger the memory, the better.

2. Upgrade the hard drive. Mac can walk comfortably if enough free space available in the T02-436-make-12partisi existing OS X. In order to walk comfortably, should be available at least 30 GB of free space. If you use a heavy application sorts PhotoShop, AutoCAD, or the other, there are at least 80-120 GB of free space on my hard drive. So get used to the data stored on the internal hard drive external hard drives that can have empty space relief. If forced, upgraded hard drive to a larger capacity. If you can, use a hard drive upgrade to SSD. It is still expensive, but the performance is much more hurried.

 

Software side

T02-436-21a1-making. Repair Disk Permissions. Actually this procedure is to check whether the file status in accordance with the original. File status could change as the applications that use them have problems. As a result, the Mac can run slow or weird, such as the application of a sudden go out alone, running slower, slower booting, and other sebagainya.Caranya quite easily, run Disk Utility> click on the existing partition OS X it> click repair permission and wait until the process is complete. If you’ve done repair permissions, more afdol followed by a second step.

T02-436 T02-make-436-21b-21c-making

T02-436-22-fetched

2. Reset NVRAM. Non-Volatile RAM or NV-RAM is an OS X application and keep most of the settings that we often use. The goal is that we run the application on the condition that we use. But at a certain point, the NV-RAM will be full and will actually make the Mac went awry. How to reset the NV-RAM is quite straightforward, we turn on the computer and then we immediately pressing Cmd + alt + P + R and press and hold until dueng Mac emits three times.

3. Provide enough free space on the disk / partition OS X is. The trick is to move the data to another hard drive and remove any unwanted applications. With so many free apps available on the AppStore, maybe some of us a lot of the “greedy” to install the free application. In the end, many of these applications are not suitable for us and ultimately make the hard drive so full. Most applications are indeed living discard the application file to the trash. But it does not hurt to uninstall the application using software like CleanApp, AppZapper, CleanMyMac, etc..

T02-436-244-make. Clean desktop. Try not store any files on your desktop as this will slow down the boot. Each boot, OS X will prepare a file on the desktop that can be accessed at any time. If only one or two files it may seem, but we would feel if a desktop full of files.

 

T02-436-255-make. Delete unneeded languages. Mac provides multiple language that is easy to use by people from various countries. Surely we do not need all of the existing language. If only need English only, we better just delete the language that we do not need, especially when they take a big enough hard drive space. The easiest way is to use Monolingual which can be downloaded from http://www.monolingual.sourceforge.net. The trick is easy, just check the language that you want to delete and click remove.

T02-436-26a6-making. Turn off animation. When running the application, mac will display an animation that gives the impression that the application is open from the icon that we double-click the. When the mouse over the application icon in the dock line, the application automatically enlarges. Such animations can we Disable that Mac go faster. Run the System Preferences> Dock> uncheck the choice of animate opening applications. Also do not use the option of changing the existing wallpaper in System Preferences> Desktop & Screen Saver.

T02-436-make-26b

 

T02-436-27-fetched

7. Set the Startup Item. Some immediate applications come running when OS X booting. Check if there are applications that do not really matter that went along with running. I run the System Preferences> Users & Groups> and check the applications that do not want to run at startup.

 

Mac Monitor Every Time

After performing such optimization step above, of course, we should be able to monitor the Mac that is always in top condition. Some steps we can do include:

T02-436-31-fetched

 

1. Activity Monitor running. This application provides a complete and detailed information firsthand what is happening on the Mac. So when Mac was running slow and do not know why, we can run the Activity Monitor and find out.

a. Button to shut down the application. Once we click on the application process takes a wild and uncontrolled, click the button to turn it off.

b. Percentage of CPU used by an application. Applications that run normally just use cpu power is not more than 10%. More than that, the application will be considered illegal and should be turned off. Applications typically do not have errors and uncontrolled eating up 90% cpu power. No wonder Mac can be slow.

c. This is the part where we can see the other processes of the cpu, such as memory, disk activity, disk in use, and network. Some of them are equipped with a chart showing the current work process.

T02-436-32-fetched

 

2. iStat Menus. This application can display the information that we need in the menu bar, so we only glance we can determine the condition of the current cpu. This application can be purchased at macupdate.com costs 25 dollars.

 

T02-436-333-make. Daisy Disk. Very useful for hard drive clean up when we needed space. Daisy Disk folder instantly displays the big size, so we know which folder has a large file. Can be purchased in the App Store for USD. 95 thousand.

 

T02-436-344-make. Memory Clean. As we know, that we run most of the applications will be put into memory. The problem is, when we close the application, most will still be stored in memory. Over time the memory will be full and the computer was so slow. Used to be the only way to clear this memory just by turning off the computer or restart. Now we can use the Memory Clean with one click direct memory clean. Purge memory several times in order to get maximum results. Download it for free in the App Store.

Ultimate Typing™ software developer eReflect announced today that the software review website Boffin has published extensive reviews on the best typing tutor software for 2013. As the eReflect representative noted in today’s statement, the company is proud to learn of the high rating given to its product, and appreciates the suggestions and comments provided by this and other reviewers and customers. eReflect states that its goal is to provide the best possible product to users, and relies on such feedback to continually refine and improve its software.

In this most recent review, the Boffin team of reviewers examined four typing improvement software products and concluded that Ultimate Typing™ is the top choice for the review team, as the software includes features and technologies the other products lacked.

The Boffin software review team evaluated all typing tutor software products in terms of efficiency, help and support for users, instruction quality, user friendliness, and several other parameters. While each of the other software products reviewed lacked strength in one or more of these categories, Ultimate Typing™ had all these features and more, making the team’s decision as to the best typing software an easy one. The SoftwareReviewBoffin.com website illustrates the pros and cons of each typing software product in great detail so that interested users can get an accurate idea on how each software works and how it can improve their typing skills.

According to the Boffin website, Ultimate Typing™ was a clear winner as the top 2013 typing tutor software in view of its cutting-edge tools, impressive integrated technologies and its scientifically informed design and overall interface. The review team also highlighted that the software offers a great variety of activities, games, and practice difficulty levels, making it an appealing choice for people of all ages, needs, and learning styles. The Boffin team of reviewers also emphasized that unlike other software, in addition to its extensive practice material Ultimate Typing™ also has the most user-friendly interface making navigation easy, thus allowing users to focus on what really matters, improving their typing speed and accuracy. In today’s statement, the representative from eReflect remarked that the development team is quite pleased with this aspect of the review, as the interface was one area of product development that the software company put a great deal of time into.

The Boffin review concluded by mentioning that all top software products listed on the website are frequently reevaluated in order for visitors to have up to date information on the most efficient software products on the market. It was also stated that the actual differences between the top three software products selected were often rather minute and that once new releases or versions are published, the current ratings are likely to change.

About Ultimate Typing™

Ultimate Typing™ software is designed specifically for the improvement of typing skills. Created by eReflect, a world leader in e-learning and self-development software, Ultimate Typing™ has been informed by the latest developments in the science of touch typing.

Since its creation in 2006 by Marc Slater, the company has already catered to over 112 countries all over the world, offering products with the latest cutting-edge technology, some of which are among the world’s most recognized and awarded in the industry.

Watchful Software, a leading provider of data-centric information security solutions, will feature live demonstrations of its award-winning cybersecurity technologies at the Microsoft Worldwide Partner Conference (WPC) 2013 this week, July 8-11. The company will showcase how RightsWATCH and TypeWATCH prevent sensitive data from being disclosed inadvertently and unauthorized users from accessing your systems. Watchful Software is also announcing a global collaboration with SECUDE and Foxit Corporation to offer enterprises running on SAP a powerful end-to-end approach to protect business critical information regardless of its form or location.

“Often, data is being pulled out of a SAP system, and is being transformed into emails, documents, spreadsheets, etc. This transformation process creates the opportunity for data breaches,” states Charles Foley, CEO of Watchful Software. “The alliance between Watchful, SECUDE and Foxit product offerings ensures that SAP-based information is protected against leaks, loss or theft, even if it is outside of the SAP database or published into different formats. This combination gives enterprises an unprecedented level of security of their business critical information both inside and outside the SAP landscape, as it moves around the world.”

Those who stop by stand 1825 at WPC 2013 will be able to see how Watchful’s comprehensive product suite is capable of 1) educating users and training them to handle confidential information, 2) leveraging ERM and DLP technology to classify, encrypt and protect sensitive data from being leaked, and 3) leveraging state-of-the-art eBiometrics technology, to constantly ensure that the people using your systems are who you think they are.

“Data breaches aren’t simply a question of good versus evil; oftentimes, these breaches are a result of an error by someone who really had no intention of disclosing sensitive information. Moreover, we should accept that just because there’s a security policy manual does not mean that its readers are going to act accordingly. Experience has proven that they won’t,” states Rui Melo Biscaia, Director of Product Management at Watchful Software. “RightsWATCH delivers a powerful tool for classifying data, controlling access to that data based on its user clearance and classification, and ensuring that the end result is what the organization expects and demands.”

The WPC 2013 is a four-day global gathering of top Microsoft partners held in Houston, Texas, USA (08 – 11 July 2013).

About Watchful Software – www.watchfulsoftware.com
Watchful Software was formed in 2012 to address the requirement to protect an organization’s most critical asset after its people — its information. The company is staffed by industry executives with decades of systems, software, networking, security, and compliance experience to address the growing need for protecting sensitive and proprietary information against accidental or malicious theft, leakage, or loss. Leveraging key technologies including advanced encryption algorithms, digital rights management, and e-Biometrics, Watchful Software has developed a suite of solutions that ensure only authorized personnel have access to enterprise systems or can handle sensitive information, thereby protecting against the massive economic and competitive damage often done by cyber terrorists and information thieves.

CALIFORNIA – the official Android app store, Google Play, the latest re-print track record. Google announced that Google Play enlivened more than one million applications.

Reported by Softpedia, Friday (27/07/2013), it was revealed by Google’s Senior Vice President Sundar Pichai, a corporate event, Wednesday (24/7), local time. Pichai also revealed a number of other details about the Android app.

He claims the app store has reached 50 billion downloads and revenue developer time to grow 2.5 times more than last year. Other interesting information is that the level of activation of Android tablets expected to reach 70 million units by the end of this year. In comparison, according to Cnet, activation of Android tablets in the last year only 10 million.

At the same event, Google also announced two new products that have long awaited the Nexus 7 and the latest Android operating system, 4.3 Jelly Bean. The latest generation of Nexus 7 has better hardware than its predecessor, and also be the first device that uses the Android 4.3 Jelly Bean.

FULL-DAY WORKSHOP:

A full-day, duo-instructor workshop called Deliver Projects on Time™ With eXtreme Project Management® is now available to be scheduled for public or private classes. Not your typical re-explanation of thePMBOK® Guide or yet another “How to Be Agile” class, we’ve combined two popular full-day workshops, “Deliver Projects On Time, Every Time!” with Doug DeCarlo Group’s “eXtreme Project Management” into an accelerated, one-day workshop.

This is the only workshop that giveas you proven Agile tools to accelerate planning and on-time delivery for any project. One day, 8 PDUs, two instructors, and a “lively” way to learn! PMI member registration fees start at $299 (early bird). For more information, point your browser to http://www.DeliverExtremeProjects.com.

HALF-DAY WORKSHOP:

For folks that can’t spare a full-day workshop we’ve created a new half-day Project Managers Agile Boot Camp. The instructional material has been condensed to give you what you need to understand project agility in just under four hours. You’ll learn how to distinguish the characteristics between the PMBOK® Guide, traditional waterfall, and Agile (Scrum) approaches to project management. The workshop is facilitated by Ken Whitaker, an experienced project manager, software executive, instructor, and author.

The workshop is highly interactive, lively, and impactful. Attendee registration fees for the 3.5-hour of instruction is competitive priced starting at $159.

OTHER SERVICES:

In addition to workshops, Leading Software Maniacs provides consulting services as well as keynotes, eLearning classes, and no cost project management fun-filled videos. Please visit us at Leading Software Maniacs is a PMI Registered Education Provider.

Leading Software Maniacs, Deliver Projects On Time, Decision Pyramid, the Leading Software Maniacs logo, PM University, and PM Chalkboard are marks of Leading Software Maniacs, LLC. eXtreme Project Management brand project management and Project Acceleration Event are marks of The Doug DeCarlo Group, Inc. For PM Chalkboard and PM University: No claim is made to the exclusive right to use “PM” apart from the mark as shown. PMI, PMP, PMBOK, the PMI logo, and the PMI Registered Education Provider logo are marks of the Project Management Institute, Inc. All other marks not mentioned are trademarks or registered trademarks of their respective companies.

As one of the developers of the Glasgow Haskell Compiler (GHC) for almost 15 years, I have seen Haskell grow from a niche research language into a rich and thriving ecosystem. I spent a lot of that time working on GHC’s support for parallelism and concurrency. One of the first things I did to GHC in 1997 was to rewrite its runtime system, and a key decision we made at that time was to build concurrency right into the core of the system rather than making it an optional extra or an add-on library. I like to think this decision was founded upon shrewd foresight, but in reality it had as much to do with the fact that we found a way to reduce the overhead of concurrency to near zero (previously it had been on the order of 2%; we’ve always been performance-obsessed). Nevertheless, having concurrency be non-optional meant that it was always a first-class part of the implementation, and I’m sure that this decision was instrumental in bringing about GHC’s solid and lightning-fast concurrency support.

Haskell has a long tradition of being associated with parallelism. To name just a few of the projects, there was the pH variant of Haskell derived from the Id language, which was designed for parallelism, the GUM system for running parallel Haskell programs on multiple machines in a cluster, and the GRiP system: a complete computer architecture designed for running parallel functional programs. All of these happened well before the current multicore revolution, and the problem was that this was the time when Moore’s law was still giving us ever-faster computers. Parallelism was difficult to achieve, and didn’t seem worth the effort when ordinary computers were getting exponentially faster.

Around 2004, we decided to build a parallel implementation of the GHC runtime system for running on shared memory multiprocessors, something that had not been done before. This was just before the multicore revolution. Multiprocessor machines were fairly common, but multicores were still around the corner. Again, I’d like to think the decision to tackle parallelism at this point was enlightened foresight, but it had more to do with the fact that building a shared-memory parallel implementation was an interesting research problem and sounded like fun. Haskell’s purity was essential—it meant that we could avoid some of the overheads of locking in the runtime system and garbage collector, which in turn meant that we could reduce the overhead of using parallelism to a low-single-digit percentage. Nevertheless, it took more research, a rewrite of the scheduler, and a new parallel garbage collector before the implementation was really usable and able to speed up a wide range of programs. The paper I presented at the International Conference on Functional Programming (ICFP) in 2009 marked the turning point from an interesting prototype into a usable tool.

All of this research and implementation was great fun, but good-quality resources for teaching programmers how to use parallelism and concurrency in Haskell were conspicuously absent. Over the last couple of years, I was fortunate to have had the opportunity to teach two summer school courses on parallel and concurrent programming in Haskell: one at the Central European Functional Programming (CEFP) 2011 summer school in Budapest, and the other the CEA/EDF/INRIA 2012 Summer School at Cadarache in the south of France. In preparing the materials for these courses, I had an excuse to write some in-depth tutorial matter for the first time, and to start collecting good illustrative examples. After the 2012 summer school I had about 100 pages of tutorial, and thanks to prodding from one or two people (see the Acknowledgments), I decided to turn it into a book. At the time, I thought I was about 50% done, but in fact it was probably closer to 25%. There’s a lot to say! I hope you enjoy the results.

Audience

You will need a working knowledge of Haskell, which is not covered in this book. For that, a good place to start is an introductory book such as Real World Haskell (O’Reilly), Programming in Haskell (Cambridge University Press), Learn You a Haskell for Great Good! (No Starch Press), or Haskell: The Craft of Functional Programming (Addison-Wesley).

How to Read This Book

The main goal of the book is to get you programming competently with Parallel and Concurrent Haskell. However, as you probably know by now, learning about programming is not something you can do by reading a book alone. This is why the book is deliberately practical: There are lots of examples that you can run, play with, and extend. Some of the chapters have suggestions for exercises you can try out to get familiar with the topics covered in that chapter, and I strongly recommend that you either try a few of these, or code up some of your own ideas.

As we explore the topics in the book, I won’t shy away from pointing out pitfalls and parts of the system that aren’t perfect. Haskell has been evolving for over 20 years but is moving faster today than at any point in the past. So we’ll encounter inconsistencies and parts that are less polished than others. Some of the topics covered by the book are very recent developments: Chapters 4, 5, 6, and pass:[14 cover frameworks that were developed in the last few years.

The book consists of two mostly independent parts: Part I and Part II. You should feel free to start with either part, or to flip between them (i.e., read them concurrently!). There is only one dependency between the two parts: Chapter 13 will make more sense if you have read Part I first, and in particular before reading “The ParIO monad”, you should have read Chapter 4.

While the two parts are mostly independent from each other, the chapters should be read sequentially within each part. This isn’t a reference book; it contains running examples and themes that are developed across multiple chapters.