はてブロ@ama_chスマートフォン用の表示で見るはてブロ@ama_chhttps://twitter.com/ama_chこの広告は、90日以上更新していないブログに表示しています。2012-09-23oh-my-zshとhomesickを使ってdotfilesをGitHubで管理するようにした今までdotfilesは会社で使ってるものがメインで、家やノートPCで使うものはそこからコピペしたりして使ってました。Dropboxで同期させてシンボリックリンクを作ったりもしていたけど、結局面倒であまりメンテしていませんでした。そんな感じでなんとなくお茶を濁していたんですが、最近チームの開発環境がSubversionからgitに引っ越しました。大量の.gitconfigの設定とエイリアスができあがり、今も頻繁に更新しています。なると当然家のマシンでも同じコマンドを使いたくなり、そろそろ今の管理方法に限界を感じるようになりました。そこで、いい加減やる気を出して、dotfilesをGitHubでうまいこと管理できないかと挑戦してみました。Airシェルはzshまずはzshの設定を見直し今までは.zshrcにべたーっと設定を書いていて、会社と家の環境で微妙に追記したり削ったりして使ってました。この.zshrcがかなり長くなっていて手を焼いてたんですが、最近oh-my-zshの存在を知りました。テーマ(PROMPT)は今使ってるのと結構変わるけど、必要な設定は普通に揃ってる感じ。oh-my-zshのプラグインの仕組みを使えば、今までの長い.zshrcを分割して管理できそう!というわけで、zshまわりはoh-my-zshに乗り換えることにしました。dotfilesを見ていたら、homesickというよさげなプロジェクトが紹介されていることに気付きました。gemとして提供されていて、簡単にGitHubでドットファイルが管理できるらしいです。リポジトリでリポジトリのhomeディレクトリ以下にあるドットファイルのシンボリックリンクをローカルに作ってくれるものです。更新するときはこれでいけます。リポジトリoh-my-zshとhomesickを使ったらよさそうだ!と思って、早速やってみました。できあがったリポジトリama-ch/dotfilesインストール方法README.mdに書いてあることそのまんまですが。事前にインストールしとくものを除けば、使い始めるまでの手順はこれだけです。~/.oh-my-zsh以上で、dotfilesのインストールは完了です。設定の書き方で注意したポイントも書いときます。oh-my-zshの設定oh-my-zshはホームディレクトリに.oh-my-zshというディレクトリを作成します。この中に各種プラグインやテーマを追加していきます。自分のカスタマイズ内容はデフォルトだと~/.oh-my-zsh/custom以下に追加します。追加すると、oh-my-zshのインストールが失敗するようになってしまいます。.oh-my-zsh以下を全部pushしてしまえばいいのかも知れないけど、お行儀が良くない。そこで、.zshrcの3行目に以下の行を追加しています。ZSH_CUSTOM=$HOME/.oh-my-zsh-customZSH_CUSTOMという変数をセットすると、~/.oh-my-zsh/customの代わりにその値が使われるようになります。これで、.oh-my-zsh自体のディレクトリとカスタム設定のディレクトリを分離できます。環境依存設定の切り出しUbuntuでだけ使う設定はubuntuプラグインを作ってそこに切り出しました。Macだけの設定は今のところありません。普通に書き換えてOK。~/.gitconfigを書き換えると、~/.homesick/repos/ama-ch/dotfiles/home/.gitconfigを書き換えることになります。ここは普通にcloneされたgitリポジトリなので、書き換えても問題ありません。ama-ch/dotfilesで普通に更新できます。コンフリクトしてしまう場合でも、普通に解消するか別ブランチを切ったりして対応すれば問題ありません。おわりとりあえずこんな感じです。.emacsとか整理するのが面倒でpushできてない設定もありますが、GitHubで管理すると紛失したりする心配がなくて嬉しいです。ついでにMacPortsをやめてHomebrewにしたりして色々スッキリしました。作業環境を見直すと、人生を見直す良い機会になりますね。大規模開発の現場から」第3回目の記事を書きました。Linterの紹介と、コンパイル時の警告をもとにコードチェックツールとして利用する方法を解説しました。Compilerを使ってる人が増えてきたような印象がありますが、コードチェックにまで活用している例はあまり見ないので参考になれば嬉しいです。これはあくまで僕が経験したケースですが、JavaScriptで実際に複数人で大規模なコードを書いてみると、2〜3万行くらいまでは割と頑張ればなんとかなります。それ以上の規模になってくると、型のぶれが抑えられなくなってきます。型のぶれとは、数値を期待してるとこに数値文字列がきて足し算したら文字列連結になっちゃたとか、配列を期待してたら添え字付きのオブジェクト(!!)が入ってきて配列用のメソッドが動かないとか、そういうやつです。すると多少型がぶれても動くコードを書くようになります。[];}ちょっと複雑になるとこういうものも。}}このようなことをやっていると一応ちゃんと動くんですが、バグは必ずこういう処理が漏れてる箇所で発生するんですよね。して発生したバグをしばらく潰していると、ふと「あれ、これ詰んでね?」と思うようになります。どれだけ型に対して慎重にコードを書いても必ず型の考慮漏れは出てくるし、書いてるのは自分だけじゃないから書き方も統一できないし、このまま一生後手後手で型エラーと戦うのかという不安感はいやなものです。Compilerを使ったコンパイル時チェックです。Compilerの基本的な使い方から、コードチェックツールとしての利用方法、継続的インテグレーションに組み込んで綺麗なコードを維持する方法までを解説しています。Compilerを使ったコードチェックを導入することで、型エラーに対する不安をほぼなくすことができました。ついでにAPIが返すデータ構造の設計がよろしくないとこが見つかったり、コンパイル後のパフォーマンスが向上したり、身長が5cm伸びたりしました。Vol.70は本日発売です。Webアプリ開発でJavaScriptを書く方や、きちんとしたJavaScriptを書きたい方は、ぜひ読んでみてください。students」というイベントが開催されます。サイボウズ本社のエンジニア3人が登壇し、使っている技術やトレンドを紹介します。僕からはフロントエンドのお仕事についてお話します。今のところこんな感じの内容で考えています。フロントエンドエンジニアとはなぜフロントエンドエンジニアが必要なのか必要なスキル使ってるライブラリなどの紹介サービス開発時のちょっと具体的な話フロントエンドエンジニアといっても、漠然とJavaScriptを書いてるイメージだったり、コーダーとかマークアップエンジニアとの違いがよく分からないということが多いと思うので、これを機に普段どんなことをしているか具体的にお話したいと思います。僕以外にもサイボウズLiveのモバイルアプリ開発や、定年(35歳)を突破したバリバリCTOのお話がありますよ!フロントエンドのみならず、Webサービス作りに興味がある人には楽しんでもらえると思うので、ぜひ気軽に参加してください。イベント詳細・参加申込はこちらからhttps://job.rikunabi.com/2013/company/seminar/r646010018/C011/紹介ブログhttps://job.rikunabi.com/2013/company/blog/detail/r646010018/60/なお、明日無事に退院できなかった場合は上記の限りではありません。フロントエンドについて話しますTweet広告を非表示にするもっと読むコメントを書く2012-06-06社内勉強会でクライアントサイドMVCについて話しましたこんにちは。日曜から盲腸で入院中のama-chです。普段は不健康の代名詞みたいに扱われていますが、これでも小学校は修学旅行の日以外は皆勤だったし、入院するのも初めてなんです。退屈な入院生活ですが、PCとモバイル通信環境があると一気に世界が開けます。電源、食事、ベッドの三拍子が揃った理想的な職場がそこにはありました。難点といえば、21時に強制消灯されてしまうことと、なかなか風呂に入らせてもらえないことくらいです。風呂の話はさておき、今年の2月頃から社内で「フロントエンド勉強会」というものを始めています。UI/UXなど、フロントエンドに関するテーマでざっくばらんに毎週開催しています。前になっちゃいましたが、4月にその勉強会でクライアントサイドMVCについて話したので資料を公開します。Deckにアップしてみたけど、はてなダイアリーにうまいこと埋め込めなかった><データにモデルという名前を与えて、モデルとしての振る舞いを定義するようになったという所がMVCフレームワークの出現前後で最も変わったところだと思います。個人的には、モデルとコンポーネントが綺麗に分離されてるのが好きですね。JavaScriptの連載を書かせていただくことになりました。大規模開発の現場から」です。見る第一回目はBackbone.jsを使ってクライアントサイドMVCを実現するという内容です。大規模なJavaScriptを書く際に使える内容や、最新のホットな話題など、現場の方に参考になるような記事を書いていきたいと思います。交互に執筆する予定なので、次回にもぜひご期待ください。使い方というタイトルで社内勉強会を開きました。その時の資料を公開します。「作業効率が10倍アップする」かどうかは個人差があるのでご注意ください。Toolsは本当に高機能ですごいですね!僕も資料を作っていて新しい発見が沢山ありました。説明不足ですいません。スライドは←→キーで移動します。表紙にも記載しておきました。使い方あとキャプチャをとるのに使ったSkitchが便利すぎて感動しました。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。