‘Dynamic Web Typography with Typekit’

Tom Newton talking about a new Typekit feature:

When your Dynamic Kit JavaScript loads in the browser it detects the characters you’re using and requests that only the used characters are sent. For example, say you’re using a typeface to set a homepage h1 to read “Betty’s Buttery Bakery” then instead of the font-file containing all of it’s glyphs, it will only contain B-E-K-R-S-T-U-Y-‘ in a smaller (much faster loading) font file.

This makes so much sense. Why download the whole glyph set when you’re most likely not using it all? With more attention then ever on performance, this is a big win.

Via CSS Tricks.

‘The Gray Gray Ghost That I Call Home’

Chris Coyier nails it:

Discussions are always worth having. Weighing options is always interesting. Demonstrating what has worked (and what hasn’t) for you is always useful. There are ways to communicate that don’t resort to dogmatism.

What’s tricky is that you have to grow out of it. Or otherwise find a way to relax your convictions. They don’t sell empathy pills.

The problem is we haven’t learned how to have constructive conversations online. It’s not always the case, but most of the time, people are insulted, told things no one would ever say in person, and conversations spiral.

The other issue being that there are select people who drive the conversation in the web industry, and are highly regarded. But their word is not law, and we all have a responsibility to share our knowledge for a more well-rounded conversation.

‘What The Ad Blocker Debate Reveals’

Jean-Louis Gassée on the Monday Note:

We feel cheated and rightly so. As users, we understand that we’re not really entitled to free browsing; we pay our bills with our selves: When The Product Is Free, We Are the Product. The problem is that we feel betrayed when we find out we’ve been overpaying. We’re being exploited — and it’s not even done nicely. (Apply your favorite metaphor, here.)

Losing trust is bad for the bottom line – no economy can function well without it. When you lose the consumer’s trust, you’re condemned to a chase for the next wave of suckers. Even sites that get us to pay for access to their content play questionable advertising and tracking games.

via The Loop.

Popular Science’s Apple TV Wishlist

Dave Gershgorn writing for Popular Science:

Early reports say that Apple is going to be including a Touch ID sensor in the new Apple TV remote. This could be an immediate home run, if it’s implemented correctly. If each user was able to make their own profile and home screen, unlocked based on their fingerprint, families wouldn’t have to worry about parental lock passcodes and roommates could each have their own unique account. Even better if you can add another Apple ID to a separate profile.

An interesting list of wishes for the new Apple TV. My hope is that rumors about the SDK are true. With an SDK, the possibilities are endless—we’ll see more channels pop up from everywhere—and hopefully games. I’ve always wondered why the Apple TV isn’t game console too, which to me is a such a no-brainer.

Time Off Leads to Better Work, Duh

Shawn Blanc:

There is no shame in taking time “off” of your work, in order to learn something, experience something, and be inspired.

This is the ebb and flow of work. This is having multi-year cycles where we grow in our mastery of creation beyond just mastery of tools and workflows. This is why resting well is so valuable and why learning, thinking, and discovering cannot be underrated.

So common sense right? It’s hilarious that we need to be told to take a vacation. Yet, until recently, I didn’t appreciate the drastic effect time away can have on your work.

I took two weeks to go to Europe with Kelly this Summer.1 No computer, no working, just sight-seeing and resting. It was amazing, my horizons were widened, and I came back ready to kick butt.

  1. She truly brings balance to my life. Goodness. 

Heroku Redirects with rack-rewrite

Moved this blog to Heroku, now what?

This post is part of a series on hosting Jekyll with Heroku.

A month ago, I moved this blog over to Heroku, and I’ve been really happy. It’s made writing and deploying a lot easier. But I needed a way to redirect the feeds to FeedPress and display my nice 404 page, which I had no idea how to do.

I did some digging and found out I could use Rack::Rewrite. Understanding how exactly to get this to work took me longer than I would’ve liked, but I finally figured it out.


First you’ll need to add the Rack::Rewrite gem to your Gemfile:

# Gemfile
source "https://rubygems.org"
gem 'rack-rewrite'

Once you run bundle install it’s time to write our rules:

# config.ru
require 'rack/rewrite'
use Rack::Rewrite do
  r302 '/atom.xml', 'http://feedpress.me/theboldreport', :if => Proc.new { |rack_env|
    rack_env['HTTP_USER_AGENT'] != 'FeedPress'
  r302 '/atom.articles.xml', 'http://feedpress.me/theboldreport-articles', :if => Proc.new { |rack_env|
    rack_env['HTTP_USER_AGENT'] != 'FeedPress'

The code above redirects the atom feed to the FeedPress feed unless the User Agent is FeedPress.1 It’s important to note, that you want to put your redirects at the top of your file.2

Now, for the 404 Page

For this, we’ll use a Rack middleware called Rack::NotFound. First we need to add the rack-contrib gem to our Gemfile. If you followed the steps from my move to Heroku, you already have this gem installed.

# Gemfile
source "https://rubygems.org"
gem 'rack-contrib'

Run bundle install and we’ll add two more lines to our config.ru file.

# config.ru
require 'rack/contrib/not_found'
run Rack::NotFound.new('/path/to/your/404/index.html')

What took me a few weeks to figure out, is actually quite simple to do. You can check out the Rack::Rewrite project page for documentation. The rack-contrib documentation is kind of non-existent, but it’s also on GitHub if you want to read through it. Hope you find this helpful!

  1. FeedPress still needs access to the original feed, or else it becomes a never ending loop of redirects and the feed would be blank. 

  2. I honestly don’t know if this makes a difference, but I had them lower in the file and they weren’t working so… I don’t know. 

Maybe I Should Be Living in Switzerland

Chantal Panozzo sums up why she’s not completely excited to be living in the U.S. again:

While I enjoy being close to family again, returning to the United States made me realize who I’ve become: someone who can’t believe companies aren’t required to pay into a pension fund beyond Social Security. Someone who is offended that most women in America don’t have the maternity benefits she had.

And someone who is mad that she must own a car for lack of efficient public transportation. Someone who, because of all of this, is still debating where she ultimately wants to call home.

Such a fascinating read. Made me think about whether I’m living in the right place.

‘Is There Potential for “Ethical Analytics”?’

Laura Kalbag has some interesting thoughts that I’ve been pondering myself:

Are all analytics bad analytics? Is there room for “ethical analytics” that only tracks anonymous data with limited uses?

Just the other day, I removed Google Analytics from this site. The reason being that I’m not going to track people who don’t want to be tracked. I won’t be just another person who has no regard for the privacy of my readers.

All that being said, it’s my hope that an ethical way of gathering stats comes to exist. I don’t believe that all analytics are bad analytics, considering that some can be very useful. But a line has to be drawn, and if the choice is between not having access to interesting statistics or invading the privacy of others, I choose to lose the stats.

Unboxing the Sony MDR-7506 Headphones

I recorded an unboxing video for the Sony MDR-7506 headphones. I had used these headphones before when I worked at my college radio station. Interestingly, although less expensive, they’re an upgrade from the Beats Pro. The sound is more accurate, and they’re so light, you can use them for hours.