Category Archives: Software Engineering

Android’s 64-bit requirement puts pressure on Adobe

UPDATE: Enter the Harman – Since writing this post, Samsung subsidiary Harman finally waded in to announce they will take over development of the AIR platform on a commercial basis. This should bring better support and more frequent updates, as a commercial model for AIR makes more sense than as a vanity project for Adobe. Read the community’s feedback here.

And Harman have just released their official AIR SDK version 33 with 64-bit support for Android!


 

Google recently reiterated that, when Android Q launches, they’ll start enforcing a requirement for all Android apps using native code to provide a 64-bit version as they phase out 32-bit support. As you’d expect, this has far-reaching implications for app developers, depending on the languages and libraries they use – particularly for Unity and Adobe AIR developers. Continue reading Android’s 64-bit requirement puts pressure on Adobe


 

Optimal scrolling for 2D games or UIs

I recently stumbled upon an old bit of code which demonstrates a technique I created for an efficient scrolling data grid on the YouView TV platform. I call it ‘Blit Scrolling’. Below is a demo of the concept – click on the window and use the arrow keys to scroll around (Flash required):
Continue reading Optimal scrolling for 2D games or UIs

Boosting Unity performance on mobile devices




Mobile devices are becoming more and more powerful. However, not all your users will have high-end mobile devices, so you should keep a low-powered device handy for testing the performance of your games.

Here are 10 ways not usually mentioned on how to improve mobile Unity performance. The usual advice (use low-poly models, minimal lights, few effect, etc) is good. But if you still need need to increase performance, try these tricks: Continue reading Boosting Unity performance on mobile devices

How to verify that something implements an interface with Mockito

If you want to write a unit test which verifies that something implements a particular interface, or extends a particular class, here’s how…

Continue reading How to verify that something implements an interface with Mockito

Sneaky tricks for developing on small devices: ‘Bitmap Folding’

One of the most problematic constraints when developing applications for resource constrained devices, such as mobile or Set Top Box is ‘video memory’.

You often will not have control over how much video memory is allocated to your application, or what the fallback behaviour is when your application uses too much. Continue reading Sneaky tricks for developing on small devices: ‘Bitmap Folding’

YouView – Smart TV UI

YouView is a Smart TV service in the UK, a spin-off of a BBC RnD project which runs on Set Top Boxes and certain Smart TVs. I worked on the core UI for years and thought I’d share some insights into best practices when building applications for such resource constrained devices.

Continue reading YouView – Smart TV UI

CODING WRONGS – Where do I start with the bad?

It gets scary out there sometimes. During my freelance career I’ve worked at a lot of different companies and have seen such coding horrors as you cannot imagine. So I thought I’d start immortalising some of them – so that we can all learn better coding practices, by looking at the bad.

Starter for 10 – What’s wrong with this picture?

Did you spot the fubar? It’s not an obvious one. Continue reading CODING WRONGS – Where do I start with the bad?

Loan Shark – fast object pooling utility

LoanShark AS3 Object Pooling UtilityA couple of years ago, I created an object pooling utility for a games project I was building in AS3. Since then, I’ve used it quite a few times, in order to speed up apps and improve resource management, easing the load on the garbage collector by reusing objects instead of recreating them. Continue reading Loan Shark – fast object pooling utility