機略戦記

Maneuver warfare

git push したとき`push.default is unset`といわれる。

git

git 1.8以降、ブランチ名を指定せずにpushした時の挙動が変わった模様。 ブランチ名を指定せずにpushする前に、いくつかある設定オプションのなかから挙動を選択する必要があるようだ。 $ git push warning: push.default is unset; its implicit value has …

複数台あるMacの環境をserverktで同期すると便利

前提 serverkitというのは、Macの環境構築を自動化するとても便利なツール。 yaml形式で環境のあるべき姿を記述しコマンドを実行すると、現在とあるべき姿の差を埋めるようにして環境を更新してくれる。 くわしくは以下の2つの記事を読んで欲しい。 Serverki…

Alfredで指定したWebサイトを開きたい

結論 Webサイトのエイリアスをファイルとして保存しそれをAlfredから開く。 Alfredとは Alfredは、Mac用のランチャーソフトで、OS Xの操作にあたかもCLIのような操作性を付与してくれる。 ショートカットキーでインクリメンタルサーチ付きのコマンド入力パレ…

zshでEnterするたびにgit statusを表示するやつが便利すぎる

結果イメージ やりかた .zshrcにこれを追記 ## enterをおした時にls & git status function do_enter() { if [ -n "$BUFFER" ]; then zle accept-line return 0 fi echo echo -e "\e[0;33m--- ls ---\e[0m" ls # ↓おすすめ # ls_abbrev if [ "$(git rev-pars…

oh-my-zshを使わずにプロンプトにgitの情報を表示したい

vcs_infoというzshの拡張機能を使えば実現できる。 できる。 例 .zscrhの中にこんな感じで書く。 autoload -Uz vcs_info ## プロンプトが表示される毎に実行される関数 precmd () { vcs_info } ## prompt ### vcs_info 表示内容をカスタマイズ zstyle ':vcs_…

zshでプロンプトをカスタマイズしたい

結論 .zshrcでPROMPT変数を設定すればよい。 例 このように設定する: # .zshrc PROMPT="%~ %# " 以下のようになる: ~/Desktop % %~はカレントディレクトリを表す。 このような特殊変数がいくつか用意されているので好きなようにカスタマイズする。 続き ググ…

Terminalでexitした時に即座にタブを閉じる

課題 Terminalでexitした時に[プロセスが完了しました]などと表示されて、即座にタブが閉じない。この挙動を変えたい。 解決策 command + ,でTerminalの設定を開き、シェル終了時:の動作をウインドウを閉じるにすれば良い。

書評「企業内人材育成入門」

Amazon.co.jp: 企業内人材育成入門: 中原 淳, 荒木 淳子, 北村 士朗, 長岡 健, 橋本 諭: 本www.amazon.co.jp 春なので新入社員がやってきた。 人材育成についての本を読んだ。 感想をメモする。 育成は専門技能である この本は冒頭が面白い。 おおむね以下…

新入社員の育成: 答えではなく問いを与えるべき

この記事はなに? 新入社員の育成を担当しているあなたに取って何かの参考になるかも知れない何かです。 現在自分は、とあるプロダクトで、エンジニア兼マネージャーとして働いている。 この春から現行のメンバーに加えて、新入社員がチームにジョインする事…

アプリケーションエンジニアが初めてserverspecに触ってみた

テストコードによるインフラのテスト serverspecはインフラの構築状況に対してテストコードによるテストを行うgemだ。 packageのインストール状況、serviceの起動状況、ポートの開放状況などの各種設定状況を、 rspecの文法でテストできる。 このserverspec…

価値のある技術文書を書くためには読み手の想定を立てるべき

この記事はなに? 現在、私は「社内で、カジュアルに、技術情報やその他ノウハウを共有するにあたって、 より価値がある情報を発信する技術」の情報を集めています。 その動機は以下です。 去年入社した新入社員にそう言うスキルを高めてもらって、有用な情報…

ruby使いがhaskellでhello word

haskellにちょっと興味が出てきた。 新しいコンセプトや考え方を学ぶのは面白い。 今日はhaskellでhello wordをしてみる。 環境構築 $ brew install ghc brewで簡単にインストールできた。 ちなみに環境はMac OSである。 ghcとはhaskellのコンパイラである。…

前工程からはpullし、後工程にはpushする

例えば、企画とデザインが行われたものを自分が実装し、QA(品質保証)にテストを行ってもらう仕事をするような場合、以下の点に気をつける。 前工程の成果物はpullしてくる 後工程には成果物をpushする 具体的には、 前工程(企画やデザイン)に対して: 進捗状…

スキルについて: 領域に対するポータビリティ/時間に対するポータビリティ

「ポータビリティスキル」と言う概念がある。 一言で言うと「ポータビリティがあるスキル」というのは「転職しても使えるスキル」という意味らしい。 例えば、「ある決済権限者Aさんを説得する技術」はポータビリティが無いスキルである。(余談: しかし! こ…

読了「エッセンシャル思考」

この本を読んだ感想を書く。 Amazon.co.jp: エッセンシャル思考 最少の時間で成果を最大にする: グレッグ・マキューン, 高橋 璃子: 本 ドラッカーはかつてこのように言った。 誰にとっても優先順位の決定は難しくない。難しいのは劣等順位の決定。つまり、…

過去を忘れない事はマネージメントの仕事の一つ

最近仕事で実行している事として「過去の失敗を忘れないようにしておき、必要なタイミングで周囲に『過去にこんな事故があったけど今回は大丈夫だろうか?」みたいなリマインドをする」と言うのがある。 過去を忘れないようにするのは、長期的な展望を考える…

納期優先の計画と工期優先の計画

昔、ある先輩マネージャーが教えてくれた興味深い話がある。 ある作業の計画を立てる場合に 「「納期」を優先して計画を立てる」 「「工期」を優先して計画を立てる」 という2つの考え方があるという話である。 2つの計画の立て方 納期優先 先に「この日まで…

領域に対する全体最適、時間に対する全体最適

はじめに 自身がマネージャーとしての仕事を(半分)行うようになってから、考えていることに 「マネージャーの仕事(やるべきこと)ってなんだろう」 というのがある。 今日は、その事について考えていた時の気付きについてメモを残す。 全体最適 マネージャ…

ジャングルと権限委譲

権限委譲: 意思決定権を渡す 上司が、自身の持つ意思決定権などを部下に渡す事を「権限委譲」という。 権限を委譲したジャンルについては、権限を委譲された部下が意思決定を行う。 権限委譲を行うことで以下のような効果が期待できる。 部下が、上司の判断…

ハインリッヒの法則と日報

軽微な異常も放置するな ハインリッヒの法則と言うのがある。 1つの重大な事故の背景に、30件の軽微な事故があり、その背景には300件の異常がある。 軽微な異常を放置しないことで、軽微な事故や、重大な事故をも防げる。 という経験則である。 この考え方に…

アジャイルなチームを設計する時に考慮すべき2つの制約

1. 最小イテレーションサイズ イテレーションが短ければ短いほど製品の品質が上がる イテレーションが短ければ短いほど製品の品質が上がる 例えば: 1イテレーション1ヶ月で、12回(1年間分)イテレートしたプロダクトと、 1イテレーション1週刊で、52回(1年間…

会議のゴールをそのまま会議のタイトルにすると良い

「◯◯検討会議」とか「XXXキックオフ会議」では無く、 「◯◯を決める会議」とか、「XXXの作業に着手できるようにする会議」とする。 会議に参加する人全員が自然と会議のゴールを知っている状態になるので良い。 会議の冒頭でゴールを説明するよりずっと伝わり…

朝になったら自動で点灯するシーリングライトを買った

朝、周りが明るいと目がさめる。 朝になったら照明をつければ良いが、眠い状態で照明をつけるのが面倒なので自動で電気が付くようにしたい。 そういう時にオススメのシーリングライトがこちら。 パナソニック HH-LC562A 価格比較 毎日指定した時刻に勝手に点…

マネジメントを兼任しているエンジニアにおすすめしたい本50冊

はじめに 自分は今、半分エンジニアをしながら、半分マネージメントに近いような事もするポジションで仕事をしている。 そう言う働き方をしている自分が、自分と同じような立場の人におすすめしたいと思った本を50冊ほど選んでみた。 4〜500冊くらいの中から…

チームを分割する指針として何が適切か

はじめに 現在、私は、とあるソフトウェアプロダクトを開発する数十名規模のチームに所属している。このチームに対して適切な組織と開発プロセスを適用したいと思い良いスタイルを探している。 今日は、そういった事を考えている内に出てきた1つのアイディア…

もっと気軽な気持ちで書くことにしました

2年以上ブログを書いていない事に気付いた。 これからはメモ代わりにもっと気軽に書いていく事に決めた。

スコープの外からインスタンス変数を操作

前回、privateメソッドをスコープの外から操作する方法を紹介したが、今回は(getterやsetterが用意されていない)インスタンス変数に、スコープの外からアクセスする方法について書く。 例えば、以下のクラスの@instance_variableは、普通、インスタンスの…

privateメソッドを外から実行

irbとかrails consoleでデバックを行なっている時に、privateなメソッドを呼び出して動作を確認したい時がたまにある。 そんな時、my_object.private_my_methodのように"."でメソッドを実行する代わりに、my_object.send(:private_my_method)と、#sendでメソ…

irbでrequireしたファイルを再読み込みしたい時には

自分で作ったライブラリの動作をirbで確認している時に、「requireでライブラリを読み込む->動作を確認する->ライブラリをちょっと修正->もう一回動作を確認する」と、言うことがやりたい。 そんな時、ライブラリをもう一回requireしても、修正内容はirb上に…

自分で作ったクラスでmap, with_index, selectなどを使えるようにする

自分で作ったクラスに、組み込みライブラリのEnumerableをインクルードしてあげると、map, with_index,selectと言った便利メソッドが使える様になる。 やりかた 例えば、複数のアイテムを表すItemWithQuantityと言うクラスを作ったとする。 ItemWithQuantity…