HAML Cheat Sheet

August 26, 2013 // HTML

What is Haml?

Simply put, Haml (HTML abstraction markup language) accelerates and simplifies coding HTML.

Syntax Fomatting

Haml is whitespace dependent, meaning it uses the visual structure (the indentation) of your code to determine the HTML output Continue reading →

Implementing Object Oriented (OO) CSS Methodologies SlideShare presentation Continue reading →

Defining which environments your website or web application is compatible with, and to what degree, is important for developers and clients alike. Having a service level agreement (SLA) is a sure-fire way to set clear expectations for the client as well as set standards for the developer. A good Website Compatibility and Performance SLA should include; Browser, Operating System (OS), Screen Resolution and Mobile Device Support as well as uptime and page load time. Continue reading →


The browser repaint process is a resource intensive operation that can cause delays in rendering your website. Historically, it’s been rather difficult to find out what DOM node(s) could be causing the issues, until now. Several tools have recently been developed to help identify performance issues and provide insight in to what can be refactored. Below, I’ve included my notes on some of the tools that I tested that I thought were worth sharing. Continue reading →

Business Cards

February 16, 2013 // Business

Look at that subtle off-white coloring. The tasteful thickness of it. Oh my God, it even has a watermark!

-Patrick Bateman, American Psycho

Much like a scene out of American Psycho, I was obsessed with obtaining the finest business cards that money could buy. I was just about a month away from attending a large conference and I would be meeting dozens of new contacts. Nothing feels better than handing a potential client and/or partner a nice, clean, crisp, two-sided, heavy-weighted, high-end business card with fine typography, painted edges and a subtle yet distinguished texture. Yep, American Psycho! Continue reading →


During my tenure at OppenheimerFunds, Inc. I helped create a new enterprise sales and distribution platform based on Ruby on Rails. From 2011-2012, I worked on multiple Agile/Scrum teams and was responsible for converting digital and functional requirements into code. This project required communicating with team members and vendors in multiple out-of-state locations. Continue reading →

Last week I received a request to create a print style sheet for a webpage. After reviewing the project requirements I discovered many engineering caveats to printing this particular page. First, the page contains several elements that were not designed to be printed. In addition, part of the request required that certain parts of the layout be positioned in different locations on the printed page or in other words, the screen layout and the print layout were very much different.

To add to the challenge, many of the elements did not have a fixed height but had fixed widths… Meaning, we cannot simply use absolute positioning in a print specific style sheet to alter our layout properly. Complaining about it didn’t seem to work so I had no other options than to seek and implement a JavaScript solution. Continue reading →

As websites and web applications grow more robust in size and scale it has become increasingly more important to write well organized and efficient code. For many projects CSS can be a common pain point and a serious violator of poor coding standards. Following a best practices guide is a great idea but sometimes it’s not enough. Sometimes, understanding the problem is the best practice…

Main Components of a Web Browser

Most web browsers can be broken down into seven main components; Continue reading →



In 2012, I worked on a new marketing campaign website targeted at iPhone, iPad and Android devices. Continue reading →



I helped create a new OppenheimerFunds, Inc. website registration workflow that increased registrations by over 900% in 2011. My teammates and I were responsible for developing digital and functional requirements and coding. Continue reading →