Live data from Hacker News

The software engineering notebook

winterflower.github.io

41–50 of 143 posts

Re: The software engineering notebook

#41
post #6

Is there any opensource things that can be a software engineering notebook or journal that is easy to use and painless?

A folder of text files. Sounds stupid but I've yet to find a better tool. I'll use Org-Mode if things get more complicated, but nothing beats plain text.

I mean org-mode is just easily readable plain text for the most part... Only has the potential to get ugly when you do odd or advanced stuff. The basic structure is just asterisk prefixed text.

Re: The software engineering notebook

#42

Is there any opensource things that can be a software engineering notebook or journal that is easy to use and painless?

I use tiddlywiki, which is opensource. It's been recommended by many HN comments in the past. It works pretty well. You can store a copy on dropbox, and use android/ios apps to sync it. The web interface on a computer is really great. The mobile apps are not as great, though (clunky around syncing it).

Re: The software engineering notebook

#43
post #13

The commitment to taking good notes has been one of the best decisions of my life -- not just professionally. I use my standard text editor (Textmate 2), and have a "notes" project, with all manner of categories organized by folder. I take notes on articles I have read, take notes on any presentations I watch or educational courses I take, or books I read. Moreover, I now take much better in person notes -- I take th…

Can you explain how you organize them? Been trying to do something similar but haven't gotten it quite right yet.

I've given up on organizing. I find things with ctrl-f and put the date siren every time I start writing, so if I know generally when something happened, I can go back and find it.

Re: The software engineering notebook

#45
Maybe this is just changing fashion, but a lot of developers keep blogs for this reason, and 10 years ago everyone would have simply called this idea a "blog". Among the ones I read:

http://intertwingly.net/blog/

https://burningbird.net/

https://kottke.org/

https://www.tbray.org/ongoing/

I keep my own blog entirely for my own benefit, and the tech section is simply things I've read recently, or things I've learned recently:

http://www.smashcompany.com/technology

Re: The software engineering notebook

#47

I have adopted this practice over the last year and have found immense value in the practice. I believe this practice is one of the cheapest ways to help leverage your previous experience on the job as you keep yourself from having to repeat previous learnings over and over again as you try to remember what those compiler flags you used 6 months ago actually were :). My system is quite simple. I have created a github…

A script might finesse things a little more, but you could get a naive implementation of the timestamp behavior with something like:

  alias journal='vim + "/Users/username/journal/$(date +%Y)/$(date +%Y%m%d).md" -c "execute \"normal! Go$(date +%T)\========\\" | startinsert "'

Re: The software engineering notebook

#48
While I don't keep a software development notebook as a rigorous practice I note down interesting or useful insights, findings and patterns in Evernote. I sometimes keep code snippets as GitHub Gists but usually I find source code to be too transient and dynamic to keep it anywhere else than in the actual project it's needed in.

More importantly though I use my blog for keeping more polished, more elaborate versions of my more relevant notes. Sharing your thoughts with others not only benefits others but it also makes you think over and refine your original ideas.

Distilling your thoughts for the benefit of others will help you better understand the matter as well. While we teach, we learn.

Re: The software engineering notebook

#49
post #23
post #13

The commitment to taking good notes has been one of the best decisions of my life -- not just professionally. I use my standard text editor (Textmate 2), and have a "notes" project, with all manner of categories organized by folder. I take notes on articles I have read, take notes on any presentations I watch or educational courses I take, or books I read. Moreover, I now take much better in person notes -- I take th…

On the other hand, based on my personal experience, maintaining a constantly growing archive of things, be it notes, bookmarks, emails, etc. turns out to be not very useful. Also, it gradually becomes something that you spend more time on than on other things. I now prefer to be more spontaneous, try to minimize the number of things that drag me into the past, start things as if from scratch, "reset" myself, dismiss…

It isn't about having the artifact, but about the reflective activity of creating the artifact.

Re: The software engineering notebook

#50
I have a "notes" directory in dropbox. I use .md files, with a text editor that does some highlighting based upon the markdown.

95% of them go into what I call my "dev diary". Each day gets a new file. Any questions, answers, thoughts, etc. while programming or designing go in there. For searchability, I also add any reference Jira/Trello/etc ids.

Beyond that, I have cheatsheets and checklists. Cheatsheets are short, useful things (e.g. commands, undocumented gotchas, etc.) for a given piece of tech. E.g. I have a git.txt, mysql.txt, etc.

Checklists are things I should go over whenever I do X. Am I about to commit something? Well, there's a list of things I tend to forget to do. So I have a checklist for this.

Each project also gets a file (or folder if it grows large enough) in my notes directory.

I previously used Evernote. Then Onenote because it was nicer on the surface pro. But I had to abandon Onenote because they don't have a good Linux client. I decided I was going to stop throwing my notes away and just switched to regular files.

Post reply on HN