"I don’t for a second fault Andrew for not having a perspective beyond his peer group. But I do fault both the tech elite and journalists for not thinking critically through what he posted and presuming that a single person’s experience can speak on behalf of an entire generation. There’s a reason why researchers and organizations like Pew Research are doing the work that they do — they do so to make sure that we don’t forget about the populations that aren’t already in our networks. The fact that professionals prefer anecdotes from people like us over concerted efforts to understand a demographic as a whole is shameful. More importantly, it’s downright dangerous. It shapes what the tech industry builds and invests in, what gets promoted by journalists, and what gets legitimized by institutions of power. This is precisely why and how the tech industry is complicit in the increasing structural inequality that is plaguing our society."

"Not that roasting a chicken is all that hard, mind you. Quite the opposite, actually. It's straightforward, easy, and—so long as you hew to the instructions—pretty much foolproof. In fact, this is precisely what makes it a rite of passage. What bars the teens (and the overgrown teens) from doing it well is their adolescent preference for showier, more extravagant shit, for being impressive, for proving themselves. The grownup cares not for impressing you buncha jerks! The grownup cares only for getting some good damn food on the table and not having to do two loads of dishes before bed. This is the inner clarity of mind which one must have, to accomplish a well-roasted chicken. This is what it means to be a grownup. To recognize the real threat: dishwashing."

"It’s been almost three years since I wrote A Baseline for Front-End Developers, probably my most popular post ever. Three years later, I still get Twitter mentions from people who are discovering it for the first time.

"In some ways, my words have aged well: there is, shockingly, nothing from that 2012 post that has me hanging my head in shame. Still, though: three years is a long time, and a whole lot has changed. In 2012 I encouraged people to learn browser dev tools and get on the module bandwagon; CSS pre-processors and client-side templating were still worthy of mention as new-ish things that people might not be sold on; and JSHint was a welcome relief from the #getoffmylawn admonitions – accurate though they may have been – of JSLint."

"That’s it, seven tips and eleven benchmarks to help you write faster JavaScript. It’s not all about performance tricks, it’s about understanding how things work in JavaScript to take your programming skills a level further."

"It is always better, and more efficient, to maintain referential integrity by using constraints rather than triggers. Sometimes it is not at all obvious how to do this, and the history table, and other temporal data tables, presented problems for checking data that were difficult to solve with constraints. Suddenly, Alex Kuznetsov came up with a good solution, and so now history tables can benefit from more effective integrity checking. Joe explains."

"Database Design is one of those tasks where you have to carefully get all the major aspects right. If you mess-up just one of these, it can all go horribly wrong. So what are these aspects that can ruin database design, and how can you get them right? Robert Sheldon explains."

"We watched "Aliens" anyway. It went over well. The biggest challenge was dissuading kids from trying to predict every single thing that was going to happen. This is a generation of talkers. They have to comment on everything. No thought can go unexpressed. Maybe this was true when I was a kid as well (I honestly don't remember), but rather than endlessly correct them I decided to just roll with it, exercising my slumber party guardian veto power during scenes that I felt pretty sure would enthrall them if they would just shut up for five minutes (I was rarely proved wrong in my guesses). But it was a sharp crowd, and for the most part the movie went over quite well, for an analog-era science fiction spectacular that's turning 30 next year. "

"Neck deep in frameworks, choosing one we’re actually happy with becomes virtually impossible. The Paradox of Choice means that knowing you’re probably not using the right framework causes endless cognitive dissonance. Ironically, this dissatisfaction drives even more people to create their own frameworks."

"When we started working on a new chat feature for Redbooth’s iPhone app, our Product & Design team had some ulterior motives. Yes, we were excited about giving our customers a way to connect instantly with their co-workers, even away from their desks and on the go. But we also saw an opportunity to rid the app of one of our biggest pet peeves: the dreaded hamburger menu."

"It’s not that wanting to be noticed is a bad thing. I like it when people make movies people want to watch and write things people want to read. That’s fine by me and always will be. But I don’t want everything I fucking see to be a stream of deliberately random shit pre-programmed to go viral. The whole of something is almost beside the point now. It’s more important that an ad or a sporting event or an award show have some tiny particle of it that will garner the proper amount of attention, good or bad. Anything created on one platform (God, I hate that word) must have something in it that can thrive on other platforms. The dancing shark itself in an inert thing, but now it has an industry of bullshit built on top of it. I can’t trust the dancing shark to just be a dancing shark. There is now the lingering possibility that the shark was planted there as a viral agent for SeaWorld or something."

There’s this video, which at least a dozen people have forwarded to me, is circulating the Internet at the moment purporting to “demolish every Hollywood myth” about archery and “prove that Hollywood archery is not historical.” Since apparently hundreds of sites have uncritically repeated its many preposterous and unsupportable claims, with the result that many people have asked me about it, I thought I should offer a detailed analysis.

"Obviously the best way to survive these situations is to avoid them completely, but you might one day find yourself in a car that experiences a brake failure. Or be in the back of a dodgy cab where you think, Sweet Jesus, I may never see my loved ones again. A quick calculation reveals that an unconventional exit is your best option. How to do it?"

"In this article, we’ll take a look at the CSS modules that have been created not for use in web browsers, but to deal with printed and paged media. I’ll explain how the selectors, properties and values that they introduce work. I’ll finish up with a working example that you can use as a starting point for your own experiments. For that example, we’ll need a user agent that supports this specialized CSS. I’ll be using Prince, which is a commercial product. However, Prince has a free version that can be used for non-commercial use, making it a good tool to try out these examples."

"This morning I tried to save a file in BBEdit, only to discover that I couldn’t see half of the save sheet—it was so large, it went off the bottom of the screen.

"It turns out—and thanks to Jon Gotow of St. Clair Software, maker of the excellent Default Folder X, for the answer to this—that there’s a bug in Yosemite that causes a sheet to grow taller by 22 pixels every time you use it."

My Sidekiq Pro server is as simple as humanly possible: it’s running only Apache. Perfect for serving static files but how do I handle an arbitrary request? That’s when I asked myself: How simple can you make a web request? The requirements are straightforward: Stripe will call my server with a subscription event when someone starts or stops their Sidekiq Pro subscription. I need a script to perform the magic to grant/revoke access and send the customer an email with access details. This call will only happen a few times a day, max.

This is a perfect case for going down to the bare metal and using the oldest web technology: CGI.

"If what you care about — or are trying to report on — is impact on the world, it all gets very slippery. You’re not measuring a rectangle, you’re measuring a multi-dimensional space. You have to accept that things are very imperfectly measured and just try to learn as much as you can from multiple metrics and anecdotes."

"Over the past two decades or so, a cultural phenomenon has taken hold in America. It involves grown men and women pretending to be the owners of imaginary professional sports teams on the internet. It is known as fantasy football."

Scott “escot4″ Hanson was the winner of Sunday’s FFFC, and is now $2 million richer. A personal trainer who hails from California, Scott started playing on FanDuel this past September. And although he has only spent $35 on contests, lifetime, two of those 35 helped him qualify for a seat at the 2014 FFFC. That’s right, Scott Hanson turned $2 into $2 million.

"I realise that someone, somewhere will have a valid use-case for build tools like Grunt and Gulp. I believe, however, that npm can handle 99% of use-cases elegantly, with less code, less maintainence, and less overhead than these tools. Since working with Grunt and Gulp and trying to overcome the problems they have, I can say with confidence that npm is an excellent alternative. On your next project, I encourage you to keep things simple - start with npm as your build tool, and switch only when you see your package.json becoming unweildy. I think the results might just give you a pleasant surprise."

"Our code is split into a back-end and front-end system. The back-end system is deployed using our Cloud Management product (we eat our own dog food). The front-end system is ‘deployed’ on every git push to GitHub. This is not visible to users, since which of these ‘deployments’ is visible is governed by a database record on the back-end. This field propagates to the entry point of the front-end: the index.html. From here we load what we call a Scoutfile, this gives us considerable flexibility to load any other ‘deployment’ if specified, or default to the ‘production’ deployment."