Writing something every day was too tough for me for a long time. Eventually, though, I found out there ware lots of opportunities to practice writing while I feed my note archive. So I made note-writing a deliberate practice. Today, I think I’ve found peace with the way I write texts. It’s possible I’ve said things like this before, but this time it feels different. No, really! Writing itself isn’t a hindrance anymore and my actions yield results: I’m adding meat to my book manuscript and I find topics to write blog posts about. I became more confident in writing texts, even though writing a text seems to be different from taking notes at first.
A Zettelkasten makes writing texts easy. It encourages you to prepare research and the most of your writing before you compile your first draft. This way you can focus on one task at a time and needn’t sweat about getting through. This works excruciatingly well with longer texts but it’s proven indispensable for any of my shorter writing projects, too.
A Zettelkasten is a device to extend your mind and memory so you can work with texts efficiently and never forget things again. Both permanent storage and interconnectedness are necessary to use the full potential of an archive for your notes. You need a permanent storage for your notes so they can give a cue for the things you want to remember. You also need to manually connect notes to create a web of notes which adjusts to the way your mind works.
Recently, I took a look at my Zettelkasten to see which Zettel notes would make a good next post in the series. I re-discovered plenty of material, no doubt. Still, it occurred to me that there’s a lot of important things which don’t fit well in short blog posts and which neither do well when split into a series of posts.
I talked to my pal Sascha about my concerns who has plenty of experience as a writer. He’s running a thriving German blog about nutrition and healthy lifestyle called ImprovedEating which I can only recommend because of the genuine research he’s providing. His blog is a platform to get feedback for the vast amount of research material for the upcoming book he’s writing for about a year now.
The point is: Sascha is a blogger, a book author and a Zettelkasten user. Without a Zettelkasten, he wouldn’t be able to manage all the material he’s researched so far. Of course I wanted him to give me some feedback.
We considered the vast amount of notes on maintaining a Zettelkasten both of us collected through the years. In the end, we decided to create an information product together, that is: a book.
Thanks to our efficient note-taking method, the book will be available soon for feedback from early adopters. I’m pretty excited about this project and I’ll definitely keep you in the loop!
Today, we’ll talk about tools for a change. Managing a reference file is part of the collection phase of maintaining a Zettelkasten. It’s of special importance if you’re writing a research paper or a book because without proper citation management things are going to be a mess for you, soon. I’ll show you how I do it and tell you about possible alternatives briefly.
Some time ago, I read about database design and mapping object hierarchies to database tables. Ruby on Rails’ default approach is to use a technique called Single-Table Inheritance. This design pattern has some drawbacks.
I got fed up with having to start a Ruby project from scratch every other day. Thus I proudly present my Ruby BDD project boilerplate. This is an “opinionated” boilerplate. I say that because having an opinion seems to be de rigueur. What I really want to say is: I picked a setup which works for me and it might or might not work for you.
As I said in my last post, my reading workflow consists of GTD-like phases: collect, process and write. While I wrote about collecting before, this post is about the three phases of processing notes. In the last section you’ll find a few example Zettels I wrote.
This weekend, I struggled to flash a TP-Link TL-WA901ND access point with OpenWRT and connect it to my university’s dorm internet. It took 7 hours to figure out what I accidentaly achieved after 2 but didn’t understand and couldn’t reproduce then. For anyone who wants to do the same, I publish this article for reference.
My reading workflow consists of phases similar to the phases in GTD: collect, process, write. This post is about collecting.
Marks aid understanding – but don’t overdo it
When you read a book, do you underline words or sentences or whole paragraphs? Do you use a colored text highlighter, a ballpoint pen or a pencil?
Manfred Kuehn thinks the way you treat a book is a sign of how civilized a reader you are. If you paint the pages you don’t know a lot about getting information and treating books. Also, underlining is utterly useless in most cases: you don’t magically remember the content better if you underline it word for word, sentence by sentence. Underlining won’t help you remember; marks are there to aid understanding in a later phase of reading.
Despite Kuehn’s point, you’re not supposed to consider yourself a caveman just because you use colored pens to put marks in texts: Umberto Eco states in How to Write a Dissertation1 that you should use different colors for different questions, topics, points of view, and he says you should mark passages in color for revisiting the text.160 According to Eco, it’s useful to color-code your marks and reflect this code in your notes.
I agree that you should neither ruin other people’s property nor their reading experience of library books by painting the book’s pages, though. That’s just ruthless. But you’ll need to mark passages for further reference, else you’ll forget what you found important in the first place. So because you have to, use a pencil and erase your marks later if the book wasn’t yours. If you’re going to re-read the text and use it during future research, buy the book and use colored pencils if you like.
When I read, I collect everything that’s useful on paper. I practice ‘writing while reading’, if you like. Writing improves thinking, remember?
My collection phase consists of both putting marks in the margins and writing notes:
I put pencil marks in both my own and library books. Nowadays, I simple put a dot • in the page margin to find the passage I want to pick up later. These little visual guides ease scanning the page.
The text inspired a thought, and the inspiring part is already marked in the text. I only need to capture the thought during the collection phase. I used to write notes in the margins to remember what I had thought in re-reads of the book. Now, though, I write a summary or a unique thought on separate pieces of paper which I can physically pull out of the text.
Both the mark and the note will be useful when I process the text later. True understanding depends upon elaborate notes which I put into my Zettelkasten. I’ll expand the processing phase in another post.
Getting Fancy with Marks
For academic reading, I employ a tactic which is slightly more complex. My good friend Sascha suggested to divide text into its functionings:
I circle terms which are being defined and write a D for Definition in the margin.
When the author elaborates a model, I put an M or μ in the margin and maybe highlight key terms she uses.
If I spot an argument, I put an A or α in the margin and sometimes draw a vertical line in the margin to designate the passage.
Everytime I find a weakness in the argument or disagree due to a different starting point, I put a bolt glyph in the margin.
These glyphs I only use for texts in philosophy and sociology which tend to be more complex and need to be broken down into manageable parts. In nearly every other fiction and non-fiction book it’ll suffice to take note and aid the eye with unobstrusive marks.
Assuming you’re a writer or a thinker, why should you care about the way you take notes? If you want to think creatively and write original articles and books, you need to form associations in your mind effectively. Notes can help you with that if you adhere to a few basic principles. You can emulate communication processes with your own notes if you structure them in a certain manner. Notes can and should stimulate new associations and foster your creativity just like a good talk does.
I use Brett Terpstra’s little Ruby script called “gitlogger” to write git commit messages from selected repositories into my Day One journal once a day. My commit messages tend to be a bit longer when I work on projects which really matter. Unfortunately, gitlogger wasn’t intended to handle multi-line commit messages. Every commit message resides in a list item. But if you know Markdown, you’ll know this markup won’t render as expected:
Nat Pryce released Code Guide, a tool to create interactive code documentation. See his blog post announcement. It’s written in Python and works for Python and Java code. But since Python and Ruby comments look the same, parsing Ruby code works, too.
Since I live in a twelve square meter room in my University’s dorm, in a flat I share with four other students, I need some discipline putting things where they belong at the end of the day.
This is how I start the work day most of the time: with an empty desk. Today for example I did some research in Evans’ DDD book.1 Usually, the book rest resides in a shelf next to the desk with the books nearby.
When I do work I’m getting paid for from home, I scatter documents, sketches and the like around like a madman—but in the end I’ve got to put things where they belong, file away documents, hide sketches in project folders or scan them and toss the paper version.
My desk is bespoke work, hence unique. A friend from back when I was at school became carpenter apprentice and liked to have some practice on crafting desks. This pretty and super-stable piece of furniture was a EUR 120,– bargain (~USD 158) and delights me every day for more than five years now.
On my desk you permanently find:
My MacBook Air (German keyboard layout), most of the time in clamshell mode,
a HPLP2275W 22-inch screen with a very decent viewing angle,
a small external Apple keyboard (English keyboard layout),2
a Bamboo Pen & Touch,
a Faber-Castell 0.5mm mechanical pencil,
a 1.25 liter water bottle,
a cheap LED desk lamp,
one of five speakers scattered in my dorm room. I never bothered mounting them on the walls in the past two years. I don’t expect a lot of surround sound in a room this small anyway.
Eric Evans (2006): Domain-Driven Design. Tackling complexity in the heart of software, Upper Saddle River, NJ: Addison-Wesley. ↩
English keyboard layouts are great for coding. All the special characters are just so easy to get to. But most of the time I have set my keyboard layout to Neo2, a keyboard layout made for efficiency while typing, optimized for writing German texts. The center row of keys yield “UIAEOSNRTD” instead of “ASDFGHJKL;”. It’s nice to not move fingers a lot when writing with Neo2, yet sometimes I think I wear out faster through the course of the day when I switch activities and keyboard layouts a lot. ↩
When Marko (@markowenzel) and I started to plan our first iPhone app codename “ShiftCal”, we met and used prototypes to get a feeling for the Interface we wished Apple provided built into Calendar.app. The prototypes for the app which later would be dubbed “Calendar Paste” were really fun to make.
When I developed my iPhone event template builder Calendar Paste, I took a lot of notes during development. In 68 plain text files I collected everything I’ve learned during the planning, design, programming and marketing process of the app.
The other day, Michael Schechter complained Scrivener’s outliner feature lacked a focus mode. To this, Aaron Mahnkelaconically replied: Yeah, I still don’t understand the need. Type out an outline, paste it into
your document, and then type above it. It will always be visible right below
your book text. Why turn the folders into an outline?
I struggled with Ajax form calls in Ruby on Rails for some time now. Because I seem to be anal retentive, I insist the server should respond with HTTP status code “400 Bad Request” or “424 Unprocessable Entity” when form submission turns out to be full with invalid data. Responding with “200 OK” doesn’t make any sense when there was an error on the client side, like an empty or otherwise invalid form. That’s what HTTP codes are for: to comminicate how it went and what happened. Also, we web developers are creating publicly visible Web Services and APIs here, so they should conform to the most basic standards of the transfer protocol we’re using, am I right?
I kept this one in the queue for some time for various reasons. One, I procrastinated making the sales stats public because I wanted to see whether and how I could affect them to look nicer than they turned out to look. Second, I don’t really feel comfortable giving others, namely AppLaunch, bad press.
Exactly one year ago, my baby brother was born. I was raised to adulthood an only child. Naturally, I got really excited about the birth of my little brother. I imagined how we would play and what we could do together, me being 25 years above his age. I asked myself seemingly adult questions, too: what would I be able to pass on to him? How could I contribute to his upbringing?
After CriticMarkup was released with a toolkit including Sublime Text 2 theme and commands, I simply ported the easy stuff to TextMate. Since Sublime Text bundle files are heavily inspired by TextMate (to ensure compatibility with the popular Mac all-purpose editor, I suppose), this wasn’t a very complicated task.
On Dec 11th I released Calendar Paste. With yesterdays App Store statistics available, I now have a full month of sales statistics recorded. I’m both happy and excited to share a few numbers with you on this first month anniversary.