hitode909の日記

以前はプログラミング日記でしたが、今は子育て日記です

毛足の長いラグを使っていて、暑苦しいので、そろそろ片付けて座布団でも敷きたいのだけど、こないだ、変な匂いがするからと、座布団を捨ててしまった。
まさかこんなすぐに、座布団を使いたくなるとは思っていなかった。
京都には老舗座布団屋が無数にあるけど、座布団をフローリングに敷いて快適になるかはよくわからない。

チームのScrapbox3000ページくらいを見返して整理した

会社でScrapboxを使っている。チームごとやプロジェクトごと、話題や趣味ごとにプロジェクトを作っていて、うちのチームは1年3ヶ月くらい使って3000ページほどに達している。
どんどん書いていたのだけど、最近、どこに何があるかわからなくなってきていた。同僚に、ここの仕様はどうでしたっけ、って何度も聞いてしまうことがあったので、これはまずいと思ってちょっと整理していた。

表記揺れを直す

One Fact in One Placeということで、どんどんページをマージしていった。ページを同名にリネームするとマージボタンが出現して押すだけなので楽。
よくみるとスペースの有無によって同じ話題のページが2ページに分かれていたり、略称と正式名称と、「(正式名称)まとめ」の3つにわかれたりしていた。情報を探しているときにはどんどんマージしたりしないので、今回マージするぞと見返せてよかった。
サポート担当、通称サポタンというチーム内の制度があって、「サポート担当」のページと「サポタン」のページがあったのを、普段はサポタンと読んでるのでサポタンに寄せた。言文一致運動とか思い出してしまって、まだどちらがいいか分かってない。あとから変えてもリダイレクトされるのであまり心配はしていない。

どう見てもいらないページを消す

UntitledなページがUntitled_4まで作られていたり、ひとこと書こうとして数文字書いて止まってるページも不要そうなものは消した。「着手」というページに「手を付けること」とだけ書かれていたので迷わず消した。

フロー情報とストック情報を分ける

フロー情報(一時的な情報)は先頭に日付を付ける、そうでない蓄積すべきストック情報には日付を付けない、というルールを前から決めていたけど、とっさに書いたページなどは徹底されていなかった。ページを見返していって、フロー情報っぽいものには日付を付けて回った。日付のスタイルはCtrl-tで出るものにして、202005015ではなく、2020-05-15でも、2020/05/15でもなくて、2020/5/15に揃えた。
現在は事実ではない情報が書かれていたとして、ストック情報なら直さないといけない。フロー情報なら、当時の内容、ということで置いといてもよいので気楽になる。
昔やっていた定例会のアジェンダはどうしようか迷ったけど、old/というプレフィックスを付けて、先頭に「現在は運用していません」とか書くことにした。



1ページにありとあらゆることを書かずにリンク集にする

「よくある対応」みたいなページに、問題とその問題が起きたときの対処法をずらずら書いていた。また、対応によっては独立したページになったりして一貫性がなかった。
課題たちは1ページ1話題になるよう統一して、「よくある対応」はただのリンク集にする形に整理したら一覧で見えるようになってスッキリした。いまのところページを切り分けただけで飛んだ先はまだ整理されていなかったりするけど、ひとまず見た目が整うことで素晴らしいページのように思えてくる。

ストック情報は他のストック情報からリンクする

ストック情報がどこからもリンクがなく宙に浮いている状況は無くそうと、他のストック情報からリンクを貼るようにした。
うちのチームは運用しているサービスがたくさんあるので、機能や企画のページは基本的にサービスのページからリンクされるようにしたり、前菜と共通で使っている機能なら、機能ごとのページからリンクを貼るようにした。
副次的な効果として、規模の大きいサービスはドキュメントのリンクがたくさんあるけど、シンプルなサービスではリンクが少ないので、初見でサービスの規模を推し量れるようになり、ちょっと便利になった。
普通のWikiではREADMEというかトップページから辿れるものは確定情報としてメンテナンスしましょう、という運用ルールがあったりするらしい。

リンク集の構造はメンタルモデルと一致させる

サイトの説明があったら、まずURLがあって、仕様があって、機能一覧があり、インフラ構成があり、これまでの障害があり、という並びで、普通にサービスの紹介をするときの流れと一致するようにした。また、機能一覧もカテゴリ別に並べて、似たものは近くに並ぶようにした。
知っている箇所はすんなりまとめられたけど、あまり知らないところはあいまいな理解で、フラットなリンク集を並べることしかできなかった。リンク集を作れるということはドメイン知識を持っている、ということで、詳しい人に編集してもらうのがよさそう。詳しい人から見ると、変な構造になっていると編集したくなると思う。
ロジックツリーの作り方を学んでいると、どういう章立てやどういう箇条書きのネスト関係にするとよいかの感覚を掴めそう。

紛らわしいリンクを削除する

とくに重要なページたちは、そのページにリンクしているページを見ていって、関係がうすそう、と思うものはリンクを消すようにした。
意図せず同音異義語がリンクされていたのを発見して、丁寧にやるならまぎらわしいので別の用語をつけるべきだけど、古いページであって、現代ではその話をする人もいなさそうだったので、単にリンクだけ削除した。

トップページを上から下までスクロールする

これら整理活動は、プロジェクトのトップでDate created順にして上から下まで順に眺めていく形で、変なページを見つけたら直していく、という形で整理した。Chromeのウィンドウを2つ開いて、片方は時系列順に見ていくウィンドウ、もう1つはよく使うストック情報を開いておくウィンドウで、みかけたらストック側にリンクを置いていった。3000ページあったら一番下までスクロールできないかと思ってたけどやればできた。
今回は全ページの中身を見たわけではなくて、タイトルの時点で揃ってなかったり変なものだけを直した。リンク関係をだいたい作れたので、あとは本文を見て整合性を整えたり、リンク集も順番がいい加減なので納得度が上がるまで並び替えたりの活動をすればよさそう。


まとめる活動をするのが大事そう

これまでは、書いていれば自然とまとまっていくのだろうと思っていたけど、それでは不十分なようで、まとめようと思ってまとめる時間をとることが必要なようだった。今回まとめる行為を通して、どういうページがあるかがだいたい頭の中に入った。
ページ下のLinksがあればなんとかなるだろうと思っていたけど、ページ間に関連があることはわかっても、それがどのような関係の関連なのかはわからない。また、ストック情報とフロー情報が混ざってしまうので、どのページが重要かはわからない。
知識を持っている人がカテゴリを用意したり、その中でわかりやすいように並べてリンクを貼っておくのが大事なようで、UMLとかをイメージすると、has-aの関係だったりis-aの関係だったりする。リンク集の章立てはドメインエクスパートが書いている、という形になれば、そこの情報は信用していいので、知識の中に関係が整理されるので、わかりやすくなると思う。
こういう自治活動を一人でやってると破綻するので、試行錯誤してうまくいきそうになってきたら、まとめ時間をとってみんなで整理しましょうと働きかけようと思う。

参考

ナレッジ蓄積ツールの利用事例のページを見回ったりしていた。ツールは違っても思想は参考になったりするので、サービス運営側からインタビューして回ってくださってるのはありがたい。

2010年〜2016年に書いていたアイデア帳をScrapboxに置いて供養

学生の時から、思いついたことをidea.txtというテキストファイルに書き溜めていて、Dropboxで同期して大切に持っていた。そこから、これはおもしろそう、とか役に立ちそう、と思ったものはピックアップして調べたりコードを書いたりブログに書いたりしていた。
Dropboxのmemo/ってディレクトリにテキストファイルをちまちま作っていて、どこに何があるか全く覚えていないけど、idea.txtだけは存在を覚えている。
f:id:hitode909:20200515031606p:plain


最近は、思いついたことはTodoistに入れて終わったら消していっていたので更新していなくて、昔のidea.txtを手元で眠らせておくのももったいないな、と思ったのでScrapboxに上げておいた。2010年から2016年まで、6年分置いてあります。
scrapbox.io

2010年、2011年くらいは本当にいろんなことを書いていたけど、仕事しだしてからは、仕事にリソースを奪われていって文量が下がっていっているのが分かった。
とりあえず、個人情報とか出したら不味そうなものを消して体裁を整えて貼っただけで、長大な1ページになっている。話題ごとにグルーピングしたり、1ページ1アイデアにできると新たな発想が生まれて面白そうだけど、ここから新たな何かを作ろうという気はあまりなくて、いまのところゴミ捨て場という雰囲気。

せっかくなので、おもしろかったのをいくつか紹介しておきます。


朝 = 時間ない = 音でインタラクション
気温を音で,midiでぽろぽろするとか

最近はスマートスピーカーとか登場していて、可聴化じゃなくて、普通に機械が読み上げてくれるようになっている。

Eclipseの補完のとこにグルーポンとか出る
語呂の合った広告

補完のコーナーに広告が出るのはまだ体験していない。

砂糖が出てくるデバイス

よくわからないけどよさそう。

人の携帯に音を送れるとか
↑ ボイスメッセージでは

2行目で真実に気づいていた。

分かち書きして繰り返す
リズム
すっぱい、すっぱい、すっぱい、

こういう勢い重視のメモもが多い。

重ね着おすすめサイト
開くと,その日の天気が出て,どれくらい重ね着すればよいかおしえてくれる
鍋おすすめとか
スマートフォン 1ページだけ

今日の重ね着を作ろうって思い立ったときのメモ。鍋をおすすめする機能は実現しなかった。

機械で判定するときにも,統計的に,このプロジェクトはこういう感じなので,こうしませんかみたいな,空気を読んでくれると便利そう.人がいちいち,このプロジェクトのコーディング規約は,みたいに書くのはだるい

フォーマットのルールを人間が書くんじゃなくて、既存のリポジトリを正として、インデントとか自動でやってほしいよなというのは、今でも思っている。

ソースコード解析して 変数名だけ消す $1, $2にしてから、 頻出部分を
頻出…どうやって!!!

やりたいことはあるけど手法を思いつかなくて、その瞬間にあきらめている。

perlのクラスリネームスクリプト

ここで思いついてメモしておいたおかげでPerlのリファクタリングツールを作れた。




みなさまもお手元のアイデア帳をインターネットに大公開しましょう。アイデアだけ持っていても仕方なくて、実現したり、共感する仲間と一緒に作れたりして、ようやく価値がでてくると思う。

夢と狂気の王国

『「もののけ姫」はこうして生まれた。』が好きなんですって話をしてたら紹介してもらえたので観てみた。風立ちぬを作ってるときのドキュメンタリー。もののけ姫のときみたいにピリピリした雰囲気じゃなくて、世の中にはいろんなタイプの人がいるな〜という記録という感じだった。
宮崎駿が、僕はオタクじゃないですって言った次のカットで、庵野秀明と二人並んでゼロ戦のフィギュアで遊んでるのが最高だった。
基本的に宮崎駿はもごもご話していて聞き取れないのだけど、見てるとだんだん聞き取れるようになっていく。七人の侍を観ても、最初の方のカットは全然何言ってるかわからないけど、慣れるとだんだん聞こえるようになっていく。そんな感じ。

夢と狂気の王国 [Blu-ray]

夢と狂気の王国 [Blu-ray]

  • 発売日: 2014/05/21
  • メディア: Blu-ray


崖の上のポニョのドキュメンタリーもあってこっちは12時間あるらしい…。これも買ってみたので次に観ます。

自分のブログから毎日なにかしら検索している

大半のことはブログに書いてるので検索するとだいたい出てきて便利。
たぶん毎日書くのが重要で、たとえばこの記事の内容を1年ぶりのブログ更新で出すのは気が引ける気がするけど、毎日書いてる日記の一つなら、ブログに毎日書いていると便利ですぞって話が出てきても、まあそういう日があってもいいだろう、となりそう。

仕事してたり1on1していたりしても、その話題なら、こういう本がありましたよって本の感想の記事を紹介したり、私もそういうことで苦労していて、そのときはこういう日記を書いてましたって紹介したりしている。その場で説明するよりは、文字に書いてあって関連するリンクがでてくるほうが早くて手っ取り早そう。


技術トピックでは、masawada、で検索することが多くて、masawadaさんの提供してくれている各種素材を使って、触ったことない技術の実験に使っている(人体実験)ので、あのときやった実験はどこいったかな、というときに、とりあえずmasawadaで検索することになる。
masawada の検索結果 - hitode909の日記

コードを書くには連続した2時間が必要

ある日の午後のスケジュールは、30分ミーティングx2→30分自由時間→そして1.5時間ミーティング、その後は30分自由時間と30分ミーティングを繰り返して定時を迎える…みたいな様子だった。案の定、自由時間で意味ある仕事を進めることはできなかった。
自由な時間が30分あれば、チャットを読んだり、コードレビューしたり、グループウェアを見て回ったり、とかはできる。コードを書くにしても、ここをこう変えれば良いことがわかっていて、書くだけ、とか、ライブラリのバージョンアップ、くらいなら30分で書いてpushしておいて、次の30分でテストが落ちたら直したりして、と進められる。
しかし、そういうことより難しいことをしようとすると、30分だと、さて、問題がどういうものかは分かってきたので、どうしようかな、というあたりで時間切れになってしまう。1時間あれば、ようやくコードを書き始められるかな、というところで時間切れになるので、やはり進捗はない。

最近の体感値では、2時間以上連続した自由時間がないと、メインの仕事として持っているような大きな仕事だったり難しい仕事は進められないことがわかってきた。で、2時間あれば必ず進むわけでもなくて、やってみたらいまいちだったね、といって終わることもある。
試行をするにも2時間くらいは必要と分かってきたのでので、ミーティングを入れるときはなるべくほかのミーティングの前後にくっつけたり、午前中に詰めていったりして、なるべく午後に時間を作るようにしてみている。

連続した時間を得られるという点では夜とか週末とかは魅力的なのだけど、そこでがっつり進捗を出す暮らしになってしまうと、そこから抜け出せなくなってしまうと思う。先月は週末にめちゃくちゃ仕事していたけど今月はやってない、となると週末の営みの影響によって急にベロシティが下がることになる。