Git(hub)でフォークしたリポジトリに、オリジナルリポジトリの変更を取り込む
いつも忘れて調べなおすことになるので、メモ。
ケース
例えば、こんなリポジトリ。
オリジナルのプラグインでほんのすこしだけカスタマイズしたいから、ちょっとだけ修正して使ってる、みたいな。
で、時間が経って、変更されているものもあるから取り込みたい。
というときの作業。
参照
結論、Githubのヘルプを見ればいいわけですね。はい、いつも見ます。いつもたどり着くのに時間がかかりますが。
https://help.github.com/articles/fork-a-repo/help.github.com
https://help.github.com/articles/syncing-a-fork/help.github.com
この記事のこの後の内容は、ヘルプの内容をただただ自分のためにメモしたものです。
作業
ざっくり書くとこんな感じでしょうか。
git clone ${forked_repo} ${forked_repo_dir} cd ${forked_repo_dir} git remote add upstream ${original_repo} git fetch upstream git checkout master # forked master git merge upstream/master
自分の(忘れた後の)理解のために、細かく書いていくと、、、
フォークしてカスタマイズしたリポジトリGitHub - sugilog/molokai: Molokai color scheme for Vimに、オリジナルのリポジトリGitHub - tomasr/molokai: Molokai color scheme for Vimの修正内容を取り込む。
自分のリポジトリをclone
。
git clone git@github.com:sugilog/molokai.git ~/workspace/molokai
cd ~/workspace/molokai
オリジナルのリポジトリをupstream
という名前でリモートブランチとして登録。名前はかぶらなきゃOK。
git remote add upstream https://github.com/tomasr/molokai.git git fetch upstream
自分のリポジトリのブランチをcheckout
。とりあえずmaster
。
git checkout master
最後に、オリジナルの内容をマージ。
git merge upstream/master
あとはコンフリクトを直すなりなんなり。
結論、マージ作業なわけです。
GithubのウェブUIからのプルリク作業に慣れてきった生活で、簡単なマージ作業でさえ忘れてしまう。。。
最後に
molokai、お世話になってます。
tmux 2.3のキーバインディングでちょっと困った
macでtmuxを使っていてエラーが出て解決してたら次の問題にハマって、ということがあったので一連の話をメモ。
タイトルにしたキーバインディングは結局ググってもよくわからずソースを見て解決した話。
流れ
macOS Sierra にバージョンアップ。そしたら変なWARNINGメッセージが出るようになった。
Qiitaのまとめどおり、tmuxをアンインストール&再インストールしてみた。
ちなみにこの作業をした時のHEADはDo not force symbols to width 1, from Yen Chi Hsuan. · tmux/tmux@178894b · GitHub。
この時点で、tmuxのバージョンが2.3に更新された。元のバージョンは忘れたので省略。
tmux2.3を起動したら、またもや変なエラーメッセージが出始めた。
このときの自分のtmux.conf
はdotfiles/.tmux.conf at 42f0b71a673aad45921912766acc963948d0027b · sugilog/dotfiles · GitHubこんな感じ。
ブログにまとめられているとおり、-t vi-copy
を-T copy-mode-vi
にしてあれこれして、使い始めた。
dotfiles/.tmux.conf at 33c847acf64889f012859e234576fc85d8e1d36c · sugilog/dotfiles · GitHub
で、本題
copy-mode
のときに、スクロールアップがうまくできない。正確には、
copy-mode
でのj
,k
でのカーソル移動でのスクロールはできる。copy-mode
でのCtrl+f
でのスクロールダウンはできる。copy-mode
でのCtrl+b
でのスクロールアップができない。
(バインディングはvi)。
ググっても情報が見つからないのでソースにあたる。。。と見つけたコミット。
Ctrl+b
はコンフリクトがあるから、初期設定するのやめよう、とのこと。なるほどね。
ちなみに自分は関係ない人なので、自分で追加しちゃいます。
ちなみに自分のtmuxで使うprefix
キーはCtrl+t
(C-t
)です。
解決!
お粗末さまでした。
git logをltsvにする
コミットの情報をもとにファイルチェックとかしてみよう、という感じからgitだとどうしようということでログから情報を取り出す。
subversionで、svn ls -v <URL>
してとれるような情報のイメージ。
ついでにプログラムから加工しやすいようにLTSVにする。
git log -n 1 --format="hash:%H%x09author_date:%at" <file>
分解して理解
git log
: 省略
-n 1
: とりあえず今回は、指定したファイルに対する最新のコミットを取得できればいいので、1つだけ。
--format
: ログのフォーマットを指定する。続く引数内で、%
なんとかみたいにすると情報を埋め込めたりする。くわしくは、git help log
内のPRETTY FORMATS
を参照。
hash:
: ここまでは単なる文字列。LTSVのキー。
%H
: コミットハッシュ。 %h
にすると省略形(7桁くらいになってるやつ)のコミットハッシュ。
%x09
: %x
はあとに続く16進数のコードに対応した文字を埋め込む。09
はタブ。故にLTSVの区切り文字。
author_date:
: ここも単なる文字列。LTSVのキー。
%at
: author dateをunix timestampで表示する。rubyからなら、Time.at
を使えばTimeオブジェクトに変換できる。comitter dateを使うかどうかみたいな話はここの主題ではないので省略。
使用上の前提条件というか、現在のこの記事の状況。
- リモートリポジトリの情報をfetchしたりするのは別途必要ということで。
- コミットメッセージ内にタブが含まれてたらどうしようとか思って、まだLTSV化するログの中にコミットメッセージを入れることは試していない。
Dockerを使って、AWS Lambda用のPhantomJSとfontconfigをビルドする
dockerを使ってみる。 やりたいことはこれ。
AWS LambdaでPhantomJSを使ってあれこれしたいけど、日本語フォントを扱えるようにしないと、キャプチャがうまくできない。 日本語フォントを扱える夜にするのはリクルートさんの記事のとおりにできるけど、じゃあそのためのfontconfigのビルドは?
さらに、npmのphantomjs(現在はphantomjs-prebuilt)をmacの環境でインストールしてしまうと、lambdaの環境では動かない。
ということで、Linux環境であれこれして、Lambda用のパッケージのビルドする。
そのための簡易環境としてdockerを使ってみようという魂胆。
fontconfigやらPhantomJS自体のビルドの時間はそこそこかかるけど、それを待ちさえすれば、がっつり自動化できた。
dockerの設定
Dockerfile
Linux環境にはCentosを使いたいのでDocker HubのCentosのページを参考にする。
# https://hub.docker.com/_/centos/ FROM centos:7 MAINTAINER "YOU" <you@example> ENV container docker RUN (cd /lib/systemd/system/sysinit.target.wants/; for i in *; do [ $i == systemd-tmpfiles-setup.service ] || rm -f $i; done); \ rm -f /lib/systemd/system/multi-user.target.wants/*;\ rm -f /etc/systemd/system/*.wants/*;\ rm -f /lib/systemd/system/local-fs.target.wants/*; \ rm -f /lib/systemd/system/sockets.target.wants/*udev*; \ rm -f /lib/systemd/system/sockets.target.wants/*initctl*; \ rm -f /lib/systemd/system/basic.target.wants/*; \ rm -f /lib/systemd/system/anaconda.target.wants/*; \ yum install -y openssh-server openssh-clients; \ yum install -y iproute iproute-devel; \ yum -y install epel-release; \ yum -y install gperf freetype-devel libxml2-devel python-lxml git-all libtool; \ yum -y install npm bzip2; \ passwd root -d; \ sed -i "s/^.*PermitEmptyPasswords.*$/PermitEmptyPasswords yes/g" /etc/ssh/sshd_config; \ sed -i "s/^.*PasswordAuthentication.*$/PasswordAuthentication yes/g" /etc/ssh/sshd_config; \ mkdir -p /src/python; mkdir -p /src/node; \ cd /src/python; \ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py; \ python get-pip.py; \ pip install -U six; \ cd /src/; \ git clone http://anongit.freedesktop.org/git/fontconfig; cd /src/fontconfig; \ ./autogen.sh --prefix=/tmp/fontconfig --sysconfdir=/tmp/fontconfig/etc --bindir=/tmp/fontconfig/usr/bin --enable-libxml2; \ make; make install; \ cd /src/node; \ npm install phantomjs-prebuilt; \ mv /src/node/node_modules/phantomjs-prebuilt /tmp/phantomjs-prebuilt; VOLUME [ "/run", "/tmp" ] CMD [ "/usr/sbin/init" ]
RUNの部分の話を自分が忘れないようにするレベルでまとめておく。
- 前半の
rm
しまくってるのは、systemdまわりの対応。Docker HubのCentosのページを参照。 yum
でインストールしているのは2種類。passwd
でパスワード消したり、sshd_config
でセキュリティ弱めているのは、ファイルを取り出すときにパスワードとかいろいろ聞かれたくないから。- 本番環境では「ダメ、絶対」な設定だけど、今回はこれで。
pip
、six
は、fontconfigのautogen
のタイミングで必要なので入れておく。- あとは、fontconfigとPhantomJSをビルド。
- ファイルを取り出しやすいように、それぞれtmpディレクトリに移動させてる。
デバッグ
簡易的に接続してみるなら、attach
は使わずに、ssh感覚でexec
+bash
。-it
(= interactive, tty)オプションをつけて実行。
本来の用途ではないらしいので、あくまで簡易的に。
docker exec -it {container_id_or_name} /bin/bash
実行
以下の様なシェルスクリプトを作って実行してみた。
docker pull centos:7 docker build --rm -t local/centos7 . docker create --name phantom --privileged -p 20022:22 local/centos7 docker start phantom sleep 2 ssh-keygen -R "[localhost]:20022"; scp -o 'StrictHostKeyChecking no' -r -P 20022 root@localhost:/tmp/fontconfig fontconfig scp -o 'StrictHostKeyChecking no' -r -P 20022 root@localhost:/tmp/phantomjs-prebuilt phantomjs-prebuilt docker rm -f phantom docker rmi local/centos7
ポイントといえば、、、
privileged
をつけてcreate
しないとうまく動かない。systemd
まわりの話(+SELinuxが絡んでたっけな?)start
後すぐにscp
してもうまく接続できない。1秒か2秒くらいあける。scp
で認証周りのことをきかれたくないから、ssh-keygen -R
でknown-hosts
をクリアして、StrictHostKeyChecking
をしないようにする。
AWS API GatewayのBody Mapping Templateで使えるテンプレート
AWSのAPI Gatewayでは、リクエストをどう受けて、どう返すか、ということが設定できる。中間処理にLambdaを使う場合は、リクエストの情報をJSONオブジェクトに変換しておいて貰わないと、情報が来ない。
ということで、Body Mapping Template(後処理に渡すデータを生成するためのテンプレート)を使うわけだけど、以前には多分なかったテンプレートが追加されていたので試している。
Method Request Passthrough
2016/05/11時点では以下のような形をしている。cognitoの情報も追加できるようになっているので、おそらく今後も変化していくのだろうと想定。
## See http://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html ## This template will pass through all parameters including path, querystring, header, stage variables, and context through to the integration endpoint via the body/payload #set($allParams = $input.params()) { "body-json" : "$input.json('$')", "params" : { #foreach($type in $allParams.keySet()) #set($params = $allParams.get($type)) "$type" : { #foreach($paramName in $params.keySet()) "$paramName" : "$util.escapeJavaScript($params.get($paramName))" #if($foreach.hasNext),#end #end } #if($foreach.hasNext),#end #end }, "stage-variables" : { #foreach($key in $stageVariables.keySet()) "$key" : "$util.escapeJavaScript($stageVariables.get($key))" #if($foreach.hasNext),#end #end }, "context" : { "account-id" : "$context.identity.accountId", "api-id" : "$context.apiId", "api-key" : "$context.identity.apiKey", "authorizer-principal-id" : "$context.authorizer.principalId", "caller" : "$context.identity.caller", "cognito-authentication-provider" : "$context.identity.cognitoAuthenticationProvider", "cognito-authentication-type" : "$context.identity.cognitoAuthenticationType", "cognito-identity-id" : "$context.identity.cognitoIdentityId", "cognito-identity-pool-id" : "$context.identity.cognitoIdentityPoolId", "http-method" : "$context.httpMethod", "stage" : "$context.stage", "source-ip" : "$context.identity.sourceIp", "user" : "$context.identity.user", "user-agent" : "$context.identity.userAgent", "user-arn" : "$context.identity.userArn", "request-id" : "$context.requestId", "resource-id" : "$context.resourceId", "resource-path" : "$context.resourcePath" } }
ざっくりと展開すると、以下の様な感じになる。だいたい自分でわかった範囲で説明もつけておく。雰囲気なので間違ってたらごめんなさい。
{ "body-json": [object], "params": { "path": [Empty Object], "querystring": [object], "header": [object], }, "stage-variables": [object], "context": [object] }
Key | Description | Type |
---|---|---|
body-json |
BodyをJSON.parseしたもの。 | object, array, ... |
params |
リクエスト時のパラメーター情報。 | object |
params.path |
(おそらく)基本的に空のオブジェクト。 | {} |
params.querystring |
URLクエリを処理したオブジェクト。配列クエリ、ネストされたクエリには対応されてなさそう。 | object |
params.header |
ヘッダ情報。 Host, Origin, User-Agent, などなど。 | object |
stage-variables |
API Gateway で設定したstageの情報。 | object |
context |
API Gatewayでリクエストを受けた時の状態。 | object |
context.http-method |
リクエストメソッド。GET, POST, など。 | string |
context.stage |
API Gateway でデプロイしているステージのラベル。 | string |
context.source-ip |
リクエストしてきたIPアドレス。 | string |
context.user-agent |
ユーザーエージェント文字列。 | string |
context.resource-path |
URLパスの文字列。基本的にAPI Gatewayのリソースに一致するはず。 | string |
バグ?
テンプレートにはバグっぽい挙動が含まれていて、POST時のリクエストBodyのJSONで文字列を含んでいるとエラーする。ダブルクオーテーションで囲ってしまっているため。ダブルクオーテーションを外してしまったほうが多分良いと思われる(思われるけど落とし穴があるかも)。
ref: https://forums.aws.amazon.com/thread.jspa?threadID=221749
-"body-json" : "$input.json('$')", +"body-json" : $input.json('$'),
ちなみにエラーすると、Lambdaは起動されない。Lambdaのログを監視していてもわからない問題になるので、検証は自己責任ということで。
VMware Fusion 8.1のNATポートフォワーディングまわりのエラー対応
事象
VMware Fusion 8.1にNATポートフォワーディングまわりでエラーがある。VMware BLOGSで修正が公開されているが、2016/02/01にパッケージをダウンロードした段階では、配布されているパッケージに修正は反映されていない。
自分の手元では、VMware Fusionのネットワークを再起動すると、1度目のアクセスはできるが、そこでVMware Fusionのネットワークが落ちる、という現象。
MacをEl Capitanにアップデートして、VMware Fusionちゃんと動くか検証していて、うまくできたと思ったら落ちる、という突き落とされパターン。
事前作業
VMware Fusionのネットワーク周りの設定ファイルを再確認。変更されていたら、同じディレクトリ内に作られているバックアップファイルから必要な部分をコピーしてくるか設定し直す。
- dhcpの設定ファイル
/Library/Preferences/VMware\ Fusion/vmnet8/dhcpd.conf
- natの設定ファイル
/Library/Preferences/VMware\ Fusion/vmnet8/nat.conf
設定周りについては、過去にもエントリーを書いてるので、よろしければご参照を。
修正ファイルの設置
- こちらから、
vmnet-natd
ファイルをダウンロードDownload the NAT network component from https://www.vmware.com/go/dl_vmnet-natd (MD5: e347f5c8d86640af5102852c897e31cc)
- ダウンロードした
vmnet-natd
をVMware Fusionのアプリケーションパッケージ内に移動(置き換え)。 - アプリケーションパッケージ内に設置した
vmnet-natd
の所有者とパーミッションを変更する。
# 移動 mv -i $HOME/Downloads/vmnet-natd /Applications/VMware\ Fusion.app/Contents/Library/ # 所有者情報とパーミッションを変更。(所有者情報の部分は、環境に併せてご変更を。) sudo chown root:wheel /Applications/VMware\ Fusion.app/Contents/Library/vmnet-natd sudo chmod 755 /Applications/VMware\ Fusion.app/Contents/Library/vmnet-natd
ネットワークの再起動
vmnet-cli
で、stop&startする。
sudo /Applications/VMware\ Fusion.app/Contents/Library/vmnet-cli --stop sudo /Applications/VMware\ Fusion.app/Contents/Library/vmnet-cli --start
状態を確認。できれば、ポートフォワーディングしているVMを立ち上げて、ネットワーク越しにアクセスして、その後に確認してみると良い。
sudo /Applications/VMware\ Fusion.app/Contents/Library/vmnet-cli --status
正常に動作していれば、以下のようなメッセージ。
DHCP service on vmnet1 is running Hostonly virtual adapter on vmnet1 is enabled DHCP service on vmnet8 is running NAT service on vmnet8 is running Hostonly virtual adapter on vmnet8 is enabled All the services configured on all the networks are running
正常でない時:いくつかの行がエラーを表示する。
... NAT service on vmnet8 is not running ... Some/All of the configured services are not running
新春座談会 このコンピュータ書がすごい! 2016年版 の勝手なまとめ
個人的なメモ。去年とは書き方を変えて、時系列で徒然にしないで、勝手に括ったりしてます。
高橋さん、お疲れ様でした。(『楽しいRuby』の第5版がでる?ということで、おめでとうございます。)
読みたい本
『Python言語によるプログラミングイントロダクション』
Python言語によるプログラミングイントロダクション: 世界標準MIT教科書
- 作者: ジョン・V.グッターグ,John V. Guttag,久保幹雄
- 出版社/メーカー: 近代科学社
- 発売日: 2014/12/29
- メディア: 単行本
- この商品を含むブログ (2件) を見る
MITのテキストで、プログラミングの解説をしている本。Pythonのコードが使われているということ。
『Serverspec』
- 作者: 宮下剛輔
- 出版社/メーカー: オライリージャパン
- 発売日: 2015/01/17
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (6件) を見る
Serverspecの説明はもちろん、こんなアプリケーションをつくるなら?みたいな話も書かれている。
『理論から学ぶデータベース入門』
理論から学ぶデータベース実践入門 ~リレーショナルモデルによる効率的なSQL (WEB+DB PRESS plus)
- 作者: 奥野幹也
- 出版社/メーカー: 技術評論社
- 発売日: 2015/03/10
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (13件) を見る
今まで出てたリレーショナルモデルについての本はわかりづらいものが多かった。
この本は理論と実践にまたがって説明がされていてプログラマにちょうどよいっぽい。
高橋さんいわく「RDB使ってるなら誰でも読んだほうがよい。」
『JS+Node.jsによるWebクローラー/ネットエージェント開発テクニック』
JS+Node.jsによるWebクローラー/ネットエージェント開発テクニック
- 作者: クジラ飛行机
- 出版社/メーカー: ソシム
- 発売日: 2015/08/31
- メディア: 単行本
- この商品を含むブログ (2件) を見る
ウェブのクローリングのみでなくその後処理までいろいろ書かれてる。
Electron使って、、、みたいな話は発想がすごいなぁと。
『APIデザインケーススタディ』
APIデザインケーススタディ ~Rubyの実例から学ぶ。問題に即したデザインと普遍の考え方 (WEB+DB PRESS plus)
- 作者: 田中哲
- 出版社/メーカー: 技術評論社
- 発売日: 2015/12/16
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る
Rubyの実際の設計指針を使ってケーススタディしてる。どう考えてAPIをバランスよく作るか?みたいな。
気になった本&メモ
機械学習プロフェッショナルシリーズ
- 作者: 井手剛,杉山将
- 出版社/メーカー: 講談社
- 発売日: 2015/08/08
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (1件) を見る
機械学習のための確率と統計 (機械学習プロフェッショナルシリーズ)
- 作者: 杉山将
- 出版社/メーカー: 講談社
- 発売日: 2015/04/08
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (1件) を見る
http://www.kspub.co.jp/book/series/S043.html
2016.01時点で29巻?まで出てる気合が入ったシリーズ。
来年くらいまでの出版が計画されてる。
コンピュータ書というよりも数式が多い研究に近い人に向いてるかもしれない。
研究に近いような書籍がこれだけシリーズで出てくるのは稀ですごいらしい。
『リーダブルコード』
リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)
- 作者: Dustin Boswell,Trevor Foucher,須藤功平,角征典
- 出版社/メーカー: オライリージャパン
- 発売日: 2012/06/23
- メディア: 単行本(ソフトカバー)
- 購入: 68人 クリック: 1,802回
- この商品を含むブログ (132件) を見る
2012年出版以降、ずっと売れてきた。
ジュンク堂のランキングでは2015年は4位に落ちたけど、売上は増えてる。
驚異的!
インフラ系
『たのしいインフラの歩き方』
- 作者: 齊藤雄介(外道父)
- 出版社/メーカー: 技術評論社
- 発売日: 2015/09/08
- メディア: Kindle版
- この商品を含むブログを見る
インフラエンジニアって何するんだ?みたいな話。
『ネットワークエンジニアの教科書』
- 作者: シスコシステムズ合同会社テクニカルアシスタンスセンター
- 出版社/メーカー: シーアンドアール研究所
- 発売日: 2015/09/11
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る
『インフラエンジニアの教科書』の姉妹本的な。
- 作者: 佐野裕
- 出版社/メーカー: シーアンドアール研究所
- 発売日: 2013/10/26
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (12件) を見る
『インフラ/ネットワークエンジニアのためのネットワーク・デザインパターン』
インフラ/ネットワークエンジニアのためのネットワーク・デザインパターン
- 作者: みやたひろし
- 出版社/メーカー: SBクリエイティブ
- 発売日: 2015/12/26
- メディア: 単行本
- この商品を含むブログを見る
いわゆるデザインパターンではなく、ネットワーク構成(〜アーキテクチャ)について27にわけて説明してる。
ハッカーの学校
『ハッカーの学校』 & 『ハッカーの学校 個人情報調査の教科書』
- 作者: IPUSIRON
- 出版社/メーカー: データ・ハウス
- 発売日: 2015/01/23
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (1件) を見る
- 作者: IPUSIRON
- 出版社/メーカー: データ・ハウス
- 発売日: 2015/12/11
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る
悪用厳禁だけど、みたいな情報が満載らしい。
クラッキング対策なり個人情報流出対策を立てるには必要な知識かも。
関連で、
『サイバーセキュリティプログラミング』
サイバーセキュリティプログラミング ―Pythonで学ぶハッカーの思考
- 作者: Justin Seitz,青木一史,新井悠,一瀬小夜,岩村誠,川古谷裕平,星澤裕二
- 出版社/メーカー: オライリージャパン
- 発売日: 2015/10/24
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (7件) を見る
『徳丸浩のWebセキュリティ教室』
- 作者: 徳丸浩
- 出版社/メーカー: 日経BP社
- 発売日: 2015/10/22
- メディア: 単行本
- この商品を含むブログ (3件) を見る
もうちょっとライトな内容。。
コンピュータの低レイヤー系
『コンピュータシステムの理論と実装』
コンピュータシステムの理論と実装 ―モダンなコンピュータの作り方
- 作者: Noam Nisan,Shimon Schocken,斎藤康毅
- 出版社/メーカー: オライリージャパン
- 発売日: 2015/03/25
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (2件) を見る
NANDみたいな低レイヤーから入って、最終的にテトリスをつくっていく、みたいな説明。
『ハロー "Hello, World"』
ハロー“Hello,World"OSと標準ライブラリのシゴトとしくみ
- 作者: 坂井弘亮
- 出版社/メーカー: 秀和システム
- 発売日: 2015/09/11
- メディア: 単行本
- この商品を含むブログ (1件) を見る
例えばprintf
はどうやって動いてるか?みたいな話を説明してくれる。
データ分析系(機械学習含む)
『10年戦えるデータ分析入門』
10年戦えるデータ分析入門 SQLを武器にデータ活用時代を生き抜く (Informatics &IDEA)
- 作者: 青木峰郎
- 出版社/メーカー: SBクリエイティブ
- 発売日: 2015/06/30
- メディア: 単行本
- この商品を含むブログ (3件) を見る
青木峰郎さんのデータ分析についてのお話。いろんなクエリで説明されてる感じだった。
『「少し先の未来」を予測する クックパッドのデータ分析力』
- 作者: 中村耕史
- 出版社/メーカー: 日本実業出版社
- 発売日: 2015/10/22
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (1件) を見る
クックパッドのデータ分析サービス「たべみる」についての本。青木峰郎さんのコラムで開発の話が書かれてる。
『データ匿名化手法』
- 作者: Khaled El Emam,Luk Arbuckle,木村映善,魔狸,笹井崇司
- 出版社/メーカー: オライリージャパン
- 発売日: 2015/05/23
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (6件) を見る
匿名化していかに活用するか?みたいな内容。
ヘルスデータ=健康や医療に関するデータは超センシティブな個人情報。
そんな個人情報の取扱は注意が必要だけど活用したらとても役立つよね、みたいなところに取り組むなら大事な感じ。
『ニッポンの個人情報』
ニッポンの個人情報 「個人を特定する情報が個人情報である」と信じているすべての方へ
- 作者: 鈴木正朝,高木浩光,山本一郎
- 出版社/メーカー: 翔泳社
- 発売日: 2015/02/20
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (10件) を見る
プライバシーフリーク3人の対話。プライバシーの難しい話まで踏み込んでるけど対話形式なので、読み込むにはパワーが必要っぽい。
『データ解析の実務プロセス入門』
- 作者: あんちべ
- 出版社/メーカー: 森北出版
- 発売日: 2015/06/20
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (3件) を見る
データ分析業務をすすめていく時の一連のプロセス、という内容。手法についても触れられてる?
『ITエンジニアのための機械学習理論入門』
- 作者: 中井悦司
- 出版社/メーカー: 技術評論社
- 発売日: 2015/10/17
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る
Pythonをつかって機械学習、データ分析やってみよう的な。
『レイティング・ランキングの数理』
- 作者: Amy N.Langville,Carl D.Meyer,岩野和生,中村英史,清水咲里
- 出版社/メーカー: 共立出版
- 発売日: 2015/07/23
- メディア: 単行本
- この商品を含むブログ (1件) を見る
データ分析系の本としてくくってしまうと雑な扱いかもしれないけど、データ分析後の活用には必要そうな話。
レイティングについての本は珍しいっぽいけど、ただ、数理系の本らしい。
アプリ関連
『Unreal Engine 4 ゲーム制作超入門』
見てわかるUnrealEngine4ゲーム制作超入門 (GAME DEVELOPER BOOKS)
- 作者: 掌田津耶乃
- 出版社/メーカー: 秀和システム
- 発売日: 2015/01/30
- メディア: 単行本
- この商品を含むブログ (3件) を見る
見てわかるUnrealEngine4ゲーム制作超入門第2版 (Game developer books)
- 作者: 掌田津耶乃
- 出版社/メーカー: 秀和システム
- 発売日: 2015/08/18
- メディア: 単行本
- この商品を含むブログ (1件) を見る
『Unreal Engine 4 で極めるゲーム開発』
Unreal Engine 4で極めるゲーム開発:サンプルデータと動画で学ぶUE4ゲーム制作プロジェクト
- 作者: 湊和久,堀越祐樹
- 出版社/メーカー: ボーンデジタル
- 発売日: 2015/07/25
- メディア: 大型本
- この商品を含むブログ (1件) を見る
https://www.unrealengine.com/what-is-unreal-engine-4
2014年まではUnityが多かったけど、Unreal Engineも増えてきた。
『アプリビジネス成功への法務戦略』
アプリビジネス成功への法務戦略 -開発・リリース・運用に必要な法律知識-
- 作者: GVA法律事務所,山本俊,本間由美子,橘大地,藤江大輔,野本遼平,飛岡依織
- 出版社/メーカー: 技術評論社
- 発売日: 2015/03/25
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る
Excel関連
2015年は『たった1日で即戦力になるExcelの教科書』が売れてたり『エクセル関数 北斗百列拳』がでてたりと、Excelの本が多く出版されてる/売れてる。
『迷惑をかけないExcel』という本はよさそう。入力と計算と出力をわける、みたいなところなんかはよい指針。ワークシートの内容が多いっぽい。
会社の非プログラマメンバーに共有しておく。
- 作者: 吉田拳
- 出版社/メーカー: 技術評論社
- 発売日: 2014/10/23
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (3件) を見る
世紀末救世主伝説 エクセル関数北斗百列拳 (Gakken Computer Mook)
- 作者: 学研プラス
- 出版社/メーカー: 学研プラス
- 発売日: 2015/10/03
- メディア: ムック
- この商品を含むブログを見る
- 作者: 実践ワークシート協会,田中亨
- 出版社/メーカー: 翔泳社
- 発売日: 2015/06/15
- メディア: Kindle版
- この商品を含むブログを見る
『関数型プログラミングに目覚めた!!IQ145の女子高校生の先輩から受けた特訓5日間』
関数型プログラミングに目覚めた!IQ145の女子高校生の先輩から受けた特訓5日間
- 作者: 岡部健
- 出版社/メーカー: 秀和システム
- 発売日: 2015/04/22
- メディア: 単行本
- この商品を含むブログ (5件) を見る
ネットで話題になったし、内容について合ってる間違ってる、みたいな話があるけど、読み進めたくなる文章。
著者さんの関数型プログラミングへの想い、文章力、が強い本。
『クラウドを支える暗号技術』
- 作者: 光成滋生
- 出版社/メーカー: 秀和システム
- 発売日: 2015/06/24
- メディア: 単行本
- この商品を含むブログ (4件) を見る
PDFでダウンロードできるけど、本も出てる、みたいなのらしい。目次を見る限りもりもり。