Macでの開発環境構築

8月から親会社に一部出向していて、モバイルアプリやることになった。

なので、自宅のMacは丸一年くらい触ってなかったけど、久しぶりに開発環境を整えることにした。

ついでに、yosemiteクリーンインストールした。

今回はモバイルアプリのお勉強が目的なので、とりあえずxcodeを入れて、おすすめのツールとか、これ必須とかを調べている。

↓これが気になってる。ビルドツール
fastlane - iOS Automation for Continuous Delivery

ちなみに、atomに乗り換えは失敗した。ので、Macvimを使うことにして、vimrcやプラグインを整理した。

あと、dotfileも整理して、gitのユーザ設定に悩んでいたのを解決できたので、スッキリした。

Atomに乗り換え中

新しいことを始めることになったので、Vimに特に不満があるわけではないが、Atomに乗り換え中。Atom最近1.0になったらしい。

とりあえずググって出てきたページをいくつか参考にした。

インストールしたパッケージ

  • autoclose-html
  • autocomplete-paths
  • color-picker
  • git-log
  • git-plus
  • go-plus
  • godef
  • highlight-selected
  • japanese-menu
  • japanese-wrap
  • jumpy
  • linter
  • maximize-panes
  • merge-conflicts
  • minimap
  • minimap-autohide
  • minimap-bookmarks
  • minimap-git-diff
  • minimap-highlight-selected
  • minimap-pigments
  • pigments
  • project-manager
  • sort-lines

パッケージの管理

apmというコマンドが付いているので、それでやると良いらしい。

apm install --packages-file my-atom-packages.txt

ファイルの内容は、パッケージ名のリストで良い。

autoclose-html
autocomplete-paths
...

バージョン指定もできるっぽい。今回は新規なので関係なし。

また、atom.ioにGithubアカウントでサインインすると、スターが付けられるようになる。

apm login
apm star --installed

で、スターを付けたパッケージを一括インストールもできる。便利だ。

apm stars --install

サブコマンドがややこしい。スターを付けるときは単数形( star )で、インストールするときは複数形( stars )らしい。

設定画面のフォント

海外製のツールにありがちな、日本語が中華フォントになるやつ。以下のスタイルシートを追加した。

atom-workspace {
  font-family:Consolas,"VL ゴシック","";
}

vim-mode

vimキーバインドに設定できる vim-mode というパッケージがあるんだけど、微妙だったのでやめた。

半年振り返り

半年振り返り

早いもんで、もう2015年も半分過ぎた。 ので、簡単に振り返り。

年初の目標もあるけど、やっぱり半年経つと求められるものも変わってきていて、なかなか達成が難しい。

デプロイ自動化

デプロイを自動化する以前に、デプロイ手法自体も見直す必要あるなって感じになってきている。

単一のrailsアプリとcapistranoの連携は充分なんだけど、異なるアプリを複数同時に扱いたい時に手段がない。 (ないことはないんだけど、うまくマッチしない)

アプリとは独立した手法でやる必要があって、ansibleとかに寄せた方が良いのか悩ましいところ。

ディスポーザブルにどうやるかというのも模索している。

読書

確実に読書のモチベーションは下がっていて、技術書以外も読んだりしてるけど、ペースは落ちてる。

半年で 20冊なので、残り半年で頑張るしかない。

とりあえずまだ読んでいる途中のコードコンプリートを読み終えなければ…。

チームとか

優秀な人が多いので正直そんなに困ってない。 とりあえずマネジメント関係の本読んだりして学習しよって感じ。

ドキュメント

sphinxを使える環境を整えたけど、プロジェクトにはちょっと活かせてないのが残念なところ。

新規のプロジェクトで上手く活用できればと思いつつ、ちょっと放置ぎみ。

後半戦

そんな感じで大した進捗はない。

今年の後半は、上司にはgoやるって宣言したので、その辺りを上手くやれたらと思うし、違う分野に挑戦する話もあるので、夏バテに気をつけようと思う。

勉強や片付けへのインセンティブ

与太話。

今朝、こんなツイートを見た。

確かに子供だったら、ゲームがインセンティブになって、勉強や片付けを率先するってのは良くわかる。

ただ、

じゃあゲームもしないから、勉強も片付けもしない

というタイプもいる。
ひねくれた子供だなと思うけど、自分がそうだったし、なかなか難しいと思う。

まぁとにかく、こういうのは効果的ではあるんだけど、子供騙しでしかないなと。

大人になって、自分の書斎やリビング、ダイニングが片付けられない、勉強しようと思っているけど積読が増えるとか、そういうのどうやって解決したら良いんだろう。

僕らにも、部屋片付けたら、祖父母からクルマがもらえるとかあれば頑張るかな。

postfixのallow_min_userについて

慣れてる人にしたらあるあるネタなんだろうけども、初めて経験したことだったのでメモ。

-から始まるメールアドレスを、postfixはデフォルトで弾くようになってる。

なので、弾かれないためには、main.cfに

    allow_min_user = yes

と設定する必要がある。

や、そんなメールアドレス使ってる人いるんだって感じで驚いたんだけど、RFC違反ではないらしい。

なんでデプロイを自動化するのか

デプロイの自動化に対するモチベーションを明文化しておく。

手作業はスピードが遅いしムラがある

手順書を元に一つ一つコマンドを実行していくので、デプロイが終わるまで張り付いたままになる。 手順書の行間を(読む必要がないのに)読んだりして、余計な確認を行いたくなることがある。

なんだかんだで時間がかかってしまう。

急いでやろうとして、うっかり手順を飛ばしたりしたりするので、大惨事につながる。

自動化するためにプロセスの見直しができる

デプロイの手順が複雑な場合もある。

インタラクティブOK? みたいな確認のフローがおかしいものがあって、そういう罠でミスると大惨事になる。

デプロイする度に、念のための確認ステップが少しずつ増えたりする。

人間がやっていると、最初は疑問を持つものの、結局慣れてしまって、で、慣れてしまった頃が一番危なかったりする。

自動化するためには、そういう人間が作業するからなんとかなる、という前提を捨てないといけないので、ちゃんとしたデプロイの手順を設計する契機になる。

若くない

深夜のリリースとかしんどい。自動化して無人化したい。

35になった

ポエム。

振り返ってみると、20歳からこの業界で仕事してきて、15年経った。

未だに鳴かず飛ばずという感じで、すごい成功体験もなければ、著名でもない。なんか成し遂げた感が欲しいけど、それほどの努力もしてない。なかなか諦めがつかない感じだ。

派遣で基幹系ギョームをやってた時が二回あるんだけど、その時が一番収入多かったのがなんか悲しい。

フリーランスやってたときは、債権回収できなくて、まぁあれはなんかどうしようもなかった。

最近はチームリーダーという役割を与えられ、なかなか苦労している。

プログラマ35歳定年説とかあるけど、まだ定年したくない。やっぱりコードを書く仕事が一番なので、とりあえず今年度の一年間はやってみるけど、それから先はよくわからない。