Announcing PDF Write

Announcing PDF Write – a new FREE iPhone app which allows users to easily create simple single page PDF documents using photos, text and a library of funny cartoon pics.

PDF Write was designed with ease of use in mind – so while it lacks some of the features of more advanced PDF editors, It makes up for it by being really easy to use. Double tap the screen to add new text of images, or touch one of the buttons. Then when you are ready to share the PDF, simply press the send button, to see a simple list of options.

Give it a try, let me know what you think – either leave a comment, or send me an email.

Can my iPhone app or Android app run Microsoft .NET Components?

The answer, surprisingly, is a qualified “yes”.

iPhone Apps and Android Apps execute in a Unix like environment – both are based on BSD Unix.

BSD is very like its better known cousin Linux, except that the license terms for BSD make it easier to customise – unlike Linux, with BSD you don’t have to make your modified source code public domain.

And .NET components can run on Unix (i.e. iPhone app and Android app environments), by using the Mono framework.

There are a few gotchas. Mono components will run slower than native components, and consume more memory – which can be an issue on memory constrained devices like mobile phones. So I would recommend against writing an entire app in Microsoft C#. In addition, some features won’t be wired up out of the box, so if you want to display a .NET XAML component on your iPhone app screen, you can look forward to a great deal of work.

But if you want to say create a native iPhone App or Android App, but embed a Microsoft .NET communication client component for talking to your backend system, then an embedded Mono system could provide a labour saving solution to your needs.

Mono also works on Linux servers – ASP.NET components can in many cases be run immediately after a Mono environment is installed on an Apache Linux system.

If you would like to know more about running Microsoft components in an iPhone app or Android app, please leave a comment, or contact Eric Worrall.

The $19 Billion Mobile App

Many of you may have heard of the sale of WhatsApp for $19 billion. None of the people who built the WhatsApp iPhone app and Android app will ever have to work again – $3 billion in cash and $16 billion in Facebook shares is a life changing experience.

What you might not have heard is that there is already a new challenger – Telegram app. Last weekend, according to reports, WhatsApp was down for 4 hours – for 4 hours the WhatsApp service was unusable. That is all it took to drive just under five million WhatsApp users to switch to Telegram app.

Telegram is similar in look and feel to WhatsApp, but its a little faster, and has Snapchat like security features.

If this rise and fall in app fortunes feels a little dizzying, you’re not alone in feeling that way. But there is one important take home message from this narrative: There is still room for a better communications app. And whatever you do, make sure your service is utterly reliable, because even a small break in service can cause substantial damage to your reputation.

Contact me if you have an idea for a communication app which you would like to discuss. I strongly recommend you download the hottest communication apps, both iPhone apps and Android Apps – Snapchat, Telegram, Whatsapp, and get a feel for what makes them so popular, while working on your idea. Because if you get the design of your new communication app right, the next billion dollar deal could be for you.

Why Android is still Second Best for Some

Thinking back to my old Sony Ericcson P990, back in the mid noughties, I would have loved to replace it with an Android phone.

The P990 was a geek phone. It had no battery life, but it had an amazing array of features. I once reconfigured it to use an international dial up internet connection, to post an email from a beach in Thailand, where no mobile internet was available (at the time). You can’t do that with a modern phone. But the P990 was in my opinion utterly unusable, unless you knew an awful lot about IT.

Compared to that, Android is a dream for ordinary users – most of the functions can be accessed without arcane messing with the settings, the app paradigm is simple and intuitive – what could be better?

The answer of course is iPhone. I tried switching my wife to an Android phone a few years ago, when she needed a new phone (I needed a new test device, budget was tight) – she hated it.

I had to buy my wife a new iPhone when she threatened to throw the Android phone out the window of the car. It kept stalling her, tripping her up with sudden eruptions of complexity, which she needed me to fix – something she never had to fear when using an iPhone.

Granted her phone ran Gingerbread, and new versions of Android are far better.

Android is good, many people use it and love it. Android Apps can do things iPhone Apps are forbidden from doing. An Android app can send email or SMS on your behalf (once you grant fairly scary permissions before installation), which opens a vast range of desirable functionality, such as apps which create personalised SMS messages.

Android apps can run background processes (iPhone is very limited in this regard, though less so with iOS 7), and Android apps have far fewer limitations when it comes to app store approval – so it is possible to configure Android apps and Android phones to do really useful tasks, which simply cannot be done on an iPhone, unless you jailbreak it.

But iPhone has one, towering advantage of Android – it doesn’t scare people. It doesn’t deter people who are uncomfortable with geek devices.

This in my opinion is the source of iPhone’s loyalty – people who don’t like tech, feel comfortable using an iPhone. This simple, powerful advantage is what makes iPhone special.

It remains to be seen whether Apple iPhone can maintain this advantage. Android is catching up – each generation of the Android operating system is a little easier to use, a little less threatening to people who can’t stand geek tech.

The next version of Android may be the breakthrough which levels the playing field.

Could Android Apps replace Microsoft Windows?

Today The Register, a major tech website, published news that China has discontinued its efforts to develop a Red Chinese rival to Microsoft Windows, Red Flag Linux. China loves Microsoft Windows XP so much, even Chinese government departments refused to give up their Microsoft Desktops, despite widely publicised suspicions that the USA uses hidden back doors in Microsoft Windows to spy on rivals.

The Chinese alternative to Microsoft was to be based on Linux. Linux is a terrific operating system. Linux is the dominant operating system in much of the server market. I use Linux extensively – when I am creating web technology server components for iPhone Apps and Android Apps.

However Linux never really made it as a desktop operating system. Outside of a few geeks, most people use Microsoft Windows or Mac computers. Linux never attracted a critical mass of desktop applications.

Or did it? There is a branch of Linux which did make it to the mass market – Android OS. All Android phones run Linux under the hood.

But Android is a phone operating system – what has this got to do with desktop computers?

It turns out that efforts are already underway to create a desktop version of Android. Android apps are very adaptable – they are designed to work on a wide variety of devices, with a huge variation in screen size. So making an app work on a desktop is not a big stretch – a small desktop monitor has a similar screen size to the largest Android pad devices.

Whether Android makes it on the desktop is still an open question – but unlike all previous attempts to displace Microsoft Windows, Android already has a very large, loyal following. Many people use Microsoft on their desktop, but have an Android phone, and love their Android Apps. The battle between Android and Microsoft for ownership of the desktop promises to be a popcorn event, rather than yet another Microsoft slam dunk.

So my advice to China – if you want independence from Windows, and the confidence of being able to examine and inspect every line of the code you are using, the solution may be right under your nose. Take a look at Android.

Should All School Children be Taught to Code?

Governments across the world are slowly waking up to the fact there aren’t going to be many jobs in the future which don’t involve a computer, or, given the pace of Robotics research, there might not be many jobs at all.

In response to this looming crisis, the UK government has decided to introduce mandatory software development lessons for all school children.

The problem is twofold:-

  1. Most people find software development intensely boring. The reason we are geeks, is normal people just don’t find fiddling with bits of code interesting. If you aren’t the kind of kid who enjoys spending hours building sophisticated model train sets or model airplanes, doing complex puzzles, or creating your own board game, you just haven’t got the mindset to code – it is not about whether you are smart, it is just that you will fall asleep from boredom before you learn anything useful.
     
  2. Governments and their advisors have no real idea what software development is, and have no idea how to teach it to others.

The tragedy is this desire to teach kids coding skills is motivated by a genuine concern for the future welfare and job prospects of the nation’s school children.

I have a few suggestions for politicians who want to help kids develop coding skills

  1. For pity’s sake, do not make the software lessons mandatory. By all means *expose* kids to a few coding classes, but allow the 99% of kids who find software coding intensely boring to drop out. Don’t poison their desire to be educated by adding what for most of them will be an unendurably monotonous subject to the list of courses they have to pass.
     
  2. Teach the handful of kids who are interested coding skills which are likely to be relevant – teach them to build Android Apps and iPhone apps.

    I am not suggesting iPhone apps or Android apps and phone handsets in 20 years time will be the same as they are today – they will be radically different. But at least start kids on the right path.
     

  3. Make it interesting – get kids to code and own apps which might actually make money. If a 14 yr old kid can create a world beating iPhone app, then anyone can – the very next app your kid codes could make millions of dollars.
     

My suggestions might not solve the looming future jobs crisis – but forcing kids to study something they can’t stand is not a solution either. In any case, there is reason to be optimistic about the future – many issues which in the past were seen as an urgent crisis rapidly solved themselves. Human ingenuity will solve this problem, just as it solved all the other problems we have ever encountered.

I refer interested readers to Scott Adam’s law of slow moving disasters.

If you would like to know more about how to develop Android apps and iPhone apps, or would like to discuss an app idea, please contact Eric Worrall.

If your app idea is not quite ready to go to a developer, please visit Apps Nursery, for expert assistance with exploring and developing your app idea.

Should Apple sell Android Phones?

Steve Wozniak, one of the original founders of Apple, recently stunned Apple fans by suggesting Apple should build Android phones.

“There’s nothing that would keep Apple out of the Android market as a secondary phone market,” said Wozniak. “We could compete very well. People like the precious looks of stylings and manufacturing that we do in our product compared to the other Android offerings. We could play in two arenas at the same time.”


My question – instead of building a separate handset, why don’t Apple allow iPhones to run Android apps?

From a developer perspective, it is technically easier to write Apple iPhone apps than Android apps. The Android App development system (the software used to create Android Apps) is much more difficult to work with than the iPhone App development system – the Android app system is more temperamental, crashes frequently, is fiddly (it often takes hours to figure out why your code is not compiling) and is really, really slow, especially when you are trying to test your work in progress Android app in the Android Emulator. So I am happy to write Android apps – but I prefer to write the Apple iPhone version of the App first.

However, there is no reason why Apple couldn’t fix all this.

Under the late Steve Jobs, Apple was unremittingly hostile towards cross platform development tools – tools which would allow say a Flash application to run on an Apple phone. But I have always wondered whether this prejudice against alternatives was because Jobs was emotionally attached to the NeXT tools he developed when he left Apple in the 80s – and brought with him, when a desperate Apple Corporation reinstated Steve Jobs as CEO. Jobs may have worried other cross platform technologies might displace his iPhone development environment, if he allowed other technologies on his iPhone.

However, aside from the software, Apple iPhone hardware is technologically very similar to Android phones – both Android phones and Apple iPhones use ARM processors, and have similar specifications. Apple iPhones have all the hardware they need to run Android Apps.

If Apple relaxes its software policy a little, Apple has a golden opportunity to be the best of both worlds – to utterly dominate both the Apple and Android app market, with one handset. To bring their design genius to the task of creating a market leading iPhone which can run most of the world’s apps.

Apple could even bring much needed improvements to the Android development environment. If the technically superb Apple XCode iPhone App development environment came pre-configured with the ability to create Android apps, nobody would ever bother using anything else.

Time will tell whether Apple seizes this golden opportunity, or whether the ghost of Steve Jobs keeps Apple loyal to the prejudices of their old master.

If you would like to know more about the difference between Android apps and iPhone apps, or would like to discuss an app idea, please contact Eric Worrall.

If your app idea is not quite ready to go to a developer, please visit Apps Nursery, for expert assistance with exploring and developing your app idea.

A Sure Fire Best Seller App

If the mobile app works, the reward could be millions of dollars, even hundreds of millions.

How do you create a successful iPhone or Android app, which generates vast wealth?

I knew the secret of creating a sure fire best seller app, I wouldn’t be creating mobile apps for other people, I would be creating sure fire best seller Android and iPhone apps for myself.

But I have learned a little along the way.

Consider the runaway success of app gaming – Angry Birds.

The creators of Angry Birds, Rovio, developed over 50 flops before they created the Angry Birds app – they almost went bust.

Were they stupid to create the flops? Were they doing something wrong, which they suddenly got right? Was Angry Birds the result of an epiphany, or was it simply dogged determination? Was each failure a learning experience? Did each failure teach them something? Or did they just get really lucky?

One thing we can safely conclude from the Angry Birds story, is that persistence improves your chances of success. If they had given up, say by the 50th failure, there would never have been an Angry Birds.

You also hear stories about instant success stories. One of my favourites is a simple physics game written by a 14 yr old kid called “Bubble Ball”.

Kid picks up a book on iPhone programming, and spends a couple of weeks writing a game. His mum helped him develop the game levels. The result – millions of downloads.

Even simple ideas sometimes work.

I might not have created an Angry Birds or Bubble Ball (yet!), but I have some useful advice to offer, Based on seeing which apps worked for my clients. The successes I have personally been involved in have all succeeded because of word of mouth.

Before spending your hard earned money, try to work out if the app is something you would tell your friends about. Is the app something you can’t put down? Is the idea something which your friends tell other friends about? Because ultimately, this excitement is what will drive an Android app or iPhone app to success.

If the mobile app works, the reward could be millions of dollars, even hundreds of millions. Its a big risk, but the potential rewards are life changing.

That is what keeps us all in the game.

If you have an app idea, and would like to bounce ideas off someone, to get it ready for development, please contact Apps Nursery

Contact Eric at eworrall1@gmail.com if you would like more information about mobile apps, iPhone apps or Android apps.

Announcing Apps Nursery – Mobile Apps Made Easy

Apps Nursery is an exciting initiative by Desirable Apps and Statuam to help people with a great idea for an iPhone, iPad or Android app to progress their idea into a working mobile app. The idea is to break development of the phone app into small, affordable steps.

For more information about this exciting innovation in app development, please see the AppsNursery website.

Can my Mobile Phone Mine Bitcoins?

Can my mobile phone mine bitcoins? The answer is yes and no.

Let me explain.

It might not surprise you that, like the rest of the world, I’ve caught a dose of Bitcoin fever. Bitcoins are a fabulously valuable digital currency which until a year or two ago almost everyone ignored – it was the province of geeks playing a game of imagining that a chunk of digital data which only they understood had some kind of real world value.

You could boast to fellow geeks about your hoard of Bitcoins, and your legendary Bitcoin mining rig, but you couldn’t use them to buy a pizza.

This all changed, when Chinese entrepreneurs discovered they could use Bitcoins to circumvent China’s strict currency controls.

With hindsight of course, it is all so obvious, at least to techies like me – we should have all been mining for our own hoard of Bitcoins, back when it was easy, waiting for that brighter future, when Bitcoins suddenly became valuable.

Because now it is too late – or is it?

The answer to that question really depends on whether Bitcoins become more valuable in the future – a question which could best be answered at some time in the future by exercising hindsight ;-).

So assuming you want to jump on the train, now that everyone wants a seat, what is the best way to mine Bitcoins?

In theory any computer can mine Bitcoins. But the difficulty of practical Bitcoin mining long ago surpassed normal hardware, and normal software programming techniques.

Techie bit…

Why is it all so hard? The reason is that Bitcoin mining involves “proof of work”.

What is “proof of work”? Proof of work is proof that you have put in a large amount of effort, to guess a number which, when used in a calculation, produces a result within a preset range. The calculation is a “hash” function – it takes a block of data (Bitcoin transactions to date), combines this block with your guessed number, and produces an output number. If the output number falls within a preset range of possible values, congratulations, you are now the proud owner of some new Bitcoins.

The catch is performing the calculation in a practical sense takes a lot of computing power – the calculation is easy, but unless you are incredibly lucky, you will need to process billions, possibly trillions of guesses to find an output number within the preset range of permitted values. Worse, the difficulty of mining Bitcoins is adjusted with time, so that the combined computing power of everyone attempting to mine Bitcoins produces a new batch of Bitcoins every 10 minutes.

Think about it – gigantic university computers, large industrial rigs, boffins tinkering in labs, the combined effort of all those machines can produce a new batch of coins every 10 minutes. Considering what percentage of this colossal global effort is represented by your mining rig puts everything into perspective.

And winner takes all – only the computing rig which wins the contest to solve the math problem gets the new coins (OK there are ways to share the risk and reward, but lets not get too complicated…).

It wasn’t always so difficult. Back in the old days, when hardly anyone cared about bitcoins, you could mine bitcoins with an ordinary computer – allowing the production of bitcoins every 10 minutes, when hardly anyone cared enough to bother mining, meant the target for minting new bitcoins was really easy – so anyone geeky enough to set up the software could hit the target with minimal computing power. This is why you nowdays hear stories of people frantically searching for their old hard disk, with its multi million dollar stash of bitcoins.

 

So in principle I could develop an iPhone app or Android app which could produce some Bitcoins. The mobile phone Bitcoin mining app would be very slow compared to specialised Bitcoin mining systems, but you could get lucky. In theory you run mining software say while the phone is plugged into the charger, and occasionally strike some Bitcoins.

Having said that, the odds of getting it right with a mobile phone are impractically small – you could run the mobile phone continuously, for years, without ever seeing a Bitcoin. A bit like buying lottery tickets.

What do you do if you want to join the Bitcoin rush?

The limiting factors of Bitcoin mining are equipment cost and electricity cost. Forget microprocessors or anything you are likely to find inside the case of an off the shelf computer – practical Bitcoin mining now requires specialised hardware accelerated Bitcoin mining cards.

But at the same time you need a normal computer to manage the communication between the specialised mining cards and the the Internet. The catch is, ordinary computers chew up a lot of power – and the computer has to be switched on, all the time you are mining for Bitcoins.

That is when this little beauty caught my eye – a low powered general purpose computer, with detailed instructions designed for non techies to follow, which works with a bunch of off the shelf hardware accelerated mining cards.

And here are the hardware cards mentioned in the Bitcoin tutorial.

Is it worth doing? My fingers are twitching. The analysis I have read says at current prices it isn’t worth doing, even with the super cheap rig I described – you won’t make your money back. But who would have believed a year ago that Bitcoins would hit a value of $700+ each? The cautious investor in me says that what goes up must come down – but if Bitcoins increase again, and reach a value of say $7000 each, or $70,000 each, I shall be kicking myself if I didn’t build or buy a mining rig.

Maybe I shall start small – perhaps I shall develop that Bitcoin mining mobile phone app after all.