Welcome to the wonderful world of mobile app development. As you embark upon this journey, you will find that your professional growth as a developer is more akin to honing the skills of a craftsperson than applying the lessons of an MBA. And whether you are plying your trade in the service of an agency, a startup or as an independent, here are a few tips to help you along your way.
1. Solve problems
At its most basic level, all software development (web, mobile, enterprise or otherwise) is the science of identifying problems, breaking them into their component parts and iterating against those smaller chunks until a solution is found. You might see pasty geeks in the movies tapping away at their keyboards in the dark after a brilliant flash of insight, but in the real world, a huge chunk of the work is done before you even sit down with your laptop. Instagram didn’t invent the cameraphone, social photo sharing, or even vintage photo filters. The problem they solved was bundling it all together in a simple and fun experience.
2. Learn the Native Language
If you want to develop for iOS, learn Objective C. If Android apps are more your speed, brush up on Java. Yes, there are frameworks out there that promise a cross-platform development environment, and they can be useful in certain scenarios, but developing in the language native to the platform will reduce your dependency on third parties (always a good thing) and provide for a more natural user experience in the final app.
3. Embrace APIs
Here’s the part where I subtly contradict a portion of my previous point to see if you are paying attention. An API (short for Application Programming Interface) is a documented service that allows you to integrate your app with third party platforms. APIs often come complete with the code required to make these connections. While using these code libraries does give your app an external dependency, the risk is low — provided the service you are integrating with is in good health and your app is not operating contrary to their business aims. Plus, your users have been trained to expect Twitter and Facebook integration, at the very least.
4. Scratch Your Own Itch
Instapaper is a famous example of a mobile app that grew from a lone developer’s frustration with the lack of cell phone service on his subway commute. By building a simple service and app to save web articles to read offline, Marco Arment solved his own problem and, incidentally, the problem of thousands of other users. Instapaper grew to the point where Arment left Tumblr, a company he co-founded, to focus solely on app development. Moral of the story: if you have a specific problem, it’s likely that other people will be willing to pay for your solution.
Your journey from a fresh-faced n00b to a grizzled old pro will be filled with many twists and turns. The code you write today will look embarrassingly amateurish in two years, nevermind the prospect of learning new languages and programming conventions to stay relevant. Uncertainty is the nature of software development, but these four principles can serve as a guidepost for your journey.
Do you have any questions about mobile app development? Ask away and we’ll be sure to give you our best advice! And for all you developers out there, be sure to visit the One-Stop Shop of Awesomeness for job openings.
No comments on So You Want to be a Developer?