ミームの死骸を待ちながら

We are built as gene machines and cultured as meme machines, but we have the power to turn against our creators. We, alone on earth, can rebel against the tyranny of the selfish replicators. - Richard Dawkins "Selfish Gene"

We are built as gene machines and cultured as meme machines, but we have the power to turn against our creators.
We, alone on earth, can rebel against the tyranny of the selfish replicators.
- Richard Dawkins "Selfish Gene"

ruby

Rubyの配列でごにょごにょするときzipとinjectとevalが便利すぎる件

先日「ブログ書きが不調」と書いたが、言語のアウトプットが不調なときは、それ以外のことをするに限る...たとえば黙々とプログラムを書く、音楽に浸る、身体を酷使する、などだ。というわけで月曜日、天気は晴れなかったものの、研究のデータ処理に使うRuby…

RubyでFizzBuzzかけたよ!+いろいろ考えてみた

404 Blog Not Found:やる気ってどこでやる気? 経由で見つけた↓の記事。 1から100までの数をプリントするプログラムを書け。ただし3の倍数のときは数の代わりに「Fizz」と、5の倍数のときは「Buzz」とプリントし、3と5両方の倍数の場合には「FizzBuzz」とプリントす…

"Ruby Recipe 061"「,」で区切られたデータ(CSV)を処理する

CSVを読む方法、書く方法。このレシピはよく使いそうなので覚えておこう。 RubyでCSVを読み込む require 'csv' CSV.parse("data.csv"){|row| p row } RubyでCSVを出力 下記参照。writterを呼ぶのは一度だけっぽい。 以上 Rubyレシピブック 第2版 268の技作者…

"Ruby Recipe 061"文字列の一部を破壊的に削除する

「ある文字列を正規表現で指定して、""で置換する」という考え方。sub!あるいはgsub!を使う。 sub系は 第一引数で正規表現「/hogehoge/」あるいは特定の文字列「"hogehoge"」 第二引数で置換先の文字列 指定した位置に文字列を挿入する方法も。 str.sub!(/\A…

"Ruby Recipe 043"正規表現にマッチした部分の前後の文字列を取り出す

Rubistとして精進するため、Rubyレシピブック 第2版 268の技のレシピのうち 必要に迫られて 最初から順に、勉強として 使用/実践したものをブログにあげていく。備忘録、継続のための公開という用途の他に「たしか前勉強したのに…」という内容をブログ内サー…

MacPortsを使ってRubyとRails(とその他)を最新版に

もうRailsはインストールしてある(d:id:Hash:20071009)のだが、いい記事をみつけた。MacでRuby on Railsを始めるならこれやっときゃ大丈夫っぽいな。MacにRailsをゼロからインストールする一番簡単な方法:Kenn's Clairvoyance - CNET Japanで、最後にメンテ…

配列からHashを生成

配列aryにデータを溜めていって、最後にまとめてHashにしてしまう。keyとvalueを交互に溜めていくこと。 count = 0 ary = [] for i in 0..10 do count += 1 ary << count ary << "hogeNo.#{count}" end newhash = Hash[*ary] > newhash[5] => hogeNo.5 とや…

JRuby、とな。

僕はRubyが好きだが、本質*1からは遠いと自覚している。友人に「javaやるといいよ」と勧められた。 Java陣営は2003年頃から「Ease of Development(EoD)」という標語を打ち出して、できる限りシンプルなプログラミングを実現することを明言し、その方向性は…

今日思い出したことのメモ -インスタンス変数-

必要なプログラムを好きなように作りながら思う。プログラミングの練習プロセスにおいて、「クラスの利用」が一つの壁なんじゃなかろうか。 メモ hoge = 2 def double(num) puts num*hoge end >double(100) => in `double': undefined local variable or met…

プログラムミスで貴重な時間というリソースを無駄にした

寒くて手が動かない… スパコンで計算かけるとき、キューを指定することができる。計算の実行には長々とコマンドを書かねばならないので、適当にRubyでスクリプトを書いて、引数で「2」をとれば、空いてるキューに計算が投げられる設定にした(つもりだった…

今日の研究記録

Rubyをいろいろいじって勉強。深いなRubyは。多分非常に初歩的なことなのだが、気づいたことをメモ的に書く。明日は計算系のRMSDがなぜか不安定な根拠を探ろう。 Rubyからシェルコマンド %x{}で囲めばいい。バッククオートでもいける(backticksという)が、バ…

PDBファイルに変異を入れるプログラム(Ruby)。

研究室でちょっとしたプログラムを使う必要が出た。ので作った。PDBファイルの特定の残基名を書き換えた後、AMBERパッケージを使って適切な構造に直して、分子動力学計算(MD計算)を行う。このPDBファイルの書き換えを自動でやってくれるプログラム(PDBも所…

biorubyがインスコできない

suの後のパスワードが通らない。なぜだ

研究室でRubyが役立つときそのいち

rtfファイルでゼミ資料を書いている時、 「図2-3」 をキャプションと本文からすべて検索して 「図2-4」 にしたい。以降の図2-4、図2-5もどうように置き換えたい。 JeditXでは正規表現の検索はできるが、それを保存して数値に変換してプラス1,という処理は…

Ruby OSAと遭遇

RubyOSAを落とした。Gem使ってinstallできなかった。なんでや まだ使ってない。が、非常にwktk中。RubyOSA: Ruby/AppleEvent BridgeWord2004を操作するスクリプトを作ってる(暇だからではなく、研究のストレス発散に)。 AppleScriptだけを使って作るのは大…

こんぴゅたセンスない

.bash_profileでPATH通す 先日PATHの設定がわからなかったが .bash_profile内に export PATH=$PATH:/usr/local/bin:/opt/local/bin export MANPATH=$MANPATH:/opt/local/share/man と記述すればいい。port用と、localに入れたいろいろ用。 MySQLのあがき $ s…

.bashrcの設定、DarwinPorts、Rubyインストール

夏に稼いだ金の一部で中古のiBook G4 12inchを買う。1年前のモデルだが、ユーザーインターフェイスの充実にびっくり。windowsより断然好きだ。UNIX譲りのTerminalが操作しやすくてうれしい。で、一晩中設定に奔走していた。まずTerminalの設定から。.bashrc…

第2章(後半)

Ruby翻訳計画〜。アルゴリズムを学ぶ上で自分的Goalは 数独解答プログラム ライツアウト解答プログラム を作ること。これらを自力で組み立てられたら力が付いたと判断。ライツアウトとは昔ハマったゲーム。Wikipedhiaに項目があってびびった 最近買ったので…

第2章(前半)

itochanさんに助言され、ソフトバンククリエイティブ社に、のRuby翻訳公開の是非を問うてみた。柴田望洋氏に話を通してくれ、「こころよく許可します」と許可をいただきました。ので、内容にもざくざく触れつつがりがり翻訳していくよ。 例の如く全て見るに…

第一章

この本の内容を演習問題をメインにRubyに翻訳していくよ。 演習1,2は簡単すぎたので3から10まで。「続きを読む」クリックすれば最後まで出る。 著者の柴田さんにに許可とろうと思ったけど、有名人すぎるのか本にはアドレス公開してないしググると後援会HPに…

Vimで編集中のコードを実行

id:niraikanaibirdさんのとこで発見。 visualモードで実行したいコードを選択して :'w !ruby vimからディレクトリ 「:cd」「:pwd」が使える。カレントディレクトリ変更方法が分かって幸せ。set HOME=C:\hogehogeで設定できるのか

Ruby HTMLHelp

Ruby書くときに、Windowsのメリットを生かそうと、HTMLHelpを入れてみた。id:secondlifeさんが配布してるCSSが綺麗で、気に入った。

アルゴリズムの本をRubyに翻訳

経験不足を指摘されたので地味な練習もしっかりやる。 内の基本アルゴリズムをRubyスクリプトに翻訳する。流石に全部夏休み中には無理だが。 Ruby でアルゴリズム 答え合わせ的なもの。実はインターン中もお世話にな(ry あと、Dave ThomasのRuby本を原著で…

はてな、GoogleのAPIを叩いて遊ぶ

メインで使ったFlickr以外のAPIもいじってみる。 はてなウェブサービス ここに色々APIへのリンクあり 人力検索はてなおとなり質問API はてなexistAPI はてなブックマークAtomAPI はてなブックマーク件数取得API はてなキーワードAPI はてなダイアリーキーワ…

乱雑メモ/ RubyでCGI

sth.rhtmlは空っぽで、sth.rbでopen("../sth.rhtml", "w")して{|io|〜〜:、と書き込んでいく。printでHTML表記(ヒアドキュメント使う)途中でEOLしてMySQLを予備、処理して結果(s)を。最後に、生成したsth.(r)htmlに飛ぶ。 print cgi.header( { 'Status' =…

この2週間

Rubyの基礎から始まり...、MySQL, MySQL/Ruby, CGI, HTML, CSS, eRubyをボトムアップで叩き込まれ、お粗末ながらもWebアプリを作るまでになった。 eRubyとCGIのバランスが難しい。静的すぎてもだめやし、いちいちrhtmlで作りなおすのも、必要性と相談しなけ…

MySQL/Rubyの基本の書き方

Rubyスクリプト内にmysqlをrequireし、クエリ文を埋め込んで使用する。 クエリ文はMy自体で試行錯誤し、できたものをコピペ require 'mysql' begin myh = Mysql.init myh.options (Mysql::SET_CHARSET_NAME, 'utf8') #日本語に対応させる myh.connect('local…

Ruby/MySQLについて

前にもメモった気がする。 Ruby/MySQLはRubyで記述された(pure ruby)MySQLのRuby API*1. MySQL/Rubyとほぼ互換。比較はこちら Ruby/MySQL…RubyにおけるMySQLクラスの操作あり *1:【API(Application Program Interface)】規約に従ってその機能を「呼び出す…

eRubyとCGI。

RubyでCGI*1書いても、それの外側をHTMLにしなきゃならん。eRuby(embedded Ruby)はテキストファイル(例えばHTML)にRubyのコードを埋め込むための“言語”。Ruby_script_fragment%>みたいに*2。 eRubyを解釈するには、eruby(←小文字)が必要。 Ruby Earrings…

リファレンスマニュアルより

each_index {|index| .... } 各要素のインデックスに対してブロックを評価します。 以下と同じです。 (0 ... ary.size).each {|index| .... } self を返します。 左式 while 右式 右辺の式を評価した値が真の間、左辺を繰り返し実行します。 左辺の式が resc…