*Update – The app I mention at the end of the article has been completed and is in the Apple App Store. Check it out at GolfRangeApp.com
So you have a great idea for a web application and you are ready to make millions, but you’ve never built anything online except for your Facebook profile. No worries, it can be done!
1. Idea Formation
If you are reading this then chances are good you already have an idea – great! Have you drawn it out? Take some paper and draw your web application’s interface (at least your initial design) and begin to interact with it. Use separate pieces of paper for each web page or element that changes. This exercise can be tremendously helpful as you will usually find early flaws in your design and you can “fix” them before you even begin coding. At this point it’s not a bad idea to have a friend go through it as well and provide some feedback or additional ideas. Be nice, even if their ideas are not something you are interested in doing, just hear them out. Your project will evolve and their idea may not be so crazy 6 months from now. Plus, you don’t have to add it, just nod your head and smile.
2. Plan It Out
When starting from scratch with no experience you have to accept a cold hard fact. You will not have a finished web app in a week. If you are trying to build something seriously cool you should plan on a year. Yes, a year. You want to do this right don’t you? It’s crucial that you spend plenty of time on Step 3 and even continue your education as you develop you web application. Try to schedule actual time for working on your project and not relegate it to “free time”. If you have extra time to work on it then great but make sure you schedule time to make progress.
3. Education
It’s important to realize that programming languages are referred to as “languages” for a reason. School is in session my friend and if you want to turn your web application into a reality you have to become multi-lingual. Now before you give up, even before you get started, let me tell you this, you DO NOT need to become fluent. While it’s hard to get around France without speaking fluent French, people do it everyday. (I did it for 2 weeks!)
There are also plenty of high quality and free online resources for learning HTML, CSS and Javascript/JQUERY; the three major web languages you will need to use to build your web app. PHP and Ruby also have numerous online sites dedicated to helping you for free! Codecademy.com is one of my favorite online resources for developing programming skills.
4. Baptism by Fire
Alright, it’s time to get your feet wet. If you went the Codecademy route you will have built some mini projects and you have probably realized how some of the things you learned can be applied to your own web application. Start building the skeleton of your web app, don’t worry so much about what it looks like just yet, focus on getting it to function properly first. This is where your lack of experience will start to show, but don’t worry, you can do this! There are also plenty of very capable individuals willing to help.
5. Stack Overflow
If you Google “how to do … in javascript”, you will most definitely end up on Stack Overflow. If you are not familiar with it let me sum it up. Anyone can ask a question, anyone can answer a question, the best answers are voted up by users and it is a programmers best friend / safety net / bible. The amount of programming talent and skill that is freely tossed around is mind boggling. If you are serious about your web app, you should be by now, join Stack Overflow and get some help.
6. Feedback, Bugs and Starting Over
At this point you should have something fairly functional and are able to interacte with. Before you try to put the finishing touches on it have plenty of friends give your web app a try. Remember, you have been working on this thing for months and what seems like simple navigation to you may not be as intuitive to others. Do your best not to get defensive and instead take note of everyone’s comments. If something was mentioned by more than one person, you should give it serious consideration. Having other people try your web app is also helpful for finding bugs. Sometimes people do things you would have never expected and it can reveal an issue with your app. Fix them all before you go live.
Don’t feel bad if it seems like you’re starting over. With every improvement and fix to the web app you make you are increasing the chances that your web application becomes successful.
7. Make Money
There are numerous ways to monetize your web app. Google Ad’s may be the easiest but may not be the best. It depends on your web application and how users use it. Something that is used infrequently by a large amount of people may benefiet from the Google Ad model while something that could be used everyday may look into a subscription or freemium model. The specifics are varied but if you made it this far, you’ll have little technical trouble and will be so excited that you should have it implemented fairly quickly. Now enjoy the fruits of your labor!
* Some of you may be asking, “What makes you an expert at creating a web application from scratch with no experience?”. Well, I’m not an expert, but I have done it. Only, somewhere in Step 6 it was determined that my web app would be much better as an actual mobile app. Since the functionality was already done with web languages I am using PhoneGap to utilize my existing code and turn it into native applications for iOS, Android and Windows phone devices.