Scalaで学ぶ関数型プログラミング

投稿者 おおかゆか 2009-10-20 07:30:00 GMT

前回のRails勉強会で行ったScalaのセッションをブログで公開したところ、これまでのエントリで最多の62ブックマークがついてしまい、Scalaの波がすぐそこまで来ていることを実感。
それならと調子に乗って、また先週日曜日のRails勉強会@東京第44回にて、こないだのScalaのセッションの続編をやってきた。

タイトルは「Ruby使いのためのScalaで学ぶ関数型プログラミング」。前回は後半少しだけ文法の説明をほとんど即興でしてみたものの、言語概要の紹介とひたすらScalaいいよーというアジテーションがメインだったので、今回は文法に関するテーマが中心。

といってもいちおうRubyとの関連性を持たせないとRails勉強会でやる意味がないので、Ruby使いが関数型プログラミングのエッセンスを学ぶためにScalaのサンプルコードを使って説明するというものにした。

カテゴリ , ,  | コメント(5) | トラックバック(0) はてなブックマークへ はてなブックマークでの登録数

Ruby使いのためのScalaのススメ

投稿者 おおかゆか 2009-10-03 12:10:00 GMT

先週日曜日のRails勉強会@東京第43回でScalaのセッションをやってきた。

なぜRubyのフレームワークであるところのRailsの勉強会でScalaのセッションなんだと思われるかもしれないが、そこはそれ、単に私の趣味ということで。
というかScalaってRubyによく似ているのでRubyな人もきっと興味を持つはずと思い、さらっと表面だけでも紹介するようなセッションなら私でもできるだろうということでやってみた次第。

持ち時間は90分あったので、その前半でまずはScalaの概要を紹介。前日の夜中に3時間くらいで作ったスライドを使ってプレゼン形式で進めた。

 

そして後半はFirst Steps to Scalaを参考に、対話型インタプリタで実際に動かしながらScalaの言語仕様を紹介。といっても残り実質40分程度ではListのさわりくらいまでしかできなかったが。

とりあえず質問もそこそこ出て食いつきはよかったように思えたので、Scalaにふれてみるきっかけとしてはよかったのではないかと。
スライドの中でも述べているように現状Scalaに興味を持って学ぼうとしてるのはほとんどがJava使いなわけだが、私としてはRubyの素養がある人のほうがよりScalaにとっつきやすいと考えているので、もっとRubyistの中からもScalaを学ぶ人が増えてほしいと思う。

カテゴリ , ,  | コメント(0) | トラックバック(2) はてなブックマークへ はてなブックマークでの登録数

RubyKaigi2009最終日!

投稿者 おおかゆか 2009-07-19 14:35:00 GMT

金曜日から始まったRubyKaigi2009も本日で三日目最終日を迎えた。
最初のセッションが9時半から始まるのに当日気づいて(前日は10時開始)、慌てて駆け込んだもののさすがに朝早いこともあってか人はまばら。

そしてノートPCを開いてセッションの内容を書き留めようとしたところ、電池切れで電源が入らない。どうやら前日、充電したつもりが接触不良で充電できてなかった様子。
というわけで、今回は前日のように出席したひとつひとつのセッションの内容を紹介することはせず。gihyoですばらしい記事が上がっているので、わざわざ私が書くまでもないだろう。

ただ写真は撮ったので、それを使って会議のダイジェストを紹介。

Edo Cabinet

大ホールでの朝イチのセッション、「Edo Cabinet」を発表したメトロー ジョンさん。Tokyo CabinetとTokyo TyrantをRubyから簡単に操作できるようにする、Rufus::TokyoRufus::Edoの説明をした。
彼は横浜在住のスイス人だそうで、ほとんど日本語で発表してくれた。感謝。

 

カテゴリ ,  | コメント(0) | トラックバック(0) はてなブックマークへ はてなブックマークでの登録数

RubyKaigi2009二日目!

投稿者 おおかゆか 2009-07-18 15:46:00 GMT

昨日に引き続き、RubyKaigi2009に参加。
懲りずに英語のセッションを主体に出席。でもやっぱり何言ってるか1/3も聞き取れないので真っ先にプレゼン資料を読みつつ、雰囲気で何を言ってるか見当をつけながら聞く。
また、とりあえず片っ端からTsudaっておいたので、臨場感を求める方はそちらもどうぞ。

Sequel: SQL in Ruby

一発目はSequel。作者のJeremy Evansさんが来日しての発表。
Ruby用のORMのひとつでActiveRecordよりもSQL寄りな作りで、「person.filter(:name => 'abc').order(:age)」のようにメソッドチェーンでクエリーを組み立てて使う。
Modelなしでもつかえるし、ActiveRecordのようなModelも用意されているが、簡単な操作ならModelは使わないのがSequel流らしい。

さらにMaster/Slave機能やコネクションプーリング機能が標準装備。設計もコードもシンプルなため、メモリの占有量が最小でActiveRecordの1/6で済むという。(本当?)
メンテも熱心にやっているため、バグは最短2時間、最長でも6日以内には対応するとのこと。

Sequelセッション

カテゴリ ,  | コメント(0) | トラックバック(0) はてなブックマークへ はてなブックマークでの登録数

RubyKaigi2009初日!

投稿者 おおかゆか 2009-07-17 14:55:00 GMT

サイン色紙

日本のRubyistにとっての年に一度のお祭り、RubyKaigiが今日から始まった。

国内においては北海道から沖縄まで、国外からはアメリカはもちろんのこと、ベトナムやエジプトからも参加者があったよう。
会場は国際色豊かで英語のセッションも多く、本日3コマ中2コマがんばって英語セッションに出てみたものの、スピーカーが容赦のないこと容赦のないこと。早すぎてほとんど聞き取れなかったorz

セッションの後は懇親会。運営側で色紙を用意してくれていて、有名人を見つけては片っ端からサインをもらうという趣旨。
私もMatz大神を始めとするRuby界で活躍されている方々のサインをねだって回った。Twitterでしか接点がない人だったり、こちらが一方的に知っているだけの有名人の方々と直接挨拶できて非常に有意義だった。

もちろん、明日も明後日も参加の予定。

p.s.
会場で名刺入れ兼定期入れを紛失してしまって困ってたところを、スタッフの方々に見つけていただきました。ありがとうございました。

カテゴリ ,  | タグ  | コメント(0) | トラックバック(0) はてなブックマークへ はてなブックマークでの登録数

Mongrelはいくつ立てるべき?

投稿者 おおかゆか 2009-02-17 13:13:00 GMT

Railsアプリケーションのパフォーマンス計測や改善のサービスを行っているFiveRunsという会社がアメリカにあるのだが、そこのブログはなかなか参考になる記事があっておもしろい。
去年の10月の記事になるが「How Many Mongrels?(Mongrelはいくつ立てるべき?)」というのがあって、以前本番環境にRailsアプリを設置したときに悩んだ内容そのものがテーマになっていたので興味深く読んだ。

他の人にも参考になる内容だと思うので、和訳してみることにする。

カテゴリ , , ,  | コメント(0) | トラックバック(0) はてなブックマークへ はてなブックマークでの登録数

gemのアップデートには気をつけて

投稿者 おおかゆか 2009-02-09 14:16:00 GMT

gemのバージョンが古い状態で新しめのRailsを走らせようとすると、

$ ./script/server
Rails requires RubyGems >= 1.1.1 (you have 0.9.4). Please `gem update --system` and try again.

というように、gemのアップデートをしろと怒られる。しかし、ここには壮大なトラップが隠されている。
ホイホイとそれに従ってしまうとどうなるか。

$ sudo gem update --system
Updating RubyGems...
Attempting remote update of rubygems-update
Successfully installed rubygems-update-1.3.1
Updating version of RubyGems to 1.3.1
Installing RubyGems 1.3.1...

のように、インストールは一見成功したように見える。しかしここからが地獄の始まりだ。

$ gem -v
/usr/bin/gem:10:Warning: Gem::manage_gems is deprecated and will be removed on or after March 2009.
/usr/bin/gem:23: uninitialized constant Gem::GemRunner (NameError)

カテゴリ , ,  | コメント(0) | トラックバック(0) はてなブックマークへ はてなブックマークでの登録数

古いバージョンのRailsアプリを動かす方法

投稿者 おおかゆか 2009-01-28 15:34:00 GMT

1年以上前に作ったRailsアプリを動かそうと思って、サーバに入れてみたものの実行してみたらエラーが頻出。
作った当時のRailsはバージョンが1.2.3で、あれから怒涛のようにバージョンが更新され、現在の安定版の最新バージョンは2.2.2。まあメジャーバージョン番号が上がってるんだから、そのままで動かなくても文句を言う筋合いじゃない。

ただサーバにはgemでRailsのバージョン2.0.2がインストールされている。これに影響を及ぼさずにこのアプリを動かすにはどうすればいいか?
何度かチャレンジして挫折していたのだが、人に聞いたらあっさり解決したので、忘れないうちにここに書いておくことにする。

OSはUbuntu 8.04 LTS ‘Hardy’。gemは既にインストールされているものとする。
そこにRailsのバージョン1.2.3で作られたアプリが動作する環境を作る。

カテゴリ , ,  | コメント(0) | トラックバック(0) はてなブックマークへ はてなブックマークでの登録数

Typoに「はてなスター」と「はてなブックマーク」を組み込む

投稿者 おおかゆか 2008-11-27 10:32:00 GMT

ブログに「はてなスター」と「はてなブックマーク」を設置してみた。

このブログの目的は一番に自分の勉強のため。とは言えど、全く他の誰にも読まれてないと思うとモチベーションもなかなか維持しづらい。
ブログであるからには当然、コメントとトラックバックの機能をこのTypoも備えてはいるものの、敷居が高くてなかなか使う人もいない。自分もあまり使わないし。

手っ取り早く読者のレスポンスを得る方法は、ソーシャルブックマークへの登録をしやすくしてあげること。
日本で一番ユーザー数の多いソーシャルブックマークは、言うまでもなく「はてなブックマーク」。普段から自分でもけっこう使っているので馴染みもある。

というわけで、その「はてなブックマーク」とついでに「はてなスター」をTypoに組み込んでみることにした。
その方法をここで紹介する。

カテゴリ ,  | コメント(2) | トラックバック(0) はてなブックマークへ はてなブックマークでの登録数

Typo adminをセキュアにする

投稿者 おおかゆか 2008-11-26 15:37:00 GMT

Typoはぶっちゃけ、/admin以下が管理ツールの場所になっている。
なのでTypoで構築されているブログに行って/adminにアクセスしてみると、たいてログイン画面が表示されたりする。

まあ普通のレンタルブログでもそのへんのセキュリティは大して考えられてないことも多いので、特に神経質になる必要はないのかもしれないけども、このままではどうも寝つきが悪い。
そこで今回は、Typo admin(管理ツール)をセキュアにすることを考えたい。

やることは3つ。

  1. HTTPSでTypoを稼働させる
  2. HTTPではTypo adminにはアクセスできなくする
  3. HTTPSでは特定のIPアドレスからしかアクセスできなくする

これによりTypo adminは、HTTPSで自分の環境からでのみアクセスできるようになる。
HTTPSにするのは、HTTPだとログイン時の入力やCookieを通信経路で盗み見られる可能性があるため。また念のため、IPアドレスでのアクセス制限も付加してさらにセキュリティを強化しておく。

以下にその手順を記述。
環境はUbuntu 8.04で、Apache2にmod_sslを適用することで実現させる。Apacheはaptでインストールされたものを使用しているものとする。

カテゴリ , , ,  | コメント(0) | トラックバック(0) はてなブックマークへ はてなブックマークでの登録数