i remember nothing

文章の練習も兼ねています

独立して一期目が終わり、引っ越しをしました

2016年04月に新卒として企業で働き始め、半年で辞めて、10月に独立して自営業者になった。

もう9月だ。あれから10ヶ月経ち、持っている法人が1期目を終えた。キリがいいのでその振り返りと引っ越しについて書く。

そもそも自営業者になったのは、労働時間をほどほどにしつつ他の興味のある分野への勉強に時間を割いて、かつ学費を貯めて大学院に再入学するためであった。

学費を貯めるという点は一期で達成することができた。大学院に行きつつ数年は働かなくても暮らせるくらいの額は売りあげることはできた。来年もそのくらいの額は売りあげられる見込みが立っている。

ただ肝心の勉強ができていない。必要そうな本を一通り読んだくらいで、とてもじゃないがこの状態だと大学院なんか受からないだろう。

今やっているプロジェクトも結構重くて、この先2年くらいはそちらの方面には動けないと思う。プロジェクトには思い入れがあるのでそれはそれで完遂したい思いはある。ただいつか大学院には行きたいので今の仕事がひと段落したら、その準備を始める予定だ。まだ25歳なので余裕でやっていける。

自分の月単価は当初はものすごく安かった。ひどいときは月5万で一機能の実装と納品を請け負ったりしていた。 これまで実績がなく、自分も相場を分かっていなかったためだ。

交渉のやり方なども知らなかったので、普通に頑張ってエイッとやった。そうしたら一定の成果が認められて、月単価はかなり上がった。なので一期という単位で見ると相当売り上げられた。経費の運用もかなりうまくいったと思う。法人向けの保険を利用して、退職金の積立もしている。

技術的な面について

この一年でかなりスキルが身についたと思う。主にElixir, Erlang/OTP, SSL/TLS, ネットワーク技術周りの知識がかなり身についた。

何かよくわからないものでもとにかく情報を拾いつつ触って動かしてみるという自分のスタンスと、自営業特有の無茶振り100本ノックがうまいこと噛み合ったのがよかったのだと思う。

もともとクライアントとサーバーを軽く一通り触れる程度の能力だったことを考えると、大いに進歩することができた。

そして、今のお手伝い先ではテックリードと言う立場で仕事をしている。1年前の私からは想像もできないことだ。

精神的な面について

cons

かなり苦しんだ。前職のことはかなり引きずった。

陰口を叩かれ、大勢の前で詰められ、SNSで嫌味を言われ、休職したことすら彼らの仲間内の笑いの種にされたこと、そういった数々のエピソードが何かをしているときにふと意識に上り、体は震え涙は止まらず嘔吐をし寝込む、というのをかなり頻繁に繰り返していた。自己判断はできないが、症状から見ると典型的なPTSDだったのだと思う。

今でこそほとんど回復したが、未だに夢でうなされるし、彼らが参加する気配のある勉強会やイベントなどには足を運ぶ勇気はまだ出ない。

世界がもし公平で因果応報が機能しているのであれば、今苦しめられている自分の方に非があるのだ、とさえ考えた。そんなわけないだろうが!

pros

いいこともあった。大企業の社員という社会的地位を失ったので、自分の能力のみで飯を食っていくしかなくなった。なので根性みたいなものが身についた。パワプロに例えると粘り打ちと悪球打ちのスキルが身についた。

土日だろうがデスマだろうが勉強をしてとにかくコードを書くようになった。そしてそれを楽しめるようになった。

あとは心理的安全性の担保された職場にいたことで、自分の意見をアサーティブに伝える能力が少しずつ身についた。取り戻されたという表現のほうがより正確かもしれない。

引っ越しについて

最近品川近くにマンションを借りた。理由は現在のアパート内での騒音トラブルがいつまでたっても解決しなかったのと、仕事先に行くのに電車で体力を消耗するのが嫌になったから。品川近くなら徒歩で会社に行くことができる。歩いて会社に行けるのはいいことだ。

新しい家は2LDKで仕事部屋と寝る部屋が完全に分かれている。そしてなにより追い焚きができる。

これから

もう少しアウトプットを増やしてもいいかと思う。あとは体調の維持管理。最近は週に三回水泳をしていて体調がいい。 

引越し祝いお待ちしております↓

http://amzn.asia/6jHvhPe

 

続編:kerl で github でリリースされた erlang/otp ビルドを管理する

kerl

github.com

~/.kerlrc に以下の設定を記載。

KERL_BUILD_BACKEND=git
OTP_GITHUB_URL=https://github.com/erlang/otp
KERL_CONFIGURE_OPTIONS="--disable-hipe --enable-smp-support --enable-threads --enable-kernel-poll"
$ kerl update releases
The available releases are:
R13B03 R13B04 R14A R14B R14B01 R14B02 R14B03 R14B04 R15A R15B R15B01 R15B02 R15B03 R15B03-1 R16A_RELEASE_CANDIDATE R16B R16B01 R16B01_RC1 R16B02 R16B03 R16B03-1 R16B03_yielding_binary_to_term 17.0 17.0-rc1 17.0-rc2 17.0.1 17.0.2 17.1 17.1.1 17.1.2 17.2 17.2.1 17.2.2 17.3 17.3.1 17.3.2 17.3.3 17.3.4 17.4 17.4.1 17.5 17.5.1 17.5.2 17.5.3 17.5.4 17.5.5 17.5.6 17.5.6.1 17.5.6.2 17.5.6.3 17.5.6.4 17.5.6.5 17.5.6.6 17.5.6.7 17.5.6.8 17.5.6.9 18.0 18.0-rc1 18.0-rc2 18.0.1 18.0.2 18.0.3 18.1 18.1.1 18.1.2 18.1.3 18.1.4 18.1.5 18.2 18.2.1 18.2.2 18.2.3 18.2.4 18.2.4.0.1 18.2.4.1 18.3 18.3.1 18.3.2 18.3.3 18.3.4 18.3.4.1 18.3.4.2 18.3.4.3 18.3.4.4 18.3.4.5 19.0 19.0-rc1 19.0-rc2 19.0.1 19.0.2 19.0.3 19.0.4 19.0.5 19.0.6 19.0.7 19.1 19.1.1 19.1.2 19.1.3 19.1.4 19.1.5 19.1.6 19.1.6.1 19.2 19.2.1 19.2.2 19.2.3 19.3 19.3.1 19.3.2 19.3.3 19.3.4 19.3.5 19.3.6 19.3.6.1 19.3.6.2 20.0 20.0-rc1 20.0-rc2 20.0.1 20.0.2 20.0.3 20.0.4

github release 最新の 20.0.4 まで選択することができる。

configure options は kerl build時に option として渡すこともできる。

erlang/otp を手元でビルドして使うときのメモ

$ wget https://github.com/erlang/otp/archive/OTP-20.0.4.zip  -P ./otp_src
$ unzip ./otp-src

$ cd ./otp_src
$ ./configure --with-ssl=$(brew --prefix openssl)
                 --enable-kernel-poll \
                 --enable-hipe \
                 --enable-dirty-schedulers \
                 --enable-smp-support \
                 --enable-m64-build \
                 --enable-sharing-preserving \
                 --without-javac \
                 --disable-native-libs \
                 --disable-vm-probes \
                 --disable-megaco-flex-scanner-lineno \
                 --disable-megaco-reentrant-flex-scanner \
                 --disable-sctp
$ make
$ make install

会議・打ち合わせ中に集中力が切れてしまう問題

人の話を長時間聞けない

自分は会議のたぐいがどうも昔から苦手だ。 というより長時間人が話しているのが全般的に得意ではなく、15分も立つと発言が頭に入ってこなくなったり、気づけば違うことを考えていたりして、いつの間にか話に追いつけなくなっていたりする。 そうして慌てて話を追うはめになったり、話を把握できずあとで困ったりすることがよくある。

大抵の場合、興味がないわけではないし、重要な話をしていることもわかるし、自分が主体的に関わってくることならなおさら把握しておかないといけない、ということもわかっている。しかし、それでも長引いてくるとどうも注意がもたない。多分こういうところで使う集中力が平均より劣るのだろう。

そして、ここのところ会議に参加することが増えてきたので、対策の必要性が増してきた。

長期的に考えると、そもそも集中できる能力を身に着けたいというのはあるのだが、これが訓練などで改善される能力なのかどうかはわからない。投薬などはあるかもしれないが。

どちらにしろすぐに良くならないものではありそうなので、その上でいくつか付け焼刃的な対策を考えることにする。

録音しておく

これはあんまり。あとで聞き返してもだいたい15分くらいで飽きるし巻き戻してどこで何を話したか探すのも骨が折れる。 あとその場で話を追えなくなり発言できなくなるという問題は解決できない。

録音して、書き起こしてくれるソフトウェアを用いる

この用途において要求される正確さで書き起こしをしてくれるソフトウェアを見つけられていない。あと残された情報にノイズが多い。 これもその場で話を追えなくなり発言できなくなるという問題は解決できない。

聞いたことをブツブツ復唱する

これは割といい。人の言ったことがその場で頭に入らなくても自分で口に出すことで多少噛み砕くこともできる。 ただこれも場によってはうるさいし、まあ奇妙に思われる可能性がある。声がでかくなりすぎないように注意をする。

議事録を勝手に取る

これはいい。手を動かしていれば注意がそれにくくなるから。内容をあとから確認したくなったときにも役に立つ。 ただ自分も頻繁に発言する場になるとずっとこれをしているわけにはいかないので、どうしても途切れ途切れにはなる。 あとは場によってはパソコンカタカタしてると内職をしていると誤解される場合があるのでメモ取りますね宣言はやっといて損はなさそう。

まとめ

やりようは他にもあると思うので、自分と同じ問題で困っている人はどうしているのか聞きたい。 あとは大前提としてない集中力を少しでも損なわないように体調がなるべく良い状態で参加することが望ましい。

この手の話は結局健康管理の話に着地してしまう。

来世でステ振りをするとしたらもう少し集中力に振りたい。

Karabiner-Elements で Vim 用に Esc キーを押すと英数入力モードに切り替わるよう設定する

背景

  • 現在の MacOS Sierra では Karabiner が動きません。公式でも、 Karabiner-Elements を使うよう推奨されています。
  • また、この記事を書いている時点では Complex Modification (単一のキーを単一のキーにリマップする以外の、より複雑なリマップ機能)は Karabiner Elements の設定画面の GUI からは編集できません。
  • Vim で日本語入力からNORMAL MODEに抜けて英数入力に切り替えて諸々操作するのは面倒
    • Google IME の設定でうまいことできるらしいので Google IME を使っている人はそちらを調べるといいと思います

やり方

~/.config/karabiner/karabiner.json が Karabiner-Elements の設定ファイルになっています。

profiles:rules 以下に、下記の設定を追加する。

                
{
                        "description": "esc キーを単体で押したときに、入力モードを英数にする",
                        "manipulators": [
                            {
                                "from": {
                                    "key_code": "escape",
                                    "modifiers": {
                                        "optional": [
                                            "any"
                                        ]
                                    }
                                },
                                "to": [
                                    {
                                        "key_code": "escape"
                                    }
                                ],
                                "to_if_alone": [
                                    {
                                        "key_code": "japanese_eisuu"
                                    }
                                ],
                                "type": "basic"
                            }
                        ]
}
            

japanese_eisuu は単押しのときのみ(to_if_alone)入力されるようにしておかないと無限ループしてしまうので気をつけてください。

escape キーを escape + japanese_eisuu にリマップしています。 japanese_eisuu は JIS キーボードにあるあれですね。