This may seem pedantic, but this is an aspect of project management. The pen and paper aren't in the coding, they're in the design. You may be doing some abstractions/pseudo code on paper but you're not coding. You're planning. There's nothing wrong with this! I think it's a great way to operate. But it's less sexy to say "How I Plan: Pen and Paper" then to conflate it with coding. Everyone does planning. Some people…
How I Write Code: Pen and Paper
41–50 of 110 posts
Re: How I Write Code: Pen and Paper
#42What kind of pen!!! ???
Use Mechanical Pencils. No leaking/drying/wastage and you always get to marvel at the ingenuity that goes into making some of these gadgets.
Plus it gives you an excuse to indulge in another collection mania :-)
Re: How I Write Code: Pen and Paper
#43This may seem pedantic, but this is an aspect of project management. The pen and paper aren't in the coding, they're in the design. You may be doing some abstractions/pseudo code on paper but you're not coding. You're planning. There's nothing wrong with this! I think it's a great way to operate. But it's less sexy to say "How I Plan: Pen and Paper" then to conflate it with coding. Everyone does planning. Some people…
The author is conflating coding with solution planning in a pretty minor way - you're more seriously conflating coding with solution building.
Re: How I Write Code: Pen and Paper
#44This may seem pedantic, but this is an aspect of project management. The pen and paper aren't in the coding, they're in the design. You may be doing some abstractions/pseudo code on paper but you're not coding. You're planning. There's nothing wrong with this! I think it's a great way to operate. But it's less sexy to say "How I Plan: Pen and Paper" then to conflate it with coding. Everyone does planning. Some people…
As someone who's worked a fair bit now - coding has absolutely no value to any company. What delivers results is deploying solutions - whether those solutions are powered by hotpockets and red bull at 3AM or whether they are entirely composed of meetings discussing how to inform customers of the change - it is never "coding" that solves a problem. "Coding" is at most the effort of transcribing a solution from your br…
Architects do a similar thing, they visualize in their heads and on paper, but then they also actually build 3D small-scale prototypes to get feedback on their design.
So I would say that coding can also be an important part of the design process. It is not just transliterating what's in your head to code-files on the computer, it can help improve the design which is in your brain.
Re: How I Write Code: Pen and Paper
#45All of Dijkstra's EWDs are manuscripts[1]. As far as I know all of his seminal algorithmic work was done with pen and paper. When he was first programming it was just after the second World War and Dutch programmers could only manage to beg about 1 hour of computer time a week from the US occupation. So they got very good at writing programs with the technology they did have, pen and paper. As always, restrictions br…
I think a lot of people here are not getting the gist behind the use of pen and paper; so let me try to summarize it;
* They do not limit the concrete expression of any concept/thought that you might have. You can use text, symbols, invent new symbols, connect them in any fashion you choose etc. etc. They are free form and become an extension of your mind. See also the book; The Body Has a Mind of Its Own: How Body Maps in Your Brain Help You Do (Almost) Everything Better.
* They force you to slow down your thoughts i.e. still your chaotic mind and help focus on the problem and its various aspects. This is invaluable in today's world filled with distractions. The books by Cal Newport are applicable here.
* If you choose to make your notes public, it adds another layer of discipline to really understand the subject matter since you have to anticipate possible objections and have the answers ready.
* Finally, they help clear your mind of the inessentials allowing you to ruminate and manipulate the essentials more effectively. Yet ancillary data is always available as needed.
If you look at History, all the greats wrote prodigiously. I firmly believe that it was one of the defining factors which directly led to their eminence. I was first inspired by the Notebooks of Leonardo Da Vinci (get the 2-vol large prints by Dover) before i started noticing the pattern.
PS: I read somewhere that Dijkstra wrote one of the first Operating Systems; The "THE" Operating System by hand on paper!
Re: How I Write Code: Pen and Paper
#46Re: How I Write Code: Pen and Paper
#47For example, using Swift Playgrounds with pen instead of going through all the digital keyboard transitions, or the external keyboard.
As for the article, that is also my approach most of the time, and how I sometimes do coffee shop programming, with a paper notebook and pen in some pseudocode.
Then back at the home/office I actually try out the ideas.
Re: How I Write Code: Pen and Paper
#48I've never really had success doing concept work of any kind with pen and paper. Especially writing, but even diagramming. If I need to step back and work with ideas abstractly, the paper medium is still going to get in the way at least as much as the digital text does. What I really have to do is keep it all conceptual in my mind; that's the only medium that's truly unopinionated and flexible. Paper/whiteboarding is…
Re: How I Write Code: Pen and Paper
#49What kind of pen!!! ???
Pshh ... Don't use Pens! Use Mechanical Pencils. No leaking/drying/wastage and you always get to marvel at the ingenuity that goes into making some of these gadgets. Plus it gives you an excuse to indulge in another collection mania :-)
Re: How I Write Code: Pen and Paper
#50Earlier quoted context omitted.
No, the author is actually writing code using pen and paper. It's not just a high-level or organisational sketch. It's not just planning. What happens at the computer afterwards can best be described as transcription and debugging.
I find it pretty unlikely that this entry: > I opened my laptop, created a new Github repository, typed in the code, added some tests and wrote the README. It was probably all done in 4 or 5 hours of concentrated work. Means handwritten code verbatim went into the repo. The focus on iteration is great - it would be unusual to stop at this point. But if we say the written word is canon, my response is that's inefficie…