So, here's a question.

Why is my phone so useless?

I'm a fairly experienced programmer.

I have the Android developer tools. And I have this amazing, and by any reasonable historical standards, insanely powerful computer in my pocket.

So is it so useless?

Why do I still not have the kinds of software I use every day on my computer on my phone?

Why no MindTrafficControl or ProjectThoughtStorms type software? (Beyond the old OwlDroid which I never put on the phone and probably wouldn't work. (Well there is now CardiganBay which is intended to be used on tablets.)

Why not the music toys I actually want to develop and play music with?

Why not all the kinds of things I still dream about?

Instead my phone is basically just a client to Quora, TeleGram, GMail and TheGuardian. Sure, this has some value to me. But it's a huge wasted opportunity. Not to mention that I've written 7000 questions on Quora over the last 8 years. Partly because I don't edit ThoughtStorms on my phone.

So why don't I write the software I want?

It's not exactly lack of skill. I lack skills, but these are skills I have no doubt I could learn them in principle. I can write Java. I love writing ClojureLanguage. I looked at KotlinLanguage and have no doubt I could write it.

It's not exactly lack of time or resources. I have enough time if I'm focused. And I have a perfectly valid laptop and a good enough phone.

It's not lack of other tools. I have AndroidStudio (resource hog but it runs) and the ability to put Clojure code on my AndroidOperatingSystem phone.

So what is the reason?

That's what this page is to figure out.

Here are some thoughts ...

1) The screen is still a bit small. (Need to work out good UI paradigms for it ... desktop / browser ones don't translate)

2) Synchronization is (still) a bitch :

  • either use public cloud. (Eg. DropBox etc.) but privacy issues
  • or host own cloud (what standard? How easy is hosting? I'm a bit off OwnCloud etc. since my WordPress / PHP accounts got compromised by malware) I'd like something NOT PHP but still easy to host.
  • self-hosting still brings up other security issues ... ideal is encrypted on server by decryptable on all devices
  • 3rd party tools on phone (eg. BTSync / SyncThing etc. not perfect ... mainly because Android is really hostile to different apps. sharing the same files. This automatic syncing is slow / unreliable.
  • explicit sync (eg ssh into phone from desktop ... a pain

3) Did I just mention sharing files between different apps is discouraged. This makes the kind of small tools approach I favour hard.