Wednesday, 19 February 2014

RoboCop Film Review

As science fiction the film was excellent exploring themes such as machine versus human intelligence, machine control over life or death decisions and the moral ethics of cyborg technology. As a RoboCop remake, it just paid lip service to the original and made the overall plot very clunky. The characters were flaccid irrelevant versions of their earlier counter parts. The satire of the original replaced with a biased mainstream media mouthpiece, played by Samuel Jackson, who frankly was just annoying.

The film starts showing ED-209's and other robotic soldiers patrolling around Tehran, the overtone was clearly American Imperialism. During a live television interview a band of locals launch suicide attacks at the ED-209s, an irate Iranian kid with a bread knife then confronts a massive ED-209 which quickly decides he is a threat and the kid is promptly blown away. I don't know why but I chuckled!

Apparently these cold killer droids operate all over the world, but not in the USA because America is special (puke!) and a certain senator says he doesn't want machines making life or death decisions. This simply serves as a cringing plot point so that OCP, the big bad ass corporation, have to come up with a cute lovable cyborg version of the killer robots.

In the earlier film it was fascinating seeing through RoboCop's point of view as he was being made, the booting up, the scientists fixing him and Bob Mortimer getting his hand crushed - "You're gonna be one bad motherf*****". In this version Murphy wakes up confused from a sweet dream but then panics when he realise he's a machine. Gary Oldman who plays the Frankenstein chief Scientist tries to calm his creation down but lets him roam out of the lab. This is clearly not Detroit as he wanders through a huge Foxconn like manufacturing plant in China. A prescient politic touch showing how economic power and technological prowess has moved out of places like Detroit to the Far East.

The film delves in to the robotics and science of the cyborg tech which is great. You are shown how RoboCop is put together and that the only human part is the brain, face and lungs. Unfortunately the human part makes RoboCop slower than the droid soldiers and so the chief scientist comes up with a clever trick. During combat computer control will take over but the human subconcious will think it is making the decisions. Considering that the movie started out by making the case that a human needs to be pulling the trigger, the legal and moral implication that a machine is still in control is skipped over. Hmmm! The Seargeant at Arms in this segment is the only character I liked, with his gung-ho attitude and jokes about RoboCop being a Wizard of Oz Tinman.

Over at OCP headquarters the marketing guy is wetting his pants over the feedback from the Robocop focus groups. Michael Keaton, the CEO, puts his infinite wisdom into action and demands to see a more tactical makeover, make him black. These pair ain't no Dick Jones or Bob Mortimer, think more Laurel and Hardy, here the film begins to disappoint.

There's no Clarence "Can you fly Bobby?" Bodicker, a very nasty vile bad guy, up there with Christopher Walken in a View to A Kill. In this remake all I can tell you about the villain is that he had weird gingery sideburns. The criminal element is just a sub-plot to explain how Murphy was killed and they are quickly dispensed with when RoboCop gets going. This means ultimately that Michael Keaton's (can't remember his character's name!!) characters only crime is that he ordered RoboCop to be switched off whilst he told Murphy's wife some porkies that he had died due to a malfunction.

Needless to say, RoboCop isn't going to die. Cue 15 minutes of cartoonish, low violence CGI as RoboCop hops around ED-209s. Yawn. No bad guy falling into toxic waste here and getting splattered. Just Keaton panicking and then getting shot. In the finale, a battered RoboCop is rebuilt ready for a bunch of sequels.

Considering we now have drones that kill people and companies like Google (Cyberdyne Systems?) moving headstrong into AI and robotics, we are quickly approaching the AI singularity. This film asked important questions about superior machine intelligence, its application and the moral implications it will have. One slogan in the film said "People Need Jobs Robots don't". Here we have a great sci-fi film clumsily shoe-horned into a RoboCop retelling.

I'd wouldn't buy that for a dollar!
Pig Dog Bay

Thursday, 13 February 2014

Mortgage Calculator

My first ever app has been re-released, Mortgage Calculator. Faster-Easier-Better Looking!

  • New exciting background colours.
  • Fast data entry - no typing
  • Share details with other apps such as text messaging
As you can see the App now uses number pickers. These are the same intuitive custom controls as used on the successful Weight Tracker app.  This makes the data entry fast and free from typing. Notice too that the monthly repayment is instantaneously calculated.

A slightly embarrassing bug fix to mention tho, the mortgage formula I used previously was incorrect.  Amazingly the BBC Mortgage Calculator  I checked it against, gave the same answer as the faulty formula. The BBC mortgage calculator still hasn't been fixed yet!!!

One feature which I think will be very popular is the Share option. You can send the mortgage details as an SMS text message, an e-mail or to a social media app if you have any of these apps installed.

Download Mortgage Calculator from Google Play

Pig Dog Bay

Tuesday, 11 February 2014

Flappy Bird

I recently posted about a national scheme, Year of Code that encourages people to get into coding. I bet Flappy Bird will have a bigger impact than Year of the Code, because the game earned $50,000 each day and it took only 3 days to code (as claimed by the developer) . There must be an whole bunch of people out there thinking $50,000 a day for such a simple game!

If you are a novice programmer, welcome! Don't get disheartened when you realise it's going take you longer than 3 days! Heck you'll spend a week getting Eclipse and Android SDK up and running. Most disheartening of all is that apps better than Flappy Bird will get hardly any downloads and earn a pittance, in fact this is the case for most apps on the market. Why some apps go viral is a mystery and seems more like a lottery.

To see how long it takes to create an Android game, I considering creating an App based on the Atari Classic Dodge 'Em.

Before I begin, I need to consider the following:

  1. How will the user control the car, on screen buttons, swipe or tilt? I will have to spend a lot time play testing to see what works best.
  2. Clearly the graphics need to be updated, I'm pretty poor at graphic design so I still need to keep it simple, I think I can manage with Dodge 'Em tho!
  3. Shall I use a game engine or roll my own. Either way I've got some learning to do.

And lastly I need some spare time!!
Pig Dog Bay

Thursday, 6 February 2014

Robocop App

In commiseration of the unnecessary remake of Robocop, RoboQuip is back!

Its big! Its back! RoboQuip! A Pig Dog Bay Tradition

Featuring a whole new user interface - see the quotes appear as Murphy would see them! 

See the quotes scroll up the console!

Not since the days of the ZX Spectrum has a RoboCop app been this good!

Serve the public trust

Now take laughing boy here and download RoboQuip. If Bobby had this App he could have flown!

Stay out of trouble!

Good Apps are where you find em. Give the man an App!
Pig Dog Bay Cop!

Tuesday, 4 February 2014

Learn to code in a week?

Listening to Radio 4's Today program a nice lady was promoting her course on coding skills and explaining to the presenter (who always plays devil advocate) why people should learn to code. She whetted appetites by promising that in one week you can build your own website and create your own app!

The problem I have with courses like this is that they give rise to the misconception that programming is easy and you'll be knocking out apps / websites in no time. People ask me to write a games app, I explain its very hard to write a decent game and they look positively shocked when I tell them of the 100's of hours I've put into my crossword and weight tracker apps.

Books like learn Java(or whatever) in 24 hours or week long courses are very useful and provide a quick route into a technology, but it takes much further study and practice to understand  a programming language to a competent level. I find it best to cut my teeth on a project to learn a new language properly.

Programming maybe easy, especially if you follow a sheet of instructions on a week long course but coding is just one part of producing an app or website. Consider for instance what you need to write an app.

1 Design

First you need a pen, paper and an idea. You need to sketch out a few screens of your app and consider how the user will interact with the app. For my Crossword Solver app I had to consider how the user could perform various searches and make it intuitive to use.

Second you will need to know how your app works, if its a game what are the rules? I had to develop fast search algorithms to search a list of 280,000 words for my Crossword Solver app. At the very least you will have to do some research, it took me quite a while to find and compile my 280,000 word list!

In practice you will hone the design over time, certainly longer than 1 week, usually over  many months or a year. I spent several afternoons just tweaking the background colours of my apps to get them more pleasing to the eye. A year after my Weight Tracker app has been released I'm still getting requests for new features.

2 Programming

You can now put your 'week long' programming skills into use. Slowly your app will begin to take shape. Each chapter may have only taken several hours in the 24hrs book, but oh boy you'll be spending many wasted hours just fixing irritating little bugs, trawling Stack Overflow for answers.

'How do I change the colour of my button when it clicks?' cue an afternoon of unexpected learning about how an Android button works. You will spend lots of time learning how to do the small things, never mind about network sockets or 3D graphics.

3 Testing

This is the most important step and its one that even professional (well they get paid) software engineers cop out on. Users will crucify you if your app does not work, no matter how pretty it looks. I combine steps 1,2 and 3 into weekly cycles. A bit of design, code it up, test and then put out a beta release. When I happy with my app, I put the beta release into production for folks on the market to download.

Doing weekly release cycles means you can keep everything in check, it would be silly to design a space pirate trading game with FPS elements only to find you don't have a clue how to write all the code, graphics and sound required.

Testing also means asking other people to try out you app and give their honest opinion, the Google Play store allows users to provide feedback, pay attention to their comments! Your app sucks and I guarantee it will need re-working as it takes time and effort to get it finally right.

4 Hello World!

Your website is snazzy but no one visits, your app is brilliant but no one downloads it. It is a cruel world. Prepare to spend as much time promoting your app as you did creating your app. See my previous blog post for some of my marketing efforts.

Then for all your hard work, a little pocket money would be nice, and it is little! I spent a lot of time creating In App Purchases that no one purchased, which in the end I had to pull them. My Weight Tracker app earned pennies from ads each day, so I pulled all advertising as it wasn't worth annoying my users with ads they never click. See my post Why Android Sucks for more details.

Marketing and making money is hard work but even if you work as a software engineer in a company (unless you are a lowly code monkey), you will still need to discuss requirements, create project plans and manage field trials.

In Conclusion

Programming is hard and very time consuming, programming languages are just one aspect of software engineering. A course that shows you how to build an app in week is basically about following a set of instructions. I'm no carpenter just because I can put flat pack furniture together!