with all the focus being on the mobile web these days, one must have a basic understanding of how the pieces fit together before even writing a line of code.

there is a great online community which supports mobile development called mobiforge which could be utilised to answer all of your mobile related questions.

but as a start i will point out some important steps/considerations to take/make:

user-centered design

before you start on any work, you have to realise that by doing a mobile site, the most important part of your equation is the user and his phone.  it is easy to develop/design a site which looks absolutely amazing in a pc browser, but fails to even load within a phone browser.

you have to make sacrifices in design/layout to suite the user of the site and understand the limitations your user might face with his specific mobile device.  people accessing a site with a lower end phone usually wants quick textual feedback about a certain subject, rather than big glossy images that fill your screen.  once you understand what the user need – and design according to those needs, then you will be ready to continue.

keep your site simple

it is easy in a web browser to go back in your history and traverse navigation, but on a mobile it is a bit different.  so why confuse the mobile user with 50 levels of navigation, where a simple three leveled hierarchy navigational solution would be more than sufficient

and remember that there is no need to overcomplicate things by adding features that is nice to have, rather than have to have.  it is a bad practice on mobile or pc.

prototype it

a while back i read a blog post written by phil barret, an user-experience guru , who used prototyping to do the layout of his new home using newspapers.  this is probably the best analogy you can use to describe the importance of prototyping your designs to control the flow of your site.

design for the right device

group mobile devices into specific groups, for e.g. low, middle and high.  where your low end would be your nokia 2610, middle would be sony ericsson w890 and the rest, high end devices, such as the iphone, palm and other feature rich pda devices.

it would make sense to deliver more text-based content to lower end phones and more graphic rich sites to high end phones.  and make sure your features apply to the phone’s capabilities.  you shouldn’t give someone the option of uploading images if his phone doesn’t support it.  this could be achieved by using something like tera-wurfl.

standardise

make sure you comply with the industry standards.  for e.g. using XHTML-MP as your markup language and something like WCSS as your presentation markup.  specify your doctype, character encoding and use well formed html code.  you can visit the oma for more information.

this gives you more flexibility and would cut down on rendering issues in your mobile browser.

this is only very basic advice, and by no means do i advocate this as being the most correct approach, but it should give you some direction and hopefully a bit of a mind shift when it comes to mobile development.

some usefull links: