GitHubindexHello source: index.md View on github | Report issue Generated by middleman 3.1.6. Powered by Ruby 2.2.2.
■ [rails] Rails3.1を使ってみた、あとRails 3.2とRails 4について TL;DR: Rails3.1ではjs/cssが一級市民になったよ、あともうRails4の予定まであるらしいけどRails3ほどのbig changeではないらしいんで安心したよ BiwaScheme BlackboardをRails 3.1で実装したので、社内勉強会でその話をしました。 情報源 RailsGuides ( http://guides.rubyonrails.org/ ) Rails3のことはここ読めばだいたい分かる Riding Rails ( http://weblog.rubyonrails.org/ ) Rails公式ニュース Rails 3.0 (おさらい) Big rewrite Rails2とMerbが合体してRails3になった 設計が見直され、よりすっきりした
■ [ruby][event] Ruby Advent Calendar 2010の参加者募集中です あのRuby Advent Calendar(jp: 2009)が帰ってきた! Advent Calendarは、12月のクリスマスまでを数えるカレンダーで、1日に1つずつ穴を開けていく感じのものです。ものによっては中にお菓子が入っていたりします。 それになぞらえて、1日に1つずつRubyに関するTipsを書いていくのがRuby Advent Calendarです。参加方法は、ATNDで登録して、担当日に自分のブログに記事を投稿するだけです。3行でもいいので、ぜひ書いてみてください。 Ruby Advent Calendar jp: 2010 英語トラック 今年はJPerl Advent Calendar 2010 - English Trackにならって、英語トラック(http://at
■ [ruby] FiberをRuby 1.8にバックポートするfiber18 Ruby 1.9のFiberを、1.8のThreadを使って実装したものらしい。 http://github.com/tmm1/fiber18 1.9のThreadはネイティブスレッドだけど、1.8のThreadはグリーンスレッド(自前実装)なので、実は1.9のFiberとよく似てるのである。 違いと言えば、Threadは勝手に切り替わるけど、Fiberは明示的にFiber.yieldを呼ばないと切り替わらない。後者で前者を実装することはできないが、逆は可能であると。 ソースはこちら: http://github.com/tmm1/fiber18/blob/master/lib/fiber18.rb threadライブラリのQueueクラスを使っているようだ。 Queueは、ただのキューではなく、空のときにpo
■ [ruby] geminaboxで「俺専用gem配布サーバ」を立てる http://github.com/cwninja/geminabox via http://twitter.com/qrush/status/18707703461 gem配布サーバといえばrubygems.orgなわけだけど、クローズドな環境でプライベートなRubyライブラリをgemで管理したいとかいうとき には、自前でgemサーバを立てると便利かも知れない。 インストール $ gem install geminabox サーバの起動 以下のようなconfig.ruを書いて「rackup config.ru -p 9292」とかするとgemサーバが起動する。 require "rubygems" require "geminabox" Geminabox.data = "/var/geminabox-data"
■ [ruby][book] Web+DB PRESSで「Ruby in your hands」という連載をやります 第一回はSinatraです! 4774142727 W+Dは連載陣↓がすごいので、光栄というか恐縮というか。 アンカテ Life is beautiful kaisehのブログ latest log ユビキタスの街角 YappoLogs naoyaのはてなダイアリー hnwの日記 クリップ:濃縮還元オレンジニュース|gihyo.jp … 技術評論社 ぼくはまちちゃん!(Hatena) (読者コーナー) 内容としては、「RubyとWeb開発」という枠でいろんな話をするという感じになりそうです。 ネタ帳(調査メモ)
■ [prog][book] 「エキスパートPythonプログラミング」を他の言語でいうと こういうことでしょうか? 4797353953→4048686291 4873114276→4798119172 4797357401→4873114454 入門本だけじゃなく、中級者のための本が出るってのはいいことですね。 ついでに: 4274067815→4873114233 4798119415→4274067211 (ちょっと違うか) 4822284239→4844327453 (もっと違うか) よりマイナーな言語になると、一冊で両方兼ねてる感じになる傾向が。 4274067149477413264042740678904873113482 よりメジャーな言語に関しては……あまり詳しくないので誰か書いてください。Effective ○○がそういうポジションなんだろうか。 (追記:上級者のため
■ [ruby][memo] 1.9のスレッド pros Tkなどのネイティブスレッドを使うライブラリとの相性が良くなった コンテキストスイッチが速い cons スレッドを作ったときにスタックが固定量確保されるので: stack level too deepになる限界が早くなった (動かさない)スレッドを大量に作った場合にもメモリ消費が大きい まあどちらかというとFiberの方が活用された気もしますが… ■ [ruby] ruremaコマンドでローカルWebサーバを起動できるようになった るりまの私家版コマンドラインツール、myruremaをバージョンアップしました。 http://rubygems.org/gems/myrurema るりまの公式ツールであるbitclustには、ローカルでサーバを起動して、Web版と同じ画面をブラウザで見られるという機能があります。 今回のバージョンアッ
■ [ruby] Rubyの新リファレンスマニュアルをコマンドラインから簡単に引くためのツールを書いた Rubyリファレンスマニュアル刷新計画(通称るりま)のリファレンスを、コマンドラインから簡単に引けるようにするgemを作りました。 多くの人はWeb版か、chm版を使ってると思いますが、同じものがコマンドラインから見れるようになります。 インストール方法とかはgithubに書いてますが、 $ sudo gem install myrurema $ rurema --init $ rurema Array#length Array#length --- length -> Integer --- size -> Integer 配列の長さを返します。配列が空のときは 0 を返します。 p [1, nil, 3, nil].size #=> 4 という感じです。初回のみ、データベースを構築す
■ [lisp][scheme] 社内勉強会でLisp概論的な話をした (以下、わりと適当な資料) Lispといえば? 最初の動的言語 最初のGC付き処理系 人工知能研究の言語として活躍 括弧 マクロ 1957年 FORTRAN 1958年 ALGOL58, LISP 1960年 COBOL 1964年 BASIC LISP戦国時代 方言の乱立 LISP二大政党時代 Common Lisp (1984-) 方言の統一 標準規格が存在 (ANSI CL) http://www.lispworks.com/documentation/HyperSpec/Front/Contents.htm SBCL, Clisp, Allegro CL(商用), ... LISP-2 tとnil マルチパラダイム、コンパイラ、リーダマクロ、パッケージ、CLOS Scheme (1975-) ミニマリズム 処理
■ [scala] foursquareが半年かけてScala+Liftに移行した話 foursquareがLiftに切り替えたという話を聞いてびっくりしましたが、どうやら本当だった模様。 スライド:foursquare.com & scala/lift 以下、内容抜粋 もとはPHP+Apache+MySQLだったが、エンジニアが書いたものじゃなく、これからの拡張のためには書き直すべきだった 静的型・コンパイル言語が好き。Wicketを試したけど、Object型使いすぎなのと関数がfirst-classでないのがちょっと Javaの頃からなるべく関数的に書くようにしてたんで、Scalaは自然 コールバック書くだけでAjaxになるのはいいね! まあせっかくスタートアップなんだし、変わった・面白いものを使ってみたかったってのはある リライトについて (書き換え中は?)PHPとセッションの共有と
■ [presen] プレゼンテーションのスライドに顔文字を使うというアイデア 顔文字っていうかemoticonですか。 「これはいいことなのか、悪いことなのか」が直感的に分かるのでいいかも。 from とりあえず僕のスライドを公開 - あどけない話 ■ [ruby] rvmを使うと、複数のRubyを共存したり、Rails 2/3を共存したりできる という話がRuby Freaks Loungeに上がってましたね(丸投げ)。 Ruby Freaks Lounge:第39回 RVM(Ruby Version Manager)による環境構築|gihyo.jp … 技術評論社 Ruby Freaks Lounge:第40回 RVM(Ruby Version Manager)による環境構築(2)|gihyo.jp … 技術評論社 今のところMacPortsのruby 1.8.7を普段使いとして、自
■ [rails] Rails2/3用の認証プラグイン「devise」 http://github.com/plataformatec/devise Railscastsに簡単な紹介が上がってますのでそちらをどうぞ。 動画:Railscasts - Introducing Devise テキスト起こし:ASCIIcasts - “Episode 209 - Introducing Devise” 特徴は 必要なモデル・コントローラはUserのみ (Sessionは使わず、/user/sign_in とか create_user_session_path とかを使う) 認証周りのいろいろな機能がそれぞれモジュール化されている (confirmable, :recoverable, :rememberable...) とか。 Ruby Toolboxの他のプラグインとの比較は: Authlog
■ [ruby][book] Rubyを使いこなすための一冊、『Rubyベストプラクティス』 「Ruby Best Practices」の和訳がオライリーから出て、読みたいなーと思っていたらなんと献本をいただいてしまった。 有り難いことです。 4873114454 内容を一言でまとめると、「実践Ruby」あるいは「Ruby中級者レッスン」という感じ。 4873113008の方とはちょっと毛色が違ってて、Rubyの正しい書き方というより、 Rubyを実践的に使う際のさまざまなトピックについて解説されている。 Rubyでプログラムを書き始めた人から、Rubyを長く使っている人まで、読めばなにかしら得るものがあるだろう。 僕も(まだところどころしか読んでないが)いくつか「なるほど」と思うことがあった。 1章はテストについて。 2章はRubyでのAPI設計について(引数・ブロックとかね)。 3章は
■ [ruby] Ruby meets Manpage manは、Unix系OSで一般的に使われているドキュメントシステムだ。 これを、Rubyのgemに対しても応用できないかという試みが現れた。 その名もgem-man。 gem install gem-man とすると、 gem man <gem名> でそのgemの説明が見られるようになる。例えば gem man gem-man とか。 ライブラリ作者の側では、gemを作る際にman/以下にmanのファイルを置けばいい。 manファイルの作り方はman whatが参考になりそう (ronnを使う例が載っている)。 おまけ http://man.cx/ruby : ネットでmanを引けるサイト。
■ [ruby] Hashのデフォルト値にHashを設定しようとしてはまった話 h = {} ary.each do |x, y, z| h[x] ||= {} h[x][y] = z end をもっと短くしようとして、 h = Hash.new{ {} } ary.each do |x, y, z| h[x][y] = z end としたら上手く動かない。あれっ? デフォルト値が{}じゃなくて数値の場合、例えば h = Hash.new{ 0 } ary.each do |x| h[x] += 1 end みたいのはちゃんと動くわけです。上のとどう違う? h[x][y] = z はどういう動作になるか考えてみよう。 hにxというキーがある場合: h[x]というハッシュに、(y, z)のペアを保存。 hにxというキーがない場合: ブロックが呼ばれて、その値が返る。返り値であるハッシュに、(
■ [rails] Rails3に関するさまざまないろいろ Rails勉強会@東京です(講師:松田さん) 準備 $ gem install rails3b $ gem install rails --pre $ gem update プロジェクト作る $ rails books --edge Gemfileに、依存ライブラリ(gem)の情報を書くように。Bundler --edgeなので、「gem "rails", :git => "git://github.com/rails/rails.git"」になっている script/*がscript/railsに 単にrailsでもいい(カレントのscript/railsが呼ばれる) rails_head/railties/bin/railsを参照 rails generate あるいはrails g config/environment.rb
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く