RIP, Dennis Ritchie
0

RIP, Dennis Ritchie

Dennis Ritchie, one of the creators of the C programming language and one of the original Unix developers, has passed away. The debt I feel I personally owe to DMR and the other old school computer scientists who created the networked computing environment that forms the basis of my work and most of my entertainment cannot be overstated.

Rob Pike announced Ritchie’s death on Google Plus.

Tim Bray whipped up a quick post on a few of Dennis Ritchie’s contributions to the field — things we take for granted today but didn’t exist before Ritchie and his colleagues invented them.

Update: This post from Herb Sutter is awesome:

So this young upstart whippersnapper comes along and decides to try to specify a language that will let people write programs that are: (a) high-level, with structures and functions; (b) portable to just about any kind of hardware; and (c) efficient on that hardware so that they’re competitive with handcrafted nonportable custom assembler code on that hardware. A high-level, portable, efficient systems programming language.

How silly. Everyone knew it couldn’t be done.

Update: Andrew Leonard’s obituary.

Selected links
3

Selected links

Dart; or Why JavaScript has already won explains why Google’s new client-side scripting language Dart isn’t going to replace JavaScript anytime soon. For more on Dart, check out the official site. Dart is exactly the sort of thing that it’s impossible for me to get excited about.

Why the Occupy Wall Street protesters are angry, in charts.

Did you know that one in five infants drink soda? That seems incomprehensible to me.

And your don’t miss link of the day: Steve Yegge compares Google and Amazon.com and explains how to build a platform. Incredibly interesting. This was meant to be internal to Google but he posted it on Google Plus with the wrong permissions and now it’s been copied and pasted everywhere. Privacy features are funny.

Voice interfaces and third party app integration
2

Voice interfaces and third party app integration

If voice-activated user interfaces like Siri in the new iPhone 4S really take off, third party application developers are going to want in on the action. As John Gruber points out in his iPhone 4S review, that poses an interesting set of problems:

People are going to start clamoring for third-party Siri integration as soon as they see Siri in action. But I’m not sure what form that integration could take. Best I can think is that apps could hook up to (as yet utterly hypothetical) Siri APIs much in the same way that Mac apps can supply system-wide Services menu items. But how would they keep from stomping on one another? If Siri supported third-party apps and you said, “Schedule lunch tomorrow at noon,” what would Siri do if you have multiple Siri-enabled calendar apps installed? This is similar to the dilemma Mac OS X faces when you open a document with a file extension that multiple installed apps register support for.

And here’s a specific example of what he’s talking about, that involves only the built-in applications:

Here’s an example. Wolfram Alpha has terrific stock-price information and comparison features. I link to them frequently for stock info from Daring Fireball. So I tried asking Siri, “What was Apple’s stock price 10 years ago?” But once Siri groks that you’re asking about a stock price, it queries the built-in Stocks app for data, and the Stocks app doesn’t have historical data that goes back that far. “What did Apple’s stock price close at today?” works, but asking for historical data does not. But Wolfram Alpha has that data.

Working around those sorts of problems is difficult with regular touch or point and click interfaces — it’s easy to wind up in Preferences Hell. Dealing with them at the voice level is going to be even more complex.

Mike Daisey on Steve Jobs
1

Mike Daisey on Steve Jobs

I encourage you to read Mike Daisey’s New York Times op-ed eulogizing Steve Jobs. It is both tough and fair.

For what it’s worth, I think that Apple’s move toward a closed model of computing, which I have discussed before is justifiable as a technical choice. Is it what I would prefer? No. But it provides customers with both benefits and costs, and each of us can choose whether we think the tradeoffs are worth it.

The more damning indictment is that Steve Jobs failed to lead Apple to a more humane and fair labor arrangement when it comes to manufacturing its devices. I’ve written about that before as well. Apple generates huge amounts of cash — if they wanted to move all of their manufacturing to Long Island over the course of a decade, they could. Sure, it wouldn’t be easy, but it would be truly world changing. At a time when other technology companies are importing sweatshop conditions to America, it really would be a way to Think Different.

The death of Steve Jobs is, of course, sad, and is also notable. He is arguably the greatest businessman of his generation. If we’re going to dwell on it, it should be to reflect on which aspects of his legacy we should emulate and which we should discard.

We need to be less stingy with praise and acknowledgement
2

We need to be less stingy with praise and acknowledgement

Since Steve Jobs passed away, I’ve read a great many things about him that really struck me, but I haven’t written anything about it. I’ve been an appreciator of Apple products for over 20 years, and have been a user of them for at least 30. I admired his drive, genius, and passion greatly. But that’s not what I want to talk about. Instead, I want to talk about the need to let other people know that you appreciate their work. I was sort of inspired by this, but I was more inspired by a talk I heard this week.

The talk, presented by Donnie Berkholz, is called Assholes are killing your project. In it, he explains the corrosive effect that negative people have on a volunteer project. It doesn’t matter how productive they are individually, the toll they take on the volunteer community outweighs whatever good work they do on their own. In the talk, he mentions that research shows that on average five good interactions are required to make up for every bad interaction, so it’s very important to get rid of the assholes. What I also take away from that, though, is that we all need to take more responsibility for making up the gap with good interactions.

I will be the first to admit that while I am pretty good about thanking people who do things I appreciate, I’m not so great at handing out praise. I think that’s mostly projection — I’m not the best at receiving praise. But what I’m realizing is that being generous with sincere and meaningful praise is essential. A decision to be more forthcoming with praise puts the giver in a state of mind to be more observant of good things, which has to be good psychologically, and of course receiving praise offsets the negative reinforcement we’re bombarded with on a daily basis.

So, how do we become more liberal with praise? The mechanisms of social software make it easier than ever. You can Favorite things on Twitter and on Flickr. There are Facebook Like buttons and Google +1 buttons everywhere. And of course, you can leave positive feedback in comments or just send someone an email telling them that you appreciate their work. For more on that, I’d recommend Anil Dash’s post All in Favor. In the real world giving people a nice comment is easy enough if you try.

Praise and acknowledgement are not limited commodities. Everyone benefits if we are more generous with them.

Selected links
5

Selected links

Nick Bilton explains the ways in which Facebook is easier on new users than Twitter.

Yelp is shifting business from chain restaurants to independent establishments.

How to get a decent meal at a bad restaurant.

Node.js is a cancer. Or it isn’t. On a general note, I am not a fan of polemics like the one at the former link.

Alabama’s draconian new anti-immigrant law goes into effect.

I have to admit that I have very little empathy for CEOs with a persecution complex.