The Struggles of Redesigning a Large Web Site

Managing a fairly large website can be frustrating at times, especially when the time comes to do a major redesign.

The Move from Static to Dynamic

At my day job, I have been through about three major redesigns of our website over six years and am currently working on our fourth. Throughout these various redesigns, our site began as a completely static HTML site and became more and more dynamic over the years. The nice thing about having a dynamic site is that I am no longer responsible for managing the site content; I am only responsible for the code and any bugs that pop up. The major drawback to having a dynamic site is that we’ve amassed a lot of data and it has gotten more and more difficult to redesign the site each time.

Our second redesign was our first primarily dynamic site and its foundation (the SQL back-end) was the basis for every redesign until now because of all the data. We have modified the database pretty heavily over the years, but its basic foundation is still there, mostly because it became too difficult to start over from scratch with the deadlines we had for each redesign. Hell, with the last one, I had two weeks to reprogram the entire front-end of the site by myself by the time the marketing department had finished the redesign plan and I barely got that done in time. There was barely any testing done but it turned out to not be as buggy as I thought it might be. It’s not how I like to do it, but I had no choice.

The New Redesign

As I mentioned before, I am currently working on another site redesign, but this time around it has been decided that the functional changes needed are too great to just modify the current database like we’ve done before. So now, we are starting over from scratch. It is just something that needs to be done, but it’s a huge undertaking. To be honest, it is a bit overwhelming.

With the previous redesigns, I was able to “freeze” the database and start the reprogramming. I just made a copy and the content managers had to keep track of any changes they made after it was frozen so they could make them again on the new version. This time around, however, it’s going to take too long to do the “freeze” option so my plan is to create the new database, get the admin screens working and then migrate the important information from the old database.

The Payoff

Even though it will be a difficult redesign, it will be worth it in the long run. I’ll admin, our current database is a mess with tables and stored procedures that are no longer being used, but the site is too large to keep up with what is and isn’t being used.

Starting over from scratch is going to make it much easier to manage the site and make it easier for future redesigns. It’s also gives me the opportunity to take what I’ve learned since the last redesign to improve and optimize the site.

Final Thoughts

Managing a fairly large site can be difficult and even frustrating at times, but it has given me experience I couldn’t have gotten working only on smaller sites.


Developing My Voice

While the blogsphere is not a new place for me, adding my voice to it is. I’ve been reading various blogs for a few years now; about 60 on a regular basis (thank god for RSS!). Occasionally I’ll leave a comment or two, but until now, I haven’t had the courage to write my own.

I say courage because as weird as it may sound (or maybe it doesn’t), I’m not the least bit freaked out about complete strangers reading these posts. However, when it comes to people I know, I’m pretty freaked out. I’m not sure why though, but I guess it’s how I’ve always been.

Anyway, I still have a lot to learn about this side of the blogsphere. I hope that you’ll forgive the wide range of topics as I learn and develop my voice.


Confessions of a Self-Taught Programmer

Being a mostly self-taught programmer has been interesting. Some days I don’t feel like a “real” programmer but other days when I figure out some really complex process with code, I do.

When it comes to learning, I’ve always been at learning by reading rather than lecture. I can’t handle lectures; they put me to sleep. Being able to learn like this has been a great asset to me through my career as a programmer.

A little history… With the help of one professor, I started teaching myself HTML in 1996 because it was something I was very interested in. I created a web site for my band at the time (Birthright). From there I took the few web-related classes the college offered but found each time that with every class, I had already taught myself what they were teaching like a year prior. Eventually, I taught myself ASP with some database backend.

Despite not having my degree yet, I felt like I knew enough to make a career out of my passion for the web. So, I started looking for a job as a web programmer in late 1999, early 2000. It took me a little while, but I got a job at Klipsch (where I still work 6 years later).

Over the years, I’ve taught myself so much and have really enjoyed it. I love having a job where I have to constantly learn new things. It keeps my brain from turning into mush. The draw-back, as I mentioned to before, is that some days I don’t feel like a “real” programmer. The reason is that I’ve learned how to do many things without always learning why they work. That’s usually because I needed to find a solution to make something work but didn’t have the time to really learn why it worked. Of course over time, using the same code over and over, I eventually learn the reason why.

But then again, if you can make something work right, the why doesn’t matter quite as much. I know it can sometimes mean that the code might not be as efficient as possible, but as long as it runs quick enough and does what you need it to do, it’s not a huge deal.

I find myself working on some very complex web-based applications these days and I feel more like a “real” programmer now than I ever have. That’s a good feeling!


Hello World!

What kind of a programmer would I be without starting off with this post?  So, Hello world!