@kyanny's blog

My thoughts, my life. Views/opinions are my own.

org-mode: 何行くらいまでのファイルなら快適に編集できるのか

去年の七月から業務日誌とメモを兼用している journal.org ファイル。編集中、たまに Emacs の動作が遅くなる。中見出しを fold/unfold すると遅くなることが多い気がする。

実際のところ、何行くらいまでの org ファイルなら快適に編集できるんだろうか。マシンスペックや実際に利用できるリソースによる、というのはそれとして。

なおファイル自体は org-capture で「年/月/日/各末端見出し」という構造でひたすら追記しつつ、各末端見出しの中に任意のテキストが書いてある感じ。

2022-11-22 現在、5万3000行余り。

❯ wc -l journal.org
   53239 journal.org

日付の見出しは 312 日分。調べてないけど、ほぼ間違いなく平日の分しかない(仕事専用のメモなので)。

❯ rg -c --pcre2 '^\*{3}(?!\*)' journal.org
312

❯ rg --pcre2 '^\*{3}(?!\*)' journal.org | awk 'NR==1; END{print}'
*** 2021-07-01 Thursday
*** 2022-11-22 Tuesday

末端の見出しの個数は 1850 個。ゴミも混じっているのですべてが日付見出しの直下にあるわけではないが、一日平均 5.9 個(5〜6 個)の末端見出しがぶら下がっている、というのは体感的にも近い。

❯ rg -c --pcre2 '^\*{4} ' journal.org
1850

元々、一年分ごとにファイルをローテートする予定だった。そろそろ頃合いかもしれないが、このまま単一ファイルでどこまで行けるのか見てみたい気もする(現状も、そこまで困ってはいないので)。

Bizmates Program: Level 3 Rank E Lesson 7: Using logic

ミススウェーデン帰りには振られてしまったので前に一度やった女性トレーナーが代理で出てきた。アナウンサーとかやってたという人。スモールトークほぼなしでレッスンへ。

Lesson 6 の Try では、「まず proposal のアイデアを、次に誰に対して提案するか」という順で考えてみて、と。仕事の進め方についての提案かなあ、というので日々思っていることを話したが、なにせ前提となる背景事情を伝えるのにだいぶ時間がかかった。しかも最終的にはちょっと色々事情があって言えないんだよね・・みたいな煮え切らない話で、それもなぜ煮え切らない感じになってしまうのかの理由(と思われるもの)などを説明したりして、だいぶ長々と若干不毛な話をするという、なんか Level 2 の時にこういうのよくあった気がするなあ、という感じだった。

Lesson 7 に進んで、first dialogue をそこまで illogical とは思わないけど、とか、2nd dialogue はちょっと redundant にも感じるけど、とか注文をつけつつも普通にこなして、残り十数秒で See パートが終わったからここで終わりかと思いきや Try の 1 だけやりましょうとなった。

今日は念願の椅子が届いたのでスモールトークの題材はこれで決まりと思ってたが、全然話すチャンスがなくて拍子抜けだった。スウェーデン帰りには前日朝にキャンセルされてしまい、しかも予約リストを見たら俺が予約した一時間だか三十分前の枠までは空いてたので、なんか前回一分前キャンセルしたので敬遠されたのかな。。とかちょっと気になってしまった。まあこんな日もあるさ。

Lesson 7 の Try 1 まで終わり、次は Try 2 から。明日はミス洗練を予約した。

  • Hello, Ken-san! We're sorry your trainer could not make it today. I am Joy. I will be your substitute trainer. I am looking forward to seeing you!
  • Lesson 6 Supporting with data and examples
  • Act: Proposal: To make our work process more efficient and beneficial to our customers. 
  • Colleague: -Reiterate the first come first serve policy 
  • Boss: -I will present the same facts about the issue.
  • Lesson 7: Using logic
  • Example: This speech is very simple. This sounds like a conclusion.
  • Bizmates Style: This sounds more logical.
  • Try: The 2nd dialogue is clear and logical.
  • Thank you for your time, Ken-san! It's great to have you with us at Bizmates. Have a nice evening!

Bizmates Program: Level 3 Rank E Lesson 6: Supporting with data and examples

ミスター獣医と。「こんばんは、また会えて嬉しいよ」調子はどう?「仕事がとても忙しい、雨季は家畜が病気になりがちだから農場主へのコンサルティングが忙しくなるんだ、病気の予防、蔓延防止のために提案書をたくさん書く必要がある」提案書を書くとき専門的な言葉を使うの?農場主は理解できる?「たいてい二種類書くんだ。一つは農場主(経営者)向けで、平易なバージョン。もう一つは農場に雇われてる獣医向けで、こっちは専門的な内容」へー!なるほどね「実は大学の同級生の多くは農場主の子供たちだったんだ。彼らは卒業すると親が経営してる農場でインハウスの獣医として働く。農場主は獣医を雇う金を払わなくていいから賢いよね」それに、子供たちも親の近くで働きながら農場経営について学べるから、いずれ継ぐときの役に立つね。さらに、農場主になった場合も獣医の専門知識があるから、良い獣医を雇ったり、君みたいな良い医療コンサルタントを選べるね「ありがとう。同期の一人はすでに経営者になっていて、彼にもコンサルティングしてるけど、その場合は専門的な提案書を一通だけ書けばいいのでお互い楽だね」そうだね、彼も専門家だから、経営者向けの平易なバージョンはいらないものね。など、彼の仕事について詳しく知れて面白かった。自分の話としては、今週は忙しかった、経験豊富な同僚が異動したのと、なぜか新規問い合わせが多かったのと、同僚の一人が新人のメンターになってタスクに避ける時間が減ったのと、別の同僚が誕生日で休暇をとったのと。おかげで自己評価のレポートを書く時間が取れなくて、昨日が締め切りだったから夜にやって、提出し終えたのはもう朝だったよ。でも先週は奥さんの誕生日で、それが良いことだったよ「おお、奇遇だね、僕の誕生日も 11/15 だったんだ。家で食事をして、僕のパートナーはケーキを焼くのがうまいから(知ってるよ)チーズケーキ焼いてもらった。15 日は忙しかったから 14 日に一日早いお祝いをしたよ」

残り五分くらいだったが「じゃ、レッスンしようか?」といつもの感じでレッスンへ。Try の 3 から。どんなデータを使うか、問い合わせ内容によるけど、たとえばシステムの動作が遅いという問い合わせ。システムトラブルの場合は support bundle っていうログとかメトリクスが入ってるデータを送ってもらう。インストールするサーバーのハードウェアスペック要求があって、それより低いと正常に動かない。最低 32 GB メモリが必要なのに 16GB しかないとか。スペックについて指摘しつつ support bundle 内のメモリ使用量メトリクスを「使い切ってますね」とか見せたり。あとは、数千人とかユーザーがいる大企業の場合。開発者が何かの自動化のために bot プログラムを作って動かしたら秒間 10 リクエストとかすごい量のアクセスがきてシステムに負荷をかけて動作が遅くなる、とか。そういう場合はログを見せて、このユーザーがアクセス過多なので減らしてもらってください、とシステム管理者(たいていの問い合わせはシステム管理者から)に伝えるとか。などと説明した。この辺は事前に考えておいた内容なので、内容自体はスラスラといえた。ただやはり文法的にはだいぶ怪しく。ここまでで時間いっぱい。

Lesson 6 の Try 3 まで終わり、次は Act から。今週は疲れたので明日も休みにして、月曜にスェーデン帰りの人を予約した。前回(二回目)、レッスン直前に上の猫が体調不良になって急遽キャンセルして動物病院へ行ったのだった。

  • quarantine = a state, period, or place of isolation in which people or animals that have arrived from elsewhere or been exposed to infectious or contagious disease are placed
  • One of my friends had to get quarantined when they got back here from the US.
  • quarantine (n/v)
  • He doesn't need to read a laymanized version of the document.
  • layman (n) = a person without professional or specialized knowledge in a particular subject
  • laymanize (v) = to simplify something for a layman to understand
  • self-evaluation
  • Level 3 - Rank E - Lesson 6
  •  Supporting with data and examples
  • Try
  • These are our system requirements.

Bizmates Program: Level 3 Rank E Lesson 6: Supporting with data and examples

パキスタン人と。とにかくタスクの量が多くて忙しい週、そしてとりわけ忙しい日だった、仕事は切り上げたけど全部のタスクを終えたとはいえない、来週も抱えてるタスクに加えて新規タスクもやらないといけないからもっと忙しくなる、今日が self-review の提出締め切りで、上司は少し遅れてもいいよ的なことを言ってたけど来週もとても時間が取れそうにないから今日この後でやる予定、など仕事忙しいという話ばかりした。でもようやく金曜の夜だからね、もう週末と言ってもいいよね、などとも話した。

Lesson 6 の Bizmates Style から。ゆっくりはっきり丁寧に発音を心がけた。interior の発音ミスを指摘されて、やっぱり無意識に「インテリア」っぽく発音してたみたい。カタカナ語でインテリアって言うのでつい釣られちゃった、と言ったら「あなたに限らず日本人は皆これ苦手」と言ってた。あとは 450 を fifty hundred と言い間違えてたみたいで即レスで訂正された。50 = fifty と混じっちゃうんだよな。

Try の 1 で「あなたの場合はどんな例を示すことがあるか」で、ちょっと考えて思いついた例があったのだけどものすごく前提がややこしい話で失敗だった。お客さんからの「御社のソースコード静的解析ツールは競合他社と比べて検出数が少ないのだが」的な質問に「検出数が多けりゃいいってもんじゃない、誤検知とかあるでしょ、ウチのは正確性を重視してるんすよ」的な回答をしたのだがその際にいろんなネット記事を引用して例を示した、という話だったのだが、そもそもソースコードとは、というところから説明したので大変だった。彼女は比較的すんなり理解してくれたが、あまりにも技術的すぎる内容だった。自分的にはタイムリーではあったのだけど。

Try の 2 でも「どんな数字を使うか」で、これも考えて、でもなるべく短めの例を・・と思って思いついたのが、週次のチームミーティングで日本のお客さんからの問い合わせ件数を報告してる、という話をした。これは残り二分とかだったからというのもあるけど手短に伝えられたと思う。

Lesson 6 の Try 2 まで終わり、次は Try 3 から。明日はミスター獣医を予約した。

  • Hi
  • I already have MANY tasks THAT ARE assigned to me.
  • He kindly told me that it WAS OK.
  • interiors [ in-teer-ee-erz ]
  • Yasu didn't explain how many requests THEY HAD got. In the second paragraph, Yasu PRESENTED THE DATA THAT SHOWED THE number of inquiries and requests.
  • source code
  • This software was written IN plain text. The program REACTS TO our demand. We can see it in the CHATBOX. Some bugs are very problematic THAT CAN cause very severe TROUBLES. To avoid this security BREACH, it is really important for the ... My company provides one of the TOOLS. AS my response, I explained THAT it's a common umisnderstanding. I included quotes FROM the articles to support my explanation. DETECTING EVERY error or bug is NOT POSSIBLE. About 10% OF bugs are REAL. THE REST OF THE 90% ARE FAKE.
  • Every Wednesday, we have a team meeting IN WHICH we just GIVE updates OF THE week. I usually report ABOUT the number of inquires THAT we got last week. They are WORKING for NON-Japanese companies. It is important to keep UPDATING ABOUT how many requests we are getting from Japanese clients. The number of new inquiries SOARED.