しばらく離れていたせいかネタが思いつかない

掲題通り。あまりネットを使う時間を持たなかったせいかネタがない。
単純に発想力が貧困になっている気がする。何かブログに書きたい気もするんだが真面目にネタがない。


ので、リハビリがてら適当にとつとつと書いてみよう。

会社員であることの所感

会社員一年経過したけど、いやー、やっぱりサラリーマンだなぁ、と。
やっぱりサラリーだけだと金銭的な夢がない。ドーンってなりえる何かがほしいと心の片隅で思ってる感じ。
ものっそい安定はするけども。


まだもうちょっと、具体的には最低一年は今やらせてもらってる仕事も面白いんでおとなしくするけど、そこからはなんかしら動こうかなとは思ってる。
繰り返すが仕事は面白いので、社会人としてのたしなみとして会社持つとか、ベトナムにちょっと投資してみるとか、そういう事を社内的に穏便に通すにはどうしたらいいかを調べるところから、程度になるとは思うけど。
波風立ててまで動くつもりは、今はあんまりない。


ただ本質的には、経営層を知っている人間からすると、経営層にかめる立場で感じるものと、サラリーマンの立場で感じるものとの絶対的な違いってのはどうしても感じるってことで、ある程度自分で動ける選択肢を持っておくのは自然かなとは思う。
やっぱり会社は経営層までやってるのが一番面白いよ。死ねるけど。


休出出来ないとか、小さなフルコミットメントを阻害する要因の積み重ねもそれなりにストレス溜まる。
もっともその多少ストレスにたまる状況が、今の俺 = ちっこい子供が二人いて、日本語レベルまだまだの嫁を抱え込んでる状況からするとむしろ都合いいので、その状況が今は合っていて、それが合わなくなる時期を見定めた上で動くというのをやりたいという感じ。

ゴールデンウィーク

今年のゴールデンウィークは、サラリーマンとして割り切れば14連休になるっぽい。
そうしようかなと思いつつ、そんなに休んでも金もする事もないしな、と。
強いていえば家族サービスで金のかからんところに行くくらいかなぁ。それなら14連休もなくていいしなぁ。
という感じ。

ベトナムに戻る予定について

とりあえず今年12月の時点で骨巨細胞腫の手術から2年が経過するので、再発してなければ日本にいる理由もあんまりなくなる。
ので、実際に12月になったら、家族が今後どこに永住するか、は、真面目に考える。
ただ真面目に考えるには、真面目に考える時期になったらするべきことで、今じゃない。ので今は考えない。


それとは別に、嫁と娘・息子は一度帰そうと思っている。
多分来年1月〜2月になると思う。3か月くらいいたいだろうなと思ったけど、嫁は一か月でいいらしいので、それで。


俺もそのタイミングで少し顔出そうとは思うけど、ベトナム旧正月なんで時期が難しいんだよねぇ。どうしようか悩み中。
俺個人だけ適当なタイミングで顔出すんでもいいような気もする。

babelいじってみた

Twitterでつぶやいていることの焼き直しだけど、babelいじってみた。
ざっとコード書いてみた感じ、jsコード汚いな・・という印象。
https://babeljs.io/repl/#?experimental=true&evaluate=true&loose=false&spec=false&code=class%20Hoge%20%7B%0A%20%20constructor()%20%7B%0A%20%20%20%20this.a%20%3D%2010%3B%0A%20%20%7D%0A%7D%0Aclass%20Fuga%20extends%20Hoge%20%7B%0A%20%20constructor(age)%20%7B%0A%20%20%20%20%20super()%3B%0A%20%20%20%20this.age%20%3D%20age%3B%0A%20%20%7D%0A%7D%0Aexport%20class%20Hige%20%7B%0A%20%20get%20name()%20%7B%0A%20%20%20%20return%20%22hige%22%3B%0A%20%20%7D%0A%7D%0Aexport%20function%20test()%20%7B%0A%20%20return%20%22exported%22%3B%0A%7D


特にこれを、

class Fuga extends Hoge {
  constructor(age) {
     super();

js出力するとこうなる。

var Fuga = (function (_Hoge) {
  function Fuga(age) {
    _classCallCheck(this, Fuga);
    _get(Object.getPrototypeOf(Fuga.prototype), "constructor", this).call(this);

classCallCheckの中身はこれ。

function(instance, Constructor) {
	if (!(instance instanceof Constructor)) {
		throw new TypeError("Cannot call a class as a function");
	}
}

_getの中身はこれ。

function(object, property, receiver) {
	var desc = Object.getOwnPropertyDescriptor(object, property);
	if (desc === undefined) {
		var parent = Object.getPrototypeOf(object);
		if (parent === null) {
			return undefined;
		} else {
			return get(parent, property, receiver);
		}
	} else if ("value" in desc) {
		return desc.value;
	} else {
		var getter = desc.get;
		if (getter === undefined) {
			return undefined;
		}
		return getter.call(receiver);
	}
}

es6の仕様に忠実なのかはまだちゃんと調べてないけど、とりあえず、余計だなという印象。
_classCallCheckも_getも外せるだろう。速度を限界まで追い求める系のプロジェクトやる場合には、本気で関数コール一本のコストをケチるので、そういう場面で入れるモチベーションはない。TypeScriptはその辺ちゃんと綺麗になってる。
さすがにextendsとかletの表現とかは妥協してるけど、コードは型でチェックするポリシーなので余計な作業は省いてよしなんだろうなと。


今のところ、babelについては「いつかES6が主流になった時にコード変換せずに動かせる」のが魅力だと思うんで、サーバサイドJSでさしてJSとしてのアウトプットにこだわらない場面では使えるんじゃないの、クライアントサイドや処理速度求めるケースじゃ特に意味ないというかデメリットのがでかいよねという印象。

とりあえず

4本系統の違う話を書いてみた。
多少リハビリにはなったかな。