@kyanny's blog

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

【解決済み】org-mode の code blocks 内に markdown リンクを書くと見出しが醜くなる

一つ目の markdown link block の中身は、二つ目の markdown link block と同じ。この見出しをたたむと markdown のリンク書式が表示されてしまう。複数あれば全部表示されて、見出しが長く、見辛くなる。markdown のリンク書式以外では発生しない。

治したいのだけど、どうすればいいんだろう?

2023-05-25 追記:

お手上げだけど放置してると仕事の生産性に悪影響が出るレベルで邪魔なので質問してみた。今回はどこぞの Q&A サイトと違ってちゃんと質問自体への回答がもらえるといいな・・

emacs.stackexchange.com

2023-05-26 追記:

メール通知とか来なかったけど、チェックしたらコメントがついてた。「オレの手元では再現しない、emacs -q で再現するか試して、再現しないならオマエの init.el の問題だろうから bisect して切り分けてみろ」で、emacs -q だと確かに問題ない。なるほど Doom Emacs の何かがおかしいんだろうけど bisect で探すなんて無理なので Doom Emacs を(ひっさしぶりに)アップグレードしてみたら色々エラーが出てちゃんと起動しない・・壊れてしまってお手上げだったが、まあ全部消してインストールしなおそう、と rm -rf ~/.emacs して公式リポジトリのインストール手順に従ってやり直し。前見た時と手順すら少し変わってた(インストール先ディレクトリが違う)。で、起動しなおしたら、治った!

Bizmates Program: Level 4 Rank B Lesson 6: Local versus Professional

ミス洗練と。今日もスモールトークは短めに。ご飯食べた?とかそんな感じ。今日の彼女は疲れているように見えたなあ。元気というか覇気がなかった。

Lesson 4 の Try 3 から。See のおさらいはせず、というか「何か不明点とかある?」みたいな感じ。Try 3、easy-going があってるのは IT とか。strict は金融とか、メーカーとか。「保険業界はどうかしら?」金融ににてるところがありそうだし、strict だと思う。さらっと Try 4 にうつっていて、IT 業界の会社はどこも easy-going だと思う。みたいな感じでサラサラと、時間はたくさん使ったけどあまり深い話ではなかったかなあ。

Act では、financial は strict、セキュリティ、お金、プライバシーなどの理由で。design はもちろん easy-going。they shouldn't be strict と言った後理由を説明して最後に should be easy-going と言ったら発音が悪かったせいか「最初あなたが strict であるべきと言ったのかと思ってちょっとびっくりしちゃったわ」理由は、クリエイティビティが大事だから。strict rules はクリエイティビティを殺す。ads start up は、スタートアップは easy-going だよね、これも同じ理由。あと、小さいスタートアップは普通最初から新卒を雇わない、経験者を採用する、でその人たちは仕事の上でも個人としても成熟していることを期待されてるし、その人たちの経験が貴重だと思ってるから採用するわけで、細かいルールを定めて縛るのは得策ではない。彼らのやり方でやらせたほうがいい。

彼女は strict/easy-going どっちでも働いたことがあり、strict な前の会社の話だったか?セキュリティ上の理由でペン一本持ち込むのも禁止されるようになって、違反して解雇された人も何人かいたと。一方ビズメイツは自宅で仕事できて、かなり自由がある。もちろん strict な部分もあるけど。

スタートアップ企業でたまにある失敗として、strict な業界出身の CEO が規模に見合わない厳格なルールを作るのに時間をかけすぎて、しかも誰も従わなくて失敗する、という話を何度か聞いたよと話した。

「意味がわからないルールってあったことある?」うーん、ちょっと思い出せないけど、日本の会社で働いてた時はあったと思うよ。というと、これも前の会社での話か、リモート勤務なのに dress code があったと。「あなたも自宅から仕事する時、服装はどうしてる?」カジュアルだよ、襟付きのシャツを着ることは稀。いつもTシャツにパーカー。

とかそんな話をして、Lesson 6 に移動して、「あなたの仕事は何?と聞かれたらなんと答える?」アメリカの IT 企業で顧客サポートの仕事してます。かな。「日本の会社に勤めてる人は何て答えると思う?」ああ、会社名をいうことが多いかもね、トヨタの社員ですとかそんな感じで。「仕事場での人間関係はあなたにとってどれくらい重要?」うーん、良好な関係を維持したいと思っているけど、仕事とプライベートはきっちり分けたいタイプなので。「今そういう人が増えてきてるわよね」ここでレッスン終了。

Lesson 6 は予習しててちょっとショックを感じたところがあって、以前なら I'm a software engineer/developer と躊躇なく自信を持って答えていたと思うんだよな。でも今は I'm a customer support とは言わない気がする。なぜなら software developer ほど customer support という job title は「自明でない」と思っているから・・どんな会社でどんなサポートをしてるかのコンテキストをつけないと伝わらない感じというか。それは自分が specialist ではなくなってしまったことを如実に表してる気がして、ハッとしてしまった。

Lesson 6 の冒頭まで終わり、次は words & phrases から。次はそういう sentiment についても話し合えるような人とレッスンできるといいけどな・・

  • Good afternoon, Ken. :)
  • dog year

org-mode を使った業務日誌システム

org-mode で業務日誌を書いている。org-mode: 何行くらいまでのファイルなら快適に編集できるのか - @kyanny's blogでも少し触れたが、運用し始めてから二年弱経ったので、どういうシステムなのか一度まとめておきたい。

運用開始は 2021 年の 7 月。これを書こうと思って(当たり障りのない)スクリーンショットを撮ってから、実際に書くまで三ヶ月経ってしまった。

実のところ、Doom Emacs のデフォルト設定のまま org-capture を使っているだけ。j キーで capture するときのテンプレートが秀逸で、journal.org に年 -> 月 -> 日 という見出し階層を日毎に自動作成したうえで、当日の見出しの下に追加する、という挙動。これを使っているだけで「日誌」をいい具合に記録できる。

日毎の見出しの下には仕事のタスク一つごとに見出しを一つ作るのだけど、ちょっと特殊なやり方をしている。

今の仕事は顧客サポートで、Zendesk という問い合わせ管理システムを使っている。個々の問い合わせを「チケット」と呼ぶ。日々の仕事は未対応のチケットをアサインして回答し解決に導く、の繰り返し。

業務日誌上では、チケットの返信一回を一つのタスクとして管理している。同じチケットに二回返信するとタスク = 見出しが二つできる、という具合。このレベルの見出しは TODO/DONE などのステータスもつけていて、基本的にその日の見出しだけ開いておけばやるべきことが書いてある、という状態(を目指している)。チケットをアサインしたら見出しを作って TODO にし、調査結果とかメモとかなんでも見出しの下に書く。返信の内容は別で管理していて、見出しの中には書かない。返信し終わったら DONE にする。

なぜチケット一つ = タスク一つという形にしていないかというと、

  • チケットが解決に至るまでには数日〜長いと数ヶ月かかるので、何度も次の日の見出しへ移動させ続けるのは煩雑
  • 一つの見出しの中に書いてあるテキストの量が増えすぎると見通しが悪くなり、効率が落ちる
  • 同じチケットが長期間 TODO のままだと気が滅入ってくるし、DONE になる見出しの数が少なすぎてやはり気が滅入ってくる
  • 「解決済みかどうか」よりも「返信済みかどうか」のほうが日々の仕事を進めるうえでは重要なので、返信し終わったかどうかを把握しやすくしたい

などの理由から。

このシステムはそれなりにフィットしていて、だからこそ長続きしているのだけど、改善すべき点も多い。

まず、チケットごとの業務メモが異なる日付・見出しにバラけてしまうので、過去ログを参照しづらい。見出しにチケット ID が入っているのでそれで検索(フィルタ)すれば一応串刺し状態で一覧できるけど、org-mode の検索はどうにも使いづらい。

チケットごとではなくフリーワードで検索するのはもっと使いづらい。テキストファイルなので grep 的なツールで検索できると思いきや、実際には見出し構造や複数行にわたって自由に書いたメモの特定行だけ引っかかっても大して役に立たず、前後の文脈も含めて読み返さないといけない。それは org-mode の文法を理解するビューアーを使わないとちょっと厳しい。

journal.org ファイルの肥大化も問題で、ただでさえもっさりする Emacs 上での IME 経由のテキスト入力のラグが悪化し続けている。適当なところで分割すればいいのだけど、どういう単位で分けたものか迷いが生まれるし、Workflowy のような「一つの大きなアウトライン」の利点が失われるのも惜しいような気もする。

そもそも情報を「編纂」するアウトライナーとして使いこなしていないのが問題のようにも思うが、あまり凝ったこともしたくないので悩ましい。おれは「書きながら考えるタイプ」なので、その場その場で書くことを書く場所が常にある安心感はあるし、ジャーナリング目的には十分うまく行っている。このワークフローは崩したくない。

改善点についても、割と長いこと考えてはいるものの、実行に移せずにいる。

  • フロー情報を処理する用途としては十分なので、ストック情報もうまいこと管理したい。org-roam とかと併用するといいのかもしれないが、どうも踏み切れない
    • 巨大な journal.org と細々した *.org ファイルが共存することに違和感があって、そういう構成はうまくいかないんじゃないかという気がしている
    • 単純に、適切なタイトルを考えてつけていくことが運用上必須の前提になっていそうな org-roam が面倒くさそう
  • Zendesk のチケットにもステータスがあるので、見出しごとの TODO/DONE は二重管理になっていて冗長ともいえる
    • ↑とはいえ自分のタスクとしての TODO 管理はチケットのステータスとは分けておくと便利ではある
  • 日毎・返信ごとのタスク管理はそのままにしつつ、「日誌」から独立したチケットごとの見出しに情報を集約したらどうか
  • タスク単位の見出しの下には基本的に見出しを作らず、つらつらとメモとかログとかコード断片とかをごちゃ混ぜに書いているが、もっとちゃんとアウトライン構造にしたほうがいいのではないか

他にも色々と思うところはあるはずだが、これについてこのように書く時間をとってこなかったので、十分考えられていない。まず今日書くことで、考えを深め始めたい。

Bizmates Program: Level 4 Rank B Lesson 5: Easy-going versus Strict Discipline

猫が怪我してた人と。「こんばんは、今日はどんな日でしたか?忙しかったですか?」いやあ、忙しくはなかったんだけど、生産的でもなかったです。手首とか手がちょっと痛くて(腱鞘炎気味)、身体もこわばっていた。「それはお気の毒に。何か対処はしてますか?薬を飲むとか、セラピー?とか」薬は飲まないけど、マッサージとかストレッチをして痛みを和らげようとしてます。よくみる YouTube 動画があって、やり方を覚えたので。「私もそういうふうになることがあるので、よくわかります」とかそんな話をのんびりしてレッスンへ。

Lesson 5 の冒頭から。words & phrases, see パートを読んで、improvise を予習で調べてたけどやはり本番で読むとき詰まったので発音を確認したりした。彼女は see パートの後の質疑応答がないので、彼女による要約を聞くのみ。

で Try へ移動して、Try 1 自分の部署と会社はどっちか?100% easy-going ですね、IT の会社だからというのもあるだろうし、買収される前はスタートアップ企業だったからというのもあるだろうし。ユニークだと思うのは、自分は顧客サポートの部署で仕事してて、顧客サポート全般について、厳格な手順に従って仕事するイメージがあったけど、うちの会社は違う。仕事の進め方のガイドラインはあるけど、厳密に従う必要はなくて、むしろクリエイティビティを発揮することを期待されてる。

Try 2 は、ルールが厳しいのが好きとは言わないけど、自由すぎるのも困惑してしまう。小学生の頃、美術の授業で「なんでも好きなものを絵に描いていい」と言われて、何を描いたらいいかわからなくて困ったことがある。制約があった方が、どうすれば乗り越えられるか?とクリエイティビティを刺激されることもある。なので、自分はある程度ガイドラインがあった方がパフォーマンスを発揮できるかな。「その通りですね、supervision は少ない方がいいけど guideline は一定あった方がいいですね」

ここで残り三分台、今日はここまで進めて終わりでいいと思ってたので、ああ、いいポイントですね。supervision が多いと従業員を信頼してないことを意味する、逆も然り、とか話を繋いで時間を潰す。さらに一分くらい余ってたので、ビズメイツトレーナーの仕事はどっちなの?と質問して、「両方の要素があります。在宅の仕事だし裁量が大きいけど、レッスンの仕方についてはガイドラインがあります。完全に従うものではないけど、生徒さんがちゃんとレッスンを受けられるようにと整備されています」的なことを言ってた。

Lesson 5 の Try 2 まで終了、次は Try 3 から。明日はミス洗練を予約した。明日は丁寧にゆっくり話すことを心がけたい。

  • Good evening, Ken.
  • carpal tunnel
  • LEVEL 4 I RANK B I LESSON 5: EASY-GOING VERSUS STRICT DISCIPLINE -
  • TRY: 1. Does your department or company have an easy-going or strict culture? >> We are 100% easy-going discipline. >> We have our guidelines and we have an open working culture. We are an American IT company and we have the freedom to work based on our company's steps.  >> Our company expects us to show our creativity to help our customers.
    1. What kind of environment allows you to perform best? >> I don't like very strict culture or rules, but at the same time, I'm not a creative person.  >> I can easily get confused and I can't do anything by myself. I need some guidelines to follow.  >> Certain amount of rules encourage people's creativity.
  • Thank you for studying with Bizmates, Ken. See you soon!

Bizmates Program: Level 4 Rank B Lesson 4: Internally Driven versus Externally Driven

たぶんビズメイ太郎さんシリーズから、初めての女性トレーナーと。ミス 15 点は予約枠がなかった。

初めましてからの、お互いの簡単な自己紹介、で MyStage にアクセスしたら教材が Lesson 5 で、ミス洗練が Lesson 4 完了にしてたみたいだけど、Try 3 まで終わり扱いはちょっと端折りすぎではと思って Lesson 4 の Try 4 から再開でいいか?と頼んで、そこから。

しかしやり始めてみると、Try 4 と Act は実質同じで(internally / externally driven でうまく行ってる会社の例をあげよ)、しかも Try それまででも割とそういう話も前回のレッスンでしてたので、これはミス洗練の判断が正しかった。逆らってごめんなさい。

Internally driven な会社の例ばかり思いつくが、externally driven も頑張って考えはした。Apple スティーブ・ジョブズの話はもちろん、Meta が社名を変えたのも「メタバースが来る」とマークザッカーバーグが信じてるからだよね、と。あとは Google も、「もし世界の情報を整理する図書館?のようなものがあるとしたら、我々がその管理者になるのだ」的な初期のスローガン、ああいうのも internally driven だよねと。一方の externally driven は、Zappos のカスタマーサポートの例と、あと今回初で思いついたユニクロを。素材とかでイノベーティブな製品を出してはいるけど、顧客の要望に基づいてそれを満たすものを作る姿勢で、デザインとかでグッチのようなハイブランドみたいな主張はしないよねと。

なんか Google の話をしたら、Google は最近苦戦してるけどね、というのに「ChatGPT とかね!」と食いついてきて割と詳しいのかと思いきや、「Google Chrome も Google もブラウザ、なの?Google と Google Chrome の違いは何?」とかすごい分かってない感じの質問をしたりして、謎だった。しかし、これ Internet Explorer を「インターネット」を呼んでしまう人と同じ状態なのかも、と思うとちょっと感慨深かった。まあ Google って「ググる」という動詞になっちゃってるしなあ。「インターネット」と同格といえる。

タイムラグもあり、またこちらが話してると気を遣って黙るタイプの、会話が双方向に同時交錯せずターン制なタイプの人だったので、ややテンポは悪かった。話すのもゆっくりで丁寧な感じ。かつ、猫が怪我してた人ほど話し始めて終わるまでの文章のブロックが長くないので、つい相槌を細かく挟んでしまう(挟みたくなるような間である)、会話途切れる、空白の時間、みたいなあれがあった。

結局 Act は Google しか追加で出せず(Try の説明に時間がかかりすぎた)、「Act これで終わりにする?それとも次回続きからやりたい?」これで十分です、ということで次こそ Lesson 5 から。Externally driven の例に Amazon もあるよなと思いついたけど、まあそれは別にもう話さなくていいやと。

Internally driven な会社の例ばかり思いつくのは、自分が IT 業界(だけ)で 20 年も仕事してきて、IT 業界で有名な会社はたいていアメリカの会社なので、アメリカの会社は internally driven が多いってことだろう(そりゃそうだろうアメリカ人がそうだもの)、自分は日本人なのに externally driven な会社をあまり知らないんだよね、とか話したりもした。

Lesson 4 まで終わり、次は Lesson 5 から。この人はおっとりした性格という印象だったなあ。明日は猫が怪我してた人を予約した。

  • Kanazawa, Ishikawa
  • Lesson 4: Internally Driven versus Externally Driven
  • TRY
    1. What are some examples of successful internally and externally driven companies?
  • Apple computer is the good example of an internally driven company.
  • Tim Cook is the current CEO of Apple.
  • Apple was the first company to launch a touchscreen smartphone in 2007 successfully.
  • Meta is another example. Meta is the next big thing.
  • Uniqlo , they sell convenient clothes.
  • Their product is good and innovative..but unlike more high brand their product looks normal. They create their product based on customer's need.
  • Zappos
  • Zappos is an American online shoe and clothing retailer.
  • Go the extra mile- To do more than what people expect
  • resonated - you could relate
  • ACT
  • Google is internally driven.
  • Raise the bar- To set standards or expectations higher