2009年11月10日

%記法の1種%w

array = %w(か き く け こ)


■配列の複数要素の参照


irb(main):001:0> array= ["あ","い","う","え","お"]
=> ["\343\201\202", "\343\201\204", "\343\201\206", "\343\201\210", "\343\201\212"]
irb(main):002:0> array[1,3]
=> ["\343\201\204", "\343\201\206", "\343\201\210"]
irb(main):003:0> array[1,5]
=> ["\343\201\204", "\343\201\206", "\343\201\210", "\343\201\212"]
irb(main):004:0> array[5,5]
=> []
irb(main):005:0> array[10,10]
=> nil
irb(main):006:0> array[5,10]
=> []
irb(main):007:0> array[6,10]
=> nil
irb(main):008:0> array[0,5]
=> ["\343\201\202", "\343\201\204", "\343\201\206", "\343\201\210", "\343\201\212"]
irb(main):009:0> array[5,5]
=> []
irb(main):010:0> array[6,5]
=> nil


独習Ruby

独習Ruby






2009年11月時点で、独学者向けNo1です。

posted by エル・マリアッチッチ at 00:38| rubyを学ぶ | このブログの読者になる | 更新情報をチェックする

2009年11月08日

配列・ハッシュのエレメントを取り出す

fetchとかは、あまり使った記憶がないですが・・。



Ruby逆引きハンドブック

Ruby逆引きハンドブック





■P331参考
 putsは、自分で出力結果を得るために、
 追記したものです。



#!/usr/bin/ruby

ary = ["zero","one","two"]
puts ary[0]
puts ary.fetch(0)
puts ary.first

puts ary[-1]
puts ary.fetch(-1)
puts ary.last

puts ary[1]
puts ary.fetch(1)


・ary.firstで取り出すのが、カンタン
 ただ、ファイル数が多いプログラムだと、
 混乱しそう。(私だけか・・?(^^))

・fetchは使わないか・・・。
 nilを返すか、IndexErrorを返すかで、
 nilが返ってきて欲しいならば、[]を使い、
 IndexErrorが返ってきて欲しければ、
fecth。

IndexErrorが戻って欲しい時ってあるのか?
 いや、nilが戻って欲しい時はありそうだ。

 if文とかで。
 すると、やっぱ、普通は、[]使っておけばいいのかな。
 fetchではなく。


Ruby on Rails 逆引きクイックリファレンス Rails 2.0対応

Ruby on Rails 逆引きクイックリファレンス Rails 2.0対応

  • 作者: 大場 寧子
  • 出版社/メーカー: 毎日コミュニケーションズ
  • 発売日: 2008/05/31
  • メディア: 単行本(ソフトカバー)





posted by エル・マリアッチッチ at 17:24| rubyを学ぶ | このブログの読者になる | 更新情報をチェックする

2009年11月01日

オライリーのTwitterAPI本を買いました。

オライリーのTwitterAPI本を買いました。
もちろん、英語です。

あ、それとサンプルのベースコードは、
PHPです。


たぶん、当分日本語訳された日本語版が発売されることは
ないでしょう。(^^)。



Twitter API: Up and Running

Twitter API: Up and Running

  • 作者: Kevin Makice
  • 出版社/メーカー: Oreilly & Associates Inc
  • 発売日: 2009/04/02
  • メディア: ペーパーバック





レビューは、おいおい書いていきます。

最近続々と発売されている、Twitter本の中にも、
APIに関して少しだけ書かれているものもありますが、
少ないですね。


本職がプログラマーの人が少ないので、
仕方ないでしょうけど。


仕事で使える!「Twitter」超入門 (青春新書INTELLIGENCE)

仕事で使える!「Twitter」超入門 (青春新書INTELLIGENCE)

  • 作者: 小川 浩
  • 出版社/メーカー: 青春出版社
  • 発売日: 2009/09/25
  • メディア: 新書





ツイッター 140文字が世界を変える (マイコミ新書)

ツイッター 140文字が世界を変える (マイコミ新書)

  • 作者: コグレ マサト
  • 出版社/メーカー: 毎日コミュニケーションズ
  • 発売日: 2009/10/09
  • メディア: 新書





日本語書籍は、上記2冊が、どの書店でも
並んでますが、日本語版の実用本は、
まだまだですね。

posted by エル・マリアッチッチ at 21:32| 参考書籍 | このブログの読者になる | 更新情報をチェックする

2009年08月28日

Ruby 画面とファイルへの同時出力を行う

なるほど・・・・確かにこういう風にすると、
できるんだな・・・。


ファイル名などは、デタラメですので、
気にしないで(^^)


require 'open-uri'

def pri2(msg)
logfile = File.open("url.txt","w")
puts "#{msg}"
logfile.puts "#{msg}"
end

uri = File.read("data.txt")
pri2(uri)


明日、朝一で試そっと!
できたら、Subversionでコミットしておきます。手(チョキ)



じゃあ、寝るか・・・。






posted by エル・マリアッチッチ at 01:44| rubyを学ぶ | このブログの読者になる | 更新情報をチェックする

2009年08月23日

(参考)噂どおりの内容に、早くも2回目を見始めてます「紳竜の研究」

今日は、知る人ぞ知る、ロングセラーDVD「紳竜の研究」を
見ました。

早くも、1回目を見終わり、2度目です。


そうです、


噂通りに凄みのある内容Disk1の講義。


やはり、噂どおりに「うーーーん」とうなる内容です。



紳竜の研究 [DVD]

紳竜の研究 [DVD]

  • 出版社/メーカー: アール・アンド・シー
  • メディア: DVD





あんまり、世間に広まっているわけでもないのは、
このDVDのDisk1で、紳助さん自身が語っているように、

競争、

だからでしょうね。


勝間さん・神田昌典さんの書籍本紹介の中で、
神田昌典さんが、この「紳竜の研究」をとりあげていたことがありましたが、さすが良く目をつけてますね。


たまたま、何かのきっかけで気づいた人は、
Disk1の第二部を、ぜひ見ることはオススメします。


Disk1Disk2を見ていて、何度も笑えるDVDなんですが、
それとは違う迫力、有効性、あなたへの効果があるDVDです。

あんまり多くの人が、
これを見て欲しくもないよなー、とも思うので、
私的には、あまりススメナイでおきますわーい(嬉しい顔)


むやみにライバルとか強敵を増やしても
仕方ないし・・・わーい(嬉しい顔)


お笑いとIT業界とは違いますが、
やはりダブル内容、活かせる内容もあります。

以前私がメルマガなどで書いていた内容も、
「あー、こういうことは、業界違っても同じやなー」と
思ったりしました。


変なキャリアコンサルタントとか、
うさんくさい職種の人の「キャリアについての考え」を
聞くよりも、

きっと何百倍も役立ちます。



何かのきっかけで、これをタマタマ見たなら、
友達や同僚には、言わずに、
コッソリ買って、見てみて下さいわーい(嬉しい顔)


どう自分のモノにできるかは、あなた次第ですが・・・、
分析の箇所などは、ヘタなコンサルタントの人より
リアルに話が浸透してくるのはわかるのでは?と思いますよ。

posted by エル・マリアッチッチ at 22:32| 日記 | このブログの読者になる | 更新情報をチェックする

2009年08月19日

Mechanizeはいいですねー。Seleniumと一緒に使えるな

うーーーん、いいなー。

Mechanizeは。



require 'rubygems'
require 'mechanize'

agent = WWW::Mechanize.new
###agent.set_proxy "127.0.0.1",8080

page = agent.get "http://ここは自分で見たいFQDNを/"
page.class #=>WWW::Mechanize::Page
page.equal? agent.page #=>true

puts "====================="
page.body[0,40]
page.save "saved_form.html"

puts "====================="
page.uri

page.title

page.content_type #=>"text/html"

page.code #=> "200"

page.header

ここは、やはり、各サイト特徴があって、
面白いです。


更に、役立つようにいじってみよう。


Ruby逆引きハンドブック

Ruby逆引きハンドブック

  • 作者: るびきち
  • 出版社/メーカー: シーアンドアール研究所
  • 発売日: 2009/05/26
  • メディア: 単行本(ソフトカバー)



posted by エル・マリアッチッチ at 00:53| rubyを学ぶ | このブログの読者になる | 更新情報をチェックする

2009年08月12日

たまたま本屋へ寄ったら、発見!かなり内容が濃くて面白い本、発見「4Gpsを超えるWebサービス構築術」

昨日、Rubyの逆引き本と
ソフトウェア・テストの技法第二版」を昨日買ったばかりなのだが、
今日も、再びジュンク堂へ。

今日は、「鋼の錬金術師」23巻発売日です。

ここ最近の3巻は買ってなかったので、
まとめて買おうか、どうしようかと迷いつつ、書店へ。

たまたまIT本コーナーも見に行くと、
やたら、売れている本を発見!
(積み重ねられている中で、1冊しか残っていない
 書籍が・・・・。

それが、これでした。

先行販売されていたみたいです。


かなり内容が濃い、面白いと、すぐに購入決定!


「4Gbpsを超えるWebサービス構築術」





Ruby逆引きハンドブック

Ruby逆引きハンドブック

  • 作者: るびきち
  • 出版社/メーカー: シーアンドアール研究所
  • 発売日: 2009/05/26
  • メディア: 単行本(ソフトカバー)





実務・実用バリバリの書籍内容です。


ざっと抜粋しておきます。


2章 キューイング

Gearman

TheSchwartz

3章 DBキャッシング

memcache

4章 HTMLキャッシング

Apache mod_proxy

mod_cache

mod_proxy_balancer

Squid水平分散キャッシュ構成

Squid階層キャッシュ構成


Livedoorブログの仕組み
(↑これ、面白かったです)
squid.confの例

5章 検索サービスの技術

Lucene

Analyzer

Orchestra

Kanade


Livedoorブログの記事検索
(↑これも、面白かったです)


6章 入出力パフォーマンス

MySQLのブラックホールエンジンの活用


9章 ネットワークを取り巻く技術

P235〜のライブドアのBGP設定が見れます。

こういうのを公開して書籍に載せるのって、
初めてではないですかねぇー。


FoundaryのBIGIronの設定例です。

バイトASの話題なども出ていて、面白いですね。


サーバーだけの話に終わっていないので、
何度も言いますが、オススメの書籍です。



10章 Webサービスの性能評価


P265〜

PerlのアプリケーションプロファイラDevel::NYTProfが
とりあげられています。


今後使ってみます。

などなど。


上に書きなぐったのを見れば、
今までにない内容なので、参考になるでしょう。


何より、Web+DB PRESSの読者が好きそうな
内容かな。(^^)

ちょうどお盆休みに入った人も多いでしょうし、
一気に読んでしまいましょう。


ジュンク堂で、先行販売するやいなや
ダントツで売れていたのが理解できると思いますよ〜。
posted by エル・マリアッチッチ at 22:10| 参考書籍 | このブログの読者になる | 更新情報をチェックする

2009年08月11日

親ハッシュのキーと子ハッシュのキー


あー、もう、ほんまに、今頃できた。

明日は、朝早く行かねば・・・わーい(嬉しい顔)
(というわけで、今日は、早く起きてます。)
実際、1人で、やっていると、

・ハッシュの理解不足か?

・正規表現を間違えているのか?

・文字列マッチングを間違えているのか?

・メタキャラの処理を間違えているのか?

・ハッシュのダブルクォーテーションをとらねば
 いけないのか?

など、悩む・・・。


手馴れたプログラマーなら、
お茶の子済々なんでしょうが、
私レベルでは、苦悩して、
思わず、「オライリーの正規表現」を
買ってこようと思ったくらいである(^^)。


まあ、出来て良かった、良かった。


ちなみに、下記は、簡略化して書いてます。

実際は、処理の過程で、前後にRubyが、
続いていますよ。


●hashtest3.rb

respon = {"ERR"=>{},"WARN"=>{},"DATA"=>{"ref_txt"=>"hatobus:123456"}}

if /^hatobus.*$/ =~ respon["DATA"]["ref_txt"]
puts "hatobusあった"
else
puts "hatobusなかった"
end



はー、とりあえず、今日は、
英語とRuby on Railsの時間にまわせます。

めでたし!めでたし!



たのしいRuby 第2版 Rubyではじめる気軽なプログラミング

たのしいRuby 第2版 Rubyではじめる気軽なプログラミング







Rubyクックブック ―エキスパートのための応用レシピ集

Rubyクックブック ―エキスパートのための応用レシピ集

  • 作者: Lucas Carlson
  • 出版社/メーカー: オライリー・ジャパン
  • 発売日: 2007/04/27
  • メディア: 大型本





しかし、クックブックとかも見るけど、
一番、確認することが多いのは、
「たのしいRuby」だから、
自分は、非常にレベルが低いのだなぁーと思うのでした。


もっと、頑張らねば!手(グー)
posted by エル・マリアッチッチ at 06:15| 開発環境 | このブログの読者になる | 更新情報をチェックする

2009年08月10日

ファイルのタイムスタンプを調べるメソッドmtime,atime,ctime

ファイルのタイムスタンプ調べるメソッドです。


■filemethod.rb
==================
#!/usr/bin/ruby

puts "ファイルの更新日時は #{ File.mtime("./smtp1.rb")}"
puts "ファイルのアクセス日時は #{File.atime("./smtp1.rb")}"
puts "ファイルの変更日時は #{File.ctime("./smtp1.rb")}"


●「Ruby 逆引きレシピ」P113参考


Ruby 逆引きレシピ すぐに美味しいサンプル&テクニック 232 (PROGRAMMER’S RECIPE)

Ruby 逆引きレシピ すぐに美味しいサンプル&テクニック 232 (PROGRAMMER’S RECIPE)

  • 作者: 島田 浩二
  • 出版社/メーカー: 翔泳社
  • 発売日: 2009/07/25
  • メディア: 単行本(ソフトカバー)






Ruby逆引きハンドブック

Ruby逆引きハンドブック

  • 作者: るびきち
  • 出版社/メーカー: シーアンドアール研究所
  • 発売日: 2009/05/26
  • メディア: 単行本(ソフトカバー)



posted by エル・マリアッチッチ at 00:40| rubyを学ぶ | このブログの読者になる | 更新情報をチェックする

2009年08月09日

BIND脆弱性に対するパッチ適用後のテストをにらんで・・・

JPRSのDNSサーバーも1台落ちたという話を
耳にしましたが、
しかし、DNSは影響が大きいですね。

で、私はそれとは別に、テストに備えないと
いけません(^^)。



●dnsquery3.rb
==================
require 'resolv'

pp Resolv.getaddress("ドメイン名")
pp Resolv.getname("IPアドレス")

これは、resolv.rbにある例を、
そのまんま使ってます。


●dnsquery2.rb
===============
require 'resolv'

dns = Resolv::DNS.new
domain = "ドメイン名"
dns.each_resource(domain, Resolv::DNS::Resource::IN::MX) do |mail_server|
puts "xxxドメインのMXは、#{mail_server.exchange} です。"
end

dns.each_resource(domain,Resolv::DNS::Resource::IN::NS) do |nameserver|
puts "xxxドメインのNSは、#{nameserver.name} です。"
end


Rubyクックブック」には、
大量DNSクエリーに備えて、1クエリー1スレッド生成する
resolv-replaceライブラリを使用した例も
とりあげられてます。


Rubyクックブック ―エキスパートのための応用レシピ集

Rubyクックブック ―エキスパートのための応用レシピ集

  • 作者: Lucas Carlson
  • 出版社/メーカー: オライリー・ジャパン
  • 発売日: 2007/04/27
  • メディア: 大型本







会社費用で買ってもらっておくと良いでしょう。

クックブックは、あると重宝しますので。
posted by エル・マリアッチッチ at 01:27| rubyを学ぶ | このブログの読者になる | 更新情報をチェックする