As a programmer my first instinct is to start coding, but then again chapter one of every programming book says that you should NOT sit down and code.
So the question is, where to start?
I've given the project some thought, it's going to be a fairly simple web app, kind of a time logging app, to give you an idea.
Even though it's a small project I want it to have great-for-general-public-use quality, and I am willing to even cash out a bit to have a designer do a proper look and feel for the page.
This is a list of things I've thought about:
It's going to be in ASP.NET MVC
I want it to have the most dead
simple log-in (a la Instapaper, but
possible with option to do OpenID, a la SO)Should be able to use it with no log-in too, just session cookie
It's going to have several "layers" of usability, from very basic, to a more "dashboard" info tracking.
The webpage should very simple to use.
Planning on using jQuery for interactivity
Will use Linq2Sql
I want to start with the MAIN time tracking function, and then add other tools that not all people might want to use, but that more advance users would like (and no is not feature-ism, they are things that really have to go there for the product I want to do)
If the page was a little bit successful, I'd like to add mobile apps, so I should have some sort of internal web API?
So where should I start? Class diagrams? Basic "sketch/design" of the app? Workflow Diagrams? Mission statement?
And what should I do after that? When is "good" to start coding till I fall asleep?
Thanks a lot!