Neither HTTP nor HTTPS

I don’t know if you caught this in the jQuery CDN post of earlier this week, but the link to jQuery didn’t use “” or “”, but “//”.  Why is that?

I’m not sure when it became kosher by the browsers, but it’s called a protocol-relative URL.  If you make sites that serve pages up over http and https, then you’ve seen the need for this: to avoid a nasty (IE-only) security warning, you have to serve up assets that match the page.

Leaving the scheme off puts the browser in charge of asking for the assets the way that matches.  Problem solved.

Mostly.  Apparently, this had weird side effects in IE7 and IE8.

Hanselman on CDN Fallbacks

CDNs fail, but your scripts don’t have to – fallback from CDN to local jQuery:

Even better, RequireJS has a really cool shorthand for fallback URLs which makes me smile:

    enforceDefine: true,
    paths: {
        jquery: [
            //If the CDN location fails, load from this location
require(['jquery'], function ($) {

With RequireJS you can then setup dependencies between modules as well and it will take care of the details.

Good insight on potential CDN problems, and great mitigation plan.

Toast Your Enemies

One thing I don’t want to do here is pollute the Internet with war stories, but I have to tell one to get to the point of this post.

I was on a contract, and the client decided that it wasn’t working out.  It’s tough to describe it in any other way: I was fired.  I learned, in front of everyone else, that I was leaving, effective immediately.  It was six months of communication problems, crammed into a fifteen-second shouting match.

That day, and the days after, were a low for me.  I’d been wildly successful on a number of engagements, and highly sought-after.  (In fact, this was a second stint with this particular client, who loved me the first time.)  I couldn’t make sense of it.  I was miserable.  I had stress and anxiety for days, made worse by the fact that I didn’t start another gig for a week.  I cheered myself up with comedy and music.  I did everything I could to stay positive.

And my next gig was another return engagement with a different client.  I had the most fun I’d ever had working at the next place.  I met the best manager I’ve ever had, I worked with the coolest team, and I spent four years there.

It wouldn’t have been possible if I hadn’t been fired.  Once I became a manager, I got some new perspective on contractors, communication, and attitudes.  While I had empathy for the people in that unfortunate environment, I tried to learn lessons from that day, considering deeply how the people in my new environments perceived the people around them.

You’re going to lose something.  Where you work right now, it won’t always be that way.  It’s going to hurt, and you’re going to hate it.  And it might not immediately bring another amazing thing.  But if you don’t see the joy in the challenge, if you cling to things that are changing (and insist that they aren’t), and if you stay with that past, you put real limits on the growth that can come out of the experience.

On the anniversary of that day, I say a quiet thanks to the people who pushed me out of my comfort zone.  Gosh, I think of it as “toasting your enemy”, but I don’t have an enemy there (I don’t think).  It’s just a reminder to me that, even when it feels like the end, it’s almost always the beginning of something else.

Add New Post

Sometimes I write posts that are about nothing except the blog.  This is one of those.

I used to have a blog somewhere else.  If you go back to the old site, you see stuff back to 1999.  True story.

I’ve run my own software, Blogger, Movable Type, TypePad, WordPress, and Tumblr.  They have positives and negatives.

One thing I will say: I don’t think I’ll run blogging software on my own servers anymore.  Blogging software, in particular, is fussy to upgrade, and older versions are susceptible to attack.  At the old place, there were PHP attacks that I couldn’t figure out for months, and I guess that’s leaving aside the gobs of comment spam.  A problem for years and years.  I’m giving a shot, as that abstracts away all of the software.

The last two jobs I’ve had have asked me to write a little bit online.  (Why did they want that?  That’s a story for another time.)  So I have, and those efforts have been promoted or leveraged, and I’m not sure they’ve done much for me.

This site exists to let me do a little bit of that, but this time for myself.

The topics should be fairly familiar: I think I’m going to leave my family out of this, and I don’t think you care how my weekend was.  But I think, otherwise, I can find things to say about software development, soft skills, technology generally, and maybe little personal bits about music and language.

And, failing that, I can always write about the blog.

Enough for now.  Thanks for stopping by.