Live data from Hacker News

As a developer, my most important tools are a pen and a notebook

hamatti.org

41–50 of 302 posts

Re: As a developer, my most important tools are a pen and a notebook

#41
post #7
post #5

Calling a notebook the “most important tool” for a dev is pure romanticism. Useful for some, sure, but let's not pretend it outweighs a debugger, version control, or CI. This isn't craftsmanship cosplay, it's software engineering.

In a few years of my career now I never had to use a debugger or CI. Console debugging is good enough usually. On version control I agree.

The conclusion I draw from this is that some debuggers are so bad it's not delivering value over "print debugging".

But perhaps it's a lack of knowing what a debugger can deliver.

A debugger gives you the ability to immediately dive in and instantly inspect the complete stack trace, all the values on the stack, all the values of local variables, etc. Without restarting the program or calling out specifically what you're going to want to inspect ahead of time.

A debugger will "pause the world" and let you see all the parallel stacks.

A debugger will let you set conditional breakpoints. If you need to debug the conditions for when a variable gets set to a particular value, a conditional breakpoint on the variable set to break when it's set to that particular value makes that a doddle.

A debugger will let you enumerate collections and re-write values on the fly.

A debugger will let you break on exceptions, even ones normally caught and handled.

A debugger can launch and attach itself.

All of that is a massive force-multiplier and time-saver, which print debugging doesn't deliver.

Re: As a developer, my most important tools are a pen and a notebook

#42

I don't understand the pen/physical notebook thing. It's slow to write, insanely slow to search what you've written, almost impossible to copy or share.

I took the pen+notebook idea a bit further, I use pen+paper (a sheet of paper). To me, none of the qualities you listed matter when it comes to sketching ideas, thinking about problems, staying on track while problem solving. When I'm done with the task, I read through my notes once and throw it out.

I date the handwritten pages and keep them. I've been attacked more than once for copying, the notebook offers acceptable proof of provenance.

It serves the same purpose as the lab notebook does for a researcher.

The notebook doesn't take up significant room. If you still have a space problem, run it through a scanner.

Re: As a developer, my most important tools are a pen and a notebook

#43
post #12

I don't understand the pen/physical notebook thing. It's slow to write, insanely slow to search what you've written, almost impossible to copy or share.

From a quick search: https://www.scientificamerican.com/article/why-writing-by-ha... https://stackoverflow.blog/2022/11/23/why-writing-by-hand-is... Writing by hand definitely is better for a squirrel brain like me. And searching is overrated, most note-taking is write-only and tends to accumulate without anyone ever reading it back. So optimize for memory retention so you can later form better mental associations wi…

Write on!

Re: As a developer, my most important tools are a pen and a notebook

#44
post #7

Earlier quoted context omitted.

In a few years of my career now I never had to use a debugger or CI. Console debugging is good enough usually. On version control I agree.

I do not know what you work on, but debugging is indispensable for certain workloads. Print debugging doesn’t come close to setting up a breakpoint and inspecting every single variable in the stack with a good interface. You don’t even have to select what to print and where, anything can be printed anywhere in two clicks. A UI like the debuggers in Jetbrains IDEs provides smart rendering for all types so that for exa…

I dont know, sounds more like a design issue to me, if your app requires this amount of information to get debugged properly.

Re: As a developer, my most important tools are a pen and a notebook

#45

I don't understand the pen/physical notebook thing. It's slow to write, insanely slow to search what you've written, almost impossible to copy or share.

If you only need to write sentences, what you say makes sense.

If you need to draw approximate diagrams, or formulae, or flows, or trees, or whatever else, instead...

Re: As a developer, my most important tools are a pen and a notebook

#46
post #6

I don't understand the pen/physical notebook thing. It's slow to write, insanely slow to search what you've written, almost impossible to copy or share.

In the context of this post it's not about preserving or sharing the thoughts. Writing, in this case, is a "thinking tool". Forcing yourself to materialise the thoughts as actual, written, text helps form clear ideas.

My brain has enough memory

Re: As a developer, my most important tools are a pen and a notebook

#47
post #5

Calling a notebook the “most important tool” for a dev is pure romanticism. Useful for some, sure, but let's not pretend it outweighs a debugger, version control, or CI. This isn't craftsmanship cosplay, it's software engineering.

The literal argument here is fine - using a notebook is antiquated and we have better tools.

But the sentiment holds true. When you're building software designing good code is the most fundamentally important aspect of your job. All the tools you mention are things that enable you to delivery that code, but if the design of the code itself is wrong then they mean very little. The process of designing code feels like a lost art these days; developers are far too happy to throw crap at a wall until enough of it sticks to pass the acceptance criteria. Going back to actually working out the logic and flow of the code (on paper, in a diagramming app, whatever) is missing for a vast amount of the dev community.

If people were happy to work through the logic of a feature before hitting their IDE and debugging the first thing they code up, maybe apps would be a bit less buggy.

Re: As a developer, my most important tools are a pen and a notebook

#48
I have been writing software for about 20 years (following on from OChem PhD and research for a few years). I am 'senior' and get paid plenty in Oz...

I have aphantasia - I can't visualise/picture things in my mind, so I use pen and paper or whiteboards A LOT!

I create various ERDs, mind maps, sequence diagrams etc. I use a ReMarkable which makes it a bit easier to move stuff around and makes it more effective.

I get that some people might think it is 'pure romanticism', but pen and paper has been crucial for my success.

Re: As a developer, my most important tools are a pen and a notebook

#49
post #25

Some of the most intelligent people I've ever met in math, physics, and computer science don't even use a notebook. They use printer paper and pen. When they're done, they throw the paper away. I have seldom found personal notes from far in the past to be useful. If there's something worth noting down, then it goes into documentation, so others can stumble upon whatever quirk I've come across in the future. If there'…

This is how my brain works. I do have a notebook. My stream of thoughts for one day go one one page for that day. I turn the page the next day and I almost never look back. There may be some value in looking back. But, I have not been able to make myself do it.

Re: As a developer, my most important tools are a pen and a notebook

#50

I don't understand the pen/physical notebook thing. It's slow to write, insanely slow to search what you've written, almost impossible to copy or share.

They aren’t optimising for speed, sharing, or searchability. Notes of this type aren’t an inadequate database, but a tool for thinking. Note-takers visualize and symbolise their thinking while they work through a problem. Writing and drawing reduce cognitive load and externalise information so it doesn’t have to be held in memory. Notes also create a useful record of that process so you can see how you got to your solution. Notebooks are just a convenient UI for that process.
Post reply on HN