Archive: Miscellany

Home scalable and modular architecture for CSS

Jonathan Snook is a very smart, respected web developer and speaker. So why the hell didn’t I check out his SMACSS style guide earlier? Pretty brilliant stuff. SMACSS (pronounced “smacks”) is loose architectural framework for CSS. It’s a way to organize large, complex websites (e.g. my day job) in ways that maximize flexibility and reusability.

It’s effectively here in free html form which you should read pronto if CSS is important to you. If you enjoy it, go the extra mile and buy an e-book. My company has, and I’ve already easily gotten the $15 sticker price back in value about an hour of usage.

Modern web development with Chrome

Really excellent overview of how to debug and inspect CSS, HTML and JS code effectively with Chrome. A year or two ago I was a die hard (Firefox) Firebug user, but I’ve come around to the Chrome tools as my preferred toolkit for web development.

Personally my only point of contention is with the author’s support for Chrome Canary as his development platform, of which i’ve run into serious bugs, crashes and rendering problems. Instead I prefer a more moderate approach by running the Chrome Beta as my main browser. I find it’s highly stable yet you still get many of the new development features far ahead of the default Webkit releases.

Mac AppStorm reviews the Rdio refresh

Spoiler: they really like it. Why can’t Spotify get their UI design act together like the Rdio guys? I’m a total Spotify devotee and love their native app’s speed, high sound quality and great selection. But this “let’s copy iTunes and make it dark” design is getting really old.

Ars Technica goes behind the scenes with Facebook developers

I found this extended look by Ars author Ryan Paul a bit overly friendly toward the internet powerhouse. It’s nevertheless pretty essential reading for any web developer. A few key trends of the piece are worth remembering; successful developers iterate often and test religiously. One other point I rarely see emphasized, but apparently critical at Facebook:

Instead of offices, Facebook developers work mostly in open spaces laid out like bullpens. Workstations are lined up along shared tables, with no barriers between individual workers. Each building has meeting rooms where employees can have discussions without disturbing other workers.

That last sentence is key. I’ve personally found development breakthroughs often come from healthy verbal debate in front of a white board, but doing so in the middle of an open plan can (understandably) disturb colleagues. Private spaces are critical.

Rands in Response celebrates 10 years of blogging

No Rands, thank you.

On Responsive images

I liked developer Chris Coyier’s approach here; step back and examine how to serve up responsive imagery from a high level perspective. Chris touches briefly on all the proposed solutions, from creating new elements to client side Javascript.

On the not so cool side, Chris avoids taking a stance on which solution he’s siding with. I personally prefer a new image element or HTML5 based custom data attributes that the browser interprets to render the properly sized image. The other cross browser methods are admirable but ultimately make too many http requests for me to be comfortable with.

Valve’s new employee handbook

On Friday a Kotaku forum member leaked what looks like a legit orientation manual for new employees at Valve, the gaming company behind Half Life, Portal and the Steam network.

Anyone who works at a technical firm should check this out. There’s a lot of philosophies here that are really smart. For instance, keeping a flat corporate hierarchy:

Hierarchy is great for maintaining predictability and repeatability. It simplifies planning and makes it easier to control a large group of people from the top down, which is why military organizations rely on it so heavily. But when you’re an entertainment company that’s spent the last decade going out of its way to recruit the most intelligent, innovative, talented people on Earth, telling them to sit at a desk and do what they’re told obliterates 99 percent of their value. We want innovators, and that means maintaining an environment where they’ll flourish.

Or on working sensible hours:

While people occasionally choose to push themselves to
work some extra hours at times when something big is
going out the door, for the most part working overtime for extended periods indicates a fundamental failure in planning or communication. If this happens at Valve, it’s a sign that something needs to be reevaluated and corrected. If you’re looking around wondering why people aren’t in “crunch mode,” the answer’s pretty simple. The thing we work hardest at is hiring good people, so we want them to stick around and have a good balance between work and family and the rest of the important stuff in life.

The jig is up: time to get past facebook and invent a new future

I appreciate what Alexis Mardigral has to say about startups and lack of originality, especially those without a revenue stream:

But more than the bandwidth or the stagnant hardware, I think the blame should fall squarely on the shoulders of the business model. The dominant idea has been to gather users and get them to pour their friends, photos, writing, information, clicks, and locations into your app. Then you sell them stuff (Amazon.com, One King’s Lane) or you take that data and sell it in one way or another to someone who will sell them stuff (everyone). I return to Jeff Hammerbacher’s awesome line about developers these days: “The best minds of my generation are thinking about how to make people click ads.”

Worse yet, all this stuff is dependent on machine learning algorithms that are crude and incredibly difficult to improve. You pour more vast amounts of data in to eke out a bit more efficiency. That’s great and all, but let’s not look at that kind of behavior and call it “disruptive.” That is the opposite of disruptive.

Yet many other arguments offered fall flat. Elsewhere Alexis argues the iPad is basically a large iPhone (judging from the increasingly desktop-like, full featured software jumping on the platform, he’s missing the point) and that “we’re working with the exact same toolset that we had on a 2007 iPhone”. That’s totally false; he’s nuts if he thinks the mobile sector isn’t booming in innovation.

Is Facebook making us lonely?

This extended piece by Atlantic writer Stephen Marche is really interesting. However I find it more revelatory as a conversation piece than a convincing argument against Facebook.

The article is at its best arguing for Facebook as a “grind” over a fun, interconnected experience:

What’s truly staggering about Facebook usage is not its volume—750 million photographs uploaded over a single weekend—but the constancy of the performance it demands. More than half its users—and one of every 13 people on Earth is a Facebook user—log on every day. Among 18-to-34-year-olds, nearly half check Facebook minutes after waking up, and 28 percent do so before getting out of bed. The relentlessness is what is so new, so potentially transformative. Facebook never takes a break. We never take a break.

On endings

Kill Screen writers Jamin Warren and Michael Thomsen debate the game review process and the importance of finishing games. I found both sides of their argument strong, especially this point by Mike on why finishing games prior to writing a review is so important:

I compare it to taking an assignment to climb Mount Everest. Nobody wants to read about me getting to the base camp. There’s Into Thin Air; there’s a long history of people writing very well about failure. But if you take the game as Everest, the review should be an account of getting to the top of Everest. What did it cost you; was it an easy hike not in terms of difficulty, but in terms of your own creative endurance? How quickly were you bored with it; how quickly did it become rote and repetitive; how much of a surprise was there in the ending; how much meaning came out of the boredom?