たわいも無いことの、書き綴り

Jeans & Development 電子ブロック工房 三日坊主 フロントページ

Windowsスクリプト関連リンク [General]

2008年3月22日

ClickOnce/Reg-Free-COM
 VS.NETを利用すると、インストールしなくてもCOMが使えるらしい。

Hey, Scripting Guy! Be Careful What You Say
WSHから.NET Frameworkのオブジェクトを使う
 VBScriptで使える、.NETオブジェクト。

Windows PowerShell
Windows PowerShell 入門(1)
Windows Power Shell Quick Start
 マイクロソフトの新しいシェル。パイプで受け渡されるのは、オブジェクト。

日本語Windows環境を構築 [General]

2008年3月19日

現在使用中のWindowsは英語バージョンなので、プログラミング入門書の細かな操作を説明するためのスクリーンショットを取るのに向かない。そこで、VirtualBoxに日本語Windowsをインストールすることにした。

Windows NT4日本語版を最近は使っていなかったので、これを活用することにした。10年以上前に購入したものであるが、今回の入門書の説明に使うには十分である。

早速VirtualBoxにインストールし、サービスパック6aを導入した。しかし、このままではVBScriptは利用できない。と言うのは、VBScriptは当時のWindowsにはインストールされていないからで、IE4だったか、あるバージョン以上のIEをインストールする必要が有る。IE6だとWSH5.6が含まれているようなので、これをインストールした。

これでほぼ環境は整った。IPアドレスはローカルのもの(10.0.2.15)なので、ファイアウォールの内側にいるようだ。MSBlast等の感染防御対策も必要ないだろう。念のため、Windows-Updateをかけておいた。NT4でもまだupdateが使えるようだ。

それにしても、なつかしい。あのころに戻りたい…とは思わないけれど。

プログラミング入門:文字列の結合 [プログラミング入門]

2008年3月18日

文字列の結合は、VBScriptでは『+』および『&』の両方が使える。これはおそらくVBからの名残だろう。VBでは型の指定ができたので、文字列の結合および、数値の加算を明確に区別することができた。

しかし、VBScriptでは型指定ができない。この環境下では、演算子として『+』を用いた場合、数値加算なのか、数値を文字列に置き換えた後に結合するのかの区別ができないため、エラーを起こすことがある。

一方、『&』を用いた場合、文字列の結合しか意味しないため、数値が代入されている2つ以上の変数を『&』で処理すると、まず数値から文字列への変換が行われ、次に文字列の結合が行われる。

ならば、プログラミングがはじめての人たちに教える場合は、文字列の結合として『&』だけを扱うほうが、混乱が無くてよいはずだ。『+』は学校で習ってきた加算と同じものであり、『&』は別のもの(文字列をくっつけるための接着剤)という捉え方ができるはずだ。

先の記事で悩んでいた電卓のシミュレーションだが、次のコードで実現できることが分かった。

a=0+inputbox("値を一つ入力してください")
b=0+inputbox("値をもう一つ入力してください")
c=a+b
msgbox a & "+" & b & "=" & c

4行目で、『&』の代わりに『+』を用いると、エラーになる。

大相撲 [General]

2008年3月15日

千代大海のつっぱりが見たい。でも、JapanTVが映らない。orz

パラボラアンテナの向きが悪いのか?

(追記)
パラボラアンテナを微調整したら、映った。それにしても、琴奨菊の白鵬へのにらめつけ方がすごい。あれは、気合が入っているというより、怒りの表情だ。

プログラミング入門 [プログラミング入門]

2008年3月4日

次は、こんな感じ。
namae="名前"
msgbox "私の名前は"+namae+"です"

ここで、namaeというもの(変数)に自分の名前を入れられることを教える。メッセージボックスで表示するときに、足し算すればよいことも同時に教える。

なぜわざわざ変数に入れる必要があるのか?次のような例を示す。

namae="名前"
msgbox "私の名前は"+namae+"です"
msgbox namae+"が私の名前です"

一度namaeという変数に入れておけば、何回でも使えるわけだ。続けて、

namae="名前"
msgbox "私の名前は"+namae+"です"
namae="父の名"
msgbox "お父さんの名前は"+namae+"です"

のようにすれば、一度代入した値に、別の値を入れ直すことができることがわかるだろう。

小中学生のためのプログラミング入門 [プログラミング入門]

2008年2月22日

まずは、コンピューターの操作についてどれだけできる必要があるか、一通り確認。

1)コンピューターの環境。
 VBScriptは、ノートパッドで編集できるし実行はダブルクリックで可能。必要最低限の権限のユーザーで大丈夫。フォルダやファイルをダブルクリックして開き、ファイルをドラッグアンドドロップで移動する、右クリックのメニューを使えるなどの基本的な操作が行えることが必要。Webページにアクセスしてきた時点で、これらはクリアしていると思われる。

2)ノートパッドが使えること。
 簡単なワープロ操作が行えることが必要。シフトキーの使用で、『"』『(』などの記号が打てる必要あり。ローマ字が使えることは大事。ローマ字は中学生に入ってから習うはずだから、小学生相手に教える場合、このあたりはネックになる可能性あり。ただ、日本語の入力にローマ字を使っているかもしれないので(カナのじか打ちかなぁ)、案外大丈夫かもしれない。文書の保存方法を知っていることは、必須。

3)自分専用のフォルダを作成できること。
 プログラミング環境構築に、これは必要。

おそらく、これだけ。次に、プログラミング環境の構築。

1)まず、プログラミング用のフォルダを作成する。

2)start.vbsという名の空のファイルを含んだZIPファイルをダウンロードさせる。start.vbsをじかにダウンロードさせる方法では駄目。これは、セキュリティー上の理由で、ブラウザが自動的にstart.vbs.txtとファイル名を変換してしまうため。

3)ダウンロードしたZIPファイルを開き、中にあるstart.vbsを、自分のフォルダにドラッグアンドドロップする。

以上で、環境の準備は完了。まずは、Hello Worldから。

1)start.vbsをコピーする。
2)好きなファイル名に書き換える。
3)右クリックの『編集』を選択。
4)次の内容を書き込む。

msgbox "私の始めてのプログラム"

5)ダブルクリックして実行。

まずは、こんなところかな?

AMGEN Tour of California [General]

2008年2月20日

2月19日午後2時ごろ、AMGEN Tour of California参加の自転車群が、今すんでいる町、Davisを通過した。

仕事の合間に、少し観戦。公式ページでレースの進行状況を確認しながら、徒歩でツアーが通過する道へ。

Scott Nydam
写真は、Davisを疾走する、Scott Nydam。撮影時点で、首位。

小中学生のためのプログラミング入門 [プログラミング入門]

2008年2月13日

いつかはやりたいと思っていたプロジェクトを開始することにした。また新たなカオスの追加だけれど、思い立ったが吉日。

プログラミングを始めたいと思っている人へ捧げる入門書。小学生や中学生でも理解できるということを念頭に解説する。もちろん、大人が読んでもかまわない。難しい表現は避け、漢字にはルビをふって、小学生でも読めるようにする。

私自身が一番初めにプログラムを書き始めたのは中学1年生だった。そのときにどんなプログラムを書いたかを思い出しながら、コンピューターの基本を理解してもらうように書くつもり。

Agile Web Development with Rails, 2nd Edition [General]

2008年2月11日

Andyさんが薦めていたRailsの本を一冊、amazon.comに注文。

Agile Web Development with Rails, 2nd Edition [ILLUSTRATED] (Paperback)

邦訳版を日本から取り寄せると送料が馬鹿にならないので、原著を買う事にした。Keny G の新しいアルバムと一緒に注文したので、発送が遅れている様子。次の週末までに届くといいけれど…。

その前に、Rubyの解説本を読みきらねば。

PHPは駄目な言語なのか? [General]

2008年2月11日

PHPがいかに駄目な言語か、という話

・「PHPは初心者に学びやすい」と言われる?
・strpos('abcd','a')は0を返すが、0は偽である。
・いろんなものがfalseだったりするせいで、新たな比較演算子「===」が必要
・一貫性のない名前(str_replace,strlen,parse_strとか)
・引数の順番がわかりにくい(in_arrayとかstrposとか)
・グローバル。
・lambda(無名関数)。
・PHPで書かれたたくさんのアプリがある?
Matzにっきより、抜粋)
<<前の記事   後の記事>>