オブジェクト指向は今でも大人気だ(メタな意味で)

Qiita で定期的に "オブジェクト指向が" という記事が人気になるという話を受けてなのか夢の中でこんな言葉が出てきた。

 

『現実世界の物の方が、ソフトウェアエンジニアリングの世界のオブジェクトのように看做せるんじゃないの?』

 

起きてどういう意味なのか考えたけどよくわからなくなった。

 

同じ夢の中で、何かの災害なのか、他人とすし詰めで寝なくちゃいけなくなって、壁にミノムシっぽくくっつく寝袋を使ってる人が羨ましいと思った。

 

だがあれだな、落ちてきたら下の人困るから現実では無理だな。

寝袋あるなら外で寝てくださいって話だな。

はてなブログへの移行が完了した

はてなダイアリーpublic: typedef Takel::Diary Observable; からはてなブログへの移行が完了した。

リダイレクトの設定をしたら自分でもはてなダイアリー側のページが見れなくなった。

管理ツールにさえアクセスできないし、はてなブログ側のインポート設定ではリダイレクトだけ無効にはできないようだった。

これだと意図通り移行できているのか、移行漏れがないのか、何がどう対応しているのかもう確認もできない。

一旦全部取り消してみるか?

 

取り消してみている。あと名前はインポート後に合わせて

public: typedef Takel::Blog Observable;

から

public: typedef Takel::Diary Observable;

にもう変えた。別の名前のほうが区別しやすくて扱いやすいんだけど、2003年から続けてる前の名前はやはり愛着沸きすぎてる。

 

日本語の動詞に意志動詞と無意志動詞

最近、日本語の動詞に意志動詞と無意志動詞という区分を用いる観点があるのを知りました。
この区別と同形同士のペアの区別を、日本語における自動詞と他動詞として解説しているサイトは多いのですが、確かに意志の有無と照らし合わせるとピッタリ対応しているように思えました。

自分の現在のコレクションです。

類型 non-volitional:volitional or intransitive:transitive stem
-areru:-asu 壊れる:壊す kow-
-aru:-asu 回る:回す maw-
-aru:-eru 変わる:変える ka-/kaw-
-aru:-eru 閉まる:閉める shim-
-aru:-eru 決まる:決める kim-
-aru:-eru 止まる:止める tom-
-aru:-eru 浸かる:浸ける tsuk-
-aru:-eru 見つかる:見つける mitsuk-
-aru:-eru 始まる:始める hajim-
-aru:-eru 集まる:集める atsum-
-aru:-eru 温まる:温める atatam-
-aru:-eru 上がる:上げる ag-
-aru:-eru 静まる:静める shizum-
-eru:-asu 出る:出す (出るは意思を感じる用法もありそう) d-
-eru:-asu 溶ける:溶かす tok-
-eru:-asu 冷える:冷やす hi-/hiy-
-eru:-asu 増える:増やす hu-/huy-
-eru:-u 切れる:切る kir-
-eru:-u 割れる:割る war-
-eru:-u 折れる:折る or-
-eru:-u 破れる:破る yabur-
-eru:-u 焼ける:焼く yak-
-eru:-ru 煮える:煮る ni-
-ieru:-esu 消える:消す k-
-iru:-asu 伸びる:伸ばす nob-
-iru:-osu 起きる:起こす ok-
-iru:-osu 落ちる:落とす ot-
-iru:-osu 過ぎる:過ごす sug-
-u:-asu 沸く:沸かす wak-
-u:-asu 動く:動かす ugok-
-u:-eru 開く:開ける ak-
-u:-eru 付く:付ける tsuk-
-reru:-su 倒れる:倒す tao-
-reru:-su 汚れる:汚す yogo-
-ru:-su 帰る:帰す kae-
-ru:-su 直る:直す nao-
hairu:ireru 入る:入れる(両方とも意思があるので対応が崩れている?但し自動詞と他動詞という見方だと対応しているようにも見える) hairu/ireru


ここに着目して、いつもの「より適切な識別子名を選ぼう」を追求していくと面白い知見が得られました。
それとは関係ない知見も得られました。

日本語の意志動詞『倒す』及び無意志動詞『倒れる』に近似する英単語を探した場合の備忘録。

  • 意志動詞『倒す』及び無意志動詞『倒れる』に最も近似すると考えられる英単語は adverb の "down" なのではないか?
  • "down" は (verb ではなく) adverb なので他の動詞が要る。
  • 動詞一語で対応が比較的強そうな語として "collapse" が見つかった。
  • 但し "collapse" は『倒す』、『倒れる』の意味より『崩れる』の意味が先行しているように見える。
  • また "collapse" はラテン語系の単語なのでゲルマン語系の単語であろうと推測される "down" と組み合わせると不自然さが生じる可能性を考慮するべきだろう。
  • "collapse" には transitive verb としての用法と intransitive verb としての用法の両方がある。
  • intransitive verb としての "collapse" には、「病に倒れる」などの場合の無意志動詞『倒れる』に相当する用法がある。
  • transitive verb としての "collapse" にも意志動詞『倒す』に相当しそうな用法がありそうだ。
  • 但し transitive verb としての "collapse" を日本語に訳すときには受け身の『倒される』が適切なように思えた。
  • この場合でも transitive verb としての "collapse" は passive voice にはなっていないように見える(英語の passive voice に be 動詞が必須であると考えた場合)。

例文(作文したのでネイティヴの方からみたら不自然かもしれない):
The blast of the wind collapsed the tower.

古代ギリシアで人類史上最初期に動詞を分類したと思われる時点で transitive, intransitive, passive の三種類に分けられてたらしいので、
意志動詞と無意志動詞のペアに対して更に受け身がペアでくっつくイメージでしょうか。
本当に学びは一生終わりません。

まあいい、移行できない部分があるようなので先にまとめておこう
例えばスタイルシートは移行できないと書いてある。
もう何を意図して今のスタイルシート書いたかなんて全然覚えてないなー。


ページのヘッダ

<div class="main">
	<a href="http://d.hatena.ne.jp/takel/20030824">[[はじめ]]</a>
	<a href="http://d.hatena.ne.jp/takel/20040724">[[韓国編]]</a>
	<a href="http://d.hatena.ne.jp/takel/20060225">[[爆裂帰国編]]</a>
	<a href="http://d.hatena.ne.jp/takel/20080707">[[暗黒出張編]]</a>
	<a href="http://d.hatena.ne.jp/takel/20081109">[[郷愁編]]</a>
	<a href="http://takel.hatenablog.com/">[[blog]]</a>

ページのフッタ

<div class="sidebar">
	<hatena moduletitle="ページビュ〜" template="hatena-module" name="pv">
	<hatena name="counter" cid="11">
	<hatena name="profile">
	<hatena moduletitle="今月カレンダー" template="hatena-module" name="calendar2">
	<hatena moduletitle="一発カレンダー" template="hatena-module" name="calendar">
	<hatena template="hatena-module" name="antenna">
	<hatena template="hatena-module" name="comment">
	<hatena moduletitle="カテゴリー" name="sectioncategory" template="hatena-module">
	<hatena moduletitle="ブックマーク" url="http://b.hatena.ne.jp/takel/rss" template="hatena-module" name="rss">
	<hatena titlelength="15" dateformat="%y/%m/%d" moduletitle="最新トラバ" template="hatena-module" listlimit="30" name="trackback">
</div>


スタイルシート

span.highlight {
	color: black;
	background-color: yellow;
}
img.photo {
	float: right;
	margin: 10px;
	border: 0;
}

a
{
	color: #0000ff;
	text-decoration: none;
	border-bottom: 1px solid #0000ff;
}

a.keyword
{
	color: #000000;
	text-decoration: none;
	border-bottom: 1px solid #cccccc;
}

div.aa {
	font-family: "MS Pゴシック" !important;
	font-size:12pt !important;
	line-height: 100%;
	white-space: nowrap;
}
span.aa {
	font-family: "MS Pゴシック" !important;
	white-space: nowrap;
}

pre.aa
{
	margin : 0em 0em;
	font-size : 12pt;
	font-family : "MS Pゴシック","Mona","mona-gothic-jisx0208.1990-0",sans-serif;
	line-height : 17px;
	text-indent : 0em;
	letter-spacing : 0em;
	speak : none;
}

div.code {
	font-family: "Terminal" !important;
	font-size:14pt !important;
	line-height: 0%;
	white-space: nowrap;
}

.syntax-highlight
{
	overflow: auto;
}

ruby {
  display:inline-table !important;
  text-align:center !important;
  white-space:nowrap !important;
  text-indent:0 !important;
  margin:0 !important;
  vertical-align:text-bottom !important;
  line-height:1 !important;
}

ruby>rb,ruby>rbc {
  display:table-row-group !important;
  line-height:1.0 !important;
}

ruby>rt,ruby>rbc+rtc {
  display:table-header-group !important;
  font-size:71% !important;
  line-height:1.0 !important;
  letter-spacing:0 !important;
}

ruby>rbc+rtc+rtc {
  display:table-footer-group !important;
  font-size:71% !important;
  line-height:1.0 !important;
  letter-spacing:0 !important;
}

rbc>rb,rtc>rt {
  display:table-cell !important;
  letter-spacing:0 !important;
}
/* rp { display:none !important; } */

あれヘッダー壊れてる。</div> が足りてないと思って足してみたら全体のレイアウト崩れた。
おい、どこでバランスとれてる?
仕事でもないのにこんなの追いたくないと思ってしまう程度にはおっさん化してるな。
まあ実際おっさんだし。

はてなダイアリー終了のお知らせ

これみつけた


2019年春「はてなダイアリー」終了のお知らせと「はてなブログ」への移行のお願い
http://d.hatena.ne.jp/hatenadiary/20180830/blog_unify


そうか、遂に終わるのか。
ここまで長かったな、頑張ったな。ありがとう。お疲れ様でした(少なくとも今年中はまだ終わってない)。
よし、じゃあはてなブログに移行しよう。。。


public: typedef Takel::Blog Observable;


あー!もう並行して作っちゃってんじゃん。。。
はてなサブアカウント機能はすごくありがたい機能なんだけど UI/UX 的はちょっと使いづらいし
幸いな事に記事は二つしかなかったので手動で統合できそうだけど
がっつりやってたらサブアカウントか、本当の複垢かして移行しないとダメなところだったな。


ちなみに移行に際して特に気になったのは「はてなブログは export できる?」という点。
今までそれなりに安心してはてなダイアリーを使い続けてこれたのははてなダイアリー
はてなの日記データ形式, Movable Type形式, CSV形式 という3つの形式でエクスポート可能で
もしはてながサービスをやめたりポリシーを大きく変更してここでは続けられないと思う時がきても
今まで書いたものが無駄にならない可能性が高いという判断が大きかった
(なので気が向いた時に程度で数年に一度ではあるものの過去分をたまにエクスポートしてた)。


で、はてなブログはどうなの?という点。


はてなブログは記事本文を Movable Type 形式でエクスポートできる
記事本文とコメントのテキストデータのみ画像類は自力管理, コメントはインポートするとゲストユーザーによる投稿扱い, はてなブックマーク, はてなスターは移行できない)
http://staff.hatenablog.com/entry/2014/08/22/180000


https://www.yururimaaruku.com/entry/export
こちらによると現在は ブログの管理画面→設定→詳細設定 の位置にあるそう。


CSV 形式がなくなってしまっている点はちょっと気になるものの、
エクスポート機能があるのかどうかもよくわからない他社サービスよりはマシなのかな。


で、実際やろうとしてみたら

はてなダイアリーのインポートが集中しているため一時的にインポートの新規受付を停止しています。大変申し訳ございませんが、数日おいて再度お試しください。


おい!

あるエンジニアリング上の奥義の話をしよう。


何か(システムなのかサービスなのかアプリなのかツールなのか等は一旦置いておく)をデザインする時、
意識したほうがよい事がある。


その何かを使うことになるユーザー群のある性質なのだが

  • 不特定多数(拙い英語だが many and unspecified people としておく)
  • 特定少数(拙い英語だが specific few people としておく)

この二つに大別できる。


もっと分類していけば特定少数は比較的固定的な特定少数と比較的流動的な特定少数に分けられたりして、
そこでいろいろ考える事もできると思うがここでは一旦最初の大別だけで話を進めよう。


不特定多数はとにかくあらゆる方向性で玉石混淆で特徴づけられないのが特徴である。
善い奴も悪い奴もいる。
頭の良い奴奴も頭の悪い奴もいる。
もし分類したときこちらに分類される場合、このままじゃつらいから別の視点で/別の観点から、もっと絞り込んだほうがいいと思う
(それは何かを得る為に何かを失う判断になるかもしれないが、その判断をしなければ全てを受け入れる覚悟を暗黙的にしているのと同じだ)。


特定少数は相対的に、何らかの特徴を捉えられる可能性があるのが特徴である。
職場でローカルに使われるツールであればある程度までは性善説寄りに寄ってもよい
(悪意をもって行動した奴は例え法人対個人でもちゃんと責任を問われるだろう。それでももちろん過信妄信盲信はしないのがセキュリティである)。
使うのに一定の情報が必要でもよい。
知らない人は部外者で使ってほしくない可能性があるから、その情報がわずかな量なら望ましいくらいだ。
どんな人たちなのかもっと詳細に限定していく事で無駄なくよりよい形にする方法が見えてくると思う。


自分が最初にこの観点に気づいたのは多分、ポート番号について考えていた時だったと思う。
不特定多数向けには well-known port そのままが向くし、それ以外という選択肢をとろうとするなら明確に理解できる理由、利点が必要だろう。
特定少数向けにはむしろ well-known port を避けてどこか別の番号を割り当てる事にも利点があると思う
(もちろん欠点もあると思うので何を取って何を切り捨てるかの話の中で上手いやり方の可能性が高そうだという話だが)。


それにしても最近、何を考えるにしても何を捨てて何を取るかだとか明確な分類はこうではないかとかそういう観点がすごく多い自分がいる。

ハードボイルド哲学

覚悟、か……。
ハードボイルド、だな……。


『自分の正義も貫けないほどダサかったら、生まれてきて死んでいく意味さえわからなくなるね!』


結局自分は今も昔も頑ななのだ。
他人からの評価を気にしている素振り、柔軟な素振りを見せても
最後には自己評価以上の評価基準を持っていない。


斜に構えたままなのは己自身じゃないのか?


自分自身の中にある正義が綻び始めていないか、常に鑑みる視点はまだ忘れてはいないようだ。
だが、よし正義だと思った時こそ鑑みなければならない。


脆くならないまま、頑なさを悪徳にしない方法は
まだ考え続けなければならないようだ。