Hacker News new | ask | show | jobs
by babarock 5038 days ago
As long as we're on this subject, I'd like to strongly encourage programmers to adopt a "pen-and-paper" approach to problem solving. Just like mentionned in the article, there are great benefits coming from actually writing down the problem.

For the past year or so, every time I worked on a non-trivial problem, I did it on a sheet of paper. It definitely took discipline at first but now I couldn't do it any other way.

My motivation for adopting this approach came from reading a blog post by Guido Van Rossum (http://neopythonic.blogspot.fr/2011/07/before-python.html).

  Then I went to university in Amsterdam to study mathematics and they had a computer that was free for students to use!

 (Not unlimited though. We were allowed to use something like one second of CPU time per day. :-)
"One second of CPU time per day" got me thinking. Sure there are benefits to having modernly cheap computers, but how did they do it before?
6 comments

Speaking of pen and paper... When I was in college, Dijkstra had given a talk for the class a few years before his death, and my instructor passed out his notes. They were on a non-ruled piece of paper with perfectly drawn bullet points for each item. If he made a mistake, he would scratch the word out with a near perfect rectangle. The neatness and clarity was striking. I think it was the only handout in my entire time at the university that was hand written and photocopied instead of typed up on a computer... and it was from one of the most famous computer scientists.
Dijkstra's notes are available here:

http://www.cs.utexas.edu/~EWD/

They are hand written as you said.

Thank you for the excellent link!
As long as we're on this subject, I'd like to strongly encourage programmers to adopt a "pen-and-paper" approach to problem solving. Just like mentionned in the article, there are great benefits coming from actually writing down the problem.

Agreed. Also relevant to this topic is Rich Hickey's talk on "Hammock Driven Development": http://blip.tv/clojure/hammock-driven-development-4475586

After switching to a Model M keyboard a few years ago (one that I found in a shed covered in 10yrs of dirt and grease that still worked like new once it was cleaned up), I switched to writing conference call notes on a Mead notebook instead of typing them, because the keyboard was so loud.

After a few weeks of this, my handwriting got back to a decent quality and efficiency and now I find that I take notes on paper for all sorts of things. It's great for working through problems.

I tried a whiteboard for a while and it just didn't do it for me. I think there's something about the tactile experience of holding a notebook in my hand and scrawling on it with a pen; the movement, the sound, the texture of pen on paper, not to mention being able to keep and flip through previous work and go back and make notes in the margins that makes it far better than trying to work out problems on a computer or a whiteboard.

+1 but I use a mechanical pencil as you can rub stuff out, it's immune to coffee spills and you can file your nails down on the knurling when you are thinking (Rotring 600 recommended).

I am sometimes ridiculed for such low technology though which I find rather strange. I think there are some serious cultural identity problems at the moment.

I usually end up writing with a pen because I find the greater level of contrast easier to read; I have pretty bad eyesight. Lately I've been using fine-point Sharpie pens and they're great for readability.

I do a lot of pencil drawings, though (http://orng.us/ob8yao) and I do find something magical about the feel of pencil on paper, and even the smell of the graphite. I can lose myself for hours. But if I'm writing, I like a darker line, which means softer lead, which means more smudging.... bleh.

I've found that fine-point sharpies bleed through every kind of paper. What kind of paper do you use?
Just a Mead 5-subject spiral notebook. It's not super thin paper, but it's not really heavy, either. I've never had an issue of bleed through, but I don't write on the back side of the page, either.

A Pigma Micron might work well for you: http://www.sakuraofamerica.com/Pen-Archival

Sharpie makes a pen specifically for writing with now; grandparent post is probably not referring to the gray permanent marker you're envisioning.
Nice work on the big cats :)
Thank you :)
Beautiful articulation of what's wrong with the iPad.
I think you mean, what the iPad isn't good for... if you try to use it as a notebook, you'll fail. It just isn't very good for that type of application.

I know some people that like to type notes (laptop or tablet), but most people I'm around still take notes with a regular pen and paper.

Then again, I'm a scientist and we are trained from the beginning to keep a good lab notebook. If it isn't in the notebook, it didn't happen!

Which iPad note-taking apps have you tried? There are definitely a lot of terrible ones out there.

Notability, however, is absolutely fantastic. I've been using it with a Cosmonaut stylus since late May and I haven't used a paper notebook since. Rather than failure, it's exceeded all my expectations.

The only missing feature is handwriting recognition, and well, I wouldn't have that with paper, either.

I take pictures of my notes and post them on Evernote. It has surprisingly good handwriting recognition.
I did try uploading my exported notes to Evernote, but it's handwriting recognition doesn't work on PDFs. I suppose I could try screenshots, though.
I have a small (~A4) whiteboard for this reason. This method of writing pseudo-code to outline a solution is what caused me to learn Python as I found I was pretty much drafting Python code. I've found I produce much more efficient (and less buggy) solutions when I've stopped to think about them bit-by-bit.
> "One second of CPU time per day" got me thinking. Sure there are benefits to having modernly cheap computers, but how did they do it before?

By this argument, do you also pay your bills manually by check at the end of each month? And book all your air travel by calling a travel agent?

There's nothing wrong with trying these things to see what advantage they have, but advocating the old ways of doing things purely because they're old seems more like religion than science to me.

I don't think you can extend his/her argument like that in a valid sense. I don't think he was advocating for a luddite position.

The appropriate question is whether or not the move to computers has improved things. Not every step forward technology-wise is an improvement. Some things need to be walked back.

For example, as a Physicist by training, most of the math I had to do was far more easily worked out by hand than fiddling around with a computer to do it.

When you're thinking through a problem pencil and paper are often a better medium than computers. Conversely where once I would have drafted letters and articles by hand, it's way faster nowadays to type into a word processor or tool like Evernote and keep coming back to improve something.

I still pay some bills by check as it fits the specific case better. But some online bill payment, or travel booking is better done online, as you correctly suggest.

...that being said, I wish I could call a travel agent and get it all booked nowadays, but they've been put out of business by book-it-yourself websites. Before these sites you may have been calling a travel agent but they were using a computer too so it's not so much the move to computation that's changed this last 10-20 years but disintermediation of the middle man. However those middle-men actually provided value that I'm only realizing now I'm older and would rather pay a little premium for the convenience of not wading through a gazillion different sites to get the right bookings and prices for a complex itinerary.

New way is always the best way seems more like religion than science to me.

>I'm only realizing now I'm older and would rather pay a little premium for the convenience of not wading through a gazillion different sites to get the right bookings and prices for a complex itinerary

Have you tried FlightFox? I haven't yet, and have no vested interest in / association with them (i.e the suggestion isn't me shilling :)), but it seemed an interesting possibility to me.

I haven't tried it but I'll check it out.

With an agent I could say stuff like - these are roughly the parameters I want to fly under; these are the airlines I'd rather chew razor blades than fly on; use your common sense to figure something out I'm not going to hate as an itinerary.

I strongly encourage the "write it down" method of problem solving, aka the Feynman Algorithm. Making a text record is often a good idea, for remembering information as well as solving problems.

I disagree with using paper and a pen. Why spend time drawing these letters out when we can just type them? Is it just a strategy to force yourself to slow down and think about what you're writing? There's nothing magical about manually drawing letters.

I can write things down and circle important bits as I go, or branch off particular points with other ideas; I can doodle little diagrams and annotate them; I can write annotated pseudo-code and little theories and ideas, and refer back to them on different pages, and so on...

If I type, all I can do with minimal effort is type. If I want to draw diagrams, or annotations, or brainstorm, I have to change to a different application, and use separate tools for each task, or otherwise spend more time formatting my document than getting my thoughts written down.

If I write, then I need nothing more than a pen and some paper and I can do anything, and I can do it fast without having to find the correct type of document to create, or the right place to save it.

Most importantly, I don't need a computer to do it, and it gets me away from my screen. And even if I never refer to the notes again, the satisfaction of doing it at all is invaluable.

I have fine motor control issues; I can write just about as fast as I can type. Using a lot of symbols, for example when writing math, I can write much faster than I can type.

And I get an automatic, permanent record that I can review anywhere or when without having to print it out.