Monica

Personal CRM done right – Monica

Yuko and I started using the Monica Personal CRM a few months back. We find it useful. Today It has about 140 contacts and about 150 activities recorded. The number keeps growing. Let me walk through how we use it and whether it can be helpful to you.

TLDR: We like it but I don’t strongly recommend it because of its niche nature.

What Is Monica?

Monica is CRM, that is, an address book with richer metadata. You keep records of people with their names, birthdays, relationships (who is married to who, and whose parents are who, etc.), notes, and other attributes.

  • In the parenting context, I tend to recognize other parents as nameless, saying, “Mike’s dad”. This is problematic in the first name culture, and not very respectful even outside the cultural radius. Monica helps me remember their names1.
  • The birthdays of the child’s friend circle are important for gifting purposes.
  • Some other basic attributes are also worth tracking: Their current and past jobs, where they are from, how we met them, etc. These are often mixed up if you don’t take notes, and such a mix-up can cause some minor embarrassment.

It is also a journal. You keep records of activities you did with these people: Went where with whom, who said what, who gave us which, and vice versa, etc. You can look back at these chronologically and it helps since:

  • This is another form of metadata, but you don’t have to organize it in any canonical way. All you have to do is add a journal entry with people tagged.
  • The memory of the conversation evaporates quickly if you take notes, and you’ll have to ask the same questions again and again. The activity log reduces that social awkwardness.
  • You share the conversations with your spouse. Although you can do it over the dinner table, having the written records is a nice addition.

Asking Personal Questions

For me, one unexpected benefit is that I became more curious about other people.

I thought I was indifferent to other people and often forgot what they told me because of my indifference. This indifference has amplified my social awkwardness.

However, I realized that I was indifferent because I forgot. I was afraid of asking personal questions partly because I forgot what I heard and I had to ask the same questions again and again. I feard the awkwardness and the fear made me more indifferent to other people2.

Monica gives me a place to take notes, therefore making me less forgetful – I can just take note of what I heard. It becomes my assisted memory.

Once you unlock to ask personal questions, small talks become a bit easier. “How are you doing” becomes a source of a journal entry in Monica. I don’t say I become a more interesting person, but at least I become more interested in the other side of the talk. That does help.

Even better, it is also our assisted memory: I can share my findings with my spouse. This collective nature makes the memories more useful and robust.

Is Monica Worth It?

Monica isn’t for everyone. First of all, not everyone needs personal CRM. Some people are just good at remembering this kind of people’s details super well. Others are not, but they don’t care. You want something like Monica only if you’re in the narrow window of a “not good at this but do care” personality.

Even if you are in that window, adopting Monica can be a high bar:

  • The membership is expensive – $9/month. Monica is open source and some people choose self-hosting because of the price.
  • The UI design is outdated and some important features like full-text search are missing.
  • They don’t have mobile apps.

They are working on a new version and I hope it’ll fix the feature parity and UI problems, but the price will be the same. Niche products are expensive.

Still, we will stay on Monica because:

  • It allows sharing notes with family. This isn’t free with more mainstream tools either. For example, Notion costs as much as Monica ($8/m) if you want the collaboration bit.
  • The dedicated UI is better than the generic UI (say, Notion or Spreadsheet).
  • We know we use it somehow.

I tried other mainstream tools but none did suit well enough to stick.

I hoped there were less-niche options than this. In fact, we used to use Highrise from 37sinals. But they sunset it3 a while back. There are some others in this genre, but none are for families. Apparently, family-oriented CRM isn’t a big-enough market.

Overall, I wouldn’t strongly recommend Monica to anyone. It’s a bit too niche and too indie.

I’d rather ask other families how they keep up with the growing flow of relationship-oriented information. Am I just too bad to remember these relationship things?4

Footnotes

  1. Without asking my spouse about their names which are in her text archive.
  2. Besides the fundamental indifference I have. I have accepted that to some degree.
  3. To their credit, they’re still running the app. But no updates are available anymore.
  4. I don’t want to believe it, but I kind of know the answer.

Link: Actually, Japan has changed a lot – by Noah Smith

There are some interesting numbers in the first article.


Every time I find Japan-related posts in places like HN, I realize how little I know about Japan. I stopped paying attention to Japan-related news when I moved to the Bay Area, but I admit that I didn’t pay attention either even when I was in Tokyo.

I was a typical single nerd male who didn’t read the news. And I’m not sure I should have read more – What was the point of being informed if the only choice was to live in Japan and (although I didn’t realize) I was in a pretty privileged position? Well, there were points, but there were other priorities.

Now being an expat with a hypothetical option to move back or not, should I read more about Japan? I still don’t know. Such a decision is probably led more by local and personal context than the global, objective parameters like GDP or mortality rate.

If that’s the case, why do I subscribe to NYT and read the U.S related news? Isn’t living in the Bay Area a personal, local choice? (It is.) That’s a fair question. I used to think that this is a survival strategy as an expat and that there are also some moral values, again as an expat, to be aware of the local habitat, and to blend in.


For some reason, these points don’t feel as convincing as they used to be. Nowadays I rather read it just because it’s interesting enough at a pass time. They have good writers and some articles are deeply researched and well-written. I didn’t have that feeling when I was reading newspapers in Japan. Also, exposing myself to the American value system still feels fresh to me.

This too is very subjective. I consider myself a very picky Japanese reader who has strong taste. And I consider myself a very mediocre and slow English reader who has less than middle-school vocabulary size. This fluency gap surely biases my judgment here.

It’s ironic that I read less because I can read more. Maybe what I should do is read The Japan Times or Nikkei Asia. It sounds as ridiculous as it can go. But just by visiting the site, I learned Toyota’s CEO is stepping down which is a big deal, I guess?

Link: Remote Workers Face a Lonely Wave of Layoffs – The New York Times

But management experts stress that businesses don’t have to navigate periods of economic turbulence so haphazardly.

Ms. Sucher noted that Nokia, when it was restructuring in 2011, gave the roughly 18,000 people who would be affected about a year of advance notice and offered them several pathways forward: The company would help them find new roles internally, get new jobs externally, start their own businesses or begin an educational program, among other options.

Nokia’s success metrics were whether people had a job lined up when they left the firm, and whether they were leaving with a positive enough impression that they would be open to returning in the future. Nearly two-thirds of people who left knew what their next steps would be.

Remote Workers Face a Lonely Wave of Layoffs – The New York Times

This sounds very European. Although I hope my employer and the peer companies did this, they are too American to behave like this.

According to Wikipedia, Nokia is kind of fine after they sold the mobile division to Microsoft.

Lifer

A month ago I wrote this but somehow didn’t publish it.

I feel I’m becoming a Lifer at Google. If you work for a single company long enough that you can imagine yourself retiring at that company, you are a Lifer.

I’m here at Google more than twelve years. That’s long enough for me to become a Lifer, I guess. It’s kind of a shame. When I moved from Japan to the US, I wanted to experience more diverce careers. That didn’t happen.

I’m old enough to be OK with it but it feels weird. Before I arrived at this place, I was a hopper and had never worked at any single company for more than three years.

A month ago it was disappointing to recognize me as a Lifer. Today it is scary. I can still imagine myself retiring here. What I find not able to do anymore is picture any other non-devastating future. And we just learned that life here can end at any time for no reason.

I want to ask Lifers elsewhere – What’s it been like to be one at, say, IBM? How about Adobe, Microsoft, Apple, or HP? Please tell me it is okay. Tell me you are okay.


This was such an insensitive, selfish and cowardly rumbling. There are people who lost their jobs. I should just collect the pieces and move on. That’s the right thing to do here.

I’ll leave this post alone to mark my wimp.

Agile Roles

Capital One cuts over 1,000 roles in Technology • The Register (Also HN)

The consumer lending company told The Register that its plan was to eliminate its “Agile” job family and integrate staff there into “existing engineering and product manager roles.”

As someone who worked in the Japanese IT industry, I used to be wondering how Agile was adopted in the U.S. and why it had collected so much hate.

I then learned that many companies not only hired Agile consultants but also had full-time “Agile roles” like Scrum Masters. There are even certificates for these professions. Hiring more people to run the process didn’t feel like lower-case “agile”, and that was probably one of the reasons why the upper-case “Agile” was disliked.

This upper-case Agile was not as common in Japan, and I suspect it is still the same. I preach this fact because, to me, Agile was always a grassroots movement. It was hard to imagine what a full-time Agile role was like. I still don’t understand.

Today, before I figure it out, the era of the upper-case Agile seems to be ending.

You would point out that the statement from Capital One is just an excuse. Maybe. Partly at least. On the other hand, I smell a pinch of truth; There are countless ways to cut and excuse, and they choose the above from the endless options.

You may then wonder if the lower-case agile is also ending. I hope not. The statement says:

The Agile role in our Tech organization was critical to our earlier transformation phases but as our organization matured, the natural next step is to integrate agile delivery processes directly into our core engineering practices

As an ex-grassroots-agile-believer, I’m too biased to question this. I’d rather ask you what you see from your trench. Is the lower-case agile dead, or is it “integrated”?

Link: Tell HN: It is impossible to disable Google 2FA using backup codes | Hacker News

The solution (which is too late to help you with now) is to take a photo of the QR code that is first showed to you when you originally set up 2FA. Keep that safe somewhere and you can always go back. For anyone who is freaked out by this and currently still has access to their google Authenticator app, I suggest exporting all your codes to a big QR code in the app and keep that safe (maybe print it out).
https://news.ycombinator.com/item?id=34442690

Printing it out and putting it in some safe is what i did.

And works like a charm.

I mean, if it works for crypto wallets it might also work for 2FA…

https://news.ycombinator.com/item?id=34443283

This is why I use SMS as my second factor for my Google account. Much harder to lose. It could be vulnerable to sim swapping attacks, but I consider Google locking me out of my own account a more likely threat (and frankly I’m probably not a high-profile enough target for anyone to bother with that, and in any case they’d still need my password).

https://news.ycombinator.com/item?id=34442690

See You on Sunday

Last week we had a birthday party for my daughter. We wanted it outside but it was a rainy day. So we ended up inviting a few families to our apartment. All kids had fun, and so did grownups.

It had been almost three years since the last time we invited people home. We forgot how it felt, but the party rekindled the excitement. The next round, hosted by one of the party’s guests, is already set up. It’s going to be a great potluck.

I recalled a book I bought right after the pandemic started. The book, See You on Sunday, is a cookbook about home-gathering meals: Big Meats, Big Pots, Pizza, and Pasta.

The author claims that the Sunday home gathering is an important social fabric. I read it under the COVID-sheltered apartment and dreamed that someday, this virus would go away, and we would have a meal with these big dishes. The virus hasn’t gone away and it never will, but we started gathering anyway. I have yet to have any big dish though.

One recipe I was intrigued by was Momofuku’s bo Ssam. I have no idea, however, where I can find “whole bone-in pork butt or picnic ham (8 to 10 pounds)”. Probably I should start with something easier like spaghetti.


Pumpkin Sugar

pumpkinsugar/source/_posts at master · omo/pumpkinsugar · GitHub

Dependabot のうるさい未使用 repo を archive していたら、10 年以上前に二年くらいひっそり書いていたブログが発掘された。基本的には少女マンガの感想を記録しており、かなりしょうもない。こういうのをみると、結婚して子供ができて強制的に真人間になれてよかったな・・・という気がしてしまう。独身の友人たちは特に心を病むこともなく楽しく暮らしているのでそれが悪いわけではない。自分が思ったより独身生活に向いてなかったという事後的発見。

“あなたのインターンに Blog (これ) の URL を教えておきましたよ” と同僚は明るく告げた.

pumpkinsugar/2012-09-26-closing.markdown at master · omo/pumpkinsugar · GitHub

会社員がインターンに見られて止めたくなるようなブログを書いてはいけない。ばかめ・・・。

Outdated Code Comment Enthusiasm

This article argues against code comment supremacy and discusses the modern writing venues in software development.


The book “A Philosophy of Software Design” discusses code comments through three chapters. The author is enthusiastic about code comments and argues against Robert C. Martin’s “comment as code smell” principle1.

I used to be in Robert’s camp, but after encountering many useful comments in real life, now I appreciate the values of good ones. Still, however, the enthusiasm in “A Philosophy of Software Design” puts me off. Such an extreme comment supremacy feels outdated: The author overlooks recent advances in software development tooling.

Today, software developers have various venues to leave written notes outside the code comments, for example:

  • In-repo notes like a directory README.md
  • Commit logs or PR messages
  • Threads on issue trackers
  • Other documentation tools like Wikis and Google Docs.

These have some advantages over traditional code comments:

  • Better formatting capability: You can highlight words, have headlines, use tables or even put some images, thanks to Markdown or WYSIWIG.
  • Conversational capability: Issue trackers and code review tools have a textbox. It allows you and your teammates to leave some extra comments, keeping the note a bit more nuanced and fresh.
  • Stable URL: You can link the notes from almost anywhere, including the code comment.

On the other hand, the traditional code comment has only one strength: It lives next to the code itself, inline. This is nice and why it’s been preferred.

Web-based Code Browser

However, the code comment’s lead has eroded once Web-based code browsers like GitHub or Sourcegraph have become common. You can just put the URL to the note in the source code so that readers can click through. For a note to be accessible, it no longer has to stay inline.

Code browsers assist code (and note) reading. A few notable features are:

  • It makes URL clickable: Although opening such a link can be cumbersome for text editors or IDEs, it’s instant in Web-based code browsers. Links are the first class citizen on the Web.
  • It makes blame handy: The commit log becomes a click away and the summary line even shows up next to the code itself. The code archeology has become a routine.
  • It runs in the Web Browser: You have tabs. You have handy extensions. You can search the code, others’ code, and StackOverflow, seamlessly.

In-Repo Notes

Among the new types of written notes, the in-repo notes are particularly powerful because:

  • They live next to the source files.
  • It is inherently versioned.
  • It can be part of the code review.

In the other words, it is like the code, without suffering from the limitation of the code comment (lack of formatting, missing stable URL).

And like the code, you can refactor the notes, making the trade-offs: Inline comments are like inline code. They are handy and immersive. However, it can also be noisy and annoying, diluting the code density on the screen. Extract them into a separate in-repo note when that makes sense. It reduces the noise and increases the code density2.

Also like code, don’t repeat yourself. You don’t have to explain a weird workaround. Leave a link to the relevant bug, that has a link to the relevant commit, that tells the story in detail. This is done only with a couple of clicks.

Suggestions

Let me rephrase the claim above as a few suggestions:

  1. Read the code in the Web-based code browser, in addition to the text editor or the IDE. Treat the code browser as a read-optimized IDE. If you don’t have one, invest.
  2. Pick the right venue for your written note assuming the above is the norm.
  3. Consider leaving links in the code to connect the relevant information.

In this world, you’ll find the code comment less useful. That is not because the code is clean enough, but because the comment is no longer a primary place to leave the notes.

Looking from a different direction, Web-based code browsers turn code into hypertext. And the hypertext blurs the boundary between inside and outside the code. Take advantage of it.

This article doesn’t discuss what should be noted in which writing venue, but it deserves a discussion. I might write about that at some point.

To Resonate

This article doesn’t argue against the fundamental point the “Philosophies” book makes, that is, the importance of writing around the code. However, claims like this are convincing only when it is stated in relevant contexts for the readers. It doesn’t resonate otherwise.

To be resonating and relatable, industry veterans like us have to re-tell the lesson in today’s voice, instead of recommending old books. And the “Philosophies” book is a respectable attempt at that retelling. It delivers in some parts, but the comment sections are yet to reach that point in my opinion.

Footnotes

  1. Robert later followed up on this topic.
  2. Some IDE allows comment folding and it does help readability. If the code can tell the IDE to fold a specific part of the comment, it’ll change the trade-off.

Link: EVs are getting too heavy and too powerful, safety chief says | Ars Technica

EVs are getting too heavy and too powerful, safety chief says | Ars Technica

As someone who was recently hit by a car, this is a bit horrifying. Also, as an environmental awareness wannabee, this is a blind spot. I wanted a bigger EV with bigger batteries for less frequent charging, but maybe that’s not a good idea. If so, what I need is a close-enough charging spot. It’s unlikely that I get one in near future. This outlook makes me sad.

写本

日常の雑談とは別に、文書を書くスキルも少しは高めたいなという気持ちから、唐突に適当な英文を書き写す写本作業を二日くらいしてみたが、ぜんぜんなんの手応えもないので中断。同じ失敗を何年か前にもした気がする。数年後にまた過ちを繰り返さないため書き留めておく。

写本作業とは、英文をセンテンス単位・・・だとだいたい長過ぎるのでコンマ単位くらいで、見て、覚えて、書き写す。PC だと単語単位で書き写してしまいそうなので、手書きでやっている。テキストは印刷しておく。ある程度長い文章を覚えようとすることで、文の構造とかを頭にエンコードするスキルを増す期待がある。

写本が良いかもしれないなと思ったのは、基本的にはスピーキングの定番練習である shadowing からの連想だった。が、効果のありそうな感じがなかった。進みが遅すぎてトレーニングとしての圧が弱いのと、あとやはり進みが遅すぎて文章のリズムみたいのが完全に消えてしまう。

もちろん、何らかの効果はあるとは思う。文単位で書き写し、採点(?)すると、冠詞とか細かい時制の間違いとかには気付ける。続ければこうしたミクロな間違いは減らせそうな気がする。ただ、こういうのは最近だと Grammarly なり GDocs のチェックが直してくれる程度のものなので、訓練しがいがない。

単純な文法よりはもう少し粒度のある文章の筋の良さみたいのを体に覚えさせたいとなると書き写しよりはスピードが欲しい。 Audible で shadowing でもすればいいのだろうか。むしろ普通にテキストを音読すればいいのかもしれない。音読は、やりすぎると読速を落とすクセがついてしまいそうで抵抗がなくもないが、試してみて良い気がする。


一歩さがって、自分が改善したい writing はどんなものなのかと考える。と、まず design doc. あとは proposal. そういうお仕事文の類である。オンラインの文章、今回は The Electric Typewriter というサイトから適当に選んだ Malcolm Gladwell の文章だったが、そういうのが書けるようになりたいわけではない。そんな高いバーは目指していない。

そういう「面白い文書」に関する含蓄を高めるより、もうちょっとドメイン依存のやつないかな・・・と思ったら Technical Writing  |  Google Developers というのがあったので、読んでいる。まあまあ良い。このくらいベーシックなやつを読み、何らかの形で実践していくところから始める方が良いな。

このガイドを実践しても面白い文章はまったく書けるようにならないので excitement はないが、別に design doc は面白くなくて良いんです。仕事の proposal とか長めのメールとかも、別に面白くなくて良いんです。そしてこういうの、昔勉強したことあるはずだけど完全に失われているね。ここ数年、ひどい sloppy な文章を書いてきたものだと反省。


練習として、日常の雑談、conversational resume 的なものを technical writing の流儀で書くのはどうか。ドライで楽しくない文章になりそうだが、他に対して題材もないので試して良いかもしれない。まあ日常の雑談に限らず blog に書いているようなことを technical write してみればよい。試してみるべし。

Conversational Resume

Better Small Talk by Patrick King – Audiobook – Audible.com

今年は新しいチームにいることだし少しは同僚とのコミュニケーションとか頑張ろうかなと思い、聞いてみた本。

Conversational Resume という話がでてきて、要するに話のねたを貯めておきなさいという主張。自分について話せる話題をどこかに書いておく。そういうのはあっていい気がする。日常の記憶が、英語でぱっと話せるほど整理されていない。同僚に話せる程度の話題なら大体はブログに書いても問題ないはずで、Conversational Resume をブログに書き留めるのはありかもしれないと思った。ブログの記事としてはまったく面白くないだろうけど、別にこのブログは面白さを志向していないので問題なし。

Chromebook の良さ

Chromebook(Chrome OS) の良さは、Chrome が他のどの環境よりも断然ちゃんと動くことだと思う。速いし、キーボードショートカットとかばっちり。わかりやすい例はログインして Ctrl+N するとブラウザが開く。奇妙なツールとかで設定するまでもなく、標準で。デスクトップ環境の方がブラウザに寄ってきてくれるのは、ChromeOS でないと(当然)ありえない。ブラウザだけ使っている分には他より圧倒的に快適。これに慣れたあとで Windows とか Linux で Chrome を使っているとイラっとする場面がある。

こういうのは Chromebook の良さを語るレビューとかであまり言及されない、当たり前だが使っていないとわからない良さだと思う。ブラウザしか動かないが、そこにはセキュリティだの何だのだけでなく、エンドユーザの手触りとして見返りがある。

だから他より良いと主張するつもりはないけれども、Chromebook のレビューは理論上の良さ vs 現実の制限みたいな論点ばかりが目につくので、そうでない切り口を記録に残しておく。

AI とプログラマの仕事

この手の話はフーンと眺めていたが、Neeva というウェブ検索のスタートアップが思ったよりはやく LLM を直接製品に埋め込んできて感心した (スクリーンショット)。Google のサーチ部門も Code Red らしいし(※勤務先ですが他所の部門の話なのでインサイダー知識はございません) Bing もなんかやってるらしいし、こういう LLM-based な自然言語製品は思ったよりすぐ商業化されるのかもしれない。


”プログラマの仕事は AI に奪われるのか” という話題で見られる先のリンクのような議論は Remote And Vegan と同じ問題を抱えている。つまり、プログラマの既存のタスクや責務が自動化できるかどうかというミクロな問題にフォーカスしすぎ、マクロで構造的な変化を議論してない。自分はどちらかというと後者が心配。

でかいモデルの学習には巨大なメモリと速いアクセラレータを長時間専有する必要があり、めちゃ金がかかる。推論もわりかし高価であることが知られている。従って、AI を使いたい企業は直接的、間接的にハードウェア投資をしないといけない。そのための資金をどこかから調達しないといけない。

自社でデータセンターを持つでかいテック企業の支出は、大半が人件費とハードウェア費用であることが決算報告などから知られている。そして近年のハードウェア費用の増大は AI/ML 用途の計算資源需要の増大が大きな理由だとみなされている。つまり、人件費(我々の給料)とハードウェアコストは、限られた予算を奪い合っている。

だから今後 LLM を使った製品が次々に登場して成功を収め、その開発運用に必要なハードウェア費用の高騰が進み、そのぶん人件費が圧迫されるということは、ありえるんじゃないの?

一歩下がると: 相対として AI 用途のハードウェア(およびそれを直接間接に提供するサービス)に投資する方がプログラマの給料に投資するより見返りが良いなら、企業は、これまで沢山あった玉石混合のソフトウェア開発プロジェクトを切り捨て、(運用が高くつくため相対的には数の少ない) AI-based な製品開発に比重を置く・・・かもしれない。そうなったら末端で比較的どうでもいい機能とかを開発しているスマホアプリプログラマなんて失業ですよ。困るわ。


テクノロジーのイノベーションでモデルの計算効率が良くなる可能性はあるが、それがモデルサイズの増大をオフセットできるのかは、まったく自明でない。LLM 製品の力で売上が加速してコストをオフセットできるのかも、やはり自明でない。めちゃ競争がある分野なわけだし。

というわけで、プログラマは AI に目先のタスクを自動化される心配をするヒマがあったらリサーチャーが LLM のコスト問題を解決するイノベーションをしてくれるよう祈るほうが良い、が、どちらも特別 actionable ではないのでほっといて真面目に働き解雇リスクをさげるのが現実的。正常化バイアスという批判は甘受いたします。

Atmospheric River

雨続きのカルフォルニア、新聞記事がこの気象を Atomospheric River と称していた。細長い雨雲のことらしい。このビデオを見ると要するに台風の尻尾のところだとわかる。Wikipedia によると US では CA で特によく見られる現象らしく、CA の雨の半分はこれとされている。

NYT の降水量マップを見るとベイエリアは Santa Cruz Mountain によって豪雨を免れているように見えるが、これはいつも期待できるのだろうか。


どうでもいい細かいことを Blog に書いて見る試み。