ruby

memo:base64のエンコードデコードと関数ポインタっぽいの

base64を読み込めば大丈夫 method(:hoge)使えば関数ポインタっぽいのが取得可能っぽい。 #! ruby # -*- coding: utf-8 -*- require 'base64' #DRYじゃないけど気にしない def encode open($inputfile,"r") do |input| open($outputfile,"w") do |output| out…

memo:rubyの「ピュアピュア」を味わう。

http://d.hatena.ne.jp/iox/20070203/1170506166 を自分なりに噛み砕いた。 値渡し/参照渡しってrubyをやると混乱する。 rubyはぴゅあぴゅあなので命名拘束はオブジェクトのポインタ?を格納する (勉強不足なので断言できませんがおそらく)rubyには参照値を直…

memo:順列作れと

隣の部屋がつがい化したので、テルトウェイトの詠唱を始めようかと思います。 # -*- coding: utf-8 -*- #いわゆる順列を作る僕の方法 #計算量が予想できる版 #世の中にはもっとかっこよい作り方をしているものはありますけど。。 #順列とはN**N通りの中から…

バンド練習音源をさっさと共有しませう

これ、シェルスクリプトでいいよね! でもシェルスクリプトのループよくわかんない! スレッド使ってCPU限界までいじめたいです! スレッドは開けばいいってものではなくて、こういう叩き方をしたら パフォーマンスはあまり良くない。 #! /usr/local/bin/ruby #…

hpricotが1.9でうごいて一安心

#hpricotでOK require 'hpricot' require 'open-uri' require 'kconv' doc = Hpricot(open("http://youtubeanisoku1.blog106.fc2.com/").read ) top_info = (doc/"div.Top_info") next_links = [] (top_info/:a).each do |link| #"更新状況"を持ってるか否か…

memo:__END__

#__END__以下はDATAに eval(DATA.read) __END__ puts "これはひどい"

memo:

#ブロックスコープなのかしら。 bar = "aa" bar.inspect # => "\"aa\"" 1.times do |;bar| # !> shadowing outer local variable - bar bar.inspect # => "nil" bar = "bb" bar.inspect # => "\"bb\"" end bar.inspect # => "\"aa\"" 1.times do bar.inspect…

phpでDBベースだと速度が出ない気がする。

1件2秒かかるんです。でも100万件をさばきたいんです。どう考えてもダメー。 根本から考え直さないとダm−。 なんかはやいほうほうないですか。 こういうアイデアとかになっていくのかしら。。。 #! ruby1.9 # -*- coding: utf-8 -*- #私の家ではバイナリに…

memo:いまいちわからないprocとlambda

なんかすっきりしないなぁ。 Procのなかでreturn $hogeしたらだめなの。 #inline => 関数 => 戻ってきたっていうのをしたいだけなの $hoge = 1 def inline # Proc.new { $hoge = $hoge + 1; return $hoge; }.call #だめー lambda { $hoge = $hoge + 1; retur…

m3u吐き出し

usage:ruby コピペしたソース 検索ディレクトリ 指定配下のメディアファイルをm3u拡張子のテキストでカレントにはき出します。 $OK_EXT = ["mp3","m4a","flv","mp2","ape","flac","iso","mp4","mka","tta","wav"] で定義されたフィルターがかかります $DEBUG…

gmailからhowmへもっていく

ruby1.9はよくわからん。。。 なんかまだまだ凶暴な気がする。 cronで #! /usr/bin/ruby # -*- mode:ruby;coding:utf-8 -*- require 'rubygems' require 'net/imap' require 'yaml' require 'kconv' require 'pp' puts "ruby 1.8世代しかみとめませn" $KCOD…

memo:で、結局三角関数って何なの?

文系マックスなので三角関数わかりません。 確かsin90が1だった気がするのだけど。 コードで #! /usr/bin/env ruby (1..1000).each {|e| str = (e).to_s << ":" << Math.sin(e * Math::PI / 360).to_s puts str } Math.sin( 0*Math::PI/360).to_s # => "0.0"…

memo:rubyでimapに接続する

rubyお久しぶり。 classの文法忘れてた。 :symbolはなぜか思い出してた。 yieldを自然に使ってた。 メインはgmailに検索かけれるよ!というのが発見なので とってきてからについては適当に。 http://www.ruby-lang.org/ja/man/html/net_imap.html http://you…

いつの間にかgemが速くなってた件

いままでが何だったんだろうとおもうほど速い。 gem update --system いやはや。。。 くそ重いの代名詞だったのになぁ!

xmlよみやすい。

手動なのがメンどいのでxmlからhtmlを生成する部分をrubyでやった。 便利。 コピペ漏れもない。 rubyはxml読むのもちゃんと最新世代って感じ。 書くのは。。知らん。

ハッシュ内配列内の任意のフィールドの値でハッシュをソートする

久しぶりにperl書いた。 {なのか[なのか(なのかわからん。 あとおもわず @array.pop とか書いてしまう。ruby病。行末の;もよく飛ばす。 で、題名の配列をvalueに持つハッシュを配列のなかの任意のフィールドの値でソートしたいなぁ、という件。 この辺訳わか…

evalすげー

遅ればせながら今日初めてevalに助けられた。 あるツールが個別設定ファイル+設定ファイルの形式しか受け付けてくれないのです。 cronみたいな感じ。 evalを知った僕は設定ファイルの頭と穴に{}つけてちょっと書き方変えてもらってハッシュ化=>eval("設定フ…

windows環境でrcodetoolsを動かすために

windowsのruby実行環境はone-click-rubyが楽でいいんです。 で、rcodetoolsも必須。 で、バージョンを気にしないとrcodetoolsが動きません 2009/02/16現在最新は 1.8.6-27 Release Candidate 2 ですがコレだと駄目。 1.8.6-26 Final Release だとうごく 1.8.…

今日もRubyに助けられた

さて日記 MD5ってなに? http://ja.wikipedia.org/wiki/MD5 wiki読んでもどうやって作るんだよ!だし。 http://www.ruby-lang.org/ja/man/html/Digest_MD5.html この辺読んでびびりながらMD5というものを生成した。とりあえず作れただけだ。 http://www.hyuki.…

しばらく書けそうにないので

今日はrubyの復習とかした。 rubyに名前空間っているのか? あったら楽なのかもしれないけど楽なのだろうか? lambdaあたりでフガフガしたけどまだわかんない。 rubyはほんとにおもしろいなぁ。 と言う話でした。

シンボルとか

オブジェクトが同じなのね "abc" == "abc" #=> true "abc".equal?("abc") #=> false :abc == :abc #=> true :abc.equal?(:abc) #=> true おK

DBI使い始めた

ANSI sql sqliteが行ロックできないって! sql理解するだけかよ! はまったわ。。。 #! ruby ################################################################################ ####DBI編! ##############################################################…

redmineのチケットにsubversionのコミットからリンクさせてもチケットへのcommit反映がリアルタイムじゃないのはcronを回して解決する

schemeがおなかすいて頭がまわらなくてしんどいのでlinuxの設定でもするか。お金ないなぁ。ごはんだべたいなぁ redmineのsubversion参照がリアルタイムじゃないっていうかデフォルトではredmineからは自動でsubversionを見に行ってはくれない。リポジトリタ…

railsの作法。直書しちゃいけねぇぜ。

imageタグが付けたくて普通に/imageディレクトリパス/hogehoge.jpgてなタグを書く。 開発環境では普通にOK。 だけど運用環境ではprefixがついて運用されてるからパスにリーチ出来ません。。。 だからここは少なくとも"ってしてrailsにパスを生成させる。 rai…

railsのSSL対応

ApacheをSSLで動かしてmongrelのプロキシにたいして RequestHeader set X_FORWARDED_PROTO 'https' ProxyPass /rails balancer://rails ProxyPassReverse /rails balancer://rails だけでサブディレクトリ以下で運用+httpsがOK。あとはApacheがやってくれる

アナグラムで字句を解析してみる

文字でsplitしてソートしたものををキーにしてハッシュを作ってごにょごにょ 物事をどう分けて処理するかって事ですね。 あ、プログラミングっぽい。 おもしろくなってきました。 #! /cygdrive/c/ruby/bin/ruby anahash = Hash.new open(ARGV.shift){|io| wh…

メモ Apache mod_proxy mongrel_cluster用の.conf

httpd/httpd.confで呼び出されるhttpd/conf.d/以下にhogehoge.confな感じで配置。 httpd.confに書いてもいいのだけれど管理の便を考えて分離したいじゃない? mongrel_clusterで3000から5つ分mongrelが動いています。 NameVirtualHost *:80 <VirtualHost *:80> ProxyPreserveHos</virtualhost>…

ハッシュメモ

もう一回Rubyにスウィッチしてみる やっぱPerlより楽。なんか楽。 twitterあたりがスケールもOKの証明とかしてくれたら なんでもRORダ!っていえるのですけど。 イデオロギティックには。 なんかtwitterはrubyがボトルネックではもはや無いデスな 公式コメも…

固定長作ってみる

#固定長を作ってみる #固定長の長さ koteilen = 20 #ターゲット moto = 12343534353 #koteilenの数の0埋め配列作っておしりから固定分だけ取り出す kotei = (Array.new(koteilen,0).to_s + moto.to_s)[-koteilen,koteilen] #出来た p kotei #なんか組み込み…

mod_proxy_balancer + Mongrelでhogehoge

ニートなので電気代にはシビアです。24時間態勢でcore2duoを動かす勇気はない。 なのでx40のwindowsにapache_mongrel環境で作ってみることにした。 mongrelはバランサーを使えばそれなりの速度だとか。。。 以下、くその役にも立たないメモ やりたいこと x40のw…