2017/08/15

GitHub のアカウント名を atton にしてもらった話

GitHub のアカウント名は前々までは atton- だったのですが、atton-.github.io が URLとして認識されづらい問題があったので変更をお願いしてみました。

GitHub には Name Squatting Policy なるものがあり、名前を取るのは早いもん勝ちだけれど流石に使ってない奴に名前を使われ続けるのも何なので、全然使われてないアカウントなら消してあげるよ、みたいなもののようです。

参考にもあるようにテキトーに英文をちょちょっと書いて送る。
実名も載せたのでここでは公開できませんが、

  • atton github で検索すると私が出る
  • 他のサービスでも私がだいたい atton として通っている
と主張してみたらものの1時間くらいであっさり開放してくれました。
その後は名前変更から atton に変更してしまっておしまい。
ということで使いやすい atton.github.io が使えるようになりました。やったね。
しかし、このブログから参照していたURLが404になる可能性もあるのでその辺りは補完して欲しいです。


参考

2017/07/31

株式会社ドワンゴを退職します

まさかこんなに早く退職エントリを書くとは。
表題の通り、株式会社ドワンゴを退職します。

いろいろと働くことについて考えることが増えたため、一旦辞めて整理をしようと思い、辞める流れとなりました。
何度も相談にのってくれた上長、自分と長く話して思考の整理を手伝ってくれたメンターさん、これからの将来について相談してくれたmesoさん、仕切り直しを提案してくれた人事さんには感謝しています。
これだと何か強制操作されて良いイメージだけ書くようにしてるみたいですが、そんなことはもちろん無いです。

まー書けないような複雑な事情とかもあって、人生相談みたいなことをされたり、心配されたり、後押しされたり、無反応だったり、といろいろありました。
そのあたりも含めて話をしてくださったみなさんには感謝しかありません。
いろいろと考えた結果、一度はおもしろそうな方向にサイコロを振りたくなったのです。

ということで宣伝をば。
しばらくは東京でフリーランスのエンジニアとして活動していこうと思います。
なので

  • リモートワークのお仕事を依頼したい
  • リモートワークのお仕事を一緒にやって欲しい
  • 社員として雇いたい
  • 養いたい
といったことがあれば、おいしい御飯の奢りと一緒ならお話を伺います。
ちなみに Rails とか書けます。その辺りのスキルは github.io にまとめてあります。

色々とありますが、おもしろいことになれば良いな。の一言です。

最後に、退職エントリ恒例の欲しいものリストを貼っておきます。
この記事を書いた段階ではレビュー待ち状態なので無理ですが、 VALU で直接支援してくれても喜びます。


それでは、ありがとうございました&これからもよろしくお願い致しします。

2017/07/21

Laravel 5.1 の quickstart を Laravel 5.4 で実行する

Laravel には tutorial 的な quickstart があるのですが、ドキュメントは 5.1 までしか提供されていない。
5.4 の tutorial 的なものは laracast という形で動画で提供されています。
動画を見てコードを書くのが性に合わなかったので 5.4 で 5.1 の quickstart をやってみたログ。
ちなみに作るものは所謂 TODO リストというやつで、よくチュートリアルで作るやつですね。
index, create, delete があるだけ、って感じ。


環境

  • Scientific Linux release 7.2 (Nitrogen)
  • PHP 5.6.30
  • Laravel 5.4.22
  • Apache httpd 2.4.26


5.1 -> 5.4 変更点

具体的な変更点は実は1つしかなくて、Routing の `app/Http/routes.php` の内容を `routes/web.php` に置くだけ。
どうやら Laravel 5.4.22 は api/web/console/channel ごとに routes を分けられる構成になっているっぽい。
書いてて思ったけれど割とモダン。
OR-mapper も extends するだけて使えるタイプっぽいし。
個人的には Routing 部分に処理が出てきたりするのは Sinatra っぽいな、と感じました。
あと html template の名前が blade でかっこ良い。が、宿命的に書きづらい。
ということで作った Repository はこちら。5.4 環境でも何ら問題無く動きます。



Apache 2.4.26 で動かす

Apache 2.4.26 で動かすためには `public` を DocumentRoot にする必要があります。
例えば
DocumentRoot "/home/atton/quickstart/public/"
<Directory "/home/atton/quickstart/public/">
とか。 permission もきちと整えておくこと。
あと DirectoryIndex は index.php にしておいた方が良いかも。
それと AllowOverride All と Requite all granted を書いておくこと必要があります。
加えて LoadModule rewrite_module modules/mod_rewrite.so をコメントインしておく。
.htaccess とかは Laravel が用意してくれるので問題無し。

さらに言えば、使うDatabase が MySQL なら MySQL の PDO が必要なので ./configure の段階で
  • ./configure --with-openssl --with-zlib --enable-mbstring --enable-zip --with-apxs2=/usr/local/apache2/bin/apxs --with-pdo-mysql
とかしておく必要があります。つまり前記事の段階ではオプションが足りていなかったってことですね。
ということで 5.1 の quickstart を 5.4 で動かしたログでした。


参考

2017/07/18

ActiveLDAP が Timeout Module を使っていた

かなり前の記事になりますが、ActiveLDAP が Process.fork を使っているせいで PostgreSQL との相性が悪いバグがありました。
具体的には Timeout を指定すると fork したプロセスを使って Timeout を確認しているせいで pg の connection を使いはたしてしまう、というのが原因でした。

本当に具合が悪い時は Ruby がコアダンプを吐いて死ぬ時もあったので、直してしまってRuby会議2017のLTネタ にでもしようと思って調査を続行。
最新版では再現しないのでソースを読んでみたらそもそも Process.fork をしていない。
Timeout というものに block を渡している
なんと Timeout なる Module があるようで、それに時間の処理を一任しているようです。

Timeout Module 知らなかった。
Timeout の処理って面倒なので自分が次に Timeout の処理を書くことがあったら使おうと思いましたまる。
ソース読むのはおもしろかったけれどネタが無くなってしまったな。どうしようかな。

2017/07/13

Scientific Linux 7 に NeoVim を入れる

これまたタイトル通りの作業ログ。
CheckHealth が通る NeoVim にプラグインを入れるまで。

環境

  • Scientific Linux release 7.3 (Nitrogen)
  • NeoVim 0.1.7


インストール方法

NeoVim 公式ドキュメントを見るとどうやら epel から入れられるっぽい?
  • # yum -y install epel-release
  • # curl -o /etc/yum.repos.d/dperson-neovim-epel-7.repo https://copr.fedorainfracloud.org/coprs/dperson/neovim/repo/epel-7/dperson-neovim-epel-7.repo
  • # yum install --enablerepo=epel jemalloc
  • # yum -y install neovim
で NeoVim 0.1.7 が入った。


CheckHealth を通す

どうせなので CheckHealth が通るように gem とかを入れる。
  • # yum --enablerepo=epel install -y python-neovim msgpack msgpack-devel ruby ruby-devel python2 python2-devel python34 python34-devel python34-pip
  • # gem install neovim
  • # easy_install pip
  • # pip install neovim
  • # pip3 install neovim
これで CheckHealth で怒られなくなった。


dein.vim を入れる

NeoVim に移った際にプラグインマネージャを dein に変更したのでそれのインストールも。公式の通り
  • $ curl https://raw.githubusercontent.com/Shougo/dein.vim/master/bin/installer.sh > installer.sh
  • $ sh ./installer.sh ~/.config/nvim
としておしまい。
あとは :call dein#install() として他のプラグインをインストールして環境構築完了、と。