And it’s ‘goodnight’ from him…

After three years of writing here several times a week, I’m going to take a bit of a break from this blog. I’ll be blogging for Develop Online and Mobile Entertainment each week (sponsored by Intel), and this blog will be updated occasionally, but I won’t be able to dedicate the time to it that I have in the past. I know that a lot of people find the archive useful so the blog will continue to be live for the foreseeable future.

I’d like to thank everyone who helped with comments, links, tweets and story ideas or even just by popping in to see what I’ve written. It’s been a lot of fun and I’ve learned a lot along the way.

To finish, here’s a list of the 30 most popular posts over the last 12 months. It’s measured by traffic received over the last 12 months, and includes all posts so some might be from previous years. It includes two free books, a game, and tips and tricks on parallel programming, Android and HTML5. If you’ve just found this blog (you’re late, but welcome!), you can dip into some of its most popular content here:

  1. Building (and optimising) the LEGO Universe
  2. Which is the best language for parallel programming?
  3. Could Ada be the answer to our parallel programming prayers?
  4. Google uses fractals to show off parallel processing in Javascript
  5. How to get a job in parallel programming
  6. A great online Flash game for programmers
  7. How Office 2010 takes advantage of multicore hardware
  8. Download free book from Intel about creating apps
  9. Achieving parallelism in Fortran 2008 using Coarrays
  10. Facebook releases its C++ library as open source
  11. Download free parallel programming course from MIT
  12. Monetising Mobile: How can free apps make money?
  13. How to write multicore games for PS3, Xbox 360 and PC
  14. How to speed up video processing with Intel Media SDK
  15. Download a free parallel programming book from National Academies Press
  16. ISTEP 2012: Get some good advice from Intel
  17. Monetising Mobile: How Shazam achieved 75 million downloads
  18. Intel releases Ice Cream Sandwich Android emulator
  19. Microsoft discontinues Software Transactional Memory experiment
  20. New standard for C++ supports multithreading
  21. Intel smartphone outperforms market leaders in benchmark tests
  22. What’s the difference between an Ultrabook device and a tablet?
  23. Multithreading and HTML5
  24. How Football Manager uses multicore
  25. An intelligent approach to artificial intelligence
  26. Parallel programming in C++ gets a massive boost
  27. ISTEP 2012: Why Fortran?
  28. How Civilization V built its empire on multithreading
  29. Free tool to measure your battery use on Android
  30. Angry Birds, Cut the Rope, and the wonders of HTML5
  31. Plus a bonus entry (because it’s my favourite headline): ISTEP 2012: MIC and the mechanics

And with that, it’s goodnight from me!

The Power of Open Source

Sometimes open source can be a misunderstood part of the software industry – is it made up of developers that are working for free? Or are these developers getting a free education?  Do we have any idea how many people are developing using open source? A recent article by analyst house Forrester showed that five out of six developers today use or have used open source tools or deployed open source software in their projects. This helps show that there is definitely a market out there for open source

It seems that in the span of a little more than three decades, open source has transformed entire industries. Intel has been a catalyst of this transformation, and it remains a vital foundation. Check out this short animation to see how Intel has helped unlock opportunities.

Good news! In order to inspire more fresh ideas, accelerate innovation, lowercost, and ultimately deliver exceptional user experiences Intel is extending its support to the open source communities.  Here are a few whitepapers that offer guidance on open source:

To find out more about what Intel is doing in open source, visit Intel’s open source website.

What makes a great Ultrabook app?

Lots of people will be hoping to find an Ultrabook device under their Christmas tree this year, so the new year presents exciting opportunities for developers to create killer apps for this new platform. What will make a successful Ultrabook app? Developers will need to satisfy users’ expectations that good software will enable them to make the most of their new device. I’ve found an article that highlights the four vectors of Ultrabook development, which are the main differentiation factors of the device. They are:

  • Touch and sensors: Ultrabook devices incorporate a range of sensors including multi-touch screens, GPS, accelerometers, orientation sensors, inclinometers, and ambient light sensors. Users will want to see apps that make the most of these features, so think about how you can incorporate them to give people more intuitive ways to interact with your app. See Intel’s advice on using touch and sensors in your programs.
  • Power: The Ultrabook device is built to provide more than six hours of battery life, but software must work with the hardware to ensure optimal battery performance. Users will reject apps that sap the battery unnecessarily, and will prefer to use apps that enable them to exploit the full power potential of their device. See Intel’s advice on achieving power efficiency on the Ultrabook device.
  • Performance: The Ultrabook device uses third generation Intel Core processors with Intel Hyper Threading Technology, which means you can use multicore programming to achieve superior performance. I’ve written extensively about multicore programming on this blog in the past, so you already know I’m a fan of it, and it will be essential to achieve the best performance for the Ultrabook. See Intel’s advice on optimising performance for the Ultrabook device.
  • Graphics: The second generation Ultrabook devices incorporate Intel Core processors which have a microarchitecture that includes Intel HD Graphics, so the CPU and GPU are on the same die. This creates fantastic opportunities for game developers to build immersive and exciting graphical experiences. See Intel’s advice on developing graphics for the Ultrabook device.

Debugging Android applications on Intel Architecture

We would have gotten away with it, if it hadn’t been for those pesky bugs! They say that writing is rewriting, and perhaps programming is debugging. At the very least, it’s a vital part of the quality control process. There’s an insightful and detailed article about debugging Android apps that might help you to get your code working if you’re testing your apps on Intel Architecture.

The piece is written by Tao Wang from Intel and covers setting up the debugging environment, using the Intel Hardware Accelerated Execution Manager to speed up Android app emulation, and debugging with the GNU debugger. It also covers our old friends the Intel Graphics Performance Analyzers, which now support Android devices so you can optimise your graphics workloads. There’s a section near the end about debugging the device driver and system software stack layer too, which highlights some of the differences between ARM and Intel Architecture which might cause system-level issues. Finally, the article looks at considerations for Intel Hyper-Threading Technology, where the debugging challenges are similar to true multicore debugging.

If you’ve got a bug in your app that needs squashing, try Wang’s methodology and recommended tools. They might save you a lot of time.

Join the beta for new HTML5 development environment

A new beta programme has begun for the Intel HTML5 Development Environment, which helps you to efficiently build HTML5 apps that run on multiple platforms and devices. The app is cloud-based, and it only works with the Google Chrome browser.

Clearly, Intel is hoping you will use it to make apps for Ultrabook devices and for Intel-based Android devices, but the joy of HTML5 is that you can use it to make apps that run anywhere, including as native apps if they are compiled using PhoneGap. That means you can tap into the widest possible market, irrespective of what your primary development target is.

It’s an interesting shift to go from a desktop-based IDE to one based in the cloud. Some might appreciate the ability to log in and work anywhere, and the ease with which updates and examples can be accessed. Others might be nervous about the idea of depending on a network connection to get work done. What do you think?

If you’d like to take part in the beta, you can apply at Intel’s HTML5 community. Click the tools tab and then request access to the beta programme. Spaces are limited, so if you’re serious about HTML5, sign up now!

‘Tis the season to get touchy-feely

The number of ways you can interact with your mobile devices has expanded further in 2012 than in previous years. This year we have seen convertible laptops hit the market, which turn from a PC into a tablet in one careful snap. New sensors like gyroscopes, compasses and accelerometers have arrived to give us more scope to be creative with our tech.  At the same time as our devices are changing, we have changed the way we use apps on them. And more importantly, what we expect from our apps.

The new sensors and features on devices are ripe for exploitation by developers. Without sounding too much like a teacher, we need to make sure we help this technology reach its full potential. By embracing the new functions and models available, we can develop the apps of the future: the ones that people are talking about.

Back in May this year Intel launched the Ultrabook™ Experience Software contest with exactly that in mind. They ran a six-month competition to see how developers could integrate sensor and touch features into apps; new or current.  Over 250 developers from over 20 countries submitted innovative app ideas, and 30 developers were taken forward to the next stage. Intel provided the resources, examples and samples, and the chosen 30 used their imaginations and coding skills to run riot. In a few months, they brought to life a host of varying ideas that exploited the new sensors: touch and gesture. These designs all had the Intel Ultrabook at the heart of them and made sure to bridge the gap between PC and mobile devices by making an app that worked on both.

Three winners were crowned, and given prizes to reflect their outstanding efforts, having demonstrated unparalleled skills and inventiveness in their software designs. The top three are:

  1. “NUIA Imagine” – Silke Oberle (4tiitoo AG): an application that helps you organise your vacation pictures in a very intuitive manner via touch and voice recognition
  2. “Day by Day” – Ercan Erciyes: a lifestyle application that helps you organise your day with the help of touch screen
  3. “Live Ball” – Ivan Petrovic (Finalhit Ltd.): a touch and sensor friendly ball game.

From a developer’s point of view, this ever-expanding range of form factors with new features is an opportunity to create something different. Creating hybrid apps could be the key; write once but compatible anywhere. Just make sure the one app you write includes the functionality to let it translate across as many as possible devices.

Merry Christmas from Intel

Intel is sponsoring the Android Christmas party at The Counting House this Thursday – an informal evening of food, drinks, and Android chat. Kicking off the evening, there’s going to be a quick presentation on developing apps for Android on Windows 8 and Ultrabooks. I’m looking forward to finding a bit more about this from Intel, and hearing how the rest of you are planning on using the new Windows 8/Ultrabook features to assist with your developing.

There’s going to be beer, wine, soft drinks and a buffet so we can all eat, drink and be merry. It’s all on the host – so thanks, Intel!

You can sign up to say you’re coming here. Looks like there’s going to be a big lot of us so make sure you arrive on time as places are limited.

Make your way to Bank, Liverpool Street, Cannon Street or London Bridge and head to the Bank of England in the city centre. The Counting House is just opposite.

See you there!


Get every new post delivered to your Inbox.