本の探し方の話 - BRUTUS 特別編集・読書入門 読んだ
BRUTUS特別編集 合本・読書入門。 (マガジンハウスムック)
- 出版社/メーカー: マガジンハウス
- 発売日: 2016/06/15
- メディア: ムック
- この商品を含むブログを見る
3年分のBRUTUSの本特集をまとめたムック本。 こういうのを見ると本の探し方って難しいよなって思ったりする。 自分は本を探す場合、結構使い方を分けてたりする。
Amazonで探す
とにかく電子書籍としてKindleで読みたいので、基本的に読みたい本があったときはまずAmazon Kindleストアで探す。
なければ、普通の本で探す。どういう本を読みたいかはハッキリしているときに使う。
最近だと サーバントリーダーシップ
について読みたいって思ったときに、それを検索して使う。
- 作者: ロバート・K・グリーンリーフ,金井壽宏
- 出版社/メーカー: 英治出版
- 発売日: 2014/10/10
- メディア: Kindle版
- この商品を含むブログを見る
ブックオフで探す
たまに中古本屋(要はブックオフ)にも行く。近所のブックオフはすぐ売られた自己啓発本が多いのだけど、あまり定価と離れていない。なので少し古めの古い新書を購入することが多い。最近はマンガを含めて立ち読みできない本が増えて探す効率が悪くなってしまったのであまり行かなかったりする。
- 作者: 本川達雄
- 出版社/メーカー: 中央公論社
- 発売日: 1992/08
- メディア: 新書
- 購入: 26人 クリック: 1,301回
- この商品を含むブログ (168件) を見る
こういう名著といわれる古い新書とか探すの便利な気がする。
本屋で探す
本屋も場所によって趣向が違うので、いろいろな本屋に行って、自分と趣向があう本屋を決めておく。とりあえず困ったら 池袋のジュンク堂 や丸の内の丸善。新宿の紀伊國屋書店。同じく新宿のコクーンタワーにあるブックファースト に行けば良いと思う。
本屋の陳列の合う、合わないは自分の趣向やそのときの気分によって移り変わりが激しいと思う。ヴィレッジヴァンガードとかまさにそれで、何かこじらせたときはヴィレッジヴァンガード行けばいいと思う。
- 作者: ダニエル・キイス,小尾芙佐
- 出版社/メーカー: 早川書房
- 発売日: 2015/03/13
- メディア: 文庫
- この商品を含むブログ (10件) を見る
とか絶対置いてあるイメージ。
もうひとつ、カフェ兼本屋みたいなところにいくと、普段の本屋で奥のほうにあるようなのが目立つところにあったりする。なんでこんな本置いているんだろ、売れるとか売れないとか気にしていないだろ的なところにあるので、それに乗っかてみるのも一興。
クマにあったらどうするか: アイヌ民族最後の狩人 姉崎等 (ちくま文庫)
- 作者: 姉崎等,片山龍峯
- 出版社/メーカー: 筑摩書房
- 発売日: 2014/03/10
- メディア: 文庫
- この商品を含むブログ (4件) を見る
図書館で探す
図書館は本屋と陳列の仕方が違い、ジャンルではっきり分かれている。あと書庫に入っていることも少なくないので意外とふと本を探すには難易度が高いところだと思う。だけど特定のジャンル(統計とか)を読みたいとはっきりしているならやはり便利。カーリル | 日本最大の図書館蔵書検索サイト で読みたい本を検索して、在庫があること確認してから行くのが良い。
国立国会図書館―National Diet Libraryは全て書庫に入っているので、自分で検索して取り寄せないといけない。だけど全部あるので、自分の感度次第なのも良い。
Apacheモジュール プログラミングガイド (Advanced Server‐side programmingシリーズ)
- 作者: 小山浩之
- 出版社/メーカー: 技術評論社
- 発売日: 2003/08/01
- メディア: 単行本
- 購入: 1人 クリック: 81回
- この商品を含むブログ (26件) を見る
絶版本とか国会図書館で読んでた。
あと通常の図書館形式ならば 広尾にある東京都立図書館が良かった。技術書が予想以上にある。
人のおすすめから探す
とはいえ、自分で探しつづけると限界があるし、思考が自分の都合の良いほうに寄ってきてしまう。似たような本を何度も読んでしまう。 なので人がおすすめしている本を鵜呑みにするのは、定期的にやったほうが良いと思っている。
そういうところに入ってくるよな、BRUTUSは。すごいなぁ、と。
エンジニアミーティングポッドキャスト vol.63 プロジェクトの立て直し方
vol.63 プロジェクトの立て直し方
公開。
普段は該当のサービスに属しているのではなく、 何か短期的に達成しなければいけないミッションが起きたときに 責任者として立つというちょっと変わったサービスの関わり方をしている板敷さんとのお話。
プロジェクトに属し続ける立場とはまた違う視座になっています。
ショベルナイトをクリアした
ショベルナイトクリアした。プレイ時間だいたい6時間くらい。
宣伝でレトロゲーを売り文句にしている通り、プレイ感覚はロックマンに近い。 ショベルを武器にステージを進んでいく。
アクションは、あまり多くなくジャンプ中の下突きで敵を踏んでジャンプするのが中心。 代わりに、ステージ中には隠し部屋などが多数あり、ショベルで掘ると入り口が現れるアドベンチャーが強め。
ファミコンと見せかけて、演出が豪華。ファミコンレベルではない。 スーパーマリオ3のようなフィールドマップがあり、 ハンマーブロスみたいなのが出てくるのも狙っている感じがある。 難易度もファミコン時代のように難しさのようで、要所要所ウェポンを使えば難易度高くなかったりする。
演出にすごいこだわりがある分、アクション部分がジャンプアクション比率高め。 ロックマンのような武器を切り替えて攻略するところは少なめ。 だけど、ゲーム展開に勢いがあるので一気にプレイ出来ると思う。
いつの間にかre:dashの設定が簡単になってた(Dockerを使えば)
v0.8.2-rc の頃に一回入れたことがあったのだけど 当時は中途半端だったDockerサポートがきちんと整備されていて使えるようになっていた。
http://docs.redash.io/en/latest/setup.html#docker-compose
要は、postgres イメージと Dockerイメージがあれば動きますよって話。
https://github.com/getredash/redash/blob/master/Dockerfile にあるので、 まずは自分の手元でDockerイメージを作成する。
$ git clone git@github.com:getredash/redash.git $ cd redash $ docker build -t redash .
docker-compose.yml もサンプルもredashのリポジトリに入っているので、それを使えばひとまずお試しができる https://github.com/getredash/redash/blob/master/docker-compose-example.ym
$ mv docker-compose-example.yml docker-compose.yml
docker-compose-example.yml の中身はこれ。
redash: image: redash/redash:latest ports: - "5000:5000" links: - redis - postgres environment: REDASH_STATIC_ASSETS_PATH: "../rd_ui/dist/" REDASH_LOG_LEVEL: "INFO" REDASH_REDIS_URL: "redis://redis:6379/0" REDASH_DATABASE_URL: "postgresql://postgres@postgres/postgres" REDASH_COOKIE_SECRET: veryverysecret redis: image: redis:2.8 postgres: image: postgres:9.3 volumes: - /opt/postgres-data:/var/lib/postgresql/data redash-nginx: image: redash/nginx:latest ports: - "80:80" links: - redash
ただし、アカウントの登録などの初期化処理が setup/docker/create_database.sh
にまとめられている*1ので
そちら経由でdocker-compose up
を行う。
$ setup/docker/create_database.sh
初期化が終わったあといくつかのコンテナが抜けているのであらためて docker-compose up
を実行。
2回目以降は普通に docker-compose up
が使える。
dockerの動いている環境にポート80でアクセスすれば、Re:dashが試せる。 (アカウントの初期値は admin/admin。create_database.sh に書いてある )
環境変数について
環境変数はドキュメントの記載があまりないので、コードを直接見るほうが早い。 自分がさわったやつ。
変数名 | 説明 |
---|---|
REDASH_STATIC_ASSETS_PATH | assetsのpath |
REDASH_LOG_LEVEL | ログレベル |
REDASH_REDIS_URL | redis の向き先 |
REDASH_DATABASE_URL | postgres の向き先 |
REDASH_COOKIE_SECRET | cookieのsecret |
REDASH_GOOGLE_CLIENT_ID | google OAuth を使うときのclient id |
REDASH_GOOGLE_CLIENT_SECRET | google OAuth を使うときのclient secret |
REDASH_GOOGLE_APPS_DOMAIN | google OAuthでログインを特定のドメインのみにしたい時に使う |
REDASH_ALLOW_SCRIPTS_IN_USER_INPUT | クエリーの説明部分でフォームを設定したい場合に入れる |
自分らが実際に利用する環境を用意する場合は、nginxとredash だけ docker化して、
redisとpostgres の向き先だけ別のものにしている。
後はGoogle OAuth でログインすると権限管理が楽なのでREDASH_GOOGLE_*
を設定している。
REDASH_ALLOW_SCRIPTS_IN_USER_INPUT
は便利そうなのでいれてる。
注意
上はgithubから直接落としてきたけれど、Docker Hubにあるタグがついているイメージを使ったほうが良いと思う。
https://hub.docker.com/r/redash/redash/tags/
参考
IT人材白書2016 ざっくり読んだ
育成のところがちょっと気になった。
- EUでeリーダーシップというスキルが提唱されている
- ビジネス、デジタル、組織的なリーダーシップを育成する
- 日本ではIoT分野の立ち上げに技術力とビジネスアイデア構想力の必要性が高まっている
- R&D部門と営業がセットになった組織体制を取ったりしてるんだとか。
http://eskills-lead.eu/fileadmin/lead/reports/lead_final_report.pdf
上がeリーダーシップスキルトライアングル。 eリーダーに必要な能力要件がまとまっている。
日本ではIT融合人材ってやつみたい。 www.ipa.go.jp
いろいろあるんだなぁと。
OpenCVを使ってカメラの映像を顔認識をしてみる
Python,OpenCV3を使ってカメラの映像からざっくり顔認識してみる。 Mac環境で、パッケージ管理はanacndaを利用。
インストール
brew install pyenv
$ xcode-select --install $ pyenv install anaconda3-4.0.0 $ pyenv global anaconda3-4.0.0 $ pyenv rehash $ pyenv version anaconda3-4.0.0 (set by /Users/username/.pyenv/version)
env を設定
export PATH="$HOME/.pyenv/shims:$PATH" export LC_ALL='ja_JP.UTF-8'
condaのアップデート
$ conda update conda
$ python --version Python 3.5.1 :: Anaconda custom (x86_64)
OpenCV3のインストール
conda
を使ってインストール。
$ conda install -c https://conda.binstar.org/menpo opencv3
エラーになる場合
libhdf5でエラーになる時がある。
Traceback (most recent call last): File "main.py", line 1, in <module> import cv2, matplotlib ImportError: dlopen(/Users/username/.pyenv/versions/anaconda3-4.0.0/lib/python3.5/site-packages/cv2.cpython-35m-darwin.so, 2): Library not loaded: @rpath/libhdf5.10.dylib Referenced from: /Users/username/.pyenv/versions/anaconda3-4.0.0/lib/libopencv_hdf.3.1.0.dylib Reason: Incompatible library version: libopencv_hdf.3.1.dylib requires version 12.0.0 or later, but libhdf5.10.dylib provides version 11.0.0
libhdf5 をインストールしたりアップデートしたりする。
$ brew tap homebrew/science $ brew install hdf5 $ brew search $ conda update libhdf5
OpenCVのバージョンを確認
python >>> import cv2 >>> print(cv2.__version__) 3.1.0
必要なパッケージをインストールしておく。
$ conda install numpy matplotlib
カメラから映像を取り込む
cv2.VideoCapture()
を使うとisightカメラをそのまま使える。
import numpy as np import cv2 cap = cv2.VideoCapture(0) cap.set(3, 640) # 横サイズ cap.set(4, 480) # 縦サイズ while(True): ret, frame = cap.read() if ret == False: break gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) # グレースケールに変換 cv2.imshow('fram', gray) if cv2.waitKey(1) & 0xFF == ord('q'): break cap.release() cv2.dstroyAllWindows()
- 毎フレームごとに読み込んで、
cv2.imshow()
に設定する
実行するとカメラの映像を白黒にしたプレビューが表示される。
送られてきた映像から、顔認識をする
パフォーマンスを気にしないで、ざっくりと顔認識を体験したいとする。
顔認識は、cv2.CascadeClassifier()
を使う。
import numpy as np import cv2 cap = cv2.VideoCapture(0) cap.set(3,640) cap.set(4,480) cascade_path = "/Users/username/.pyenv/versions/anaconda3-4.0.0/pkgs/opencv3-3.1.0-py35_0/share/OpenCV/haarcascades/haarcascade_frontalface_alt.xml" cascade = cv2.CascadeClassifier(cascade_path) color = (0,0,255) cnt = 0 while(True): ret, frame = cap.read() if ret == False: break else: if (cnt % 10) == 0: gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) facerect = cascade.detectMultiScale(gray, scaleFactor=1.1, minNeighbors=1, minSize=(1, 1)) cnt += 1 if len(facerect) > 0: for rect in facerect: cv2.rectangle(frame, tuple(rect[0:2]),tuple(rect[0:2]+rect[2:4]), color, thickness=4) cv2.imshow('fram', frame) cap.release() cv2.dstroyAllWindows()
- 全てのフレームに
cascade.detectMultiScale()
をかけるとCPU負荷がかなりかかるので適当に10フレームごとに確認をする cascade.detectMultiScale()
はグレースケールの画像を使って精査する- 顔認識の結果を
cv2.rectangle()
を使って毎フレームごとに枠線を書き込むようにする
結果
仗助の顔を識別してくれない。
参考
Webディレクターに求められるスキル
Webディレクターに求められるスキルって最近多すぎるよなってことで自分なりにまとめてみた。
もちろん全部が必要あるわけではなく、ここら辺の内容を色々な職種が掻い摘んでいる状態なことが多い。
企画・設計力
- 事前調査
- 提案
- ドキュメント作成
- プレゼンテーションスキル
- プロトタイプ周りの知識
- 情報設計力
クライアントや意思決定者の話を聞いて、要件定義をしていく時に必要となるスキル全般。要求を聞くだけではなく、こちらから提案をする力も必要。そのためターゲットとなる市場の事前調査。さらに要件をまとめ上げるために、プロトタイプの制作も必要になったりする。このタイミングからでも、そのWebサービスがどのような設計になっているかを仕分けできるようになっていると後が楽になる。
プロジェクト管理スキル
- 人員の確保
- コミュニケーションスキル
- 仕様書作成スキル
- ドキュメント作成
- プレゼン作成
- コンセプト設計
- サービスの文脈の整理
- ワイヤーフレームの作成
- プロジェクト進行管理
- スケジュールの管理
- 品質の管理
- 費用の管理
- 外注の進行管理
- プロジェクト管理全般の知見
クライアントと協議して要件定義を決めて、制作や開発者チームに自分たちが何をしたいかを伝えるフェーズで必要になるスキル。まず誰に作ってもらうかの判断と確保が必要。その後、チームに何を作るかを伝える。その時にわかりやすく伝えるコミュニケーション能力や仕様書の作成能力、プレゼン能力も必要になる。また、コンセプトの設計をしっかりすることで仕様の確度を上げる。
制作が始まった後に、プロジェクトが問題なく動いているかを管理する。その場合にチケット駆動開発などのツールの知見が必要になる。チーム内の情報の流れ方、運用フローも決めたりする。また、この管理にはスケジュールだけではなく、品質、費用も含まれている場合もある。
プロダクトの開発
- 法務周りの知見
- Web業界の知見
- App Store, Google Playなどのプラットフォームの仕様
- AD配信の知見
- SEO
- SSO
- 社内ルールの知見
- コンテンツ制作
- 中心となるサービス以外のコンテンツ作成
- LPやバナーなど
- 中心となるサービス以外のコンテンツ作成
- QA
- 手配 or 実行
- 開発ツールを使いこなせるツール
開発に関連する周辺環境の知見。課金や個人情報の取り扱いなど、会社の法務とやりとりをしていくために必要な知見。アプリならば、App Store, Google Playのルール。特にApp Storeは何をしたらリジェクトされるかなどのルールも頭の中に入れておいたほうが良いことも。Webならば、SEOなどの流入の方法の必要最低限の知見も。それ以外に社内のルールも把握し、適切に立ち回れる。
また場合によっては、もともとデザイナーだった人がWebディレクターになることも無くはないので、簡単な制作物はディレクターが行う人もいる。
制作・開発が完成したプロダクトの確認・チェックをする場合もある。
また、最近開発で使われるツールは多い。チケット管理、ドキュメント管理、チャットツール、デザイン管理ツール(InVisionとか)など、開発者に合わせて習得する必要がある。ツールは日進月歩で進化して、開発者も移り気で使いたいものが変わることもあるので、それに追随が必要なこともある。
解析・運用
- Google Analyticsやログなどのツールを扱うスキル
- 計測の設計
- どこに問題があるかを発展させる洞察力
- 解析した結果から次のアクションに起こすための提案力
リリース後に、まず解析の基盤システムなどを使いながらも自分たちのプロダクトがどのような状態かを読み取れる力。それとどの部分に問題があるかを見つける洞察力。それと次のアクションを行うために、まわりを説得できるまでの提案力。小回りのきくいわゆるグロースハッカー的な力の場合や、クライアントや意思決定者への提案など粒度はさまざま。
これら全体をマネジメントをする力
- コミュニケーションスキル
- マネジメントスキル
- 人・時間・お金の管理
企画から実現までのプロジェクトとPDCAを回す両方のマネジメントスキル。
もはや Webディレクターはコンサルである
第一線のプロがホンネで教える 超実践的 Webディレクターの教科書に
すでにディレクターへの期待値は「Webというマーケットを主軸としたビジネスのコンサルティング」に近い領域にまで達してきています。
と書いてあるけれど、もはや至る所でディレクターもはやコンサルみたいになっているみたい。
参考
標準ウェブ制作完全ガイド プランニングからデザイン、そしてシステム構築まで。Webの「仕事」がトータルに理解できるプロフェッショナル養成講座。
- 作者: MdN編集部,松岡清一
- 出版社/メーカー: MdN
- 発売日: 2010/02/23
- メディア: 単行本
- クリック: 138回
- この商品を含むブログ (2件) を見る
第一線のプロがホンネで教える 超実践的 Webディレクターの教科書
- 作者: 日本ディレクション協会会長中村健太,株式会社デスクトップワークス代表取締役田口真行,デジタルマーケティングオフィス DCHS 代表高瀬康次
- 出版社/メーカー: マイナビ
- 発売日: 2015/08/25
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (1件) を見る