To get to the post of today, I came across a very interesting article on blogoverflow.com, the programmers community blog of StackExchange, titled 20 controversial programming opinions. One opinion really resonated with the way I feel and I was also surprised to know this makes you more valuable to your employer. So, I am sharing this with you below, but don’t neglect to check out the whole article – it’s a great read.
Lately I have been part of a debate about removing the default WordPress theme, “Kubrick”, over at WeblogTools Collection, where Jeff Chandler introduced a topic about a ticket in Trac outlining his proposal for a new theme to be based on the current WordPress code-base. Actually, the track author clarified in a comment that he did not intend to have a theme to replace the default Kubrick theme, rather he would explain that: “It was never my aim to replace Kubrick, or to have it included as a WordPress ‘default’ theme, rather just an included theme.” However, Jeff the above-mentioned, put into trial the default WordPress theme by claiming:
The way I see it, if you attack the root of the problem and replace Kubrick with a base theme that contains everything DD32 mentioned, this could do nothing but positive things for the WordPress community.
Was He Right?
As a WordPress theme developer, I agree that the default Kubrick theme should be removed from being the default WordPress theme. I do not know what the WrorPress team expect the default theme to do, but, from my position, I think the Kubrick is unnecessary to be there as it does not offer much. All it does right now is being used as a blog theme. I have never used it as the base code of the themes that I have developed, it is too messy and it has a lot of files. I have used the Classic theme several times as it would do better, however, it required heavy recoding too.
What would be the best theme to be included as the default theme or at least come along with them. There are several features that I would like the default theme to contain and come along with. Here they are:
- Is updated with the latest WordPress template tags
- Have Clean Markup
- Make use of WordPress default CSS styling tags
- Is easy to modify without compromising the look and feel
- Is easy to add other features, such as extra sidebars
- Be widgetized without using a list
- Have a simple comprehensive functions.php file
Why All This?
What would all this bring to most interested group, the WordPress users? If WordPress developer have a better example to follow and to built upon, which is updated and at the same time light and valid coded, they would produce eventually better themes and child themes for the vast WordPress community. So, the theme developers are shown a white path to follow which would led them to better products.
Right or Wrong?
I might be wrong, that is human. I would like to hear that. At the same time, I might be right and my post needs to be enreached with other features for the visionary new WordPress theme. What do you think?
Paul Boag has posted recently at Smashing Magazine a great article about corporate website problems entitled 10 Harsh Truths About Corporate Websites. Actually the whole article is great. Yet point number 8 got most of my attention and empathy – it deals with corporate website design. If you are a freelance web designer, like me, you have propably gone through that situation. I have gone several times through that and I have a very recent case of mine in which I had to recode the site five times because the partners of my client couldn’t make up thier mind. I have brought that section below for you:
8. Design By Committee Brings Death
The ultimate symbol of a large organization’s approach to website management is the committee. A committee is often formed to tackle the website because internal politics demand that everybody has a say and all considerations be taken into account. To say that all committees are a bad idea is naive, and to suggest that a large corporate website could be developed without consultation is fanciful. However, when it comes to design, committees are often the kiss of death.
Design is subjective. The way we respond to a design can be influenced by culture, gender, age, childhood experience and even physical conditions (such as color blindness). What one person considers great design could be hated by another. This is why it is so important that design decisions be informed by user testing rather than personal experience. Unfortunately, this approach is rarely taken when a committee is involved in design decisions.
Instead, designing by committee becomes about compromise. Because committee members have different opinions about the design, they look for ways to find common ground. One person hates the blue color scheme, while another loves it. This leads to designing on the fly, with the committee instructing the designer to “try a different blue” in the hopes of finding middle ground. Unfortunately, this leads only to bland design that neither appeals to nor excites anyone.
I hope you loved this realistic piece of writing about corporate web design. To enjoy the whole article read more at Smashing Magazine.
During my whole lifetime as a web designer or better as a front-end developer, I have coded only one site using tables for layout, the first one. It was the time when I had just began to do web stuff and I did not know very much about CSS and its potential, if not nothing at all. After that, I got introduced to CSS and ever since I have never used table in any of my site development projects I have worked on. I thought it would be a good idea to write something about this subject for the guys who still use tables for web design layouts, especially those that develop wordpress themes. So, let’s begin:
1. Tables are hard to code and difficult to maintain
Let’s suppose you are a hand-coder, how do you manage to write all those <tr>’s and <td>’s without errors? It is a common error when you code with tables to have missing tags or misused ones. It is even more difficult when one uses a WYSIWYG. WYSIWYG editors operate with table layouts and usually, the code that they generate is very messy. The same occurs when you slice a design with Photoshop or GIMP. Using CSS, you will code at least half less tags than coding with tables. Managing <div>’s through CSS is a far more easier, fun and creative process.
2. Tables are slow to load
The web site created in tables will take more time to appear on the screen
that CSS based one.When using using tables, the page won’t show up until the browser parses the last closing </table> tag. Moreover, the more table you nest within each other, the more the content will break until the images and text figures out where they belong to in the site. Well, this is a solved problem with CSS, just tell it where to be and there it will.
3. Tables can hurt your SEO
The more code that is in the way, the more junk they have to plow through to get to your content. Nested tables, which are usually used in table-based website layouts, would hurt the content that is inside it. There are more HTML tags than content.
There is another widespread idea about tables that use left-hand navigation (very common in table layouts) hurt the SEO, by telling the search engines that content is less important that navigation which appears before the main content in the HTML. This will distort search engines and mislead them in indexing your site. On the other hand, with CSS, you can make the navigation bar appear on top, but you can put it at the bottom of your HTML.
4. Tables lack accessibility
The same as it hurts SEO, it distorts screen readers. Most screen readers read pages in the order that they are displayed in the HTML. If a screen reader were to read the same page described above, it is possible that the customer would hit the back button before the reader had even read through all the navigation. Through CSS, you can display the anything on the top, but leave the most important part at the top of your HTML.
5. Tables don’t print well
Another problem with tables is that they don’t print well. With CSS, you can use a print style sheet to give another look to the page. You can also have elements that only show up when rendered to a screen, but not to a printer such as headers and footers. CSS is great for printing.
6. Tables make site redesigns much harder than semantic HTML+CSS
Through CSS, you can twist your site look so much, that you won’t resemble with the old site at all. The most important part is that, all this can happen without touching the HTML part at all. You can even have several different skins for your site and allow your users to select one of them. This can happen only in dreams, if you are using tables. You cannot alter the layout at all, expect colors and font size, when you are using tables, even though you might be using CSS. Get rid of tables.
It might be hard to make CSS-controlled layouts cross-browser compatible, which is often used as the main argument against switching to pure CSS. True. But as soon as you finally do it, the experience is great. The more CSS tricks you learn, the funnier it becomes to test them and play with them to see what other effects you can achieve. Tables could never be so much fun.