The vast majority of my projects start in the design phase. Most often, my work consists of redesigning an existing site or building something from the ground up.
The first step is to discover who the client really is, what their needs are and what the client would like the site to actually accomplish. This information is gathered into a scope of work, which I discuss and define with the client. Knowing a client's intentions can help drive whether we will have callout zones and promotions to drive users to specific areas, if it's a site intended to showcase work, or if it's simply an informational site.
If the client doesn't have an identity for their business, I start with an initial phase of developing a logo and some brand standards for them. If they have a logo, but no standards, I will explore options and color schemes for a look and feel that will compliment and enhance the look that is suggested by logo. If the client has existing brand standards, I work within those parameters to develop a look that is consistent with existing collateral.
In the initial design phase, I generally will provide three homepage layouts for the client to review. From initial feedback, I will take one of the layouts and further refine it and flesh out how the layout translates to interior pages. This process is repeated a couple times until a solution is settled on.
After approval of the design, I start the process of cutting up the graphic files, and begin writing the HTML and CSS files for the design. I generally build things by hand, as I found early on that using so-called “WYSIWYG” or What-You-See-is-What-You-Get editors is a recipe for bloated and convoluted markup.
This process of developing HTML and CSS is usually intertwined with implementing the site into a Content Management System, or CMS. Because CMS systems have their own quirks in their output, building the site in the environment it is going to live in allows me to avoid having to rework/refine the CSS later. I have worked with various CMS tools such as the Trabon Portal, WordPress and Sitefinity, but have recently settled into using Orchard as my primary CMS for websites. It has proven to be very flexible from a front end development standpoint, easy and efficient to work with, and has most of the features my clients need built in.
Once the general framework of the layout is implemented into the site, I will go through and fill in the content. Content can come from many places, but is most often provided by the client or modified and updated from the old website. At this point, I continue to refine and tweak the style sheets to address any quirks that arise from adding the content to the site.
Once the site has been built and fleshed out, I'll post a development site for the client to review. From there, it is mostly minor tweaks and adjustments before we push the site live.