Macでの開発環境構築
8月から親会社に一部出向していて、モバイルアプリやることになった。
なので、自宅のMacは丸一年くらい触ってなかったけど、久しぶりに開発環境を整えることにした。
ついでに、yosemiteをクリーンインストールした。
今回はモバイルアプリのお勉強が目的なので、とりあえずxcodeを入れて、おすすめのツールとか、これ必須とかを調べている。
↓これが気になってる。ビルドツール?
fastlane - iOS Automation for Continuous Delivery
ちなみに、atomに乗り換えは失敗した。ので、Macvimを使うことにして、vimrcやプラグインを整理した。
あと、dotfileも整理して、gitのユーザ設定に悩んでいたのを解決できたので、スッキリした。
Atomに乗り換え中
新しいことを始めることになったので、Vimに特に不満があるわけではないが、Atomに乗り換え中。Atom最近1.0になったらしい。
とりあえずググって出てきたページをいくつか参考にした。
- 初心者のためのテキストエディタ。迷ったら Atom がおすすめ。
- 【超おすすめ!!】Atomのパッケージ、テーマ、キーバインディング、設定を紹介してみる(※随時更新) - Qiita
- Atom の apm stars で興味のあるパッケージを管理する - Qiita
- ATOMでGolangの環境設定 - Qiita
- Japanese-menu - ATOMのフォント - Qiita
インストールしたパッケージ
- 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
半年振り返り
半年振り返り
早いもんで、もう2015年も半分過ぎた。 ので、簡単に振り返り。
年初の目標もあるけど、やっぱり半年経つと求められるものも変わってきていて、なかなか達成が難しい。
デプロイ自動化
デプロイを自動化する以前に、デプロイ手法自体も見直す必要あるなって感じになってきている。
単一のrailsアプリとcapistranoの連携は充分なんだけど、異なるアプリを複数同時に扱いたい時に手段がない。 (ないことはないんだけど、うまくマッチしない)
アプリとは独立した手法でやる必要があって、ansibleとかに寄せた方が良いのか悩ましいところ。
ディスポーザブルにどうやるかというのも模索している。
読書
確実に読書のモチベーションは下がっていて、技術書以外も読んだりしてるけど、ペースは落ちてる。
半年で 20冊なので、残り半年で頑張るしかない。
とりあえずまだ読んでいる途中のコードコンプリートを読み終えなければ…。
チームとか
優秀な人が多いので正直そんなに困ってない。 とりあえずマネジメント関係の本読んだりして学習しよって感じ。
ドキュメント
sphinxを使える環境を整えたけど、プロジェクトにはちょっと活かせてないのが残念なところ。
新規のプロジェクトで上手く活用できればと思いつつ、ちょっと放置ぎみ。
後半戦
そんな感じで大した進捗はない。
今年の後半は、上司にはgoやるって宣言したので、その辺りを上手くやれたらと思うし、違う分野に挑戦する話もあるので、夏バテに気をつけようと思う。
勉強や片付けへのインセンティブ
TLに流れてきた「ゲームはいくらやってもいいが、同じ時間勉強すること」というお子さんとの約束を真似て、更に「自室を綺麗に片付けたらゲーム時間プラス30分」というルールを適用したら、9歳息子が朝6時前に起きて漢字ドリルと部屋の掃除してたので、イカの魔力…!!と思っている。
— よく眠りたまに色々考える主婦 (@toppinpararin) 2015, 6月 16
確かに子供だったら、ゲームがインセンティブになって、勉強や片付けを率先するってのは良くわかる。なんでデプロイを自動化するのか
デプロイの自動化に対するモチベーションを明文化しておく。
手作業はスピードが遅いしムラがある
手順書を元に一つ一つコマンドを実行していくので、デプロイが終わるまで張り付いたままになる。 手順書の行間を(読む必要がないのに)読んだりして、余計な確認を行いたくなることがある。
なんだかんだで時間がかかってしまう。
急いでやろうとして、うっかり手順を飛ばしたりしたりするので、大惨事につながる。
自動化するためにプロセスの見直しができる
デプロイの手順が複雑な場合もある。
インタラクティブな OK?
みたいな確認のフローがおかしいものがあって、そういう罠でミスると大惨事になる。
デプロイする度に、念のための確認ステップが少しずつ増えたりする。
人間がやっていると、最初は疑問を持つものの、結局慣れてしまって、で、慣れてしまった頃が一番危なかったりする。
自動化するためには、そういう人間が作業するからなんとかなる、という前提を捨てないといけないので、ちゃんとしたデプロイの手順を設計する契機になる。
若くない
深夜のリリースとかしんどい。自動化して無人化したい。
35になった
ポエム。
振り返ってみると、20歳からこの業界で仕事してきて、15年経った。
未だに鳴かず飛ばずという感じで、すごい成功体験もなければ、著名でもない。なんか成し遂げた感が欲しいけど、それほどの努力もしてない。なかなか諦めがつかない感じだ。
派遣で基幹系ギョームをやってた時が二回あるんだけど、その時が一番収入多かったのがなんか悲しい。
フリーランスやってたときは、債権回収できなくて、まぁあれはなんかどうしようもなかった。
最近はチームリーダーという役割を与えられ、なかなか苦労している。
プログラマ35歳定年説とかあるけど、まだ定年したくない。やっぱりコードを書く仕事が一番なので、とりあえず今年度の一年間はやってみるけど、それから先はよくわからない。