General
February 20, 2005
The web design world is going through major changes, changes I think many web designers are just not aware of.
It comes down to 3 things:
- Blogs/CMS software: these are turn-key template driven web sites. This is not just a visual component – Blogs/CMS systems have built-in functionality (‘engines’) that makes maintaining a website trivial.
- Web site templates: purely a design template, whereas Blogs and CMS offer both visual and functional aspects.
- Pod Casting: the emergence of audio and soon video content on the web at levels never seen before.
These three developments I believe are changing the face of web design, in a way that we have not seen since the first web design software came out years ago.
The days of building websites from scratch will soon fade, and become something very specialized – there are just too many advantages in using a CMS/Blog or a website template.
THE POINT:
As a web designer, you should jump at this opportunity – begin to learn about how you can use web templates and Blogs/CMS to build your own killer websites faster than ever before.
read more
February 19, 2005
XML is another one of the big buzzword these days, it is an important technology that is widely used, but that doesn’t mean you should look for ways to use it.
Technology is there to solve problems, so if the problem warrants the use of a particular piece, then by all means use it, but not just for the sake of using it!
HOW KILLERSITES USES XML
I use XML daily for application server (web servers on steroids) configurations and for simple data storage.
Typically you wouldn’t use XML directly in a web page unless for example, you wanted to create an RSS feed – RSS is not really meant for human eyes, though it is human readable.
You can check out the killersites forum’s RSS feed if you’re curious about XML.
read more
February 19, 2005
When you think your website is done and ready to launch, it’s time to go over this checklist.
I always look for these elements in web sites:
- Clean easy to update design/structure.
- Good usability in the design – and all that implies.
- Fast loading ‘light’ pages.
- Intelligent use of technology – using Flash when it makes sense not because you want a ‘cool’ intro!
- The website’s ability to convey the meaning/message of the website quickly if not instantly.
THE DETAILS
1. Clean easy to update design/structure:
Just a few short years ago the web was full of dancing mice, spinning globes and animated construction workers, things have now changed where design principles are now actually put to good use … amazing!
馃檪
A problem with many websites, is that the design is not flexible. Websites constantly change; if you find that putting in a new navigation button is going to take a lot of work, you have to reconsider your design.
You should be able to freely and add and remove elements from your pages with little to no trouble – that only makes sense.
read more
February 19, 2005
More and more there are grumblings in the Java community – the language is showing its age and Java nerds are starting to look elsewhere … slowly.
In their search though, I have found that Java nerds tend to ignore or dismiss PHP … instead they look to Python and marginal languages like Ruby as the potential alternative.
WHAT’S THE DEAL?
I have to ask myself, why are Java nerds ignoring one of the most popular languages in the world? Why are they ignoring a technology endorsed by IBM, Oracle and used by Yahoo?
I think much of it comes down to Java elitism and false perceptions about PHP, it comes down to these points:
- PHP is a scripting language that is easy to learn – Java elitism has a natural dislike for anything easy.
- PHP has a procedural history that makes Java users snicker – despite PHP5’s full blown OO feature set.
- PHP syntax can be a little inconsistent at times – this is true.
On the flip side, Java users seem to ignore some very important facts about PHP:
- PHP is ubiquitous. It’s hard to NOT find a host that supports PHP.
- PHP is fast and scalable – Yahoo proves that.
- PHP easy learn, easy to write and is fairly concise.
- PHP has a huge community where there are plenty of open source tools available.
- PHP can be maintainable: there are database abstraction frameworks (PEAR DB), there are templating frameworks, MVC and other frameworks so that you can build maintainable scalable applications in PHP.
One argument you hear from the Java camp is that PHP is a web application only language … pratically speaking. This is indeed the case but what about Java? Most Java projects are web applications, Java on the desktop is but a small fraction of the Java work being done.
Ok, you have cell phone and other small device work, but the fact of that matter is that most Java projects are web applications.
Beyond Java
Bruce Tate wrote an excellent book (‘Beyond Java’) criticising Java and speculating on what the next big language will be. Not surprisingly, he spent little time on PHP.
Not to take anything away from the book, it’s really good. Nonetheless, from the perspective of someone who wants to make a living, it only makes sense to strongly consider a language that is so well established and easy to work with.
WHAT AM I DOING?
I think for the time being, when it comes to small and medium sized web applications, PHP can’t be beat. I have hung up my Java-shoes and now look to PHP for any new projects.
Stefan Mischook
read more
February 19, 2005
NOTE: This article is theoretical – CSS tables are not supported by the browsers yet, and cannot be used. I wrote this article to make a few points and to expose people to lessons learned in software development: that grids are an excellent way to layout user interfaces.
Stefan
–
Grid layout patterns are commonly used in creating software interfaces – in web design we call them ‘tables’.
But today HTML table based layout is generally frowned upon because:
- HTML tables render/display content in a fixed format/style that might not display properly in certain types of browsers.
- Tables semantic meaning is thought to represent tabular data – like a spread sheet. Thus using them for page level layout is just wrong … gosh darn it!
There are other reasons why some web designers will say HTML tables suck:
- HTML tables cause code to be bloated and thus pages will take longer to download.
- HTML tables will make your website less search engine friendly.
- HTML tables will make your websites less accessible.
The last 3 points are myths and should be ignored – I covered that in other articles.
That being said, the first point about tables imposing a fixed format/style (where formatting and structure are intertwined – that’s bad,) is very real and very important. It is so important in fact, that I will do what I can to avoid table based layout despite the extra work and problems this can cause.
It’s a terrible shame
Using a grid/table to create UI’s is intuitive, too bad that table based layouts are so controversial … but there maybe is a light at the end of the web UI tunnel: CSS table layouts.
What the heck are CSS tables?
From the W3C:
‘The CSS table model is based on the HTML 4.0 table model, in which the structure of a table closely parallels the visual layout of the table.’
Now in English:
CSS tables are just a set of CSS attributes that you can apply to (probably) div tags to create a ‘table’. Check out this code snippet and things should clear up:
<div class=”table”>
<div class=”row”>
<div class=”cell”>
<p>Yallow!</p>
</div>
</div>
</div>
This is an official W3C specification, I’m not inventing anything here!
So why invent CSS tables when we have HTML tables?
The answer is simple young grasshoppers: to gain the advantage of table based layout while avoiding the problems (mentioned above) with HTML tables:
- HTML tables format content in a fixed structure that might not render properly in certain browsers.
- Tables semantic meaning is thought to represent tabular data – like a spread sheet. Thus using them for page level layout is just wrong.
CSS tables can’t be used in any browser today, so why mention them?
I have two reasons why I wrote this article:
- To educate people of this long term possibility and maybe to start stirring things up – it would nice to have this web design tool.
- To make a point about grid based layouts: they have merit and should be considered.
Stefan Mischook
read more
February 18, 2005
A lesson in Real-World web design.
I wanted to let you guys in on a lesson I’ve learned more than once:
DON’T BE SEDUCED BY AN EXOTIC TECHNOLOGY NOBODY USES!
Once and a while you may come across, what would seem to be a ‘killer’ piece of software, or maybe a cool new programming language – something in that would appear to give you some advantage.
That MAY be the case, but many times, it isn’t really so – think twice before your leap!
Consider these points:
- You will have to learn this new thingamabob – that takes time.
- Often, new thingamabobs excel in one area and stink in others – problem is that it can take time to figure this out.
- Listen to the king: “Wise men say, only fools rush in.”
Do you notice a pattern here?
Yes, it’s all about time. All this junk (software, programming languages, markup languages etc…) have one purpose in the end: to save you time.
Keep that in mind when you approach things – ask yourself:
‘Will using this save me time?’
– –
read more
February 17, 2005
It looks as though IE7 will be breaking many commonly used CSS hacks and thus many Web Standards based pages – this adding credibility to my articles critical of the overly zealous Web Standards movement.
Direct from the IE7 blog:
“We芒鈧劉re starting to see the first round of sites and pages breaking due to the CSS fixes we have made. We would like to ask your help in cleaning up existing CSS hacks in your pages for IE7. It is has been our policy since IE6 that under quirks doctype we will not make any behavioral changes so that existing pages will continue to render unmodified, but under the strict doctype we want to change behavior to be as compliant as possible with the web standards. For IE7, we introduced new CSS functionality (see Chris芒鈧劉 blog post for the full list) and cleaned up our parser bugs. This leads now to several CSS hacks failing. If you are using IE7 (you are MSDN subscriber or received a copy at the PDC) you may notice major sites breaking due to the use of CSS hacks and the strict doctype. ”
In a nutshell: the forward compatibility argument is now proving to be flawed (as I’ve been stating for a long while) and now many of these Web Standards based websites will have to be updated to work in IE7! So much for forward compatibility…
read more
February 17, 2005
For the last 6 years I’ve had total control over my deployment environment (running my own servers,) and never had a problem with Java.
Recently I moved to commercial 3rd party hosting, where I had a private JVM but no control over my server set up. To make a long story short, I have now been dealing with Java deployment hell … Java is not playing nice.
My experience
After 6 years of enjoying the comforts of having my own server, for whatever reasons, I moved to 3rd party hosting. What took me by surprise was how hard it was to find a suitable Java hosting company. I went through 4 before I found a company that actually was able to do the job properly.
–
One of the big selling points of Java has been the write once and run everywhere theory – sounds great and apparently people have had a lot of success with this … but my experience has been something else.
A couple of tips:
- If you can, deploy on your own servers: Java is much easier to handle when you control the box.
- Never go with Java hosting that shares the JVM.
Without a private JVM, you cannot restart the server (Tomcat, Resin etc) and so updating classes and property files are a pain. And since you are sharing the JVM, anybody’s code might take your app down.
Anecdote: With the first host, when I uploaded my simple POJO based application (that had been working on my servers for a couple years with no problems) I took down the whole bloody server! Strange that this still happened despite the fact I had had the same configuration?
Anyway, they gave my ass the boot and I had to move on to my next victim!
馃檪
Conclusion:
Java is brittle in a shared environment, hard to configure and problematic – it sucks. I think this is a symptom of the Java community’s need to over-engineer everything and shows how Java is no longer suitable for small and medium size application development.
The alternative:
Right now I would go with PHP because it is easy, fast and everywhere. It’s not the perfect language but it makes building web applications really easy compared to Java.
read more
February 16, 2005
A quick overview of what a web designer needs to know.
Topics covered:
1. Pillars of Professional Web Design.
2. The Future of Web Design.
3. Getting your first web design Job.
Pillars of Professional Web Design:
The Definition:
I am referring to the sum total of what a web designer should know. The fact that we can now define this is a great thing.
I the recent past, a web designer was more of a vague profession, if one at all. Most ‘web designers’ were actually graphic designers moonlighting as web designers. They did not really understand the medium at all and we still see symptoms of this in websites all over the Web.
Symptoms that include sliced images, heavy pages, no thought or support for things like SEO, usability, accessibility, maintainability et cetera. In fact still today, many ‘web designers’ would have a hard time writing even simple CSS code.
The Pillars Of Professional Web Design
脗路 HTML, CSS
脗路 Basic Design
脗路 Usability
脗路 Accessibility
脗路 SEO
脗路 Best Practices
read more
February 16, 2005
Making a website easy to navigate is one of the most important things you can do as a web designer – if a website is not easy to navigate, people will quickly leave.
Over the years, every type navigational layout (system) has been attempted, and now we know the 2 best ways to create navigation for websites:
- Left aligned ‘master’ navigation menu using CSS buttons or links. And ‘breadcrumbs’ navigation running across the top of the page.
- A close 2nd would be to have the ‘master’ navigation float on the right. But since book layouts (table of contents) are left aligned, left aligned is best for navigation.
read more