zushi's place

Old and busted:

  • What's the meaning of life?

The New Hotness:

Near the end of their lives, a group of old friends walk into a bar. Many decades ago, all of them have resolved to a competition to live their best lives. As they recounted their life stories, to their astonishment, each of them seem to have acquired a different distinction among the group:

  • One person was the most content
  • One person contributed the most to societal welfare
  • One person who understood the most about the world
  • One person had the most meaningful personal connections
  • One person was the most valued by the world
  • One person had the most fun
  • One person had the most experiences

At the next table, you find yourself overhearing the conversation between them. The group of friends know better than to ask someone else to referee for them, but you can't help but think about this to yourself. Who won? How should these friends be ranked?


Technically a trick question, since everyone who lived to their meaning has “won” in some sense.

And there are a lot of flaws with this formulation too. Different wordings could make the same person choose differently; I probably missed some common answers too, since I came up with the question on the moment; and “winning at life” feels a bit contrived as a competition.

Regardless of these flaws, if one is willing to suspend their disbelief for a moment, I think this is an interesting question.

As for me, my personal ranking (best to worst):

  • One person was the most content
  • One person had the most meaningful personal connections
  • One person had the most fun
  • One person contributed the most to societal welfare
  • One person who understood the most about the world
  • One person had the most experiences
  • One person was the most valued by the world

This is the kind of question I'd like to ask a lot of people about :)

— Categorized under: #philosophy

Spent some time this week reading through the Anki manual, and found it a really rewarding experience.

For those not familiar with the app, Anki is an Open-Source notecard studying app. It's mainly used by students and language learners, but seems to be popular just among folks who likes to memorize things in a reliable way.

Looks like this:

My main use case for it has been studying Japanese, but more recently I found myself tossing random useful things in there too – like definition for some word I haven't encountered before, hard-to-remember names, keyboard shortcuts for Windows, that kind of thing.

From reading the manual, I found that it's surprisingly deep for something consumer-facing. As a developer with a bunch of things I wanted to automate, I had thought that I might need to write some APIs to interact with Anki, but now I think manual importing of spreadsheets is enough.

That does still leave the issue of creating the spreadsheets though. I've recently been using the “Language Learning with Netflix” Chrome extension, which unfortunately doesn't generate the romaji reading for Japanese words that were highlighted. I ended up writing a quick Python script on GitHub for it, which was pretty fun in it's own right.

Using Netflix with Anki has dual purposes. For one, it's given me a good reason to try out some different shows (Kakegurui was a recent one). For two, I'm actually kind of pumped to study these words now and see how well I can do after having them memorized.

Anyways, will report back on the experiment later. Hopefully if someone else is looking to study something, this post can point out some useful tools out there.

Categorized under: #workflow

One of the most interesting phenomenon in psychology to me is the broad category of things that could be primed by simple words, and some potential implications of those findings.

In priming, words that are conceptually close (e.g. cats and dogs), audibly close (e.g. rhyme and dime), and even just related cross mediums (one vs. 1) tend to speed up recognition and production of each other. In this way, one could conceptualize all symbols (including sounds and signs) as living on a sort of interconnected semantic web that's shaped by individual experiences.

Within each culture, these graphs are likely quite similar as well. For example, an English-speaking country would likely have such a web (courtesy of Wikipedia):

Résultat de recherche d'images pour "accessing the mental lexicon ...

I often think about what makes interest writing, conversation, and music just for the fun of it, and one pattern I consistently see between these mediums are that pleasant examples of them often stay close in the semantic web and follows a very specific pattern if it needs to travel further in the graph.

For example, in writing, it's better to say “it's raining cats and dogs” than to say “it's raining buckets and bathtubs”. Both are understandable to listeners, but the latter takes significant effort to parse because these words don't usually appear together, and thus requires a jump in the semantic web.

Similarly, a conversation feel strange and unpleasant if a person jumped from talking about everyday work at the office to a vacation in the Amazons, since these apparently don't share any context. On the other hand, suppose that the person said “I'm really looking forward to the upcoming vacation, which I hope would be as awesome as that time I went to the Amazons”, then that connection is established, and the conversation feels normal and comfortable.

It is the case that an intentional leap in the graph can be done for comedic or dramatic effect, but outside of those scenarios, a leap almost always feel uncomfortable.

Music actually has such a network as well, for example, here are common chord progressions for the Major key (borrowed from Music Theory for Songwriters):

Chord Maps - How to Choose Chord Progressions | LedgerNote

In music, chords have affinities due to pitch similarly, proximity, points of tension, common usage, and a wide variety of other traits. In chord progressions skipping chords would produce an effect very similar to suddenly switching to a random topic or using an unfamiliar idiom. The listener would feel disoriented, and the effect is usually bad (though sometimes it might end up being a pleasant surprise).

In general, I think this sort of semantic web applies to all real-time communications, just on different timescales. A dance or a meal could certainly have such a web at play, and even a large or detailed static image could generate a sort of communication over time that's likely governed by the same rules, but different webs.

These webs, when combined with other universal traversal patterns like hook, repetition, refrain, and climax, and decorated with other common elements like intensity and articulations, feels like it forms a bedrock for much of arts.

One thing I'm super excited about is to imagine how such webs are formed, what they look like biologically, and how they are different across cultures. In another way, I'd be curious to experiment with these a bit more, especially seeing what the rules for utilizing them look like, and how one might go about creating detailed scenes with just a few words.

Categorized under: #theorizing, #communications, #writing, #psychology

Assembled a new PC.

The idea to upgrade from the current laptop had four main motivations: screen real-estate, storage, games, and music production. Future VR compatibility was an auxillary consideration. My Dell XPS13 has been chugging along for 5 years now and lagging in all these metrics, and with the quarantine still in full force, it seemed like a good time to upgrade.

This is actually my first time building a machine, so I tried documenting it as a sort of a keepsake for the experience.

  Setup – everything new in box, except with an interior view of the case. img

  Opening some things, the motherboard came with some gamer stickers shown in the middle of the box. One of the stickers says “WELCOME TO THE REPUBLIC OF GAMERS”. img

  The Motherboard, which is by far the most visually complex part. img

  Partially assembled, with the power supply and the CPU chip & fan installed. Installing the fan requires, according to multiple sources on the internet, pressing down on a lever hard enough that you feel like you are going to break it. I can now attest to it. Feels like I could have cracked the fan or the motherboard if I pressed harder. img

  Low res image from first boot. I didn't think a graphics card was needed to show the startup boot sequence. But apparently with some AMD units, that's needed. I guess this was a good reason for Intel to provide integrated graphics on their CPUs.

Also, a BMO in the background for size. img

  I didn't really have a preference for RGB vs. not and didn't pay attention to which one I ordered. As you can probably tell from the above picture, I ended up receiving the RGB version. After seeing it in action, I can understand a appeal a bit more now.

Close view of the RGB fan: img

  I also enjoyed the mesh aesthetic of the case: img

  So that's it for the pics. The current spec: – AMD Ryzen R7 3700X – Nvidia RTX 2060 – 32GB DDR4 – 2TB SSD – 750W Power Supply

One weird thing is that good consumer motherboards often seem to assume that I'm a hardcore gamer, so my motherboard came with a door tag that says:

RESTRICTED AREA
STOP
DO NOT DISTURB

And as if that side wasn't cool enough, the back side says:

ACCESSIBLE AREA
ENTER
IF YOU DARE

This is a powerful and highly formidable door tag. I decided to hang it on the bathroom door for now.

— Categorized under: #irl

Yikes! It's been a long month at work. I definitely put in too much time in July and stopped feeling like I wanted to do anything productive since a few days ago, as a result, I took two days off to recover.

Since the beginning of this year, I've started viewing burnout as an awareness problem. This perspective has helped me out a lot – even in times where I don't feel like I'm burning out, or times when I thought I'm having some unrelated issues, taking a break still usually managed to fix everything anyways. Over time, I feel like I started getting a better sense of what actual burnout feels like.

This particular burnout was pretty interesting though – I did recognize that I was burning out halfway through the month, but the work timeline was planned such that I couldn't really take a break before all the work was done. In other words, this particular burnout not an awareness issue, but a planning one.

I think this type of issue generally comes up as a part of Parkinson's law (where “work expands so as to fill the time available for its completion”) and the fact that the last 10% of work usually ends up being more like 20% instead. Planning for it can be kind of tough though. Even if I channel some wisdom and reserve vacation days in advance, there will usually be a few weeks where I would constantly hear the devilish whisper “it's ok... you can just finish in on your vacation day” 😓.

Maybe I should just always book something out of the city, this way I can't force myself to not take a break?

— Categorized under: #psychology, #irl

Pikachu

Given that I decided to migrate from Microsoft To-Do to Notion recently, I spent some time this weekend looking into writing my own Microsoft To-Do exporter (official exporter is broken) and testing out Notion's capabilities.

The Microsoft To-Do part went better than expected, all things considered. The public API hides some folder structure information about that I needed, but with some additional web scraping I'm about 85% sure that I can get all my data exported.

The Notion Importer part was a bit more questionable. To my disappointment I found that task descriptions cannot be exported or imported. This is not quite up to par with what I'm looking for.

So I shopped around a bit more for alternatives, and one option that I looked at briefly early in January seems to be a promising candidate – RememberTheMilk (RTM). It looks like this:

RememberTheMilk

It's kind of cute!

RTM's been around since 2004 (!!) and seems to meet all of my minimum requirements: 1. Good keyboard shortcut integration. 2. Android widget app. 3. Expressive public API. 4. Don't lose data. 5. Good search feature. 6. Excellent export feature. 7. Support for offline use. 8. Few crashes. 9. Cross-platform.

(Well, “few crashes” remains to be seen).

As for my nice to haves, referencing the list again: 1. Multi-layer nested pages. 2. Automatic sync with Instapaper. 3. Automatic sync with Kindle. 4. Automatic sync with Audible. 5. Good app longevity. 6. Suitable for long-form quotes and notes. 7. Good developer community. 8. Don't have to write my own service for it. 9. Integration with Anki. 10. Ability to sync with Twitter. 11. Cross-linking functionalities.

I saw RTM has IFTTT and Zapier integration, so it passes all the integration stuff. Longevity is definitely not a concern, and there are a surprising number of dev tools out there for various languages. So ignoring the low pri “cross-linking functionalities” feature, the only thing it's missing is multi-layer nested pages & suitability for long-form notes.

RTM does not allow for folders of lists, and given that this hasn't been done over 13 years of asking from users, I'm inclined to think that it's more of a philosophical choice as opposed to a feature gap. TEM does have a handy “smart list” feature that lets you generate lists based on queries on date and keywords. There's also a tagging feature that can work like lists. I'm a bit worried about how the smart list feature will scale with several megabytes worth of tasks, but assuming that it scales, I can work with not having folders of lists.

That leaves the final piece of the puzzle – suitability for long-form notes.

RTM only allows plain text in task descriptions. This isn't a downgrade from Wunderlist per-se, but does mean that RTM will be less suitable for screenshot and sketch-based notes. This is a pretty common limitation of task-tracking apps, with good reasons. Pictures are incomprehensibly large – the entirely of War and Peace in English is is around 3 megabytes, about as big as any random photo you might see on a Twitter post. The storage requirements would have been tremendous, as would server requirements and coding complexity. It makes sense that most task-tracking apps wouldn't support it.

I think I'm not quite ready to give up pictures in my notes yet, but don't mind it if my tasks don't have them. If anything, the limitation should allow me to easily migrate my tasks to a different app in the future. And the fact that pictures are so heavyweight means that modern servers wouldn't give a hiccup transferring my notes as long as the code is robust.

As for note-taking, I think I'll stick with OneNote for now, and see if I can sync the text portions (with Optical Character Recognition as a bonus if possible) to a separate RTM list.

So it seems that I'll likely be migrating to RememberTheMilk in a few weeks. Fingers crossed for a painless API transaction that'll let me import my ~5 years worth of tasks and thoughts!

Categorized under: #workflow

Capitol Hill Library

For the past few years, Wunderlist has been my most used app and the main reason I still use my Macbook (for better keyboard shortcut integrations).

I use the app not only as a todo list, but also as storage for my notes. However, the app has recently been discontinued, and I'm not happy with the successor (Microsoft ToDo) for a few reasons.

  1. Crashes at least once a day.
  2. API is still in beta.
  3. Developer community is a bit barren.
  4. Export feature doesn't do anything.
  5. Loses some of my data (~1 per 100 items).

On the plus side, it does have a really good Android android widget, which is one of my top priorities.

Specific complaints about To-Do aside, Wunderlist/To-Do model always had some pain points for my use cases. The two-layer list format (one layer of folder and one layer of list) isn't really suitable for organizing notes whilest including citations from articles, books, scientific papers, etc. The separation between my thinking todos and the media that inspired them makes it hard to track back my reasoning.

Finally, my 5-year-old Macbook Air (bless it) has been having battery, storage, and processing issues. Some of these are not really solvable without buying a really expensive new one, and it would be much better to just switch to Windows.

Moving away from ToDo (as soon as my Export issue gets resolved) seems like a good opportunity to solve all of the above problems at once. Since I have a bunch of use cases the app, I decided to try brainstorming the features I'm interested in and rank them to help my search.

Minimum requirements: 1. Good keyboard shortcut integration. 2. Android widget app. 3. Expressive public API. 4. Don't lose data. 5. Good search feature. 6. Excellent export feature. 7. Support for offline use. 8. Few crashes. 9. Cross-platform.

Nice-to-haves, in order of priority: 1. Multi-layer nested pages. 2. Automatic sync with Instapaper. 3. Automatic sync with Kindle. 4. Automatic sync with Audible. 5. Good app longevity. 6. Suitable for long-form quotes and notes. 7. Good developer community. 8. Don't have to write my own service for it. 9. Integration with Anki. 10. Ability to sync with Twitter. 11. Cross-linking functionalities.

It's ok to get features through Zapier/IFTTT. In fact, I think most of the automatic features will probably come through Zapier or IFTTT. I can't think of a single product that would meet all of the requirements without using those.

What's interesting here is that all the integrations – Instapaper, Kindle, Audible, Twitter, Anki, cross-platform – will probably come from specifically two conditions being met: good developer community and expressive public API. I haven't really given this much thought before, but the lesson here seems to be that as long as you have an expressive public API and a product that developers like enough, developers will make the product more useful for everyone. There is a real network effect going on here. In a sufficiently open platform that developers like, the number of developer contributions becomes a leading indicator of consumer usage.

Anyways, my current forerunner seems to be Notion, which meets all of the minimum requirements except “Android widget app” and “expressive public API”. For the prior, it seems like I might be able to get away with using a different app like Todoist as my widget, and do a once-a-week copy of the contents to Notion. For the latter, there are some popular repositories that has reverse-engineered Notion's API (!) and so opened the floodgates for integration. The obvious caveat being that tools can in theory break anytime.

The nice-to-have list will be a bit fiddly. There's a service called Readwise which can sync and collect Kindle & Instapaper highlights, while Snippet seems to be a service that has better automatic syncing of Kindle highlights. These support IFTTT/Zapier, but Notion don't. I'll have to look around for ways to get syncing onboard.

Other than some issues in the automatic sync items, which are admittedly most of the nice-to-have features, Notion seems to be the ideal candidate here. I am looking into Roam as well, though.

Finally, Evernote is an interesting alternative. I consider it abandonware at this point, so it's Really Weak in the longevity department. I'd like the new system to last for a while, so hopefully I don't have to look into Evernote too soon.

Anyways, these are my notes on the todo/notes app wishlist so far. Would be curious to hear recommendations, and expect to post back here when the search is done.

Categorized under: #workflow

The house tulips reached full bloom! I think I got this one ~2.5 years ago from the grocery store when it was a standard 7-flower fare. There was a while last year when it looked a bit sad and seemed like it might be dying, but it instead just branched out and doubled it's bloom. It's really impressive what plants can do with just sunlight and water.

Full bloom: Orchids Full Bloom

The bloom ordering was quite interesting. The flowers bloomed starting with the ones closest to the root, and the two branches alternated in who gets the next bloom. It would be the top branch, then bottom branch, top branch, bottom branch, etc.. Each flower took roughly two days to bloom, and it was fun to watch the plant go through that blooming pattern all the way through.

There were a bit of apprehension as well the entire time – fourteen bulbs seemed like a lot, did the plant bite off more than it could chew? But in the end the orchid handled it flawlessly. That's some impressive planning right there.

In terms of the past month, I think this plant was probably the thing that inspired the most joy overall in the past month. Definitely looking into plants more if this was anything like the average experience.

An in-progress night bloom: Orchids Night Blooms

(I need to clean my lens...)

Categorized under: #irl

This joke's probably already been done, but -

Children's idea of adults: “I can sleep whenever I want, nobody's the boss of me!”

Actual adults: “I have to sleep right now, or I'll be tired at work tomorrow :(”

Categorized under: #fun, #random

That was a random question that popped into my head today. This happens to me few years, but thankfully this is not a difficult one.

The exact formulation is: suppose three randomly-placed non-concentric circles expand at the same speed on a plane, will they always intersect at the same point at least once? If not, are there any condition guarantees that they will?

This question looks challenging in its original formulation, but is actually quite simple when looked at a different way. Scroll down for the answer.

... ... ... ... ... ... ... ... Answer: We can look at this question as “is there a point on a plane that's equidistant to the three points”. And the answer is intuitive at that point – circumscribe the triangle (which can always be done for any triangle), and take the center. By definition, that center is equidistant from all the points. Done.

However, since co-linear and non-concentric points cannot be circumscribed, they have no such point.

What about the three-spheres case in 3D space?

Before I thought to look at this question the simple way, the solution was really complicated. But now it's simple – form a plane with the three center-points, take the center of the circumscribing circle on that plane, and any point on the the line perpendicular to that plane passing through the center point will be equidistant to the three spherical centers.

I suspect that this means four non-coplanar spheres expanding at the same speed also have a single meeting point, and pretty sure that a solution always exists even if each circle/sphere was expanding at a different rate – when finding the modified-speed triangle, just imagine a slower circle/sphere's center point is further away from the center of the current triangle, and vice versa.

Categorized under: #mathematics

Enter your email to subscribe to updates.