The Journal of David Brooks

I've been writing here since my original site,, launched in 2005. Though the name has changed, I still tend to write about web and graphic design, development, photography, music, and whatever other random topic appeals to me that day.

A Little HTML/CSS/JS in a CMS Never Hurt Anyone, Right?

For years we’ve been talking about separating JavaScript from HTML, and CSS, but there’s always a temptation to continue writing HTML and CSS into the wrong parts of our content management systems. I wasn’t willing to say this before, but it’s a design problem. And it really is a tough line to walk.

Continue reading this article

A Few Changes for 2013

I’ve been meaning to mention a few things and just haven’t managed to do so. In the next few paragraphs you’ll probably understand why it’s been so hard to get all of this into words over the last few months. 2012 was crazy, especially the end, so this will be a bit of a recap as well as a preview of what’s to come in 2013.

Continue reading this article

Don't Over-Think Your CSS (Part 1)

Over the years I've developed a love for making HTML and CSS as streamline as possible. Consider this piece of content for a very lean carousel. (You'd probably need more to actually make it work, but the point here is to show a principle of CSS, not to build a carousel.)

Continue reading this article

Your First Web Application: From Design to Launch

Last night I had the privilege of speaking at Refresh Detroit about building web applications. Thank you to all the members and attendees of Refresh Detroit, and especially to Deborah, for inviting me. I had a great time as always!

Continue reading this article

Speaking on Apps..

I’m thrilled to announce that Refresh Detroit has kindly asked me to speak December 12 in Ann Arbor Michigan. The title of the talk is “Your First Web Application, from Design to Launch” As you might have guessed, I’ll be talking about the process of planning, designing, and building applications.

If you’re in the Southern Michigan or Northern Ohio area, there’s still time and room to sign up. You can find all the details at the Refresh Detroit Meetup page. I hope to see you there!

Continue reading this article

Sometimes Using IDs in CSS Just Makes Sense

Recently Chris Coyier and Harry Roberts opened up the conversation for CSS best practices and people are chiming in. I won’t disagree that the majority of the things Harry mentions are dead-on accurate, though whether or not I or anyone else actually follows them to the letter is debatable. But one of the personal guidelines that he points out is not to use ids in targeting CSS styles. As you might have guessed from the title, I subtly disagree.

Continue reading this article

Advice To An Old Friend

I once had a friend approach me for design advice. He was a much better programmer then than I am today, and a really nice guy. He hadn’t been exposed to design like a lot of us had, and the internet was still rather young at the time.

Continue reading this article

ArtisanJS Versus The Printer

I was so proud, I finished up a piece of art in ArtisanJS that I really loved and wanted to print. So, I found a printer and started thinking about what I’d need to give them to make something better than a digital print. After a minute of thinking about it, the reality of the situation started to hit me, I wasn’t sure I’d even be able to do what it was that I wanted to do. Rather than send a volley of 30 emails back and forth to clarify something as crazy as “I have this piece of art that I’ve created in HTML and I need it printed”, I decided to call.

Continue reading this article

Thousand Wires 2.0

I launched Thousand Wires in January of 2012 knowing there would be updates. The nice part of being the decision maker and implementer of an application is that, for better or worse, you can decide what happens when and why. There have been smaller updates along the way, but I’m proud to announce the latest progress on Thousand Wires, a nearly full redesign of the application, and a redesign of the site itself.

Continue reading this article

A Quick nofollow for Drupal 7

I built a site for a client in Drupal 7, and it quickly started to gather spammers. I implemented Mollom to filter out a bunch of the spam, but as icing on the cake, to prevent empowering spam links and a deterrent from posting spam comments in the first place, I wanted to make sure all links in the comments were given the rel=“nofollow” attribute like Textpattern does. But, regardless of how many people have asked since 2008-ish, nobody has built this in a way that isn’t handled on a link by link basis, and even then it doesn’t come into play for comments. So, I changed my comment template like so:

Continue reading this article

« Previous Entries -