[チーム術] 目標を機能させて技術者のコミットメントを最大限引き出すために、AbemaTVではじめたこと

抜粋覚書。「徹底的に」というところがミソだと思う。そうしてこそコミットメントが生まれる。

目標を機能させて技術者のコミットメントを最大限引き出すために、AbemaTVではじめたこと | AbemaTV
https://us.wantedly.com/companies/abema/post_articles/67661
2017-06-29

– チームがコミットすべき組織目標を徹底的に考え抜く
OKR: Objective & Key Result(目標と結果)

– 個人目標のオープン化は「目線合わせ」と「目線上げ」に効く
個人目標は「事業目標」と「スキル目標」の2つから構成をしています。
「事業目標」は開発局のOKRからKey Resultが一人ひとりに割り振られます。
「個人目標」では事業目標を達成するためのスキルセットに重点をおき、設定します。

[チーム術] 新卒2年目のAbemaTV開発ディレクターが議論を促進させるために取り組んでいること

興味深い記事だったので抜粋覚書。

新卒2年目のAbemaTV開発ディレクターが議論を促進させるために取り組んでいること
https://developers.cyberagent.co.jp/blog/archives/9327/
JUL/19/2017

①仕様書のプルリクエスト制度

要件定義書のひな形
– 案件名
– ゴール (開発の目的)
– 機能概要
– 想定されるユースケース (ユーザに提供する価値)
– 機能要件 (それを実現するための必要な機能や性能)

開発ディレクター間でそれらをレビューする「プルリクエスト制度」

②ディレクターが完成イメージを作る

ディレクターから完成イメージに近いアウトプットを共有することにより、要件定義の段階で、ドキュメントだけでは気付かないような改善ポイントを発見し、チームで議論をすることができます。

使っているツールは以下らしい。

esa.io – Expertise Sharing Archives for motivated teams.
https://esa.io/
「情報を育てる」という視点で作られた、自律的なチームのためのドキュメント共有サービスです。

[仕事術] シリコンバレーで起業した福山太郎さんの成功までの道のり

よく言われるけど、やっぱり「継続は力なり」。

シリコンバレーで起業した福山太郎さんの成功までの道のり – ログミー
http://logmi.jp/80839

毎日毎日小さな問題を解決して、開かないドアがあっても鍵を入れてやって、それが一つひとつが積み上がって。振り返ってみたら、あっ、結構ここまで来たなとか、初めてのY Combinatorは日本人だったなとか、アメリカで成功しているみたいな感じで言われるようになったなというのをすごい感じていて。

[Subversion] バージョンを上げる (CentOS 6.5)

svn updateしたらバージョンが古いと怒られた。

バージョン見たら確かに古い。最新版は1.8だもん。

yum updateを試みたんだけど、標準リポジトリには古いバージョンしかない。どうしたものかと調べていたら以下の記事がヒット。

CentOS 6でsubversionのバージョンを上げる – ソフトウェアエンジニアリング – Torutk
http://www.torutk.com/projects/swe/wiki/CentOS_6%E3%81%A7subversion%E3%81%AE%E3%83%90%E3%83%BC%E3%82%B8%E3%83%A7%E3%83%B3%E3%82%92%E4%B8%8A%E3%81%92%E3%82%8B

この記事に倣ってsvnをアップデートする。

[Smarty] 日本語の文字数をカウントする

会員サイトでログイン中のユーザの日本語姓名を表示する際に、もし姓名の文字数が極端に長いユーザであってもレイアウトの崩れを起こさないように、姓名が8文字を超える場合には姓だけを表示するようにしたい、といった要望あり。

ASCII文字数なら count_characters 修飾子で得られるけど、日本語文字数はどうやってカウントできるんだろ?と調べてみたら以下の記事がヒット。

【Smarty】文字数カウント | enjoyブログ♪
http://enjoy-pcworks.com/infotech/php/286

文字数が10文字以上だったらclassを付ける例:
{if $str|mb_strlen:’UTF-8′ >=10} class=”hoo”{/if}

この例ではSmartyの修飾子にmb_strlen関数を使っている。念のためSmartyのマニュアルを読み直してみたら、「すべての PHP 関数は、暗黙的に修飾子として使用できる」と明示されていた。

Chapter 5. 変数の修飾子 | Smarty
https://www.smarty.net/docs/ja/language.modifiers.tpl

以上を参考に以下コーディング。

[Laravel] HTTP_Request2を使う

PEAR/HTTP_Requestを使った処理を含むWebアプリをLaravelベースに書き直しているんだけど、HTTP_Requestを使った処理部分をどう存続させたらいいだろうか。

もしHTTP_Requestのインストールが簡単なら、HTTP_Requestをインストールしてコード自体をいじらないのが最も手軽。だけど調べてみると、HTTP_Requestのパッケージリポジトリは存在しないので、composerで簡単インストールは無理っぽい。

代わりにPEAR/HTTP_Request2のパッケージリポジトリは存在したので、HTTP_Request2をcomposerでインストールして、HTTP_Requestの代わりにHTTP_Request2を使うようにコードを変更しよう。もし変更規模が大きいのなら、いっそのことGuzzleのようなLaravelとも親和性が高そうなHTTPクライアントに置き換えるのも一案かもしれないね。

pear/http_request2 – Packagist
https://packagist.org/packages/pear/http_request2

インストールはcomposerで簡単。

PEARのマニュアルページは以下。

Manual :: HTTP_Request
http://pear.php.net/manual/en/package.http.http-request.php

Manual :: HTTP_Request2
http://pear.php.net/manual/en/package.http.http-request2.php

HTTP_RequstとHTTP_Request2の呼び方の違いは以下が参考になる。

pear HTTP_RequestとHTTP_Request2の速度比較 | ユメーディア blog
http://blog.yume-dia.jp/archives/173

[Google] ウェブページから特定住所の地図へリンクを張る (Google Maps)

以下ページがヒット。

GoogleMapへのリンクを住所で貼るときに失敗したこと | WordPressの勉強がてら
http://wpgatera.matrix.jp/post-1430/

これでいいらしい。

試してみたらちゃんとリンクされていた。ありがたや。

[MySQL] データベースのステータスを見る (テーブルの最終更新日時とか)

テスト用に作成して放置していたデータベースがあって、消したいんだけど「もしかしてまだ誰か使ってる?」と思った時に、データベースのテーブルの最終更新日付とか調べるのに役立つ。

参考サイト

mysql – MySQLのDB自体の最終更新日時はわかりますか? – スタック・オーバーフロー
https://ja.stackoverflow.com/questions/19878/mysql%E3%81%AEdb%E8%87%AA%E4%BD%93%E3%81%AE%E6%9C%80%E7%B5%82%E6%9B%B4%E6%96%B0%E6%97%A5%E6%99%82%E3%81%AF%E3%82%8F%E3%81%8B%E3%82%8A%E3%81%BE%E3%81%99%E3%81%8B

[Git] デフォルトエディタを変更する

設定されていない場合はデフォルトでviが立ち上がるらしい。

Git – Git の設定
https://git-scm.com/book/ja/v1/Git-%E3%81%AE%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%9E%E3%82%A4%E3%82%BA-Git-%E3%81%AE%E8%A8%AD%E5%AE%9A