Rails 3.2から~/.railsrcにrails newするときのオプションを書いておける。とりあえずテストはrspecつかうのといきなりbundle installしていらんので以下だけ指定してる。
# cat ~/.railsrc -T --skip-bundle
MySQL Casual Talks Vol.3 : ATND おつかれさまでした!
去る4月19日はこじはることAKB48小嶋陽菜の誕生日でした!
先日の握手会でそのことに気づいてしまったので
なにかこじはるネタでLTをしたいなということで
Haruna storage engineというネタをやりました。
InnoDB Deep Talk #1 : ATNDでd:id:moriyoshiさんがLTしていた
InnokoDBをパクったForkしただけのネタなんですけど
テーブル名で動作が変わるストレージエンジンネタもやってみたかったので
テーブル名に"mariko"が含まれてると麻里子様のツイートも取ってくるようにしてみました( *`ω´)八(бвб)
きもい、滑ってる、これはひどい、などの率直な感想を頂いておりますが
これに懲りずにまた呼んでください!よろしくおねがいします!!
買ってきたらとりあえずやる(やった)こと一覧。
defaults write com.apple.finder AppleShowAllFiles TRUE killall Finder
xcode-select --install sudo xcodebuild -license sudo mkdir /usr/local sudo chown -R `whoami` /usr/local ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" brew doctor git clone https://github.com/kamipo/dotfiles.git cd dotfiles ./brewfile.sh ./dotsetup.sh ./xxenv_setup.sh sudo vi /etc/shells chpass -s /usr/local/bin/zsh
git clone git@github.com:sstephenson/rbenv.git ~/.rbenv ln -nfs ~/dotfiles/default-gems ~/.rbenv/default-gems mkdir -p ~/.rbenv/plugins cd ~/.rbenv/plugins git clone git@github.com:sstephenson/ruby-build.git git clone git@github.com:sstephenson/rbenv-default-gems.git git clone git@github.com:rkh/rbenv-update.git export PATH="$HOME/.rbenv/bin:$PATH" eval "$(rbenv init -)" # ruby required libssl-dev libreadline6-dev libncurses5-dev libsqlite3-dev # nokogiri required libxml2-dev libxslt1-dev rbenv install 2.2.1 rbenv global 2.2.1 rbenv rehash
git clone git@github.com:tokuhirom/plenv.git ~/.plenv mkdir -p ~/.plenv/plugins cd ~/.plenv/plugins git clone git@github.com:tokuhirom/Perl-Build.git perl-build export PATH="$HOME/.plenv/bin:$PATH" eval "$(plenv init -)" plenv install 5.21.9 -DDEBUGGING=-g --build-dir=~/.plenv/build plenv global 5.21.9 plenv install-cpanm plenv rehash
go get github.com/motemen/ghq ghq get kamipo/mysql-build ln -nfs ~/src/github.com/kamipo/mysql-build/bin/mysql-build ~/bin/mysql-build mkdir -p ~/opt/mysql mysql-build -v 5.6.23 ~/opt/mysql/5.6.23 cd ~/opt/mysql/5.6.23 ./scripts/mysql_install_db ./bin/mysqld_safe & ./bin/mysql -e 'show variables like "version"'
Webアプリケーションを運用しているエンジニアであれば、サービスの成長とともにデータベースの性能問題に頭を悩ませた経験が少なからずあるのではないでしょうか。
データベースは、大量のデータを確実に保存してすばやく取り出せる魔法の箱ですが、種も仕掛けもある魔法の箱です。魔法の箱をうまく使ってみせるには種と仕掛けをちゃんと理解していることがとても重要だと思います。
この本では、データベースがどういうデータ構造でデータを保持して、どういう性質を持っていて、どういうことが得意で、どういうことをすると性能上の問題があって、どうやって解決するかの指針を得ることができると思います。
この、どういう問題があって、どうやって解決するかの指針は、日々データベースの性能問題に取り組むWebアプリケーションを運用しているエンジニアにとって、とてつもなく実践的な内容だと思います。
また、まだ本格的なWebアプリケーションの運用をしたことがない人にも、将来Webエンジニアを目指すなら是非この本を手に取ってほしいと思います。
データベースの性能問題は、それが問題になりだしてからの対策は非常に難しくなるので、データベースで起こる問題をあらかじめ知っておくことは将来のあなたをきっと助けてくれるはずです。
ということで、下のリンクから買っても僕にちゃりんちゃりんいかないけど是非読んでみるといいと思います!
Webエンジニアのための データベース技術[実践]入門 (Software Design plus)
Nokogiriをビルドするのにlibxml/parser.hとかlibxslt/xslt.hが必要なのでいつもの方法でどのパッケージに含まれてるのか調べる。
$ apt-file search libxml/parser.h libxml2-dev: /usr/include/libxml2/libxml/parser.h lsb-build-desktop3: /usr/include/lsb3/libxml2/libxml/parser.h
$ apt-file search libxslt/xslt.h libxslt1-dev: /usr/include/libxslt/xslt.h
$ sudo aptitude install libxml2-dev libxslt1-dev
Nokogiriがビルドできるようになる。
$ gem install nokogiri
VPSのUbuntuにrbenvでRuby入れていろいろしようと思ったら
no such file to load -- net/https. Try running apt-get install libopenssl-ruby (LoadError)
rest-client/lib/restclient.rb at master · rest-client/rest-client · GitHub
っていわれたけど、apt-get install libopenssl-rubyしてもrbenvで入れたRubyでopenssl使えるようにならないのでこれではダメです!
とりあえず、なにが足りないのか調べるために
cd ruby-1.9.3-p125/ext/openssl ruby extconf.rb
してみたら
=== OpenSSL for Ruby configurator === === Checking for system dependent stuff... === checking for t_open() in -lnsl... no checking for socket() in -lsocket... no checking for assert.h... yes === Checking for required stuff... === checking for openssl/ssl.h... no === Checking for required stuff failed. === Makefile wasn't created. Fix the errors above.
openssl/ssl.hが足りないっぽいんで
apt-file search openssl/ssl.h
すると
libssl-dev: /usr/include/openssl/ssl.h
openssl/ssl.hはlibssl-devパッケージに含まれてることがわかるので
sudo aptitude install libssl-dev
したらいけるようになると思います!僕はいけるようになりました!
あとはopensslだけ入れなおすなりRubyごと入れなおすなりするとよいです。
ふだん仕事とかで自動化とか最適化ってことばはあまり使わずに、省力化とか効率化ってことばを使うようにしてる。
なんというか、思い描く本当に自動化された理想の姿からすればぜんぜん自動じゃないし、最も適したと書いて最適化だけど、いまの自分に考えうる最高の姿が最適だと思えるほど自信家でもない。
それでも自分の心に反して自動化とか最適化ってことばを使ったほうが、よくわかってない人向けには耳障りいいのかなーと思わなくもないけど、自分の心に反してるので僕にはすこし勇気が必要なことであったりする。