At one point around 20 or 30 minutes in, he says something like, “We’re going to start easy and slow and then work harder later on.” He exhaustively writes out a large number of different combinations of possible runtimes of an algorithm. It seems quite tedious, but eventually some cool results emerge related to Sterling Numbers :)
At first, I thought it was somewhat annoying that the lecture was methodically going through so many examples. Since then, I’ve realized that methodically going through small sub-problems patiently is often the way you eventually get to a giant leap.
> Slicing. Take a big project, cut it into thin slices, and rearrange the slices to suit your context. I can always slice projects finer and I can always find new permutations of the slices that meet different needs.
[1] — https://www.goodreads.com/book/show/387190.Test_Driven_Devel...
You can't start the task "start a business", but you can start the task "determine the market size for x".
Another aspect that is also useful has been my experience of Pomodoro technique. At a job where we were practicing Pomodoro technique, I realized I don’t struggle with concentration anymore. The minimalistic explanation of the technique is to work on a task inside 45 minute intervals; then walk away from the computer for several minutes.
I find one of the additional benefits it has is that it gives you a means of quantifying your day. Often I can't remember exactly what I've been working on but knowing that I've completed x amounts of intervals leaves me way more satisfied at the end of the day and makes me feel much more confident that I've been productive.
I find it can also reveal how long some things take to complete. Rather than thinking 'uhh I couldn't even complete that task today' it can often lead to 'wow, I worked on that task for x intervals and it still wasn't complete - I definitely underestimated that one!'
Currently my tasks are spread across emails and email drafts, Github issues, iOS reminders, Slack, my head, etc. It's a lot of work to keep track of them all.
Maybe I should just carry around a paper notebook and make that the authoritative source of tasks.
I read about Getting Things Done, and I worked to track everything in one place, but I find that task tracking in two places work best for me:
1. Something like Evernote or Simplenote, for capturing notes on any device that's handy: phone, tablet, computer, etc. Being able to search really easily is crucial, to avoid duplicate topics.
2. Something like Trello for easier prioritizing and categorization. Moving around the index card analogies is much easier than moving text.
Using email as an issue tracker is an anti-pattern. It means your work to prioritize can get casually jumbled, and for me, that flow can get interrupted more easily. Ditto for Slack.
I like paper notebooks - I used one at work so I wouldn't drop any of the tasks I was juggling - but they're less portable than my phone. Before that, I had a Hipster PDA (index cards and a paper clip - http://www.43folders.com/2004/09/03/introducing-the-hipster-... ) but I had lots of notes, and searching was awkward, meaning "just write it (again) before I forget it, sort it out later," meant there was curation involved, and that using 1. above was lower-friction and just overall better.
Note apps, task apps, etc. all can not handle to that considering the brain simply considers things with haptic feedback more memorable and actionable.
Use it well and it'll serve as both a todo list and your own personal instantly searchable, super fast knowledge base.
I also find myself reviewing my Chrome history sometimes if I have no idea all the things I had been working on all day.
Our senses of touch, smell and sound are important and inspiring.
[1] https://play.google.com/store/apps/details?id=org.dmfs.tasks...
It's awesome to structure tasks into more and more subtasks.
Lots of tools are great for this too, I've used Tomboy, OneNote and org-mode, all of which do this very well.
In cases where it is medically necessary, there is: Adderall.
http://slatestarcodex.com/2017/12/28/adderall-risks-much-mor...
I realised a while ago that my main issue was with nebulous tasks -- that is, the more concrete, defined, and _meetable_ a task was, the less trouble I had with it. So I started to break down large tasks, which never got started much less finished, into smaller ones, in the same way you might break a scrum-poker 20-pointer into a bunch of 3s.
You want to go from this:
- I should really write [some great app idea]
To this:
- I'll make a list of technologies that I want to use
- I'll read the docs, like a book, for the ones that are new
- I'll write a single api endpoint
- I'll flesh out the api for the rest of a feature
- I'll MVP a UI for that one feature, without any concern for design
- etc.
In my case, a combination of the size of and amount of ambiguity in a task is inversely proportional to the ability I have to both get it underway and get it finished.