Before programming, I was a designer. A lifetime before that, I studied fine arts. Many things have changed, but my love for books has never changed, also as physical objects, of worship, of desire.
I think my love for books has to do with my interest in languages, which has been constant in all the professions I've had in my life. The notion of language is fundamental in visual arts, design, and programming.
The notion of language is fundamental in visual arts, design, and programming.
I often say that what happens in my head when I paint, or when I put together a layout, the thinking process, is not so different from what happens when I try to solve a code-related problem.
That's why I'm convinced many people with a knack for written language or learning languages could be first-class programmers. People who are commonly known as "people of letters," are the same ones who say, "I could never do that." Unfortunately, we've created an enormous divide between humanistic and technical professions that isn't easy to cross.
But that's not the point.
Book design and editing
If I weren't a programmer, I would have loved to have a job related to books, especially book editing.
There's something extraordinary about the process of thinking up a cover or typesetting a paragraph. Being able to lay out a good paragraph, fluid, and well-adjusted, with the right length, precise line spacing for the paragraph's length and text size, legible typography, a beautiful pairing... It's a design skill that often goes totally unnoticed, although that's where the craft can be appreciated.
There's something extraordinary about the process of thinking up a cover or typesetting a paragraph.
Sometimes, you open a book and, wow!
It would be an excellent technical test for specific design roles. You can tell a lot about a design profile simply by the considerations it applies in laying out a paragraph.
But that's not the point either.
CodeBug Books
The point is that I love programming books. There are some very interesting programming publishers out there who put out fantastic things, but let's be honest, the change from the design sector to the programming one is really noticeable. Take a look, for example, at Counter Print Books, a publisher with design books that are a delight.
So these days I've been redesigning the covers of some trendy programming books. I have redesigned four of my favorites as if they were part of a completely made-up publisher's collection, called CodeBug Books.
This is what 'Clean Code' and 'A Philosophy of Software Design' would look like if they were edited by CodeBug Books.
I did it with no other intention or purpose than to play. It was nice to spend some time designing again. Not for a side project, not for a friend, nothing like that. It feels good to turn the craft back into a simple hobby, without the pretensions and added pressures that professionalization adds.
So these would be my ideal covers (like this, or something similar) for:
- 'Clean Code', by Robert C. Martin
- 'Eloquent Javascript', by Marijn Haberveke
- 'Refactoring', by Martin Fowler
- 'A Philosophy of Software Design', by John Ousterhout
A simple design, solved with very few elements, cohesive, and with a slightly retro flavor. In English, because that's the language in which I like to read technical books.
I like some of the original cover designs more than others. The Clean Code one, in particular, looks horrible to me. On the other hand, the one of 'A Philosophy of Software Design' is quite good.
I've included all the images below. I hope you like them. You can tell me what you think and recommend your favorite programming books here.
Show me the design
Originally published on María Simó's blog.