Hacker News new | ask | show | jobs
by recursive 3972 days ago
Approximately weekly, when explaining something to another engineer.
2 comments

As I mentioned in another post here, I don't think I have ever written code on a whiteboard when explaining something. Explaining code has always happened in front of someone's computer, in an actual editor or IDE. Where I currently work, we typically pair on really hairy code.
Why don't you give yourself time to think? Why don't you use documentation?

Edit: Oh, and how do you version control the white board?

how do you version control the white board?

We have a magic white board that can print out a big piece of paper showing everything on it. We also take pictures of it (and lesser white boards) to record designs agreed. Those pictures generally get put into a formal design document that is reviewed, signed, approved and all the rest of it.

> Why don't you give yourself time to think?

Explanations work better without lengthy pauses. Ideally, I can explain the thing without stopping too long.

> Why don't you use documentation?

I do if it's necessary. Sometimes it's not necessary.

> Oh, and how do you version control the white board?

I don't.

You can snap a picture of a filled board with your cell phone.
And you put the picture in version control?
There should be a time stamp in the exif data, so you could track progression from one photo to the next as a very primitive form of version control.

My original comment was mostly meant as snark, but I've had an interviewer take photos during a whiteboard exercise for this reason.

Not often, but I've taken a handwritten diagram and converted it to paths in inkscape, andd cleaned it up a bit.

The resulting svg or png can be then added to the docs folder of a project. Works well with sphinx, etc.