
2006年07月25日
八丈島に来ています

2006年07月22日
部活動のため午後出勤
正の顧問ではなくサブなのですが、今日と先週の土曜日は正の顧問の都合が悪く、私が付きました。
といっても技術指導はOBの方が見てくれるので、最初と最後の挨拶以外には練習を見ているだけ。部屋の中での仕事をしていました。
といっても技術指導はOBの方が見てくれるので、最初と最後の挨拶以外には練習を見ているだけ。部屋の中での仕事をしていました。
2006年07月21日
移動教室から戻ってきました
無事故で帰ってきました。
館山という場所なのに天気は余り良くありませんでしたが、不思議と野外活動の時には雨がやんでいて、すべて計画通りにできました。
生徒も授業の時とは違った顔で面白いですね。
館山という場所なのに天気は余り良くありませんでしたが、不思議と野外活動の時には雨がやんでいて、すべて計画通りにできました。
生徒も授業の時とは違った顔で面白いですね。
2006年07月17日
休みです
昨日も休み(部活動指導で午後から半日出勤しましたが)。今日も休み。明日も休みです。
なんか、信じられません。
子供と仲良くなれました。良かったです。
なんか、信じられません。
子供と仲良くなれました。良かったです。
研修会テキストのこと
某研修会のテキスト作りを相変わらずやっています。先日終わったのは初日分。二日目、三日目の半日分はまだまだです。
一方、もう一つの研修に関してはもう終わっています。というかやっていません。なぜかというと、あまり大きな声では言えませんが民生品を使うことにしているからです。
初心者向けには、やはりフルカラーで、スキャンした画面を多用したテキストが必要です。受講生にちょびっと負担してもらうことにしました。2種類で210円です。
もう、お分かりかも知れません。なかなか、良くできているんです。これが。
一方、もう一つの研修に関してはもう終わっています。というかやっていません。なぜかというと、あまり大きな声では言えませんが民生品を使うことにしているからです。
初心者向けには、やはりフルカラーで、スキャンした画面を多用したテキストが必要です。受講生にちょびっと負担してもらうことにしました。2種類で210円です。
もう、お分かりかも知れません。なかなか、良くできているんです。これが。
2006年07月15日
マイクロソフトが「Virtual PC 2004」を無償配布
Microsoft Virtual PC 2004 のホームを見ると、無料ダウンロードのリンクがあります。早速ダウンロードしてみたのですが、使うのに今一歩踏ん切りが付かず、まだ使っていません。ちなみにゲストOSとしては MS-DOS 6 あたりからサポートしていますが、FreeBSD や Linux などはサポート外としています(多分入れられると思いますけど)。
VMware Player も無料になったことですし、敢えて使わなければならない理由はないんですよね。本当なら、ゲストOS として、Windows 2000 server や、Windows server 2003 などをどかどか入れられるととても嬉しいのですが(笑)。
VMware Player も無料になったことですし、敢えて使わなければならない理由はないんですよね。本当なら、ゲストOS として、Windows 2000 server や、Windows server 2003 などをどかどか入れられるととても嬉しいのですが(笑)。
フリーのPDF作成ソフト
拡張子が「.pdf」のファイルは、Adobe Reader で読むことができ、印刷物と全く同じものをファイルとして保存できるのでなかなか重宝します。
PDFを作成するのは、本家のものでなくても安いものがたくさん出ています。有名なところではソースネクストの「いきなりPDF」でしょうか(いつのまにか「2」になっていました)。
しかし、単純に PDF に直すだけならフリーのものもいくつかありますので、ご紹介します。
1.primoPDF
窓の杜紹介ぺーじはこちら
英語のソフトです。
現在のバージョンは 2.0 のようです。(Windows98 ユーザは 1.0 を使えと小さく書いてあります)。
とてもシンプルで、今まで日常的に私が使ってきたソフトです。
ところが残念なことが起きました。今日、2.0にアップデートされていることを知り、試しにインストールしてみたところ「無効なフォントを指定しています」という旨のメッセージが出て、できあがったファイルは全く読めないものになってしまいました。またファイルの保存も調子が良くありません。
そこで、一度アンインストールをして、1.0に再び戻したのですが、「Invalid DLL!」というメッセージが出て保存できなくなってしまいました。このメッセージに見覚えがあって、実は支援校ノートパソコン(Windows2000)に入れてみたところ同様のメッセージが出て使えなかったのです。
今まで便利に使えていたのでとても残念です。
2.CutePDF
日本語の紹介ページはこちら。
こちらも英語です。
使い勝手は悪くないです。
CutePDF では数十秒かかるものが PrimoPDF では一瞬で終わるとのブログの書き込みもあるが、今のところそんなことはありません。
ただインストールは若干メンドウです。ファイルが二つに分かれているのです。またインストール後に再起動を求められますが、再起動しなくてもなぜか使えます。
3.クセロPDF
日本の会社が作った日本語ソフトです。
色々な機能があり、作成にも問題ありません。
難を言えば、ユーザ登録が必要で、インストール時に返ってきたメールにあるシリアル番号を入れる必要があります。
そして実行時に、ポップアップでインターネット上の有償版への広告が表示されます。ネットワークが接続できない場合は使えません。
これは困ったもので、PDFを作成したいときは必ずしもインターネットに接続しているとは限りません。ですから、日常的に使うソフトには使えないということです。
この記事はもう少し詳しいものを一度書いたのですが、なぜか消してしまいました。最近こういうこと多いですねぇ。
PDFを作成するのは、本家のものでなくても安いものがたくさん出ています。有名なところではソースネクストの「いきなりPDF」でしょうか(いつのまにか「2」になっていました)。
しかし、単純に PDF に直すだけならフリーのものもいくつかありますので、ご紹介します。
1.primoPDF
窓の杜紹介ぺーじはこちら
英語のソフトです。
現在のバージョンは 2.0 のようです。(Windows98 ユーザは 1.0 を使えと小さく書いてあります)。
とてもシンプルで、今まで日常的に私が使ってきたソフトです。
ところが残念なことが起きました。今日、2.0にアップデートされていることを知り、試しにインストールしてみたところ「無効なフォントを指定しています」という旨のメッセージが出て、できあがったファイルは全く読めないものになってしまいました。またファイルの保存も調子が良くありません。
そこで、一度アンインストールをして、1.0に再び戻したのですが、「Invalid DLL!」というメッセージが出て保存できなくなってしまいました。このメッセージに見覚えがあって、実は支援校ノートパソコン(Windows2000)に入れてみたところ同様のメッセージが出て使えなかったのです。
今まで便利に使えていたのでとても残念です。
2.CutePDF
日本語の紹介ページはこちら。
こちらも英語です。
使い勝手は悪くないです。
CutePDF では数十秒かかるものが PrimoPDF では一瞬で終わるとのブログの書き込みもあるが、今のところそんなことはありません。
ただインストールは若干メンドウです。ファイルが二つに分かれているのです。またインストール後に再起動を求められますが、再起動しなくてもなぜか使えます。
3.クセロPDF
日本の会社が作った日本語ソフトです。
色々な機能があり、作成にも問題ありません。
難を言えば、ユーザ登録が必要で、インストール時に返ってきたメールにあるシリアル番号を入れる必要があります。
そして実行時に、ポップアップでインターネット上の有償版への広告が表示されます。ネットワークが接続できない場合は使えません。
これは困ったもので、PDFを作成したいときは必ずしもインターネットに接続しているとは限りません。ですから、日常的に使うソフトには使えないということです。
この記事はもう少し詳しいものを一度書いたのですが、なぜか消してしまいました。最近こういうこと多いですねぇ。
夏期休業突入
本日で、夏期休業日前の最後の就業日が終わりました。
ヘンな言い方ですが、本校は前期・後期の二期制なので学期末ではありません。したがって終業式ではなく、単なる全校集会です。午前中は授業をやりました。
通常は7月20日まであると思いますが、本校では少し早めに夏期休業に入り、その分9月1日ではなく8月の終わりに始まります。
夏期休業に入ったとはいえ、1学年は勉強合宿や移動教室があり、夏期休業中に講習が1期から6期までありますので、ほとんど授業があるのと同じような感覚です。
そうそう、明日は土曜日ですが部活動の練習があるために出勤します。
IT活用研修のためのテキスト作りは初日の分だけなんとかけりを付けましたが、それ以降の分がありますので、明日はときどき練習を見ながら、テキスト作りの続きをします。
夏期休業中は、出張の研修を除いた研修は無く、ひたすら代休(または年休など)か出勤かとなっています。つまりほとんど出勤している状態です。
都教委の考えるとおりの行動ですね。
もっと余裕がないとクリエイティブなことができないような気がするのですが……。
ヘンな言い方ですが、本校は前期・後期の二期制なので学期末ではありません。したがって終業式ではなく、単なる全校集会です。午前中は授業をやりました。
通常は7月20日まであると思いますが、本校では少し早めに夏期休業に入り、その分9月1日ではなく8月の終わりに始まります。
夏期休業に入ったとはいえ、1学年は勉強合宿や移動教室があり、夏期休業中に講習が1期から6期までありますので、ほとんど授業があるのと同じような感覚です。
そうそう、明日は土曜日ですが部活動の練習があるために出勤します。
IT活用研修のためのテキスト作りは初日の分だけなんとかけりを付けましたが、それ以降の分がありますので、明日はときどき練習を見ながら、テキスト作りの続きをします。
夏期休業中は、出張の研修を除いた研修は無く、ひたすら代休(または年休など)か出勤かとなっています。つまりほとんど出勤している状態です。
都教委の考えるとおりの行動ですね。
もっと余裕がないとクリエイティブなことができないような気がするのですが……。
使用しているPCの環境移行
以前妻のPCを購入した件を書きましたが、その後も少しずつやることがあるものです。
まず、環境移行のためにやったこと。
1.メール関係のバックアップ
このサイトを参考にして、旧PCからバックアップを取りました。メッセージの保存、アドレス帳のバックアップ、メールアカウントのバックアップ、メッセージルールのバックアップ……。これらを「mail」フォルダにまとめてマイドキュメントに保存。
2.デスクトップのファイルのバックアップ
単純にすべて選んで、マイドキュメントの中に「desktop」というフォルダを作ってコピー。
3.「お気に入り」のバックアップ
IEのお気に入りは、「C:\Documents and Settings\(ユーザ名)\Favorites」にあるので、フォルダごとマイドキュメントにコピー。
妻の使い方は、基本的にメールとwebブラウズがほとんど。後は多少アプリケーションソフトを使ってもすべてマイドキュメントかデスクトップに保存しているので、まったく「行儀の良い」使い方をしている。
したがって、ここまでの操作ですべてマイドキュメントに集まったはず。
4.旧PCと新PCをLANで結び、マイドキュメントをコピー
5.それぞれの場所へリストア
と、ここまでやって大丈夫だろうと思っていました。しかし、
・前に保存した添付ファイルが開かなくなった(実際の言い方は、「なんとかできません」とか言われて写真が見えなくなった」でした)
→ OEのセキュリティを下げて、添付ファイルを開けるようにする。
・メール作成が変わった(実際は「メールの字が小さくなっちゃって、打ちにくくなった」)
→ OEのデフォルトのメール作成のHTML形式をテキスト形式に変更
・「あどれす」での単語変換で妻のメールアドレスが出なくなった(実際は「あどれす」ででなくなっちゃった」)
→ 単語登録のやり直し
・見えなくなったサイトがある
→ IEのセキュリティの見直しとポップアップの許可等
・メールの一覧が見にくくなった「メールが下に表示されるけど大丈夫?」
→ Nimdaか何かの時に、OEのレイアウト設定を変更して、中身はダブルクリックしないと見えなくしていたのが、元に戻ったので再び設定
などなど、セキュリティ面でのいろいろな設定をやらなければなりませんでした。こうしてみると、日々少しずつ設定していたことなどをどこかで記録を取っておくべきだったと反省しています。
ということで、自分の覚え書きの意味で書いてみました。
まず、環境移行のためにやったこと。
1.メール関係のバックアップ
このサイトを参考にして、旧PCからバックアップを取りました。メッセージの保存、アドレス帳のバックアップ、メールアカウントのバックアップ、メッセージルールのバックアップ……。これらを「mail」フォルダにまとめてマイドキュメントに保存。
2.デスクトップのファイルのバックアップ
単純にすべて選んで、マイドキュメントの中に「desktop」というフォルダを作ってコピー。
3.「お気に入り」のバックアップ
IEのお気に入りは、「C:\Documents and Settings\(ユーザ名)\Favorites」にあるので、フォルダごとマイドキュメントにコピー。
妻の使い方は、基本的にメールとwebブラウズがほとんど。後は多少アプリケーションソフトを使ってもすべてマイドキュメントかデスクトップに保存しているので、まったく「行儀の良い」使い方をしている。
したがって、ここまでの操作ですべてマイドキュメントに集まったはず。
4.旧PCと新PCをLANで結び、マイドキュメントをコピー
5.それぞれの場所へリストア
と、ここまでやって大丈夫だろうと思っていました。しかし、
・前に保存した添付ファイルが開かなくなった(実際の言い方は、「なんとかできません」とか言われて写真が見えなくなった」でした)
→ OEのセキュリティを下げて、添付ファイルを開けるようにする。
・メール作成が変わった(実際は「メールの字が小さくなっちゃって、打ちにくくなった」)
→ OEのデフォルトのメール作成のHTML形式をテキスト形式に変更
・「あどれす」での単語変換で妻のメールアドレスが出なくなった(実際は「あどれす」ででなくなっちゃった」)
→ 単語登録のやり直し
・見えなくなったサイトがある
→ IEのセキュリティの見直しとポップアップの許可等
・メールの一覧が見にくくなった「メールが下に表示されるけど大丈夫?」
→ Nimdaか何かの時に、OEのレイアウト設定を変更して、中身はダブルクリックしないと見えなくしていたのが、元に戻ったので再び設定
などなど、セキュリティ面でのいろいろな設定をやらなければなりませんでした。こうしてみると、日々少しずつ設定していたことなどをどこかで記録を取っておくべきだったと反省しています。
ということで、自分の覚え書きの意味で書いてみました。
2006年07月13日
テキスト作り
夏期休業中に行う「IT活用研修」のテキスト作りに追われています。
夏期休業に入ってしまうと、私も相棒も移動教室の引率やら何やらで忙しくなってしまうため、明日あたりで印刷も終えてしまわなければなりません。
書きためていた授業評価ネタも尽きましたので、続きはまた。
夏期休業に入ってしまうと、私も相棒も移動教室の引率やら何やらで忙しくなってしまうため、明日あたりで印刷も終えてしまわなければなりません。
書きためていた授業評価ネタも尽きましたので、続きはまた。
2006年07月11日
授業評価システム内容(7)SQLのテスト2
授業評価システム内容(1)データベース設計
授業評価システム内容(2)テーブル作成インポート
授業評価システム内容(3)SQLのテスト
授業評価システム内容(4)データ修正
授業評価システム内容(5)表紙画面を作ってみる
授業評価システム内容(6)本人確認ページの作成
kojin.php から学籍番号を受け取って、質問項目を表示するために、まずデータベースに問い合わせて必要な情報を取得する方法を考えます。
以前、学籍番号、講座番号、科目番号、講座名を表示させる SQL は考えました。色々考えると、講座を担当する職員名も必要です。何先生の授業なのかを想像しながら授業評価をするからです。
こんな感じの SQL を試してみました。
意味は、
「kozajuko テーブル、kozadata テーブル、kamokudeta テーブル、kozatanto テーブル、shokuinmaster テーブルから、科目名、講座番号、講座名、職員名を表示しなさい。条件は、学籍番号が(学籍番号)であり、かつ、講座受講テーブル、講座データデーブル、講座担当テーブルの講座番号が一致し、かつ、科目データテーブルと講座データテーブルの科目番号が一致し、かつ、講座担当テーブルと職員マスターテーブルの職員番号が一致すること」
ということです。各テーブルの意味はこちらを見てください。
さて、実行してみると、うんともすんとも言いません。あれ? おかしいな。ん? などと待っているとバーッと表示されました。38秒かかりました。
余りに多くのテーブルを並べたからなのでしょう。これでは使い物になりません。kojin.php で本人確認をして、「はい。そうです」ボタンを押してから最低でも38秒かかってしまうことになります。そこで、テーブルの結合を考えます。
内部結合(INNER JOIN)とは、A,B二つのテーブルをある条件で結合します。テーブルAにあり、テーブルBに無いデータはその列を NULL 値で置きます。テーブルBにあり、テーブルAに無いデータも同じです。
左外部結合(LEFT JOIN)とは、FROM で指定したテーブルA を「左」とし、結合するテーブルBを「右」とし、「左」にあって「右」にないデータは NULL値 を置き、逆のデータは捨ててしまいます。
右外部結合(RIGHT JOIN)とは、FROM で指定したテーブルA を「左」とし、結合するテーブルBを「右」とするところまでは左外部結合と全く同じ。しかし、優先するのは「右」であるテーブルBだというだけです。つまり、FROM で指定するテーブルと後から結合するテーブルを入れ替えれば、そのまま左外部結合は右外部結合として成り立ちます。
そこで、「左外部結合」だけを使うことにします。
左外部結合(LEFT JOIN)を使うと、FROM で指定したテーブルに対して条件の合致するレコードだけを結合します。そこで、こんな SQL に改良してみました。
結合の仕方を除けば、先ほどとやっていることは同じです。
kozatanto テーブルに shokuinmaster テーブルを左外部結合(条件は職員番号が等しい)、
そのテーブルに、kozadata テーブルを内部結合(条件は講座番号が等しい)、
そのテーブルに、kozajuko テーブルを左外部結合(条件は講座番号が等しい)、
そのテーブルに、kamokudata テーブルを左外部結合(条件は科目番号が等しい)、
結合したテーブルを学籍番号が(学籍番号)であるレコードを抜き出して表示する。
という内容です。
これを実行すると結果がバーッと表示され、最後に、
20 rows in set (0.62 sec)
と表示されました。0.62秒なら実用になります。何人もが一斉にアクセスしてもそう待たされることはないでしょう。
次回、この SQL を使って、授業評価の質問をするページを作っていきます。
授業評価システム内容(2)テーブル作成インポート
授業評価システム内容(3)SQLのテスト
授業評価システム内容(4)データ修正
授業評価システム内容(5)表紙画面を作ってみる
授業評価システム内容(6)本人確認ページの作成
kojin.php から学籍番号を受け取って、質問項目を表示するために、まずデータベースに問い合わせて必要な情報を取得する方法を考えます。
以前、学籍番号、講座番号、科目番号、講座名を表示させる SQL は考えました。色々考えると、講座を担当する職員名も必要です。何先生の授業なのかを想像しながら授業評価をするからです。
こんな感じの SQL を試してみました。
意味は、
「kozajuko テーブル、kozadata テーブル、kamokudeta テーブル、kozatanto テーブル、shokuinmaster テーブルから、科目名、講座番号、講座名、職員名を表示しなさい。条件は、学籍番号が(学籍番号)であり、かつ、講座受講テーブル、講座データデーブル、講座担当テーブルの講座番号が一致し、かつ、科目データテーブルと講座データテーブルの科目番号が一致し、かつ、講座担当テーブルと職員マスターテーブルの職員番号が一致すること」
ということです。各テーブルの意味はこちらを見てください。
さて、実行してみると、うんともすんとも言いません。あれ? おかしいな。ん? などと待っているとバーッと表示されました。38秒かかりました。
余りに多くのテーブルを並べたからなのでしょう。これでは使い物になりません。kojin.php で本人確認をして、「はい。そうです」ボタンを押してから最低でも38秒かかってしまうことになります。そこで、テーブルの結合を考えます。
内部結合(INNER JOIN)とは、A,B二つのテーブルをある条件で結合します。テーブルAにあり、テーブルBに無いデータはその列を NULL 値で置きます。テーブルBにあり、テーブルAに無いデータも同じです。
左外部結合(LEFT JOIN)とは、FROM で指定したテーブルA を「左」とし、結合するテーブルBを「右」とし、「左」にあって「右」にないデータは NULL値 を置き、逆のデータは捨ててしまいます。
右外部結合(RIGHT JOIN)とは、FROM で指定したテーブルA を「左」とし、結合するテーブルBを「右」とするところまでは左外部結合と全く同じ。しかし、優先するのは「右」であるテーブルBだというだけです。つまり、FROM で指定するテーブルと後から結合するテーブルを入れ替えれば、そのまま左外部結合は右外部結合として成り立ちます。
そこで、「左外部結合」だけを使うことにします。
左外部結合(LEFT JOIN)を使うと、FROM で指定したテーブルに対して条件の合致するレコードだけを結合します。そこで、こんな SQL に改良してみました。
結合の仕方を除けば、先ほどとやっていることは同じです。
kozatanto テーブルに shokuinmaster テーブルを左外部結合(条件は職員番号が等しい)、
そのテーブルに、kozadata テーブルを内部結合(条件は講座番号が等しい)、
そのテーブルに、kozajuko テーブルを左外部結合(条件は講座番号が等しい)、
そのテーブルに、kamokudata テーブルを左外部結合(条件は科目番号が等しい)、
結合したテーブルを学籍番号が(学籍番号)であるレコードを抜き出して表示する。
という内容です。
これを実行すると結果がバーッと表示され、最後に、
20 rows in set (0.62 sec)
と表示されました。0.62秒なら実用になります。何人もが一斉にアクセスしてもそう待たされることはないでしょう。
次回、この SQL を使って、授業評価の質問をするページを作っていきます。
2006年07月10日
授業評価システム内容(6)本人確認ページの作成
授業評価システム内容(1)データベース設計
授業評価システム内容(2)テーブル作成インポート
授業評価システム内容(3)SQLのテスト
授業評価システム内容(4)データ修正
授業評価システム内容(5)表紙画面を作ってみる
表紙から受け取ったデータを元に、本人確認(学籍番号確定)ページを作ります。
いよいよ PHP の出番です。
PHP に関してはいくつかの本を買いました。しかし、しくみや文法などについて一番良く分かったのはオンラインのマニュアルでした。
PHP で書かれたものは拡張子を「.php」で保存します。webサーバに要求したときに、拡張子が「.php」であった場合、webサーバが対応している場合、モジュールまたはcgiとして実行し、結果をブラウザに返します。ですからクライアント側から見ると、ソースページを表示しても PHP の痕跡はありません。単なる html しか見えません。この辺は昔から Perl などで書いていた cgi のページと同じです。
PHP の書き方(構文)ですが、通常の HTML と混在して書くことができます。
<?php ではじまり ?>でおわります。これを HTML ファイル内で何度でも行うことができます。それ以外にも3種類ほどあり、
1. <?php echo("XHTMLまたはXMLドキュメントを処理したい場合は、この方法が良いでしょう\n"); ?>
2. <? echo ("この方法は最も簡単で、SGMLの処理命令です\n"); ?>
<?= expression ?> は "<? echo expression ?>"のショートカットです。
3. <script language="php">
echo ("(FrontPageのような) いくつかのエディタ は処理命令を好み
ません");
</script>
4. <% echo ("オプションでASP形式のタグを使用可能です"); %>
<%= $variable; # これは、"<%echo .." のショートカットです。%>
という構文があるようです。通常は1、または2を使うようです。3はいつでも使える構文。4はASP形式であり、オプションで許可されていないと使えないそうです。
そして、「何度でも行うことができます」と書きましたが、次のようなこともできると後から知りました。
<?php
if ($expression) {
} else {
}
?>
if(){〜}else{〜}の構文ですが、「〜」の処理で一度 PHP を抜け出して地の HTML になり、また PHP 内でのif文の続きのような形なのに、一連の動作が成り立ちます。PHPのマニュアルにはこう書いてあります。
つまり、PHP を抜け出しているようでいて、実は一連の動作はすべて PHP 内で処理されているのです。
このことを早い段階で知っていたら、もう少し違った書き方をしていたかも知れません。
また、マニュアルには、終了タグ ?>には自動的に「;」が付加されているものとして取り扱うことや、ファイルの終端では終了タグはあってもなくてもいいことが書いてあります(PHPマニュアル 第 10章基本的な構文参照)。
今少し触れましたが、命令はC言語と同様に「;」で終了します。基本的には必ず付けます(命令の分離)。
さて、授業評価システムにおいて個人確認をする PHP で作られたページは以下のようになりました。
続きを読む
授業評価システム内容(2)テーブル作成インポート
授業評価システム内容(3)SQLのテスト
授業評価システム内容(4)データ修正
授業評価システム内容(5)表紙画面を作ってみる
表紙から受け取ったデータを元に、本人確認(学籍番号確定)ページを作ります。
いよいよ PHP の出番です。
PHP に関してはいくつかの本を買いました。しかし、しくみや文法などについて一番良く分かったのはオンラインのマニュアルでした。
PHP で書かれたものは拡張子を「.php」で保存します。webサーバに要求したときに、拡張子が「.php」であった場合、webサーバが対応している場合、モジュールまたはcgiとして実行し、結果をブラウザに返します。ですからクライアント側から見ると、ソースページを表示しても PHP の痕跡はありません。単なる html しか見えません。この辺は昔から Perl などで書いていた cgi のページと同じです。
PHP の書き方(構文)ですが、通常の HTML と混在して書くことができます。
<?php ではじまり ?>でおわります。これを HTML ファイル内で何度でも行うことができます。それ以外にも3種類ほどあり、
1. <?php echo("XHTMLまたはXMLドキュメントを処理したい場合は、この方法が良いでしょう\n"); ?>
2. <? echo ("この方法は最も簡単で、SGMLの処理命令です\n"); ?>
<?= expression ?> は "<? echo expression ?>"のショートカットです。
3. <script language="php">
echo ("(FrontPageのような) いくつかのエディタ は処理命令を好み
ません");
</script>
4. <% echo ("オプションでASP形式のタグを使用可能です"); %>
<%= $variable; # これは、"<%echo .." のショートカットです。%>
という構文があるようです。通常は1、または2を使うようです。3はいつでも使える構文。4はASP形式であり、オプションで許可されていないと使えないそうです。
そして、「何度でも行うことができます」と書きましたが、次のようなこともできると後から知りました。
<?php
if ($expression) {
?>
<strong>This is true.</strong>
<?php
} else {
?>
<strong>This is false.</strong>
<?php
}
?>
if(){〜}else{〜}の構文ですが、「〜」の処理で一度 PHP を抜け出して地の HTML になり、また PHP 内でのif文の続きのような形なのに、一連の動作が成り立ちます。PHPのマニュアルにはこう書いてあります。
このコードは期待通りに動作します。これは、PHPが?> および <?phpの中のテキストをecho()命令として処理す るためです。
つまり、PHP を抜け出しているようでいて、実は一連の動作はすべて PHP 内で処理されているのです。
このことを早い段階で知っていたら、もう少し違った書き方をしていたかも知れません。
また、マニュアルには、終了タグ ?>には自動的に「;」が付加されているものとして取り扱うことや、ファイルの終端では終了タグはあってもなくてもいいことが書いてあります(PHPマニュアル 第 10章基本的な構文参照)。
今少し触れましたが、命令はC言語と同様に「;」で終了します。基本的には必ず付けます(命令の分離)。
さて、授業評価システムにおいて個人確認をする PHP で作られたページは以下のようになりました。
続きを読む
2006年07月09日
ああ、これが3ヶ月前にあれば
今月の日経Linux8月号の特集1
「低スペックノートPCでサーバーを楽しむ」
サンプルのノートパソコンは「Dynabook Satellite 4340」(PenIII 650MHz,Mem 64MB, HDD 10GB)、Samba をインストールしてどう快適に使うかという話。使っているマシンといい、やっていることといいうちとほとんど同じ。
ああ、3〜4ヶ月前にこの特集があればあんなに苦労しなくて済んだのにと思った次第でした。
「低スペックノートPCでサーバーを楽しむ」
サンプルのノートパソコンは「Dynabook Satellite 4340」(PenIII 650MHz,Mem 64MB, HDD 10GB)、Samba をインストールしてどう快適に使うかという話。使っているマシンといい、やっていることといいうちとほとんど同じ。
ああ、3〜4ヶ月前にこの特集があればあんなに苦労しなくて済んだのにと思った次第でした。
授業評価システム内容(5)表紙画面を作ってみる
授業評価システム内容(1)データベース設計
授業評価システム内容(2)テーブル作成インポート
授業評価システム内容(3)SQLのテスト
授業評価システム内容(4)データ修正
そろそろアプリケーション作りを考えていきます。まずは表紙です。
最初の「index.html」は「授業評価システム」と表示され、「学年・クラス・番号」を入力して送信するという動作を考えています。学籍番号そのものを入力させることも考えましたが、まだ生徒本人が学籍番号を憶えていないので止めました。学籍番号とパスワードのセットを入力するのがベストだと思います。
入力の動作を考えると、ドロップダウンで学年やクラスを選択するのが良さそうです。しかし、出席番号は1から40まであるのでドロップダウンでは長すぎます。キーボードから入力してもらいましょう。
form 文を使って以下のようなソースを作りました。
最初の
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
はドキュメントタイプの宣言ですね。
head の中の
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
では、Windows ベースで作るので、シフトJIS であることを言っています。
<form action="kojin.php" method="post">
</form>
の間が入力のフォーム文です。
action="kojin.php"
は submit をしたときに呼び出されるページを表しています。
method="post"
は、データを送信する方式が post であることを示しています。他にも get もあります。get は色々と制約があるので post が良いようです。
学年:
ここがドロップダウンリストになっています。select 文を使います。ややこしいですが、<option>と</option>で括った「3」が画面上に表示されます。この「3」を選ぶと、「nen」と名前を付けたものとしてvalue="3"の部分の「3」が値としてセットされます。つまり「nen = 3」となります。
クラス:
これは以前に書いたデータベース内部処理での値にしているためです。また「Z」の「9」はメンテナンス用として作ったものです。あまり関係ありません。
番号<input type="text" name="shussekibango" size="2">(半角)
番号は直接入力するため type="text" としてテキストボックスを表示させます。サイズは size="2" です。ここで「39」などと入力すると、「shussekibango = 39」ということになります。
<input type="submit" value="送信">
<input type="reset" value="リセット">
これによって「送信」と表示されたボタンと「リセット」と書かれたボタンが並びます。「送信」ボタンを押すと「submit」されたことになり、例えば
nen=1
class=8
shussekiban=39
という値をセット、post して、「kojin.php」を呼び出します。「リセット」ボタンを押すと<form>内の値が初期値に戻ります。
これを画面表示すると以下のようになります(ここで送信ボタンを押しても何もなりません)。
単純ですが、最初の画面はこれで良さそうです。
授業評価システム内容(2)テーブル作成インポート
授業評価システム内容(3)SQLのテスト
授業評価システム内容(4)データ修正
そろそろアプリケーション作りを考えていきます。まずは表紙です。
最初の「index.html」は「授業評価システム」と表示され、「学年・クラス・番号」を入力して送信するという動作を考えています。学籍番号そのものを入力させることも考えましたが、まだ生徒本人が学籍番号を憶えていないので止めました。学籍番号とパスワードのセットを入力するのがベストだと思います。
入力の動作を考えると、ドロップダウンで学年やクラスを選択するのが良さそうです。しかし、出席番号は1から40まであるのでドロップダウンでは長すぎます。キーボードから入力してもらいましょう。
form 文を使って以下のようなソースを作りました。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html lang="ja"> <head> <title>授業評価システム</title> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> </head> <body> <div align=center><h1>授業評価システム</h1> <p>学年・クラス・番号を入力してください</p> <form action="kojin.php" method="post"> <p> 学年: <select name="nen"> <option value="3">3</option> <option value="2">2</option> <option value="1">1</option> </select> クラス: <select name="class"> <option value="1">A</option> <option value="2">B</option> <option value="3">C</option> <option value="4">D</option> <option value="5">E</option> <option value="6">F</option> <option value="7">G</option> <option value="8">H</option> <option value="9">Z</option> </select> 番号<input type="text" name="shussekibango" size="2">(半角) </p> <input type="submit" value="送信"> <input type="reset" value="リセット"> </form> </div> </body> </html> |
最初の
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
はドキュメントタイプの宣言ですね。
head の中の
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
では、Windows ベースで作るので、シフトJIS であることを言っています。
<form action="kojin.php" method="post">
</form>
の間が入力のフォーム文です。
action="kojin.php"
は submit をしたときに呼び出されるページを表しています。
method="post"
は、データを送信する方式が post であることを示しています。他にも get もあります。get は色々と制約があるので post が良いようです。
学年:
<select name="nen"><option value="3">3</option></select>
<option value="2">2</option>
<option value="1">1</option>
ここがドロップダウンリストになっています。select 文を使います。ややこしいですが、<option>と</option>で括った「3」が画面上に表示されます。この「3」を選ぶと、「nen」と名前を付けたものとしてvalue="3"の部分の「3」が値としてセットされます。つまり「nen = 3」となります。
クラス:
<select name="class">ここは同様ですが、表示で「A」となっているものが選択されると「class」の値が「1」に、つまり「class = 1」になります。「B」が選択されると「class」の値が「2」なります。<option value="1">A</option></select>
<option value="2">B</option>
<option value="3">C</option>
<option value="4">D</option>
<option value="5">E</option>
<option value="6">F</option>
<option value="7">G</option>
<option value="8">H</option>
<option value="9">Z</option>
これは以前に書いたデータベース内部処理での値にしているためです。また「Z」の「9」はメンテナンス用として作ったものです。あまり関係ありません。
番号<input type="text" name="shussekibango" size="2">(半角)
番号は直接入力するため type="text" としてテキストボックスを表示させます。サイズは size="2" です。ここで「39」などと入力すると、「shussekibango = 39」ということになります。
<input type="submit" value="送信">
<input type="reset" value="リセット">
これによって「送信」と表示されたボタンと「リセット」と書かれたボタンが並びます。「送信」ボタンを押すと「submit」されたことになり、例えば
nen=1
class=8
shussekiban=39
という値をセット、post して、「kojin.php」を呼び出します。「リセット」ボタンを押すと<form>内の値が初期値に戻ります。
これを画面表示すると以下のようになります(ここで送信ボタンを押しても何もなりません)。
授業評価システム 学年・クラス・番号を入力してください . |
単純ですが、最初の画面はこれで良さそうです。
2006年07月08日
授業評価システム内容(4)データ修正
授業評価システム内容(1)データベース設計
授業評価システム内容(2)テーブル作成インポート
授業評価システム内容(3)SQLのテスト
実は、以前に取り込んだデータには不必要なものが入っていました。
講座受講データの中には授業評価とは関係のない「朝SHR」があるのです。
また、教員マスターには転勤・退職された先生も入っています。
後者に関しては、検索条件には出てこないので、特に問題はありませんが、前者は評価対象として表示されてしまって具合がよくありません。
そこで、朝SHRの受講データの削除をしてみます。
SHRは「9100000」以上「9400000」未満と分かっています。そこで、次のようなSQLを使いました。
mysql> DELETE FROM
-> kozajuko
-> WHERE
-> koza_bango BETWEEN 9100000 AND 9399999
-> ;
Query OK, 1900 rows affected (0.02 sec)
生徒の受講データから1900のデータが削除されました。
さて、ここで一つ問題が発生しました。
続きを読む
授業評価システム内容(2)テーブル作成インポート
授業評価システム内容(3)SQLのテスト
実は、以前に取り込んだデータには不必要なものが入っていました。
講座受講データの中には授業評価とは関係のない「朝SHR」があるのです。
また、教員マスターには転勤・退職された先生も入っています。
後者に関しては、検索条件には出てこないので、特に問題はありませんが、前者は評価対象として表示されてしまって具合がよくありません。
そこで、朝SHRの受講データの削除をしてみます。
SHRは「9100000」以上「9400000」未満と分かっています。そこで、次のようなSQLを使いました。
mysql> DELETE FROM
-> kozajuko
-> WHERE
-> koza_bango BETWEEN 9100000 AND 9399999
-> ;
Query OK, 1900 rows affected (0.02 sec)
生徒の受講データから1900のデータが削除されました。
さて、ここで一つ問題が発生しました。
続きを読む
2006年07月07日
本日情報の考査!
定期考査問題自体は火曜日頃にはほぼできあがっていたのですが、いろいろ微調整をしていたら、印刷は昨日8時までかかってしまいました。問題用紙2枚(うち1枚は両面刷り)、解答用紙1枚を640人分は、かなりの時間がかかりました。印刷に関しては相棒がプロなので、私はその間お片付けをしたり袋詰めをしたりしていました。
今日の出来はと言うと、そこそこ良いような感じです。生徒達は「思った以上に難しかった」「なめてた」という反応でした。そこそこはできてもやはり勉強をしないとできない問題もださないといけませんからね。
今日はずっと来年度の教科書選定をしていました。ざっとは見ていましたが決めるとなると悩むものです。書類作成にも時間がかかりました。それ以上に、今日が締め切りとあって、いろいろな先生から質問を受け(私は担当ではないんですが、情報科準備室が職員室と隣接しているので聞きやすいようです)、度度中断して思考がなかなかまとまりませんでした。
定期考査は今日が初日。月・火・水と続き、木は実力テスト、金は午前中授業を行い、午後全校集会で夏休みに突入します。その代わり、8月の最後に授業が開始となります。
夏期休業が始まってすぐに1年生は勉強合宿、そのあとクラスごとに移動教室が連続します。この一クラスに引率します(二泊三日)。
そして7月末から一週間IT研修会の講師が待っています。この研修のためのテキスト作りを今の試験中から開始しなければ間に合いません。
休む間もなし……。
今日の出来はと言うと、そこそこ良いような感じです。生徒達は「思った以上に難しかった」「なめてた」という反応でした。そこそこはできてもやはり勉強をしないとできない問題もださないといけませんからね。
今日はずっと来年度の教科書選定をしていました。ざっとは見ていましたが決めるとなると悩むものです。書類作成にも時間がかかりました。それ以上に、今日が締め切りとあって、いろいろな先生から質問を受け(私は担当ではないんですが、情報科準備室が職員室と隣接しているので聞きやすいようです)、度度中断して思考がなかなかまとまりませんでした。
定期考査は今日が初日。月・火・水と続き、木は実力テスト、金は午前中授業を行い、午後全校集会で夏休みに突入します。その代わり、8月の最後に授業が開始となります。
夏期休業が始まってすぐに1年生は勉強合宿、そのあとクラスごとに移動教室が連続します。この一クラスに引率します(二泊三日)。
そして7月末から一週間IT研修会の講師が待っています。この研修のためのテキスト作りを今の試験中から開始しなければ間に合いません。
休む間もなし……。
またもトラックバックスパムでした。
以下禁止IPです。
216.255.179.222
216.255.179.221
216.255.179.220
216.255.179.219
216.255.179.218
216.255.189.102
216.255.189.101
216.255.189.100
216.255.189.99
216.255.189.98
216.255.179.222
216.255.179.221
216.255.179.220
216.255.179.219
216.255.179.218
216.255.189.102
216.255.189.101
216.255.189.100
216.255.189.99
216.255.189.98
2006年07月06日
授業評価システム内容(3)SQLのテスト
授業評価システム内容(1)データベース設計
授業評価システム内容(2)データベース作成とテーブル作成、インポート
データが入ったので、まずは勉強中のSQLを実行してみます。
分かっている学籍番号から生徒氏名を表示させてみます。
mysql> select * from kisomaster where bango='(学籍番号)';
+----------+-------------+
| bango | namae |
+----------+-------------+
|(学籍番号)| 情報 太郎 |
+----------+-------------+
1 row in set (0.00 sec)
ちゃんと(学籍番号)に対応する氏名が表示されます。
次に、その学籍番号の生徒の学年、クラス、番号を表示させます。
mysql> select * from zaiseki,kisomaster
-> where zaiseki.bango = kisomaster.bango and zaiseki.bango = (学籍番号)
-> ;
+----------+---------+------+-------------+----------+-------------+
| bango | gakunen | kumi | shussekiban | bango | namae |
+----------+---------+------+-------------+----------+-------------+
|(学籍番号)| 1 | 8 | 39 |(学籍番号)| 情報 太郎 |
+----------+---------+------+-------------+----------+-------------+
1 row in set (0.01 sec)
続きを読む
授業評価システム内容(2)データベース作成とテーブル作成、インポート
データが入ったので、まずは勉強中のSQLを実行してみます。
分かっている学籍番号から生徒氏名を表示させてみます。
mysql> select * from kisomaster where bango='(学籍番号)';
+----------+-------------+
| bango | namae |
+----------+-------------+
|(学籍番号)| 情報 太郎 |
+----------+-------------+
1 row in set (0.00 sec)
ちゃんと(学籍番号)に対応する氏名が表示されます。
次に、その学籍番号の生徒の学年、クラス、番号を表示させます。
mysql> select * from zaiseki,kisomaster
-> where zaiseki.bango = kisomaster.bango and zaiseki.bango = (学籍番号)
-> ;
+----------+---------+------+-------------+----------+-------------+
| bango | gakunen | kumi | shussekiban | bango | namae |
+----------+---------+------+-------------+----------+-------------+
|(学籍番号)| 1 | 8 | 39 |(学籍番号)| 情報 太郎 |
+----------+---------+------+-------------+----------+-------------+
1 row in set (0.01 sec)
続きを読む
授業評価システム内容(2)データベース作成とテーブル作成、インポート
前回
授業評価システム内容(1)データベース設計
データベースの設計が済んだら、実際にテーブルを作成します。その前に、「データベース」を作ります。
mysql.exe -u root -p
で MySQL monitor をユーザーrootで起動してパスワードを入れます。
mysql> create databese gakuseki;
と入力して「gakuseki」データベースを作成します。
mysql> use gakuseki;
と入力して「gakuseki」を使うぞと指定します。その後、
mysql> create table kisomaster (bango int,shimei char(30));
mysql> create table zaiseki (bango int, gakunen int, kumi char(8), shussekiban int);
mysql> create table shokuinmaster (shokuin_bango int,shokuin_mei char(30));
mysql> create table kozatanto (shokuin_bango int,koza_bango int);
mysql> create table kozadata (koza_bango int,kamoku_bango int);
mysql> create table kozadata (koza_bango int,kamoku_bango int,kozamei char(30));
mysql> create table kozajuko (koza_bango int,bango int,kaishi date,owari date);
mysql> CREATE TABLE hyoka_test (renban int,tourokubi date,bango int,koza_bango int,question int,answer1 int,answer2 text);
と入力して、すべてのテーブルを作成します。本当はここまでも紆余曲折がありましたが、省略します。実はこのときはインデックス等は考えていませんでした。
ここで「show tables;」と入力すると、
mysql> show tables;
+--------------------+
| Tables_in_gakuseki |
+--------------------+
| hyoka_test |
| kamokudata |
| kisomaster |
| kozadata |
| kozajuko |
| kozatanto |
| shokuinmaster |
| zaiseki |
+--------------------+
8 rows in set (0.11 sec)
と表示され、テーブルが作成されていることが確認できます。
次にはデータの流し込みです。学籍システムから落としたCSVファイルを、MySQL に取り込まなければなりません。ところがここでつまづきました。コマンドとしては分かります。
MySQL がインストールされているdataフォルダ、ここでは c:\mysql\data\(データベース名) フォルダに取り込むファイルをコピーしておき、
LOAD DATA INFILE 'ファイル名' INTO TABLE テーブル名;
で流し込むことができるはずです。しかしなぜかうまくとりこめません。そう、MySQL で取り込むには、CSV ではなく、タブ区切りのファイルでなければならなかったのです。学籍システムがCSVで出したり入れたりしていたので、なぜかそのままできるような錯覚をしていたのです。
エクセルで保存する際「テキスト(タブ区切り)(*.txt)」を選ぶひつようがあります。
私は正規表現の使えるエディタ(秀丸エディタとさくらエディタを併用しています)で、「,」を「\t」で置換します。
mysql> load data infile 'gakusekikiso.txt' into table kisomaster;
などと入力します。
これでようやくとりこむことができました。前述の文字化けの問題と、この問題で最初の段階で2日ほど躓いていました。
授業評価システム内容(1)データベース設計
データベースの設計が済んだら、実際にテーブルを作成します。その前に、「データベース」を作ります。
mysql.exe -u root -p
で MySQL monitor をユーザーrootで起動してパスワードを入れます。
mysql> create databese gakuseki;
と入力して「gakuseki」データベースを作成します。
mysql> use gakuseki;
と入力して「gakuseki」を使うぞと指定します。その後、
mysql> create table kisomaster (bango int,shimei char(30));
mysql> create table zaiseki (bango int, gakunen int, kumi char(8), shussekiban int);
mysql> create table shokuinmaster (shokuin_bango int,shokuin_mei char(30));
mysql> create table kozatanto (shokuin_bango int,koza_bango int);
mysql> create table kozadata (koza_bango int,kamoku_bango int);
mysql> create table kozadata (koza_bango int,kamoku_bango int,kozamei char(30));
mysql> create table kozajuko (koza_bango int,bango int,kaishi date,owari date);
mysql> CREATE TABLE hyoka_test (renban int,tourokubi date,bango int,koza_bango int,question int,answer1 int,answer2 text);
と入力して、すべてのテーブルを作成します。本当はここまでも紆余曲折がありましたが、省略します。実はこのときはインデックス等は考えていませんでした。
ここで「show tables;」と入力すると、
mysql> show tables;
+--------------------+
| Tables_in_gakuseki |
+--------------------+
| hyoka_test |
| kamokudata |
| kisomaster |
| kozadata |
| kozajuko |
| kozatanto |
| shokuinmaster |
| zaiseki |
+--------------------+
8 rows in set (0.11 sec)
と表示され、テーブルが作成されていることが確認できます。
次にはデータの流し込みです。学籍システムから落としたCSVファイルを、MySQL に取り込まなければなりません。ところがここでつまづきました。コマンドとしては分かります。
MySQL がインストールされているdataフォルダ、ここでは c:\mysql\data\(データベース名) フォルダに取り込むファイルをコピーしておき、
LOAD DATA INFILE 'ファイル名' INTO TABLE テーブル名;
で流し込むことができるはずです。しかしなぜかうまくとりこめません。そう、MySQL で取り込むには、CSV ではなく、タブ区切りのファイルでなければならなかったのです。学籍システムがCSVで出したり入れたりしていたので、なぜかそのままできるような錯覚をしていたのです。
エクセルで保存する際「テキスト(タブ区切り)(*.txt)」を選ぶひつようがあります。
私は正規表現の使えるエディタ(秀丸エディタとさくらエディタを併用しています)で、「,」を「\t」で置換します。
mysql> load data infile 'gakusekikiso.txt' into table kisomaster;
などと入力します。
これでようやくとりこむことができました。前述の文字化けの問題と、この問題で最初の段階で2日ほど躓いていました。
パソコン買いました
といっても自分のではありません。妻のものです。
それまで妻が使っていたのは MOUSE COMPUTER のなんとか300という初期型。たしか、AMD の500MHz、128MB のメモリに自分で持っていたWindowsME を載せていました。とにかく遅いのですが、妻はインターネットで通販をしたり、インターネットでオークションをしたり、インターネットのメールをしたり……と用途が限られていて他のパソコンも使ったことがないので、「こんなもの」と思っていたようです。
しかし、最近突然再起動したり、「不正な……」のエラーが発生して全く言うことを聞かなくなったりと、あきらかにハードウェア的な故障(メモリ関係か、CPU周りの熱暴走と疑っています)と思われる状態になりました。もともと本体4万円弱のものに、多少増設したりして使っていたものなので、苦労して故障箇所を見つけて部品を探そうとしても高くつくのが目に見えています。ならばと思って、思い切って買ってしまいました。
NEC VALUESTAR G タイプC(テレビ機能無し)
という渋い選択です。
CPU:Celeron D 3GHz
OS:WindowsXP Professional(ミニマムソフトウェア)
MEM:1GB DDR2 SDRAM
HDD:160GB
DVDマルチドライブ
ディスプレイ無し。無線無し。Office無し。FDD無し。カードスロット無し。ディスプレイ無し。安心保障サービス無し。
「今ならクーポン使用」で、しめて10万強でした。
もともと液晶17インチディスプレイがあったのでディスプレイは不要。妻の使い方ならほとんどのものは不必要。ですが、メモリだけはふんだんに欲しいということと、何より「水冷式の静音パソコン」が欲しかったのです。なぜなら妻がパソコンを触るのはすぐそばで3歳と1歳のこどもがぐーぐー寝ているからです。
さすがNEC、いたせりつくせりのマニュアル。しっかりした筐体。素直な造り。ほどよいセンス。そして本当に「静音」でした。今までは「ウーン」と唸っていた音が全くしなくなり、ディスプレイを消してしまうと起動しているのかどうかすら分からなくなるぐらいです。
私が使うのでしたら、Pentium D か、HTテクノロジ Pentium 4 を選んだし、グラフィックも nVidia GeForce、メモリカードスロットを内蔵させたと思います。たぶん5〜8万ぐらい高く付いたのではないかと思います。でも妻の使い方ではオーバースペックです。静音でなければ5万円強でemachinesでも良かったのですが。
妻が使用していわく「インターネットが凄く速くなった」そうです。それはそうでしょう。うちは Yahoo!BB 12M で実質 8M ぐらい出ています。でも今までのマシンでは、1M ぐらいしか出ていませんでしたし、メモリが少ないので画面処理が追いつかなかったでしょうから、かなり遅かったはずです。
これからもインストールするソフトウェアは極力少なくしてシンプル構成でいくつもりです(私がいたずらしなければ……(笑))
それまで妻が使っていたのは MOUSE COMPUTER のなんとか300という初期型。たしか、AMD の500MHz、128MB のメモリに自分で持っていたWindowsME を載せていました。とにかく遅いのですが、妻はインターネットで通販をしたり、インターネットでオークションをしたり、インターネットのメールをしたり……と用途が限られていて他のパソコンも使ったことがないので、「こんなもの」と思っていたようです。
しかし、最近突然再起動したり、「不正な……」のエラーが発生して全く言うことを聞かなくなったりと、あきらかにハードウェア的な故障(メモリ関係か、CPU周りの熱暴走と疑っています)と思われる状態になりました。もともと本体4万円弱のものに、多少増設したりして使っていたものなので、苦労して故障箇所を見つけて部品を探そうとしても高くつくのが目に見えています。ならばと思って、思い切って買ってしまいました。
NEC VALUESTAR G タイプC(テレビ機能無し)
という渋い選択です。
CPU:Celeron D 3GHz
OS:WindowsXP Professional(ミニマムソフトウェア)
MEM:1GB DDR2 SDRAM
HDD:160GB
DVDマルチドライブ
ディスプレイ無し。無線無し。Office無し。FDD無し。カードスロット無し。ディスプレイ無し。安心保障サービス無し。
「今ならクーポン使用」で、しめて10万強でした。
もともと液晶17インチディスプレイがあったのでディスプレイは不要。妻の使い方ならほとんどのものは不必要。ですが、メモリだけはふんだんに欲しいということと、何より「水冷式の静音パソコン」が欲しかったのです。なぜなら妻がパソコンを触るのはすぐそばで3歳と1歳のこどもがぐーぐー寝ているからです。
さすがNEC、いたせりつくせりのマニュアル。しっかりした筐体。素直な造り。ほどよいセンス。そして本当に「静音」でした。今までは「ウーン」と唸っていた音が全くしなくなり、ディスプレイを消してしまうと起動しているのかどうかすら分からなくなるぐらいです。
私が使うのでしたら、Pentium D か、HTテクノロジ Pentium 4 を選んだし、グラフィックも nVidia GeForce、メモリカードスロットを内蔵させたと思います。たぶん5〜8万ぐらい高く付いたのではないかと思います。でも妻の使い方ではオーバースペックです。静音でなければ5万円強でemachinesでも良かったのですが。
妻が使用していわく「インターネットが凄く速くなった」そうです。それはそうでしょう。うちは Yahoo!BB 12M で実質 8M ぐらい出ています。でも今までのマシンでは、1M ぐらいしか出ていませんでしたし、メモリが少ないので画面処理が追いつかなかったでしょうから、かなり遅かったはずです。
これからもインストールするソフトウェアは極力少なくしてシンプル構成でいくつもりです(私がいたずらしなければ……(笑))