July 22, 2016

How easy is it to just get outside of the house? An experiment.

Exercise is probably one of the highest value wellbeing interventions one can apply ot their life[citations needed]. It's sure a lot easier to get errands done when I'm already planning to be out and about. Not to mention, I live in a temperate coastal city with pleasant weather and scenery that merits enjoying.

How easy is it to just get outside of the house? An experiment.

I noticed I resisted decision/preparation timeouts in leaving the house. I thought I could train a discrete progression of actions (remember, decide, get ready, GO!) and turn it into a keystone daily habit that I can make other plans around.

Starting March 22, I decided that if I noticed I had no plans to leave the house, I would use the next break to step outside and wander a bit.

Data

Review Apr 8 - The "breaks" I take are not discrete, actually. I'd forgotten about this. I made a ritual habit to venture outside at noon every day instead.

Todo Notes Apr 11 - I haven't used my scooter in a while. Instead, I got rides with my romantic partner. The sky got cloudy and rained over the weekend. Fat chance I was going outside in that.

Review Apr 29 - Over the past week I have gone on multiple walks, 2 drives, and to lunch with a friend. I'm not really paying attention to this anymore; whether I do anything about it is highly dependent on my mental state.

Conclusions

This provided some useful information. When I am in a good mental state, I'm willing and ready to try to solve problems. Readiness to leave the house comes as a natural extension of this. With this in mind, I conclude that I need to improve my mental state in general.

Followup

I threw some trigger-action habit flashcards in my anki deck to cover some 80% of situations that tank my mental state, and these have been in action to varying success since April.

---
Was this a nice read? Does this seem like something worth performing for yourself? I would greatly appreciate it if you took a couple seconds to comment yes or no.

July 16, 2016

What python topics do I most consistently need to look up? An experiment.

A programmer's lament: Looking stuff up sucks.

I want better indexed docs. In the interest of this, I decided to do a little experiment. I wanted to figure out what, exactly, out of all the docs I looked up are important to have within reach.

What python topics do I most consistently need to look up?

I decided I would trawl my chrome history for programming-related pages.

Data

I noted in my strategic review* that I'm confused about which functions are built into python and which are class/library functions.
*(strategic reviews are when I periodically overhaul my to-do list, making a record of my successes and failures and checking in with my longer-term goals.)

Conclusions

The areas I want to focus on are:
  • string methods, formatting
  • file input/output, incl. json
  • git manipulation
  • exception handling
  • regex syntax
  • javascript syntax
  • postgres setup, syntax

Followup

Sanity Check
- Examples dominated by what I've spent time on. What have I *skipped* doing because I didn't even know where to start? noted in strategic review that I'm confused about what fns are built into python


Things I could do next:
  • Create Incremental Reading cards for docs/101 tutorials on
    • string methods, formatting
    • file input/output, incl. json
    • git manipulation
    • exception handling
    • regex syntax
    • javascript syntax
    • postgres setup, syntax
--

Was this a nice read? Does this seem like something worth performing for yourself? Take a couple seconds to comment yes or no!

July 15, 2016

Do I make progress on projects if I stick to 5 minute stubbable code functions? An experiment.

"ADHD is really executive function disorder" - Russell Barkely

The quote in the best talk ever made about ADHD goes something like that. In my quest to overcome this and learn how to actually get things done, I've tried many things. This is one of those tries, and I welcome you to read along with my adventure:

Do I make progress on projects if I stick to 5 minute stubbable code functions? An experiment.

I want to actually finish a programming project. But how? I took to the internet to find some inspiration, and found a Systematic Program Design Course with what seemed like a good system.

I gathered up the materials and set myself an experiment. I would try 5 to 10 rounds of attempting stupid tiniest chunks of email automation or website code (those being the projects I felt invested in at the time) in only 5 minutes. A significant part of my aim will be to make each function "stubbable"—that is, it returns a value such that the code is executable even if not correct.

If this is a good method of making progress on my projects, I expect my code to go off on an occasional tangent but for the functions to retain enough isolation to be fixable.

Below, I summarize the specific issues rather than include embarassing detail.

Data

Mar. 21 - None of the parts I created actually do what I need yet.
  • 5 tries so far on email automater.  
  • 2 functions stubbed,  
  • 1 function deleted.  
  • 4 function tests.
  • Issues
    • 13 complications
    • 9 information errors
    • 9 objectives failed
    • 3 uncategorized errors


Mar 22 - tried to make an website code stub, the result was invalid.
  • Issues
    • 1 complication
    • 2 information errors
    • 2 objectives failed

Mar 25 - copied a function from website, made an instance function, made a new class. Spent a while on planning which components I'd need, then made a new class. Got sucked into looong work instead of stubbing, bad idea.
  • Issues
    • 3 complications
    • 3 information errors
    • 4 objectives failed
    • 2 meta-issues

Mar 26 - starting over with wishlist of components for a log parsing utility.
  • 3 functions,
  • 5 stubs,
  • 5 tests.
  • Issues
    • 2 complications
    • 4 information errors
    • 6 objectives failed

Mar 27, 28. worked on programming, mostly doing big pieces trying to force sequential progress. I think I really benefitted from the pieces already built, and that I made faster progress when I kept to the spirit of the chunking strategy. Not bothering trying to record issues on this, too scattered.

Review Apr. 8 - I quit sticking to the 5min thing, but spent a bit of time working out chunks to work on. I'm going over the timers I set even then, esp. with issue hunts.

Conclusion

Yes this helps, but with caveats. Stuff gets done if I time-constrain myself on making stubbable functions, *including* separate time-constraints on the functions to test other functions.
Followup
I continued to use this method to break down my work in projects, and am just now sharing this experiment on my blog.

After an experiment I always take a few minutes to think of Sanity Checks: These are other quick experiment ideas (ideally taking less than five minutes)
  • How much can I actually type at mozy speed in 5min?
  • Estimate how long it'd take me to refactor a data type throughout a medium-sized project.
  • Time myself on refactoring the log parser to look nice
  • Fermi estimate time wasted on a project because of having to look stuff up and verify syntax. 
Compare to time wasted hunting down accumulated errors for lack of a good feedback loop. Which is actually likely to be the bottleneck?

I rarely the time to do the followup tests I dream up, but I consider it good practice to habitually consider what being plausibly, identifiably wrong looks like.

----

Was this a nice read? Does something like this experiment seem worth performing for yourself? Take a couple seconds to comment yes or no!

July 10, 2016

Rationality-Habits Anki deck

It occurred to me, as I was discussing my use of Anki for habit-building with a good friend, that a decent portion of my personal growth is getting dutifully recorded as flash cards. "Why not share the decks?," I thought. "A random soul might find my notes useful, or my friends at least might consider it informative of my strange thought process." Here is a deck of rationality habits, filtered a bit for anything excessively tentative or personal.

Faithful readers, you would do me a great honor if you looked over some part of it and shared with me where you find pleasure, fault, or confusion.