Archive for the 'Design' Category

How to prevent proxy servers from caching your content

A lot of people around the world are sitting behind proxy servers and it can be a good thing, because it reduces the bandwidth costs to a site. However, you don’t really have control over how the proxy server is setup, so you can’t really tell when it will refresh the content. To get around this, you can apply “Cache-Control: private” to the header of the request that is made. Doing so will tell the proxy server (shared cache) that it shouldn’t cache it.

Private - Indicates that all or part of the response message is intended for a single user and MUST NOT be cached by a shared cache. This allows an origin server to state that the specified parts of the response are intended for only one user and are not a valid response for requests by other users. A private (non-shared) cache MAY cache the response.
- RFC 2616

Weather or not to use this really depends on your site and what you are trying to achieve.

If you have a large, diverse audience, can afford higher bandwidth costs, and have a reputation for high quality, compress your content and use “Cache-Control: private”. This disables proxies but avoids edge case bugs.
- High Performance Web Sites, Steve Souders

If you can’t afford the bandwidth costs then you shouldn’t do it and furthermore there are no guarantees in life and this will only work if the proxy server honors “private”.

How done should your prototype be before showing it

Imaging one of these two scenarios

  • You are asked to make a demo that will be presented to the management or client.
  • You have a great idea for a new design for your old application and want to present it to your boss.

Whatever scenario you choose you will now be faced with a dilemma. If you choose to make a dazzling and beautiful mock-up the people you present it for will expect it to be almost good as done. If you on the other hand make a very rough sketch they will believe that you aren`t doing you job as well as you should. But if you don`t make it look presentable enough, they might not get the idea, which you are trying to get across. You can almost get a headache just thinking about all the possible constellation on what people will think about the demo you show them.

The issue here is that people don`t realize how much work there has to be put into making an application. The interface alone takes about 10-20% of the total work that has to be done - it is almost like an iceberg.

Whenever I’involved in creating an interface/demo, I always trying to find some sort of middle ground so it doesn`t look like it is completely done nor like a crappy and sketchy solution. I also strongly explain that what I`m showing is just a prototype and that there is still much work to do (depending on the solution you come up with of cause).

Sometimes it will be someone from the sales department that will show of the prototype to the client or perhaps even your (non technical) boss that will present it for the upper management and if this is the case, then it is really important that you think about how finished the prototype should look like. Especially salesmen have a tendency to butter the client and over sell the prototype and how much time it will take to finish it, just so they can make the sale. This is bad on so many levels, one of the consequences could be that you don`t make the deadline and will make you look bad.

So think really hard about how done your design, demo or what it should look like before it gets presented.

Css reset with Eric Meyer

One of the more annoying things when doing web designs is the fact not every browser seems to have the same default values for all the html elements. This can potentially wreck your design in some browsers and trying to fix a design for one browser were is looks bad, can probably lead to a screw up in another browser.

Therefore you should reset all the browsers default style values and Eric Meyer has made a nice little set of styles that you can copy/paste and use in your own web-design.

Next Page »