It’s easy if you know how..
One of my children was given some homework. It was a maths problem to find words that would equal 100 if you assigned values to the letters, where A = 1, B = 2, C = 3 etc. It seemed like a fun thing to do and certainly got them thinking and doing a lot of adding up. However it did get boring quite quickly.
“There should be an APP for this!”, an increasingly frustrated child declared.
“Hmm, you’re right.”, said I
In truth, I guess I was a little bored myself and was perhaps casting about for something to do on my home Linux development box (everyone has one of those don’t they?). So I installed the latest Android Studio and got weaving.
Android Studio 3.2
If you haven’t checked out the latest development tooling for Google’s (you have to admit, brilliant) Android platform, then you are in for a treat. There is plenty to commend it. I like the balance between productivity features (like to outstanding way you can quickly build User Interfaces using the Layout Editor) and solid engineering principles. The tooling makes it simple to adopt good practice, like Dependency Injection and Test Driven development. There is also a wealth of well structured documentation, plenty of video tutorials and full blown courses, if you want to get your feet well and truly wet.
My UI is very simple, basically accept some use input, validate it and then display the result. Even so, I took the opportunity to play with the new ConstraintLayout features. Rather than laying out visual elements in a hierarchy, you can lay things out relative to each other. As well as being quicker to display on the device, I think it makes creating a responsive user interface, that is going to work on all the different Android devices, much quicker to set out.
The End Result
So a short while later I had the working, “Word Score” App built and deployed. It amused my children for a while, but not long enough to make me rich (it isn’t the next Flappy Bird I fear). It was, however, a good reminder that being creative doesn’t have to take a lot of effort these days.
If you want to try it, download it from Google Play. Absolutely no charge :)
The bottom line is that you can quickly build robust APPs and focus on solving the business problem - rather than worrying about all the technical difficulties. In my case I just had to do some summing up of integers to compute “word scores” :)
So my child showed the APP to a friend, who thought it was cool and wanted a copy, but
“They have an i-Phone…”
I bet I can create a cross platform version easily enough, what do you think? I sense a part two of this blog coming up at some point...