タグ

関連タグで絞り込む (194)

タグの絞り込みを解除

rubyに関するhkjのブックマーク (300)

  • Rubyのための開発補助ツール、RSenseをリリースしました - Functional Emacser

    未踏プロジェクトの援助を受けて、ここ数ヶ月集中して開発していた、Rubyのための開発補助ツールRSenseをようやくリリースしました!配布物やドキュメントは次のURLから入手できます。 http://cx4a.org/software/rsense/index.ja.html RSenseの最大の特徴は、他の開発環境(IDE)では実現できていない高精度なコード補完を実現しているところです。周知のことだと思いますがRubyは動的型付け言語です。そのためプログラムを実際に実行してみないと、ほとんどの式の型は分からないのです。型情報からユーザーの入力を補助するコード補完機能の分野では、これはかなり致命的な問題です。RSenseは型推論の技術を応用することで、この問題を解決しました。上記のURLにもありますが、以下に実際のスクリーンショットやデモが貼っておくので、ぜひご覧ください。 現在利用できる

    Rubyのための開発補助ツール、RSenseをリリースしました - Functional Emacser
    hkj
    hkj 2010/03/21
  • rubyでOAuthを使ってみる

    Google, twitter, mixiアプリなどのAPI認可のためのOAuth(オース)という プロトコールが利用されています。 今回は、マッシュアップなWebサービスを作る上で必要になってくるOAuthの簡単な概念とrubyでの使用例を紹介したいと思います。 ■ OAuthとは? デスクトップアプリやwebアプリケーションなどにセキュアなAPI認証の 標準的な手段を提供するオープンプロトコルです。 OAuth利用することによって、ユーザのgoogleアカウント情報(ID,Password)を保持しなくてもgoogleのアドレス帳などを参照するwebサービスを作ることができます。 ■ OAuthが必要になった背景 OAuthがなかった場合、先程の例のようなgoogleのアドレス帳を参照するサービスを作ろうとした場合、ユーザのgoogleアカウント情報をもとにアクセスすることになります。

    hkj
    hkj 2010/03/02
  • Rubyとメモリリーク

    DoRuby! (ドルビー!) は現場のエンジニアによる、主にRubyなどの技術に関する様々な実践ノウハウを集めた技術情報サイトです。 ある日、mongrelプロセスのメモリ使用量を何となく見ていたところ、 同じ処理をしている他のサーバのものと明らかに違う数値を出していた。 これってもしかして、メモリリークってやつ? 言葉はよく聞くけど、自分自身があまりこれに悩まされた事がなかったため、 今回、ちゃんと正面から向き合う事にした。このメモリリークってやつに。  1. メモリリークとは? 今更だけど、要は使用可能なメモリ容量がどんどん減っていくこと。 アプリケーションが処理のために使ったメモリは、使い終わったら解放される のが普通だけど、これが何らかの理由で解放されずに残ってしまう事を言う。 借りたものを返さない・・・・どこの世界にも不適な輩はいるらしい。 勘違いしがちなのは、メモリをいっぱい

    hkj
    hkj 2010/01/28
  • はてなブログ | 無料ブログを作成しよう

    台北市立動物園と迪化街めぐり 子連れ台湾#5 年越し台湾旅行5日目、レジャーや友人との事を楽しむ日です。前日の様子はこちら www.oukakreuz.com 台北市立動物園へ パンダ館 パンダが見られるレストラン 迪化街へ 林茂森茶行でお茶を購入 小花園で刺繍グッズを購入 黒武士特色老火鍋で夕 台北市立動物園へ 松…

    はてなブログ | 無料ブログを作成しよう
    hkj
    hkj 2010/01/27
  • Rubyのリファクタリングのお供に·flay MOONGIFT

    flayはRuby製のオープンソース・ソフトウェア。最近のプログラミングではDRYという言葉が有名だ。Don't repeat yourself、つまり同じことは繰り返さないことが大事だ。コピー&ペーストしたコードがどんなに酷いものか言うに及ばないが、繰り返しを省くことでコードがすっきりしバグの入り込む余地も減らせるようになる。 修正前のスコアは38、修正して0に! とは言え開発が継続的に行われていると徐々に同じようなコードも増えてくる。そこで行いたいのがリファクタリングだ。そのためにはまずはコードのチェックをするのが良いだろう。flayはまさにそのためのソフトウェアになる。 flayにファイルを渡すと内部を解析し、似たような箇所をリストアップしてくれる。結果はスコアにしてくれる。0が最も低い(重複していそうな箇所がない)数字で、上がっていくごとに重複が散見されるようになる。ディレクトリ全

    Rubyのリファクタリングのお供に·flay MOONGIFT
    hkj
    hkj 2010/01/12
  • ヽ( ・∀・)ノくまくまー(2010-01-09)

    ● [Ruby] 1分で作る irc bot ircbot gem を更新。更新というか irc-net を使って全部書き直したので後方互換性は全くなし!(ドーン)。破壊なくして建設なし!でもそのお陰で、超簡単・簡潔に bot が書けるようになりました。もちろん UTF-8。1分で bot が作れます! http://github.com/maiha/ircbot インストール

    hkj
    hkj 2010/01/10
  • update-alternatives - プログラミングは素晴らしい

    Ruby Advent Calendar の記事で http://blog.udzura.jp/2009/12/13/switch-your-ruby-on-ubuntu910/というのがあった。 RVM はいいものだが、利用している環境が Ubuntu でもあるので、この方法についても試してみることにした。 ただ、冗長な書きぶりが気になったので、update-alternatives を生成する Ruby スクリプトを作成。 このスクリプトを利用すれば、rails コマンドなど新たにコマンドが増えたときにも簡単に対応できる。 1 RUBY186 = ["/usr/local/ruby/ruby-1.8.6-p383", "", 120] 2 RUBY187 = ["/usr/local/ruby/ruby-1.8.7-p174", "", 150] 3 system1 = ["/usr/

    update-alternatives - プログラミングは素晴らしい
    hkj
    hkj 2010/01/02
  • Rubyで簡単にエスケープシーケンスによる色付け→timestampスクリプト改良 - http://rubikitch.com/に移転しました

    エスケープシーケンスで色をつけるのは端末アプリケーションだと定番だ。 Rubyで色つき文字を出す場合、わざわざエスケープシーケンスを書く必要はない。Term::ANSIColorというライブラリを使えばいい。 インストールは「gem install term-ansicolor」で。 require 'term/ansicolor' class String include Term::ANSIColor end というコードを入れておけば、文字列に色名メソッドなどが定義されててわかりやすく記述できるぞ。こんなふうに。 print "red bold".red.bold, "\n" timestampコマンドを色付きにしてみる [update] <2010-03-30 火> シグナルで終了したときには、プロセスオブジェクトを表示してみた。 任意のプログラムを実行するとき開始/終了時のタイム

    Rubyで簡単にエスケープシーケンスによる色付け→timestampスクリプト改良 - http://rubikitch.com/に移転しました
    hkj
    hkj 2009/12/29
  • Route 477 - Ruby Advent Calendar jp: 2009 まとめ

    ■ [ruby] irbで自動で再requireしたい irbでrequire 'foo.rb'する エディタでfoo.rbを書き換える irbでプロンプトを表示するタイミングで、foo.rbが書き換わってたらload foo.rbする みたいな仕組みを作ると試行錯誤がやりやすくて良さそうな気がした。 ■ [ruby][event] Ruby Advent Calendar jp: 2009 まとめ 無事終了しました。参加された皆さんと、読んでくれた皆さんに感謝。 Ruby Advent Calendar jp: 2009 : ATND いま数えたら、全記事トータルで438ブックマークですよ。凄いね。 どんな記事があったかおさらいしてみましょう。 Day 1 - Standards: Write Implementation and Spec on the Same File [Test]

    Route 477 - Ruby Advent Calendar jp: 2009 まとめ
    hkj
    hkj 2009/12/28
  • Rubyスクリプトの#!行でバージョンをつけるべきたったひとつの理由 - http://rubikitch.com/に移転しました

    俺は使っているRubyの処理系はほぼすべて保持している。というのは、Rubyのバージョンが上がるととたんに動かなくなるスクリプトが出てくるからである。 実際、 /usr/local/bin 以下にあるRuby処理系は30個くらいある。1.4.5や1.6.6といった化石バージョンすら入っている。 $ (cd /usr/local/bin; ls ruby1*) ruby145 ruby18-trunk ruby186p110 ruby187 ruby187p71 ruby191p0 ruby16 ruby180 ruby186p114 ruby187p160 ruby187p72 ruby191p129 ruby165 ruby181 ruby186p286 ruby187p17 ruby19 ruby191p243 ruby166 ruby186 ruby186p368 ruby187p1

    Rubyスクリプトの#!行でバージョンをつけるべきたったひとつの理由 - http://rubikitch.com/に移転しました
    hkj
    hkj 2009/12/27
  • RVMをインストール - プログラミングは素晴らしい

    いろいろな Ruby のバージョンを同時並行で利用するためにRVM http://rvm.beginrescueend.com/ というツールがある。大変便利であったので、インストール方法のメモを保存。 # JRuby も一緒に利用できるようにしたかったので、Sun の # Java をインストール。 $ echo "deb http://archive.ubuntu.com/ubuntu jaunty multiverse" >> /etc/apt/sources.list $ aptitude update $ aptitude install sun-java6-jdk $ vim /etc/apt/sources.list #multiverse の行を削除 $ aptitude update # RVM をインストール $ gem source -a http://gemcutt

    RVMをインストール - プログラミングは素晴らしい
    hkj
    hkj 2009/12/12
  • twbot2.rb - Twitter Bot Support Library in Ruby

    twbot2.rb (new version) twbot2-0.23.zip (2018.07.29) twbot2-0.22.zip (2015.10.30) twbot2-0.21.zip (2013.02.05) twbot2-0.20.zip (2010.05.16) ※現在はTwitterへのアクセス不可能(Twitter API v1.1に未対応のため) twbot.rb (old version) ※現在はTwitterへのアクセス不可能(OAuthによる認証に未対応のため) twbot-0.15.zip(2009.12.10) twbot-0.14.zip(2009.04.14) twbot-0.13.zip(2009.03.09) twbot-0.12.zip(2008.12.18) twbot-0.11.zip(2008.12.14) twbot-0.10.zip(2

  • dRubyについて

    DoRuby! (ドルビー!) は現場のエンジニアによる、主にRubyなどの技術に関する様々な実践ノウハウを集めた技術情報サイトです。 こんにちわ。wryyyです。 久しぶりのブログ更新です。 さて、今回はRubyのメソッドを拡張したdRubyについて書いていきたいと思います。 【dRubyとは何か?】 Rubyのメソッド呼び出しを拡張し、ネットワーク越しにメソッド呼び出しを行なえるようにするライブラリです。 【Hello, dRuby】 では、実際に「習うより慣れろ!」ということで、早速「Hello, dRuby」を印字するプログラムを見ていきましょう。 ※実際の動作確認ではターミナルを2つ使用します。 <ターミナル1> #server.rb require 'drb/drb' class Puts def initialize(stream=$stdout) @stream = st

    hkj
    hkj 2009/11/19
  • JavaScript の関数はとても柔軟だった - LukeSilvia’s diary

    1年以上放置していたO'Reilly Japan - 初めてのJavaScriptを最近またやり始めました。「5章 関数」を読んだので、覚えたことを書いてみます。タイトルの通り、JavaScript の関数が持つ柔軟性についてフォーカスを当てます。 なお、動作検証にはRhino - MDC(1.7 release 2 2009 03 22)を使っています。 関数がオブジェクト 関数がオブジェクトなので、変数や配列要素に関数を代入できたり、関数を引数として渡したりできる。JavaScript の関数はファーストクラスオブジェクト。 ruby のブロックみたいに使える js> [1,2,3,4,5].filter(function(element, index, array){ return element % 2 == 0; }) 2,4 関数は() をつけると呼び出せる。() つけないとオ

    JavaScript の関数はとても柔軟だった - LukeSilvia’s diary
  • RubyでIRCクライアント - Temptation Days

    RubyIRCクライアント作ってみたいなーっと思い作ってみました。 riceなどのIRCライブラリもあるようですが、勉強なんでスクラッチで書くことに。 ちなみに私、ソケットプログラミングとかほとんどやったことないです。まずはIRCプロトコルにざっと目を通す。→ rfc1459日語、RFC1459ぶっちゃけ各コマンドのパーサを作るのはめんどいで特定のことだけをするクライアントです。 特定のサーバに接続し、特定のチャンネルにJOINし、コンソールで文字叩くとチャンネルで発言できる程度の機能の実装です。例外処理も入れてません。 require 'socket' require 'kconv' $KCODE = 'UTF8' @server = "irc.xxxxxxx.xxx" @port = 6666 @eol = "\r\n" @nick = "curi_ruby" @channel =

    hkj
    hkj 2009/10/30
  • RubyでCGI>送受信_フォームデータの扱い

    ブログや掲示板などによくあるような、ページの記入欄に書き込まれて送信されたデータを、受け取って処理する方法を紹介します。 フォームの例 ⇒ Google: :記入してキーボードのenterを押す 概観 フォームの html に関しては下記を参照願います WebPage作成参考> フォーム フォームの例:下記の内容の html ファイルを作成し、例えば google.html というファイル名で保存して、送信を試してみてください <html lang="ja"><body> <form method="get" action="http://www.google.com/search"> <input type="text" name="q" value=""> </form> </body></html> フォームによる送信方法には、主に以下の3通りがあります アドレス (URL) に情報

  • Ruby のサンプルプログラム投稿サイト - Masaru

    Ruby のサンプルプログラムを見つけましょう。 サンプルプログラムは自由に使用することができます。(詳しくは こちら) 例: Array#delete Hash Masaru(”まさる”さん)は、 Ruby のリファレンスマニュアルを読んだユーザが、 「もう少しサンプルが多ければいいのに」とか、 「このメソッドでこんなこともできるのに」と思ったときに、 ユーザ自身でサンプルプログラムを登録できるようにするために開発したシステムを利用した、 Ruby のサンプルプログラムを登録や閲覧をするためのサイトです。 String#* / yasuda-h at netlab dot jp 同じ文字列を複数並べて表示する。 47pt | 2008-08-23 02:27:19 String#% / yasuda-h at netlab dot jp 数値で文字列数を指定し、出力される内容の整形を

    hkj
    hkj 2009/10/23
    なぜこういうのは無かったのか。コメント荒らされまくり意外はいい感じ。
  • Route 477 - gemcutterの使い方まとめ (2009年秋)

    ■ [haskell] モナドって結局なんなの 社内勉強会でモナドについて発表しました。分かった気がするたびにすぐに手からすりぬけてしまう、それがモナド…! 追記: モナドそのものが何なのかとか考えないほうがいいんじゃないですかね! [Twitter / いーぐるとまとより引用] まさにその通りだと思います(笑)。IOの使い方、Maybeの使い方、Stateの使い方などを押さえておけば、 中がどうなってるかなんて知らなくても大丈夫。 でも、モナドの持つ「なんか秘技がありそうな感じ」が、中を覗いてみたくさせるんですよね。 この、どこまで掘っても自分の知らないことが出てくる感じがHaskellの魅力なのかも。 Haskell の当にすごいところは、「なぜなに」を問いかけることでいつまでもプログラマが成長できるところにある。 [ふぁぼったー / ikegami__より引用] 一問一答 Q. モ

    Route 477 - gemcutterの使い方まとめ (2009年秋)
  • ri-emacs.rbがRuby1.9で動作しないので作者にメールしてみた。 - From a Far East Island

    Ruby1.9正式版リリースおめでとうございます!! というわけで、早速いろいろ試していると、emacs上でRIを表示するri-emacsが上手く動作しない様子。 調べてみると、lispからri-emacs.rbを実行している箇所でSyntax Errorが。 > /opt/local/lib/ruby1.9/site_ruby/ri-emacs.rb:97: syntax error, unexpected ':', expecting keyword_then or ',' or ';' or '\n' > when ?.: nil > ^ > /opt/local/lib/ruby1.9/site_ruby/ri-emacs.rb:119: warning: else without rescue is useless > /opt/local/lib/ruby1.9/site_ru

    ri-emacs.rbがRuby1.9で動作しないので作者にメールしてみた。 - From a Far East Island
  • Twitter::RESTError エラー - かずぽんのブログ

    http://twitter4r.rubyforge.org/rdoc/を元に、 twitter4r API サンプルの動作確認していたら Twitter::RESTError のエラーが発生。 具体的には、 require 'rubygems' gem 'twitter4r', '>=0.3.0' require 'twitter' require 'twitter/console' require 'kconv' # Create Twitter::Client Instance client = Twitter::Client.from_config('twitter.yaml', 'envname') # Get Twitter::User Instance user = client.user('username') # Print Twitter::User Attribute

    Twitter::RESTError エラー - かずぽんのブログ