Click Here to Request a FREE Quote to Develop an iPhone App or Android App

Blackberry to force YOU to pay for their app mistakes

The failed mobile app platform that wants to force you to help
The failed mobile app platform that wants to force you to help

Blackberry has outrageously demanded that app developers be forced to support their platform, at the developer’s expense – that whenever a mobile app is released, app developers should be forced by law to also release a version of their app for the Blackberry platform.

In the late 90s, Blackberry was a popular platform. But they lost their crown to Apple and Google Android, because there was one crucially important aspect of their business which Blackberry neglected – their app developers.

Developing for Blackberry was difficult and expensive – from memory, you had to pay thousands of dollars for the Blackberry development environment, then you had to pay hundreds of dollars when you submitted a mobile app, for Blackberry to evaluate it. As a result, hardly anyone developed mobile apps for the Blackberry platform.

When Apple iPhone exploded onto the scene, Apple’s focus on encouraging mobile app development gave their iPhone platform an unprecedented level of versatility – and swept previous incumbents like Blackberry from the field.

If you were CEO of a company which had just been so soundly outcompeted, what would you do?

The obvious solution, you could attempt some product innovation, you could try to find a way to tempt consumers back to your brand, by addressing its shortcomings.

Or you could do what Blackberry has just done – run to Washington, to try to force mobile developers to support your platform, by convincing politicians that your proposed anti-freedom law should be passed in the name of ensuring “equality”.

If Blackberry gets away with this audacious attempt to force others to prop up their business, to pay for their mistakes, this madness won’t stop with Blackberry – the law will apply to any mobile app platform, no matter how obscure.

Where do you draw the line? If some mom and pop business releases 500 phones, do you have to support their platform as well? If a Taiwanese manufacturer creates a new mobile OS, which has no presence whatsoever in English speaking markets, could they sue you if you fail to support their mobile app platform?

And of course, it won’t be long before other industries take notice, and start clamouring for “neutrality” laws of their own, to secure market share through government fiat rather than product innovation.

This madness must be stopped. The potential for this proposal to stifle innovation and crush startup businesses is breathtaking, but Blackberry doesn’t care. All they can see is a possible opportunity to convince legislators to force developers, anyone who commissions an app, to give Blackberry’s business a boost, without Blackberry having to pay a penny. Given Blackberry’s dismal market share, none of the effort devoted to creating blackberry apps is likely to yield a profit – but the “Blackberry Law” would still force you to provide an app for their system, at your own expense.

How to write a mobile app

A nice graphic to denote writing your own app
Writing your own app can save you money and be a lot of fun

Writing an iPhone App or Android App is expensive. Even the simplest mobile apps usually need at least a week or two of skilled developer time to construct.

If you have technical skills, perhaps past coding experience, one obvious solution to save money is to write your own app.

Why write your own app? Beside saving money, writing your own app can be a lot of fun. Writing an app is a creative experience, like painting a picture or composing a song.

How do you start?

You could do what I did – invest hundreds of hours of your time into learning how to create apps for your mobile app platform of choice.

Or you could ask an expert for help – you could cut through all the time consuming trial and error, and ask me to help set up your development environment.

I can get you started with app development essentials:

  • How to set up your development environment.
  • How to create your first app
  • How to transition between different app forms
  • How to create fancy graphics and transitions
  • How to package your app for publication on app store
  • What is the best development option for leveraging your previous coding skills

How long will it take?

The length of time it takes to get started with app development depends on your previous coding experience, and what mobile app platform you want to start with.

For example, if you have a background in developing web apps, you could leverage those skills by using a cross platform development environment like Cordova, which provides a framework for creating an app using HTML web pages.

If you have a choice of starting with iPhone or Android, I recommend you start with iPhone – though the Apple development environment only runs on Apple Mac computers. The Android app development environment is more difficult to set up than the iPhone app development environment, and creating your first Android app is a steeper initial learning curve. However, once you are past the initial learning curve, both environments are very similar in terms of the effort required to create an app.

If part of your app is too complicated for your current level of experience, I’m happy to assist, by creating blocks of code which you can insert into your app. But you can still potentially save a bundle by developing as much of your app as you can, yourself.

Lesson Plan

My recommendation is to start by booking 3 x one hour sessions, spaced 1 week apart.

  1. First Lesson – setting up your mobile app development environment.
  2. Second Lesson – developing your first app
  3. Third Lesson – deploying your app to app store or play store

You can book additional lessons as required. I charge $100 + GST per one hour session. The lessons are conducted using Skype, because Skype lets you share your computer screen, so I can see exactly what is happening, and give you realtime advice on how to achieve you mobile app development goals.

Contact me now for more information on how to develop your own app.

British PM – Ban encrypted mobile apps

Messaging app image used in The Guardian
Messaging app image used in The Guardian

British Prime Minister David Cameron has stirred controversy with a new push to ban mobile apps which allow users to communicate via secure, encrypted messaging.

According to The Guardian;

The prime minister has pledged anti-terror laws to give the security services the ability to read encrypted communications in extreme circumstances. But experts say such access would mean changing the way internet-based messaging services such as Apple’s iMessage or Facebook’s WhatsApp work.

“In extremis, it has been possible to read someone’s letter, to listen to someone’s call, to mobile communications,” Cameron said. “The question remains: are we going to allow a means of communications where it simply is not possible to do that? My answer to that question is: no, we must not.”

My biggest concern about this kind of well meaning but wrong headed initiative is the depth of ignorance it demonstrates, about what is and isn’t possible, and how tech works. You can’t stop people using encryption for communication – even if messaging mobile apps were somehow banned, people could still use encrypted websites to communicate.

But you can cause a lot of trouble for fledgling domestic high tech industries by introducing ham fisted regulations, which put domestic businesses at a significant competitive disadvantage in the international market.

This controversy harks back to the 90s US crypto controversy. The US government banned the export of encryption technology which was difficult for their supercomputers to crack, classifying it in the same category as high tech military weapons. An ingenious response to this silliness was illegal immigrants, who had the export restricted encryption code tattooed onto their bodies, which made it illegal to export them.

The Best iPhone App and iPad App Games of 2014

The Guardian has published a list of the best iPhone and iPad games of 2014.

Some of the games are obvious – developments of the Angry Birds and Candy Crush mobile app franchises, feeding the insatiable demand from fans for new variations of these mega games.

Others are much less obvious – my favourite from the less obvious list is “Papers Please”, an iPhone App in which you play a Soviet style border agent charged with examining the papers of potential subversives who want to enter your glorious Communist nation. I mean, who would have thought such a crazy idea would win a string of awards, and become one of the most popular games on App Store? The answer, of course, is whoever commissioned the creation of the Papers Please mobile app, and followed their dream to its successful conclusion.

App Store Screenshot from the Papers Please game.
App Store Screenshot from the Papers Please game.

What is more than obvious from the list, is there is still plenty of room at the top. Even simple iPhone App and Android App ideas sometimes hit the big time, as was demonstrated by the iconic iPhone App Bubble Ball. Bubble Ball, which for a short time knocked Angry Birds off the top of the chart, was created in just a couple of weeks by 14 year old Robert Nay. The game has been downloaded over 16 million times. The basic game is free, but clever use of in-app purchases to unlock new levels, has also unlocked substantial wealth for the creator of the game.

Who knows what next year’s top iPhone App and Android App games will be? I’m sure we’ll see new versions of tried and trusted mega games, but there will also be surprises, totally unexpected ideas which take the mobile app world by storm.

One of those winning, wealth creating iPhone App or Android App ideas could be your mobile app idea.

Contact Me if you would like to transform your idea into a mobile app. It might be your app which appears on the list of award winning ideas for 2015.

A Wearable Drone – the Perfect Companion to your mobile phone?

Intel recently ran a competition, to find the perfect way to promote their SD card sized Intel Edison ultra-miniature computer technology. The result was a series of spectacular innovations in safety and bionics.

The winner of the prize is something special – a wearable drone, straight out of Science Fiction. As the video (see above) demonstrates, the prototype takes off, snaps a selfie of the wearer, then returns to your wrist – like a magical conjunction of modern technology and medieval falconry, where hunting birds roosted on the wrists of their keepers.

As a mobile app developer, I can’t wait to get my hands on this piece of hardware. Its spectacular enough, to have a drone which takes a selfie and returns to your risk. But what is the perfect controller / companion for such a drone? An iPhone App or Android App on your mobile phone of course!

How to avoid Offshore Mobile App Nightmares

What do you do when it all goes wrong? I regularly hear from people who have taken the bargain basement route to app development, and are now stuck with a bargain basement app – an app which looks bad, is unresponsive, regularly freezes, or even crashes when it is used.

Sometimes these problems don’t show up until the app has been released. Performance problems often don’t manifest until your system has stored a significant amount of data, leading to a frightful scenario in which just as your iPhone App or Android App is taking off, gaining market share, it suddenly all falls apart.

Note I am not suggesting all offshore developers provide poor quality work. Some offshore developers provide an excellent service. But bad developers who cut corners are often very good at presentation – its the main focus of their business. And relationships with good developers can take a wrong turn, a situation which sometimes takes expert assistance to correct.

The following is a list of steps you can take to minimise the risk.

  1. Make sure you possess a working copy of the mobile app source code
    Whoever controls your source code controls your app. The source code is human readable form of your app, which development software uses to construct app binaries, for deployment either to test devices, or to the app store or play store. Without the source code, you cannot make changes to the app, or fix problems. A lot of developers keep hold of the source code, to force clients to continue to use their service.

    It is normal for developers to hold onto the source code until they are paid. But you must insist on source code whenever you make a payment, and you must check that the source code you receive is actually the code for your app. Often the source code is broken or incomplete. This is not necessarily malicious, it can be due to carelessness, or even just an honest mistake. If necessary, enlist the help of a technical friend to make sure you are receiving the real thing.

  2. Control the Server
    A second practice I see all too often is where the developer controls the server. The main use of app servers is to share data between different copies of the mobile app. Copies of the app on different phones can’t talk directly to each other, unless the devices are in close physical proximity. Instead, the apps relay messages via a server. The person who controls your server can shut down your app.

    The developer may have a positive motivation for controlling the server – server administration can be challenging, and they may feel that by shielding clients from this complexity, they are offering a better service.

    But if your developer suddenly decides to start charging exorbitant “server fees”, and if they are unhelpful when you ask for the code to be moved to a different server, there is very little you can do about it, other than a potentially very expensive and disruptive migration to a different server – a migration which can lead to significant loss of client data.
     

  3. Hire a local technical manager
    If your relationship with offshore developers hits a rocky patch, it can be difficult for non technical people to guide the project back on track – if the offshore developer claims that a simple looking change will take a long time to complete, and be very expensive, how can you tell whether they are being honest or reasonable with you? Some simple looking changes really are difficult – or they might be having a laugh, at your expense. If you have already committed significant money to the project, it can be very difficult to refuse ever increasing charges for changes and bug fixes, to bring your app project to a successful conclusion.

    With a local technical manager, you are in a much stronger position to negotiate fees. The local technical manager is much more accessible than an offshore team in a foreign jurisdiction. And the right technical manager has extensive experience with software development, so they can push back against unreasonable quotes or other sharp practices.

    One of my favourite techniques for handling an offshore fee blowout, is to provide an “example” which proves conclusively that the quote is unreasonable. This generally involves quickly mocking up a proof of concept of the work item under discussion, to discredit exorbitant claims of difficulty or other excuses for excessive fees. It usually only takes one or two “example” exercises to establish a better working relationship. This corrective technique absolutely relies on you, the project owner, having control of your server and your source code.

If you would like to know more about app development, or would like some advice about getting your mobile app project back on track, please Contact me.

Integrating SharePoint, iPhone Apps and Android Apps

Microsoft SharePoint Logo
Microsoft SharePoint

Microsoft SharePoint is a popular content and data management system, which integrates easily with non-microsoft technology, such as iPhone Apps and Android Apps.

The functionality of SharePoint I have experience integrating is SharePoint Lists.

A SharePoint List is a cross between a web document and a database. It provides means for quickly building and maintaining structured data, and defining relationships between different elements of that data.

For example, you can define a Microsoft SharePoint list which holds details of assets which your company manages, such as factories, shops, or other inventory, then define a second list, which provides a maintenance history for each asset. The second list can be linked to the first list, so for example you can enforce that one of the fields in the second list must be the identity of an asset in the first list.

SharePoint takes care of the complexity of handling collaborative updates to list documents, such as versioning of each change.

There is even an attractive web interface, which is compatible with most mobile devices, and several excellent iPhone Apps and Android Apps, for accessing your SharePoint portal.

So why would you ever need a bespoke iPhone App or Android App, to interact with SharePoint?

The reason clients ask me for help with SharePoint integration is because standard, off the shelf apps do not deliver a specific feature or set of features they require.

For example, what do you do if you want to take SharePoint offline? A client had a requirement that mobile apps be able to be used at sites with poor Internet coverage, so they needed an app which could populate the fields of new SharePoint list instances, and save the new instances in the internal storage of their iPad device, so all the saved changes could be applied to the server once the user had access to the Internet.

Another scenario, a client wanted to extend SharePoint functionality with app device capabilities, to create the ability to upload mobile camera photos to SharePoint list instances, and to upload GPS readings.

Finally, since the apps are interacting with SharePoint as a data store, the Apps are free to implement their own front end – they can guide users through the data acquisition or data delivery process, by imposing a specific workflow on the users – by granting users a limited view of the underlying SharePoint data, and by ensuring all necessary steps of a workflow are executed in the correct order.

A bespoke SharePoint iPhone App or Android App can preserve SharePoint flexibility. It is entirely possible for mobile Apps to apply the bespoke SharePoint functionality extensions on a list field by field basis, to allow the list structure to be changed, to allow new fields to be exposed to users without having to release a new version of the bespoke iPhone or Android SharePoint App.

Bespoke Customisation of the SharePoint experience can help with delivering acceptance and enthusiastic adoption of the underlying SharePoint implementation, by painlessly integrating user requirements which are not best handled by the standard toolset.

Contact me now, if you have or are interested in creating a Microsoft SharePoint based user experience, but have requirements which go beyond what the standard tools can deliver.

The Mobile App Revolution

The App Revolution Screenshot
The App Revolution

Back in 2012 Channel Nine (Australia) presented “The App Revolution” as a segment of the popular “60 Minutes”.

http://sixtyminutes.ninemsn.com.au/stories/8491606/the-app-revolution

The video of the presentation is now available online.

I strongly recommend anyone interested in developing an iPhone App or Android App watch the presentation. It communicates how apps have changed the world, and how lives have been transformed by people with a simple idea, and a burning desire to make it happen.

If you are interested in learning more about mobile app development, Contact Me.

Amazon Cognito – A New Server for iPhone and Android Apps

Amazon have just announced Amazon Cognito – a new server technology for rapid development of Mobile App Servers.

Servers are a common feature of iPhone Apps and Android Apps. In its simplest form, a mobile app server allows apps to share data. Although iPhone Apps and Android Apps have access to the internet, they can’t talk directly to another copy of the same app on a different phone, except in special circumstances (e.g. if both apps are on the same WIFI network). There are various technical reasons for this, though one of the most important is the apps simply can’t find each other.

Instead, iPhone Apps and Android Apps use their internet access to contact a server, at a known internet address, which relays messages between different phones.

Amazon Cognito aims to simplify this process, by reducing the effort required to create new app servers. Instead of having to write variations of the same server code again and again, apps which need to share data can link up to Amazon Cognito, with minimal bespoke server code and server configuration.

Contact me if you would like to find out more about how Amazon Cognito could simplify the design and cut the cost of your next iPhone App or Android App.

Apple Announces new mobile OS for iPhone Apps

Apple has just announced iOS 8 – a feature rich upgrade to their mobile device operating system.

For mobile app development, iOS 8 provides exciting new features which can be incorporated into new or upgraded app.

The most interesting changes appear to be to iPhone app camera and photo editing capabilities – Apple have announced a new framework called “PhotoKit”, which allows apps to use built-in and third party photo editing filters, with minimal effort.

In addition, Apple appear to be embracing third party provision of iPhone App extensions.

Up until now, iPhone Apps, unlike Android Apps, have mostly lived in a world of their own. While in theory apps can call each other and pass information via Apple’s Custom URL Scheme, in practice very few iPhone Apps have taken full advantage of this feature, except for apps in the same suite, produced by the same developer or app client.

Apple’s iPhone App document scheme, which allows iPhone Apps to advertise that they have the capability to open specific types of document, has seen more use, but this feature, while very useful, requires that an iPhone App surrender control to another iPhone App – not a paradigm which is conducive to a smooth, seamless user experience.

Apple also have a little known method of advertising social media sharing capability – if you have a brand new social media site, and you want your system to appear in the list, when someone clicks the “share” button, Apple provides a means by which your iPhone App can advertise its availability. But this is a fairly esoteric feature, which I have rarely seen in the wild.

With iOS 8, Apple appears to be experimenting with third party provision of seamless iPhone App extensions, specifically third party photo filters, functionality which can be embedded inside an app, without the need for surrendering control to other apps in order to use it.

We look forward to development of this new and exciting feature set in the Apple iPhone App space.

Apple have also announced a new iPhone app development language called “Swift”. As a developer, I’m looking forward to getting my hands on this new language, and having a play, but at this stage I don’t think the new language will have much impact on app development, from a client perspective.