Five Keys to Successful Web Development

Today was the last day of my contract with Target, and before I left, I was asked to jot down some guidelines for the developers to help them in the future when designing their applications. Below are the pearls of wisdom I came up with. Not new or revolutionary by any means, but it has been my experience that they are all too often over looked.

First, let me just say there are no hard and fast rules to development. Every project is unique and has it’s own challenges, and you need to be flexible in finding solutions. The guidelines listed below are just that, guidelines; they are not meant to be followed absolutely or blindly. Size plays a big role in these guidelines; the bigger the project, the more important these guidelines become.

  1. Never develop a site to work with just one browser. I don’t care what you’ve been told, but at some point, someone is going to need this site to work on a browser other than the one you developed it for.
  2. Future-proof your site. You don’t know how your site will be used or expanded in the future. Building it with the future in mind will minimize rework.
    1. Building your site to be cross browser compatible goes a long way in future-proofing your site.
    2. Develop and use a naming convention. A naming convention is an essential tool in organizing your site’s files and CSS and allows others to more easily understand the structure of your site.
  3. Use CSS to control the layout and design of your application.
    1. Use external style sheets to easily make global site changes. Do not use in-line styles or HTML attributes (i.e. <td width= "100">).
    2. Use tables for what they were intended, to display data. Do not use tables to layout your site.
  4. Use prototypes. Build HTML and CSS prototypes to test UI and browser compatibility before starting construction.
    1. “Know your users—for they are not you.” As developers we often become too close and familiar with the project we are working on. It is important to make sure that you get feedback from you audience as you develop the prototypes.
    2. Not all browsers display HTML and CSS the same way. Prototyping gives you the opportunity to discover browser specific issues and fix them before construction begins.
    3. Once the prototypes have been tested and approved, use them as the foundation of your development. This speeds up construction and helps eliminate chances of error.
  5. Know the limits of your technology. If a particular .Net or ASP control is incapable of rendering code in the format you need it to be in, make sure your prototype reflects this. Nothing is more frustrating than spending weeks building and tweaking a prototype only to find out that the technology you have chosen for development is incapable of recreating your prototype.

The iPhone: Two Months Later

My iPhoneIt’s been two months since I purchased my iPhone and I couldn’t be happier. This is my first smart phone, as well as my first PDA, so my experiences are limited, but I love this device.

I never felt the need to have my contacts and calendar with me at all times, but now that I do I feel so much more in control. And being able to browse the internet and check my email anytime and anywhere is incredible. I just wish Apple would come up with a Flash player soon.

There are literally thousands of applications for the iPhone, and while a great deal of them are crap, there a some real gems:

Vay, a 1993 Sega CD game, has been ported to the iPhone and I had a blast playing it. The controls were reworked for the iPhone’s touch screen and for the most part worked great. While most of the other games I’ve downloaded are fun, they aren’t very deep. They would be what is considered casual games; games like Tetris, Chess, card games, Backgammon, etc. Games without a story or plot; games that you can pick up and play for just a few minutes at a time. I probably spent nearly 30 hours playing Vay. It’s what broke my reading marathon. Vay costs $4.99.

Remote is an app that let’s you control an iTunes library from you iPhone. While great for parties,  it is also good for taking control of your friends iTunes and playing some decent music for a change. Remote is free.

Another fun app is Shazam. Shazam will listen and identify a song playing off the radio or an other source and then create a link to that song in iTunes. Shazam is free.

And speaking of free, many websites have created free iPhone interfaces for their websites. Google, WordPress, Yelp, ebay, PayPal, LinkedIn, Facebook, and Twitter to name a few.

I love my Mac PowerBook and can not see myself ever going back to a desktop computer, but the more I use the iPhone, the easier it becomes to leave my PowerBook at home.

I was a little hesitant to take the leap because of the increase in my monthly bill, and I do believe AT&T is charging too much, especially for SMS. But that is a symptom of the wireless carriers in general and not limited to AT&T. But switching to the iPhone is like when I switched to broadband. Now that I’ve done it, I don’t think I could ever go back.

The Feast of Fantasy

This marks the 10th straight year for attending the Feast of Fantasy at the Minnesota Renaissance Festival. This year’s menu was as follows:

  • Appetizer: Panko Breaded Ravioli
  • Soup: Corn & Green Chili Bisque
  • Salad: Capressi Salad
  • First Entrée: Steak au Poive with McCaire Potatoes and Brazier Zucchini
  • Sorbet: Strawberry
  • Second Entrée: Sliced Chicken Breast with L’orange Sauce served with Wild Rice, Cranberries and Caramelized Onions
  • Dessert: Chocolate Cheesecake Phillo Shell with Strawberries and Cream

The soup was wonderful and I really enjoyed the salad this year. It was a nice change from the field green salad that is normally served. The steak was wonderfully prepared and the chicken had a nice spicy kick that was offset by the orange sauce.