Here are some of my thoughts...

Experience
Feel Lucky

It would be nice to be able to reference previous thoughts when writing new ones.

There are two approaches that initially come to mind to tackle the presentation of referenceable thoughts.

  1. Provide links to the referenced thoughts and referencing thoughts along with the current thought.
  2. Present all referenced thoughts along with the current thought and make the referenced thoughts collapsable.
More Like This

To improve the utility of the Doing widget I should start using it more for personal tasks. I think the task description, which for work items I currently don't read very often, would be more useful and I would engage with the actual content on the widget rather than the colours and the notifications.

To encourage we to use it for personal tasks I think the following improvements might help.

  1. Make it easier to enter thoughts. This can be done by
    1. Making 'Add Card' work offline
    2. Add new cards to 'This Week' or 'Today' depending on which one is current in view.
  2. Notifying the user when 'This Week' and 'Today' lists are empty in certain time windows.
More Like This

Another option for how to link up 'thoughts' is to use something similar to suggested stories on a news site. These suggested thoughts would be related to the current thought using an configurable algorithm. This would reduce the amount of friction when adding thoughts and encourage me to do it more.

Rather than complicating the UI the 'suggested thoughts', which from now on I will call 'related thoughts' because the verb suggest doesn't fit in this context, can fit in to the existing stream of thoughts, above and below the current thought depending on the creation date. This is where 'infinite scroll' would be very useful.

More Like This

Writing thoughts where it is assumed I am the consumer seems to be more satisfying.

More Like This

I need to tweak the 'More Like This' configuration so there is a higher threshold for the related thoughts.

More Like This

All thoughts are now stored exclusively in a Lucene index and managed by Elasticsearch. I am still using Postgres to manage authentication.

The main motivation for using Elasticsearch is the 'More Like This' feature which link thoughts together automatically.

More Like This

Although I believe a more liberated engineer (free from excess social, bureaucratic and traditional processes) generally makes for a more for-filled and ultimately more productive engineer it can also be helpful to use self imposed mechanisms to guide behavior where human tendencies can lead us down unproductive paths.

An example of this is a widget I created for android which connects with my Trello boards, sits on my home screen and has the following features:

  1. A Doing section, (scrollable) Today/This Week section and Clocked off section which track corresponding lists on all Trello boards and present the cards present in these lists.
  2. Ability to move the cards between lists as well as into the 'Todo' and 'Done' lists which are present in Trello but not presented in the widget.
  3. Triggers notifications and alarms when amongst other events the following happens
    1. A card sits in 'Today' after the day is complete
    2. A card sits in 'This Week' after the week is complete
    3. A card sits in 'Doing' outside work hours
    4. There is no card in 'Doing' during work hours

The alarms and notifications have a pavlovian effect and can be made to quite unpleasant by adjusting vibration length and sound thus increasing the effectiveness.

More Like This

Apple triaged the app review for the latest PocketLab app due a bug that was introduced in the previous release.

I liked the process but even with the triage it took about 18 hours.

More Like This

Some processes I perform during the day that I might be able to improve on are:

  1. Making coffee
  2. Exercising
  3. Reading
  4. Making dinner
  5. Programming
  6. Managing projects
  7. Betting

Improvements could entail

  1. Making the process faster to perform
  2. Making the result of the process better
  3. Achieving more enjoyment from the process

For each process one type of improvement may be more desirable than another. For example, I don't want to speed up my coffee making as I use it as a chance to take a break from looking at the computer screen but I do want to speed up project management as it would give me more time to do something I enjoy.

More Like This

I find the lifecycle of angular services to be quite anti-intuitive when down in the weeds with lazy loaded modules.

If I have a service declared in a lazy loaded child module and that module is loaded the service is instantiated and according to the documentation and pretty much everyone who has wrote on the subject should live for as long as the associated injector (and thus module) lives unlike a module directly imported which I understand shares the injector and thus the services will be available app wide for the lifecycle of the entire app.

I have found that if a lazy loaded module accessed through a router outlet is navigated to from the same lazy loaded module through a different router outlet which effectively wipes the previous base component of the module, the component is redrawn but the service from the previous module and assumably the actual module itself sticks around. The question then is for how long?

More Like This