A Year of Developer Journals with jrnl.sh
rickcarlino.com
rickcarlino.com
I don't want to keep the wiki page super busy, so I now keep a text file with basically a much more verbose version of the same thing. What happened, what I tried, what I eventually found was the root cause, how I fixed it, and what I'm changing to prevent a repeat.
This has two big advantages. First, the obvious one is that when things act up I can sometimes find details on a previous incident that I don't remember very well. The second and I think even greater advantage, though, is that it forces me to actually think seriously about the root cause and preventative measures every single time, instead of just fixing the immediate problem and then going on to the next thing in a rush.
I think postmortems should be a valuable learning opportunity for the entire company, and are by no means a punishment. In an organization that fosters "blameless culture," this allows the organization to grow and to identify and fix a weakness.
Google's SRE book [0] also talks a bit about this in the chapter about Postmortems.
And yes, I know that the ".sh" probably refers to the fact that you use it from the shell, not the implementing language. I said it was pedantic, didn't I?
Taking notes also makes me to conduct a thoughtful retro of what I have done.
I prefer pen and paper by far, so I ordered a personalised notebook, it is pretty good looking, most wouldn't touch it, but I'm planning on doing a collection of them.
By personalised I mean that it has my name on it and reads "Engineering Logbook #1". I ordered this book from Stamford Notebooks[1]. No affiliation, but they're I'm planning to ask some customisations when I order "#2".
On the digital side, I was inspired to start using Org mode by following Sacha Chua's map approach: http://sachachua.com/blog/2014/01/tips-learning-org-mode-ema...
I like writing and have a lot to write about but I prefer physical journals by far... My handwriting is ugly too but I won't give up!
It's not so much about posterity as it is about unblocking issues and moving forward in the most sensible way.
https://github.com/ianw/rstdiary
https://rawgit.com/ianw/rstdiary/master/sample/index.html
Been working for me for about 4 years. Once you get a bit of a corpus, it feels silly not filling in some points for the day to keep the thing rolling.
More generally, I've been using Quiver for about a year. Highly recommended. http://happenapps.com/
I also keep a personal journal in a traditional chronological order, which is a single "journal2017.txt" file. I also recommend using private git repo, not public, since it may contain some of your personal information, and private thoughts.
For the non-technical person (i.e. not into Vim or Emacs), I'd recommend Notational Velocity (nvAlt specifically) on Mac. I'd be using it, only if it had vim keybinding. It syncs online to SimpleNote, and it makes journaling really easy.
It's easy, functional enough and works quite well.
When my employer switched to Macs, I started using ia Writer and iCloud
I like that I can write on phone or laptop. And all my old thought files are right there
I still carry a notepad and mechanical pencil too. Sometimes the muscle memory and itch to “just write” demands it
It works mostly as a brain dump. I rarely read older entries. But it’s good to know that I could look things up later.
which I've aliased: note=jrnl this
if I'm doing something that I get pulled away from it's a quick "note was working on the flux capacitor in somefile" .gitignore the notes file as desired
I've been keeping a plaintext worklog at the day job to help with time-tracking. Logging time in our system as I go is slow and painful, so I just write it down daily and enter it all at end of week (month :|).
I have a file for each month (e.g. `2017-12-timelog`), it stays open all day, and I just prepend entries like:
Dec 1 Fri
9 - 10: emails/updates
- 11:30: BB-X10 make the list update async
- 3:30: hacker news
- 5: BB-X10 unit tests
I'm going to try jrnl for this use case -- feels like it'll be even simpler.https://telegram.me/daytobasebot
https://github.com/martinthenext/daytobase
I found it easier to use telegram because it is available on mobile as well as desktop, so I end up writing more things down.
Pretty great to discover jrnl.sh, validates my idea that this approach to logging things can have wider adoption.
Sadly, as much as I hoped it would, it hasn't translated into a good habit of writing a personal journal.
And this is the key
> What I have found liberating is the concept of only have four tags
Yesterday: Joplin – A note-taking and to-do app with builds for desktop, mobile, terminal | https://news.ycombinator.com/item?id=15815040
Both have recommendations for the process and tools.
Anyways, highly recommend this, it is my rubber duck debugging method of choice!
[0] https://www.gnu.org/software/bash/manual/html_node/Bash-Vari...
There was some discussion of including it here https://github.com/maebert/jrnl/issues/262 but it looks like they might have decided against it.
1. Create a file foo.org.gpg
2. Put this in the first line (you can list multiple PGP keys if you like):
-*- mode: org; epa-file-encrypt-to: ("PGP KEY ID HERE") -*-
3. Profit!The world was beyond the emacs era and into the GUI editor when I started developing so it's a hump I've not been willing to climb, jrnl works well for me
Emacs is a GUI editor (e.g. https://upload.wikimedia.org/wikipedia/commons/5/5a/Emacs-sc...), and the world still hasn't progressed beyond it. I'd love to be using something better than emacs, because it really is old & crufty, but literally no other environment is as powerful, as extensible and as pleasant to use.
That is a matter of opinion, which is what the OP before you was trying to point out. I know emacs, and use it as well when I'm in a shell environment, but I prefer to use Atom in a desktop environment where I may be copying and pasting from other apps. Pleasant is an opinion, which negates right and wrong.
Is Atom better with copying and pasting certain kinds of content than Emacs?
When I paste things into Atom or Jetbrains' Webstorm, my javascript usually gets auto-indented to The Right Place. Atom even did that when I _reordered_ lines, which was especially neat as I hadn't had Webstorm do it. This isn't something that my Emacs will do. I'd be _very_ surprised if there weren't some module, script, or Emacs configuration that I could use (or write) to get this same behavior. After all, Emacs' "Tab to The Right Indentation" was something that blew my mind years ago.
(Disclaimer: I have used Atom, but prefer Webstorm. I use Emacs, but only for Git things and the occasional quick edit.)
Out of the box in Emacs (with no config or extensions) you can simply select the pasted region and hit Tab to reindent the whole area correctly (what you called 'Tab to the Right Indentation').
So in total:
* C-SPC (Mark)
* C-y (yank/paste)
* C-x C-x (select to mark, essentially)
* Tab (indent)
Does what you'd like. This is all compositional, no magic here (and of course you can bind this all to one key press). Naturally lots of people make this auto-indent by default.
For me the most essential thing to know about those auto-indent modes is how to temporarily turn them off (like `:set paste` in Vim), since I so often need to bypass that behaviour for one reason or another (e.g. when resolving Git merges - trying to keep the original formatting).