6 ms·
I'd like to hear more about your quick-access note system.
by klausnrooster 8y ago
I'd like to hear more about your quick-access note system.
- anitil 8y agoI'll second that!
- Noumenon72 8y agoJust posted. https://news.ycombinator.com/item?id=17389157 https://news.ycombinator.com/item?id=17389157 Glad at least two people will see it.
- anitil 8y agoOh thank you - everything I was hoping for and more.
- Noumenon72 8y agoIn the plastic factory, which had zero wireless access because it had metal walls and was basically a Faraday cage, I kept paper notes in my shirt pocket. At first I just wrote down stuff as I learned it: "when the plastic pellets won't feed do this. Here are tips for feeding the trim grinder. Here's what this alarm code means." The amount of helpful stuff grew fast and I had to keep erasing my notebook and reorganizing it to find things. Settings were organized by machine number, defects by symptom, job changes as a checklist, alarm responses as a flowchart. (You only had 3 minutes before your line would shut down when the 'out-of-pellets' alarm went off, so you had to consider only solutions that might work). The machine produces a half-ton of plastic every hour so my lookups had to get more and more efficient. Every second you spend looking stuff up means more plastic you have to pick up and throw in the scrap box. I switched to a Word document I could print out and bring with me. I used Word's four levels of headings and the "Generate Table of Contents" feature so I could find the exact page with my issue in seconds. I kept the most important six pages folded up in my front pocket for immediate access. Things like the stacking table ceasing to lower so that the plastic would jam up within minutes. Every day when you make plastic you fail and waste money, it's very challenging. The consequences are much more tangible than in programming -- orders don't get on trucks, people have to roll up hundreds of pounds of plastic off the floor, the line goes down and you have to spend an hour sweating to get it back up again. So every day I fixed my notebook so that day's timewasters would have been solved faster. Write down how to fix things without calling maintenance, record the solution that worked and not the five that didn't, add a step to a checklist. So what this did that carries over to programming is it makes you start using your notes as an extension of your memory. There were fixes I wouldn't use for months but could instantly access by the situation (even though I didn't have Ctrl+F). Because of the speed of the lookup, I wouldn't even bother remembering these things at all, which gave me more working memory. Now I have 280,000 words of notes about programming, but it's not like college note-taking where you'd have to skim pages and pages to find what you need. There's a Python.docx, Concurrency.docx, Testing.docx. It's all organized by headers like "Design patterns", "refactoring conditionals", "String.format expression syntax". That way if I can't remember exactly what I wrote to Ctrl+F, I can still get there very fast -- and see all the other related notes beside it. They're all on AutoHotKeys so that I can just Ctrl+Alt+D to open "debugging.docx" and search "ConcurrentModificationException" and see exactly what the typical errors I make are that cause this exception and how I solved them last time. In the end, just like I was able to move to any line in the factory and run it as familiarly as if I had been there for months, I can move from writing a context manager in Python to doing conditional inserts in SQL and recover all the expertise I ever had in under a minute. It's great at my job which is full stack from Bash to Javascript. The same approach helped me revitalize our support wiki. Walls of text became "if this, click to expand. If that, go to page X". Related issues got stored together so you can go up the hierarchy a level if one approach fails and try others. Information got moved to right when you need it instead of buried on some other page. I feel like people who use Confluence and text notes to expand their quick-access memory like this are kind of "digital-ready" -- it's like our brain is expandable with an SD card slot that others don't have. Good notes let you crystallize a bit of knowledge every day so you have more room to learn something new the next day.
- anitil 8y agoI've tried and tried to do something like this, but it always ends up as a poorly maintained wiki or similar. Maybe the key is that they are living documents for you rather than a write-only sink. Great stuff
- Noumenon72 8y agoYes, every time I go to it I'm like "Did that section help me find the answer right away, or could it be better?" Then summarize more. Or reorganize, pull out a subtopic that's gotten too big, move things together that are related.
- klausnrooster 8y agoThanks for that great exposition. I tried a similar approach in a TiddlyWiki but when it got larger it was slow and required more and more fiddling. Then as an exercise in how to implement tagging using SQLite and TCL (then Python 2.7, then REBOL, then Python 3.5), a made a command-line thing that I've relied on for about 8 years now (REBOL FTW). I carry it around on a USB stick. Thought of porting it in a way I could use it from my phone but I'll never get around to it - I'm not a developer in the sense you guys are so it would take me months. As a further exercise I cloned that tool in an MS-Access form. I use that version at work. I put everything in it and it has been a huge help - I agree with your SD card slot analogy. Coincidentally I work at a compounder of plastic pellets for automotive use. We mold for testing tensile, etc, so I can appreciate what you were up against. I may steal from you and partition my tools topically (separate tables).
- Noumenon72 8y agoAndroid uses SQLite so you're partway there. The USB stick is a good idea because sometimes I read an article about Python at home and have been emailing it to work.