I think a major point has been missed out so far...
RESEARCH! :)
Possibly the most boring, but most useful thing you will ever do.
Before you begin I would advise you to look in the game genre you want to make.
1)Find the Games that were a big hit
2)Find the games that failed to make it. These are harder to locate but if you look around NG or Kongregate you will find quite a few. (Do not look at games that are half-finished since this will be the reason in itself why the game failed)
3) Analyse the differences between the two (You will be surprised how many fully polished games failed to achieve popularity) What did the successful ones have that the others didn't.
4)Try going back a few years and see which games in your genre were successful (often these are much simpler than modern ones), look at a collection of hits since then until now. What did each new game add to the genre? Why were players willing to pick these games over others? Make a list of all of these features. (Bare in mind that they can be ANYTHING even something like "They use lots of blue in the background" or "They all have an instructions screen")
5)Look at your list, and identify traits that have appeared more then once in successful games. Mark them out. (These features are keepers)
6)Once you have this beautiful list, come up with a couple of ideas of your own (Doesn't have to be anything major, just has to be something new and original) feel free to take an idea or two from an unsuccessful game (Just make sure that the idea is NOT shared across them).
7)Got that? Brilliant! Now copy all of your good and fresh ideas out onto a new sheet of paper/txt-file. (Keep the original list since it will save you much time if a year down the line you want to make a similar game)
8)Add to this list all the things you need to learn about the game engine you want to make (If you want to make a platformer I would imagine things like "platformer physics" "Enemy AI" etc etc Anything you need to know that's obvious) Then mark out ANYTHING from your research that you need to learn.
9)Make time to do tutorials/study on the things marked out. Make sure at the very least you understand the concepts of each of these things before you begin.
10) Time to begin! Look at your lists and plans and work out what needs doing first. My advice is to find the thing on your list that you are dreading the most and do that first. (After that you tend to feel good about yourself and you have lots of momentum for the rest of the project). Alternatively if the project feels really daunting or you lose motivation all together start with the simplest action to gain more confidence.
11) If it feels like something can't be done break it into smaller steps and do more research, until it becomes a sequence of small simple steps.
11)Often when in a project (especially if you are new) you will come across things you didn't plan for. When this happens look at the new item, break it down into smaller steps (research more if need be) then make sure you understand what needs to be done (and why) before you do it.
------------------------------------
Most importantly, learn and understand BEFORE you start! Not only will you be able to sort out issues faster and generally work better, you will know much more for your next project.
Accumulate enough research on different genres/engines and so long as you keep learning. in a years time all of these steps will take no longer then twenty minutes.
Remember that for every minute you spend planning you save yourself 10 minutes of work!
Best of luck to you.
(note: I have left out steps such as story-boarding or concept art. These are to do at your own discretion or at the discretion of your artist. They ARE important and will save you time.)