Categories: business

RSS - Atom - Subscribe via email

Tiny Habits: The Small Changes that Change Everything - BJ Fogg, PhD (2020)

| visual-book-notes, productivity

Text from sketch

Tiny Habits - BJ Fogg, PhD (2020) - Notes by Sacha Chua 2024-11-11-07

  1. Help people do what they already want to do
  2. Help people feel successful.

Motivation + Ability + Prompt = Behavior

  • Motivation: Motivation-ability curve: gets done, doesn't get done, start small, easy to do
    • Motivation is unreliable:
      • Complex
      • Wavy
      • Fluctuates
      • → Abstract X
  • Ability: Person: increase skills; Action: reduce size; Context: get tools & resources
  • Prompt: No behavior happens without a prompt
    • Person prompt: unreliable
    • Context prompts: sticky checklists, timers, notes, …
    • Action prompt: something you already do
  • Keep the habit alive.
  • Starter step
  • Where can it fit? Match: Location, frequency, theme
  • What is making this hard to do?
    • Time
    • Money
    • Physical effort
    • Mental effort
    • Routine
  • Skills of change
    • Behavior crafting
    • Self-insight
    • Process: growing
    • Context: redesign
    • Mindset: new identity
  • Habits grow or multiply
  • I change best by feeling good.
  • Untangling knots: positive new habits, then stop easiest old ones
  • Anchor, Behavior, Celebration
    • Anchor:
      • Trailing edge
      • Meanwhile
      • Pearl Habits: transform irritants
    • Behavior:
      • Specific behaviors towards aspirations
      • Impact, motivation
      • Small
    • Celebration:
      • Immediate positive reinforcement
      • Emotions create habits
      • Celebration is a skill: being nice to yourself
      • Shine
      • Rehearse & celebrate
      • Celebration opportunities
        • Remembering
        • During
        • After

I picked up Tiny Habits: The Small Changes that Change Everything (BJ Fogg, PhD - 2020) after reading Atomic Habits (James Clear, 2022).

I like Tiny Habits's emphasis on celebration and cultivating that feeling of shine, which is something I've been thinking about lately because of parenting. It is much easier to help A+ grow when she's feeling good. In fact, it's nearly impossible to get through to her when she feels grumpy or stressed. Part of my job as a parent is to manage myself so that I can co-regulate when she's off-balance, help her improve her abilities, co-design prompts based on environment and actions, and celebrate with her.

I also want to spend some time thinking about pearl habits. There are some things that irritate me, like when A+ is bored in virtual class and wants me to interact with her when I want to focus on something else. I want to turn those moments into more positive things. She's looking for connection and stimulation. I'm also looking for stimulation and the satisfaction of getting something done, but it's not as important as parenting in that moment. I wonder how I can rewire this part of our day.

Related:

View org source for this post

Excerpts from a conversation with John Wiegley (johnw) and Adam Porter (alphapapa) about personal information management

| productivity, org, pkm

Adam Porter (alphapapa) reached out to John Wiegley (johnw) to ask about his current Org Mode workflow. John figured he'd experiment with a braindumping/brainstorming conversation about Org Mode in the hopes of getting more thoughts out of his head and into articles or blog posts. Instead of waiting until someone finally gets the time to polish it into something beautifully concise and insightful, they decided to let me share snippets of the transcript in case that sparks other ideas. Enjoy!

John on meetings as a CTO and using org-review

Today I was playing a lot with org-review. I'm just trying to really incorporate a strong review process because one of the things I started doing recently is that this [Fireflies AI]​ note taker that's running in the background. Now, it produces terrible transcripts, but it produces great summaries. And at the bottom of every summary, there's a list of all the action items that everyone talked about associated with the names.

So I now have some automation, that will all I have to do is download the Word document and then I have a whole process in the background that uses Pandoc to convert it to Org Mode. Then I have Elisp code that automatically will suck it into the file that I dedicate to that particular meeting. It will auto-convert all of the action items into Org-mode tasks where it's either a TODO if it's for me, or if it's a task for somebody else, tagged with their name.

Then, when I have a one-on-one with a person in the future, I now have a one-on-one template that populates that file, and part of the template is under the agenda heading. It uses an a dynamic block that I've written: a new type of dynamic block that can pull from any agenda file. And what it does is it [takes] from all of those meetings, all of the action items that are still open that are tagged with their name.

This has been actually really, really effective. Now, I don't jump into a one-on-one being like, "Well, I didn't prepare so I don't know what to talk about." I've usually got like 10 to 30 items to go through with them to just see. Did you follow up? Did you complete this? Do we need to talk about this more?

I want to incorporate org-review. Scheduling is not sufficient for me to see my tasks. What I need is something that is like scheduling, but isn't scheduling. That's where org-review comes in. I have a report that says: show me everything that has never been reviewed or everything that is up for review.

Then I have a whole Org key space within agenda for pushing the next review date to a selected date or a fixed quantity of time. So if I hit r r, it'll prompt for the date that I want to see that again. But if I hit r w, it'll just push it out a week.

Every day I try to spend 15 minutes looking at the review list of all the tasks that are subject for review. I don't force myself to get through the whole list. I count it as success if I get through 20 of the tasks. Because earlier I had 730 of them, right? I was just chewing on them day by day.

But now I'm building this into the Org agenda population, because in the dynamic block match query, I can actually say: only populate this agenda with the tasks that are tagged for them that are up for review. That way, if we're in the one-on-one and they say, "Oh I'm working on that but I won't get to it for a month," I'll say, "Let's review that in a month." Then next week's one-on-one won't show that tasks. I don't have to do that mental filtering each time.

This is something I've been now using for a few weeks. I have to say I'm still streamlining, I'm still getting all the inertia out of the system by automation as much as possible, but it's helping me stay on top of a lot of tasks.

I'm surprised by how many action items every single meeting generates. It's like, it's like between 5 and 12 per meeting. And I have 3 to 7 meetings a day, so you can imagine that we're generating up to a hundred action items a week.

In the past, I think a lot of it was just subject to the whims of people's memory. They'll say, "I'm going to do that," and then… Did they remember to do that? Nobody's following up. Three months later, somewhere, they'll go like, "Oh yeah we talked about that, didn't we?"

So I'm trying to now stem the the tide of lost ideas. [My current approach] combines dynamic blocks with org-roam templates to make new files for every meeting and it combines org-review to narrow down the candidate agendas each time appropriately, and it combines a custom command to show me a list of all tasks that are currently needing review.

Reviewing isn't just about, "Is the thing done?" It's also, "Did I tag it with the right names? Did I delegate? Did I associate an effort quantity to it?" (I'm using efforts now as a way to quickly flag whether a day has become unrealistically over-full.)

I only started using column view very, very recently. I've never used it before. But now that I'm using effort strings, it does have some nice features to it: the ability to see your properties laid out in a table.

Back to table of contents

John on making meaningful distinctions (semantic or operational)

Today's agenda has 133 items on it. I need ways to narrow that agenda down.

I've used a lot of different tasks management philosophies. We're always looking for more efficiency, and we're looking for more personal adaptation to what works for us. I've gone from system to system. What I'm starting to realize is that the real value in all of these systems is that they're different enough from whatever you're using today, that they will force you to think about the system you're making for yourself, that is their value.

That's why I think there should always be a huge variety of such systems and people should always be exploring them. I don't believe any one one system can work for everybody, but we all need to be reflecting on the systems that we use. Somebody else showing you, "Hey, I do it this way" is a really nice way to juxtapose whatever system you're using.

I discovered through reading Karl Voit's articles that there are three principal information activities: searching, filtering, and browsing.

  • Hierarchies assist with browsing.
  • Tagging assist with filtering and keywords.
  • Metadata assist with searching.

Those are the three general ways that we approach our data.

We have to do work to draw distinctions between that data. The whole reason that we're drawing distinctions between that data is to narrow our focus to what is important.

I have over 30,000 tasks in my Org Mode overall. 23,000 of them are TODOs. Several thousand of them are still currently open. I'm never gonna see them all. Even if I wanted to, I'm never gonna see them all. I don't know what to search for. I don't know what the query should be. I have to use tagging and scheduling and categorization and everything. I believe that that is the work of a knowledge worker is to introduce these distinctions. That takes time and it takes effort.

What's really important is to draw meaningful distinctions. Make distinctions that matter.

I could tag things with like the next time I go to Walmart, so that I could do a filtered query to show me all things that I might want to do at Walmart, but is that worth the effort or is just tagging it as an errand enough? Because that list will get within the size range that I can now eyeball them all and mentally filter out the ones that I need for Walmart.

What makes a meaningful distinction? I believe there are two things that make a distinction meaningful. One is semantic, and one is operational.

A semantic distinction is a distinction that changes the meaning of the task. If I have a task that says "Set up Zoom account", if that's in my personal Org Mode, that has one level of priority and one level of focused demand. If it's in my work list, that has a totally different importance and a totally different focused demand. It changes the nature of the task from one that is low urgency (maybe a curiosity) to high urgency that might impact many people or affect how I can get my work done. That distinction is meaningful or semantic. It changes the meaning of the task.

An operational distinction changes how I interact with the task. [For example, if I tag a phone call, I can] group all of my phone calls during a certain time of the day. That changes my nature of interaction with the task. I'm doing it at a different time of day or doing it in conjunction with other tasks. That helps narrow my focus during that section of time that I have available for making calls. It's an operational distinction. if it's changing how you interact with the task.

You're succeeding at all of this if on any given day and any given time, what's in front of your eyes is what should be in front of your eyes. That's what all of this is about. If an operational distinction is not aiding you in that effort, it's not worth doing. It's not meaningful enough to go above the bar.

Back to table of contents

John on examples of distinctions that weren't personally worth it

I'm trying to narrow and optimize down to the minimum distinctions necessary to remain effective. If I can ever get rid of a distinction, I'm happy to do it.

I used to have projects and have categories, or what PARA method calls areas. Projects are different from areas and that they have a definition of completion and they have a deadline, but that's the only distinction. I realized that distinction doesn't do me any good because if it has a deadline, that's the distinction, right?

Calling it an area or calling it a project… I can just have projects without deadlines and then that's good enough. I have a query that shows me all projects whose deadlines are coming up within the next month, and then I'm aware of what I need to be aware of. I don't need to make the distinction between the ones that have and don't have deadlines. I just need to assign a deadline so the deadline was sufficient discrimination. I didn't need the classification difference between area and project.

And then [PARA's] distinction between projects, areas, and archives. I realize that there's only one operational benefit of an archive, and it's to speed things up by excluding archives from the Org ID database or from the org-roam-dbsync. That's it. That's the only reason I would ever exclude archives, because I want to search in archives. org-agenda-custom-commands is already only looking at open tasks. In a way, it's by implication archiving anything that's done in terms of its meaning.

This is all just an example of me looking at the para method and realizing that none of their distinctions really meant something for me.

What was meaningful was:

  • Does it have a deadline?
  • Is it bounded or not bounded?
  • Do I want to included in the processing of items?
  • [Is it a habit?]
Back to table of contents

John on habits

I did decide to draw the distinction of habits. I want them to look and feel different because I'm trying to become more habit-heavy.

I read this really brilliant book called Atomic Habits that I think has changed my life more than any other. I've read a lot of really good time management books but this book far and away has made the biggest impact on my life. One of its philosophical points that it makes that is so profound is that goal-oriented thinking is less successful in the long run than behavior-oriented thinking or habit- or system-oriented thinking. Instead of having a goal to clean your office, have a habit to remove some piece of clutter from your office like each time you stand up to go get a snack. You seek habits that in the aggregate will achieve the goals you seek to do.

I'm trying now to shift a lot of things in my to-do lists that were goals. I'm trying to identify the habits that will create systems of behavior that will naturally lead to those goals. I want habits to be first class citizens, and I want to be aware of the habits I'm creating.

I think the other thing that Atomic Habits did is it changed my conception of what a habit is. Before, I thought of a habit as "using the exercise bike" or something like that, which always made it a big enough task that I would keep pushing it off. Then I would realize I'd pushed it off for six months and then I would unschedule it and give up on it because it was just it would just be glaring at me with a look of doom from my agenda list.

What's important is the consistency, not the impact of any one particular accomplishing of that habit. It's a habit. If I do it daily, it's doesn't matter how much of it I do. So even if it just means I get on the bike and I spin the pedals for three minutes, literally, that's successful completion.

Any time you have a new habit, one of the activities in mastering that habit is to keep contracting the difficulty of the habit down, down. You've got to make it so stupidly small and simple to do, that you do it just for the fun of marking it done in the agenda, right?

I have a habit to review my vocabulary lists for languages that I'm learning. I'm okay with one word. As long as I ran the app and I studied one word, that's success.

What you find happening is that you'll do the one word, and now because you're there, because you're in the flow of it, you're like, "I'll do two. You know, I'm already here. What's the big difficulty in doing two?"

So you make the success bar super low. You're trying to almost trick yourself into getting into the flow of whatever that activity is.

[org-habit org-ql list] So I have all of these habits here, and every single habit on this list is super easy to do. Five minutes is all that it would take, or even one minute for most of them. I use different little icons to group them. It also keeps the title of the habit really small. I found that when the titles were really long. I didn't like reading it all the time. It just was a wall of text. When it's these one word plus an icon, it just kind of jumps out.

Back to table of contents

Adam on the Hammy timer and momentum

I took that to a bit of an extreme sort of with my my package remote called Hammy, for hamster. It's for timers and ideas, kind of like being a hamster on a hamster wheel.

Anyway, one of the timers is called flywheel mode. The idea is: just do a little bit. Like, if I'm just having a mental block, I can't stand working on that test today, I'm going to do five minutes. I can spend five minutes doing whatever. Next time, we do 10 minutes in 15. Pretty soon, I'm doing 45 minutes at a stretch. Maybe when I sit down to do 5, I'll actually do 15. I'm just slowly building up that mental momentum. I'll allow myself to quit after 5 minutes, but I end up doing 20.

Back to table of contents

John on momentum and consistency

Momentum is key. There's a flip side to this whole concept of the value of iterative improvement. The opposite remains also true.

Consistent good is your best ally, and inconsistent bad is also your ally. It's when the reverse is true that you have inconsistent good and consistent bad, that's what leads you into roads of doom.

That never occurred to me before. I would always be one of those people who would set myself up with a goal, like, I want to lose 20 pounds. I would struggle to achieve it. I would be dismayed because of how hard it was to get there, and then you'd have a day when you're like, you get off the wagon and you're like, The game is lost. And then and then you can't get back on again. Whereas now it's like that wagon, it's not so easy to get off of. I have to really make a concerted effort to be consistently bad in order to make things horrible again.

I almost want to change org-habit to have a different kind of visualization, because streaks are not motivators for me. Streaks punish you for losing one day out of 200, right? I don't want a graph that shows me streaks. I want a graph that shows me consistency. If I have 200 days and I've missed five of them, I'm super consistent. Maybe I could do this with colors. Just show a bar with that color, and don't show individual asterisks to show when I did it or when I didn't do it, because I find streaks anti-motivating.

[Discussion about other ways to display habits]

Back to table of contents

John on Life Balance by Llamagraphics

The whole principle around Life Balance [by Llamagraphics]​ was: you take all of your tasks, you categorize them, you associate difficulty to them and priority and everything else. Then it tries to use heuristics to determine if your life is being balanced, [and it percolates certain tasks to the top of your list].

If the system's doing a good job, then your agenda list should always be A-Z pretty much the best order in which you ought to do things. It didn't just do category-based balance, it also did difficulty-based balance. You should only be doing super hard stuff once in a while. You do a hard thing, then you do lots of easy things, then you do a hard thing.

Now, I'm wondering… This idea of momentum is very similar to the idea of balance. "Have established momentum with a system of behavior" is similar to "Have an established balance with all of the tasks that I do related to different activities." Is there a data architecture that would allow me to do both of these things.

The whole idea of making the habits be colors and then sorting them according to the spectrum is literally just to achieve balance among how much attention I'm paying to different habits.

[Discussion about dynamic prioritization]

Back to table of contents

Adam on the structure of his TODO view

My fundamental system right now is there's like two org-ql views. There's the view of tasks that are scheduled for today or have a deadline of today, and then there's a view of tasks that I've decided that they need to be done, but I haven't decided when to do them yet.

[Top list]: I just pick the next task off the list or reschedule if it's not important enough now. But then when that's empty, if it ever gets that way, it's the second view. I decide, okay, there's something I need to do. I can do that on Tuesday. Then it disappears until I need to think about it again.

This separates deciding what to do from when to do. Then I can just switch into my own manager mode for a moment, and then switch into "just put your head down and do the work mode."

[More details]

The top view is basically tasks that have a deadline, that are relevant to now (either deadline today or in the past), or it's an item that I've scheduled to work on today or in the past.

The view below, that is items that have no planning date. I need to give them one, or maybe they can just sit in that list of projects that have no next task. I use a project heading to [note] something that needs to be subdivided if I don't have a next task for it, then that'll show up there to remind me to give it one. Once it has a next task, [that] task would appear instead of the project heading until I schedule it. Anything I've forgotten to schedule yet will show up in that list.

Below that I just have a small window that shows me things. I've completed or clocked in the past week.

And then, another small window shows me anything that's a project status so I can get an overview.

In the work file itself, I have a number of links to org-ql views, like "Show me all my top level projects," "Show me tasks I need to talk to my boss about" or somebody else.

Back to table of contents

John on Org and data consistency

Org Mode is really a database, right? It's a database of of highly structured data that has a lot of associated metadata.

The value of that data requires a certain level of consistency which is work that we have to do. In the same way we do work drawing distinctions, we need to do work to keep that data consistent. Am I using this [property]? Am I using this tag to mean the right thing or whatever? Karl Voit says that one of the most valuable things if you're going to use tagging to organize your data is a constrained tag vocabulary. Make a fixed list. Then it's an error if you tag something and it's not in that list, because you either need to expand the list or you need to choose a better tag. That's really valuable.

Even though I use org-lint on all my org files, I found serious data errors. [The newline before an initial star had been lost], and then Org wouldn't see the entry. I never knew that it wasn't even being a participant in any of my queries. I just didn't know stuff like that.

I created a whole bunch of Haskell libraries that allow me to parse Org Mode data. It's a very opinionated parser. It's a very strict parser. It will not parse data files that do not have the exact shape and text and taxonomy that I want.

I wrote a linting module that basically encodes every single rule that I have ever wanted to apply to my data. Like, in the title of an Org Mode heading. I don't want two spaces. I don't want extra excess white space. That should be a rule right?

[Multiple examples, including when a file had TODO entries but didn't have a TODO filetag.]

My linter makes sure that this rule is consistently maintained. Being able to have an aggressive, thorough, universal consistency throughout all of my org data has really put my mind at ease. I can't break my data because I just won't be able to commit the broken data into git. I find myself adding new linting rules on a weekly basis. The more that I add, the more value my data has, because the more regular it is, the more normal, the more searchable.

Back to table of contents

My takeaways

People:

Comments

TIL about column view in #orgmode thanks to this great post from @sacha

@donaldh@hachyderm.io

Qu’est-ce que ça fait plaisir de lire un article de @sacha (en l’occurrence link) et de découvrir que John Wiegley utilise org-review (https://github.com/brabalan/org-review), un petit truc que j’ai écrit il y a 10 ans…

@brab@framapiaf.org

Very interesting to see Adam and John's workflows. Org is so flexible and powerful. I always learn something new watching other people do org stuff.

Nice article, Sacha!

mickeyp on Reddit

View org source for this post

Embracing the shallows

| parenting, productivity

[2024-10-30 Wed]: Added more notes from my experiment with semi-retirement.

I'm sitting in the same room as A+ as she attends virtual grade 3. She uses the computer speakers instead of her headphones. I feel there's a part of my mind that I can't access with stuff going on in the background, but I don't mind so much. Listening in is a good way for me to keep up with what she's learning in class. (Sometimes there are moments of unexpected hilarity.) I used to go off to a different room, but A+ likes to have me around. Might be like the body doubling that many people find helpful. In a little less than an hour, we'll have recess, so that's another constraint on how deeply I can get into a task or an idea.

Right now I feel like writing about a thought that I've been picking up and putting down over the past few days/years: embracing the shallowness of my attention at the moment.

The shallows aren't bad; they're just part of life

Most of the books I've read about productivity or writing treat distraction as a bad thing. Juxtaposing The Shallows: What the Internet Is Doing to Our Brains (Nicholas Carr), Deep Work: Rules for Focused Success in a Distracted World (Cal Newport), and Four Thousand Weeks: Time Management for Mortals (Oliver Burkeman), I find myself leaning more towards Burkeman's acceptance of limits and lack of control. I'd rather figure out how to embrace these shallows than to write off large portions of my life: parenting a young child with all the attendant interruptions (which I am learning to welcome) and preparing for eventual old age. I'd rather be here so that the kiddo can send me notes by post owl (paper airplane) than go behind a door that I can shut. I love that she wants to show me book passages that she found funny and that she wants to ask me what-if questions about Harry Potter and that she wants to snuggle.

The people I hear from reassure me that this splitting my attention because of parenting is okay; it's because I'm choosing something that's higher priority for me at the moment; it's temporary; it's worthwhile. As the kiddo often reminds me (because I often say it out loud to her, with love and affirmation): I signed up for this, I only get so many years of this.

If we're lucky, we get old. Some don't. Some people stay sharp, like the way Leslie Lamport's still writing in his 80s. (Writings) My mom struggles with energy and forgetfulness and physical decline, so that might be closer to my experience; I can be pleasantly surprised otherwise.

Things I've been learning about the shallows over time

Things I can do in the shallows

So, accepting that this is what I've got, what do I want to do with it?

I can take it all in. It's okay to just be.

When I want to do things, there are plenty of things I can do from here.

One of the things I've learned while doing Emacs News is that even things I can do in the shallows can be useful. Organizing information and passing it along does not require deep reflection or a quiet mind.

I can read in short bursts here and there, take notes, and share them. How to Take Smart Notes (Sönke Ahrens; my notes) reassures me that I can take short notes as I read, and those notes can build up into something useful.

Most of my Emacs tweaks are short. They also accumulate. More things become easier and easier.

I've been tweaking my drawing workflow to be comfortable with parts of pages instead of feeling like I need to fill in the whole thing. I used to draw on a Nintendo DS, index cards, and a Samsung Note 8. A small canvas makes it easier to feel like a thought is complete, but I can do the same even with the A5 size of my Supernote. I just have to give myself permission to stop.

Now I am learning to write small thoughts. They aren't amazing insights, but they're enough for me, and sometimes they resonate with other people.

Tweaking my idea flow

I wonder about the different kinds of shallows I find myself in:

  • I can be on my computer; there's stuff going on in the background; I might be interrupted, and I'll need to wind up soon anyway
    • Writing: could get better at:
      • Collecting links and resources
      • Listing thoughts for further development, collecting snippets
    • Coding: could get better at:
      • Keeping it small
      • Adding tests
      • Sharing notes
      • Checking for previous implementations or related stuff
    • Correspondence: could get better at:
      • Keeping track of things
  • I can draw.
    • Untangle my thoughts: pretty easy to think of a question to ask myself; try using my tosketch tag
    • Read a book and take a few more notes
      • Maybe share more granular notes?
  • I can read or write on my phone while I'm waiting for someone.
    • Tends to be dominated by current questions; could get better at reviewing things that I've added to my to-read list.
  • I can talk out loud because I'm doing a chore or errand by myself and no one else is around. Audio braindump workflow - could get better at:
    • Quickly reviewing a list of questions (:todump: tag)
    • Getting ideas of out of the transcripts
  • I can listen to something while I do chores or errands. Could get better at:
    • Skipping podcast episodes I'm not that interested in
    • Finding podcasts I like
    • Making and storing notes
  • I can't be on my phone, but I can think about things.
    • Nice to have a background question I can return to in those moments, and then I can capture a note or post a toot that I can flesh out eventually.

Related: My toot on 2024-10-30T00:24:48.668Z about the shallows

View org source for this post

How to Take Smart Notes - Sonke Ahrens (2017)

| visual-book-notes, writing, pkm, productivity, learning

I want to get better at making sense of things and sharing what I'm learning. Nudged by Chris Maiorana's post on Second Brain, Second Nature, I borrowed How to Take Smart Notes by Sönke Ahrens (2017). Here are my notes.

Text from sketch

How to Take Smart Notes - Sönke Ahrens. 2017 - sketched by Sacha Chua 2024-10-26-01

  • Niklas Luhmann: everything - writing; slipbox, Zettelkasten
  • Instead of: brainstorm (blank paper), then research (wrong topic? wrong understanding?), then write
  • Try a loop of:
    • Read with a pen in hand: short notes, your own understanding
    • Refine and connect your notes: elaborate.
    • Notice clusters
    • Develop into topics, write about them
    • reading ⇒ thinking ⇒writing
  • Types of notes
    • Fleeting: try to review within a day
    • Permanent: complete sentences, makes sense at a glance
    • Literature: short; use own words
    • Project: can be archived after
  • Work on multiple projects so you can switch between them and they can feed each other.
  • Things to think about.
    • Why is this interesting?
    • Why is this relevant?
    • How does this relate to other things?
    • What's not mentioned?
  • Numbering, physical references: let ideas mingle
    • 22, 22a, 22a1, 22b, 23, …
  • Retrieval cues
  • Saving cut pieces = easier editing
  • Verbund: by-products = resources
  • Writing → break it up!
    • reading, understanding, reflecting, getting ideas, connecting, distinguishing, rewording, structuring, organizing, editing, rewriting
  • Positive feedback loop: reading with pen, writing permanent notes, writing arguments…

The book goes into detail about Niklas Luhmann's Zettelkasten or slipbox system. Lots of people have written about Zettelkasten and various implementations. There's even a whole micro-industry around Notion templates. So I won't spend a lot of time right now describing what it is or what the key aspects are. I can focus instead on what that means to me and what I want to do with it.

Writing

By doing everything with the clear purpose of writing about it, you will do what you do deliberately.

I like chapter 5's focus on keeping writing in mind. I want to push most things towards writing and drawing (posts, code, whatever; public as much as possible) because it's a good way for me to remember and to learn from others. It's a reminder to not try speeding through my to-do list; it's good to slow down and write about stuff.

Following the work

I only do what is easy. I only write when I immediately know how to do it. If I falter for a moment, I put the matter aside and do something else.

I always work on different manuscripts at the same time. With this method, to work on different things simultaneously, I never encounter any mental blockages.

During my discretionary time, I usually follow the butterflies of my interest: working on what I feel like working on, moving on to something else when I get stuck. Sometimes I will work on something I have to do because it's got to be done, but those moments are rarer. Amidst all those productivity books that exhort you to focus on a limited number of things, it was nice to know that Luhmann also jumped from interest to interest, that the process of accumulating these notes builds things up into clusters with critical mass, and that these good habits build themselves up through positive feedback loops.

Different types of notes

I do all right capturing fleeting notes on my phone, but I want to get better at turning my fleeting notes into literature notes and permanent notes. I'd like to review them more frequently and spend some more time fleshing them out, with the goal of eventually turning more of those things into blog posts and code that I can share as I learn out loud.

I also don't really have a good way of putting topics "near" other topics yet. Categories are a little coarse, but maybe topic maps are a good starting point. It would be nice to have a quick way to put something before/after something else, though.

Different types of tasks

Writing a paper involves much more than just typing on the keyboard. It also means reading, understanding, reflecting, getting ideas, making connections, distinguishing terms, finding the right words, structuring, organizing, editing, correcting and rewriting.

I wonder if making these distinctions between the subtasks of writing will make it easier for me to break writing down into tiny tasks that can be completed and gotten out of my brain.

Thinking about connections, thinking about what's missing

I want to get better at connecting ideas to other things I've thought about by linking to blog posts or notes. That might also help me build up thoughts out of smaller chunks, which would be helpful when it comes to working with fragmented thoughts.

Thinking about what's not in the picture is hard, and that kind of critical thinking is something I want to practise more. I can pay attention to the follow-up questions I have so that I can get a sense of where to look for more insights or what to experiment with. Questioning the way something is framed is also good and something I don't do often enough.

For example, I wanted to dig into this quote:

Luhmann’s only real help was a housekeeper who cooked for him and his children during the week, not that extraordinary considering he had to raise three children on his own after his wife died early.

I ended up doing a tiny bit of research on my phone and putting it into Niklas Luhmann's Zettelkasten and life with kids (the kids were in their teens at the time, so they were probably a lot more independent than A+ is at the moment).

Related

View org source for this post

Visual book notes: Atomic Habits

| visual-book-notes, productivity

Text from sketch

Atomic Habits - James Clear (2022) - Notes by Sacha Chua 2024-10-21-05

  • time vs results: valley of disappointment: (we expect linear progress)
  • Achieving a Goal only changes your life for the moment.
  • In order to improve for good, solve problems at the system level.
  • Fall in love with process rather than product.
  • Not "what do you want to achieve?", who do you want to become?
    • prove it with small wins
      • habits
  • Problem phase
    • Cue: Make it obvious.
      • point & call: raise level of awareness
      • common cues: time, location, other habits
      • Manage your environment
    • Craving: Make it attractive.
      • Temptation bundling
        • anticipation, dopamine, action
      • Social groups
      • Reframe
  • Solution phase
    • Response: Make it easy.
      • Make it easier to do the right things
      • Motion != action
      • Repetitions, automaticity: habit line
      • Make your habits so easy that you'll do them even when you don't feel like it
      • 2 minutes
    • Reward: Make it satisfying.
      • Immediate
      • Visuals: paper clip strategy, tracker
  • Habits can be easier to change in a new environment. (old cues gone)
  • You have to fall in love with boredom
  • Habit stacking
  • My take aways:
    • Processes, not products
    • Analyze & redesign:
      • habits I have
      • habits I want
    • be thoughtful about helping the kiddo learn

In my life

Habits I'm tinkering with:

  • Tidying and listening: When the kiddo watches videos in the afternoon, I'll get dinner started (unless W- has taken care of it already), and then I'll listen to a podcast while tidying.
  • Reading: It turns out I can export my highlights from Libby, even from a returned book. That means I can do a little reading at night or when I have a spare moment on my phone, then look at the highlights when doing a sketchnote. This makes it easier and allows me to feel like I can squeeze it in whenever..
  • Shuffling my to-do list: I'm experimenting with shuffling my unscheduled tasks to add some variable rewards to my someday/maybe list, increasing its attractiveness.

I like the focus on process rather than product. I was briefly enamoured with Big Hairy Audacious Goals but it turned out that wasn't really that motivating for me. These days, I'm more curious about enjoying life, making sense of things, and making incremental improvements to my processes.

I don't quite agree with the thought that you have to fall in love with boredom. I think part of continuous improvement is being able to find more things to be curious about, even with the basics, and to enjoy your progress and consistency. Maybe "fall in love with boredom" isn't quite the right wording for me. I think the author meant that you've got to be able to keep doing the routine stuff, which makes sense, but I hope I can still occasionally find interesting things in it. My brain probably just doesn't like the idea of boredom very much and has a bit of a visceral reaction to the word.

I am also iffy about streaks (they're not that motivating for me), commitment contracts and punishment (definitely not the way my brain likes to work), and never missing twice. My approach of being curious and gentle with myself might be suboptimal, but that's okay with me.

Parenting

When it comes to parenting and helping the kiddo learn habits, the approach I'm gradually coming to feels a little different from the bonus chapter he posted on his website.

I like explicitly talking about figuring out how to work with our particular brains and bodies, including habit mechanisms and dopamine. The kiddo is eight and quite capable of co-experimenting. She likes to alternate homework with snuggles, Minecraft, or Youtube videos. Sometimes I feel a little twitchy about alternating, like, two minutes of homework with twenty minutes of videos, but she's managed to get all her work done so far.

That also means I talk about how I'm figuring out my brain. When I forget something, I talk about how I'm going to change the cues for it so that I remember.

I want to develop intrinsic motivation and pride more than using praise, since I don't want her to rely too much on other people's evaluation of her. I try to focus my verbal feedback on enthusiastically observing what she's doing and how she's feeling. ("You worked on your homework and got that part done, and it's not even 9 AM! Does that feel so satisfying?") Now she occasionally talks about wanting to do certain things (ex: walk home instead of riding in my cargo bike) because of the satisfaction she'll feel, so I think it's working.

Identity and pride are helpful for habit formation, but it can be easy to develop a fixed mindset ("I'm smart") instead of a growth mindset. It's also easy to focus on results that might not always be within her control. I want to focus her attention more on what she does and how she does it. It's like not focusing on "being a good student" or "getting good grades", but on figuring out how to work with her brain. Assigments and grades are part of the feedback mechanism, but they're not the most important thing.

Links:

View org source for this post

Tiny chunks

| productivity, life

I want to get better at working in tiny chunks. Some of the things I find hard are:

  • getting incomplete thoughts out of my head when the kiddo interrupts so that I don't get grumpy (because of the Ovsiankina effect)
  • managing the stack of interrupting tasks and yak-shaving temptations
  • still making time for larger projects or things with less-immediate or more uncertain payoffs

Some general ways to improve:

  • Reduce friction so that more things can fit in less time.
    • Take notes
    • Improve workflows and tools
    • Create templates
  • Build momentum: focusing several chunks on one project to minimize context switches and make more progress
  • Lower expectations and split things up.
  • Start with a rough cut and then refine.
  • Use different types of work:
    • Organizing information can be easier than thinking up something new
    • Recognizing things from a list can be easier than recalling them from scratch

How can I get better at using tiny chunks in different aspects of my life?

  • Code:
    • Now that I'm on a more powerful computer, I'm looking forward to learning how to take advantage of LSP, completion, and other modern conveniences.
    • I can replace social media doomscrolling with reading APIs, guides, and code samples.
    • I can take more notes and review them.
  • Writing:
    • If I sketch my thoughts, that can help me think through things in a more nonlinear way at the beginning. Mindmaps and sketchnotes might actually be easier than using text outlines, since I can do them off my computer.
    • Dictation might help me turn other pockets of time into writing time, and then turn computer time into editing time.
    • Improving my workflows makes it easier for me to get the text out into a blog post that has a sketch or a video or a screenshot.
  • Drawing:
    • I can ask smaller questions so that I can get to an answer faster. I also don't have to flesh out the full thought in the drawing - I can use dictation or writing to add more details.
    • I can crop the image to remove the pressure to use the full page. I used to draw my thoughts on index cards. That was a good size for a small thought, and they were easier to build up into larger chunks.
    • I can use visual organizers, metaphors, and other structures to help me think through things. That might also give me additional insights.
  • Bigger projects: One of the things that sometimes frustrates me is having bigger projects that I can't figure out how to fit into smaller segments, or that take a lot of setup time and therefore tend to get deprioritized in favor of things with more immediate payoffs.
    • I have a few 1.5-hour chunks of focused time because of A+'s virtual school, and I might be able to reserve more time eventually. It might be good to have that time when I'm not prioritizing short tasks and quick wins. Aside from that, if I get focused time in the evening, the trade-off is usually that A+ binge-watches YouTube videos when I'm not focusing on her. Sometimes I'm okay with this because I really want some thinking time. It's better when I'm getting that focused time because she's off doing something with W-, though.
    • I tend to work on whatever I've been thinking about lately (availability bias), but it might be good to review longer-term projects/interests to keep them on my radar or make peace with archiving them.
    • Even the stuff that feels like very slow progress can be worthwhile.
  • Life:
    • Sometimes I feel a little distracted by things I want to do, but it's worth figuring out how to put stuff aside so that I can play. Bluey has plenty of examples of short games that could be fun to play with A+.
    • There's always time to work on health. Sometimes doing a single pushup makes it easier to do another, especially when the kiddo jumps in and starts exercising too.
    • Similarly, a small chunk of time is great for tidying.
View org source for this post

Emacs tweaks: Choosing what to hack on

Posted: - Modified: | emacs, life, productivity

[2024-01-22 Mon]: How do you combat being overwhelmed by choice? is somewhat relevant. I particularly like this comment which talks about delaying the decision to see if it still makes sense.

Is it the Emacs lifecycle that you tweak your config for few months and then you live off of fat of the land for >4 years? My Emacs config is a Org-tangle spaghetti that I touch only if I want to set some more sane config variable.

@xgqt@emacs.ch

This got me thinking about how tweaking my config fits in with other things I want to do–how I choose what to hack on and for how long.

Text from sketch

Choosing what to hack on - 2024-01-16-01

When it comes to computer work, I can usually choose what to do.

Idea -> Test

XKCD on automation: time to automate vs frequency x time saved

I focus more on what I'll enjoy (both the destination and the journey)

  1. How can I make this better?
  2. What's the smallest step I can take? What can I fit in 15-30 minutes?
  3. What's nearby?
    • Relevant functions or packages
    • Next steps, possibilities
  4. What kinds of notes can I leave for myself or others?
  5. like desire paths: where, what size
  6. or like a river wearing down rocks

Sometimes when I chat with other people about automation, this XKCD chart about Is It Worth the Time? comes up.

I realized that this isn't quite how I consider things. I'm lucky in that when it comes to computer things, I get to choose most of the things I spend my time on. My consulting clients have very long wishlists that I pick from based on interests and priority, and I play with Emacs for fun.

Drawing of a task sandwich with Emacs tweaking, the actual task, and blog posts and comments

Because I enjoy tinkering around with Emacs, I often build a little Emacs hacking into my tasks. 15 or 20 minutes of exploring an idea can make it even more fun to do the actual task it's supposed to help with because then I want to test it out. Then after the task is done, I get to write about it. It's like making a little task sandwich with really nice bread. This is also a little related to sharpening the saw, which is pretty fun in Emacs. (Vim people do it too!)

These little changes add up over time, making things even more enjoyable. It's a little like the way desire paths show where people actually walk between buildings and give a sense of how much they are used, or how rivers smooth down the edges of stones. The easier I make something, the more likely I am to do it, and the more I'll get to enjoy the results of my code. It's a little like the Igors described in this essay.

When I think about something I might tweak about my Emacs configuration, I usually consider the following:

1. How can I make this better?

I like looking for ways to reduce manual work or looking-up. I tend to have a hard time with tedious, repetitive tasks. I also keep an eye out for things I've been meaning to learn.

2. What's the smallest step I can take? What can I fit in 15-30 minutes?

Small steps make it easy to squeeze in things here and there. I know my brain's going to suggest half a dozen things along the way, so it helps to start as small as possible and capture most of the other things in my inbox for later. That way, I can get to experience the benefits right away without feeling lost.

Another advantage of picking really small tasks and using Org Mode to capture the rest of the ideas is that I can try to avoid the Ovsiankina effect.1 I spend most of my day taking care of our 7-year-old, so I squeeze in my focused-time tasks early in the morning before she wakes up. Sometimes I have little opportunities to work on things throughout the day, like when she wants to read a book or watch a video. She might do that for 15-30 minutes before wanting to connect again. If I pick the wrong-sized task or I don't dump enough rough notes into my inbox so that I can get the open loops out of my head and trust that I can pick things up again, the unfinished part pulls on my brain and makes it harder to enjoy time with her. Then I get tempted to let her binge-watch Minecraft or Rubik's cube videos2 so that I can finish a thought, which doesn't quite feel like good parenting.

Lastly, I don't usually understand enough about my needs to build something complex from the start. Trying things out helps me discover more about what's possible and what I want.

3. What's nearby?

Thanks to Emacs's amazing community, there are usually relevant functions or packages that I can borrow code from. I mostly have a sense of things from the blog posts and forum threads that cross my radar because of Emacs News, and I should probably get used to skimming the descriptions in the "New packages" list because that can help me find even more things.

When coming up with possible approaches, I also sometimes think about other related ideas I've had before. Filing those ideas into the appropriate subtrees in my Org files sometimes helps me come across them again. If I can take a small step that also gets me closer to one of those ideas, that's handy.

I also like to think about next steps and possibilities. For example, even if I spend an hour or two learning more about data visualization with Org Mode and plotting, that's something I can use for other things someday. This works pretty well with keeping things small, too, since small parts can be combined in surprisingly interesting ways.

Let me try to trace through a web of related features so I can give you a sense of how this all works in teeny tiny steps.

G defun defun my-include:...?from-regexp=...&to-regexp... my-include:...?from-regexp=...&to-regexp... defun->my-include:...?from-regexp=...&to-regexp... my details my details defun->my details defvar defvar defun->defvar emacsconf-el emacsconf-el defun->emacsconf-el context context defun->context my-include:...?name= my-include:...?name= my-include:...?from-regexp=...&to-regexp...->my-include:...?name= :summary :summary my details->:summary defun-open defun-open :summary->defun-open web links web links emacsconf-el->web links Embark Embark :comments both :comments both Embark->:comments both QR code QR code Embark->QR code :comments both->context web links->Embark

  • defun: I often wanted to write about a specific function, so I wrote some code to find the function definition and copy it into my export post hidden inside a details tag with the first line of the docstring as the summary. 2023-01-02
  • my-include:...?from-regexp=...&to-regexp...: Sometimes I wanted to write about longer pieces of code. I wanted to include code without repeating myself. The regular #+INCLUDE can handle line numbers or headings, but neither of them worked for the Elisp files I referred to since the line numbers kept changing as I edited the code above it and it wasn't an Org Mode file. I made my own custom link so I could specify a start and end regexp. 2023-01-08
  • my_details: I wanted to put the code in a details element so that it could be collapsible. I made an org-special-blocks template for it. special-blocks
  • :summary: For Org source blocks, I wanted to be able to do that kind of collapsible block by just adding a :summary attribute. 2023-01-27
  • defun-open: I wanted to sometimes be able to keep the function definition expanded. 2023-09-12
  • emacsconf-el: Since I was writing about a lot of EmacsConf functions in preparation for my presentation, I wanted a quick way to link to the files in the web-based repository. 2023-09-12
  • defvar: Made sense to include variable definitions too.
  • web links: The emacsconf-el links were so useful, I wanted to be able to use that type of link for other projects as well. 2024-01-07
  • Embark: I wanted to be able to copy the final URL from a custom link at point, so I used Embark. 2024-01
  • QR code: I started livestreaming again, so I wanted a quick way for viewers to get the URL of something without waiting for stream notes. 2024-01-10
  • :comments both: While scanning Reddit to find links for Emacs News, I learned about :comments both and how that includes references to the Babel file that tangled the code. 2024-01-07
  • context: Now that it was easy to link to the web version of an Emacs Lisp file, I thought it might be fun to be able to automatically include a context link by passing link=1. I also wanted to be able to navigate to the Org source code for a tangled function. 2024-01-11
  • my-include:...?name=...: I wanted to be able to refer to Org Babel source blocks by name.
I promise it's all connected. (Pepe Silva meme)

In the course of writing this blog post, I learned how to use URLs in Graphviz, learned how to include inline HTML for export with @@html:...@@, used position: sticky, figured out how to highlight the SVG using JS, used CSS to make a note that should only show up in RSS feeds, and submitted a pull request for meme.el that was merged. And now I want to figure out sidenotes or at least footnotes that don't assume they're the only footnotes on the page… This is just how my brain likes to do things. (Oooh, shiny!)

4. What kinds of notes can I leave for myself or others?

I might take years before revisiting the same topic, so good notes can pay off a lot. Also, when I share what I've been working on, sometimes people e-mail me or comment suggesting other things that are nearby, which is a lot of fun. The ideas I come up with are probably too weird to exactly line up with other people's interests, but who knows, maybe they're close enough to what other people work on that they can save people time or spark more ideas.

Inspired by Mats Lidell's EmacsConf 2023 talk on writing test cases, I've been working on writing occasional tests, too, especially when I'm writing a small, function to calculate or format something. That's a good way of sketching out how I want a function to behave so that I can see examples of it when I revisit the code. Tests also mean that if I change things, I don't have to worry too much about breaking important behaviours.

Ideas for next steps

How can I get even better at this?

  • Popping the stack (untangling interruptions and ideas): When I let myself get distracted by a cool sub-idea, I sometimes have a hard time backing up. I can get back into the habit of clocking time and practise using my org-capture template for interrupting task so that I can use C-u with C-c j (my binding for org-clock-goto) to jump to a recently-clocked task.
  • Braindumps can help me use non-computer time to flesh out notes for things I'm working on or ideas for next steps.
  • If I skim the descriptions of new packages in Emacs News (maybe even the READMEs instead of just the one-liners), I'll probably retain a brief sense of what's out there and what things are called.
  • Vector search across package descriptions and function docstrings could be an even more powerful way to discover things that are close to something I want to do.
  • Using elisp-demos to add more examples to functions can help me look up things I frequently use but don't remember.
  • Figuring out more modern IDE features like refactoring support, on-the-fly error checking, and code navigation could help me code faster.

So that's how I tinker with Emacs for fun: start with something that mostly works, keep an eye out for opportunities to make things better, use tinkering as a way to make doing things more fun, look for things that are nearby, and

Footnotes:

1

I used to think this was the Zeigarnik effect, but it turns out the Zeigarnik effect is about remembering incomplete tasks versus completed tasks, while the Ovsiankina effect is more about intrusive thoughts and wanting to get back to that incomplete task.

2

At the moment, she likes Eyecraftmc and J Perm.

View org source for this post