タグ

ブックマーク / blog.livedoor.jp/sasata299 (19)

  • Ansibleを使って誰でも簡単安全にサーバ構築できる仕組みを作る - (゚∀゚)o彡 sasata299's blog

    2014年08月04日11:11 インフラ Ansibleを使って誰でも簡単安全にサーバ構築できる仕組みを作る Ansible って何なの? サーバに対してミドルウェアのインストールや設定等の環境構築を行うことをプロビジョニングと言いますが、その作業を自動化させるためのツールです。プロビジョニングを手動で行うと、手間も掛かるし、どうしてもミスが起こりえます。 その点、Ansible のようなツールを使えば、コマンド一発でプロビジョニングが走り、さらに冪等性(何度実行しても同じ結果になる)も確保されるため、誰でも簡単安全にサーバ構築が出来るのです。 同様のことを行うツールとして、Chef や Puppet がありますが、Ansible はそれらの中でもシンプルなことが特徴です。Chef は以前使ってみようと思い触ってみたのですが、覚えることが多かったりして挫折してしまった。。Ansible

    Ansibleを使って誰でも簡単安全にサーバ構築できる仕組みを作る - (゚∀゚)o彡 sasata299's blog
  • 株式会社Lang-8を退職しました - (゚∀゚)o彡 sasata299's blog

    2014年06月14日11:05 その他 株式会社Lang-8を退職しました 報告が遅くなってしまいましたが、5月末でLang-8を退職しました。細かい話は省略しますが、気になる方は飲みの席ででも聞いてください :) ドベンチャーな環境もそうだし、添削率を改善することが出来たり、iOSアプリを開発することが出来たりといろいろな経験ができたのでほんとに良かったです!! iOSアプリに関してはいろいろとハマったこととか書きたいけどいつになることやら。。 次はまだ未定ですが、今後ともどうぞよろしくお願いします! ツイート 「その他」カテゴリの最新記事

    株式会社Lang-8を退職しました - (゚∀゚)o彡 sasata299's blog
    Watson
    Watson 2014/06/14
  • Spring無しでRailsを使おうだなんて正気ですかッ!? - (゚∀゚)o彡 sasata299's blog

    2013年08月06日18:47 Ruby Spring無しでRailsを使おうだなんて正気ですかッ!? Railsはフレームワーク自体や関連ライブラリの読み込みがあるため、ちょっとしたコマンドを実行するだけでかなり待たされてしまったりします(サーバ起動などなど)。そこで、あらかじめRailsプロセスをロードしておき、そのプロセスから各種コマンドを実行することで高速に実行しよう!という素敵なアプローチがあります。その一つが Spring です。 インストールはこれだけ!これだけでコマンドの実行が高速になるんだから入れない理由があるでしょうか。いや、無い。 gem install spring ただ、対象はRails3.2以上なので古いRailsを使っていると恩恵が受けられないです。。そういう場合はさっさとバージョンを上げましょう。そのくらい快適です。 実際に実行時間を計ってみても(かなり適

    Watson
    Watson 2013/08/06
  • 相互添削型SNSのLang-8にJoinします - (゚∀゚)o彡 sasata299's blog

    2013年02月19日11:11 その他 相互添削型SNSのLang-8にJoinします こんにちわ。さて、以前の記事でクックパッド退職することは発表しましたが、次に何をするのかは言っていませんでした。そろそろ発表したいと思います。次は、 相互添削型SNSのLang-8 にJoinします!! Lang-8ってどんなサイトなの? 相互添削型SNSで、、といってもよくわからないと思うので具体的に説明します。 例えば僕たちが英語を書くと、英語がネイティブな人(例えばアメリカの人)がそれを添削してくれます。その代わりに、アメリカ中国の人が書いた日語を日語がネイティブな僕たち日人が添削してあげるという相互添削型のSNSです。添削を通じてまったく見ず知らずの海外の人と友達になることも日常的にあったりして感動します。 語学の学習に関してはもちろん座学は重要ですが、アウトプットしてフィードバック

    Watson
    Watson 2013/02/19
  • クックパッド株式会社を卒業します - (゚∀゚)o彡 sasata299's blog

    2013年01月31日18:37 その他 クックパッド株式会社を卒業します 私事ですが、このたびクックパッド株式会社を退職することになりました。 有給消化の関係でまだしばらく所属はしていますが、日1/31が最終出社日です。2009年の8月に入社したので、約3年半お世話になったことになります。ついこの間JOINした気がするのに早いものですね。 短い間でしたが、クックパッドの素晴らしい環境と素晴らしい仲間に恵まれて当に幸運でした。美味しいご飯もべられるし。僕の人生の中で、クックパッドJOINすることに決めたのはかなり上位にい込む素晴らしい決断だったと思います! やってきたこと せっかくなので振り返ってみます。クックパッドでは以下のようなことをやってきました。 ・HadoopやEMRを利用した大規模データ分析クックパッドという巨大なサイトへの機能追加、改善 ・新規事業へのチャレンジ

    Watson
    Watson 2013/01/31
  • グラフ描くならMorris.jsがお手軽で良いかも - (゚∀゚)o彡 sasata299's blog

    2012年11月16日13:55 JavaScript Ruby グラフ描くならMorris.jsがお手軽で良いかも こんにちわ。寒くなってきましたがみなさまお元気ですか? さて、先日ちょっとしたグラフを描画したかったんですよ。それでなにか使いやすいライブラリ無いかなーと思っていたら railscast (revisedなので有料です) で Morris.js ってjQueryプラグインが紹介されてて良さげだったので使ってみました。google analytics みたいなツールチップも出してくれます。 使い方はとっても簡単です。 まず、jQuery (>=1.7) と Raphael (>=2.0) が必要です。あとは Morris.js があれば動作します。 これらを app/assets/javascripts/application.js に設定してください。この記事執筆時点での

  • Rubyでメタプログラミング 〜暗黙的に呼ばれるto_procメソッド - (゚∀゚)o彡 sasata299's blog

    2011年01月08日23:09 Ruby Rubyでメタプログラミング 〜暗黙的に呼ばれるto_procメソッド 先日、こんな感じの処理に遭遇しました。はて、、何じゃこりゃ・・(´・ω・`) ポカーン (1..5).each(&method(:puts)) と思って調べたのでまとめておきます。この処理が理解できれば一人前です。きっと。 ブロックはオブジェクトではない Ruby では大抵のものがオブジェクトですが、オブジェクトではないものも一部あります。ブロックがその一つです。 例えばこんな風にブロックを定義することは出来ません。 block = { "test" } # in:1: odd number list for Hash そもそも Ruby の構文ではハッシュとして扱われるためブロックを直接生成することは出来ません。Block.new みたいな構文も無いので、ブロックは ti

    Watson
    Watson 2011/01/09
  • まだ使っていない人にこれだけは伝えたいgitの便利機能 - (゚∀゚)o彡 sasata299's blog

    2010年12月26日11:03 Git まだ使っていない人にこれだけは伝えたいgitの便利機能 ということで、今更ですけど git は便利ですね〜。もう subversion には戻れません。気が向いたので、個人的に気に入っていることをちょっと書いてみます。 1) 直前のコミットに対して、コミットし忘れたものを追加できる よくありがちなパターンですね。一通りコミットしたあとに「あっ!○○をコミットし忘れた!」とか、「××を一カ所修正し忘れていた」みたいなことってあると思います。subversion だとそういうのでコミットが増えて履歴が汚くなってしまうものですが、git だと簡単に直前のコミットに忘れてたものを追加して隠蔽(笑)することが可能です。 例えば hoge というファイルをコミットし忘れた場合を考えてみます。 $ touch hoge fuga foo $ git add fu

    Watson
    Watson 2010/12/27
  • Rubyist なら当然知ってる!? Proc.new と lambda の違い - (゚∀゚)o彡 sasata299's blog

    2010年09月22日10:17 Ruby Rubyist なら当然知ってる!? Proc.new と lambda の違い Proc.new とか lambda ってわかりにくいですよね。ブロックと何か似てるけどどう違うの…!! っていう感じで困ります。さて、最近「メタプログラミングRuby」を読んだらその辺の話がわかりやすく書かれていたので勉強がてらブログりますよー (`・ω・´) メタプログラミングRuby 著者:Paolo Perrotta アスキー・メディアワークス(2010-08-28) 販売元:Amazon.co.jp クチコミを見る まずは前提から。この辺の話もあんまり頭に入ってなかったです。聞いた事はあるけど久しぶりに聞きましたー、みたいな。 ・Ruby ではほぼすべてがオブジェクト(うんうん。らしいねらしいね) ・だたしブロックはオブジェクトではない(ほほぉ〜) ・ブロ

    Watson
    Watson 2010/09/24
  • vimを使うべき8つの理由 - (゚∀゚)o彡 sasata299's blog

    2009年02月06日00:13 vim vimを使うべき8つの理由 流行りそうなタイトルに変えてみましたww 僕はviが好きです。ということで、そろそろ.vimrcを晒しておくかと思ったんですが、よく考えたらすでにここに置いてありました>< ・・まぁせっかくなので、気に入っている設定を8つ紹介しますw viを使いたいけどよくわからない。という人の助けになれば嬉しいです。まずは.vimrcの設定からお気に入りを4つ。 ① ファイルの前回閉じたときの場所を記憶してくれます。 if has("autocmd") autocmd BufReadPost * \ if line("'\"") > 0 && line ("'\"") <= line("$") | \ exe "normal! g'\"" | \ endif endif ② ファイル作成時に、指定したファイルから雛形が出来上がります。

    Watson
    Watson 2010/07/21
  • 第六回ドワンゴ技術勉強会に参加して発表してきました - (゚∀゚)o彡 sasata299's blog

    2010年07月17日01:08 勉強会 Hadoop 第六回ドワンゴ技術勉強会に参加して発表してきました ドワンゴ社にて行われた『第六回ドワンゴ技術勉強会』に参加して発表してきました。参考までに使用したスライドを置いておきます。 COOKPADでのHadoop利用View more presentations from Tatsuya Sasaki. 会社名のところがおかしかったり、スライドショーするのを忘れていたり(注:わざとですけどね!)。まぁ、そんなことは良いではないですか。記憶に残ったと思えば(笑) /) ///) /,.=゙''"/ /     i f ,.r='"-‐'つ____   こまけぇこたぁいいんだよ!! /      /   _,.-‐'~/⌒  ⌒\ /   ,i   ,二ニ⊃( ●). (●)\ /    ノ    il゙フ::::⌒(__人__)⌒::\ ,

  • Hadoop Streaming で外部ファイルを扱う方法のまとめ - (゚∀゚)o彡 sasata299's blog

    2010年05月06日09:21 Hadoop Hadoop Streaming で外部ファイルを扱う方法のまとめ Hadoop Streaming での外部ファイルの扱いもだいぶ固まってきました。発表資料のスライドではこの辺の話を書いたことがあるんですが、ブログには書いてなかったので一度きっちりまとめておこうかなーっと。というわけで今回は Hadoop Streaming での外部ファイルの読み込みについてまとめますよ!(*゚Д゚)=3 ムハー そもそも外部ファイルの読み込みと言っても、この二つのパターンがあります。 1) 外部ファイルが master 上にある(つまりローカルディスクにある)場合 2) 外部ファイルが別ファイルシステム(S3 だったり HDFS だったり)にある場合 外部ファイルが master 上にある場合 まず、この場合はとても簡単です。例えば hoge.txt と

  • 噂のTokyoCabinet/TokyoTyrantを使ってみた - (゚∀゚)o彡 sasata299's blog

    2009年10月04日20:18 KVS Ruby 噂のTokyoCabinet/TokyoTyrantを使ってみた key-value ストアに興味がある ささたつ です。key-value ストアとして有名なものといえば memcached かと思いますが、他にも TokyoCabinet や TokyoTyrant というものも注目されています(不思議な名前ですね!)。key-value ストアでありながら高速、かつ、データをメモリで無くファイルに保存しているため、サーバが落ちてもデータが消えないとか。 実際に mixi の最終ログイン時間の保持などに使われているそうです。 memcached をセッションの保持などに使っている場合、memcached のサーバがダウンしてしまったら、データは全て消えてしまいます。その結果 RDBMS にアクセスが集中し、パフォーマンスが大幅に悪化し

    Watson
    Watson 2010/02/24
  • Rubyで "&" を使うと幸せになれるらしいよ (*´Д`)ノ - (゚∀゚)o彡 sasata299's blog

    2010年02月03日21:31 Ruby Rubyで "&" を使うと幸せになれるらしいよ (*´Д`)ノ なんか似たようなタイトルを見たことあるな…まぁいいか。 Perlで+を使うと幸せになれるよ (*´Д`)ノ - (゚∀゚)o彡 sasata299's blog ブロック処理 ( do...end もしくは {...} ) の例としてはこのような3種類があります。 #1 ブロックの中に直接処理を書く方法 #2 ブロックの中でやらせたい処理の Proc オブジェクトを呼び出す方法 #3 ブロックを使わずに Proc オブジェクトに & を付けて渡してあげる方法 3つとも全く同じ処理です。#3 みたいに書く事も出来るんですね〜。& が Proc オブジェクトをブロックに変換してくれます。 #1 3.times do puts 'hogehoge' end proc = Proc.new

    Watson
    Watson 2010/02/05
  • Rubyのmethod_missingを使って黒魔術を実装する - (゚∀゚)o彡 sasata299's blog

    2010年01月27日09:23 Ruby Rubyのmethod_missingを使って黒魔術を実装する Rubyにはメソッド探索の最後に呼ばれる(つまり、メソッドが見つからないときに呼ばれる)フック的なメソッドとして method_missing というメソッドがあります。これを上手に利用することで黒魔術的なコードが書けてかっこいいですw #!/usr/bin/ruby module Sasata299 # 適当なモジュールを定義 def hoge(num) return num * 2 end def fuga(num) return num + '299' end end def method_missing(action, *args) if action.to_s =~ /(.+)_(.+)/ eval "include #{$1.capitalize}" __send__ $

    Watson
    Watson 2010/01/27
  • Rubyで日付の計算するならactive_support使っとけ - (゚∀゚)o彡 sasata299's blog

    2009年09月07日01:47 Ruby Rubyで日付の計算するならactive_support使っとけ Ruby で日付を扱うときに、active_support (rails をインストールすると一緒に入ってくるライブラリ) が凄い便利なんです!!ぐだぐだ説明するよりもコードを見たほうが早いと思うのでどうぞ。 #!/usr/bin/ruby require 'rubygems' require 'active_support' t = Time.now # Mon Sep 07 00:24:07 +0900 2009 t - 5.days # 5日前 (Wed Sep 02 00:24:07 +0900 2009) t - 1.week # 1週間前 (Mon Aug 31 00:24:07 +0900 2009) t - 2.years # 2年前 (Fri Sep 07 00:

    Watson
    Watson 2009/12/06
  • rubyのirbが便利すぎる!! - (゚∀゚)o彡 sasata299's blog

    2008年12月13日11:32 Ruby rubyのirbが便利すぎる!! ruby には、irb という便利ツールがあります。ruby リファレンスマニュアルによると irb は interactive ruby の略です。 ruby の式を標準入力から簡単に入力/実行するためのツールです。 まぁ、この通りです。実際に使ってみればすぐにわかりますが、ruby のコマンドを手軽に実行して、結果を確認できるものなんです。最近はこれを使って ruby を勉強しています。デフォルトではこんな感じで動作します。 ただ、irb はこのまま使うとなると色々と不満が・・。 ・カーソルで左右に移動できない ・入力の履歴を参照することができない ・見づらい これは結構痛い。特に履歴が使えないとか致命的です。。 と思って調べてみると、.irbrc という設定ファイルがあって、色々と設定することが出来るようで

    Watson
    Watson 2009/10/29
  • memcachedを介して、PerlとRubyでデータをほげほげしてみる - (゚∀゚)o彡 sasata299's blog

    2009年10月19日22:50 Perl Ruby memcachedを介して、PerlRubyでデータをほげほげしてみる ふと思って、Ruby でデータを memcached に入れて、それを Perl から取り出せるのかな〜というのが気になったので試してみました。データの形式として、文字列、ActiveRecord、ハッシュをそれぞれ試してみます。予想では、ActiveRecord のデータはさすがに Perl では読み込めないだろうけど、それ以外は読み込めるんじゃないかなぁと。 まずは Ruby を使って memcached にデータを set します。 #!/usr/bin/ruby require 'rubygems' require 'activerecord' require 'memcache' class Hoge < ActiveRecord::Base estab

  • subversionを使っていた人がgit便利だなと感じたこと - (゚∀゚)o彡 sasata299's blog

    2009年05月25日05:42 Git subversionを使っていた人がgit便利だなと感じたこと 最近は subversion も使いますが、git を使うことも多くなってきました。モジュールの配布なども git のものが多くなってきて、そろそろ git を使えるようになっておかないとまずい気が・・。ってことでちょっと勉強してみたのでまとめてみます。 そもそも「 subversion と git は何が違うの?」っていう話ですが、主な違いは以下の通りです。【参考】に挙げたサイトが分かり易いと思います。 subversion ・単一リポジトリ(リポジトリは一つだけ) ・commit したら即反映 ・add するのは新規にファイルを追加するときだけ ・リビジョン番号は数字 ・考えるのは『ローカル( checkout した場所)』と『リポジトリ』の2つだけ git ・分散リポジトリ(マス

  • 1