Browsing posts in: Uncategorized

Saving the Programming Princess

Came across this post today, and I wanted to share it. No surprise Javascript is the most popular language right now. Just look at the barrage of frameworks and abstractions out there. I personally love Javascript as it allows me to prototype quickly, but I do feel the pain of its growth.

The article is a great overview of the language Battle Royale, but the comic specifically is priceless. The Javascript panel is spot-on, and the PHP one just makes me sad 🙁

What programming language should you learn first?

or just skip to reading the comic: Git the Princess: How to save the princess in 8 programming languages

Why I prefer email development

It’s no secret web developers and designers generally don’t like working on emails. Heck most of us don’t even like receiving or processing email, and often the emails that are “designed” are the ones we send immediately to spam or trash. However there are some reasons why email development can actually be rewarding and easier to deal with.

Here’s why I’ve transitioned almost all of my freelance work to email development:


What??!! I know you think I’m crazy, especially if you’ve ever tried to troubleshoot and test emails on different applications or devices. But considering the ever-changing web standards, frameworks, hardware capabilities and devices, developing for the web has become a bit overwhelming to keep up. Email on the other hand moves at a much slower pace. I know next year, the process for developing an email will be pretty similar as today. That lack of change can be limiting, but also frees me of having to code to the latest advances.

Simpler builds

Pre-processors, post-processors, server configurations, deployment, content management systems, Javascript frameworks, CSS frameworks, minification, concatenation, CDNs, back-end, front-end, APIs, and you name it. Creating a website has become a complicated process. Email development remains mostly static although it can be “simplified” with web build tools like grunt and Sass. That means I can sit down in front of a text editor, bang out HTML and inline CSS, and send it immediately. I love that simplicity!

Short-term projects

I have a full-time gig and a family. I like freelance, but I also like my free-time. Emails rarely take longer than eight hours to develop and often only consume a few hours of my time. Meanwhile websites can take months to finish depending on how much time I can dedicate. I guess it depends on your personality, but I’ve always been a sprinter and not a marathoner.

Instant results

Once an email is deployed through a platform like MailChimp or Campaign Monitor, I can instantly see open and click through rates as well as a bunch of other useful information. These analytics can help determine conversion rates, best times to send, and deliverability of emails. There’s also something satisfying about knowing my email I just developed was “hand-delivered” to thousands of customers at once. This argument can be made about web to I suppose, but I like seeing the mail-list numbers when I hit send. Weird? Maybe.

Fine-tuning my skills

Developing for email is challenging and can be incredibly frustrating. Because the time frame for each email is significantly shorter than websites, I can bust out dozens of emails during the same time period it would take to development a website. This repetition allows me to fine-tune my skills much quicker than I could with developing websites. Ultimately this makes me much happier and more confident as a developer.

Concatenating and minifying WordPress plugin http requests

Chris Coyier answers listener question on ShopTalk Show podcast:

41:00 We use WordPress for all client sites and have pretty efficient gulp setup with sass compiling and concatenation. But as soon as you start to use a few wordpress plugins that all come with their own scripts and stylesheets the whole “Limited http requests” is out the window. Is there a way to get our theme to intercept the plugin scripts and stylesheets and combine them with my own and that way limit the amount of http requests?

Definitely adding Minqueue to my arsenal of WordPress plugins and tools!

Follow links vs no follow links

Another SEO mystery solved for me:

Megan Marrs, writing for WordStream

Follow links are links that count as points, pushing SEO link juice and boosting the page rank of the linked-to sites, helping them go higher in the SERPs as a result.

A no follow link is a link that does not count as a point in the page’s favor, does not boost PageRank, and doesn’t help a page’s placement in the SERPs.

As a webmaster, you might find yourself wondering when to use the no follow attribute and when to allow for do follow links. No follow links primarily belong in:

Paid links (it wouldn’t be fair to buy link juice, now would it?)
Anything involving what Google calls “untrusted content”

Disappearing icon font in Chrome

Just ran across a weird little bug while updating a client WordPress site.

On this particular site, I’m using an icon font in the header for social media icons, and in Chrome on my Mac (it may have been on Windows too, but I didn’t test it) when the page loaded, the icons would not appear. To make it even harder to troubleshoot, as soon as I interacted with the page in anyway (open developer tools, hovered over the icon, scrolled, etc), they would suddenly appear. It seemed that either the font wasn’t loading or some Javascript or CSS was getting hung up on something.

Finally after some digging, I came across a Typekit blog post talking about this very issue on Chrome v33. Some further digging in Chromium, I found a temporary solution by using JQuery to slightly manipulate the body after a slight delay. The follow code worked great for me. Here’s the code:

        $(this).css('padding-right', '1px');