1. Find a great idea
Everything starts with a great idea, it can be simple, trivial or complicated, the important thing is to make the ideas come and flow, write them down in a notebook. The most successful developers reveal that there is no better way than writing down their ideas on paper and in pencil. Ideas can come from inspirations anywhere, there is no such thing as a bad idea to begin with, so don't rule anything out, be open to everything, sometimes ideas that sounded bad at first turn out to be the best idea you ever had.
2. Be inspired by successful applications
You know what makes an application successful? You can find out by studying the market, which are the applications that are the trend in Apple stores or Google Play, understand what those applications have and do, understand if what your application is going to do someone is already doing well, take inspiration from successful applications, do not copy them, just use them as a reference. For your first application it can be a good idea to understand that you are buying the market, although it is not wrong to be risky and enter with an idea that becomes a trend.
3. Learn how to program for the iOS or Android platform
At this point it does not make much sense to learn how to program for Blackberry or Windows Mobile, the established platforms and surely continue to be a trend for many years to come are Google (Android) and Apple (iOS), maybe in the medium term Facebook achieve that their new programming language HACK and its ecosystem are worth taking into account, but for now we must focus on Android and iOS.
To learn how to program for these platforms use the best e-learning platforms that offer free or paid courses such as Coursera, Wedubox (Eduvolucion), Google Developers Academy, Udacity or Khan Academy, in these sites you will find what you need to know to start programming, you only need to know English since most courses are taught in that language (except Wedubox that is focused on Latin America and Spain and its courses are in Spanish).
4. Design your application
After you have taken a course in programming, you can draw your ideas on paper, how the application will look, what windows/displays you need to have, where you are going to put the buttons etc, start using paper and pencil and then if you go to the computer, both Apple's development suite for iOS and Google's for Android will allow you to do the layout, but you may need help from a graphic software such as Gimp (free) or Adobe's Creative Suite.
5. Register as a developer
Both Google and Apple require you to register as an official developer to have access to the development tools, the help forums and most importantly your application store. In both cases you must pay an annual membership of $100 for Apple and $25 for Google. Through some universities it is possible to obtain the development software legally and to program without paying the membership, although to be able to sell the application if it is necessary to pay the annuity.
To register as a Google developer and sell on the PlayStore go to this link:
To register as an Apple iOS developer this is the link:
If it is developed for Android you can also submit the application to the Amazon App Store.
In all cases the developer gets 70% of what is sold while Google/Apple/Amazon gets 30%. In the case of free applications there are no costs, although they are used either to let people know about the application with reduced functionality or to make sales within the application (in app purchase).
6. Get programmers
When you need an essay you're looking for an essay writer for you. When you need a programm you should seek programmers. Being a developer does not necessarily mean being the one who writes the code, it is possible to get very talented programmers anywhere in the world who can develop the idea of the application quickly and professionally, there are many ways to contact developers from using referrals from friends, via LinkedIn or in specialized networks such as eLance, Guru, Freelancer, etc.
7. Get funding
Probably for the first app the best strategy is to code yourself and test concepts, but when you are behind a potentially disruptive idea, it is possible to get funding without being a financial expert or having contacts with Investor Angels. A few years ago the trend of crowdfunding has taken hold where for example instead of getting one investor to contribute 1 million dollars, you get one thousand investors to contribute one thousand dollars each. In the case of apps for mobile devices is possible to start with as little as 5 or 10 thousand dollars to pay good programmers and about a thousand or 2 thousand for a professional designer. Sites such as Kickstarter.com or Crowdfunder.com allow you to send your idea (videos, photos, etc) with a collection goal and an incentive for those who contribute capital (for example, if someone sends you $100, you can download your app for free when it is ready and also appear in the hall of fame). Take a look at the successful projects on these platforms and get ideas on how to motivate people to financially support their projects.
Another alternative widely used among entrepreneurs is to get the initial funding from family and friends, collecting a few thousand dollars from a nearby circle is always a good option.
In countries like Colombia there are initiatives such as apps.co or Innpulsa Colombia that provide seed capital and / or advice and mentoring for entrepreneurs, worldwide is the MassChallenge or YCombinator among others.
8. Start programming and testing
Whether you are going to program or hire an external person, start with small things, divide your project into functional phases and begin with the first phase, that stage is called doing the WBS (Work Breakdown Structure). Going forward gradually and testing concepts, is disastrous when it comes to making a big project in one go and then you have to go back to rethinking and redoing things because they didn't work the way you wanted them to... one step at a time.
As you finish functional phases, try it out in detail, ask your trusted friends for feedback, ask them to criticize the work, at this point you are not looking for compliments or recognition, you are looking to prove that the idea is good and acid and hard feedback is more helpful because it helps us to test the concept and improve it from an early stage.
9. Send your application for approval.
Once you have a good enough functional version (remember that perfect is the enemy of good) send it for approval by Google or Apple, this process usually takes between 5 and 10 days (although sometimes a little longer). What they will verify is that the application complies with the general guidelines of each platform (for example, that it does not promote piracy, pornography, etc), as well as validating that it does not have important bugs. Once approved, your application will appear in the Google Play or iTunes store.
10. Make your application known
Getting the application to appear in the store is already a major achievement, but in the sea of hundreds of thousands of applications it can last for years without anyone knowing how good or disruptive it was. This is why it is important to have a marketing strategy. This is a complete topic for a book, but some things you can do is try to make it viral by using attractive videos, memes, writing in blogs, sending it to magazines and specialized portals for reviews, make mail marketing campaigns, promote it in social networks etc. One technique you should always use is to ask your friends and family to buy or download your app and review it, when there is an app with zero downloads and/or zero reviews it is unlikely that anyone will dare to buy it.