Why settle for Qt when you can have Qt 5.3?

This just in: Version 5.3 of the Qt Enterprise framework is now available for the latest release of the QNX Neutrino Operating System, version 6.6. It will also be available for users of version 6.5 in the coming weeks.

If you're new to Qt, it's a framework for creating cross-platform applications and GUIs. Which means you can write an application once and deploy it across a host of desktop, mobile, and embedded operating systems.

Supported platforms include Windows, Linux, Mac OS X, BlackBerry 10, iOS, Android, and, of course, QNX — and by QNX, I mean both the QNX Neutrino OS and the QNX CAR Platform for Infotainment.

This "write once, deploy across" feature is a big reason why many QNX customers, including those in the automotive, medical, and industrial automation industries, use Qt in their embedded projects.

New APIs, enhanced UX
According to the folks at Digia, the company responsible for the development and licensing of the Qt project, a lot of effort has been put into enhancing the overall quality and user experience of Qt Enterprise 5.3. For example:

  • Improved first-time user experience through better documentation and easier installation workflow
  • Greatly enhanced printing support
  • New Qt Quick controls, including a calendar, native dialogs, and improved styling support

But hey, you know something? Bullet lists of product features are a yawner, especially when you can see all the new features in this new video from Digia. Check it out:

To learn more about this new release of Qt, visit the new Qt 5.3 landing page.


BlackBerry unveils new project to help businesses derive value from IoT

A few moments ago, BlackBerry unveiled a series of initiatives, codenamed Project Ion, to help businesses easily connect people, devices and machines, and to derive value from these connections. Project Ion is a cornerstone of BlackBerry’s vision to offer end-to-end solutions for the Internet of Things, or IoT.

“As connectivity costs continue to fall and connected technologies become pervasive, a new market is emerging – the Internet of Things,” said John Chen, executive chairman and CEO, BlackBerry. “Billions of connections, generating trillions of transactions and exabytes of data daily, will require platforms that can operate securely on a global scale. No other company is in a better position than BlackBerry to provide the technological building blocks, applications and services needed to enhance productivity, improve real-time decision making and deliver on the vision of the Internet of Things.”

Project Ion will offer the resources necessary to access massive amounts of data from multiple disparate sources and distill it into meaningful, actionable information using open source and third party analytic tools. These resources include a secure public application platform, based on QNX software technology and BlackBerry secure enterprise mobility management, that will securely manage data from millions of end points across multi-device, multi-platform environments.

The project also encompasses facilitation of an IoT ecosystem as well as strategic partnerships, including membership in the Industrial Internet Consortium(IIC) and the Application Developer Alliance.

For the full story, read the press release.

And remember to check out Alec Saunders' post on the Inside BlackBerry blog.


The end of software testing? No, not really

Testing: no longer about establishing
the correctness of a system
A few years ago, I penned a whitepaper that contained these words:

    "No amount of testing can fully eliminate the bugs and security holes in a complex software system, as no test suite could possibly anticipate every scenario the system may encounter."

As it turns out, I wasn't whistling dixie. My colleague Chris Hobbs, who has forgotten more about software design that I could hope to learn in multiple lifetimes, notes that:

    "... a modern, pre-emptible, embedded operating system with about 800 assembler instructions in its core has more than 10300 possible internal states. To put this into perspective, the Eddington Number (the number of protons in the observable universe) is about 1080.

Don't know about you, but those numbers far exceed what my brain can grasp. And if that's not enough, the 10300 figure applies only to the OS core — it doesn't account for the huge number of additional states that are introduced when you start running applications and their supporting libraries.

So why bother with testing when you can only hope to exercise, say,
0.00000000000000000000000000000000000000001% of the system's possible states? It all has to do with a concept called confidence from use.

Rather than attempt an explanation here, I invite you to read a paper that Chris has published, titled "Testing as a road to confidence-from-use". Chris not only explores the concept, but discusses the degree to which confidence-from-use data gathered on one version of a system can be applied to a slightly modified version. Recommended for anyone interested in software testing or reliability.