The general advice for upstarting developers seem to be to focus on mechanics, building fast a prototype, getting the core game fun and and so. For instance CliffyB did so at GDC 2012. This is not bad per se, but it is really not the only way to make games and usually, and this is the issue, result in the same kind of experiences. So to create a counterweight to this, I decided to make my own list of design advice. Here goes:
Find some core mechanic of controlling and interacting with the game, be that sidescrolling shooter, point and click or whatnot and then focus on the big picture. What feelings should game create, what is the theme, what kind of message should the game get across? This means creating an overarching structure for the game first, and then when you start designing the mechanics, levels, etc you make sure that it goes along with this. By doing so you can design games that try and convey things not possible over shorter time spans. It lets you control build-up and emotional journey to a much greater degree.
Design and create chronologically
Try and see the development process as a very extended playthrough of the game. By designing and producing the initial level/area/etc first you get a better feel for the player's journey through the game. This make it easier to understand the how the holistic experience will play out, and it allows you to always base later levels/areas/etc upon what the player's frame of find (as it is formed by the previous experiences) is at that point.
Of course you can still go back and change things as needed, and this is often required later. But you want to stick with the chronological structure until as much as possible of the game is completed.
Do not care about fun
First of, despite what some might say, fun is a very specific word and leaves out many type of experiences. For instance very few people would call "Schindler's List" fun. Hence you should not use fun, unless you are specifically after creating a "fun time". A better word to use is "engaging" which can be used to describe the quality of anything depressing dramas and lighthearted comedies.
Second, what you want to care about are your high-level goals. The most vital part is that anything you add to the videogame serve these. If making them fun help this purpose, then by all means make them fun. But if you want the player to be part of a dark and disturbing journey, then fun is most likely not what you want to aim for.
Proper assets early
Art assets such as a graphics, music and sound effects are far more important than what some might argue. Not all videogame ideas can be properly evaluated by using simple blocks and beeps. What the player sees and hears has a great impact on how they can relate to the game. Sometimes mechanics that at first seem really crappy, can start to shine once higher quality assets are used. If you want the player to experience a story by moving through an environment, then you need to have the audio-visual feedback that immerse them in that.
This does not have to mean that full production quality assets are needed and it is not always easy to know when your prototype looks and sounds good enough. But if make sure to keep in mind that the underlying system is not everything, then that is one step in the right direction.
Diversity in the world, not game core
Do not think that everything you want to represent in the game needs to be inside the core mechanics. Instead, keep the mechanics simple and then let the world do the work in delivering a wider experience. For instance in Limbo, there are only a few core actions available for the player, yet the game keeps the activities varied and unique through out the game.
This is the hard way of designing games as you cannot simply extrapolate from a prototype, but the end result is a deep experience that is easy to get into.
Do it as short as possible
Do not make a game that is the best value possible. Let the videogames say what you want it to and then STOP. Do not try and drag sections out for no real reason. In the end what you want to create is a product that delivers your high level purposes in the best way possible.
This is also a legit business choice as you do not compete with other time consuming videogames. If your game does not take up huge amounts of time and yet gives the player a coherent and fulfilling experience, there is a bigger chance they will have time and motivation to give it a go. I would also rather see a world with many smaller interesting experiences than long ones whose only motive is to eat as much time as they possibly can.
There you go! Now of course these tips are not some ancient wisdom that lead you to the path of glory. One must always try and figure out the best process for the type of game you want to make. But what I hope this does is to show any aspiring developer that there is more ways to create videogames than the conventional ones. At Frictional Games we pretty much follow the above and have managed stay in business for over five years and are currently financially stable. So what I just said are tips that have been tried in practice.
If you know any other tips that goes against the "fun mechanics are everything" line of thinking, do share!