スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

初心者向けRubyが欲しい(Rubyの良くないところ)

以前から何度か記事にしているように、わたしはへなちょこRubiest。
気が向いたとき、たまーに、Rubyプログラムを書いています。

最近の作品
>Wikipediaのセクションへのリンク(節リンク)を取得するツール (09/22)
>Dimoraが使いにくいので、CSVファイル(Excel/Calc)に出力するツールを作った (09/06)

で、最近、会社のとあるシステムがASP化されたので、Rubyで自動巡回プログラムを作ろうと思い立ちました。

そのとき
やっぱRubyって初心者向けじゃないよね。
と思いました。

と、同時に、誰か初心者向けRubyを作ってくれないかなー。と思いました。

以下わたしが、初心者向けRubyに望むこと。

rubygemsは、要らない


Rubyが初心者向けじゃない。と強く思うのが、これ。

今回、IEのコントロールプログラムを書こうと思って、「watir」をインストールしようと思いましたが・・・
これが、どうにもこうにも、うまくいきませんでした。
C:\Ruby187\bin>ruby -v
ruby 1.8.7 (2011-06-30 patchlevel 352) [i386-mingw32]

C:\Ruby187\bin>gem install watir
ERROR: Error installing watir:
The 'ffi' native gem requires installed build tools.

Please update your PATH to include build tools or download the DevKit
from 'http://rubyinstaller.org/downloads' and follow the instructions
at 'http://github.com/oneclick/rubyinstaller/wiki/Development-Kit'


ruby1.9.2やASR187を試してみたり、下の記事を参考にしてみたもののうまくいかず・・・・

> RubyInstallerのMinGW32なRubyでのgem installでmakeが必要なとき(きたももんががきたん。)

過去にも、exerbやocraのgem install で失敗しまくったりと、rubygemsには悪い思い出しかありません。

そういえば、Debianのメンテナが辞任するときも、Rubygemsを槍玉に挙げていましたね。
>DebianのRubyパッケージメンテナ辞任で騒動に (Rails Hub情報局)

Lucas Nussbaumは、RubyGemsは万人向けツールでないと言ったそうですが、まさにそのとおり。
普通に、バイナリやソースをコピーするとか、インストーラーとかのほうが初心者向けと思います。

Rubygemsは多くのプラットフォームをカバーするための仕組みなのかもしれませんが、Ruby利用者の拡大についていけなくなっていると感じます。

初心者向けパッケージは、Rubygems不要にして欲しいと思います。

何でも入りパッケージが欲しい


なぜRubygemsが必要になるかというと、必要なものが、基本パッケージに含まれていないからです。
watirもocraもRoRも、追加のインストールが必要になります。

何かをやりたい!と思い立ったとき、ライブラリのインストールから始めなきゃいけないのは、生産的ではないと思います。

rubygemsがクソだの何だのの前に、何も追加インストールせずに済む、全部入りRubyが欲しいな。と思います。

Win32もRoRもvRubyも。

ついでに、SQLサーバとhttpサーバもインストールしてもらえると、なお良いと思います。

初心者向けパッケージは一つでいい


Rubyののダウンロードページに行くと、Windows版バイナリだけでも、4種類のリンクが紹介されていて、混乱します。

ぶっちゃけ、初心者にとってみれば、MinGW32だろうが、mswin32だろうが、cgywinだろうが関係ありません。

そのくせ、インターネット上のサンプルコードが、微妙なパッケージの違いで、動かなかったりします。

できれば、「初心者向けRuby」として、単一パッケージで配布して欲しいな思います。


開発環境もつけて欲しい


Rubyをインストールするだけでは、開発環境はついてきません。

RDE? NetBeans? Eclipse?
なんでもいいので、初心者向けパッケージと一体化して欲しいな。と思います。


デフォルトの文字コードはSJISでいいんじゃね?


日本人が日本で開発したRuby。
が、そのわりには、日本語処理が特別扱いされているわけではなく、初心者がつまづく原因になっています。

どうせ初心者は、SJISしか利用しません。
もう、ソースコードも内部処理もファイル出力も、すべてSJISで統一したほうがすっきりするのではないかと思います。

マジックコメントも、無指定(デフォルト)はSJISにしたほうが便利と思います。

いちいちrequireだのincludeするのは面倒



たとえば今日の日付を表示したいとき。
print Date::today.to_s

簡単簡単。と思いきや、これだけではだめ。
require 'date'しないと動きません。

漢字コードなら require 'kconv'
URL操作なら require 'uri'

いちいちrequireするのは面倒。

メソッドを使うたびに、requreしているかどうか確認するのは、面倒だと思います。

いっそ、初心者用Rubyは、あらかじめ、全部requireされているってのはどうでしょうか?
もしくは、動的に自動requireしてくれるとか。

それくらいのCPUパワーは惜しくないと思います。

EXE ファイルを作って欲しい



本体だけで、Exeファイルくらい作って欲しいと思います。

別に、最適化なんて無くてもいい。
遅くてもいい、ファイルサイズが巨大でもいい。

とにかく、他人に配布できる形にならいいので。



以上、私がRubyに望むもの。
自分のことしか考えていない、単なるわがままですが (笑

いまのRubyがこういう仕様なのは、Rubyの歴史の中で生まれた必然だということは理解できます。
多くのユーザーやプラットフォームをサポートする仕組みとしては、現実解なのだと思います。

が、初心者(=Windowsユーザー)に最適化した、本当の意味でのlight weight languageがあってもいいんじゃない?とfocuslightsは思います。


コメント

Secret

プロフィール

Author:focuslights

since 2007.4.29
誤りのご指摘は大歓迎ですが、考え方に対する抗議は一切お受けいたしません。
リンク確認等は不要です。

すべての文章は、法律並びに医学に対する資格を有さない、一個人の心情を吐露したものであり、法務もしくは治療法に関する情報提供を目的としたものではありません。

本ブログにはいわゆる見通情報(forward-looking statements)を含み、実質的にこれら見込みとは異なった現実的な結果に至ることがあり得ます。
本ブログはそれらを参照したことによって引き起こされる一切の結果に対して責任を負いません。
また、見通し情報に更新もしくは改正が望ましい場合であってもその義務を負いません。

批判的な文章を掲載する際には解決法の提示が望ましいと考えていますが、問題点を抽出整理して、広く知らしめることで、集合知により解決を図ることも重要と考えているため、対案の提示は必須とは考えていません。

オーストラリアのカンガルー虐殺反対活動を推進しています。

テンプレート「RotundityBlue」と「cfdn_12」を利用させていただいています
Ne me blâmez pas.

批判的なコメントを入力される時には、なるべく対象を明記してください(ブログ主への批判なのか、以前のコメントに対する批判なのか。など)

最近の記事
最近のコメント
リンク
カレンダー
04 | 2017/03 | 05
- - - 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 -
ブログ検索
ブロとも申請フォーム

この人とブロともになる

RSSフィード
By FC2ブログ

Powered By FC2ブログ
ブログやるならFC2ブログ

FC2カウンタ
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。