• Donate
  • Log In
Home
  • About
    • About
      • About Us
      • Our Board of Directors
      • Board Meeting Minutes
      • Board Elections
      • Updates & Announcements
      • Our Staff
      • Governance & Financials
      • Lifetime Achievement Award
  • Events
    • Events
      • Upcoming
      • Past
      • Conference FAQ
      • Conference Policies
      • Code of Conduct
      • Calls for Papers
      • Author Resources
      • Grant Opportunities
      • Best Papers
      • Test of Time Awards
  • Join & Support
    • Join & Support
      • Become a Member
      • Ways to Give
      • Our Supporters
      • Student Opportunities
      • Sponsorship Opportunities
  • Archive
    • Archive
      • Proceedings
      • Multimedia
      • ;login: Archive
      • Short Topics in System Administration Series
      • Journal of Education in System Administration (JESA)
      • Journal of Election Technology and Systems (JETS)
      • Computing Systems Journal
  • Search
Join the conversation
Back to ;login: Online

It's Good to be Lazy

Tips for note taking for system administrators and SREs
November 8, 2021
Tutorial
Authors: 
Andreas Gerler
Article shepherded by: 
Rik Farrow

In the field of System Administration and SRE, laziness drives us. We are too lazy to repeat ourselves so we automate tasks.  Still a lot of people in our profession are not lazy enough. They have to research the same topic multiple times. Instead of spending a little time taking notes, they have to figure out how things are working again the next time they tackle the exact same problem.

The lazy guy pulls out notes he has taken maybe a year ago. He usually stores that information in multiple places, with one copy for his employer. The second copy takes a little bit of extra effort. Here he removes everything that provides a clue about his current job. He stores it in a git repository in plain text so that he might search it sometime in the future at a new job, even if he switches tools or the tool he used back then is not available anymore. When a new colleague approaches him he can answer: "It's been three years since I have done that. But I am confident that I can do this because I have taken notes."

Ticket Systems

Almost everybody has to use ticket systems nowadays. Instead of seeing it as a burden, you can see it as your goto knowledge base. The description gives you a good idea what has to happen here. But then there are tons of tickets just getting closed without any clue about how the problem got solved or why it got solved in that way. Use the comment field to write down your notes. You can search it and reference the ticket in other tickets.

This all sounds too good to be true, right?  Many years ago Donald Knuth coined Literate Programming. The idea is to insert lots of documentation about what is happening in between code snippets. Later those are extracted to generate the actual program code files.

How about using the same approach and move it into our field? Literate DevOps!
Tools

Everybody knows that we have to constantly learn in our field. But another secret of the seniors: We observe the way we are working. We try to optimize ourself. And there are thousands of opportunities. Apprentices in trades start by learning how to use basic tools. Still a lot of us fail at that first step. Raise your hand if you can touch type! If you don't have to search for keys, words can flow. And it's easier for you to learn shortcuts instead of relying on that mouse, because using the mouse is slow. The time you invest to learn to touch type will pay of during your career.

Start learning the tools and programs you use on a daily basis. Don't pick tools because everybody is talking about them. Pick the ones which have been around for some time. Study their documentation. There is a good chance they will stay most of the time of your career. Pick the ones you can customize for your own needs, like a toolmaker who not only relies on prebuilt tools but makes his own!

If you have followed my advice, it's easy for you to write documentation. Look into tools like Jupyter and OrgMode. There are probably more out there, maybe specific to some tasks. It's easier to take notes if you don't have to switch tools constantly to create them. If you use a GUI tool for working with your database, and you have to copy the queries and results into your notes, instead use a tool where you can do it all in one place. It's not about the look but the feel. Taking notes, writing queries, executing them and getting the result in the same spot. Executing commands in the shell and capturing the result.

You might have heard of Markdown because everybody is talking about it. It's a good markup language and it's plain text. The information you store will be available in 10 years if you keep those files, unlike a proprietary file format which might become unavailable because the company behind it disappears. Markdown is not interactive. Org mode is similar to markdown but it's interactive. You can execute your code snippet blocks right on the spot and get a result set. Yes —  you have to learn a few shortcuts. Learn a shortcut or two a week. Rome wasn't build in a day either. After some time your fingers will fly over the keyboard and you will outperform your colleagues.

In my world, I spend most of the day in my text editor. After finishing a ticket I press a few keys. A "Finder" window pops up with my /tmp folder containing a plain text file. My clipboard contains my notes in a markup language our ticket system understands. The browser opens the ticket I was working on. I paste a comment and attach the text file. The comment is searchable and the text file contains any information lost in transition. On top of that everything is stored as well in a git repository. So even if we decide to switch the ticket system and lose history I have the information readily available.

If I have gotten your interest you can follow up here:

Literate DevOps: http://howardism.org/Technical/Emacs/literate-devops.html

Literate Database Work with Oracle: http://www.bundesbrandschatzamt.de/~baron/blog/20150520-literate-oracle....

Mastering Emacs: https://www.masteringemacs.org/book

Literate programming with python_doctests: https://kitchingroup.cheme.cmu.edu/blog/2018/05/17/Literate-programming-...

Article Categories: 
SRE
Sysadmin
Last updated February 8, 2023
Authors: 

Andreas Gerler currently works as a Senior Systems Engineer at Smaato, Inc. He has been in the field of System Adminstration and a member of USENIX for over 20 years, and has worked for companies like RealNetworks. He is a general problem solver with a special interest around databases.

[email protected]
  • Log in to post comments
USENIX logo
  • Contact USENIX
  • Privacy Policy

© USENIX 2025
EIN 13-3055038

Website designed and built by Giant Rabbit LLC
Powered by Backdrop CMS

We need contributions from individuals like you.

USENIX conferences directly influence the development of computing systems and products used worldwide. Contribute today to support this vital work for the next 50 years.

Secure the Future of USENIX

Donate
Close