Hervey Bay Business Mobile App Development Meetup

Announcing the new Hervey Bay Business Mobile App Development Meetup.

Desirable Apps are hoping to get everyone in the Hervey Bay / Maryborough / Fraser Coast area who are interested in mobile apps together in one place, in the Lakes Room in Hervey Bay RSL, to talk shop, bounce ideas off each other, and stimulate creativity and business inspiration.

Meet us on the 26th November between 10am and midday in the Lakes Room of the Hervey Bay RSL, 11 Torquay Road, Hervey Bay, 4655.

For more details, click http://www.meetup.com/Hervey-Bay-Business-Mobile-App-Development-Meetup/events/216050782/

Everyone is welcome – people with a mobile app idea, people who are interested in mobile apps, businesses or individuals considering creating their own apps, iPhone App developers, Android App developers, Mobile Web developers. Bring your favourite phone. We look forward to seeing you at the meeting!

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.

Slow Web Day!

What do you do when your website is running slowly, or not responding?

I had to deal with this situation today, when someone pointed out they couldn’t see my home page.

My first action was to wait a bit – sometimes transient internet glitches occur, so simply waiting a few minutes can save a lot of wasted effort, trying to get to the bottom of a problem which doesn’t exist.

Waiting didn’t help in this case, so my next step was to examine the server logs, to find clues as to what was happening.

I immediately found the problem – thousands upon thousands of requests, for a file called xmlrpc.php.


89.248.168.46 – - [24/Sep/2014:10:00:27 +0000] “POST /xmlrpc.php HTTP/1.0″ 200 370 “-” “Mozilla/4.0 (compatible: MSIE 7.0; Windows NT 6.0)”
195.154.127.19 – - [24/Sep/2014:10:00:26 +0000] “POST /xmlrpc.php HTTP/1.0″ 200 370 “-” “Mozilla/4.0 (compatible: MSIE 7.0; Windows NT 6.0)”
195.154.127.19 – - [24/Sep/2014:10:00:28 +0000] “POST /xmlrpc.php HTTP/1.0″ 200 370 “-” “Mozilla/4.0 (compatible: MSIE 7.0; Windows NT 6.0)”
195.154.127.19 – - [24/Sep/2014:10:00:26 +0000] “POST /xmlrpc.php HTTP/1.0″ 200 370 “-” “Mozilla/4.0 (compatible: MSIE 7.0; Windows NT 6.0)”
89.248.168.46 – - [24/Sep/2014:10:00:37 +0000] “POST /xmlrpc.php HTTP/1.0″ 200 370 “-” “Mozilla/4.0 (compatible: MSIE 7.0; Windows NT 6.0)”
80.82.65.17 – - [24/Sep/2014:10:00:41 +0000] “POST /xmlrpc.php HTTP/1.0″ 200 370 “-” “Mozilla/4.0 (compatible: MSIE 7.0; Windows NT 6.0)”

xmlrpc.php is a legitimate web file, which helps some servers communicate with web pages. But these web requests were clearly not legitimate – my web server does not use xmlrpc.php. These web requests are incoming attacks from computers which are infected by a computer worm.

The attacks aren’t targeting the Desirable Apps website specifically – they are infected computers blindly attacking any other machines they can find, in the hope of infecting a new host. But there are currently so many computers infected by this worm, the effort of trying to respond to all the legitimate looking requests from infected machines is (or was) overloading my website, preventing legitimate visitors from getting a response.

The solution was, in this case, very straightforward. Since I don’t use xmlrpc.php, I modified the web server configuration to immediately reject any request which referenced xmlrpc.php, without attempting in any way to process it.

Desirable Apps is still being attacked – but it is now rejecting the attack requests far more efficiently, so the web server is now able to respond normally to legitimate visitors.

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.

Apple announces iPhone 6, iPhone 6+ and new iWatch

The long anticipated announcement from Apple has arrived – two new iPhones, iPhone 6 and iPhone 6+, and a new iWatch, to be released early next year.

Pre-ordering is available from the 12th in Australia.

iOS 8, the new Apple Operating System, will also be released on the 17th September.

All I can say is – WOW. New operating systems bring both challenges and opportunities.

The challenge is that some apps will inevitably break – if you have any concerns about your iPhone app, Contact me now for advice on how to proof your app against the new upgrade.

The opportunity is the new capabilities that iOS 8 will bring to iPhone Apps, and the new possibilities the faster A8 processor will open.

For more information on how your iPhone app can benefit from iOS 8, or how this transforms the landscape of what is possible, Contact eworrall1@gmail.com.

Why do your clients need your mobile app idea?

Dilbert - Corporate Strategy

Dilbert – Corporate Strategy

Today’s Dilbert cartoon is a hilarious take on marketing, which contains more than a grain of truth. Dilbert, in this episode, when asked what should be done to sell more products, replies “we should find out what they need, and give it to them”.

This solution seems so simple, so self evident, yet its amazing how rarely people follow this fundamental prescription for success.

Dilbert is not specifically about iPhone Apps or Android Apps, but its well worth reading – it satirises many common business mistakes.

Anyway, enough preaching – enjoy the cartoon :-)

http://dilbert.com/strips/2014-09-07/

Beware War Kitty!

A security researcher with rather too much time on his hands, has turned his grandmother’s siamese cat into a devastating cyberspy. He did this, by creating a cat collar with a WIFI sensor, which detects weak home wireless internet systems, and reports back to home base.

The original cat collar was just a HTC mobile phone attached to a normal collar, but this proved too much of a burden to the cat, which ditched its payload, then ran off and hid.

So the researcher went all out, creating a super miniature version of his cyber sniffer.

For full details of this hilarious, yet oddly disturbing story, Click Here

Android App Blabs ALL your Secrets

The listening ear

The listening ear

The Register reports on a bizarre new Android App hack, which literally makes your phone blab all its secrets.

The malware app sidesteps the normal attack vectors by doing one simple thing – calling the bad guy’s voice phone number – then the malware coerces the phone into actually “speaking” all your secrets down the phone line, using a bug in Google text to voice.

So next time your phone starts talking by itself, listen to what it is saying – because all that unexpected chatter might be something more sinister than a funny little software defect.