This is the third in a series of articles on getting into mobile app development. Feel free to look back at the previous articles:
Remember the blank sheet of paper and pen from my previous post?
Well, the good news is that these days you never have to start with nothing, and you can thank GitHub for this.
Let’s start with a thing called Git. It’s a really cool mechanism (amongst many, many other features) for tracking changes to source code on a computer. Essentially it tracks everything a developer does when writing code, recording every single change. It’s so powerful that if you make substantive changes in your code (perhaps over several files) only to realise that you want to back to how it was before you started, Git can do that for you – in an instant.
GitHub is an extension of Git in that all your files are stored in the cloud. Not only does this provide a useful offsite backup, but it also means you can develop on more than one laptop.
Very cool stuff, but why is all this good for you? Well, it comes down to what’s highlighted in yellow below:
You don’t have to pay to use GitHub, but the deal is this: if you use it for free then all your source code is publicly available. A genius move from Linus Torvalds (Git and GitHub inventor) that helped GitHub use explode overnight, and that same move now helps you. Millions of developers don’t want to, or have the means to pay for GitHub so all their code is available to you to use – again, Google is your friend. Just search for the code snippets you need or even an entire project to start with.
Read the end of that last sentence again, because those five words will save you a whopping 80% of the work. Think about it, it’s hard to start from nothing. You may have never written an app before, and if you start from scratch it could take you weeks for you’ve actually managed to get your code syntax correct so that your app runs, let alone does anything useful!
Starting from something that already works is like having a glorious achievement without doing very much at all.
Don’t Just Take My Word for it – Try it Yourself!
Hmmm, I guess this might be the “proof of the pudding” then as to whether you really do have what it takes to get into app development. Your first task:
Look on GitHub for an iOS project written in Swift that you like the look of, or you think is not a million miles away from the app you have in mind, then download that project onto you computer. Then look for the “.xcode”project file and double-click on it. This will load the project files into Xcode (Apple’s dedicated IDE). Select run and (assuming that the source code files are not out of date with the latest version of Swift) you should get a good feeling of achievement, without too much effort.
That’s your first step taken then, in developing your first app. I would say that you’re already half-way there, but that would be a lie. There’s still a lot of work to do, but that step was an important one, because now you have some source code that you can make small changes to, and see the impact of those changes in the app (either the simulator in Xcode, or your actual mobile phone if you’ve been brave enough to connect it yet).
Build an Engine First…
Now, before I forget… whilst your app idea might be for a specific purpose, try to take a step back for a moment and think about the eventual inner workings of the app. Could those inner workings be made generic so that they can be used for other apps?
For example, if you’re writing an app that provides ratings of builders, plumbers and other tradesmen in your local area, it is likely that the inner workings of that might also be applicable to other things like takeaway restaurants etc.
If you design your app in a generic fashion to begin with it’s much easier to then use that code to produce other apps as required, and in fact (at least in the case of iOS) the development environment is specially set up for that way of working.
Intellectual Property Rights (IPR)
And one other thing, remember that you might be using other people’s code (or data) in your apps, so always remember this: Don’t rip off people – always look after their IPR. Some people are happy to publish source code for you to use freely, others ask that you make mention in your app that you’re using their code/data. Others ask for a financial donation. My advice is to always play fair, otherwise why should anyone respect your own IPR? Ok, end of legal school 🙂
A Case Study
In my next article I’ll take you through the process of how I went about designing Peak Scanner, my very first commercial application, that even after 3 years still generates a few£1000 every year…
Want to read more? Take a look at the next article in this series:
Here are all the articles in mobile app development series:
Part 3: Actually Getting Started With Your App Development