FAQ

Here you can find any possible answers to your questions
What does “backend” and “frontend” mean?

These terms refer to the different parts of an application. Generally “backend” refers to any behind-the-scenes logic – such as code that puts data into a database – while “frontend” refers to code that involves a user interface.

What is a CMS?

CMS stands for content management system. Although popularly used for blogging websites, it can be a useful feature to have when you want to change some or all of the data on your site or application. For example, if you need to change your contact details, it would not only be quicker to be able to change it yourself but would also save you money because you don’t have to hire a developer to do it.

Does “software” mean desktop applications, like a word processor? What if I want an app to be built?

Nope. The term “software” can mean a wide range of things, from mobile apps, to websites or web applications, as well as desktop applications or even apps built to run on custom hardware. There are many different types of software, so it’s important to ask your developer which types they specialise in.

What is software architecture?

At its most basic, software architecture refers to the way a particular software system is organised or structured. This generally includes the various tools and/or technologies used and the way in which those technologies are tied together. At a very high level, an example would be having an app that gets its data via an API, and that API in turn gets the data from a database stored on a server. Each of those parts (app, API, datastore) would most likely also be broken down into various structures that would be organised in a particular way. All of that structuring and fitting the various pieces together logically to build a working system is referred to as its architecture.

Why is it important that my provider is an expert in software architecture?

If a building is placed on a poorly implemented foundation, it won’t be able to survive for very long, and the slightest disturbance will cause it to fail. Similarly, the way a software system is structured – whether it’s a website, app or enterprise application – will play a critical role in its performance, stability and longevity. An expert architect will also be able to guide you on the best technologies to use in the first place, based on your application’s requirements and budget. Lastly, an expert architect will generally save you money because they can identify parts of the system where you can cut costs without sacrificing performance or stability.

What are web services?

Web-based services refer to applications that allow communication between two or more software systems. An example would be if you have data on a server that you display on your website; when you decide to build an app that displays some of that data, you can have a web service built to feed that data to your app.

Is web service and API the same thing?

The terms are used interchangeably these days, but the API is actually the interface to the web service. Think of it as the rules or guidelines that tell the application how it can get data from the web service.

What does “cross platform” mean?

The term “platform” refers to a system like your desktop operating system, your android device or iPhone. Traditionally each platform had particular technologies that were used to build programs or apps that run on them. These days, however, cross platform technologies exist that allow a developer to easily build programs that can run on more than one platform using either the same codebase or with very little changes to the code.

Please explain the difference between web design and web development?

Whether you’re talking about web or mobile apps, design and development are two very distinct parts of the overall development process. At the most basic level, design refers to planning the look and feel of a system/website, while development is the process of implementing those designs into a functional (working) system.

If I want an android and iOS app built, do I have to pay for two apps? Why?

This would depend on whether your app can be built as a “hybrid” or cross-platform app, or if it has to be native. Hybrid apps use a single codebase to deploy to both platforms so you would only have to pay for one. The cost would generally be higher than one native app, but lower overall. They generally don’t perform as well as native apps do, but they can be a good alternative. If you think of opting for a hybrid app, ensure that your developer has reviewed your requirements thoroughly and weighed up the pros and cons of native vs hybrid – if there are any potential issues down the line, they should bring it to your attention clearly before your sign off on the project.

How are websites and apps built? What tools are used?

There are many technologies involved with websites and app development. It usually involves lots of “code”, which are high level instructions written in a programming language that is best suited for the task at hand. An example of this is the programming language called “PHP”, which is the default “scripting language” on most web hosting packages available on the internet. Most apps and websites also include a database where all of your important data is stored.

Why do most developers charge such high rates to build even simple apps or websites?

Often even the simplest seeming app requires a lot of work behind the scenes to make it work so simply. Some developers do charge unnecessarily high rates and many companies add huge markups to support their business operations and turn a profit, but even with that aside buying software is still quite expensive. It’s important to understand this so that you set realistic expectations, but realise that a good software engineer will do their best to work with you and stick as close to your budget as possible. Shop around and choose the developer who will work with your available budget without sacrificing performance or reliability of the final product.

What should I look for when choosing a developer to build my app or website?

A developer is someone who can code in one or more programming languages, but a software engineer is a developer who has studied to become an expert in all aspects of software development. They will ensure that they understand your requirements and work with you to bring your idea to life using the best technologies available. Look for a software engineer who listens to your needs clearly and tries to get as much information about what you need as possible, before promising to build it for next to nothing.

I’m looking for the lowest rates because I have a fixed budget, so I will award my project to the cheapest developer I find. Are there any problems I might face with that decision?

It’s highly recommended to shop around for the lowest rates, but worse than finding a developer who charges too much is finding someone who charges too little. There are multiple cases in which this can be problematic. One possible scenario is that the developer is inexperienced and doesn’t realise that there is much more to the system than they initially anticipated. So they give you an ultra-low proposed bid, you pay and after a few months they realise they can’t finish the system. Many people fall into this trap with freelancers who promise to build elaborate systems for not even 10% of the realistic cost, and end up losing their time and money. What’s worse is often in this case the freelancer is never seen or heard from again, and what little of the system has been built is in such poor quality that it’s not possible to build on top of it so the next developer has to start from scratch – i.e you end up paying even more. What makes this situation even worse, is that often client’s become so discouraged by this experience that they give up trying to find a suitable provider, so the app idea or vision is never realized. Imagine all of the great apps and software we might have had access to if not for this kind of unfortunate occurrence!

How long will it take to develop my app or website?

This depends entirely on the type of features your app requires. It could range from as little as 3 weeks for a very basic website or app, to as much as 6 months or even a year or more for larger systems. It’s important to have a realistic expectation of the development timeline and to ensure that adequate time has been set aside for quality assurance before the product is released to you for testing.

I have a great idea for a web or mobile app. I have some budget to have it built, but what if I share it with a developer and they steal the idea and build it for themselves?

It’s certainly possible for this to happen, but not very likely – especially if you do your homework and ensure that the developer you approach is trustworthy. To ensure your safety in this regard, only provide a high level outline when shopping around, such as “I require a mobile application for android and iOS with such and such features”. Once you are past the initial meet and greet and ready to move forward to get a detailed price quote, provide a non-disclosure agreement (NDA) for the developer or company to sign and ensure your intellectual property is protected. When you receive back a signed agreement, you can then provide the full details of your project so that you get an accurate proposal while at the same time resting easy with the knowledge that your idea is legally protected.

What costs should I ask about when I approach a developer?

Start with their hourly rate. Even companies have an hourly rate that determines the fixed price quote they charge for your app or website. Although this won’t tell you exactly how much they will charge for your particular project, it’s a good indication of how the final costs will be calculated.

Generally its also useful to know how the costs are broken up between design, development and testing (quality assurance). Ask the developer or company to specify each of these phases as line items on their price quote/proposal, as this will help you to compare costs when shopping around.
Larger teams or companies might also charge you project management fees, so it’s important to ask that all fees are clearly labelled under the appropriate line item in the quote.