This and many other posts are also available as a pretty, well-behaved e-book: On Web Development.
Solutions require problems. If you don’t have a problem, you don’t need a solution.
This is exactly why you should, whenever someone proposes a solution—which includes design and technical changes—ask what problem that solution solves, and to be specific about it.
If you don’t get an answer, you probably don’t have a problem and don’t need a solution.
If you get an answer, and let’s assume that answer reveals a real problem, you find yourself in need of a solution. That, however, does not necessarily mean the proposed solution is the solution—it may just be a solution.
You benefit from keeping this in mind, and from being smart about it. Have an idea of both the cost of the problem and the cost of the solution, and an understanding of when a high cost of solution still means it’s worth implementing it.
If you can’t tell when you’re dealing with a solution that lacks a problem, a solution that attempts to solve an ill-defined problem, or a solution that is far more expensive than the problem, then forget about the solution. It isn’t one.
CSS Media Queries constitute such a case after A List Apart made everyone remember them. Among the highlights, a fellow redesigning his site using media queries, overlooking, over all the hype, that 95% of what he did was possible a long time ago using floats and maybe a pinch of
min-width. Ask yourself: What am I trying to solve, and is the solution I have in mind actually appropriate?
I’m Jens Oliver Meiert, and I’m a web developer and author. I love trying things, including in the fields of philosophy, art, and adventure. Here on meiert.com I share some of my views and experiences.
If you have a suggestion or a question about what I write, feel free to leave a comment or a message.
On Problems: http://mindgarden.de/on-problems
On July 12, 2010, 17:39 CEST, Randy said:
I believe every manager I ever worked for wanted to fix non-existent problems with expensive solutions so they could appear to be contributing. This is a policy more companies should enact. Before there can be a solution, there must be a problem.
It’s better to have a solution but no problem, or a problem but no solution ? 😉
my manager also likes to fix “problems” with expensive solutions. lol
maybe its a managery thing to do….
On August 26, 2010, 22:42 CEST, tim said:
must be referring to code, because i can’t think of ever having had a design solution before having a problem…
Was reading through my past blogs and found a correlation.
Have a look at the most popular posts, possibly including:
- CSS Validation and Vendor Extensions: Throw Warnings, Not Errors
- CSS: How to Host Right-to-Left Styling
Perhaps my most relevant book: CSS Optimization Basics (2018). Writing CSS is a craft. As craftspeople we strive to write high quality CSS. In CSS Optimization Basics I lay out some of the most important aspects of such CSS. (Also available in a bundle with Upgrade Your HTML and The Web Development Glossary.)
Looking for a way to comment? Comments have been disabled, unfortunately.