Zanmemo

by esehara

RSS

New Memo

いい言語が必ずしも好きな言語であるとは限らない


考えてみれば、前提として「いい言語」が「好きな言語」みたいな風潮があるけれども、決してそういうことでない感じもする。

好きな言語

良い言語


一つの仮説としては、良い言語と思わせる部分としては一貫性があるということに尽きると思う。例えばRubyは基本的にはオブジェクト指向を崩そうとしない部分がある。それは同じようなスクリプト言語であるところのPythonと比較すればわかりやすい。Pythonの場合、どうしても突貫的なオブジェクト指向という側面は避けられない。


場合によっては、一貫性があることと簡潔であるかということはまた別問題のような気がする。本来、一貫性があるということは、ルールができるだけ一意に決まるため、簡潔になる側面がある筈なのだが、どうもそうではない部分も多い気がする。


Random Pickup

労働時間8時間の他に、自分を磨くための3時間を余計に見積もっておきなさい

Crean Coder』を読んでいたら、「労働時間8時間の他に、自分を磨くための3時間を余計に見積もっておきなさい」と書いてあって、なるほどなと思う。一週間にすると、40時間のうち、20時間は自分のための時間を持っているか、ということらしい。


その仕事にとって「優秀な人」というのはなんだろう

優れたエンジニアを採用できないワケ」を読んでいて、少々冷汗を書いたりしていた。以下はその理由だ。

傲慢さやだらしなさ、細かいことに対する注意力の欠如などは、すぐに目に付きます。それらに気付いた場合、採用は見送ったほうが賢明でしょう。

ここはモロに当てはまるのだけれど、同様に、「優秀さ」ということについて、深く考えさせられる。技術者にとって「優秀さ」といった場合、「技術的な解決方法に長けている人」であったり、「チームで開発する上において、足並み揃えて仕事が出来る」であったり、あるいは「その物事に対して深く精通している」という意味であるかもしれない。これら三つについて、どれに焦点を絞るのか、ということについて混乱がある気がする。

上の記事は、「自分たちが欲しい人材」、つまり「僕達にとって優秀さということはこういうことですよ」という意味での価値だと思うし、それを提示するのは正しい一方で、多くの人々にとって、そもそも「自分たちにとって優秀なエンジニアとはなにか」ということを具体化せずに「優秀さ」という曖昧な概念を考えているというのがアレなのかもしれないな、とは思う。

とはいえ

何度も面接を落ちている自分がこういうことを書くのは滑稽なのかもしれない。


架空のことわざ 『歯磨きをしない男とは結婚してはいけない』

これについては、イギリスにありそう。如何にも言いそうな言い回しである。罵倒語として「あいつは歯磨きすらしない男だ」ちという類似罵倒があるということにしたら良いかもしれない。


「できない人」と技術について

ある技術において、「できない人」が「できるようになる」ということが目指されているのは間違いないと思う一方で、では現実的に「できない人」のために、何かしようとすると、それを貪欲に吸収するのは「できる人」になるという矛盾がありそう。この考え方自体は非常にナイーヴなものではあるし、「できる人」がよりできるようになるということによって、潜在的に「できなかった人」も底上げされるという側面があることは否定できない。

たぶん、教育的には「できない人」という意味はあまり重要ではなくて、如何にしてモチベーションを上げるのか、ということのほうが問題であることは推測できて、もちろんモチベーションがあればなんとかなるというのは、それはそれで嘘だけれど、しかしそもそもモチベーションが無いところに、学習を持ち込んだりしても意味がない。

とすると、本来ならばそこに「モチベーション」という意味があるわけで、そういう意味で「ゲーミニフィケーション」というのがあるような気がするんだけど(ゲームは「モチベーションを如何にして煽るか」という観点が含まれている)、その辺についてはどういう風に考えられているのか、多少なりとも気になる次第だ。


つらいときに言いたい言葉を選ぶ

みたいに言うのも、自分に非が無いような口ぶりになるし、だからといって

といっちゃうと、自分は本当はダメになる気がするし、今頑張っていることに関して嘘をついていて真摯ではない気がするので(こういうところで変に生真面目になったりする……)、中間点として「生きるのが難しい」という言葉を選ぶようになった。


Zanmemoについて、あるいはメモについてのメモ

というわけで久しぶりに作りたいアプリがあったので作っていたのだけれど、なんでいまさらになってメモアプリだったのかについて、ここにメモしておく。

時系列について

たいていの、こういった文書を残すもの(典型例としてはブログ)というのは、大抵時系列を元にしている。新しいものが先にきて、古いものは埋没してくようになる。

時系列が重要な情報というのはたくさんあるのは知っている。例えば、技術ブログの場合、日付が重要だったりするし(xxxのversionで挙動が違うなんてことは山ほどあるので、そういう情報が無いときは日付で判断するしかない)、例えば任意のプログラムのライブラリなら、いつ頃更新されているのか、でそのライブラリを利用するべきかどうかを判断する。

しかし、こういう風な、ふとした思いつきに関しては、時系列で残すことに関して、あまり重要な意味を持たせたくなかったという過去があるし、時間にとらわれるような文章なら、わざわざ残すまでもないだろう、みたいな風なことを考えたりしていた(これはこれで、特殊というか、偏った考え方なのは認める)。なので、あまり日付を意識させたくないという意味で、過去のブログに関して、日付をわざわざ消すようなCSSを書いたりしていた。

確かに、人間はそのときそのときによって、考え方が変わったりするので、時系列的に読んでいって、どういうことを考えていたのか、ことをトレースすることも重要になるかもしれない。しかし、多くの場合は、そういった「思考のトレース」というよりも、ふと古い文章を読んだときにこみ上げてくるような、過去の自分への懐かしさであったりとか、あるいは「こいつ、なかなかいいこと書いているじゃないか」みたいなナルシズムを満たしたりすることのほうが、自分の経験では多く、それは案外重要なのではないか、という風に思ったりした。

なんで、そういうものを作った。

趣旨

どういうことかといえば、最新のポストだけ表示されるようにして、残りの5つに関してはランダムに表示されるような形にしている(これはのちのちの仕様で変わるかもしれない部分なのだけど、意図としては伝わるかと思う)。

当然、5つ以上のメモを残すことは、現状として大変かもしれないし、たぶんこのランダム表示が上手く「ユーザー体験」として機能するのは20以上になってからだろう、とは思う。また、案外、ユーザー体験として弱い可能性もある。それは実際に使ってみないことにはわからない。

あと、実際のところもう少しシンプルに出来そうな気もしている。

蛇足

もちろん、これが需要があるようなアイデアであることは全く無い。単に、自分はそういうものが欲しかったし、現状作ってみて満足している。また、端的にRailsのアプリを作る上において、ミニマムだけど、自分の欲しいものと合致したから作った。それだけなのが正直なところだが、長く続けられるアプリにはしたい。どうせ、Herokuは無料なんだし。(だいたい過去のサービスは料金が支払えずに崩壊する)