bookmarks
概要
各ノートに分類できないブックマーク集。
リンクを辿らずとも内容がわかるようにすること。
Tasks
TODO The Unix and Internet Fundamentals HOWTO
コンピュータやシステムに関する、実用的な基礎知識の解説。
TODO Dom document
DOMのドキュメント。日本訳もある。
TODO Martin Fowlerの和訳
リファクタリング手法で有名な人のブログ記事の、和訳リポジトリがある。
GitHub
linguist/languages.yml at master · github/linguist
GitHubが対応してる言語の色が網羅されている。
Essay
ポールグレアム HOW TO DO GREAT WORK |HR_researcher
偉大な仕事をしたいと思っているほとんどの人にとって、正しい戦略はあまり計画を立てないことだと思う。それぞれの段階で、最も興味深く、将来への最良の選択肢を与えてくれそうなことは何でもする。私はこのアプローチを “風上にとどまる ”と呼んでいる。偉大な仕事を成し遂げた人の多くは、このようにしてきたようだ。
新装版 なぜ選ぶたびに後悔するのか オプション過剰時代の賢い選択術 | バリー シュワルツ, 瑞穂 のりこ |本 | 通販 | Amazon
選択肢はあればあるほど幸せとは限らない。
My Articles for WIRED Japan
山形浩生の、WIREDでの記事。
裸祭りってすごい思ったこと。 | Buchiblo
裸祭りから見えてくる日本経済の停滞論。面白い。
あなたとあなたの研究
すごい実績を上げる科学者と、それほどでない科学者の違いはなにか。
知っておきたかったこと
人生の指針として保存用にコピーしておく。 What You’ll Wish You’d Known
知っておきたかったこと
--- What You'll Wish You'd Known
Paul Graham, January 2005
Copyright 2005 by Paul Graham.
これは、Paul Graham:What You'll Wish You'd Known を、原著者の許可を得て翻訳・公開するものです。
<版権表示>
本和訳テキストの複製、変更、再配布は、この版権表示を残す限り、自由に行って結構です。
(「この版権表示」には上の文も含まれます。すなわち、再配布を禁止してはいけません)。
Copyright 2005 by Paul Graham
原文: http://www.paulgraham.com/hs.html
日本語訳:Shiro Kawai (shiro @ acm.org)
<版権表示終り>
Paul Graham氏のエッセイをまとめた『ハッカーと画家』の 邦訳版が出版されました。
出版社の案内ページ Amazon.co.jp サポートページ
2005/01/22 翻訳公開
2005/01/24 水落毅様より誤記の訂正を反映
このエッセイは、ある高校の講演依頼を受けて準備したものである。 その高校のお偉いさん方が反対して、結局私の講演はキャンセルされたのだが。
こんど高校で講演することになったと言ったら、ぼくの友達はみんな 興味を持って尋ねてきた。高校生に向かってどんな話をするんだい。 だからぼくは逆に聞き返したんだ。君が高校生の時に、誰かがこのことを 教えていてくれたらなぁ、と思うことってあるかい。 そう聞くと、みんな自分のことを語りはじめたんだけれど、 だいたい誰も同じようなことを思っていたんだ。 そこで今日は、ぼくらがみんな、 誰かに教えてもらいたかったなあと思っていることを話そうと思う。
まず、高校にいるうちは知らなくてもいいことから始めよう。 人生で何を為すかってことだ。大人はいつも、君は人生において 何を成し遂げたいかって聞くものだから、答えを考えておかなくちゃ いけないなんて思っているんじゃないかな。 実は大人がこの質問をするのは、単に会話を始めるためなんだ。 君がどんな人間かを知りたくて、そしてこの質問をすればとにかく 君は何かを話し出すだろう。潮溜りのヤドカリを突っついて どんな反応をするか見てみるのと同じさ。
ぼくが高校生に戻ってこの質問を受けたとしたら、 まず何が可能かを学ぶことだと答えるだろう。 人生を賭ける仕事を選ぶのに急ぐ必要なんてない。 必要なのは、自分は何が好きなのかを発見することだ。 上手くできるようになりたいなら、そのことが好きじゃなくちゃだめだからね。
何が好きかを決めるのなんて一番簡単なことだと思うかもしれない。 でもやってみると、それはとても難しい。理由のひとつは、 仕事で実際にどういうことをしているかっていうはっきりしたイメージを 持つことが、多くの仕事では難しいからだ。例えば医者という仕事の実際は、 テレビで描かれるようなものじゃない。もっとも医者の場合は、病院で ボランティアをすれば本物の医者を見る機会が得られるけれどね [1]。
それどころか、今決して学ぶことが出来ない仕事っていうのもある。 今はまだ誰もやっていないような仕事だ。ぼくがこれまでの10年間でやってきた 仕事のほとんどは、ぼくが高校生の時には存在していなかった。 世界はどんどん変化しているし、変化のスピードも速くなってる。 こんな世界では、決まった計画を持つことはあまりうまくない。
それでも毎年5月になると、全国津々浦々の卒業式で決まりきった演説が 聞かれることになる。テーマはこうだ。「夢をあきらめるな。」 ぼくはその真意を知っているけれど、この表現は良いものじゃない。 だって、早いうちに計画を立ててそれに縛られることを暗示しているからね。 コンピュータの世界では、これに名前までついている。 「早すぎる最適化」というんだ。別の言葉で言い替えると「大失敗」ということだ。 演説ではもっと単純にこう言うべきだろうね。「あきらめるな。」
この言葉の真意は、士気を失うなってことだ。 他の人に出来ることを自分は出来ないと思っちゃだめだ。 それに、自分の可能性を過小評価してもいけない。 すごいことを成し遂げた人を見て、自分とは人種が違うと思うかもしれない。 しかも伝記ではそういう幻想はますます誇張される。伝記を書く人っていうのは 対象となる人物にどうしても畏敬の念を抱くものだし、物語の結末がわかっているから そこに至るまでの人生のできごとをまるで運命に導かれたように、 内なる天才が徐々に現れて来るように描きたくなるんだ。 実際のところ、もし16歳のシェークスピアやアインシュタインが君と同級生 だったとしたら、たぶん彼らは才能を現しているだろうけれど、それ以外は 君の他の友達とさほど変わらないはずだとぼくは思う。
こう考えるのは、おっかないことだ。彼らがぼくらと同じなんだとしたら、 彼らはすごいことを成し遂げるためにものすごい努力をしたってことになる。 そう思うのはこわいから、ぼくらは天才というものを信じたがるんだ。 ぼくらが怠けている言い訳ができるからね。 もし彼らが、魔法のシェークスピア属性やアインシュタイン属性のせいで 素晴らしいことを成し遂げたんだとすれば、ぼくらが同じくらい すごいことをできなくてもぼくらのせいじゃないことになる。
天才なんてない、って言ってるわけじゃないよ。 でも、二つの理論を選ぶときに、一方は怠惰であることを正当化するものだと したら、たぶんもう一方の理論が正しい。
ここまでで、卒業演説の「夢をあきらめるな」から、 「他の誰かに出来たなら、きみにも出来る」が彫り出せた。 でもこれはもっと彫り進めることができる。 生まれついての能力の差というものは多少はある。 過大評価されがちだけど、無くは無い。 例えば背が120cmしかない人がいつかNBAでプレーしたいんだと言った時に、 本当に頑張れば何でも出来るよというのは空々しく聞こえるだろう。 [2]
だから、卒業演説はこんなふうになるだろう。 「きみと同じ能力を持つ誰かができることなら、きみにもできる。 そして自分の能力を過小評価しちゃいけない。」 でも、よくあることだけれど、真実に近付こうとするほど 多くの言葉を費さなくちゃならなくなる。 かっこよく決まっている、でも正しくないスローガンを、 泥をかき混ぜるみたいにいじってみたわけだが、 これじゃあまり良いスピーチにはならなさそうだ。 それに、これじゃ何をすべきかってこともよくわからない。 「きみと同じ能力」って? 自分の能力って何だろう?
風上
この問題の解法は、反対側からやってみることだ。 ゴールを最初に決めてそこから逆算するんじゃなく、 より良さそうな状況に向けて少しづつ前に進んでゆくんだ。 成功した人の多くは実際にはそうやって成功したんだ。
卒業演説方式では、きみはまず20年後にどうなりたいかを決めて、 次にそこに至るには今何をすればいい、と考える。 ぼくが提案するのは逆に、将来のことは一切決めないでおいて、 今ある選択肢を見て、良さそうな選択肢がより増えるものを選ぶってことだ。
時間を無駄にしてない限り、実際に何をするかってことはあまり問題じゃない。 面白いと思えて、選択肢が増えるものなら何でもいい。増えた選択肢のどれを 選ぶかなんて後で考えればいいんだ。
たとえば、君が大学の1年生で、数学と経済学のどっちを専攻しようかと 迷っているとする。この場合はね、数学の方が選択肢がひろがるんだ。 数学からはほとんどどの分野へも進むことができる。数学を専攻していたら、 経済学の大学院へ進むのは簡単だろう。でも経済学を専攻して、 数学の大学院へ進むのは難しい。
グライダーを考えてみるといい。グライダーはエンジンを持っていないから、 風上に向かって進もうとすると高度を大きく失うことになる。 着陸に適した地点よりずっと風下に行っちゃったら、打てる手はひどく 限られるものになるだろう。風上にいるべきなんだ。 だからぼくは「夢をあきらめるな」のかわりにこう言おう。「風上をめざせ」。
でも、どうすればいい? 数学が経済学の風上だったとして、 高校生はそんなことを知っていなくちゃならないんだろうか。
もちろん知らないだろう。だから、風上を自分で見つけ出さなくちゃならない。 風上を知る方法のヒントをいくつかあげよう。 賢い人々と、難しい問題を探すことだ。賢い人々は自分達で固まりがちだ。 そういう集団を見つけたら、たぶんそれに参加する価値はある。 但し、そういう集団を見つけることは簡単じゃない。 ごまかしがたくさんあるからだ。
大学生になったばかりのときには、大学のどの学部もだいたい似たように見える。 教授たちはみんな手の届かない知性の壇上にいて、凡人には理解不能な論文を 発表している。でもね、確かに難しい考えがいっぱい詰まっているせいで 理解できないような論文もあるけれど、何か重要なことを言っているように 見せかけるためにわざとわかりにくく書いてある論文だっていっぱいあるんだ。 こんなふうに言うと中傷に聞こえるかもしれないけれど、 これは実験的に確かめられている。有名な『ソーシャル・テクスト』事件だ。 ある物理学者が、人文科学者の論文には、 知的に見えるだけの用語を連ねたでたらめにすぎないものがしばしばあると考えた。 そこで彼はわざと知的に見えるだけの用語を連ねたでたらめ論文を書き、 人文科学の学術誌に投稿したら、その論文が採択されたんだ。
一番良い防御は、常に難しい問題に取り組むようにすることだ。 小説を書くことは難しい。小説を読むことは簡単だ。 難しいということは、不安を感じるということだ。 自分が作っているものが上手くいかないかもしれないとか、 自分が勉強していることが理解出来ないんじゃないかという不安を 感じていないなら、それは難しくない問題だ。 ドキドキするスリルがなくちゃ。
ちょっと厳しすぎる見方じゃないかって思うかい。 不安を感じなくちゃダメだなんて。 そうだね。でもこれはそんなに悪いことじゃない。 不安を乗り越えれば歓喜が待っている。 金メダルを勝ち取った人の顔は幸福に満ちているだろう。 どうしてそんなに幸福なのかわかるかい。安心したからさ。
幸福になる方法がこれしかないと言っているんじゃないよ。 ただ、不安の中にも、そんなに悪くないものがあるって言いたいんだ。
野望
「風上をめざせ」というのは、現実には「難しい問題に取り組め」という ことだった。そして、君は今日からそれを始めることができる。 ぼくも、このことに高校にいる時に気付いていたらなと思うよ。
たいていの人は、自分がやってることを上手くできるようになりたいと 思う。いわゆる現実社会では、この要求はとても強い力なんだ。 しかし高校では、上手くできたからっていいことはあまりない。 やらされていることが偽物だからだ。 ぼくが高校生だった時は、高校生であることが自分の仕事なんだって思ってた。 だから、上手くやれるようになる必要があることっていうのは、 学校でいい成績をあげることだと思ってた。
その時のぼくに、高校生と大人の違いは何かと聞いたなら、 たぶん大人は生活のために稼がなくちゃならない、と答えていただろう。 間違いだ。ほんとうの違いは、大人は自分自身に責任を持つということだ。 生活費を稼ぐのはそのほんの小さな一部にすぎない。 もっと大事なのは、自分自身に対して知的な責任を取ることだ。
もしもう一回高校をやりなおさせられるとしたら、ぼくは学校を 昼間の仕事のようにあしらうだろう。学校でなまけるということじゃないよ。 昼間の仕事のようにやる、っていうのは、それを下手にやるってことじゃない。 その意味は、それによって自分を規定されないようにするってことだ。 たとえば昼間の仕事としてウェイターをやっているミュージシャンは、 自分をウェイターだとは思わないだろう [3]。 同じように、ぼくも、自分を高校生だとは思わないだろうね。 そして昼間の仕事が済めば、本当の仕事を始めるだろう。
高校時代を思い出して一番後悔することは何かって尋ねると、 たいていみんな同じ答えを返す。時間を大いに無駄にしたってね。 君が、今こんなことをしてて将来後悔することになるだろうなと 思っているなら、きっと後悔することになるよ[4]。
これは仕方ないと言う人もいる。高校生はまだ何もきちんと出来ないからってね。 ぼくはそうは思わない。高校生が退屈しているというのがその証拠だ。 8歳の子供は退屈しない。8歳の時には「ぶらつく」かわりに「遊んで」いたはずだ。 やってることは同じなのにね。そして8歳の時、ぼくは退屈することがほとんど 無かった。裏庭と数人の友達がいれば、一日中遊んでいることができた。
今振り返ってみれば、中学高校でこれがつまらなくなった理由は、 ぼくが他の何かをする準備が出来たからだった。 子供であることに飽きてきたんだ。
友達とぶらついちゃだめだなんて言ってないよ。 誰ともつき合わなかったら、仕事しかしないむっつりした小さなロボットに なるしかない。友達と出かけるのは、チョコレートケーキみたいなもんだ。 時々食べるからおいしい。毎食チョコレートケーキを食べていたら、 たとえどんなに好きだとしても、3食目には吐き気がしてくるだろう。 高校で感じる不安感はまさにそれ、精神的な吐き気なんだ [5]。
良い成績を取る以上に何かしなくちゃならないと聞いたら、 『課外活動』のことだと思うかもしれない。 でも君はもう、ほとんどの『課外活動』がどんなにばかげたものかを知っているよね。 チャリティの寄付集めは称賛されるべきことかもしれないが、 それは難しいことじゃない。 何かを成し遂げるってことじゃないからだ。 何かを成し遂げるっていうのは、たとえば上手く文章を書けるようになるとか、 コンピュータをプログラムできるようになるとか、 工業化以前の社会の生活が実際どんなものだったかを知るとか、 モデルを使って人間の顔を書くことを学ぶとか、そういうことだ。 この手の活動は、大学入試願書に一行で書けるようなものにはなかなかならない。
堕落
大学に入ることを人生の目標にするのは危険なことだ。 大学に入るために自分の能力を見せなくちゃならない相手っていうのは、 概して鋭いセンスを欠いている。多くの大学では、 きみの合否を決めるのは教授じゃなくて入学管理者[訳註1]で、 彼らは全然賢くない。知的社会の中では彼らは下士官だ。 きみがどれだけ賢いかなんて彼らに分かりはしない。 私立の進学校が存在することが、その証明になっている。
入試に受かる見込みが上がらないのに多額の金を学校に払う親はほとんどいない。 私立の進学校は、入試に受かるための学校であることを明示している。 でも立ち止まって考えてみたまえ。同じくらいの子供が、 ただ地域の公立高校だけに行くより私立の進学校に行った方が入試に受かりやすくなるってことは、 私立の進学校は入試のプロセスをハックできるってことだ [6]。
君達の多くは、今人生でやるべきことは大学入試に受かるように なることだと思っているだろうね。でもそれは、自分の人生を空っぽの プロセス、それを堕落させるためだけで一つの業界が存在しているほどの プロセスに押し込めていることになる。 シニカルになるのも無理ないよ。 君が感じている不快感は、リアリティTVのプロデューサーや タバコ会社の重役が感じているものと同種のものだ。 君の場合は給料をもらっているわけでもないのにね。
じゃあどうしようかね。 ひとつ、やっちゃいけないのは反抗だ。 ぼくは反抗した。それは間違いだった。 ぼくは、自分達の置かれた状況をはっきり認識していなかったけど、 なにか臭いものを感じていた。だから全部投げ出したんだ。 世界がクソなら、どうなろうと知ったことか、ってね。
教師の一人が試験対策のアンチョコを使っているのを見つけた時に、 ぼくはこれでおあいこだと思った。そんな授業でいい点数をもらって どんな意味があるっていうんだ。
今、振り返ってみれば、ぼくは馬鹿だったと思うよ。 これはまるで、サッカーで相手にファウルされて、おまえ反則しただろ、 ルール違反だ!と怒ってグランドから立ち去るようなものだ。 反則はどうしたって起きる。そうなった時に、冷静さを失わないことが重要だ。 ただゲームを続けるんだ。
きみをこんな状況に押し込めたのは、社会がきみに反則したからだ。 そう、きみが思っているように、授業で習うほとんどのことはクソだ。 そう、きみが思っているように、大学入試は茶番だ。 でも、反則の多くと同じように、悪意があってそうなったわけじゃない [7]。 だから、ただゲームを続けるんだ。
反抗は服従と同じくらいばかげたことだ。 どちらにしてもきみは他人に言われたことに縛られている。 一番良いのは、直角の方向に足を踏み出すことだ。 言われたからただやる、でもなく、言われたからやらない、でもない。 かわりに、学校を昼間の仕事にするんだ。昼間の仕事だと考えれば 学校なんて楽勝だよ。3時には終わるんだし、なんなら自分のやりたいことを 内職しててもいい。
好奇心
じゃあ、本当の仕事は何になるんだろう。 きみがモーツァルトでない限り、やるべきことはまずそれを探し出すことだ。 やりがいのあることって何だろう。すごい発想をする人達はどこにいるだろう。 そして一番重要なこと:自分は何に興味があるだろう。 「適性」という単語はちょっと誤解を招きやすい。 元から備わった性質のように思われるからね。 最も強い種類の適性とは、ある種の問題に対するどん欲な興味だけれど、 そういう興味は後天的に獲得するものが多い。
この考えの変化したものは、現代の文化においては「熱意」という言葉で 呼ばれている。最近、ウェイター募集の広告で「サービスに対する熱意」を 持った人を求めている、というのを見た。 本物の熱意は、ウェイターくらいじゃおさまらないものだ。 それに熱意という単語も良くない。むしろそれは好奇心と呼ぶのがいい。
子供は好奇心旺盛だ。ただ、ぼくがここで言っている好奇心は 子供のとはちょっと違う。子供の好奇心は広くて浅い。 ランダムに色々なことについて「どうして?」と尋ねる。 多くの人は、大人になるまでにこの好奇心が全部渇いてしまう。 これは仕方無いことだ。だって何についても「なぜ?」と尋ねていたら 何もできないからね。でも野心を持つ大人では、 好奇心は全部渇いてしまうのではなく、狭く深くなってゆくんだ。 泥の庭が井戸になるんだ。
好奇心を持っていると、努力が遊びになる。 アインシュタインにとっては、相対性理論は試験のために勉強しなくちゃならない 難しい式の詰まった本ではなかったはずだ。 それは解き明かしたい神秘に見えていただろう。 だからたぶん、彼にとって相対性理論を見出すことは、 今の学生が授業でそれを学ぶことほど、努力とは感じられなかったんじゃないかな。
学校で植え付けられる幻想の一番危険なものは、 素晴らしいことを為すには自分に厳しくなければならないというものだ。 多くの科目はあまりに退屈に教えられるから、 自律心が無いと全部に出席することなんてできやしない。 大学に入ってすぐに、ぼくはヴィドゲンシュタインの言葉を読んで びっくりした。彼は自律心が無くて、たかが一杯のコーヒーであろうと 欲しくなったら我慢することができなかったというんだ。
今、ぼくは素晴らしい仕事をした人を何人も知っているけれど、 みんな同じなんだ。自分を律するということをほとんどしない。 延ばせることはぐずぐず先に延ばすし、興味のないことをやらせようと しても全くの無駄だ。そのうちの一人ときたら、自分の結婚式に 出席してくれた人へのお礼の手紙を出してない。 結婚して4年経つのに。もう一人は、メールボックスに26000通のメールをため込んでる。
自律心が全くのゼロだったら困るよ。走りに行こうかなと思うくらいの 自律心は必要だ。ぼくも時々、走るのが面倒だなあと思うけれど、 一度走り出せばあとは楽しめる。そして何日か走らないと具合が悪くなる。 素晴らしい仕事をする人にとっても同じことなんだ。 仕事をしてないと具合が悪くなるし、仕事を始めるだけの自律心は 持っている。ひとたび仕事を始めれば、興味の方に圧倒されて、 自律心は必要なくなるんだ。
シェークスピアは偉大な文学を産み出そうと歯を食いしばって 勤勉に努力したって思うかい。そんなわけないさ。 きっと楽しんでいたはずだ。だから素晴らしい作品が書けたんだ。
いい仕事をしたいなら、必要なのは見込みのある問題に対する 大きな好奇心だ。アインシュタインにとっての一番大事な瞬間は、 マクスウェルの方程式を眺めて、これはどうなっているんだろうと 自問したところにあった。
生産的な問題に照準を合わせるのには長い時間がかかる。 本当の問題は何なのかを見つけるだけで何年もかかるかもしれないからね。 極端な例を言えば、たとえば数学だ。数学を嫌う人は多い。 でも学校で「数学」の名前でやらされていたことは、 実際に数学者がやっていることとはほど遠いんだ。
偉大な数学者のG. H. ハーディは、高校の時は数学が嫌いだったと 言っている。ただ他の生徒より高い点数をとれたから選択しただけだったと。 後になって、彼は数学が面白いということに気づいた。 質問に正しく答えることのかわりに、自分で問題を見つけるようになってからね。
ぼくの友達の一人は、学校で提出するレポートに苦しんでいると 母親が「それを楽しむ方法を見付ければいいのよ」っていうんだとぼやいていた。 でもそれが、やるべきことなんだ。世界を面白くする問いを見つけ出すんだ。 素晴らしい仕事をした人は、ぼくらと違った世界を見ていたわけじゃない。 ただこの世界の中の、ほんのちょっとした、でも不思議なことがらに気づいただけなんだ。
これは学問だけの話じゃない。「車はどうして贅沢品じゃなきゃいけないんだ? 車が日用品になったらどうなるだろう?」これがヘンリー・フォードの発した 偉大な問いだった。フランツ・ベッケンバウアー[訳註2]の問いはこうだった。 「どうしてみんな自分のポジションに留まってなくちゃならないんだ? ディフェンダーがシュートしたっていいじゃないか。」
現在
偉大な問いを発するのに何年もかかるとしたら、 いま、16歳の君は何をしたらいいだろう。 質問を見つける準備をするんだ。 偉大な問いは突然現れるんじゃない。徐々に頭の中に結晶してくるんだ。 それを結晶させるのは経験だ。だから、偉大な問いを見つけるのに 探し回ってもだめだ。「ぼくができる偉大な発見は何だろう」なんて ぼんやり考えててもだめだ。そんな質問に答えはない。答えがあるなら 既に見つけてるはずだからね。
大きなアイディアが頭に浮かぶようになるには、大きなアイディアを 追い求めるんじゃなく、自分が興味を持つことにたくさんの時間を費すことだ。 そして頭を柔軟に開いておいて、いつでも大きなアイディアが巣を作れるように しておくんだ。アインシュタイン、フォード、ベッケンバウアー、 みんなこのレシピを使ったんだ。彼らはみな、ピアニストがピアノの鍵盤を 知りつくしているのと同じように、自分の仕事を知りつくしていた。 だから何かひっかかりがあれば、すぐにそれに気づけるという自信を持っていたんだ。
今、何を、どうやってすればいいかって? まず興味の持てるプロジェクトを選ぶことだ。ある分量の資料を研究するとか、 何かを作ってみるとか、何かの問題の答えを見つけてみるとか。 ひと月以内で終わらせられるようなプロジェクトがいい。 そして、ちゃんと終わらせられる手段があるようなものにする。 少しは頑張らなくちゃならないようなものがいいけれど、ほんとうに少しだけでいい。 特に最初はね。もし二つのプロジェクトのどっちを選ぶか迷ったら、 面白そうな方を選ぼう。失敗したら、もう一方を始めればいいんだ。 これを繰り返す。そうすると次第に、ちょうど内燃機関みたいに、 このプロセスが自分で走り出すようになる。一つのプロジェクトが次の プロジェクトを生み出すようになるんだ。(そうなるまでには何年もかかるけれどね。)
学校に受けがよさそうというだけでプロジェクトを選ぶのは良くない。 特にそれで制約を受けたり、それが課題のように感じられるならね。 友達を巻き込みたかったら声をかけてもいいだろう。 でもあまりたくさんでない方がいいし、ただ群れたがるだけの人は避けたほうがいい。 友達は士気を保つのにいい (一人だけで始められるベンチャー企業はほとんどない)。 でも秘密にやることにも利点はある。秘密のプロジェクトというだけで 何かわくわくするものがあるし、失敗したって誰にもばれないんだから、 大胆な挑戦ができる。
プロジェクトが君の将来目指すものにあまり関係なさそうだったとしても、 心配することはない。目指すものに到達する道っていうのは、君が思うより ずっと大きく曲がりくねるものなんだ。プロジェクトをやることで、道は伸びてゆくんだ。 一番大事なのは、わくわくして取り組むことだ。そうすれば経験から学ぶことができるからだ。
人に言えないような動機だからって、それを抑えないようにしよう。 欲望の中で最も強いもののひとつは、他人よりうまくやりたいということだ。 ハーディはその気持ちで数学を始めたと言ったが、 それは別に珍しいことじゃないと思う。それを公に認める人は少ないけれど。 他の強い動機としては、知らなくてよいとされていることを知りたいとか、 やっちゃいけないとされていることをやりたいという欲望がある。 大胆な行動をしたいというのも、これに近い欲望だ。 16歳の生徒が小説を書けるなんて多くの人は思っていない。 そういうことに挑戦すれば、どんな結果であっても、プラス点になるはずだ。 本当に大失敗したところで、周囲の期待より悪いってことはないわけだからね [8]。
悪いモデルに気をつけよう。特に怠けることを肯定するようなものにね。 ぼくは高校生の時に、有名作家がやっているような「実存主義的」短篇小説を いくつか書いたことがある。そういうものっていうのは、 読んで面白い小説を書くよりも、たぶん簡単だ。 これは危険信号なんだ。そのことを知っているべきだった。 実際、ぼくが書いたものはどれも退屈だった。 ただ、有名作家みたいに知的で厳粛なものを書くっていうことがすごいことに 思えてただけだったんだ。
今はもう十分に経験を積んだから、そういう有名作家が本当は全然たいしたこと ないってことがわかる。実は有名人のほとんどはそうなんだ。 短期的に見ると、ある仕事の質っていうのは有名度とはほとんど関係がない。 今思えば、ぼくは何かカッコいいことをしたいなんて焦らないで、 ただやりたいことをやってればよかったはずなんだ。 それが実は、カッコいい仕事への道なんだ。
多くのプロジェクトで大事な要素は、もうほとんどそれ自体が一つの プロジェクトになるようなものなんだが、良い本を見つけることだ。 ほとんど全ての教科書はダメだ[9]。 だからたまたま手近にあった本を見て、それがその分野の全てだとは 思わないほうがいい。ごくわずかの良い本を積極的に探さないとならない。
大事なことは、外に出てなにかを為すことだ。黙って座って教えられるのを 待つんじゃなく、自分から踏み出して学ぶんだ。
入試の試験官に自分の人生を合わせる必要なんてない。 自分の好奇心に合わせて人生を作っていけばいい。 野心的な大人はみんなそうしてる。それに、君は待つ必要はないんだ。 大人になるまで待たなくてもいい。だって、ある年齢になったり、 どこかの学校を卒業した時にぱちんと大人になるようなスイッチなんて ないんだからね。自分の人生に責任を持つことを決心したその時に、 君は大人になるんだ。何歳だってできることだ [10]。
ばかげだ話だと思うかい。君はこう思うかもしれないね。 「ぼくは未成年だし、金もないし、親と一緒に住まなくちゃならないし、 一日中大人に言われたことをやらなくちゃならないのに!」ってね。 でもね、大人になって仕事をしていたって、やっぱり似たような 面倒な制限がいろいろあるものさ。でもやる人はちゃんとやり遂げる。 子供であることが制限の多いことだって思ってるなら、子供を持ったら どんなことになるか考えてごらん。
大人と高校生の唯一の違いは、大人はものを成し遂げる必要があることを 知っていて、高校生はそうでないということだ。 多くの人々は、それをだいたい23歳くらいの時に知る。 でも、こっそりいまから始めることを、ぼくは君達に勧めたい。 さあ、始めよう。そうすれば、君達は史上初めて、高校の時に時間を無駄にしなかったと 言える世代になるかもしれない。
原註
[1] ぼくの友人の医者は、 これでも医者の仕事が本当はどんなものかを知ることはできないだろうと言っている。 「どれだけ時間を費して、ほとんど自分の時間を持てない何年もの訓練を受けて、 そしていつだってポケベルで呼び出されることがどんなに煩わしいかなんて、 わかるわけないよ。」
[2] 彼が出来る一番の方法は、 おそらく独裁者になってNBAを脅して自分をプレイさせることだ。 現実的に、それに一番近い立場は労働長官になることだ。
[3] 昼間の仕事というのは、 本当の仕事(バンドで演奏したり、相対性理論を発明したり)に時間を費せるように、 生活費を稼ぐためにやるような仕事のことだ。
高校を昼間の仕事だと思うことは、生徒の何人かにとっては むしろ良い成績をとるのに役立つかもしれない。 授業をゲームだと思えば、内容自体に意味が無くてもがっかりすることはないだろう。
授業がどんなにひどくても、それなりの大学に入るには良い成績は 取っとかないとならない。そのこと自体は、やる価値のあることだ。 近年では、賢い人々の集団を見つけるのに大学は良い場所だからだ。
[4] 二番目に大きな後悔は、重要でないことを気にしすぎていたことだ。 特に、他の人にどう思われているかってことだね。
より正確に言えば、ランダムな人々にどう思われているかを気にするってことだ。 大人だって人にどう思われるかを気にするけれど、誰に思われるかって 点ではより選別していることが多い。
ぼくはだいたい30人くらい、意見を気にする友人がいる。 残りの世界の意見はぼくにとってはどうでもいい。 高校の問題は、まわりに居る人間が、自分の判断ではなくて 年齢と地域がたまたま一緒だったというだけで決まることだ。
[5] 時間を無駄にする 一番の要因は、気を散らすものだ。気を散らすものが無ければ、 自分が何もしていないということにすぐ気づいて、落ち着かなくなるはずだ。 どれだけ余分なことに気を取られてるかを知るには、こういう実験をしてみるといい。 週末にある程度の時間をとって、一人で座ってただ考えるんだ。 ノートを持っていてそれにメモを取るのはいい。けれど、他のものは 全て絶つ。友達も、テレビも、音楽も、電話も、インスタントメッセンジャーも、 メールも、ウェブも、ゲームも、本も、新聞も、雑誌も無しだ。 1時間もすれば、ほとんどの人は何か気を散らすものが欲しくてどうしようもなく なるはずだ。
[6] 私立の進学校が 入学審査官をだますためだけのものだって言うつもりはないよ。 普通は、より良い教育もしてくれる。でもこういう思考実験をしてみたまえ。 私立の進学校が、今と同じ質の教育をしてくれるんだが、そこに行くと ごくわずか (.001) の確率で入試に受かりにくくなるとする。 そしたらどれだけの親が子供を私立の進学校に行かせようとするだろうね。
もちろん、私立の進学校に行った子供はより多くのことを学んだのだから、 より大学の合格者としてふさわしいという議論はできる。 でもそれは経験的には誤りだ。 一番素晴らしい高校だって、そこで教えてくれることなんて 大学で学ぶことに比べたら誤差の範囲だからだ。 公立高校を卒業した子供は入学直後には多少の不利はあるかもしれないが、 2年生になればむしろリードするようになる。
(公立高校の生徒の方が賢いって言っているんじゃなくて、 どんな大学にも公立高校出身の学生がいるってことを言っている。 私立の進学校の方が入試に受かりやすいという前提を認めれば、 公立高校出身で試験に受かった生徒の方が平均的に高い能力を持っているということになる)
[7] どうして社会が君に ファウルするんだろう。その主な原因は、無関心だ。 高校を良くするという外圧が全く無いからだ。 航空管制システムは優れたシステムだが、それは そうでなくちゃ飛行機が落ちてしまうからだ。 企業は製品を作らないとライバルに客を取られてしまう。 でも学校がダメになっても飛行機は落ちないし、競争相手もいない。 高校は邪悪なのではなく、ただランダムなんだ。 でもランダムであることは、かなり悪いことだ。
[8] それに、もちろんお金という動機もある。 高校ではこれはあまり関係無いだろう。人が欲しがるようなものを 作れることは少ないからね。でも多くの偉大なものごとというのは、 お金を稼ぐために為された。 サミュエル・ジョンソンは、「金のため以外にものを書くやつなんて馬鹿だ」と 言っている。(多くの人は、彼は誇張してるんだと思いたがるけどね)。
[9] 大学の教科書だってひどいものだ。 大学に入ってみれば、教科書の多くは(いくつかの輝ける例外を除いては) その分野の第一人者が書いたものじゃないことがわかるだろう。 大学の教科書を書くのはあまり面白い仕事じゃないし、 お金のために書かれることが多い。面白くない仕事なのは、 出版社が色々注文をつけて来るからで、自分がやってることを 理解できない人間に注文をつけられるのは最悪なことだからだ。 高校の教科書では状況は もっと悪いらしい。
[10] 教師はいつも「大人のように振る舞いなさい」と君達に言っているかもしれない。 でも、本当に君達がそうすることを望んでいるかは怪しいものだ。 君達は騒がしくてまとまりが無いかもしれないけれど、 大人に比べたらずっと素直だ。 君達が本当に大人のように振る舞い出したら、それは例えば 大人達を君達の体に移し変えたようなものになるだろう。 FBIエージェントやタクシーの運転手や記者達が、 トイレに行くのにいちいち許可を得る必要があって、しかも一度に一人しか いけないなんて聞いてどういう反応をするか想像してごらん。 君達が教えられたことなんてひとつも守られないはずだ。 もし本当に大人達が高校に入ることになったら、最初にやることはきっと 組合を作って校則の改正を教師達と談判することだろうね。
このエッセイの下書きに目を通してくれた、Ingrid Bassett、Trevor Blackwell、 Rich Draves、Dan Giffin、Sarah Harlin、 Jessica Livingston、Jackie McDonough、Robert Morris、Mark Nitzberg、 Lisa Randall、Aaron Swartz、 それに、高校時代について私に語ってくれた他の多くの人々に感謝します。
訳註
訳註1:
入学管理者:原文admission officer。 米国の大学は入試一発ではなく、大学ごとのAdmission Officeが 志願者の高校での活動や成績、統一テストの結果などを勘案して合否を決定する。
訳註2:
フランツ・ベッケンバウアー Franz Beckenbauer:サッカー選手、監督。 「リベロ」のポジションを確立した。
好きなことをやるには
ポール・グレアムのエッセイ。翻訳をコピペして、英文部分・訳注を削除。素晴らしい文章なので保存用。
naoya_t memo @deprecated: 2006年01月19日 アーカイブ How to Do What You Love 2006年1月 January 2006
好きこそものの上手なれ。 別に、耳新しい言葉ではない。 我々はこれを4単語に凝縮して言ってきた。「Do what you love(自分が一番好きなことをやりなさい)」と。 だがこれでは言葉足らずで、大事なところがちゃんと伝わらない。 好きなことをやると言っても、それは一筋縄で行くものではない。
そもそも、これは我々の多くが子供時代に学んできたこととは異質の発想だ。 私が子供の頃には、仕事と楽しみは本質的にまったく正反対のことであるかのように思われた。 暮らしの中には2つの状態(state)があった。 時々大人たちに何かさせられる。これが「仕事」。 残りの時間にやりたいことができる。これが「遊び」。 時には大人たちがやれと言ってくるものが楽しかったりもしたし、同様に、時には遊びが楽しくなかったりもした。転んで怪我した時とか。 でも数えるほどしかない異常なケースを除いて、仕事はだいたい「楽しくないもの」とされてきた。
仕事が楽しくないのは偶然だとは思えなかった。 学校は退屈だった。なぜなら大人になって仕事をするための準備の場だからだ。そうほのめかされていた。
子どもの頃の世界は、2つのグループに分断されていた。大人と子供だ。 大人たちは、呪われた種族か何かであるかのように、働かなければならなかった。 子供たちは働かなくてもよかったものの、学校には行かなければならなかった。 学校は仕事の希釈バージョンであり、僕らが本物の仕事に備えるためのものであった。 学校が嫌いだ、と僕ら子供が言えば、大人の仕事はもっとひどいぞ、学校なんか楽勝だと大人たちは口を揃えた。
とりわけ教師たちは、仕事は楽しくないものだ、と皆そう信じて疑っていないようだった。 それは驚くにはあたらない。だってほとんどの教師にとって仕事はつまらなかったのだから。 どうして、ドッジボールをする代わりに僕らは州都を暗記しなくちゃいけなかったのか? 同じ理由で、彼ら教師も、ビーチに横たわる代わりにガキどもを見張らなくちゃいけなかったんだ。やりたいことなどできなかった。
小さな子供たちに彼らのやりたいことをやらせた方がいい、と言っているのではない。 子供たちはいくつかの物事を行うようにできているはずだ。 しかし、子供たちに退屈な仕事をさせるときには、退屈さは仕事に常について回る性質ではないこと、そしてまさに、今つまらない事をやらなければならないのは、後でもっと面白い事をやれるようにするためであることを子供たちに言っておくのが賢いだろう[註1]。
9歳か10歳の頃だったか、父が私にこう言ったことがある。 大きくなったら何でもなりたいものになれるんだよ、それを楽しめるなら、と。 あまりにも変わった話だったから、私はそれを正確に覚えている。 乾いた水を使え、とでも言われたようなものだった。 父の言葉の意味について私もいろいろ考えたが、まさか父が、働くことが文字通り、遊んでいるときに楽しいのと同じ意味で、楽しいことであり得る、と言おうとしていたのだとは思いもしなかった。 そのことを理解するには年月を要した。
仕事 Jobs
高校に上がる頃には、実際の仕事についての展望が見え始めていた。 大人たちが時々自分たちの仕事の話をしに来てくれたり、あるいは大人たちの仕事場を我々が見に行ったりもした。 いつでも、大人たちは自分の仕事を楽しんでいる、ということになっていた。 今思い返してみれば、そのうちの一人は本当に楽しんでいたかもしれないと思う。 自家用ジェットのパイロットをやっていた人だ。 でも、銀行の支店長が自分の仕事を楽しんでいたとは思わない。
大人たちがあたかも自分たちの仕事を楽しんでいるかのように演じていた。主な理由はおそらく上流中産階級の慣習から来るもので、たぶんそうする建前になっていたのだと思う。 自分の仕事を嫌悪していると口にするのは、単に出世に響くというだけではなく、社会的な無作法にあたるのだろう。
どうして自分がしている事を好きなふりをするのが慣例になっているのだろうか。このエッセイの最初の一文(好きこそものの上手なれ)がそれを説明している。 何かをうまくやるためにはその何かのことが好きでないといけないと言うのなら、成功して頂点にいる人たちは皆、自分のしていることが好きだということになる。上流中産階級のこの慣習はそこから来ているのだ。 アメリカじゅうの家という家にはこんな椅子があふれている。 持ち主はそうと知りもしないのだが、これは250年前にフランス国王のためにデザインされた椅子のn次の模造品だ。 ちょうどそれと同じように、仕事についての人々の慣習的な態度は、素晴らしい事を成し遂げた人々がとる態度のn次の模造品なのである。人々はそうと気づいていないのだが。
なんという疎外(alienation)のレシピだろう。 自分が何をやりたいのかを考える年齢に達するまでに、ほとんどの子供は「自分の仕事を愛する」ということについて全く誤った考えをもたされてしまう。 学校は子供たちに、仕事は不愉快な義務であると見なすようにと教育してきた。 職につくということは学業よりさらに骨の折れることだ、と聞かされる。 それなのに大人たちは、自分たちのやっている事が好きだと言い張る。 子供たちが「自分はこの人たちとは違う。自分はこの世界に向いていない」と思ったとしても彼らを責められまい。
実際、子供たちは三つの嘘を聞かされてきた。 学校でこれが仕事だと教わってきた物事は実は本物の仕事ではない。 大人の仕事は実は(必ずしも)学業よりひどいわけではない。 周りの大人の多くが自分の仕事が好きだと言うが、実は彼らは嘘をついていた。
最も危険な嘘つきは、子供たち自身の両親かもしれない。 家族に高い生活水準を享受させるためにつまらない仕事を選ぶと、実際そうしている人は多いのだが、仕事はつまらないものだという考えを子供たちに感染させてしまうおそれがある。 [註2] この場合に限っては、両親はむしろ身勝手であった方が子供にとっては良いのかもしれない。自分の仕事を愛するという手本を示せる両親は、子供にとっては高価な家よりもよほど助けになるだろう。
大学に入った後でようやく、仕事についての観念が、生計を立てるという考えから抜け出すことができた。 その後、重要な問題はどうやってお金を作るかではなく、何に取り組むかということになってきた。 理想的にはこれらは重なり合うものだが、(特許庁におけるアインシュタインのような)いくつかの華々しい境界的事例が、これらが同一の問題ではないことを示している。
仕事の定義はいまや「飢え死にすることを避けながら、世界に対し何らかの独自の貢献を行うこと」になった。 しかしそれまでの長い年月の習慣から、私の仕事観の中に依然として苦痛が大きな割合を占めていた。 仕事は依然として規律を必要としているように思える。 難問解決だけが大きな成果を生み出すが、難問解決が文字通り楽しいなんてことは有り得ないのだから。 それに取り組むために多大な努力を強いられることは間違いないのだ。
何か痛みを伴うはずだと思っていたら、間違ったことをしていたとしてもそれに気づくとは考えにくい。 大学院での私の経験はそういうことに尽きる。
上限と下限 Bounds
好きなことをやれっていうけれど、一体どのくらい「好き」だったらいいのだろうか? それが分からないと、仕事探しをどの辺りでやめたらいいのかも分からない。 (このくらい好きならいいや、と)「好き」の程度を低く見積もりすぎていると、実際多くの人がそうなのだが、仕事探しを早すぎる段階でやめてしまうことになりがちだ。 そして結局両親が選んだ仕事をすることになるか、金や名声を追い求めるか、あるいは惰性で流されるままに何かの仕事についてしまうのがオチだ。
まずは上限。仕事がどのくらい好きなら十分だろうか。 「自分が好きなことをやる」というのは今この瞬間にいちばんやりたいことをするという意味ではない。 アインシュタインにだって多分、コーヒーを一杯飲みたいけれど、先ずは今やってることを済ませてからと自分に言い聞かせたことが何度もあったに違いない。
仕事よりもやりたいことなんて何もない、というくらいに自分の仕事が大好きな人たちの話を読んだとき、私はとまどいを覚えたものだ。 そこまで好きになれるような仕事なんて、どんな種類であれ私にはひとつも思い当たらなかった。 こんな選択肢があったとしよう。 (a)今から1時間何かの仕事をする (b)ローマに瞬間移動して1時間散策する 仕事をする方を自分が選びたくなるような仕事って何かあっただろうか。 正直なところノーだ。
しかし実際はほとんど誰もが、いつ何時であれ、難問に取り組むぐらいならカリブ海を漂流していたり、セックスをしたり、美味しいものを食べたりしていた方がいいと思うことだろう。 「自分が好きなことをする」ということに関する法則は、ある程度の長さの時間を前提としている。 それは「今この瞬間に一番幸せになれることをする」という意味ではなく、 たとえば1週間とか1ヶ月といったような、すこし長めの期間で見て一番幸せになれるようなことをする、という意味だ。
非生産的な快楽には、いずれは飽きてしまうものだ。 しばらくすると、ビーチに横になっているのにも飽きてくる。 幸せなまま居続けたいのなら、何かやらなくてはいけない。
そして下限だが、最低条件として、どんな非生産的な快楽にも負けないほど自分の仕事が好きでないといけない。 「余暇」という概念が何かの間違いではないかと思える程度に、自分のしていることを好きでないといけない。 自分の時間をすべて仕事に使えと言っているのではない。 働いていいのは、くたくたになってあれこれしくじり始める手前までだ。 仕事の後で、何か他のことをやりたくなる。ばかみたいな事でもいい。 でも、このひとときをご褒美だと思ったり、仕事に費やした時間をご褒美のために堪えた苦痛だと思ったりはしない。
最低ラインをそこに設定したのは実際上の理由からだ。 もしあなたの仕事があなたの好きなことでないのなら、億劫で後回しにしがちになるだろう。 仕事するために、自分を無理やり奮い立たせないといけないだろうし、そうしたところで結果は極めて粗末なものになるだろう。
幸せでいるためには、ただ楽しめるだけでなく、すごいと思うような事をしていないといけないと思う。 最後に、「すごい!これってかなりクールだ」と唸る位でないといけない。 何かを作らないといけないという意味ではない。 ハンググライダーの乗り方を覚えたり、外国語を流暢に話せるようになったりするのだって、少なくともしばらくの間は「すごい!これってかなりクールだ」と唸るには十分だろう。 ここでなくてはならないもの、それはテストだ。
基準に達していないと思うもののひとつが、読書だ。 数学や自然科学(hard sciences)分野のいくらかの本を除けば、どれだけちゃんとその本が読めているかを測るテストはない。読書を仕事のように感じることがめったにないのはそのためだ。 生産的だと感じるためには、読んで得たもので何かしなければならない。
私が一番いいと思っているのは、Gino Lee氏が教えてくれたテストだ。 友達を思わず「すごい」と唸らせるようなことをやってみるのだ。 でも、この方法がうまく行くようになるのは22歳を過ぎてからだろう。 というのも、ほとんどの人はそれ以前には、友達を抽出するにしてもサンプル数が十分ではないからだ。
名声の誘惑 Sirens
友達以外の意見をあれこれ気にするのはやめたほうがいいと思う。 名声を気にしてはいけない。名声というのは、世間のその他大勢の意見だ。 自分が一目置くような判断をする人たちから意見がもらえるのに、知りもしない人たちの意見を考慮することが何のプラスになろうか?
そう言うのは簡単だが、実際そうしようと思うと難しい。特に若いときには。 名声は強力な磁石のようなもので、「私はこれが楽しい」という信念さえもねじ曲げる。 名声は、自分が本当に好きなことではなく、こんなことを好きになりたい、という方をさせようとする。
それが、「小説を書いてみよう」みたいなことを人々に思わせているものの正体だ。 みんな小説を読むのが好きだ。 小説を書いている人たちがノーベル賞をもらっている、ということに注目する。 そしてこう考える。小説家になるのに勝ることなんてあるだろうか、と。 しかし、「小説家になる」という構想を好きになるだけでは不十分だ。上手く書けるようになるつもりでいるなら、実際の執筆作業が好きでないといけない。精緻な虚構を組み上げていくのが好きでないといけない。
名声といっても、ひとの思いつきが化石化したものにすぎない。 何であれ、十分なほどにうまくやれば、それが名声のあるものになるのだ。 今日では名声があると我々が思っているものでも、最初は全く名声とは無縁だったという事例はいくらでもある。 すぐに思い浮かぶ例はジャズだ・・・まあ、どんな既存の芸術形態でもほとんどそうなのだが。 だから、ただ好きなことをやろう。名声は放っておけば何とかなる。
名声は、野心家にとっては特に危険なものだ。 野心的な人たちの時間を雑用で浪費させたければ、目の前に名声をぶらさげてやればいい。 それが、人に講演を頼んだり、序文を書いてもらったり、委員を務めてもらったり、部長になってもらったり等々のためのレシピだ。 単に名声を伴う仕事を避けるというだけでも、良い指標になるだろう。 つまらない仕事でなかったら、そもそも名声で箔をつける必要はなかったはずだからね。
同様に、素晴らしいと思う仕事が2つあって、うち1つが名声を伴う仕事だとしたら、選ぶべきはおそらくもう1つの方だ。 何を素晴らしいと思うかは、常にわずかながら名声に影響されてしまうものだ。 だから、2つの仕事がどちらも優劣つけ難いように思えるなら、名声の少ないほうの仕事をおそらくより純粋に素晴らしいと思っているのだ。
人々が道を踏みはずすもう一つの大きな要因は、お金だ。 お金そのものはそれほど危険なものではない。 電話勧誘や売春、人身被害訴訟のように、いい金にはなるが人から蔑まれているような仕事の話には、野心的な人たちは乗らない。 その種の仕事は、結局は「飯にありつければそれでいい」と思っている人たちがやることになる。(ヒント:その仕事をしている人たちがこんな事を言うような分野は避けよ。) 危険なのは、お金が名声と結びついた時だ。例えば顧問弁護士とか、医薬系の仕事のように。 比較的安全で、華やかな未来が約束され、基本的レベルの名声をある程度自動的に伴うような仕事は、こうした仕事の実情をあまり考えたことのないような若者には危険なほどに魅惑的に映るものだ。
人々が自分のしていることが本当に好きかどうかは、 彼らがたとえお金を貰わなかったとしてもそれをやっただろうか、と訊いてみればわかる。 顧問弁護士たちの中に、今やっている仕事を余暇にタダでやれと言われて、しかも生計を立てるために昼間はウェイターの仕事までしながらやる奴がどれだけいるだろうか。
このチェック方法は、二つの学問分野のどちらかを選びたい場合に特に役に立つ。 この観点に立ってみると、分野間の違いは大きいからだ。 優れた数学者の多くは、仮に数学の教授職がなかったとしても数学をやるだろう。 一方で、この対極にある分野においては、教職が得られるかどうかが動機となる。 だれしも広告代理店で働くよりは英文学の教授になった方がいいと思うだろうし、論文を発表するのはこの手の仕事を獲得するための手段なのだ。 数学科がなかったとしても数学をやる人間はいなくならないだろうが、 しかしコンラッドの小説におけるジェンダーとアイデンティティについて何千何万もの退屈な論文が生み出されるのは、英文学専攻の存在、そしてそれがある故の英文学教授の職の存在があるからだ。 こんなことを楽しみのためにやる奴なんていない。
両親の助言は、お金のことばかり言いすぎる傾向がある。 「本人は小説家になりたいと思っているけれど、両親は医者になってほしいと思っている大学生」のほうが 「本人は医者になりたいと思っているけれど、両親は小説家になってほしいと思っている大学生」より沢山いる、といってもいいだろう。 子供たちは、自分たちの親のことを「実利主義的」だと思っている。でも必ずしもそうとは限らない。 親たちは皆、自分の子供のことには自分自身のこと以上に保守的になる傾向があるが。それは単に親として、子供とは報酬以上にリスクを共有しているせいだ。 8歳の息子が高い木に登ると言い出したり、あるいは10代の娘が地元の悪ガキとデートすると言い出したとしても、一緒にワクワクしたりすることはないだろう。 しかし息子が木から落ちたり、娘が妊娠させられたりしたときには、そうした結末に対処せざるを得ない。
規律 Discipline
我々の道を誤らせるようなそんな強い力があるのだから、 やりたい仕事を見つけるのが難しいと我々が思うのも不思議ではない。 ほとんどの人は子供の頃に「仕事=苦痛」という公理を受け入れ絶望してしまった。 そこから抜け出した者たちもほぼ全員が、名声や金に誘惑され座礁してしまった。 それでもやりたい仕事を見つけられた人が一体どのくらいいるだろうか。 数十億人のうち、おそらく二、三十万人といったところだろう。
好きな仕事を見つけるのは難しい。 なし得た人間がそんなに少ないのだから、難しいに違いない。 だから、この作業を甘く見てはいけないし、まだ見つけられない人も、気を落とさないでほしい。 実際、現状に不満であることを認めているなら、まだそれを認められずにいる多くの人たちより一歩先んじている。 あなたにとって軽蔑したくなるような仕事を楽しめと言ってくるような同僚に囲まれているなら、同僚たちは自分に嘘をついている公算が大だ。絶対にとは言わないが、でもおそらくは。
素晴らしい仕事をするのに、規律は人が思うほど必要なものではない。 素晴らしい仕事をするには、それをするのに無理をする必要がないほどに好きなことを何か見つければいいからだ。 だが好きな仕事を探すには、通常規律が必要だ。 12歳の時に自分のしたいことがわかっていて、レールが敷いてあるかのようにそれに沿って進んでいくだけ、という幸運な人もいるが、そのようなケースは例外だ。 素晴らしい仕事をする人々は大抵、ピンポン球が描く軌跡のようなキャリアの持ち主だ。 学校でAを勉強し、中退してBの職につき、趣味でCを始めてみたらそれで大いに有名になった、といった具合だ。
転職は時として行動力の証であり、時として怠惰の証である。 あなたは落伍しようとしているのだろうか、それとも新たな道を果敢に切り開こうとしているのか? 自分ではわからないということも多い。 後に素晴らしい仕事をする人たちの多くは、自分にぴったりの仕事を探しながらも、最初の頃は期待はずれな仕事もいくつか経験しているようだ。
何か、自分を正直に保つために使える方法はないだろうか。 1つは、いまやっていることがなんであれ、良い仕事をするように努めることだ。たとえその仕事が好きではなくても。 そうすれば少なくとも、仕事に対する不満を怠惰の言い訳に使うこともなくなるだろう。 それに何より、物事をより良く行う習慣がつくことだろう。
もう1つは、常に何かを産み出すということだ。 例えば、小説家になるつもりでいて、今はとりあえず食べてゆくための仕事をこなしているとする。さて、何か産み出しているかい?たとえヘたくそでも、何ページづつか、小説を書いているかい? 何かを産み出しさえすれば、いつか書こうと思っている偉大な小説の幻影にただ酔いしれているばかりではなくなるだろう。自分が実際に書いている明らかに駄作だと分かる代物によって、その展望は打ち砕かれることになるのだ。
「常に何かを生み出す」というのは、好きな仕事を探すための経験則でもある。 そう心に決めると、一般にやるべきだとされていると自分で思い込んでいる物事から自然に離れて、本当に好きなことの方に引き寄せられてゆくのだ。 「常に何かを産み出す」ことが、雨水が重力を頼りに屋根にあいた穴を見い出す如く、ライフワークを見つけてくれることだろう。
もちろん、自分のやりたい仕事を見つけたからといって、実際にその仕事に就けるとは限らない。それは別の話だ。 あなたが野心家なら、この二つは分けて考えるべきだ。 「自分が何をやりたいのか」という観念を「自分にできそうなこと」に汚染されないためには意識的に努力する必要がある。
この二つを分けておくのは痛みを伴う。なぜならこの二つの間にギャップがあることを認めるのはつらいことだからだ。 だから多くの人は、予防線を張るべく自分の期待値をあらかじめ引き下げておく。 例えば、誰でもいいから街を行く人々に「レオナルド(ダ・ビンチ)のような絵が描けるようになりたいか」と尋ねたら、ほとんどの人は、「そんなの私には無理ですよ」とかそれに類する答えを返してくるだろう。 これは事実というよりはむしろ、本人の意思表明である。私はやってみようとは思わない、という意味だ。 というのも、実際には、もし街を歩いている人の中から無作為に1人選んで連れてきて、何とかしてその後20年間絵を一生懸命描いてもらえたなら、その人は驚くほど上達するだろうからだ。 しかしそれには大いなる精神的な努力が必要とされるだろう。何年もの間、毎日毎日自分の失敗に目を向けることを意味するからだ。 だからこそ、ひとは自分を守るために、「自分には無理だ」と言うのだ。
これに関連して、よく耳にする言葉がもうひとつある。「みんながみんな自分ののやりたい仕事ができるわけじゃない」すなわち、誰かが嫌な仕事をしなければならないのだ、と。 果たしてそうなのか?どうやったらそんな仕事をさせられると言うのか? アメリカでは、人に嫌な仕事を強制する唯一の方法は徴兵制で、それだってかれこれ30年間発動されたことがない。 我々にできるのはせいぜい、人々に金と名声を与えて嫌な仕事をするようにけしかけることぐらいだ。
それでも誰もやりたがらないような仕事があるなら、社会はそういった仕事なしでやって行くしかないということではないだろうか。 召使という業種で起こったのはまさにそういうことだ。 何千年もの間、それは「誰かがしなければならない」仕事として誰もが認める実例だった。 しかし20世紀半ばに召使は豊かな国々では事実上消滅し、金持ちはもう召使なしでやって行くしかなくなった。
だから、「誰かがしなければならない」ような仕事がこの世にあるうちは、あらゆる仕事について「この仕事は間違っている」と誰かが言う可能性があるだろう。 不快な仕事のほとんどは自動化されるか、進んでやる者が誰もいなければ誰もやらないままになるかのいずれかだろう。
二つの道 Two Routes
一方、「みんながみんな自分ののやりたい仕事ができるわけじゃない」という言い分には、別の含みがある。そしてそれもまた、全くもっともな事なのだ。 人は食べていかなければならない。そして、好きな仕事でお金をもらうのは難しい。 これらを達成する道は2つある。
オーガニックルート:地位が上がるにつれ、好きではない仕事を減らしながら好きな仕事の割合を徐々に増やしていく。
二足のわらじルート:好きなことをするのに必要なお金を稼ぐために、好きではないことをする。
オーガニックルートの方がより一般的だ。良い仕事をする人たちは自ずとこの道を辿っていく。 建築家は若いうちは、自分が取れる仕事なら何だって取らなければならない。 でも、そうした仕事うまくこなしていくうちに少しずつ、プロジェクトを取捨選択できる地位に昇っていく。 このルートの不利な点は、進みが遅く、かつ不確実であることだ。 偉くなって終身在職権を手に入れたとしても、本物の自由を享受できるとはいえない。
二足のわらじルートには、いわゆる「昼間の仕事」すなわち毎日決まった時間に働いてお金を稼ぎ、余った時間で好きな事をやるという方法から、もう二度とお金のために働かなくてもよくなるまで何かの仕事をする方法に至るまで、お金のために一度に働く期間の長さに応じた幅広い変種がある。
二足のわらじルートはオーガニックルートほど一般的ではない。それは、慎重な選択が求められるからだ。それに、伴う危険も大きい。 ひとは年を取れば取るほどお金がかかるようになる傾向があるので、お金のための仕事では予定よりも長く働くことになりがちだ。 さらにまた悪いことに、どんな仕事であれ、あなたがする仕事はあなたを変えてゆく。 退屈な仕事をしすぎれば脳が錆びついてくる。 いちばん稼げる仕事がいちばん危険だ。というのも、そんな仕事には全精力を注がなければならないからだ。
二足のわらじルートの有利なところは、障害を飛び越えさせてくれる点だ。 あらゆる仕事が大地に平坦に広がっているわけではない。異業種間を仕切る壁の高さもまちまちだ。 [註7] 自分の仕事のうち好きな仕事が占める割合を最大化していく過程で、建築から商品デザインに移ることはあるかもしれないが、音楽業界に行くことはおそらくないだろう。 何かひとつの仕事でお金をつくってから別の事をする、というのであればもう少し選択の自由がある。
どちらのルートを選んだらよいだろうか。 それは、あなたがやりたいことにどのくらい自信をもっているか、注文を取るのがどのくらい上手か、どれだけのリスクに耐えられるか、あなたがやりたいことに誰かが(あなたが死ぬまで)お金を払ってくれる勝算があるか、といったことにかかっている。 もし 働きたい分野全般に自信があり、かつ人がお金を払ってくれそうなことであれば、多分オーガニックルートを選んだほうがいい。 しかし、もし自分が何をやりたいのか分かっていなかったり、あるいは注文をとるのが好きではないなら、二足のわらじルートを選ぶのもいいかもしれない。そのリスクに耐えられるのならば。
あまり性急に決めてしまわないように。 早いうちからやりたいことがわかっている子たちは格好良く見える。まるで他の子たちより先に算数の問題が解けた子のようだ。 彼らの手元には確かに答えがある。でもそれは間違いである公算が大だ。
医者としてとてもうまく行っている友人がいるのだが、彼女は自分の職にいつも不平不満をこぼしている。 医学部を受けようとしている人たちに助言を求められる度に、彼らを揺さぶって「やめておきなさい!」と怒鳴りつけたくなる。(決してそうすることはないのだが) どのように彼女はこんな苦境に陥っていったのだろうか。 高校時代には既に、彼女は医者になりたいと思っていた。前途に立ちふさがるあらゆる障害を乗り越えるだけの野心も決意も備わっていた。不幸なことに「医者という仕事が好きではない」ことも障害のひとつに含まれていた。
いまの彼女の人生は、女子高生が選んだ人生だ。
あなたが若い頃には、各々の選択に必要な情報はすべて、それが必要になる前に手に入るような印象を持っていただろう。 だが、仕事については決してそうはいかない。 何の仕事をするか決める時には、信じられないほど不完全な情報を頼りに決断しなければならない。 大学の中でさえ、様々な職種がそれぞれどんなものなのか、ほとんど情報が得られない。 運が良ければ2、3社のインターンシップに参加できるかもしれないが、全ての職でインターンシップが用意されているわけではないし、提供されていたとしても、学べるのは高々バットボーイになることで野球のやり方を学べる程度のことだ。
人生設計においては、その他の多くの物事の設計と同様、柔軟な媒体を使えばより良い結果が得られる。 だから、自分が何をしたいのかに確信をもっているのでなければ、一番のお薦めは、オーガニックにも二足のわらじにも転べるような種類の仕事を選ぶことだろう。 私がコンピュータ・サイエンスを選んだ理由の一部もおそらくそんなことだ。 教授にもなれるし、お金もたくさん稼げるし、ほかの数多の仕事に姿を変えることもできる。
初めのうちは、幅広く色々なことを経験させてくれる仕事を探すのも賢い選択だ。 そうすれば色々な仕事が実際どんな感じなのかをより短時間で学ぶことができる。 逆に、二足のわらじルートでも極端なものは危険だ。自分が好きなことについて学べることがあまりにも少ないからだ。 お金が十分たまったら仕事をやめて小説を書こう、と思いながら十年間証券投資家の仕事に精を出していたとしよう。 いざ仕事をやめた後で、小説を書くのなんて実は好きでも何でもなかったことに気づいてしまったとしたらどうする?
ほとんどの人はこう言うだろう。「任せろ、百万ドルくれたら、やりたいことを見つけてみせる」と。 でもそれは見かけより難しいものだ。 さまざまな制約は、人生に輪郭を与えてくれる。 そうした制約を外してしまうと、ほとんどの人は自分が何をしたらいいか全くわからなくなってしまう。 宝くじを当てた人や、遺産を手に入れた人がどうなるか見てほしい。 誰もが、自分が欲しいのは経済的な保障だと思っているけれど、いちばん幸せなのは経済的な保障を手に入れた人たちではなく、自分がやっている仕事が好きな人たちだ。 だから、(経済的)自由を約束するばかりで、それで一体何をしたらいいのか知る事もないようなプランは、見た目ほどいいものではないかもしれない。
どちらのルートを選ぶにせよ、それなりの苦労が伴うことは覚悟しておこう。 好きな仕事を見つけるのは本当に難しい。ほとんど誰もが失敗している。 仮に見つけられたとしても、30、40代そこらで好きなことを自由にやれるようになるなんてことは滅多にない。 でも、今この目的地が視野に入っているなら、達成できる見込みは高い。 仕事を好きになっていいと分かれば、もうゴールは目の前だ。 そして、どの仕事が好きなのか分かっているなら、もうあなたはゴールしたも同然だ。
夏目漱石 創作家の態度
なぜと云うと文学史で云う何々主義と云うのは理論から出たのでなくして、個人の作物から出たのであって、その作物の大体を鷲攫わしづかみにして、そうしてもっとも顕著に見える特性だけを目懸めがけて名を下したまでであります。
つまりは幾通りとなく成立し得べき歴史のうちで実際に発展した歴史だけに重きを置いて、しかもほとんど偶然に出現した人間の作そのものを全まったき成体で取り崩くずす事のできないものと見傚みなした上でその特色の著るしきものだけに何主義の名をもってする弊であります。
Writing and Speaking
どうやって書くか、公演するか。
頭の中にプログラムを入れる
Paul Grahamのエッセイ。
簡潔さは力なり(エッセイ)
LISPプログラマのPaul Grahamのエッセイ。
プログラマー
syum.ai
有名なプログラマーのプロフィールページ。
research!rsc
Russ Coxのブログ。
http://dnobori.cs.tsukuba.ac.jp/ja/
すごい人。ソフトウェア研究者・技術者。深さ、広さがすごい。
Bracket Productions
すごいゲーム開発者。 roguelike tutorialの作者。
universe
Javascriptのすごい人。
About Me – DoorLog
すごいエンジニアの人。 未経験時のログが残っていて、そんな時期が存在していたことを知れる。成長速度えぐい。
牛尾 剛|note
エンジニア。
才能ない人を観察してどうやったらできるようになるか考えてみた|牛尾 剛|note
アウトカムを急がない。理解するのには時間がかかる。 アウトプットを考えがちだが、それでコピペしてたら意味がない。
- ブログ書くのが重要
技術者には試行錯誤は圧倒的に悪であると腹落ちした話|牛尾 剛|note
ただ単にいろんなパターンを試して正解を探しても、何も学べていない。 関連技術を理解して、自分のコントロール化に置くことが重要。
最近の技術イケメン観察日記 Tips 4選|牛尾 剛|note
4時間ほど予定をブロックしているという。 その時間は返信もせず、自分の仕事に熱中する。
Sanity, Inc. · sanity, inc.
Purcel(パッケージシステムMelpaを作った人)のブログ。
Colin Woodbury
OSSのすごい人。幅広い。長崎でALTをしてたことがあるらしく、ちょっと親近感。
About — Jiyu Software
かっこいい自己紹介ページ。
a cuppa nestum
若かりし頃のブログ。
Daniel Miessler | Security, Technology, and Society
セキュリティで有名な人。
Dodgy Coder: Q&A With Nine Great Programmers
偉大なプログラマーへのQ&A集。
Endless Parentheses · Ramblings on productivity and technical subjects.(Malabarba)
複数のパッケージ開発者。 https://endlessparentheses.com/about.html
(or emacs · irrelevant)
Emacsの有名人のブログ。
wasamasa’s profile - Liberapay
いい感じの自己紹介。Emacs。
about me · eed3si9n
Scalaのすごい人。
System Crafters - YouTube
Emacs を中心に扱う YouTube コミュニティ。配信者はDavid Wilson。もう1つのチャンネルに、ライブコーディング中心のFlux Harmonicがある。
Creating a Scripting Language in 5 Days - Live Coding in C - YouTube
C言語でスクリプト言語を作るライブコーディング。
System Crafters Live! - The Hidden Value of Emacs’ Tab Bar - YouTube
新しいYouTubeチャンネル、Flux Harmonicの情報。 Emacs28に追加された機能 Tab Bar。
“Inverse Literate” Emacs Configurations - Hack Sessions - YouTube
- configを文書化する。
- outline-modeを使う。
- 文芸的に書いた設定をorg->lispで変換する。
System Crafters Live! - A First Look at Guix Home - YouTube
- guix home はユーザレベルでデーモンやインストールをしてくれるプログラム
5 Org Roam Hacks for Better Productivity in Emacs
Org-roamのハック。
プログラム
OverType - The Over-The-Top Typewriter Simulator
タイプライターのエミュレータ。タイプライターを知ることで、テレタイプを知ることになり、制御文字の生まれた背景を想像できる。
インクの消耗なども再現されている。キーを押しっぱなしにして入力できない、インクの消耗なども再現されている。
Next.jsの考え方
Next.jsの本。
Evan You - State of Vite & Vue 2024 - Vuejs Amsterdam 2024 - YouTube
Vue, Vite作者のスライド。
A useful template for commit messages — David Winterbottom
コミットメッセージのテンプレート。なぜこの変更が必要か、どう解決するかを書く。
Design Document - Roguelike Tutorial - In Rust
ゲームのデザインドキュメントの項目。
RFC 2223 - Instructions to RFC Authors
RFCのフォーマットの規定。仕様を書くときの参考になる。
よくしらんRailsアプリとかをAWSのレガシーシステムからGCPのイケイケシステムに移行した話 - nownab.log
移行作業の手順書を、準備・停止・転送・起動・起動後・ロールバックに分けている。
Understanding Nil in Go: Unique Comparison Behaviors | by Beck Moulton | Jan, 2024 | Level Up Coding
Goのnilを理解する。
100 Go Mistakes
Go言語でありがちな間違い。
oapi-codegenを使ってみた - Speaker Deck
oapi-codegenの使い方。とくにバリデーションが参考になる。
ポインタを図で理解する - Carpe Diem
図によるポインタのわかりやすい解説。
Goでファイルの存在チェック - Qiita
存在チェックの方法。
イベントループなしでのハイパフォーマンス – C10K問題へのGoの回答 | POSTD
Goルーチンの解説。ベースがないのでよく理解できなかった。
goroutineはなぜ軽量なのか - Carpe Diem
Goルーチンの解説。よくわからなかった。
Garbage Collection In Go : Part I - Semantics
Goのガベージコレクションの解説記事。
dgryski/go-perfbook: Thoughts on Go performance optimization
Goのパフォーマンス最適の読み物。
5分で完全理解するGoのiota - Speaker Deck
GoのiotaのTips。
Goアセンブリの書き方 - Plan 9とGo言語のブログ
Goアセンブリの解説記事。
go-internals - Go Internals
Goの内部仕様についての本。
Goアセンブリ入門 - Qiita
Goアセンブリの解説。
【Go】Mapの内部構造とO(1)のメカニズム
Mapの中身の解説。
Reproducible Builds — a set of software development practices that create an independently-verifiable path from source to binary code
再現可能なビルド。
Go言語のジェネリクス入門
ジェネリクスの解説。
入門Go言語仕様 / Go Specification Untyped Constants - Speaker Deck
Untyped Constantsの解説。
(4) 列挙型の作り方を再考する - Go Conference 2023 Online - YouTube
iotaで作るのがデフォルトではあるけれど。
Goを学びたての人が誤解しがちなtypeと構造体について #golang - Qiita
シンタックスの意味。
Better C - Goと整数 #golang - Qiita
Goの整数の仕様の解説。
Go Binary Hacks - go buildせずにビルドする #golang - Qiita
go buildの仕組み解説。全然わからん。
Go at Google: Language Design in the Service of Software Engineering - The Go Programming Language
Goの言語デザインの解説。
research!rsc: Go Data Structures: Interfaces
Russ Coxによるインターフェースの詳しい解説。
Go’s Declaration Syntax - The Go Programming Language
Cのシンタックスとの違い、理由。
Goアセンブラのクイックガイド
公式ドキュメントの翻訳。
解説&翻訳 - A Quick Guide to Go’s Assembler
Goアセンブラの解説。
go build を使わずにGoプログラムをビルドする
go buildの仕組み。実際に動かして取っ掛かりを見つけるのが面白い。そういうアプローチもあるのか。
Go Doc Comments - The Go Programming Language
Go Docのコメントの仕様。
CompilerOptimizations · golang/go Wiki
コンパイラの最適化。
Go Escape Analysis Flaws - Google Docs
Goエスケープの説明。
Go 1.20: Profile-Guided Optimization
Profile-Guided Optimizationは、コンパイル時最適化のヒントとして、ランタイムのプロファイル情報を使うことでより効率よく最適化する手法です。
sync.Onceの内部実装から学ぶ実装アイデア
sync.Onceの仕組み。
Articles · golang/go Wiki
公式の記事。
“go build”した時に何が起きているのか? - Qiita
コンパイル時になにが起きているか、ログから調べる。
Go でつくる汎用言語処理系 実装戦略 - Speaker Deck
言語処理系の作り方。
ベンチマークを行う (testing.B) - まくまく Golang ノート
ベンチマークする方法。
エラー評価のいろいろ|Go のエラーハンドリング
エラーハンドリングの本。
Go の定数の話 - Qiita
じつは複雑な定数。
nil == nil でないとき(または Go プログラマは息をするように依存を注入する)
直感に反する挙動からわかる、内部の仕組みの話。
Go言語プログラミングエッセンス:書籍案内|技術評論社
来月発売される本。
Go 1.19 日本語
日本語訳された公式ドキュメント。
はじめに|Goでの並行処理を徹底解剖!
並行処理の解説本。
Learn Go with Pocket-Sized Projects
Goのハンズオン集。
gorenameをライブラリとして使う #golang - Qiita
IdをIDに変換する例。
Effective Go — プログラミング言語 Go ドキュメント v0.1 documentation
Goらしく書くためのtips。
Go Patternsで学ぶGo - Qiita
Goで役立つパターン。
How to read and write with Golang bufio
bufioのわかりやすい解説。
Go言語を使ったTCPクライアントの作り方 - Qiita
TCPの仕組み、作り方。
よくわかるcontextの使い方
contextの詳しい解説。この人すごいなあ。
Writing A Compiler In Go | Thorsten Ball
Goでインタプリタを書く本の続編。
Introduction · Build web application with Golang
Go Web プログラミング。
Go Codereview Comments
GoのTips集。
Go プログラミング言語仕様 | gospec-ja
言語仕様の日本語訳。
Goのgoroutine, channelをちょっと攻略! - Qiita
ゴルーチンの解説。
はじめてのゲームプログラミング(Ebiten)
簡単なゲームのチュートリアル。
Roguelike Tutorial | Fat Old Yeti
Ebitenでローグライクを作るチュートリアル。
2D Game Development in Golang — Part 1 | by Chris Andrews | Medium
Ebitenの小さなチュートリアル。
ファミコンエミュレータの創り方 - Hello, World!編 - - Qiita
エミュレータの作り方の概要。
ゲームボーイのエミュレータをGoで作った話
作り方の解説。
Client | Docker Code Walk
Dockerコードの概略。
スターティングgRPC【委託】 - 達人出版会
サーバ側Go, クライアント側Rubyと異なる言語を用いてサンプルアプリケーションを実装する。
改訂2版 みんなのGo言語 | Gihyo Digital Publishing … 技術評論社の電子書籍
わかりやすいという入門書。
google/go-github: Go library for accessing the GitHub v3 API
GoのGitHubアクセスのためのライブラリ。
Go コンパイラのコードを読んでみよう | ebiebievidence.com
Goのコンパイラの解説。
Goを学ぶときに参照した学習リソースまとめ
面白くためになる題材の紹介。
Goの言語仕様書精読のススメ & 英語彙集
読み方。より深い理解のやりかた。
Contribution Guide - The Go Programming Language
Goのコントリビューションガイド。
justforfunc #17: contributing to the Go project - YouTube
Goにコントリビュートするチュートリアル。開発環境構築、Googleの規約へのサイン、変更、レビューまでの流れを全てカバーしている。わかりやすい。
Welcome - urfave/cli
cliアプリを作るライブラリ。
jroimartin/gocui: Minimalist Go package aimed at creating Console User Interfaces.
GoでCUIツールを作れるライブラリ。
jesseduffield/lazydocker: The lazier way to manage everything docker
CLIでDockerの状態を閲覧できるライブラリ。
GoのCLIで標準入力とファイル読み込みの両方に対応する - Carpe Diem
Unixライクなインターフェースにするメリット・やり方。
Go言語: path/filepathとの良いお付き合い
filepathの本。
Go Open-Source Projects
Goのリポジトリトレンド。
What’s in a name?
Goの名前に関する解説。よく言われることがだが、標準ライブラリが参考になると書いてある。
Five suggestions for setting up a Go project | Dave Cheney
Goのパッケージ構成や名前などの解説。実際のリポジトリを上げていてわかりやすい。
Go言語で構築するクリーンアーキテクチャ設計:コードカキタイ
クリーンアーキテクチャの本。
how do i get response body in after router middleware? · Issue #1363 · gin-gonic/gin
ミドルウェアで返したレスポンスを取得する方法。
Go の HTTP サーバーで Swagger UI を提供する
サーバ自体でAPIドキュメントを提供する方法。
openapi3filter package - github.com/getkin/kin-openapi/openapi3filter - Go Packages
openapi3filterの例。
古典学派的テストとGoで考える持続可能なアーキテクチャ入門
モックを極力しない流儀の、古典学派のテスト本。
How Go was made
Goの歴史。
Go の Test に対する考え方 #Go - Qiita
理由が書かれている。
research!rsc: Transparent Telemetry for Open-Source Projects (Transparent Telemetry, Part 1)
MacOSでの Go1.14のコンパイルにX Codeが必要なのは意図的でなかった。しばらくの間、誰もそれをバグとして気づかなかった。
Golang(echo)のAPIをrenderでデプロイする方法
タダのバックエンドサーバ。
GoReleaser で Go 製 CLI のリリースを自動化& Homebrew でインストールできるようにする
goreleaserの使い方。
All your comparable types - The Go Programming Language
1.20の変更。比較可能な型。
Go Toolchains - The Go Programming Language
Goツールチェイン。
extended forwards compatibility for Go · Issue #57001 · golang/go
go.modで指定するバージョンでは、Goツールチェーンを指定するわけではない。それを変えようという提案。
cmd/go: “loadPackageData called with empty package path” build panic · Issue #60686 · golang/go
比較的わかりやすい、小さなバグ。
proposal: use PCG Source in math/rand for Go 2 · Issue #21835 · golang/go
randの実装を効率が良いものに変える提案。
hashicorp/go-plugin: Golang plugin system over RPC.
go pluginの例。
doc: remove non-prime from list of primes in spec (101457) · Gerrit Code Review
素数に9が含まれているのはタイポではなく、そういうジョークとのこと。
Applied Go · Applied Go
高品質なGoのチュートリアル。
Simplicity is Complicated
ロブ・パイクによるGoのスライド。
Go Runtime Scheduler - Speaker Deck
Goのスケジューラを実装する。
【Go】go getは不要?go installとは?
わかりやすい説明。
golangのio.Readerは使い回しできない - Qiita
知らなかったな。
design - proposal - Git at Google
proposal一覧。
golang/proposal: Go Project Design Documents
Go言語のproposal。
はじめに|逆引き Goによる静的解析
Goで静的解析をする入門本。
yuroyoro.github.io/goast-viewer/
GoのASTビューワー。
Rethinking Visual Programming with Go · divan’s blog
ソースコードの呼び出し関係をグラフィカルに表示する。
XML to Go
XMLからGoの構造体に変換するツール。
Francesc Campoy Flores
Goプログラマー、Youtuber。チャンネルは更新止まってるぽい。
debug/buildinfo: timeout in Read · Issue #54968 · golang/go
参考になるissue。バグ報告のうまいやり方。playgroundを使う。タイムアウトになるバグの原因。
EmacsでのGo言語編集環境 - unknownplace.org
Emacsのgo-modeでのフォーマット、定義ジャンプ、便利なさまざまな機能。
ゴールーチンとチャネル|Goでの並行処理を徹底解剖!
Goルーチンの解説。
Goでflagを使ってコマンドライン引数を扱う - Qiita
手軽に使える。
Ebitengine - A dead simple 2D game library for Go
Goのゲームライブラリ。
15. スライスのハマりどころ | TECHSCORE(テックスコア)
スライスの詳しい解説。
Go言語を楽しむ5つのレシピ コタツと蜜柑とゴーファーとわたし【委託】 - 達人出版会
画像処理やWebAssemblyなど。
Docker Engine SDKでコンテナ一覧を取得する | DevelopersIO
小さなコマンドラインツールの例。
Goで作成したAPIをDockerで動かす
APIのサンプルコード。
GoでDockerのAPIを叩いてみる | フューチャー技術ブログ
goとdocker。
Go でコマンドラインツールを作るときに便利なパッケージ|@hira
環境変数、カラー、インジケータ。
Goから学ぶI/O
GoのIOの解説。
Golang による Strategy パターン
必要になったので参考にする。
Goのスコープについて考えてみよう #golang - Qiita
スコープの解説。
Goの比較可能性(comparable) - Qiita
比較可能な型の説明。
go/README.md at release-branch.go1.13 · golang/go · GitHub
Go コンパイラについての公式ドキュメント。
Goにおけるjsonの扱い方を整理・考察してみた ~ データスキーマを添えて
エンコードの解説。
詳解Go標準パッケージ:web-apps.tech
Goの標準パッケージを詳解する本。
Deep Dive into The Go’s Web Server
Goのサーバーの解説。
APIデザインケーススタディ ――Rubyの実例から学ぶ。問題に即したデザインと普遍の考え方:書籍案内|技術評論社
RubyライブラリをテーマにしたAPI設計の本。
Metaprogramming All The Way Down
FactoryBotの詳細な説明。
Enumerable#inject (Ruby 3.0.0 リファレンスマニュアル)
使えるようにしておく。まとめる。
Ruby Operators
Rubyの特殊な演算子の名前と説明。
Rubyソースコード完全解説
Rubyのコードの解説。
Ruby用語集 (Ruby 3.0.0)
おもしろい。
Building Enumerable & Enumerator in Ruby
Enumerableの詳しい解説。
ホワイの(感動的)Rubyガイド
ちょっと変わったRuby入門。
プログラミング言語 Ruby リファレンスマニュアル
rubyのドキュメント。
Rubular: a Ruby regular expression editor
Rubyの正規表現チェッカ。
Emacs Lispの汎変数 - Qiita
汎変数の解説。
Emacs Lisp基礎文法
シンボルとコンスセルからEmacs Lispを解説する記事。
On Lisp
マクロを中心にLispを解説する本の日本語訳。
Evolution of Emacs Lisp
Emacs Lispの進歩。
Add persist-state package by bram85 · Pull Request #8574 · melpa/melpa
Package-Versionは不要になった。
ParEdit チュートリアル
すごい便利らしいのでやってみる。
ソースコードの読み方 - Solist Work Blog
Emacs, Magitで解説している。
Appendix D Tips and Conventions
Emacs Lisp Manual。いくつか面白そうな章がある。
org-mode のキーバインド、その先 - Qiita
キーバインドの記事。
Spacious Padding (spacious-padding.el) | Protesilaos Stavrou
Emacsのpaddingをいい感じにするパッケージ。
Use GNU Emacs
新しいチュートリアル。
Org Themes collection
Org Exportテーマのコレクション。
Configurations for GNU Emacs
文芸的プログラミング。
Free software, free society: Richard Stallman at TEDxGeneva 2014 - YouTube
リチャード・ストールマンのTED Talk。
cysh
独自のサイトジェネレータで作成されたサイト。
Emacs から直接 DeepL を使う設定方法 | ハングスタック
Emacsでdeeplを使う方法。
emacs.d でないところで init.el を育てる方法
ユーザディレクトリ以外に配置した.emacs.dを使う方法。
Pragmatic Emacs | practical tips for everyday emacs
役立つtipsが紹介されているサイト。
Pretty Magit - Integrating commit leaders | Modern Emacs
Conventional Commitsを絵文字表示にする。
How Emacs changed my life
Matzのスライド。
【Emacs入門】②バージョン28で新たにビルトインされるModus Themesを使おう
新しく追加されたthemeとその設定方法。
Avy can do anything | Karthinks
avyの解説。
EmacsWiki: Hacker Guide
Emacsの簡単な概要。
Hacking your way around in… by Marcin Borkowski
Emacsの本。買うか迷ってる。
Emacs アイコンがコミットされるまで
こんな流れなんだ。
A textlint flycheck checker in Emacs
EmacsでのTextlint設定方法。
A Simple Guide to Writing & Publishing Emacs Packages
パッケージを作ってみる記事。
alphapapa/emacs-package-dev-handbook
Emacsパッケージのハンドブック。
Making Emacs Work For Me
設定解説。
Emacs Lisp 組込み関数
基本的な関数をまとめたリスト。
(think)
Emacsのブログ。
Irreal | The minds had long ago come up with a proper name for it; they called it the Irreal, but they thought of it as Infinite Fun. That was what they really knew it as. The Land of Infinite Fun. –Iain M. Banks, Excession
Emacsのブログ。
The Kitchin Research Group
Emacsのブログ。
Theresa O’Connor
Emacsの情報集約サイト。
Emacs is Not Enough
読み物。
Mastering Emacs
Emacsの本。
Getting Started - Rust Compiler Development Guide
Rustコンパイラ開発のガイド。
Writing an OS in Rust
OSをrustで書く本。詳しく書かれている。
Introduction - The Specs Book
ECSとSpecsのドキュメント。
Rust の最初のステップ - Learn | Microsoft Docs
Microsoftのチュートリアル。
Why is building a UI in Rust so hard? | Warp
RustでのUI作成はなぜつらいか。
Getting started - Command Line Applications in Rust
コマンドラインプログラムを作るチュートリアル。
手を動かして考えればよくわかる 高効率言語 Rust 書きかた・作りかた  Read
Introduction - Roguelike Tutorial - In Rust
roguelikeを作る長大なチュートリアル。
About · Container Security Book
コンテナセキュリティの本。
Docker networking is CRAZY!! (you NEED to learn it) - YouTube
動かして学ぶ、Docker networkの解説動画。
introduce require to load sub-compose projects as dependencies by ndeloof · Pull Request #416 · compose-spec/compose-go
気になる機能追加。-fオプションの上書きは、わかりづらい。
Docker Compose入門 (3) ~ネットワークの理解を深める~ | さくらのナレッジ
docker networkの解説。
Docker と LXC - Qiita
コンテナのLXCとはなにかを解説。
Dockerコンテナの/var/lib/docker/overlay配下の容量が大きくなって起動できない事象に遭遇したので周辺知識を調べた。 - 蚊帳の中の日記
overlayのわかりやすい説明。事象を理解するためには、仕組みを理解していなければいけない。
Golang UK Conf. 2016 - Liz Rice - What is a container, really? Let’s write one in Go from scratch - YouTube
コンテナランタイムを使わずにGoでコンテナを作ることで、コンテナとは何かを学ぶ。
Docker Swarmで学ぶサービスメッシュ - Qiita
swarmを学ぶ。
opencontainers/runtime-spec: OCI Runtime Specification
コンテナランタイムの標準仕様。
opencontainers/image-spec: OCI Image Format
コンテナイメージの標準仕様。
コンテナの仕組み(Linux学習) - YouTube
コンテナの解説。
複数のdocker-compose間で通信する
docker networkを作り、コンテナを同じnetworkに所属させると、サービス名解決ができる。
docker-library/buildpack-deps
Dockerの公式イメージ集。
Add health start interval by cpuguy83 · Pull Request #40894 · moby/moby
ヘルスチェックのスタートを指定するオプションを追加するプルリク。
Improved debugging support · Issue #1472 · moby/buildkit
デバッガーモードの提案。気になる。
allow removing something in docker-compose.override.yml · Issue #3729 · docker/compose
-fオプションで起動するとき、要素によっては上書きされない問題がある。例えばポートをoverride.ymlに書くと上書きはされず、2つともポート公開されてしまう。その仕様の変更が7年かかって仕様に組み込まれた。
introduce remove to configure runtime autoremove for service containers by ndeloof · Pull Request #364 · compose-spec/compose-spec
removeキーワードの導入。
Docker Engine API v1.42 Reference
Docker EngineのAPIリファレンス。
Haxxnet/Compose-Examples: Various Docker Compose examples of selfhosted FOSS and proprietary projects.
docker-compose集。
GitHub Actionを使って自前Docker内で自動テスト - Qiita
github actionsでdocker-composeを使う例。
Build Containers the Hard Way (WIP) - Build Containers the Hard Way
コンテナ技術の低レイヤーの仕組み。
docker-slim/docker-slim: DockerSlim (docker-slim): Don’t change anything in your Docker container image and minify it by up to 30x (and for compiled languages even more) making it secure too! (free and open source)
dockerイメージを分析してスリムにするツール。
wagoodman/dive: A tool for exploring each layer in a docker image
dockerのレイヤーごとにイメージを調査できるツール。
Docker とは - 解説、メリット、できること | Red Hat
わかりやすい概要。
Docker - Wikipedia
ソフトウェアのわかりやすい説明。
phusion/passenger-docker: Docker base images for Ruby, Python, Node.js and Meteor web apps
Web開発用の扱いやすいDockerイメージ。
The Twelve-Factor App
SaaS開発の方法論。
Docker ドキュメント日本語版 PDF ダウンロード — Docker-docs-ja 19.03 ドキュメント
Dockerのドキュメント。
Dockerfileを改善するためのBest Practice 2019年版
ベストプラクティス。
クソコード動画「Userクラス」で考える技術的負債解消の観点/DXD2021
クソコードから学ぶ。
Ruby on Rails ガイド:体系的に Rails を学ぼう
Rails のドキュメント。
Rails+React(SPA)TODOアプリチュートリアル【0から学ぶ】
Rails + Reactの本。
【Rails】graphql-rubyでAPIを作成 - Qiita
GraphQLをrailsでやるチュートリアル。
Amazon.co.jp: Deploying Rails with Docker, Kubernetes and ECS (English Edition) eBook : Acuña, Pablo: Foreign Language Books
KubernetesでRails deployまでやる本。
thoughtbot/ruby-science: The reference for writing fantastic Rails applications
ruby, railsのより良い書き方のガイド。
docker - How to run Capybara tests using Selenium & Chrome in a Dockerised Rails environment on a Mac - Stack Overflow
dockerのseleniumで動かす方法。
Active Model の基礎 - Railsガイド
モデルの説明。
永久保存版!?伊藤さん式・Railsアプリのアップグレード手順 - Qiita
アップデートの流れ。
DHH流のルーティングで得られるメリットと、取り入れる上でのポイント - KitchHike Tech Blog
ルーティングをどうするかの指針。
ankane/strong_migrations: Catch unsafe migrations in development
READMEに安全なマイグレーションの説明がある。
reg-suit によるビジュアルリグレッションテストで Rails アプリの CSS 改善サイクルが回り始めた話 - Speee DEVELOPER BLOG
ビジュアルリグレッションテストの運用方法。
Only My Rails Way
Rails Wayの定義について。
Ruby on Rails Discussions - Ruby on Rails Discussions
Rails開発のディスカッション。
Railsエンジニアのためのウェブセキュリティ入門
わかりやすいスライド。
Rails開発者が採用面接で聞かれる想定Q&A 53問(翻訳)|TechRacho by BPS株式会社
ちゃんとRailsガイドを読まないときついな。
xv6-riscv-jpn.pdf
xv6の解説。
UNIXカーネル内部解析―キャッシュとマルチプロセッサの管理 (プロフェッショナルコンピューティングシリーズ) | カート シメル, Schimmel,Curt, 信一, 岩本 |本 | 通販 | Amazon
Unixの本。
O’Reilly Japan Blog - ファイルロックと新OFDロック
ファイルロックの解説記事。
linux-sched-history.pdf - Speaker Deck
Linuxのプロセススケジューラの歴史。
オペレーティングシステム 構成と設計第3版
古典的名著。
Linux について学ぶおすすめの流れ【書籍を中心に紹介】 - 完全に理解した.com
おすすめの本の紹介記事。
新装改訂版 Linuxのブートプロセスをみる【委託】 - 達人出版会
ブートプロセスを追う本。
シェルとファイルデスクリプタのお話 - Qiita
ファイルディスクリプタをシェルで扱う。
【図解】file descriptorと標準入力/出力とパイプ,リダイレクト | SEの道標
ファイルディスクリプタ。
ゼロからのOS自作入門 | マイナビブックス
ゼロからOSを自作する本。
ハロー“Hello, World” OSと標準ライブラリのシゴトとしくみ
printを実行するとき何が起こっているかの解説。
The Linux Kernel
Linuxカーネルの解説。
Introduction · Linux Inside
Linuxカーネルの解説。
O’Reilly Japan - Linuxプログラミングインタフェース
Linuxのリファレンス。
O’Reilly Japan - 詳解 Linuxカーネル 第3版
カーネルのソースコードを読む本。
FreeBSD ハンドブック | FreeBSD Documentation Portal
FreeBSDのマニュアル。
What Every Programmer Should Know About Memory
ハードウェアとしてのメモリを解説した本。
A COMMENTARY ON THESIXTH EDITIONUNIX OPERATING SYSTEM
UNIX V6のガイドブック。
OSカーネルに興味がある人におすすめの参考資料 - YouTube
おすすめ本詳解。
SadServers - Troubleshooting Linux Servers
壊れたLinuxサーバを解くサイト。
Amazon | BPF Performance Tools (Addison-Wesley Professional Computing Series) | Gregg, Brendan | Performance Optimization
Linuxのチューニングの本。
O’Reilly Japan - 詳解 システム・パフォーマンス 第2版
Linuxのチューニングの本。
カーネル再構築 - Linux技術者認定 LinuC | LPI-Japan
やってみないとな。
Filesystem Hierarchy Standard
パス名の標準仕様。
i386って何? - Linux技術者認定 LinuC | LPI-Japan
i386という名前の由来。
imladris.surriel.com
Linuxまわりのリンク集。
Linux_Kernel_Newbies - Linux Kernel Newbies
新米カーネル開発者が見るページ。
Linuxカーネルの開発者になるには - Linux技術者認定 LinuC | LPI-Japan
Linux関連のコラム集。
SquashFSをマウントするまで - Qiita
システムをファイルに圧縮するとき使う。
新規ユーザ作成時のデフォルト値の設定
ユーザの設定方法。ここでデフォルトディレクトリに /etc/skel 指定している。
Man page of SUDO
sudoの解説。特にプロセスモデルに関する詳しい解説。
Linuxカーネルの読み方
Linuxカーネルのソースコードを読むコツと参考文献がある。
UNIX哲学の基本原則:Geekなぺーじ
UNIX哲学の一覧。
45分でゼロから作る!OS自作ライブコーディング 2023-7-29 C-3 - YouTube
とりあえず自作OSの雰囲気を掴む動画。
ECMAScript · JavaScript Primer #jsprimer
ECMAScriptの仕様策定プロセス。
Webで3Dモデルを扱いたい |
WebGLによる3Dモデルの概要。
この書籍について · JavaScript Plugin Architecture
プラグインのアーキテクチャに関する本。
学生の頃に読みたかった本 (ゲームプログラマ志望) - おもちゃバコ
ゲームプログラマのおすすめ本。
Create Your Own Programming Language
プログラミング言語を作る本。
The Craft of Text Editing by Craig A. Finseth
テキストエディタを作る。
Reflections on Trusting Trust
信頼への反省。ケン・トンプソンの論文。
O’Reilly Japan - 言語設計者たちが考えること
言語設計者へのインタビュー集。
TypeScript: 異なる2つの型システム「公称型」と「構造的部分型」 - Qiita
2つの型の違いは何か。
Crafting Interpreters
インタプリタを実装する。
O’Reilly Japan - 言語実装パターン
実装パターンの解説書。
世界のJavaScriptを読もう @ 2014
キャッチアップする意義や方法。
セマンティクスとは : JavaA2Z
セマンティクスとシンタックスの違いの説明。
セルフホスティング - Wikipedia
同じプログラムの新しいバージョンを作ること。
charlax/professional-programming: A collection of learning resources for curious software engineers
おすすめのリンク集。
Rustに貢献してみませんか?コントリビューターたちが語る開発の裏側とOSS活動の魅力 - Findy Engineer Lab - ファインディエンジニアラボ
謎に包まれたコントリビュートのプロセスの、ヒント。
The Art of the Metaobject Protocol: Gregor Kiczales, Jim des Rivieres, Daniel G. Bobrow: 9780262610742: Amazon.com: Books
メタオブジェクトプロトコルのバイブル。
Goodbye, shitty Car extends Vehicle object-orientation tutorial
オブジェクト指向に対する、理解しやすいが間違った説明の議論。
donnemartin/system-design-primer: Learn how to design large-scale systems. Prep for the system design interview. Includes Anki flashcards.
大きなシステムの設計方法を学ぶ方法。
kamranahmedse/design-patterns-for-humans: An ultra-simplified explanation to design patterns
シンプルなデザインパターンの解説。
mtdvio/every-programmer-should-know: A collection of (mostly) technical things every software developer should know about
プログラマーが知るべきこと。
モナドを理解する - 迷える者への手引き
モナドの解説。
DIVE INTO CODE | エラーの原因を突き止めるためにデバッグをする
pryデバッグの方法。
The Hello World Collection
あらゆるプログラミング言語のhello world集。
Data-Oriented Design (Or Why You Might Be Shooting Yourself in The Foot With OOP) – Games from Within
データ指向のデザイン。
Practical Engineering
エンジニアリングに関する面白い記事がある。
Table of Contents · Game Programming Patterns
ゲームプログラミングでよく使われるデザインパターン。
org-roam/org-roam
Roam Researchに着想を得たEmacsのメモパッケージ。
🖊知的生産のキラーアプリOrg-roamを1年使い倒し学ぶとはなにか考えたポエム(2022) | Futurismo
ZettelkastenやOrg-roamの解説。
Org-roam User Manual
マニュアル。
Getting Started with Org Roam - Build a Second Brain in Emacs - YouTube
System CraftersのOrg Roam紹介。
Org mode 教室 その9: org-roam でアイデアをひねり出す
具体的なワークフローがわかりやすい。
https://blog.jethro.dev/posts/introducing_org_roam/
作者サイトのマニュアル。
https://blog.jethro.dev/posts/org_mode_workflow_preview/
org-modeのワークフロー。
AT&T Tech Channel - YouTube
数多くのコンピュータに関するビデオがあるチャンネル。さすがAT&T。
ドメイン島巡り – 世界のドメイン1,000種類以上を取り扱うインターリンクが、「.cc」「.tv」「.sx」等、南太平洋やカリブ海などの「島のドメイン」約50種類に焦点をあて、実際にその島々に行き、島の魅力をレポートします。
どうかしている熱意を示してくれる例。
カテゴリー順 - JPNIC
翻訳文書集。
How I note
Zettelkastenの実践メモ。
ミッキー - 通信用語の基礎知識
マウスの移動量の単位。
ビットコインは世界中でどれだけの電力を使っているのか?|Rui Ueyama
わかりやすく、面白い。
IPv6がなぜいまだに普及していないのか|Rui Ueyama
インセンティブから見た普及しない考察。面白い。
Turing Complete FM
ポッドキャスト。
乱数生成器とゲームと諜報活動の話|Rui Ueyama
ランダムさをどうやって生み出しているか。面白い。
Linuxなどは、キーボードのタイピングの間隔やマウスの速度など、予測の難しい外部イベントの正確なタイミングを測って、そのランダムさをカーネル内に溜め込んでいる。その変数は/dev/randomから読むことができる。
ランダムなイベントはそれほど多くないので、ずっと/dev/randomを読んでいるとランダムさが枯渇してそれ以上読めなくなってしまう。例えばsshの暗号鍵を生成しているときに「マウスを動かすと鍵生成が早く終わります」というメッセージが表示されるのはこのためだ。
メモリのビット反転エラーとセキュリティの話|Rui Ueyama
メモリのエラー率は意外に高いという話。面白い。
Rebuild: 360: Hallucinated Type Safety (matz)
- Ruby Kaigi参加者の3分の1はデベロッパー(テクノロジーそのものを作る人)。ユーザカンファレンスの率が他に比べて低い。
Rebuild: 153: Connecting The Dots (rui314)
自作コンパイラを作る話。
自作言語ではなく、標準化されている既存の言語を作ると手抜きができない。むしろ勉強になる。
地図にメッセージを書けるサイトを作りました
面白いアイデア。
cdk-cli: cannot deploy due to colors dependency · Issue #18322 · aws/aws-cdk
依存ライブラリの意図的な削除で起きた不具合。
Adds new American flag module · Marak/colors.js@074a0f8
多くのライブラリに影響を与えた不具合の元になったコード。遊ばれまくっている。
絵文字がある種のUnicodeバグを世界から一掃しつつある件について|Rui Ueyama|note
面白い。絵文字のせいで、英語圏の人々も4byte文字列について考えないといけなった。解決と同時に漢字の表示についても解決していった。絵文字が追加されたのは2010年からだったのか。
O’Reilly Japan - Making Software
開発手法のエッセイ集。
Logstalgia - a website access log visualization tool
Webアクセスの美しい可視化ツール。
Weapons | D&D 5th Edition on Roll20 Compendium
D&Dスタイルの武器。
[Rust] proc_macro入門 CustomDeriveを書いてみる - Qiita
proc_macroの使い方。
Guixのパッケージを作ってみる
パッケージの作り方。
gRPCって何? - Qiita
プロトコルの種類。
PlantUML Web Server
宣言的な作図ツール。グルーピングができる分mermaidより使いやすい気がする。
デザインパターン | TECHSCORE(テックスコア)
デザインパターンのサイト。
予防に勝る防御なし - 堅牢なコードを導く様々な設計のヒント / Growing Reliable Code PHPerKaigi 2022 - Speaker Deck
Simple と Easy は異なる。混ぜてはいけない。 Easy: 手数の少なさを重視。覚えることが増え、特定の状況に強いが他には弱い設計になる。 Simple: 覚えることの少なさを重視。手数が増えたり、自分で組み合わせたりしなければならない。
Network Load Balancer とは? - Elastic Load Balancing
ロードバランサーの詳細。
【第二版】ファイアウォールやネットワークにおける上り、下り、イングレス(Ingress)、エグレス(Egress)、インバウンド(Inbound)、アウトバウンド(Outbound)の違い - stamemo
Laurence Tratt: Practising Programming
実践してきた方法。 メーラーデーモン、asyncなどの現実世界の問題を解くことで上達していったという。
無料で読める書籍 | Programming Place Plus
プログラミング関係の書籍。
O’Reilly Japan - Cooking for Geeks 第2版
オライリーの料理本。なぜ。
データ中心指向とオブジェクト指向
指向の違い。
The Product Led Growth Market Map - OpenView
優良IT企業のリスト。あらゆる分野に浸透している。
Patterns for building excellent examples
サンプルコードの書き方。
PHPバージョンアップけもの道 - Speaker Deck
言語のバージョンアップは大変な仕事。どうやって進めるか。
For a Good Strftime | Easy Skeezy Ruby Date/Time Formatting
日付のフォーマット文字列を生成するツール。
ブラウザレンダリングの仕組み
非常にわかりやすいレンダリングの解説。
O’Reilly Japan - Library
オープンライセンスで公開されているもの。
Adobe PDF
PDFの仕様書。
Transparent California
オープンな行政。
Hyrum’s Law
Hyrumの法則。
イミュータブルデータモデルの極意
データをモノ(Resource)とコト(Event)に分け、コトは一時点の事実として変更しないデータモデル。
イミュータブルデータモデル(入門編)
UPDATE を極限まで減らす。リソースとイベントを分ける基準は、属性に日時をもつかどうか。
イミュータブルデータモデル(世代編)
期間によって変わる属性は別のテーブルにし、変更は UPDATE ではなく追加にする。過去と未来の予定を分ける。
乗り物
EEVblog #1268 - DIY Boeing 747 Cockpit Simulator Full Tour - YouTube
DIYでボーイング747のコックピットを作る人…。
団子運転 | きまぐれノート
公共交通における、精神衛生上いい話。
【保存版】エレベーターの行き先をキャンセルする方法(メーカー別)
やり方がある。
金券ショップの切符はなぜ安いのか
新幹線の回数券はマネーロンダリングに使われるらしい。
郷土
郷土将兵慰問写真帳 - Next Digital Library
現存する東郷橋が写っている。
名古屋をディストピア化させた過剰なモータリゼーションと“トヨタ”|LITERA/リテラ
「自動車に乗って移動する生活、歩かない生活。これは街への愛着を失わせ、無関心を常態化させてしまいます。名古屋市民は戦後の道路計画の時代からずっと街から排除されていたと言えます。散歩をしたり、街角にたたずんだり、公園にたむろするという習慣が、ずっと以前に失われていました。都市空間が暴走する自動車と騒音と排気ガスに占拠されたからです。だから名古屋市民は、お昼を食べるにしても、公園のベンチで弁当を広げるよりも自動車の運転席で弁当を食べるほうを好むのです」
興味深い。
出水市の道路比較
ちょっとした公園、消滅。
鹿児島電化 昭和45年10月1日 - 転轍器
昔の折口駅の写真がある。
広報あくね 昭和60年5月
鍋石の記述がある回。
あくね 文化財ガイドマップ
阿久根市の文化財ガイドマップ。
市勢要覧2022
阿久根市の概要。
鹿児島県/薩摩街道(出水筋)マップについて
公開されている薩摩街道マップ。
薩摩街道14阿久根~西方
街道歩き。
薩摩国(元禄)
1700年代の地図。
西海道全圖 - 九大コレクション | 九州大学附属図書館
九州の古い地図。
日本国地理測量之図
全国図。
大日本帝國豫察西南部地質圖. | 京都大学貴重資料デジタルアーカイブ
九州南部の古い地図。
全国Q地図|各種地形図・地図情報の統合閲覧サイト
橋の地図。
76年前、自宅前の線路の列車を米軍機が襲った。怖いもの見たさで外に出た。右足に強い痛み。大量の血の中から見つけた銃弾は今も持っている〈証言 語り継ぐ戦争〉 | 鹿児島のニュース | 南日本新聞 | 373news.com
折口の、鉄道車両に対する空襲。
太平洋戦争末期の阿久根市の列車空襲 米軍撮影の写真見つかる|NHK 鹿児島県のニュース
証言を裏付ける写真が発見される。川の流路が現在と違うことがわかる。
めがね橋一覧表:鹿児島県
鹿児島のめがね橋一覧。
土地分類基本調査 阿久根
折口川に関する記述がある。
阿久根市折口と野田町の一部の折口川をはさむ水田地帯302haを対象に昭和26年~昭和31年にかけて実施した用水改良事業である。折口川は、路線・断面共の不規則で又河口に設けられた樋門(3連)が不備であるため、排水が悪い。そのため本事業においては幹線・排水路及び樋門を改修すると共に取水堰の改修を行った。
- USA-R50-2-17 1948年
- USA-M798-A-39 1948年
- 1:50,000 chikeizu | 地形図
- 平成14年度公共用水域水質測定結果 付表4
- 河川水質ワースト
- 鹿児島県工業試験場(1962/第9号) 大隅中部・垂水地域および阿久根・出水地域の地下水の水質について
- 水質調査
- 折口川、およびその周りの深井戸は各成分が多く水質が悪い。これは折口川周辺の温泉水の混入によるものと思われる。
並行在来線経営基本計画
第3セクター化の資料。
廃線探索 三井串木野鉱山軌道(歩鉄の達人)
串木野の配線。
趣味
粘菌の輸送ネットワークから都市構造の設計理論を構築―都市間を結ぶ最適な道路・鉄道網の法則確立に期待―
最適なネットワーク構築の研究。
Jobs
開発生産性の部署。興味がある。
Whole Earth Index
Whole Earth Catalogを公開している。
ito(イト)を徹底紹介|価値観のズレに大爆笑できるカードゲーム | ぼくボド
価値観のズレを楽しむゲーム。
ブロックス Blokus ボードゲーム | マテル社(7歳くらいから)|木のおもちゃ.jp
シンプルで奥深いボードゲーム。
データセンターで大声を出してはいけません - Publickey
おもしろ動画。
バイオハザードのマークはどのようにデザインされたのか? - GIGAZINE
バイオハザードのロゴが作られた経緯。面白い。
やはりお前らのセンターピン理論は間違っている - An Epicurean
ボウリングの理論。面白い。
WolfMUD: About WolfMUD
テキストベースのマルチプレイヤーゲームの説明。
Sweet Home 3D JS Online
部屋を設計できるWebアプリ。
Watchmaking: Machining a 0.6 mm Screw - YouTube
極小のネジを作る動画。
荒井注のカラオケハウス - 廃墟検索地図
機材が入らなかった珍騒動。
Herman Miller / Aluminum Group Chairs(アルミナムグループチェア
たまに家具屋で見る美しい椅子。
山下清 - Wikipedia
画家、裸の大将。
追い込まれた経験があるからこそキャラがリアルに――『いじめるヤバイ奴』中村なん先生インタビュー - マガポケベース
異色の経緯。
親からは「どうせすぐに打ち切られる」というようなことを言われました。 でも連載が決まってすらいない僕としては「現状は、打ち切られる以下の状態なんだよな……」と。
とはいえ、連載が始まらないと本当にヤバイなぁと感じて、死にものぐるいで頑張りました。 毎週のようにネームを持ち込んで。そこから5カ月で連載が本決まりになりました。 「ああ、命がつながったなぁ」と安堵したのを今でも覚えています。
僕自身はこんな感じですが『いじめるヤバイ奴』は真面目に描いています。 自分のせいでもあるんですが、そんな追い込まれた経験が作品にも生かせているんじゃないかとは思っています。
佐賀市が運営する通販サイトはなぜ2年足らずで閉鎖したのか | 竹内謙礼の一筆啓上 | ネットショップ担当者フォーラム
ネットに関係するすべての商売でいえる。
最後の敗因は「ナンバーワンになる意識が低かった」という点だ。ネットショップ運営の初心者にありがちな考え方に「そこまで高い売り上げは望んでいない」というものがある。「月に100万円売れればいいんです」「たくさん売れなくてもいいんです」などと、「高い売り上げを望まない=頑張らなくてもいい」という図式になってしまい、中途半端なお金と時間の投資で終わらせて、ネットショップの運営に失敗するケースは少なくない。
ネットショップは優れた1店舗にお客が集中するため、売れるネットショップと売れないネットショップの差が極端に分かれやすい。実店舗であれば「近い」「店の雰囲気が良い」と言う理由で、二番手、三番手のお店にもお客が流れて来る。しかしネットショップは「価格」「ページ」「露出」の3拍子がそろった店にお客が集中するため、ナンバーワンの店舗以外にはお客が流れにくくなる。
Eコマース業界が1%の成功店舗と99%の負け組に分かれてしまう要因は、この「全力でやらなければまったく売れない」というネットショップ運営の難しさにある。
記事一覧 - 週末大冒険
面白いスポット紹介。
GameBoy Graphics: Tiles, Palettes, and Encoding - YouTube
ゲームボーイの描画システムの解説。
Soul of Japan
日本文化の説明。
How to learn any language in six months | Chris Lonsdale | TEDxLingnanUniversity - YouTube
外国語を学ぶ方法。
- コンテンツに集中する
- コミュニケーションの道具として使う
- 体で学ぶ
- リラックス、好奇心。曖昧さに耐えられる環境
- ボディランゲージから得る
- たくさん聞く
- 組み合わせる
- 表情から学ぶ。発音とか
HTTP Cats
HTTP Statusの猫画像。
Milan Cvitkovic
カンファレンスのルール。
マンハッタン距離 - Wikipedia
タクシー幾何学。
Mechanical Watch – Bartosz Ciechanowski
時計の詳細な仕組み。精巧なアニメーションで理解しやすい。
血と汗とピクセル 大ヒットゲーム開発者たちの激戦記
スターデューバレーの開発者の話。5年間1人で開発して完成させた…。 ディアブロ3の話はすごいな。最初だめだったゲームが、数年かけてその評価を覆す。
S C A P E S
すごい雰囲気のいいGIFを集めたページ。
Aqua-Master X570A|水冷PC|BTOパソコン|BTO パソコン(PC)の【@Sycom】(サイコム)
なしを選択できるので安くできる。
「有意義に」時間を潰せるウェブサイト12選 | ギズモード・ジャパン
面白いサイトの紹介。
HowStuffWorks - Learn How Everything Works!
色々な仕組みを教える教育サイト。
MapCrunch - Random Street View
ランダムな場所のストリートビューを表示する。
Astronomy Picture of the Day
毎日NASAの写真を公開している。
EarthCam - Webcam Network
世界中のWEBカメラを閲覧できるサイト。
インターネット - Netinbag.com
さまざまな分野の興味深いFAQが掲載されてる謎のサイト。
時間は実在するか? - 日経サイエンス
時間はお金のようなもの、という例えがわかりやすい。
Unicode 10.0
1ページにまとまったUnicode絵文字一覧。
ASCII art generator for geeks! - Convert images/pictures to ASCII art online! (HTML/text)
画像をアスキーアートに変換する。
Bonkers World
おもしろい風刺画サイト。
ColorSpace - Color Palettes Generator and Color Gradient Tool
カラーテーマを作成してくれる。
Upload Image – remove.bg
画像から背景を消すツール。
Tank Encyclopedia, the first online tank museum
戦車の百科事典。おもしろい。
銃の基礎知識
面白い。特に 警察庁長官狙撃事件 の銃の観点から見た分析が興味深い。
科学映像館
古い映像が面白い。
Tier List Maker for Everything - TierMaker
なんでもリスト、ランキングを作るサイト。
Generated Photos | Unique, worry-free model photos
架空の顔を生成するツール。
Electronic Handheld Game Museum
携帯ゲーム機の博物館。
「ものこわし」のすすめ!
身近なエンジニアリング。
日本の近代土木遺産
面白い。
バイオハザードへのツッコミ
面白い。
Japan 1:50,000 測量地図 スタンフォード
日本の古地図。
父の借金を負わされた男性がやっと掴んだ「幸せ」 | ボクらは「貧困強制社会」を生きている | 東洋経済オンライン | 社会をよくする経済ニュース
逆境でも才能によって抜け出せる人もいる。
Bootstrap 5 Colors - examples & tutorial
Bootstrapの色一覧。
DONE The Tipping Point
- 25, 30, 40, 43, 58, 60, 73, 80, 86, 90, 96, 101, 122, 144, 158, 177, 200, 202, 215, 230, 244, 250, 260
- 6回辿る
- 任意の人を2人選んで関係を6回辿ればつながる、というがこれは一様でない。一部の人が大きなつながりを持っていてハブになっている。コネクター。その人を元に様々な人がつながりを生んでいるような。
- 知人
- ほとんどの人にとって、この種の知人関係養成(バースデーカードを送ることとか)にはシャイになる。誰でもやっぱりそうだよな。connectorの一人は、そういうゆるいつながりを維持することに長けていた。
- 仕事を得るうえでは、弱いつながりの方が役に立つ。多くの人が紹介で職を得る。友人よりも知人の方が多い。定義的に知人の方が外部の世界の人々であるからだ。
- セサミストリート
- セサミストリートはもっとも教育的な番組の1つである。どうやって子供に興味をもってもらうか。世界に名前付けをしている段階の子供にとって、1つの名前が異なる2つの物を指すことがあることを理解させるのは難しい。
- 1980年代のニューヨークの犯罪
- 犯罪は病気のように伝染する。割れ窓。犯罪を防ぐためには巨大な問題を解決する必要はない。落書きなど小さな犯罪を防げばいい。
- 人間は行動を考えるとき、文脈より人物の性格や備わったものを重視しやすい(FAE)。実際は文脈のほうが大きな影響をおよぼしている。たとえば兄弟構成。よく言われる特質(年上の子は保守的、とか)は、家族外では当てはまらないことが多い。
- 家族より、近所やコミュニティの方が影響が大きい。歩いていてすれ違う人も、どう行動するかを決定するのに大きな影響をもたらす。
- 組織は小さいほうがいい。大きいとコミュニケーションコストが大きくなり、コントロールが難しくなるから。
- 1960年のミクロネシアでは自殺はほとんど知られてなかったが、一人の少年の自殺をきっかけに毎年増加していった。率はアメリカの7倍にまで達した。自殺は伝染する。
- ヘビースモーカーの典型的な特徴。当てはまる人が多いな。
- 外向的
- 不安症、神経症
- 飲酒、コーヒーの量が非喫煙者に比べて多い
Amtrak National Route Map
アムトラックの路線図。
Wikipedia
ネタ
遅刻する食パン少女 - Wikipedia
明確な発祥はわかっていない。
街灯の下で鍵を探す - Wikipedia
的確なたとえ。
ハイルブロンの怪人 - Wikipedia
DNA汚染で起きた架空の大犯罪者。
ムペンバ効果 - Wikipedia
湯のほうが水よりも早く凍ることがある現象。なぜかわかっていない。
Wikipedia:Lamest edit wars - Wikipedia
編集合戦・不毛な議論の一覧。
オープンコーラ (飲料) - Wikipedia
GPLのコーラ。
核ガンジー - Wikipedia
面白いバグ。
qu以外の綴りでqを含む英単語の一覧 - Wikipedia
変わった記事。
チューバッカ弁論 - Wikipedia
詭弁の一種。
鮫の夏 - Wikipedia
2001年夏に全米でサメの話題でもちきりだったこと。メディアの影響と統計的事実との乖離を考える機会になる。
Wikipedia:ビコリム戦争 - Wikipedia
史実として掲載されていた虚構記事。
球形の牛 - Wikipedia
現実に起こる複雑な現象を高度に単純化した科学的なモデルでとらえることを喩えた表現。
人物
みうらじゅん - Wikipedia
エッセイスト、ミュージシャン、評論家など幅広い分野で活躍するタレント。
アラン・クーパー - Wikipedia
ペルソナ、Visual BASICの開発者。
Category:エドガー・ダイクストラ - Wikipedia
ダイクストラにはカテゴリページがある。
西村博之 - Wikipedia
ひろゆき。やたら記事が長い。
Mark Wahlberg - Wikipedia
映画でよく見るイカしたおっちゃん。マット・デーモンとよく間違われるらしい。そんなに似てるかわからない。
場所
桐生市 - Wikipedia
大規模な飛び地を持つ珍しい市。
グリーンブーツ - Wikipedia
ランドマークの遺体。
由布島 - Wikipedia
浅瀬でつながった島。
ソフィテル東京 - Wikipedia
一時期不忍池にあったビル。
中銀カプセルタワービル - Wikipedia
世界で初めて実用化されたカプセル建築。
リンダウ - Wikipedia
美しい島。
富岡城 - Wikipedia
面白そうな城。陸繋島。
NSPIXP - Wikipedia
日本で初めての相互接続点は岩波書店本社ビル。
シュヴァルの理想宮 - Wikipedia
素人の作ったすごい建築物。
沢田マンション - Wikipedia
沢田マンションは、素人が独自に建てた鉄筋コンクリート造の建物である。
チッタデッラ - Wikipedia
城壁都市。
宗谷 (船) - Wikipedia
奇遇な歴史をたどった船。現在はお台場に展示されている。
フレデフォート・ドーム - Wikipedia
世界最大のクレーター。
ペリフェリック - Wikipedia
フランスの高速道路。
通り池 - Wikipedia
カルスト地形の例。
腐海 - Wikipedia
変わった場所。
高輪橋架道橋下区道 - Wikipedia
1.5mの高さしかない道。
キンシャサ - Wikipedia
首都が川を隔てて隣り合っている。
フーバーダム - Wikipedia
超でかいダム。
馬毛島 - Wikipedia
滑走路の島。
3 Ulitsa Klubnaya - Google Maps
ロシアの田舎。かなり発展途上国感。
プロディジー - Wikipedia
電子音楽で有名。
隅田川橋梁 (東武伊勢崎線) - Wikipedia
建造から100年経っているのが信じられない、美しい橋。 併設の歩道橋から間近に見学できる。
国際連合本部ビル - Wikipedia
よく映像で出るやつ。
松住町架道橋 - Wikipedia
秋葉原の緑色の橋。
地中海 - Wikipedia
面白い。特殊な環境なことがわかる。
ジブラルタル海峡 - Wikipedia
地中海と大西洋の接続点。
ジブラルタルの岩 - Wikipedia
でかい岩。
事件
稲葉事件 - Wikipedia
驚きの警察スキャンダル。
1970年のボーラ・サイクロン - Wikipedia
独立の機会となった自然災害。
彌彦神社事件 - Wikipedia
群衆事故。
ベレンコ中尉亡命事件 - Wikipedia
函館空港に戦闘機で亡命した事件。
マースク・アラバマ号乗っ取り事件 - Wikipedia
映画『キャプテン・フィリップス』で映画化された事件。
帝銀事件 - Wikipedia
未解決事件。
国鉄三大ミステリー事件 - Wikipedia
名前すごいな。
ツングースカ大爆発 - Wikipedia
隕石被害。
神戸高塚高校校門圧死事件 - Wikipedia
悲惨な事故。
福島女性教員宅便槽内怪死事件 - Wikipedia
有名な、トイレにハマった図。
八甲田雪中行軍遭難事件 - Wikipedia
最悪の遭難事件。
ダッカ近郊ビル崩落事故 - Wikipedia
最悪のビル崩壊事故。
プログラム
ウォッチドッグタイマー - Wikipedia
定期的に発動することで、システムが機能し続けていることを確認させるためのタイマー。
標準Cライブラリ - Wikipedia
もともと基本的な機能を内蔵していなかったという。
バイトコード - Wikipedia
中間表現のコードの総称。
中国における地理的データの制限 - Wikipedia
座標系にランダムなずれを付加している…。
終了ステータス - Wikipedia
終了ステータス。
Plan 9 from Bell Labs - Wikipedia
UNIXはそのような差異をなくそうとし、全ての入出力をファイル操作でモデル化しようとした。そのため、全デバイスドライバが制御手段として read および write 操作に対応する必要に迫られた。こうすることで、mvやcpなどのユーティリティで、実装の詳細を気にすることなくデバイスからデバイスにデータを転送することができるようになった。しかし、UNIXでは多くの重要な概念(例えば、プロセス状態の制御など)はファイルにきれいにマッピングされなかった。ソケットや X Window System といった新たな機能が追加されたとき、それらはファイルシステムの外に存在するようになった。新たなハードウェア機能(ソフトウェアがCDのイジェクトを制御するなど)も、ioctlシステムコールなどのハードウェア固有制御機構を使うようになった。
なるほど。
Unreal - Wikipedia
Unreal Engineがもともと搭載されていたゲーム。
幽霊文字 - Wikipedia
規格の中にある典拠不明の漢字。
国際通貨記号 - Wikipedia
通貨を示す記号。
Intel® 64 and IA-32 Architectures Software Developer Manuals
5000ページある命令セットマニュアル。
IEEE 754 - Wikipedia
浮動小数点に関する標準仕様。
Sieve - Wikipedia
電子メールフィルタリングのためのプログラミング言語。
年問題 - Wikipedia
面白い。
90対90の法則 - Wikipedia
ソフトウェア開発のプロジェクトが、スケジュールを大幅にオーバーするのが恒例化していることを皮肉ったもの。
スティグラーの法則 - Wikipedia
科学的発見に第一発見者の名前が付くことはない、という法則。
キロバイト - Wikipedia
kbとKBの違い。
Prattパーサ - Wikipedia
パーサの方式。
カーゴ・カルト・プログラミング - Wikipedia
秀逸なネーミング。
カーゴ・カルト・プログラミング(英: Cargo cult programming)とは、コンピュータープログラミングにおいて、実際の目的には必要のないコードやプログラム構造を儀式的に含めるという行動で特徴づけられる悪習である。
カーゴ・カルトという語句は、元々は第二次世界大戦後の南太平洋で見られた先住民の宗教に由来している。これらの人々は、戦時中素晴らしい積荷をもたらしてくれた神のような飛行機を呼び出そうと、一心不乱に精巧な飛行機の模型や滑走路を作り上げた。
方法自体にこだわってしまうことはやりがち。
マコネルは、ソフトウェア開発集団が、ソフトウェア開発工程を猿真似的にそのままか、あるいは長い時間と無給の残業を義務付けることにより(ソフトウェア開発者たちが彼らのプロジェクトが成功するのをみるのに多大な時間とエネルギーを費やす)コミットメント指向の開発アプローチを模倣しようとすることのどちらかによって、より成功している開発集団の真似をしようとしてしまう事例について説明している。しかし、成功した企業ではこれらは成功の原因ではなく高いモチベーションの結果である可能性がある。
デザインパターン (ソフトウェア) - Wikipedia
まとめページ。わかりやすい。
Bearerトークン - Wikipedia
トークンの種類。切符はBearerトークンと同じ性質を持つ。
KISSの原則 - Wikipedia
設計の単純性(簡潔性)は成功への鍵だということと、不必要な複雑性は避けるべきだ、という原則。
A* - Wikipedia
グラフ探索アルゴリズムの1つ。
驚き最小の原則 - Wikipedia
設計の原則。驚きが少ないものを選択すべきという考え方。
デメテルの法則 - Wikipedia
簡潔に言うと「直接の友達とだけ話すこと」と要約できる。
その他
Category:Unicodeに存在しない文字 - Wikipedia
このカテゴリは、Unicode上に存在しない文字は検索機能による検索がとても困難なため、それらUnicodeに存在しない文字が含まれる記事を一覧化し、利用者の便宜を図るためのカテゴリである。
ダーウィン賞 - Wikipedia
イグノーベル賞的な残念賞。
ダーウィン賞(ダーウィンしょう、英: Darwin Awards)は、自らの愚かな行為によって「死亡する」もしくは「生殖能力を喪失する」ことで劣った遺伝子を抹消し、「人類の進化に貢献した」人物に対する皮肉として贈られる賞。進化論者であるチャールズ・ダーウィンにちなんで名づけられた。
無限の猿定理 - Wikipedia
無限の猿定理(むげんのさるていり、英語: infinite monkey theorem)とは、十分長い時間をかけてランダムに文字列を作り続ければ、どんな文字列もほとんど確実にできあがるという定理である。
ジェントリフィケーション - Wikipedia
都心から古い町並みが消えるメカニズム。
トラス橋 - Wikipedia
トラスの種類の詳しい解説。
ベイリー橋 - Wikipedia
わずか数十名で数時間単位で構築しうるその工法は、まさに工学上の奇跡的発明といえるもので、その軍用の仮設橋は第二次世界大戦でイギリス軍、アメリカ軍、カナダ軍に広く活用され、連合国の勝利に大きく貢献した
レナ (画像データ) - Wikipedia
画像処理のテスト画像の人。
竹 - Wikipedia
身近だけどあまり知らない竹。
ミラーテスト - Wikipedia
鏡によって、自分を認識できるかどうかのテスト。パスできる動物は少ない。
トラス橋 - Wikipedia
橋の種類。
緊急通報位置通知 - Wikipedia
GPS情報が自動で通知されるので、正確な位置を伝えることが最優先なわけではない。
藪漕ぎ - Wikipedia
語調が独特な記事。
押し屋 - Wikipedia
そういう職業。
グレート・アトラクター - Wikipedia
銀河系そのものが移動している。
ダニング=クルーガー効果 - Wikipedia
能力に関する認知バイアス。
FGM-148 ジャベリン - Wikipedia
ウクライナ侵攻で効果を発揮している対戦車ミサイル。
チェコの針鼠 - Wikipedia
よく戦争映画で見るやつ。
アスペクト指向プログラミング - Wikipedia
プログラミングパラダイムの1つ。
鉄道捜査官 - Wikipedia
タイトルが面白すぎる。
セカンド・サマー・オブ・ラブ - Wikipedia
ダンス・ミュージックのムーブメント。
集団就職 - Wikipedia
ある期間に起きた社会現象。
濾過摂食 - Wikipedia
そんなエネルギーのとり方があるのか。
AC-130 - Wikipedia
ガンシップ。
MIM-104 Patriot - Wikipedia
ソフトウェアのバグにより迎撃に失敗し、被害が出た。 この記事、異様に内容が充実してるな。
アテネ - Wikipedia
ギリシャの首都。
アナタハンの女王事件 - Wikipedia
極限状態の、奇妙な事件。
ローリングリリース - Wikipedia
ソフトウェア開発において断続的に更新していくリリースモデル。 バージョン番号でリリースを管理するようなモデルと対比される。
Data-oriented design - Wikipedia
データ駆動開発ではないので注意。
シミュラクラ現象 - Wikipedia
3つの点が顔に見える現象のこと。
真鶴町 - Wikipedia
『ひとかた』のモデルになった町。 行ってみたい。 独自の景観条例があり、美しさを維持しているという。
Template:Unicode chart Cuneiform - Wikipedia
謎の文字。幅がすごい。
焼肉定食 (熟語) - Wikipedia
ちゃんと記事がある驚き。古くからあったネタというのが意外。
Tu-160 (航空機) - Wikipedia
美しいフォルムの超音速爆撃機。
RT-23 (ミサイル) - Wikipedia
鉄道の大陸間弾道ミサイル。
エクラノプラン - Wikipedia
異形の地面効果翼機。
セント・ヘレンズ山 - Wikipedia
やばい噴火で山体崩壊。
涅槃 - Wikipedia
繰り返す輪廻の再生から開放された状態のこと。
20 Fenchurch Street - Wikipedia
曲面が凹面鏡になって危険な反射をするビル。 目玉焼きを作った人もいるくらい。
デトロイト - Wikipedia
都市が復活してきている例。
ジョン・ブラウン (奴隷制度廃止運動家) - Wikipedia
運動の手段としてアメリカでは初めて反乱を唱道し実行した人物として知られる。 ブラウンは「19世紀のアメリカ人で最も議論の的になる人物」と言われてきた。
Jamie Zawinski - Wikipedia
いくつものプロジェクトに関わった有名なプログラマー。
He is best known for his role in the creation of Netscape Navigator, Netscape Mail, Lucid Emacs, Mozilla.org, and XScreenSaver.
RSpec - Wikipedia
Wikipedia。
モガディシュの戦闘 - Wikipedia
ブラックホーク・ダウン。
プルーイット・アイゴー - Wikipedia
アメリカの住宅計画史上、最大の失敗といわれている。
空港に居住した人物の一覧 - Wikipedia
映画『ターミナル』を見て。けっこういて興味深い。
山口彊 - Wikipedia
広島と長崎で2回被爆した人。
T-shaped skills - Wikipedia
精通した専門分野と浅く広く分野を持てということ。 まず縦から始めたほうがよさげ。
Façade (video game) - Wikipedia
AIのゲーム。
リカルド・ヴィラロボス - Wikipedia
エレクトロニックのミュージシャン。
警察庁長官狙撃事件 - Wikipedia
未解決事件。
ストライサンド効果 - Wikipedia
消そうとするとかえって炎上する。
稲子 (宮城県) - Wikipedia
限界集落の最期。
Ricky Gervais - Wikipedia
イギリスのコメディアン。
スタートアップ
スタートアップのためのマイクロサービス入門 | AWS Startup ブログ
キーワードだけで導入してはならない。
Product Hunt – The best new products in tech.
最新のイケてるプロジェクトを探す。
@levelsio (Pieter Levels)
プロジェクトを公開してる人のブログ。
Selling stuff on a busy beach
何をどこで売るか。
Hi, I’m Justin Jackson
有名な人のサイト。
Ramen Profitable
コストを下げればそれだけ挑戦できる期間が伸びる、という話。
Y Combinator
Y Combinatorのトップページ。
Crowdfund Innovations & Support Entrepreneurs | Indiegogo
クラウドファンディングサイト。
Hello, Startup: A Programmer’s Guide to Building Products, Technologies, and Teams – an O’Reilly book by Yevgeniy Brikman.
How to Start a Startup
動画シリーズ。
マネジメント
【1時間で分かる】P&G流マーケティングの教科書|石井賢介(Marketing Demo代表取締役)|note
広告代理店に依頼するためのブリーフィングのテンプレート。
組織づくりをエンジニアリングするZennBook
組織づくりの本。
マルチバリューストリームというアンチパターン - mtx2s’s blog
閉鎖性共通の原則は開発プロセスにもあてはまる。
Feature Parity - 機能負債がレガシーシステムのマイグレーションを失敗させる - mtx2s’s blog
技術負債はよく知られているが、機能負債もあり、大きく影響している。
つまり、ポジティブな価値であったはずの「新機能」が、実際にローンチしてみると、ネガティブな価値である「欠陥」に位置付けられている。これが、機能負債の正体。
リリースした新機能や改善の多くに価値がないという調査結果が意味すること - mtx2s’s blog
- 機能の64%は使われない
- コストがかかるだけでなく、むしろ価値を損なわせる
- すべての新機能を特定の指標によって評価する。成功率は50%を下回っているという
「体験」にコミットするチームと「仕様」にコミットするチーム - mtx2s’s blog
- 仕様は仮説にすぎない。
仕様や、それに基づいて作られたプロダクトは、あくまで仮説に過ぎない。顧客に体験してもらい、その仮説を検証してこそ、プロダクトに対して本当に求められている姿が見えてくる。仕様に対するプロダクトの品質より、体験に対するプロダクトの品質を真としてそこに近づけようとする。それが、「体験にコミットする」ということだ。
- 体験にコミットすると顧客視点で仕様を見るようになる
- 体験にコミットすると顧客の反応を計測するようになる
コミュニケーション
賢い質問のしかた
技術コミュニティでの賢い質問のやりかたについて書かかれている。 会社などでもまったく同じで、いい質問にはすぐにレスがついて解決される。 愚かな質問に対して回答するのはストレスなので、誰も対応したがらない。放置される。解決に時間がかかる。
悪びれずに言うならば、私達は質問をする前に、自分で考えたり下調べしたがらない人達に敵意を持っているのだ。そういう人達は時間を無駄にする ―― 彼らは一方的に質問を行い、そして他のより興味深い質問や答えるに足る人に対して費やせた時間を無駄にする。このような人を私達は「敗者(losers, ルーザー / タコ)」と呼ぶ(そして歴史的な経緯でたまに「lusers」と綴る)。
1.投稿先のフォーラムのアーカイブを検索して答えを探してみる。
2.ウェブを検索して答えを探してみる。
3.マニュアルを読んで答えを探してみる。
4.FAQ(よくある質問)を読んで答えを探してみる。
5.追跡や実験を行って答えを見つけてみる。
6.詳しい友人に聞いてみる。
7.もしプログラマなら、ソースコードを読んで答えを探してみる。
リーダーとつきあうための冴えたやりかた / Managing Your Leader - Speaker Deck
上司とうまくやっていく方法。
rfc1855
ネチケットガイドライン。
15 rules for communicating at GitHub | Ben Balter
GitHubでのコミュニケーションのやりかた。
GNUプロジェクト提唱者のリチャード・ストールマンによる「心あるコミュニケーションのガイドライン」が発表される - GIGAZINE
ガイドライン。名前で呼びかけて敬意を示すのはよさそうだな。
数学
【大学数学】線形代数入門⑥(連立方程式:不定と不能)【線形代数】 - YouTube
連立方程式の不定と不能。
ベクトルから行列へ
解説の文書。
O’Reilly Japan - 行列プログラマー
行列をプログラムを通して学ぶ。
行列入門
行列の教科書。
中学数学からはじめるAI(人工知能)のための数学入門 - YouTube
必要な3つのジャンル。
高校数学+α:基礎と論理の物語 | 忠, 宮腰 |本 | 通販 | Amazon
教科書。PDFで公開されている。
方程式と関数の違いを理解しよう! - 理系のための備忘録
違いは何か。
予備校のノリで学ぶ「大学の数学・物理」 - YouTube
数学のチャンネル。
とある男が授業をしてみた - YouTube
数学のチャンネル。
四元数 - Wikipedia
クォータニオン。回転軸(ベクトル)と回転角(スカラー)よりなる4成分で3次元空間の回転を表現する。CGなどでよく使う。
MATLAB - Wikipedia
数値解析ソフトウェア。
トーラス - Wikipedia
回転面のこと。
テンソル - Wikipedia
基底を選べば多次元配列で表せるが、座標系によらず定まる量。
【大学数学】線形代数入門④(一次独立と一次従属)【線形代数】 - YouTube
一次独立と一次従属。
【大学数学】線形代数入門③(一次変換と演算の性質)【線形代数】 - YouTube
行列はベクトルを別のベクトルに変換するもの。
【大学数学】なぜ線形代数か(行列の意味)【線形代数】 - YouTube
線形代数の解説。
中学数学からはじめる三角関数 - YouTube
三角関数。
中学数学からはじめる微分積分 - YouTube
微分積分の解説動画。
中学数学からはじめる複素数 - YouTube
複素数の解説。
中学数学からはじめる指数対数 - YouTube
指数対数の解説動画。
未分類
カレーが辛い事件 (あのときかれーはからかった)とは【ピクシブ百科事典】
東京ドーム公演のリハーサルで帰った事件。
くらしのマーケット - くらべておトク、プロのお仕事。
リフォームで役に立つ。
「マクドナルド理論」を使うとより優れたアイデアが出てきてプロジェクトが進行する - GIGAZINE
マクドナルドはやめようとなって対案が出てくる現象。
差出人不明の仕送り | オモコロ
怖い話。
栗原:あのね、人は死んだらいなくなるんです。それはもう、あっけないくらい。灰だけ残して消えてしまう。
でも、残された人たちは、それに耐えられないんですよ。だから、死んだ人の『居場所』を作る。 それがお墓です。
Webdriver Torso - YouTube
GoogleがYouTubeの本番環境の品質検証で使っていた動画チャンネル。
Search - Unicode Character Table
絵文字を探すときに便利。