Less is more

Tuesday, December 1, 2009

Hopefully you read my previous post ../sass-isnt-me about Sass and CSS preprocessors and felt my angst toward learning a new syntax. I’ve been using LessCSS for about a week and I’m really impressed. For starters, no new syntax to learn. This is simply an augmentation of existing CSS syntax. You get mixins, nested rules, and most importantly, variables. You also get operations but I’ve yet to find them that useful. Here’s my critique:

Continue reading →

Sass isn't for me

Monday, November 30, 2009

I’ve been window shopping the CSS preprocessor world the last week or so. Sass seems to be everyone’s new bicycle but it hasn’t won me over and here’s why: It’s a new syntax that I don’t want to learn or support. I have an awesome job where we often hire new people and (hopefully) acquire new clients and the last thing I want is the added friction of having to teach (and sell) a new styling syntax.

Continue reading →

Curiosity rewarded the cat

Friday, November 20, 2009

Good user experience is often found in the most unassuming places. We have a new restaurant opening in my neighborhood this week and I’ve been anticipating their arrival for a few weeks now. They officially open today but two days ago revealed a very important lesson in user experience. Two days ago I was walking down the street this new restaurant is on to get lunch from a neighboring location. The lights were on and it looked like people were ordering and eating inside before their scheduled opening.

Continue reading →

Interface harmony

Sunday, October 25, 2009

Interface consistency is one of those things that, if done correctly, should go unnoticed. I’ve slowly been working on a new interface for a side project and thought it’d be a treat to share my approach. Interfaces evolve based on the needs of people using them. Each task may require a different element. Common elements include buttons, dialogs, drop-downs, select boxes, checkboxes, input fields, etc. These elements are like notes in a composition seeking harmony.

Continue reading →

Working with Python and RabbitMQ

Wednesday, May 20, 2009

I recently installed RabbitMQ to handle some message queuing needs at Readernaut and thought I’d share how everything came together. If you’d like to learn more about RabbitMQ please read this. To use RabbitMQ with python you need py-amqplib because Rabbit uses the AMQP standard. To make amqplib a little easier to use I needed a simple script that did three things: Easy way to connect to RabbitMQ. Easy way to pull stuff out of the queue.

Continue reading →

Capturing content in Django templates

Saturday, February 28, 2009

As a template designer there are times when you have structural code surrounding a block which is waiting on content from a child template. It may look something like: <div class="content_title"> {% block content_title %}{% endblock %} </div> Sometimes this block is never filled so ideally I want the DIV element in this case gone. This isn’t easy because there’s no way to know whether content is headed towards the block so one solution that I’ve used is:

Continue reading →