Rubyの最近のブログ記事

Ruby の学習 2001年1月1日から3000年12月31日までの間に日曜日は何回あるか

| | Comment(0) | Trackback(0)

天下一プログラマーWEB予選第1回(2009/7/5):1問目
お題:2001年1月1日から3000年12月31日までの間に日曜日は何回あるか

を Ruby の勉強がてらやってみました。
合計で4時間はかかってる。

Ruby で CGI

| | Comment(0) | Trackback(0)

以下の記事を参考に コードを書いた。
Rubyist Magazine - Ruby ビギナーのための CGI 入門 【第 1 回】 4 ページ

以下の記事を参考に Apache の設定を行った。
ApacheでRubyのCGIを動かす方法 - 医者を志す妻を応援する夫の日記

Ruby | テンプレ置換でファイルを作成(ほんとはcgiみたいにしたい)

| | Comment(0) | Trackback(0)

Ruby 逆引きレシピを買った。それとは別に複数人に送るメール本文を作成する必要が出来た。じゃ、Ruby でやんべと。

Ruby 逆引きレシピ すぐに美味しいサンプル&テクニック 232 (PROGRAMMER'S RECiPE)
島田 浩二 設樂 洋爾 村田 賢太 前田 智樹 谷口 文威
翔泳社
売り上げランキング: 5339

・ほんとは全部 CGI っぽくやりたかった。
・こうやってメールのテンプレ作るのはいいけど、送信前の状態にはできないから不満(Webメール自動作成はどうやる? Windows ならOLEいじんのか? COM? なにそれ食えんの?)
・ちょっと苦労してちょっと楽になるだけで仕事が楽しい。もっと苦労してもっと楽になりたい!

Ruby技術者認定試験公式ガイドの例文ソースが悪意満ち満ちて

| | Comment(0) | Trackback(0)

以下のRuby技術者認定試験対策本を買った。
例文がなんていうかこう、ひねくれてたのでちょっと紹介。

Ruby技術者認定試験 公式ガイド (ITpro BOOKs)
伊藤忠テクノソリューションズ
日経BP社
売り上げランキング: 3593

追記:2009/04/18 12:04頃
一応目次もつけますね。

監修者まえがき
著者まえがき

第1章 Ruby技術者認定試験 受験の手引き
1.1 試験の目的
1.2 申し込み方法と受験の流れ
1.3 試験概要
1.4 試験範囲

第2章 Rubyとは
2.1 Rubyの歴史
2.1.1 Rubyのはじまり
2.1.2 Rubyで広がる
2.1.3 海外での展開
2.1.4 ビジネスの舞台へ
2.1.5 処理系も次々と

2.2 Ruby応用技術
2.2.1 Ruby on Rails
2.2.2 JRuby

2.3 Rubyが利用される分野
2.3.1 Webアプリケーション開発用言語
2.3.2 簡単なデータ加工のためのスクリプト言語
2.3.3 プログラミングを学ぶための教育用言語
2.3.4 デスクトップ・アプリケーション開発用言語

第3章 Rubyの実行環境
3.1 実行方法
3.1.1 Rubyインタプリタの入手
3.1.2 プログラムの実行

3.2 コマンドラインオプション

3.3 環境変数

3.4 irb
3.4.1 irbの起動
3.4.2 irbの終了
3.4.3 irbでの式の実行

第4章 Rubyの文法
4.1 字句構造
4.1.1 コメント
4.1.2 予約語

4.2 プログラム構造
4.2.1 式
4.2.2 プログラムの終了

4.3 リテラル
4.3.1 数値リテラル
4.3.2 文字列リテラル
4.3.3 配列リテラル
4.3.4 ハッシュリテラル
4.3.5 正規表現リテラル

4.4 変数 / 定数とスコープ
4.4.1 ローカル変数
4.4.2 グローバル変数
4.4.3 定数
4.4.4 クラス変数
4.4.5 インスタンス変数
4.4.6 擬似変数
4.4.7 自己代入
4.4.8 多重代入

4.5 演算子
4.5.1 基本的な演算子
4.5.2 その他の演算子
4.5.3 演算子オーバーライド
4.5.4 演算子優先度

4.6 条件分岐
4.6.1 if を使用した条件分岐
4.6.2 unless を使用した条件分岐
4.6.3 case を使用した条件分岐

4.7 繰返し
4.7.1 while を使用した繰返し
4.7.2 for を使用した繰返し
4.7.3 繰返しの制御
4.7.4 イテレータ

第5章 Ruby組み込みライブラリ
5.1 組み込み関数

5.2 組み込みクラス
5.2.1 数値(Numeric)クラス
5.2.2 文字列(String)クラス
5.2.3 正規表現(Regexp)クラス
5.2.4 配列(Array)クラス
5.2.5 ハッシュ(Hash)クラス
5.2.6 File クラスと Dir クラス
5.2.7 Time クラス

第6章 Rubyのオブジェクト指向機能
6.1 ポリモルフィズム
6.1.1 ダックタイピング
6.1.2 動的型

6.2 継承
6.2.1 単一継承
6.2.2 Object クラス

6.3 Mix-in
6.3.1 include メソッド
6.3.2 extend メソッド

第7章 Ruby技術者認定試験 模擬問題
7.1 注意事項
7.1.1 問題数と解答時間
7.1.2 その他の諸注意

7.2 問題1〜問題50
7.3 問題51〜問題100
7.4 解答1〜解答50
7.5 解答51〜解答100

索引


僕の右手が僕ならば

| | Comment(0) | Trackback(0)
a = [0,1,2,3]
a[3] = a
p a
#=>[0,1,2,[...]]
っていうのをRuby チュートリアル - 4. 主なクラスで見かけた。

プログラミング言語 Ruby
まつもと ゆきひろ David Flanagan
オライリージャパン
売り上げランキング: 2396

年末年始休みにやりたいこと。

| | Comment(0) | Trackback(0)
  • Ruby on Railsをいじる
  • bash スクリプトの勉強
  • DNS/BINDの勉強
  • LPIC202の勉強
環境はすでに用意してある。 書籍も購入してある。あとはやるだけ。 一年の計はなんとやらですので、最初くらいは計画どおり行いたいものです。

DNS&BIND(第5版) ライド・オン・Rails Ruby on Railsを徹底攻略 入門UNIXシェルプログラミング―シェルの基礎から学ぶUNIXの世界

一方、僕はRubyを入門言語として選んだ

| | Comment(0) | Trackback(0)

よくわからずに思ったこと、感じていたことを連ねました。
勘違いも甚だしいーな記述があるかもしれませんが。ご一笑ください。

なお引用部に関しては、レイアウトの都合上、文脈を変えない程度で改行等をほどこしてありますことをご了承ください。
文体や語感、リズムを重んじる方はぜひ引用元へどうぞ。


私は、言語に二つの相反するものを期待している。一つは、「たいていのことがサクっと当たり前に出来る」こと。
Larry Wall が言うところの「殺速性」(whipuptitude)だ。これがないと書いてて疲れてしまう。大リーグ養成ギプスを常に着たまま生活したい人などいるのだろうか。星飛雄馬本人だっていやがってたのに。


しかし、それだけじゃ私には物足りない。「言われなきゃ思いもつかなかった言い回しをその言語の範囲内で言う」、複殺性(manuplexity)も必要なのだ。皮肉ではあるが、これがないと複殺なものは複殺なままなのだ。


http://blog.livedoor.jp/dankogai/archives/51069977.htmlより引用

Perlの偉い人のブログを読んで「あー、だから自分は Ruby を選んだのか」と思った。
プログラミング言語にはそれぞれ個性があって、その個性は入門書にまで "(同一言語なのに)記述の統一性のなさ" という形で表れる。そしてそれは僕の中で、プログラミング学習のハードルになっていたのだ。Ruby に会うまでは。

Rubyのよさ。

それは Ruby はなんていったて入門書が たのしいRuby 第2版 Rubyではじめる気軽なプログラミングしかないでしょう。
この選択肢のなさはある意味魅力だったわけ。他の人が書いたソースもこの本の流儀に則ってる可能性が高いだろうから理解しやすいんじゃないかって。

実際に Ruby をやってみると、each の気持ちよさが何とも言えなかった。
流れ作業丸出しな感じ。これが気持ちよかった。
想像するならばめんどくさがりの上司が、たまりにたまった書類に承認印をめくらめっぽう押す感じ。ティッシュ配りのアルバイトが、誰彼かまわず「お願いしゃーす」と配っている感じ。脊髄反射なのに惰性でダルダル、素早さなんて微塵もない感じ。まじでさいこー。

この感じを得られたのは幸運だった。プログラミングって流れ作業を微分することだったんだ、と気付いた。
この気付きを Perl でも得られたのか、Python でも得られたのかは謎である(そう、C では得るところまで理解できなかった)。
まだ、Ruby で満足に機能するものを作り上げたわけではない。
でも、とにかく気付きを得られたこの一点だけで Ruby が存在し Ruby と出会えたことに感謝している。

追記:2008/06/25
Ruby に関して、入門書が~しかないでしょう、って書いてしまいましたが、単純にそれしか知らなかったってことなんですよね。これは誤解を招くなあ。

SONYもDoCoMoショップも胡座かきすぎ。

| | Comment(0) | Trackback(0)
Rubyを256倍使うための本 邪道編
arton
アスキー (2000/10)
売り上げランキング: 59751
おすすめ度の平均: 4.5
5 2000年出版の本ですが、今でもとっても参考になります
5 邪道上等!
4 プログラマが楽しくよめる一冊
を先日購入。COMだとかでWindows自動化しちゃうぜ的な本。いまはたのしいRubyをまだやっている最中なので、斜め読み程度に抑えておく。

それにしてもHack系の本の言葉使いってなんだろうね。
その昔、ハッピー・ハッカー (ハッカージャパンBOOKS (5))って分厚い本があって、
そこには"ダータ"とか"ピーコ"だとかいう言葉が並んでいた。
これってハッカー・ジャパン語なのかしら?
"割れず"とかと同じ種類のものなんだろうけど、発生過程が気になるところ。

先日の携帯/SO702i-故障事件。
ソニー製品は概して接触部が弱い。
Mova携帯のジョグダイヤルも、メモリースティックウォークマンの早送りのツマミも、
VAIOの液晶ヒンジ部、ノートのメモリ固定部も。ぜんぶそこだけ駄目になった。
よく考えてみると、ウォークマンの故障以外は全部致命的な故障なんだよ。
雑なのか、精密に弱くしてるのかわからんところがSONYだよな。
でも携帯に関してはインターフェースがSONYのそれしかわからんからまた使ってしまうのかな。

で当の携帯は結局修理に出した。
いまのところ連絡待ち。


→無償修理、もしくは
→最悪有償(5万くらいらしい)→修理依頼せず機種変

という二択で考えている。

それにしてもDoCoMoショップの店員は態度がおかしい。
他を知らないからそんなこと言ってはいけないのだろうけど、
単純におかしく感じたことを書いてみる。

連絡先を記入する際に、「ご都合のいい時間帯もお書きください」と言われた。
そこで9時か20時と記入。
すると「その時間は営業時間外ですので他の時間をお書きください」と言われる。
先に言えよ。何、一手間惜しんで客にその手間押しつけてんだよ。

他にもある。
SO702iはメモリースティックDuoを外部メモリとして使用することが出来る。
ってことはそれでバックアップをとるわけじゃないか、普通。
で修理時には代替機借りるよね。
けど、メモリースティックDuoに対応した機種は無い、と言う。

まあ、実際古いタイプだし、今はMiniSDだかMicroSDだかが主流なんだからしょうがないのはわかる。
でもさ、「(メモリースティックDuoを)使える機種は代替機に無いの?」って聞いた僕に、
「ないですねー。通常はMiniSDですから」って返しはねーだろーよ。
こっちは思わず「通常?通常ってなんだよ!」って言ってしまったよ。
そしたらはっとして、preminiのシリーズものだと思うけど古い機種持ってきた。
最初からやれ、と思うんだ。

故障することはあるし、旧機種をいつまでもサポートしてらんないっていうのはわかる。
でも、使っている人はいるわけだし、使ってくれって言ったのはお前等だろうが。
バックアップはとりましょうね、とか広報活動しておきながら、故障時の対応ができないってどういうこと?
それはあなた、身勝手にもほどがあるよ。企業としておかしいですよ。

家族割りとかでついでに親の名義に入ってるとする。
で、大学生になったとかで親元を離れ上京したとする。
で、携帯壊れましたってことになる。僕と同じ状況になったとする。
もちろん修理か機種変したいよ。お金もあったとするよ。
でも親に確認とらなきゃいけない。それは親が名義人だから。
そのとき携帯からデータ抜け出せなきゃ手も足もでないよ。
実家に親がいればいいさ。実家の電話でつながるもんな。
でも一家離散してて携帯でしか連絡できない家族だったらどうするのさ。
現に僕がそうなんだよ。
修理も頼めない、機種変もできない。新規で契約しろってこと?
でもデータが無ければ携帯あっても意味ないし、こちとらバックアップは異端のメモステDuoだよ。
からっぽの最新携帯があっても結局何もできやしないよ。

DoCoMoショップすべてがそうだとは思わないし、僕の行ったところがたまたま悪かったんだろう。
でも、そんな人間許すなよ。
自社の製品を誇りに思っていたらそんないい加減な対応、環境をそのままにしておくな。

たのしいRuby 第16章 FileクラスとDirクラスの誤植について

| | Comment(0) | Trackback(0)

たのしいRuby 第2版 Rubyではじめる気軽なプログラミング
p322 『第16章 FileクラスとDirクラス』においてまたも誤植が。

FileUtils.compare(from,to)

とあるが、これでは動作しない。
fileutils - Rubyリファレンスマニュアルにあるように

FileUtils.compare_file(from,to)

でやっとこ動作することを確認。
これはまだ
『たのしいRuby 第2版』正誤表にも出ていない模様。

現在何版何刷まで出版されているのかわからないけど、これってもしかして、
著作権保護のトラップってやつかしら、と思った。
ウミガメのスープにも問題としてあった。
地図でいうと-存在しないはずの島をわざと記入する。
辞書でいうと-でたらめな言葉と用例を載せる。
そんな都市伝説みたいなこと実際にやるのかしらね?

けれどよくよくたのしいRubyを見直してみると、
どうやらそんな感じじゃないなー。
p321の最下段

FileUtils.rm_r(path)
FileUtils.rm_f(path)

も実は誤植で

FileUtils.rm_r(path)
FileUtils.rm_rf(path)

なのである(これは正誤表にも出てる)。
ってことは罠っていうより、ここの校正担当したやつがだめなんじゃねーか、と思えてきた。

いや、しかししかし複数ページにわたってあえて間違えることによって、より効果的に著作権侵害から身を守っているのか?
うーむ。

知らん!

ウミガメのスープと任天堂 / Ruby技術者認定試験-受験の予定は6月くらい

| | Comment(0) | Trackback(0)

本日休みだったということで軽い読書。
以前から気になっていた、ポール・スローンのウミガメのスープ―水平思考推理ゲームをBOOK OFFで購入する。300円。
表題作である『ウミガメのスープ』以上のインパクトある問題が少なくて、正直がっかし。
訳も中途半端だからアンフェアな叙述トリックが多いし。

水平思考というのが、この本書を則る思考法です。
いろいろな側面から仮説をぶち当て、複数の問題を全て解決する説を見つけるのです。
宮本茂のいうところの<<アイディア>>がまさにそれでしょう。


糸井     まえに岩田さんと話したときに、
            「アイデアというのはなにか?」
            という話をしたじゃないですか。

岩田     宮本(茂)さんのことばですね。

糸井     そうです。つまり、宮本さんによれば、
            「アイデアというのは
            複数の問題を一気に解決するものである」
            ということなんですが、
            この話を事務所のみんなにしたところ、
            ものすごく感心されまして。
            せっかく岩田さんがいらっしゃってることだし、
            あの宮本さんの発言の意図と、岩田さんの分析を
            くわしく聞かせてもらえたらなと思うんですが。

岩田      あれは、ゲームをつくってるときに、
            宮本さんが言ったんですよ。
            ですから、宮本さんは
            ゲームをつくるときのひとつの方法論として、
            おっしゃってたんですけど、
            わたしは、ゲームづくりに限らず
            万能な考え方だと思うんですよね。

HOBO NIKKAN ITOI SHINBUN - 1101.comより


さすがちゃぶ台返しerです。いうことが違います。
また、こちらでは<<水平思考>>と直接使われております。


  • 横井の哲学に、「枯れた技術の水平思考」という言葉がある。
横井軍平 - Wikipediaより

どちらも奇しくも任天堂を代表したエンジニア。そりゃあ新しいものを作るわけだわ。


Rubyはやっとこさ 第16章-FileクラスとDirクラス- に突入。まあまあゆっくりやりましょう。
6月くらいまでにはRuby技術者認定試験(Ruby Association Certified Ruby Programmer)を受けて合格したいものです。

このアーカイブについて

このページには、過去に書かれたブログ記事のうちRubyカテゴリに属しているものが含まれています。

前のカテゴリはOpenVZです。

次のカテゴリはUNIXです。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

2009年12月

    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    


Firefox3 Meter
にほんブログ村 IT技術ブログ Linuxへ フィードメーター - 十返舎.com あわせて読みたいブログパーツ
QLOOKアクセス解析 問い合わせ info☆☆jippenshar.comまで ("☆☆"を@に置き換えてお願いします。)
Powered by Movable Type 4.22-ja LPIC2_Logo