kidoOooOoooOOom

ゲーム開発やってます

レベルアップのゲームデザイン 読書メモ LEVEL3

「レベルアップ」のゲームデザイン ―実戦で使えるゲーム作りのテクニック作者: Scott Rogers,塩川洋介(監訳),佐藤理絵子出版社/メーカー: オライリージャパン発売日: 2012/08/18メディア: 単行本(ソフトカバー)購入: 17人 クリック: 98回この商品を含むブ…

レベルアップのゲームデザイン 読書メモ LEVEL2

「レベルアップ」のゲームデザイン ―実戦で使えるゲーム作りのテクニック作者: Scott Rogers,塩川洋介(監訳),佐藤理絵子出版社/メーカー: オライリージャパン発売日: 2012/08/18メディア: 単行本(ソフトカバー)購入: 17人 クリック: 98回この商品を含むブ…

Effective JavaSceipt 読書メモ 項目18~21 高階関数とか

Effective JavaScript JavaScriptを使うときに知っておきたい68の冴えたやり方作者: Devid Herman出版社/メーカー: 翔泳社発売日: 2013/04/13メディア: Kindle版この商品を含むブログ (4件) を見る 第3章 関数の扱い 項目18 関数、メソッド、コンストラクタ…

レベルアップのゲームデザイン 読書メモ LEVEL1

「レベルアップ」のゲームデザイン ―実戦で使えるゲーム作りのテクニック作者: Scott Rogers,塩川洋介(監訳),佐藤理絵子出版社/メーカー: オライリージャパン発売日: 2012/08/18メディア: 単行本(ソフトカバー)購入: 17人 クリック: 98回この商品を含むブ…

Effective JavaSceipt 読書メモ 項目12~17

Effective JavaScript JavaScriptを使うときに知っておきたい68の冴えたやり方作者: Devid Herman出版社/メーカー: 翔泳社発売日: 2013/04/13メディア: Kindle版この商品を含むブログ (4件) を見る 第2章 変数のスコープ 項目12 変数の巻き上げ(ホイスティ…

mongodb設定周りメモ

パラメータの設定方法について。 mongod( or mongos)起動時に、コマンドライン引数か config ファイルで設定する。両方に同じパラメータの設定があった場合、configファイルが優先される。 コマンドラインの場合 $ mongod --plogappend true --verbose confi…

Effective JavaSceipt 読書メモ 項目8~11

Effective JavaScript JavaScriptを使うときに知っておきたい68の冴えたやり方作者: Devid Herman出版社/メーカー: 翔泳社発売日: 2013/04/13メディア: Kindle版この商品を含むブログ (4件) を見る 第2章 変数のスコープ 項目8 グローバルオブジェクトを使う…

Effective JavaSceipt 読書メモ 項目4~7

Effective JavaScript JavaScriptを使うときに知っておきたい68の冴えたやり方作者: Devid Herman出版社/メーカー: 翔泳社発売日: 2013/04/13メディア: Kindle版この商品を含むブログ (4件) を見る 第1章 JavaScriptに慣れ親しむ 項目4 オブジェクトラッパー…

Node.jsでエクセルparseして出力など

本来はやりたくないことだが、大量のエクセルファイルで用意されてしまったデータから必要なものだけ抜き出して整形して出力する必要性があったので対応した。 使用したのは xlsx モジュール例えば、下記のようなテンプレートのエクセルファイルがあるとする…

Node.jsでBasic認証

basic-auth-connect モジュールを使うと簡単にできる。 そのまま user名とpasswordを渡すと、認証エラーの場合は 401を返してくれる。 var basicAuth = require('basic-auth-connect'); app.use(basicAuth(username, password)); ちょっと特殊な処理をかまし…

serverspec v2で NICのリンク速度テスト

serverspecでNICのリンク速度設定のテストを行う場合は下記のように書く。 describe interface('eth0') do its(:speed) { should eq 1000 } end Ubuntu 12.04 のサーバで実行してみると、ethtool が無いよと怒られたので、ansible の taskに追加。 - name: I…

sudoersの文法メモ

serverspecやansibleでsudoの動作設定を変更することがあるので、一応 sudoers の文法について整理しておく。sudoの動作設定は /etc/sudoers に記述されており、visudo コマンドでのみ編集を行うことができる。visudo コマンドは保存時に自動的に構文チェッ…

Effective JavaSceipt 読書メモ項目1〜3

改めて基礎を勉強するモチベーションが出てきたので、積んでた下記の本をメモっていく。Effective JavaScript JavaScriptを使うときに知っておきたい68の冴えたやり方作者: Devid Herman出版社/メーカー: 翔泳社発売日: 2013/04/13メディア: Kindle版この商…

serverspec v2で複数ホストにrole別にtest実行

serverspec v1からv2でいくつか変更点があり、v1のソースではそのまま実行できない箇所があったので、変更点を見つつ v2 で基本的なテストを実行できるようにした。ディレクトリ構成は下記の通り。最低限のwebのテストを用意する。 ├── Gemfile ├── Gemfile.…

Macのターミナル上でマウス操作を有効にする

tmuxを使っていて、分割したウインドウにマウス操作で移動できないのが不便だったので下記対応をした。 EasySIMBLをインストール https://github.com/norio-nomura/EasySIMBL/ MouseTerm をインストール https://bitheap.org/mouseterm/ 自分の場合は解凍し…

rubyのhighlineでパスワード入力を隠すなど

rubyのコンソールアプリでユーザ名とパスワードを入力させる際に、タイプしたパスワードは隠しておきたい場合は highlineを使えばすぐできるとのこと。 require 'highline/import' username = ask("Enter user: ") { |q| q.echo = true } password = ask("En…

zshの導入と初期設定

今までbashを使っていてそんなに不便に感じることはなかったけど、開発効率化のため zshに入れ替えてみることにした。 参考にしたのは WEB+DB PRESSの zsh大活用の記事。コマンドを書き写すのがちょっと大変だったけれど、分かり易くて良い記事だと思った。W…

serverspec実行できるところまで試してみる

serverspecとは、サーバの状態をテストするためのフレームワークで、Rubyで実装されておりRSpecの書き方に準拠している。 公式サイトはこちら http://serverspec.org/今回、インストールをして簡単なテストが実行できるところまでを試してみたのでメモ。 イ…

node.jsで objectをyamlで出力

node.js で形成した objectを yamlフォーマットで出力したいケースがあったのでメモ。 やりたいこととしては、ansibleのinventoryに記載したhosts情報を元に、tmuxinatorの設定ファイル(yaml)を自動生成すること。 yaml出力には js-yaml モジュールを使えば…

INI LIKEフォーマットをparse

node.jsのプログラムから、ansibleのinventory に記載した hosts情報を使ってごにょごにょしたいような場合、INI フォーマットをparseする ini モジュールを使えば簡単。 iniファイル [webservers] foo.example.com bar.example.com [dbservers] one.example…

複数ホスト、ファイルを同時にtailできるmultitailコマンド

複数ホストにまたがるログファイルを同時にtail できるコマンドがあったのでメモ。 yum install multitailでインストールするだけ。 ホストAのログファイルXとホストBのログファイルをYを連結してtailfする場合は下記のようなコマンド。 multitail -l "ssh u…

nodeでファイルの拡張子を厳格に指定して読み込み

nodeのプロジェクトで、/lib/service/index.js などのファイルから、同ディレクトリ配下のjsファイルを一括してexportsさせるケースがある。例えば下記のようなコード。 var fs = require('fs'); var path = require('path'); var _ = require('lodash'); _.…

macのterminal.appを環境別に色分け設定して共有

tmuxで各環境(dev, stg, prdなど)別のコンソール設定を作成できたので、次は環境別にコンソールの色を変えてみたい。 Macのターミナルappの[環境設定]-[設定]で + を押して新規プロファイルを作成する。 適当にウインドウの色や大きさの設定をし、[シェル]…

tmuxのconf

いくつかのtmux設定記事を参考にして、適当な設定を自分向けに書いたのでメモ。 https://github.com/kidooom/tmux/blob/master/.tmux.confよく使うキーバインドとしては、(prefixはCtrl+aに変更してます) C-a ? : ヘルプ C-a [0-9] : window移動 C-a o : pai…

tmuxとtmuxinatorで開発環境別のコンソール環境整備

dev環境で作業やログ調査をする際に、webサーバをsshで開いてlogをtailして dbサーバをsshで開いてlogをtailしてmanagerサーバを(略)するのが面倒なので、tmuxとtmuxinatorを使ってコマンド一発でこの環境が開くようにする。 tmuxのインストール $ brew in…

Jenkinsジョブをリモートからビルド実行

管理ツールなど外部サーバからJenkinsのジョブを実行したい場合、Jenkinsのジョブ設定にある下記のリモートビルドの設定を行えばOK. 後は、外部サーバから設定したtoken付随のURLを叩くとjobが実行される。

nodejsで文字コードがsjisのcsvを取得して出力

svnサーバにあがっているcsvファイルを、httpsで取得してごにょごにょ処理をする必要があったのでメモ。 最初、httpsモジュール使って書いてたけど、文字化けがどうしても解決できなくて request モジュールに変えて enconding = null のオプションを使った…

mongodbでクエリログを全部みたい

setProfillingLevelを2にする。 $ mongo > use myDb switched to db myDb > db.getProfilingLevel() 0 > db.setProfilingLevel(2) { "was" : 0, "slowms" : 1, "ok" : 1 } > db.getProfilingLevel() 2 > db.system.profile.find().pretty()これでquery log …

[JS] スネークケースのstring/object keys を キャメルケースに変換

最近はガリガリ開発していてそっちでアウトプットしているので、ブログには書く頻度が減ってしまった。 今日書いたコードは糞だけど汎用性あるのでこっちにメモ /** * Convert snake case string or object keys to camel case. */ convertSnakeToCamel: fun…

Nodeのcryptoモジュールで AES algorithmの暗号・復号

例えば秘密鍵が 123456789key で、Hello worldという文字列を暗号・復号すると下記のようになる。 var crypto = require('crypto'); var secretKey = '123456789key'; var text = 'Hello world'; var hash = crypto.createHash('md5'); hash.update(secretKe…