First steps with WordPress

Wow this is nice. I needed a more automatic way to blog, but I didn't want to separate it from my main website.
I  found a easy + complete solution which I will detail below. My initial skepticism of CMS was blown away seeing the power and flexibility of Wordpress. I only have "touched" the surface, there is much more to find out ..

Quick howto:
a- install wordpress on your domain server. Just upload the wordpress-2.9.x zipfile and put it in a dedicated directory, for example www.mydomain.com/blog. The setup is really easy: create a database and provide the db credentials via the initial webpage. it is recommended to keep this info outside public_html of course
b- pick a nice theme and customize it. There are many beautiful themes and with a little tweaking you have something nice in 15-30 min.
c- embed your latest posts into your existing site with a few lines of php: query_posts('showposts=xx').. .. see this howto
d- (optional) install colorbox, a very nice Jquery plugin, that allows you to show the Wordpress blog in an iframe so that visitors stay on your site. This is a personal flavor, this way I didn't have to make navigation links from my wordpress page back to my site and the whole design just feels more consistent.

Flexible design & CMS

So far I haven't been much into CMS (Content Management System). I like to fully control my designs and I accept the fact that building everything manually takes quite some time. The payoff is that you learn to program in a practical way. Of course this has been possible till now making relatively small websites.

I will definitely post my findings when I get into CMS. Joomla, Drupal, ExpressionEngine it seems the latter gets the best critics according to this comparison.. of course it depends the purpose of the site you are making. Still, there are two drawbacks using a CMS: you import a lot of 3rd hand code that needs regular security updates and secondly design templates might not be that flexible to style/ customize. They say Drupal is hard to customize and even Joomla is called rigid where it concerns templates.

When I will need to make a larger website (including shopping cart) I will start with Joomla (free, abundant info available, good starter guide - see my reading list). ExpressionEngine is not free but it seems very professional and has a strong support.

For smaller sites I will stubbornly stick to manually programming the dynamic aspects with php and mysql (and for 2010 I'll set out to learn what Ruby on Rails has to offer as well!). I think it is important to stick to some best practices independently the tools you design with (list is not complete): 1. use includes to have static data stored in one place (e.g. footer) / 2. use a database to update and present content / 3. use html semantically and separate styles using CSS / 4. don't forget that good content is key and make sure google can find it (SEO)

Happy New Year! Bob

Site online

Hello everybody. Today I am releasing my site. Thanks for checking it out.

This site is about web design: the sites I make and the web techniques I am learning about. The web is a quickly evolving place, sometimes it is hard to keep up with the many new technologies. However, if you're eager to learn, you'll find out it is not that difficult to make good websites that are fast, simple and creative.

The key is defining clear targets at the start and regularly match them against your progress. The endgame is equally important: have all best practices been applied? Does everything work as expected?

It is important to use progressive enhancement: first the structure / markup (xhtml), then the presentation (css) and at last some javascript to enhance the usability. It doesn't only save time, it guarantees clean web designs!

My goal for 2010: keep on making beautiful web sites which are fast, creative and reliable

Happy designing!
Bob

Faster websites

I just used yslow to enhance the performance of my site. I managed to bring it from lowest grade F to grade B - nice!

This firefox plugin can be run on any website and shows 22 indicators how your site performs (= basically what is happening when the site loads in your browser). Some easy things you can score on: 1. put the JS at the bottom of your documents, 2. make fewer HTTP requests (putting more scripts into one file, because the browser loads only 2 files at the same time!) and 3. "pack" code files (eliminating white spaces - there are tools for this, see packer and jscompress (my bookmarks).

Chapter 3 of "building findable websites" (see reading list) describes how this works and much more.

Yslow for faster websites!