Archive for June, 2012

Practicing talks

22 Jun 2012

Clay Johnson, the author of The Information Diet, recently wrote about how to prepare to give a presentation.

I was shocked.

First, he says

When I started writing my book, I knew that authors generally make more money from speaking than they do from royalties, so I wanted my talks on the Information Diet to be great.

I probably should have stopped there, since we clearly have completely different goals. He wrote a book and is giving talks in order to make money?

He goes on to suggest a course of preparation that involves an enormous amount of practice.

I guess stand-up comics do that, but me: I’ll flip through my slides and think through the tricky bits, but mostly I rely on experience and innate ability.

In a talk I gave about giving talks, I mentioned that others have said to do 10 practice runs for every presentation. But for me, my practice run is the time I gave the talk to a different group. I can’t stand the sound of my voice, and I’m certainly not going to watch myself on video, not even this short one.

Mr. Johnson suggests having a test audience, in part to try out one’s jokes. The intended humor in my talks is almost entirely spontaneous; if I have idea for a joke in advance, I will generally abandon it, as if I think about it too much it will just seem stupid.

The main reason I don’t practice talks is that I don’t want to waste time; it would take a lot of practice to get just a bit of improvement, and I could spend that time writing or programming or looking at data.

Also, I think if I give a talk too much, by practicing or otherwise, I’ll be less excited and interested in the material. Without practice, I’m not so polished, but I’m more enthusiastic.

Learning a new language

21 Jun 2012

It had been a very long time since I’d tried to learn a new programming language. I started C in 1987, S in 1992, and Perl in 1997, but nothing really new in the subsequent 15 years.

A friend now has me doing D, wanting to find time to learn ruby, and, most recently, playing with JavaScript and D3.

I’m really excited about D3. It’s long past time for dynamic, interactive graphics to be routine. And with D3, I think it can be.

The object-oriented stuff is most foreign to me.  When your programming skills are stuck in the early 90s, there’s a lot to catch up on.  It’s hard to adapt to a new way of thinking. But I’ve used “this” a couple of times, which makes me feel quite accomplished.

The hardest part has been slowing myself down; I’m too impatient. It’s critical to have a challenging problem for motivation, but I tend to want to jump into complicated things when I should be a bit more methodical.

I want to make things like this. (I don’t really see a use for it yet, but it’s fun.)  So I start mucking about with code that I don’t yet understand and end up going nowhere for hours.

The important thing is that I’m having fun; eventually I’ll be able to usefully apply some new skills.  For now I’ve got this: [Click for the dynamic version.]

PS: I really like Scott Murray’s tutorials on D3. After working through those, other tutorials became much more understandable. Eloquent JavaScript is a super-cool, open source, interactive text on JavaScript; also take a look at the “fork” for CoffeeScript, Smooth CoffeeScript. (I’m thinking I’ll switch to CoffeeScript once I’ve learned a bit of JavaScript; the useful libraries and examples are mostly in JavaScript.)