RSS

Category Archives: Writing Apps

Android Apps – No Coding Development?

For anyone wanting to create their own Android app, the options can seem bewildering. Options range from so called No-Coding app makers to the standard Google Android Java approach.

Most of us tend to pick the easiest options, and this can be fine for many tasks. However when creating software it is usually  best to consider the options because they can have long term implications. Choosing the wrong option can waste both your time and your money.

There are basically two quite different approaches to creating Android apps:-

  1. For those comfortable with programming – Eclipse Java and the Android SDK.
  2. For those new to programming – No-Coding Template based app makers.

HAC is in the middle ground as it offers an easy to understand coding language and visual designer.

There are also tools like App Inventor that make programming easy with their coloured blocks/segments although they are harder to use for larger projects.
.

Code – just instructions

Code is just a list of instructions that tells the computer how to carry out a task.

There is no need to fear coding and if one follows some basic steps then the coding will be easier.

So if you try to break the task into smaller pieces it can be easier to design and create the code.

Perhaps the reason so many people try the No-Coding approach is because the Java approach and its Object Orientated aspects has a tough learning curve. HAC tries to make coding easier as each HAC English-like instruction executes a number of often complex Java instructions so hiding much of the complexity from the coder.
.

No-Coding Approach

The No-Coding aproach is very attractive and can produce some impressive looking apps.

Such app makers work by allowing the creator to select a template for a particular task and then personalise or tune the template to their needs. Usually the template changes are mainly to do with their appearance and content but not with functionality. Changing functionality generally needs code changes.

To make an app that way is very simple. Select the template, modify the template and click the build app button. The built app will then be emailed to you after 10 minutes or will be available to download.

However, what about unsupported functionality? For instance, suppose the template can do a task once but you need it to do the task several times and each time process the data before displaying it. In this case you would need to learn some HTML/Javascript. Unfortunately HTML/Javascript are both limited in the functionality they can provide and have limitations in updating displays and handling user feedback. This might not be a problem for your app but its wise to check the web site’s forum posts to see how they implement the functions your app will need.

If you intend to charge money for your app then you might try to deter piracy by some kind of registration scheme using name/address and a serial number. If you are lucky then the app maker might provide this functionality otherwise you will need to code your own scheme.
.

Where is the Code?

Generally, the code will reside on their No-Coding web server and will be innaccessible inside the template. Although any custom code you made such as HTML and Javascript could be saved onto your own computer.

Being able to see the code can be important if you want to understand how it works, improve it or sell it to someone else.

Of course, if you are happy with the standard template then the issue of code does not arise
.

Who Owns Your App?

The issue of who actually owns your app and its code can be very important.

Ownership of the app can be a grey area as some No-Coding sites say you are only granted non-exclusive rights to your creation. They explain that this is because of the way their template works inside the app’s runtime engine and that the templates are used by others.

There is also the issue of will the app look like your app. That is, will it display you as creator or will it display the No-Coding website’s name.

If you want to own your app then make sure you read their agreement and are happy with it.
.

Subscription Issues

With traditional fixed term licensed software, when the license expires the software keeps on working but cannot be updated. Therefore the owner can keep on developing their apps.

With a No-Coding app maker, what happens when your Subscription expires? Is your app locked or can you still access it, see its details or export it? Also will you still be able to modify or rebuild your app?

Is there a limit of how many apps you can make with the subscription or are there extra charges?

Its worthwhile reading their FAQ to see what the subscription offers.
.

HAC Advantages

Although No-Coding app makers can produce some excellent results they are limited by the number of available templates. With time they will get even better as more templates and functionality are added. However, if you need something special and their template system doesn’t support it, then generally you will have to learn HTML/Javascript and incorporate it into the template.

Comparing HAC to No-Coding app makers:-

  1. Your HAC license lasts forever – no subscriptions.
  2. Security, as your projects and code are stored on your own computer.
  3. Having your own source code puts you in control.
  4. Code is infinitely more flexible than template systems.
  5. To make money, you probably need unique ideas – not templates.

In summary, check out what the No-Coding maker offers and you might find that they offer just what you need.

Bear in mind that HAC doesn’t offer full Android functionality so No-Coding could be the route to go.

Finally, don’t be afraid of coding – its just telling a computer how to carry out a task.

 

Earning a living from Android…

There might be some folks reading this blog who are wondering just how easy it is to make a living out of writing apps for the Android platform. Well, to make a living you need 2 things. Firstly, you need a gem of an idea for an app so that people will buy it and secondly, you need the necessary skills to make that app. HAC is designed with simplicity and ‘user friendliness’ in mind so acquiring the necessary skills to make an app shan’t frizzle your brain cells, but more on that later. You will also need to know the basics of the Android Market, such as setting up, costs involved, requirements etc.

Setting Up
Before you start writing your Android app it makes good sense to know a bit about the Android Market. Below is a link to an insightful article that compares the costs of developing on the various mobile platforms. It also covers Android, which is of particular interest to us. Note that Android is the cheapest mobile platform, although this cost matters mainly to some shareware authors who are expecting to sell just a few apps per week.

http://creativealgorithms.com/blog/content/earning-living-independent-mobile-software-developer

Paid-for Apps
Getting people to pay for traditional desktop software is not that easy as it must be something that they really want to use because of the enjoyment factor or it needs to be a piece of software that enhances their lives, makes life and work easier etc. The great news, however, is that the price of mobile apps tends to be an order of magnitude lower than desktop apps. This means that mobile users are generally more likely to buy your app. If your app looks good and performs well then they might even buy on impulse because a dollar or so means that potential clients do not have to dig deep into their pockets. The beauty about the Android Market is that it also makes it very easy for people to try your app and then buy it.

Ideas for an App
As this blog is about paid apps you need to have something that people will want to buy. It might sound obvious, but there are so many genres of apps that it can be hard to find a profitable idea. If you make yet another Pacman clone it will probably not pay so well unless you can add something extra special to it. Perhaps you personally need an app to do something, but there is nothing out there quite like it? The odds are that other people are also looking for a similar app. Does your app have longevity or does it just perform a function a couple of times and then is not needed again? Finding a balance can be difficult, but that is also part of the fun. Once you have an idea, you might want to search the Android Market to see if it’s already out there.

Creating Your App
Assuming you already have an idea for your Android app, you then need to ask the question, ‘how difficult is it to create’? If you are new to programming, then the learning curve of traditional Android Java development approach is very steep and requires a wide range of knowledge. First, you have to learn Java programming language and then you have to get to grips with the Android SDK. The Android SDK supports a huge range of functionality, but even for experienced Java programmers its learning curve is steep and laborious. Furthermore, developing for a mobile platform, such as Android, is very different to developing for the desktop platform…why? Because mobile platforms have limited resources. The Android Operating System keeps tight control over Android apps and if memory becomes tight or the app is moved to the background then it can be removed from memory so necessitating being reloaded when moving back to the foreground. There are many ‘problems’ like this awaiting the Android Java developer. But with HAC many of these problems are automatically taken care for you.
One of the best resources for Android developers is StackOverflow. By browsing the resource, you can get a feel for how much effort it can be for beginner programmers to create their own apps.

http://stackoverflow.com/questions/tagged/android

In contrast HAC greatly reduces the learning curve of creating your own Android apps in at least four ways:-
1. The programming language is English-like and and is very similar to Apple’s Hypercard allowing the programmer to get quick results from just a few commands.
2. HAC hides the Android SDK and its Java functions from the programmer so you don’t need to know about ideas, such callbacks, listeners, activities, services, intents, inheritance etc, that are the bedrock of making Android apps using the Java approach.
3. Building your app with its media and other resources is quite easy as there is no need to learn about the raw and asset directories.
4. Signing and bundling your app for the Android Market is straightforward and HAC has a few easy to understand windows for setting up your app and its permissions.

If you aren’t sure about how hard the above points actually are to implement then browse StackOverflow and look at the related questions and their usually very complex answers.

Here is a an article about creating an Android game in just three days by some experienced Java programmers. They cover the different phases of creating their game and it applies whether you are using Java or HAC.

http://www.4feets.com/2009/02/developing-and-publishing-a-new-android-game-in-3-days/