I find myself repeating these various points to many people at different times, so I thought I would write them down.
Colleagues will often approach me with a fresh idea or rescue project, and solicit my advice on the proper path to follow.
Depending on their progress, here's some of the things I'll tell them:
If you're thinking of your Internet project as a money-making venture, then surprise: it's a business.
You need to do a business plan, just like you would for a brick-and-mortar shop. Provide analysis of costs, income models, regulation and licensing, break-even points and an honest evaluation of your potential competition. You can get help with a business plan - including templates and examples - from the US Small Business Administration. It was written in ColdFusion... my favorite language!
Talking to us - about the general idea and all the money we will make - is not a business plan.
Control your Domain Name
I'm constantly amazed at how many large, profitable businesses are on the web today, in which no board member or owner - not even the CTO - can say for certain who actually owns their domain name. Perhaps they can see who gets the bill, but that's not always the same person.
If your domain name is like a car's license plate, then "registrar" companies like GoDaddy and NetworkSolutions hold your domain's "pink slip" for the DMV of the Internet: InterNIC. Each record shows the owner, the administrative and technical contacts for the domain name. That's three different people or more. The owner sets the admin & technical contact. The admin contact gets the renewal bill. The tech contact determines which computer will answer when somebody types in your domain name.
So, we can develop and design your next Internet thing to perfection, but without a technical contact, nobody will ever see it there. And without control of your domain name, you won't be able to set the technical contact. Use WHOIS registry data to learn the sponsoring registrar of the domain name, they should help you with the ownership record.
Web site or Web App?
In general, if your pages are designed to inform, entertain, engage and influence the public; then you've got a web site. If you can build everything your front-end needs by selecting from canned tools and features (blog, photos, shopping cart, etc); you've got a web site.
But if your pages will authenticate known people and/or perform special functions that are unique to your business; you've got yourself a web application.
This article is on our web site. Our task manager is a web app. We can do either one. Web sites cost hundreds, while web applications cost thousands of dollars.
Look and Feel
By now, you've done your business plan (or are already in business), and can assign the technical contact for your domain name. Good job!
Next, how does your site look? There are basically two ways to describe how this is done: the old way and the new way. The old way is from the glorious days of the steam-powered Internet, when the web browser was the only thing people used - and all dimensions were measured in pixels. Updating the look of an old page is a bit of a chore...
The new way separates the style (colors, typeface, logos & layout) of your user interface - or UI - from the actual content. This is so you can easily re-style your page as needed, to accommodate special needs or cultures, a specific promotion or that important customer. As a bonus, your page can automatically adjust itself for printing - or the smaller screen of mobile devices (so that people don't have to zoom in to read teeny-tiny text).
If your project is brand new, you may not have any "look" to inspire you yet. We can help you design custom template; or you can browse from the thousands of free templates available at places like Open Source Web Design, Free CSS Templates or Styleshout. It's the template which will determine how each of your pages will look. When you look at templates and other pages for ideas, remember that colors and pictures can be changed.
Web applications are a great way to increase productivity and modernize a business process. They are not the best way to develop your business process. We'll want to talk about how the current process works; with you and the folks who actually work that process. This can be revealing; as some will describe a rule that guides a daily routine, while actual workers might expose the rule's inability to account for every situation and how they actually get it done.
You'll want to be certain that your systems are already sound before you apply technology to them.
Who will be using your web application? This is not a trick question. Chances are good that you'll have just a few unique "user types". So describe each one: Entry clerk. Shift Manager. Administrator. IT Guy. What tasks do they perform? How computer savvy are they? What is their goal in using the system? Each of these write-ups is called a "Persona", and they are invaluable in helping to keep your application development on track and focused. Sometimes it even helps to give each one a name and short biography.