07.08.08
Posted in Random Thoughts at 11:16 am by martin
Here’s a conversation I seem to be having over and over these days:
Someone else: Computers are getting more and more cores. So, we need to thread our software to take advantage of them.
Me: But threads (the Dijkstra style shared-state-with-locks-and-mutexes-and-semaphores-oh-my variety) are almost impossible to get right, and when they’re used in other than the simplest way, its easy to get random deadlocks that happen every few months/years.
Someone else: Computers are getting more and more cores, so we need threads.
Me: But there are other forms of concurrency. Processes that communicate using files, pipes, sockets, or even shared memory. Or software transactional memory (hell, people use databases for IPC now, so STM can only be better), or message passing.
Someone else: … ?
A few days later:
Someone else: Let’s talk about how to multi-thread our code.
Sorry people. As Sutter and Larus say:
“humans are quickly overwhelmed by concurrency and find it much more difficult to
reason about concurrent than sequential code. Even careful people miss possible interleavings among even simple collections of partially ordered operations.”
And as Edward A Lee says:
“[Threads] discard the most essential and appealing properties of sequential computation: understandability, predictability, and determinism.”
[Clever summary encouraging people to understand concurrency more closely.]
Permalink
06.18.08
Posted in Random Thoughts at 9:46 pm by martin
“A PhD is a big, multi-year project. You really learn self-reliance, how to budget your time, and how to motivate yourself,” says Martin Martin, a senior software engineer with a PhD in robotics from Carnegie Mellon University.
From Should you pursue your PhD?, an article that includes a couple different paragraphs from yours truly.
Permalink
07.14.07
Posted in Random Thoughts at 7:23 pm by martin
|
Ian Simon Martin-Swader
joined our family
July 12, 2007 at 1:17 pm
6 pounds 0 ounces
18 inches long
Mother doing well
Father low on sleep
- Martin, Joy, Amber, Miles and Ian
|
|
Permalink
12.06.06
Posted in Random Thoughts at 7:54 pm by martin
Does anyone have a good distribution for characterizing the number of ratings per customer? Graphing the histogram log-log (where the vertical axis is density, not count) it’s clearly not the straight line implied by a power law:

The red line is the gamma distribution fit by the method of moments. It’s way too high on the left, and way too low on the right. Can anyone think of anything better?
This thread on the Netflix Prize forums:
Permalink
10.09.06
Posted in Random Thoughts at 9:18 pm by martin
I’ve been giving a talk on game design which has been surprisingly well received. Several people have asked me for a copy of my PowerPoint presetation. The problem was, my PowerPoint file had lots of images, but little text. I think that’s the most engaging format - certainly TV shows don’t just display notes on the screen while someone talks. But the down side was that, for those who wanted to show the ideas to their friends, the PowerPoint just wasn’t sufficient.
So, I’ve created a new one, which is just my notes on top of the images. The images become kind of hard to see, but hey, if you want the full effect, you’ll have to come to my talk.
Permalink
10.01.06
Posted in Random Thoughts at 12:24 pm by martin
I’m kicking off a Capture The Flag bot contest at Grey Thumb tomorrow. You can find more details at the breve Capture The Flag page. I’ll post my PowerPoint slides as soon as their done.
Update: The slides and simple example bots are now available here.
Permalink
08.20.06
Posted in Random Thoughts at 5:27 pm by martin
I’ve added two new projects to the Projects page. The first is something my son Miles likes, it plays sounds whenever a key is hit. The second is some notes on creating AI for Sodarace. At the moment, it’s just about how to interface a program to the Sodaracer.
Permalink