New Websites and Web-Apps

What is the difference between a “web-site” and a “web-app”? We think the answer is pretty much nothing! The word “app” exploded onto the scene alongside the release of the original iPhone in 2007 – but an “app” is nothing more than a good old-fashioned computer program with a slightly sexier name. You don’t fool us Apple.

Since a website essentially already is a computer program then how can there be a difference? Indeed if you define “web-app” as “an interactive web-based software application” then an ordinary website qualifies, because it’s an application where you interact by clicking links, and it responds by serving web pages!

Ok, ok so we are programmers and we like strict definitions, whereas no doubt you live in the fuzzy, subjective world of normal people. We can do fuzzy too, mind you – we are happy with “fuzzy logic” after all. So long as the fuzziness is clearly defined ok?!

Chances are if you are describing what you want as a “web-app” then what you really mean is a website that has enhanced functionality, so that it can perform API calls, searches, analysis and any other general functionality beyond serving plain web pages.

We can certainly help you with this! Take a look at some of our packages below and get in touch to find out more.

Starter Packages

These are fixed price packages we specifically designed for those of you with a killer app idea who want to gauge the market reaction. We know you are at proof-of-concept (“minimum viable product”) stage and therefore probably have a limited budget – so we stripped out everything that is not absolutely necessary to get a prototype to market. The result (we hope!) are lean, affordable tester apps with high code quality, which are designed to be modular (so individual components can be easily changed), easily extendable (for when your app becomes successful!) and above all professional in appearance.

Let me take a moment to explain why you want our apps in particular. You need to be lean (let’s face it – cheap!) – and there are 2 ways to do that:

  1. cut corners (and make a poor quality product)
  2. cut out what’s not needed (immediately) and then do a great job with what is

If you go looking around for cheap developers e.g. on freelancer marketplaces, chances are you are going to end up with option 1. Those developers are not going to care about

  • helping you understand what you need and what you dont
  • what you are likely to need to change in the future
  • what the code looks like under the hood (they know you can’t judge)
  • your business moving forward

They are not going to understand you want a tester app, and then carefully decide what you need and what you don’t as a result. They won’t, for example, tell you you don’t need an admin panel. You probably don’t realise you don’t need an admin panel, so you won’t tell them not to build it. So then you’ll get a half-baked app with a half-baked admin panel (that you didn’t need). Remember the admin panel is just an example – there are plenty of other components under the hood which are appropriate for a full blown app but just not necessary when starting out.

If you go with option 1 you may get an app that looks nice and even seems to function ok initially. But a short distance down the road you are going to get annoyed as unprofessional-looking bugs surface due to all those cut corners. Then when you want to change or extend the functionality – forget it! Your new hire developers are going to have a tough time just getting their fork into your hard-coded lump of iron-clad spaghetti. This could potentially be a very frustrating situation because the smell of success is there, but you are just not able to adapt what you have quick enough to gain that market foothold.

The great thing about a modular design (ie a collection of discrete components) where only necessary components are included, but those components are very carefully written, is that you can easily add in more (well-written!) components as your app starts to gain traction. So you can add that admin panel when you see the business model is working. In fact you can add anything you need at the drop of a hat. Need to change an existing component? No problem, because it was carefully written with extensibility in mind!

Cut corners on the other hand could seriously ruin your business. This is not a joke – and no, we are not just saying this because we want you to buy our packages. Well, we do want you to buy our packages, we are not going to lie about that. But cut corners? Just don’t go there.

Remember this: technical debt costs a lot more to shore up than the additional price it would have cost to do the job right from the beginning. Often the cheap option ends up being the most expensive!

So that’s why you should forget cut corners and take a look at the table below:

Package“Toe Dip”“Admin Guru”“Stats Junkie”
Admin config via text files
Database Integration
Stats via Google Analytics
Login Page with 1 Login Type
1 Standard User Type
1 API Interface
1 Payment Processor Integration
1 Search, Select, Upload or Submit Form Page
1 Results Page
Payment & Payment Confirmation Pages
1 Admin User Type
1 GUI Admin Panel
1 AdminStats Page showing 4 user stats graphs of your choice
Full Price$4,500$6,250$7,500
Upgrade Price$2,500From Admin Guru $1500
from Toe Dip $3,250

Of course every App is different, and it would be a mistake to try to force them into the same fixed framework. We are not believers in trying to do this – quite the opposite, in fact. So how we propose to cope with flexibility is as follows:

  • Provided we gauge your app proposal to be similar in complexity to the above, we will try to stick to the same price
  • if we think your app is of a significantly higher complexity, we will discuss this with you and may need to quote a higher price (sorry!)
  • if your app is of lower complexity – maybe you hate money and don’t want to get paid, so no need for a payment page – then yes we will quote lower!

Please also bear in mind the following important considerations:

  • Database integration means we set up a back-end database and add tables which are appropriate to meet the needs of your project, then have the code interface with this database to deliver your project’s functionality
  • An API interface means an interface to any online service (which is free to access, or you have access rights), such as the Amazon Product API, Google Maps API, any Open Banking API, etc. The “API interface” means we create an access path to this API. There is no restriction on the number of endpoints you call to achieve whatever your app needs to do. (Though bear in mind the API may have rate limits)
  • We will use only standard graphics libraries to provide icons, and a basic level of graphical design to pages. To avoid this you should ideally provide graphic design elements yourself (for example your logo) and we will incorporate them in your pages. Or discuss with us and we can arrange professional graphic design for you.
  • The prices above unfortunately don’t reflect a final quote. You should get in touch with us to discuss your individual situation to confirm the rate.
  • All services will be subject to a contract which will be tailored to your individual case. You can get in touch to request a sample contract – however your exact contract will be finalised upon receipt of a 20% deposit
  • Payment will generally be an initial deposit followed by several pre-agreed milestone payments according to the contract.

Finally

We think you should bear in mind that one important component omitted from our tester applications is a programming test framework. If you are new to software development you may not know what this is, or fully appreciate why it is important. A programming test framework is something that is mainly used in development, and never present in production code – so you can be forgiven for overlooking it. However, now we’ve told you about it, we think you should spend at least a few moments learning what it is, and why you might want one.

Then you might start to ask: don’t I need this? Why is it not included in your packages?

The answer is that for larger projects, you really do need it. However a programming test framework really only becomes necessary once your project reaches a certain level of complexity (approximately gauged by the rule of thumb “when the codebase becomes too large for a single developer to be familiar with all parts, start writing tests”). Remember that we want to create your app at low cost, so we are omitting items we don’t immediately need. This is one we omitted – because initially, you didn’t need it.

However once you complete your tester app and are looking for the next step, you should bear in mind you are going to need to pause for a moment and create that test framework. Don’t even ask us to write any more code for you without that framework. We won’t do it, because we’d be signing our name to poor coding practice.

We are telling you about this now, because you really should bear this cost in mind from the outset. Hopefully if you reach the stage of needing this framework, it means your app is generating a return, and you are in a good position to find the further funding that you need.

If you want more information about test frameworks and what’s involved, including prices then please get in touch

What Next?

Of course our tester apps are only the beginning. You may have reasons to need something more complex from the outset – or you may already have a successful tester app which you want to expand. Either way we can help you move forward with your project. Get in touch and tell us your specific situation.

Case Study: Stock Tracking Web Application

Developer Evaluation

The spec is to create a stock-tracking application which will poll data from [a proprietary stock trading API] to provide personalized realtime stock quotes and technical analysis information. The app will be created using a Java backend delivering json packets to javascript. Architecture should be oriented towards enabling a future native app interface.

Steps Taken

  • Server + DB install and setup
  • initialised dev and live repos, started Tomcat
  • Created Login classes + API controller
  • Created Payment pages
  • Created Stock search and select page
  • Created Stock tracking page
  • Ran Tests

Time Breakdown

Statistics

  • Manpower:
    3 Developers + 1 Supervisor
  • Time to Completion:
    5 Weeks
  • Server Downtime:
    None
  • Total Developer Hours:
    112
  • Cost per Hour:
    (“Toe Dip” fixed package price
  • Total Cost:
    $4,500

Result

Successful App Creation