2014, A New Chapter and a Taste of Dogfood

2013 was a banner year. I started working at one of the most well respected Drupal shops in the country. I traveled to Prague to speak at Drupalcon about my rapid prototyping framework, Tractor. At CSS Dev Conf, in the historic Stanley Hotel, I spoke in front of some of my CSS idols about Getting Your Sass in Line. After spending the previous year being envious of Seattle's Sass Meetup, I decided to start PDX Sass and now welcome dozens of front-end developers to our meetup at Puppet Labs each month. Lastly, after recording a few Sass demos for friends, I decided to just continue making demos, creating the Sass Bites Podcast. Now with hundreds of Youtube subscribers and over 20 episodes under my belt, I feel like I am just getting started.

So, not to be over shadowed, 2014 started off with a bang...and a job hunt. Fortunately, the first month ended with a job offer, and a great story to tell.

Read More

Get Your Sass In Line - Tips and Strategies For Teams

This week I spoke at the inaugural meeting of the PDX Sass and Front-end Meetup that I have been organizing for the past month. The event went great. We had a better than expected turn out, some amazing pizza and I got a lot of great feedback on a talk that I had been preparing for the past few weeks. Click through to see the video and other details about the event.
Read More

Getting Around Some Limitations of Compass Sprites

I have been diving headlong into Compass Sprites for a large response redesign. The site has a ton of sprite images, so it seemed to be a perfect opportunity to learn as much as I could about spriteing. One of the problems I ran into was that Compass used @extend to add selectors to the background-image property. This obviously causes problems in media queries.
Read More

Moving to Jekyll

As much as I am enjoying Drupal right now, the one place I am not enjoying it is on my own blog. Now I have no problem with Drupal and it's ability to be a blogging platform. My issue was with performance on my cheap shared hosting. I realized that I had three options - Suffer through a slow admin interface, open up my wallet and upgrade, or move to Jekyll. By the name of this blog post, it's pretty obvious what my choice was.
Read More

Learning From My Mistakes - The Drupal Way

This week I finally got through chapter 6 of Drupal 7 Module Development, and I have to say, it was quite an experience. This chapter walked me through the process of creating an entirely new entity, called Artworks. True to form, I followed along and hand typed over 700 lines of schemas, controller functions, page callbacks, menu entries and form validate hooks.
Read More

A Proposal for Sass, @extend, and Media Queries

Life has a way of being cruel and ironic. I was thinking yesterday how lucky I was to have a job where I could go home, and leave work at work. Fast forward a few hours and I was having trouble sleeping as I tried to tackle a sticky Sass and Media Query delima.
Read More

I will not repeat myself, I will not repeat myself

As I've mentioned before, I am going through the "Drupal 7 Module Development" book, trying to learn as much as I possibly can as I go from chapter to chapter. I still stand by my suggestion of explaining your code in plain english. That one technique has really served me well as I try to trace the flow of Drupal's rendering process. Sure, it makes getting through a chapter take longer, but I always find the process worth while. Another thing I do that slows down my progress is typing out, by hand, every single line of code from the module examples.
Read More

Teacher said to show my work so I am

I have quite a bit on my plate with this current project. As the only developer I am tasked with the design, front end, and back end development of the entire site. With the design and front end coming together quite well in the past weeks I have been starting to focus on the back end. Having decided to build this site on Drupal, I knew there was going to be a steep learning curve to get to the point I wanted to be at.
Read More

Sass Abstraction and Media Queries

Brad Frost pointed out a blog entry today by Bearded called The Thing About Those Media Types. The TL:DR of it is that some people use "screen" in their media queries, while others do not. Right now this is not a huge deal because almost all devices that are capable of displaying websites identify themselves as "screen" media type, even if they are a TV or a projector.
Read More

Sass Placeholders and Unicorns With Lasers.

I really like Sass placeholders.

.widget {
awesome-level: unicorns;
  .context & {
      awesome-level: unicorns-with-lasers;

This way all widgets are awesome-level “unicorns”, but if that widget is in a certain context (in a sidebar, in a header, nav..whatever), then it’s awesome-level is “unicorns-with-lasers”!

Of course the CSS this creates isn’t anything new, but this is a great way to keep your widget code organized.

Read More

Easy HTML Email Templating

I came across a tool today that I can honestly say I've been trying to find for years, CSS Inliner. If you do any HTML email designing you know it's best to put your styles inline (to get the best email client support), but inline styles are HORRIBLE to maintain and difficult to implement when you have multiple authors contributing. CSS Inliner is a tool that will take everything from the style tag and spit out HTML code with all of those styles inlined! I've seriously dreamed of finding something like this, and here it is.
Read More

Developing a Mobile First Website

Over the past week I've been putting the finishing touches on my first round of html comps for our new responsive, mobile first layout. True to the mobile first nature, I started with no media queries, reduced the width of my browser and started to design away. I've been really happy with the results and wanted to share a few thoughts I had after finishing the process.
Read More

Launch Early, Iterate Often

After months of sitting on an updated Godbolt.me, I finally decided that today was the day to stop hiding in my MAMP install and get it out there. I know it's not perfect, I know there is much more I plan to do with it. But as any startup will tell you, get your product out there, get feedback, and then iterate. So that's the plan. Just enough functionality to not look like a total fool, and plenty of room to grow!
Read More

Recent Work

Martha Stewart Weddings

Responsive rebranding of a premier wedding destination

Tractor - Responsive Prototype Framework built with AngularJS

Tractor allows you to create responsive website prototypes with AngularJS

iQ Website Mockup

Fully responsive, touch friendly mockup

Bergstrom Nutrition

Multilingual product site with a highly customized homepage.

Fish Marketing Portfolio

Portfolio page using Masonry jQuery plugin and custom lightbox/image slider.