Crack It! Android Game

Crack It! is an Android Game I’ve been working on (part-time) for nearly a year and it is nearly finished enough to be called a real release.

It has been on the Android market for a few months and is in the 100-500 downloads category which isn’t too bad for no real promotion.

It is a memory game with a little bit of a story on top, but the aim is for it to be competitive through the built-in online leaderboard, but also the ability to share scores through any medium you wish.

I hope to get the game finished with music, sounds and updated graphics within the next couple of months.

Any comment or critique would be welcome.

Crack It! Home Screen

Crack It! Game Screen

QR Code for Google Play

Offline Twitter and Facebook posting

[This has been sat in my drafts since Oct 2012...]

How often do you want to write a Facebook post, Tweet, upload a photo to Instagram etc. but haven’t been able to because of the lack of an Internet connection?

These kinds of actions are essentially messages that need to be pushed out when possible, with nothing on your phone waiting to receive anything back.

Wouldn’t it be great if the message sat there and went as soon as you did get a connection? And you could go and look at all the pending messages and cancel any that are no longer applicable?

Each app could do this itself easily enough. Most social networking apps have services that run in the background to refresh your feeds, why can they not also attempt to send messages periodically? I know the official Twitter app doesn’t, your messages just sit in your drafts until you find them days later (yes you get a notification but I like to keep them tidied up).

Alternately, I could write an app that let’s you post to Facebook, Twitter etc. that does do background sending, but why should you have to not use the app you want?

The best solution would be to have a system level service designed to send web requests when a connection is available. Every app could push messages into it then not have to worry. This could include sending emails, instant messages, status updates, weigh-ins, high scores and zillion other things.

If you think this is a good idea, blog, Tweet, Facebook post about it and link back to this blog post. If Google and Apple get the idea, maybe this will be in the next version of their operating systems.

Should we trust tools?

Those that are well versed in the English language will know that tools doesn’t just refer to “things that make jobs easier” like a hammer, or a search engine.

Tools also means the exact opposite when applied to people.

Below is a screenshot I grabbed while trying to check the Google PageRank for one of the sites I manage:

PageRank checker error

I think my crime here was to submit an https:// url as opposed to a plain old http:// one.

Their crime was to tell me to make sure I clicked the button properly.  Now I don’t have a fancy Apple pressurised mouse that responds most-bestest to licking, nor am I trying to click with anything other than my clicking finger, so I’m judging by the fact I got a response that my computer recognised the binary nature of what I was trying to do with that rectangle on the page.

So I refer back to the title of this post.  Should we trust tools?

Please comment with any similar things you’ve found, or even better – any times where you have managed to misclick a button on the web.

Patents are pointless

Apparently, Apple think they own this patent:

The use of a multilingual keyboard offering different alphabets on portable devices, including mobile phones

So something as obvious as using a keyboard on a mobile device (for which a keyboard is mandatory) that has the ability to switch languages is patentable? That’s like patenting the ability to zoom in on a camera on a mobile device. It’s so obvious that no one other than Apple would even think about patenting it.

I think I’m going to jump into this arena and patent “showing both text and images together on a mobile device” as I don’t think they’ve grabbed that one yet. I might also grab “rotating text upside down to show to a friend on a mobile device”.

Slide to unlock

NFC Payment Hijacking

I’ve had an evil thought. It wouldn’t be difficult at all to steal money from this scheme:

Pay By Phone

Imagine I get my own NFC stickers that direct to my own payment application and put them over the top of the ones mentioned in the article. People would think they are paying for their parking, but actually they would be paying me.

Obviously there are some flaws in this – there should be paybyphone branding elsewhere so a user with half a brain should realise something is wrong, especially if (at the time of writing) NFC is something new for mostly geeky types.

This looks to be a bit of a problem with NFC, but actually I could just put a sticker over the phone number and have people call me, then it would be much easier to present myself as another company.

Happy parking :-)

Ps. I’m not going to do it, and don’t condone this kind of fraud.

The Greggs Game #greggsgame

These are the official rules of the Greggs Game.

1. You must buy a sausage roll. No sausage roll and you lose.

2. If you get offered a carrier bag, you get a silver medal.

3. If they just give you a carrier bag, you win. And you must tweet it with the #greggsgame hashtag.

Personal Mobile Assistant

I’ve been thinking more about this natural language processing. I’ve taken moving an appointment as my example:

“Move my next appointment to 4 o’clock and send updates”

How would I process this?

I’d start by looking for a subject term – in this case “appointment”.  Then I would look for whether I’m processing a new or an existing item – “next” (without the word new, as in “new appointment next to” etc.) signifies an existing appointment.  So what do I want to do with it?  Delete, move, cancel, see / hear details?  Where am I moving it to? 4 o’clock – most likely PM.

This makes me think a lot of these tasks can be broken into flows like this, which would eventually look like a big tree diagram.

Surely you could then create some kind of interpreted language to build this tree, open it out to the web and have user submissions through some kind of web app, with peer reviews of each processing step.

Again, anyone want to join in and help?

A Close Call

I should have posted this back when it happened, at least October wouldn’t have been such a dull month* on here:

Note this is my first day back cycling after being knocked off….

* Is it ever actually not dull?

Is a server based app best for mobile processing?

As much as I think it’s a gimmick, I like the Siri adverts. Mostly because I like gimmicks. Anyone who knows me knows I will never buy an Apple product, so I’m looking for an Android alternative. The current front-runner appears to be Iris. I was looking through their blog, and found this post.

Their whole release flopped because the volume of requests took the server down.  Apparently natural language processing is hard and so needs to be done by the server, however the server has to handle thousands of requests, and there is a network overhead.  My phone is over 18 months old and has a 1GHz processor (HTC Desire) which is more powerful than a PC I had 10 years ago.  Dividing server hardware (even chunky servers) by thousands of users comes out at less power being allocated to me than my phone has.  New phones are dual core 1.2GHz plus, and there are rumours that phones around the corner will have quad core processors.

When building server apps at work, I’ve often wanted more processing power and have wondered about all the wasted processing power on the phone-monkey’s machines (this isn’t a derogatory comment – my day job splits me between being a code-monkey and a slide-monkey).  Folding@home is all about distributed processing power, so when security of data is less important offloading tasks can be hugely beneficial, especially if the data processing is easily split into chunks and you have a large user base.

Surely these two things can be pulled together…

What would I do if I was building this application (and I’m tempted to try – let me know if you want to get on board)?  I would first write my algorithm, making sure it could be coded in a number of languages.  I would then build and test a phone and server version.  Finally, I would route the processing to the optimal place – on a fast phone it would be done locally, and on a slow phone it would be sent to the server.  Simples.

The Most Annoying Thing About Insurance: The Cross-Sell

I recently renewed my car insurance. I have spoken to three people on the phone – the inital person that set up the policy (I had to phone to set up monthly payments, apparently they can’t do that online), someone when I paid off the balance in full, then an after-sales check-in (they called me).

Each time, I was offered advanced hire car cover – where I get a hire car if my car is stolen or written off (by default, you only get a hire car when your car is being repaired). This involves a long spiel, and they make it a point to check that I understand the massive implicatinos of not having a car for up to 3 weeks if I don’t have my car. “You added business cover to your policy, are you sure you don’t need it for work?” “Don’t you use your car for work?”

I know my own situation, and know that I have friends I can call on if in an emergency. Is that extra £20 really worth 3 people spending 5 mins each asking me about it? (Yes I’m that tight, although they might as well give it to me for free given how much they’ve spent trying to sell it).