草体にぼ日記

だらだらと

2020年4月15日 日記(長い)

2020年 4月 15日

まえがき

健康管理

今日は3:00 ~ 8:40ぐらいの5時間睡眠。
今日は一回楽に過ごそうという意識を持っているので気分は+1程度かな。
自由に過ごそうと思う。

日記

木の内部道長ってなんですか?藤原道長となにが違うのですか?
Internal Path Length って言えよ。
ないぶみちなが って明らかに平安時代の人間の名前だろ。

今日は晴れ。ていた気がする。
健康管理の部分は朝起きて書いたのだが,なんか今日はめちゃくちゃ精進をしてしまった!すごい!!詳しくは なにしたのところに書いているけどね。
吾輩の椅子,まじで良いわ。ふにゃふにゃすると背もたれもふにゃふにゃしてくれて気持ちいい。
あと,わけあってお菓子をそんなに食べなくなりました。
まぁどんな理由かと言うと,親にお金返さなきゃいけないっていうのが主な理由かな。
それと,めっちゃすごい報告なのですが,なんと今日は3食も食べました!!! 朝飯 コーンフレーク, 昼飯,昨日の夜に作った野菜炒め,夜飯,うまい餃子5個と食パン
すごいね。生活力の塊。
ただこれを毎日やると疲れて 死んでしまう気がします。
さぁ,そろそろ飽きてきたので日記の部分は終わりにしましょうか。

何した

  1. やることを整理
  2. セジウィックアルゴリズムC (p446 ~ 465)12の木章を読んだ
  3. GTD本のはじめにと目次あとがきを読んだ
  4. マスターオブ場合の数のSection9の1問を解いた
  5. 前回のABCの少しだけ復習した
  6. 螺旋本8章の1問を解いた(写経した)
  7. アウトプット大全の1章を読んだ

具体的に

なにしたでなにしたかを具体的に書いてくよ

1.やることを整理


コンな感じでまぁ,一生やっていくことをちょっと真面目に整理しました。本来はこれ 昨日やろうと思っていたんだけどモチベと睡眠時間がカスだからなにも出来ませんでした あはは
Getting Thing Doneという手法の整理術なんですけど,エンジニアの知的生産術で紹介されていたのでやっています。
ただ,やり方がちょっと不安定なので使うにしたらもっと提案者の手法を学びたい。ということで本を買いました。届いたら読みます。 整理術の勉強ばかりに時間をかけて精進の勉強が削られているフシがあり,本末転倒なきがする。 でもまぁやりたいからいいよね.

2. セジウィックアルゴリズムC (p446 ~ 465)12の木章を読んだ

やったことは二分探索とか二分探索木の範囲です。
とりあえずは,木を学習するに当たって,なんとなくなにが出来るかを見ることを目標にしているので,深く読み込んではいません。20pを60分,1pあたり3分の速度で読み進めました。
図鑑サイズの本なので,まぁ1p3分は流し読みにしては少し遅いくらいかな,とおもいます。

それでは学んだこと。 二分探索木は文字列の探索アルゴリズムとしても使える。
例えばブラウザでCtrl-F を用いて検索することって結構あると思うんですけど,それも何か木を使ってる?らしいっす。多分。
でも正直良くわからないね。
あんなにたくさんWebページには文字があるのに,その中から検索した文字列を探し出すのが一瞬で出来るなんて,なんとも不思議だ。(不思議だと思う)
その他には,内挿探索というものがあることを知った。これは人が辞書から単語を探すときの動きだ。 二分探索では,真ん中をみてそれより右。そうなら右と一番右の真ん中を見て…というふうにしていく。
しかし,内挿探索では,まず'd'で始まるからまぁ辞書の最初のほうだな。みたいな感じで,どのへんにあるかの当たりを付けて探索を行う。という手法である。

ちなみに,BSTとはBinary Search Tree のことであり,ベーコンサラダタイガーではないので注意が必要。

そして,二分探索をするときの添字の書き方について面白いことを知ったので紹介しておく。
center = (left + right) / 2; という書き方は,単純に左右の真ん中を表していそうな表現だが,もう一つ
center = left + (right - left) / 2; この書き方が中々面白く,意味としては,左の添字に,区間の長さの半分を足す。みたいな意味合いだ。
僕はこれを見て少しおもしろいな。と思った。

3.GTD本のはじめにと目次あとがきを読んだ

ついに はじめてのGTD ストレスフリーの整理術 が届いたので,早速読んでみた。と言いたいが,あんまり読んでいない。
ちなみにこの商品,Amazonではコロナの影響か売り切れで,僕はメルカリで購入することにした。

最近ボクは学習法やタスク管理術というものの勉強に心を踊らせているので,もうウキウキよ。
ちなみに今日はまえがき,あとがき,監訳者あとがき,目次を読んだ。
本を読むときは目次から読もう,みたいなことはよく言われているね。僕はその本の全体図をつかむ為に目次を,それからたしかエンジニアの知的生産術に前書きとあとがきを先に読もう。みたいなことが書いてあった気がするのでそれも読んでみた。
ちなみに,それらの内容で30pあったのだが,60分かかった。
読んでみると中々に面白くて,本当は目次を読んで全体図を表す表を作ろうと思ったのだが,普通に読書ノートを生成してしまった。

これが読書ノートです。
ちなみに,この読書ノートはGTD本で一冊。とか言う使い方をしていなくて,読んだ順,読んだ章順に読書ノートを作っています。
そのため,情熱プログラマの次のページにエンジニアの知的生産術のことが書かれていたと思えばその次のページにはAPG4bについて書いてある。なんていうなかなか破天荒なノートです。
そして,目立つかとおもいますが,僕は読書ノートに直接書き込むことよりも付箋を貼っていっています。
なぜかと言うと,何故か分かりません。
ただ,付箋をつアクトなんとなく付箋に言葉を収めようとするので,コンパクトになる印象があります…
別に誰におすすめサれたわけでもありません。

そして,次に本の全体図です(超作りかけ)


まぁ,目次を書くことで今そこで自分がその本からなにを教えてもらうことが出来るのか。というのを把握しているイメージです。
授業とかで他人が質問して講師が答えているとき,講師がなんのはなしをしているかわからなくなることってよくありませんか?(僕はあります)
それを防ぐみたいなノリです。

GTD本を買ったことや感想が長くなってしまいました。
僕がまえがき,あとがきなどを読んで思ったことをやっと今から書いて行きます

  • GTDとは まず,GTDとは,「ある時点でなにをスべきかについて最善の選択をし,現時点で行っていることに対して思い悩んだりストレスを感じたりしないようにするための手法」 であり,つまるところ「物事に集中するために余計なものを排除する」という整理術です。
    人は作業をしているとき,些事に気を取られることが多いです。僕を具体例に上げてみます。

    これは,僕の机の端っこの方なのですが,作業中に「あ,これやんないと」って思ったことを書き留めているものです。
    他にも実際に今日書き込んだこととしては,「昼飯食う」「薬」「餃子」「メルカリで届いた処理する」 そのようなことを書き込んでいました。
    大半の人は,このような些事が頭に思い浮かんだときに「あー…」といって作業を中断するとかしちゃう(少なくとも俺はそうだった) のですが,GTDの整理術は,「気になることは一度脳から外に出しておく」ことで,作業以外のことに脳のメモリを割かないようにしよう。という整理術です。
    作業中は作業以外のことを気にしないようにする。これがなかなか良いんですよね。ハマっちゃう。

  • 確信を持つ GTDは一種のタスク管理法の一種でもあります。まず,気になっていることを全部書きあげる。 その上で自分が時間を書けてなにをやらなきゃいけないかを選定します。
    そうした作業を経て得られた「やること」のリストは自分がやりたいことだから,自信を持ってやることができます。
    さらに,その過程でやらなくていいと判断したことは,やらなくていいと判断したので作業中に「うー」と頭を抱えなくていいはずです。

    この辺はエンジニアの知的生産術で読んで得た知識なので,詳しくはGTD本をもう一度読んで理解していきたいですね。

  • 習慣化が習慣化をうむ これは監訳者あとがきから得た情報でおもしろいとおもったことです。
    まず週末に必ず見るリストというものを作る。
    ここに,「毎週,机の上の要らない物を捨てる」と書いておきます。すると,週末にそのリストを見ることで机の上が片付きます。
    こうして,「毎週リストを見る」という習慣によって「毎週机の上を片付ける」という習慣が生み出されました。
    なんとも面白いはなしですね。

  • おまけ 僕はGTDなにをやるかを管理出来て,ポモドーロテクニックというもので自分の実際の作業を評価しています(恐らく)
    まあ,とはいってもまだ一週間ぐらいしかやっていないんですけどね。
    なにかと言うと,まず1日の始めに「今日やること」をGTDで決めた「やることリスト」から選んでいきます。
    その上で,実際にそれをやるにはどれくらいかかりそうかを判断してみる。
    1日の自分が行えるポモドーロ数(1ポモドーロは30分ぐらい)を超えていたら,1日に出来るぐらいの数におさめる(やらないタスクを選ぶ)。
    ポモドーロを推定するメリットは,大体そのタスクにどれくらい時間がかかるかを見積もることで,終わりが見えることです。多分。
    まぁ,この推定は推定をこなすことで精度が上がっていくらしいので続けていきます。
    なんか,ポモドーロテクニックに関しては知識が抜けまくりの禿げまくりなのでまた見返したいわね。

さて,僕は今このようにアウトプットをしてみたことで,ポモドーロテクニックの利点というものを覚えていない。ということを認識しました。
すごいですね,これは収穫ですよ。僕は今からポモドーロテクニックに関する記述を「エンジニアの知的生産術」で読み直すことで,ポモドーロテクニックに関して理解が深まります。

あぁ,アウトプットってすごいですね…

4.マスターオブ場合の数のSection9の1問を解いた

さぁ,僕はマスターオブ場合の数を勧めていくことにしました。 今日解いたセクション9のタイトルは確か,「対応を考える」というものだった気がします。
セクション9の最後の問題(研究問題ではない)を解きました。ここから得られた知識は - 点を4つ選びその点を結んで長方形を作る。 - その長方形に対して対角線を結ぶと,交点が一つ生まれる。
なにを当たり前のことを言っているんだ,って思うようなキチガイ数学erはとっとと帰れ。
これ僕にとっては中々面白くて,五角形があった時に,頂点から他の頂点に線を引いたとき,五角形の中に何個の交点ができますか,って言ったときに今言ったことが使えるんスよね。
五個の頂点から4つの頂点の選び方は5C4 = 10じゃないですかぁ(甘い声)
つまり頂点から頂点は繋いだ線によって5個の点が五角形の中に生成されるんスね。
書いて確かめてみようね。

  • 点と点を結ぶと線が出来る。
    これもまた大半の人が知らないことです。
    僕はこれを知って狂喜乱舞しました。
    この問題では,点から他の点に向かう矢印を書いてあげることで問題を解けるようになるのです。

5. 前回のABCの少しだけ復習した

解説動画がなくて,僕は解説動画がないとダメな人間なので,あまり復習できませんでした。

まぁ,得られたことを上げるとしたら, E問題の方針だけはあっていたってことですかね。僕はこの問題をGCDが1になるときが何通りあるか,2になるときが何通りあるか。でとこうとしてました。それはあっていたっぽいです。
ただ,一つ誤算っだのが,GCDが1となるとき,数列の中に1が必ずないといけないと勘違いしていました。
例えば数列の長さが2で最大公約数となるものは,{13,23}なんてものが考えられますよね。
はぁwwww

A~Dに対しては問題見たぐらいしかしてません。

6. 螺旋本8章の1問を解いた(写経した)

あれです。木の走査ってやつだったとおもいます。
本当は8章をやりきっちゃうつもりだったんですけど無理でした。
先行順巡回,中間順巡回,後攻順巡回などをやりました。

で,バグ埋め込みやをしてしまって,

double free or corruption(out)

というエラーに永遠に悩まされました。
これは恐らくですが,配列の初期化をしていないと出るエラーだと思われます。

7.アウトプット大全の1章を読んだ

さて,僕はエンジニアの知的生産術の2周目を読み終わったので,アウトプット大全をまた読み始めることにしました!!
まずは1章でアウトプットの有用性について再確認を行いました。

  • インプットは自己満足 インプットしてもアウトプットしなきゃ身につかないよ〜><

  • 脳にとって重要な情報とは,何度も使われる情報 何度も使う == アウトプットする情報です。
    アウトプットをしよう! アウトプットはいいぞ

  • フィードバックを怠るな。 インプットとアウトプットをしていても,中々成長できないと感じることがある。これは,フィードバックをしていないことが原因だと考えられます。

    ちなみにフィードバッグとは

    • 見直し
    • 反省
    • 改善
    • 方向修正
    • 微調整
    • 原因究明

    これらのことです。 なにかアウトプットをしたとき,アウトプットをすると「これは身についているな」「これは身についていないな」「理解が不十分だな」などの感情が頭によぎる(と思う)。
    これらに対して「なぜ身につけることが出来たのか」「なぜ身につけれなかったのか」と考えることで,次のインプット作業に役立てることができます。

  • 広げると深める フィードバックに際しては,自分が学んだことに対して広げたいのか深めたいのかを意識するだけでも良い。
    深めるとは,ある生産術に対して耳にしたとき,もっと詳しく知りたいと思うこと。
    広げるとは,他の生産術も知りたいと思うこと。

  • 悩みを解決しよう。 自分で悩みを解決せずに他人に質問をすると,あまりやる気がないように思われそうです。
    ある程度の悩みは自分で解決して,わからないことを相手に聞くと良さそうだよね。

さて,僕はフィードバックがうまく行っていない気がしますね…

今日解いた問題

螺旋本の8章の木の走査

あとがき

なんかフィードバックがガバガバな気がするのでフィードバックをするぞ!!

さて,まずはこちら(今日の僕のやったことリスト)をご覧ください

はい,とても見にくいですね。
まぁ別に読者に見せるのが目的じゃなくてただの自己満足です。
みたい人はスマホからTweet飛んで拡大すれば見えるとおもいます。

こんな感じで,(今日の分は)一日のやることが青い付箋に書かれていて,その隣にコメントが書かれています。
これが僕のタスク管理です。

今日は割と集中して作業に取り組めました。
その原因として考えられることは以下です

  • Twitterを開いていなかった
  • 精神的に安定していた
  • 朝にタスクの整理をした(GTD)
  • 朝日を浴びた
  • ずっとタイマーを回しながら作業していた。
  • (本を読むとき)今読んでいる節が何分ぐらいで読み終えれそうかを意識していた
  • 読んでいる部分に対して,自分はなにを知りたいのかをざっくりにでも考えた。
    逆にマイナスとならないのかな?と思ったことをあげてみます
  • モニタを3枚付けていた
  • キャスをずっとしていた
  • 音楽をかけていた

こんな感じですかね。
で,僕の中での最推している説は「精神的に安定していた」です。
他人からの連絡に対してこないかなこないかな,とソワソワしていたのですが,それがなくなって,まぁ,「返信こなくても嫌われてないだろ」の精神を手に入れました。

やばいね。俺はプロだ。天才だ。

さて,現在の時刻は00:12です。
なんともまぁ,完璧な一日を過ごしてしまいました。 このような日を高頻度で生み出せるようにするためには,そのための環境が大事ですね。
どれか一個を逃したせいで崩壊する。ということがないようにしたいね。

例えば,早寝早起きしてご飯も食べて調子いいのにTwitter開いていて集中削がれた。なんていうのはバカですしね。
自分が生産性を高くした活動を行う為には他のところへのコストも惜しまずに頑張らないといけないのかもね。

頑張れ人類。頑張れ俺。

以下は毎回記事に貼っているテンプレート

基本的に読書はTwitterで絡みのある人だけだと思いますが、僕のブログだけ見てるって人もいるかもしれないので、一応自己紹介っぽいことをしている記事を貼っておきます - 瑞々しぃにぼしの自己紹介(自己紹介の記事です)