夏休みの工作

今年は夏休みの工作をやろうと思います。というのも先日購入した書籍がいたく気に入ったからです。

CPUの創り方

渡波郁著

毎日コミュニケーションズ

isbn:4839909865

なかなか書店で買う勇気の出ない表紙ではありますし、アマゾンでも購入に2回「まだ買わない」を選んだのですが、結局購入しました。

この本をちょっと読んだら、高校時代に後輩と一緒にデジタル回路について勉強し、大学時代にはサークルの仲間と68000のコンピューターを製作したのを懐かしく思い出しました。

読んでみてわかったのが、かつていい加減にやっていたデジタル回路の設計について、懇切丁寧にわかりやすく解説していたことです。人は見かけによらないというか、本も表紙だけではわかりません。著者本人も理解できていないようなロクでもない専門書よりはるかに良い出来だと思います。

論理回路はともかく、抵抗やコンデンサの働きや値の決定方法など、高校時代にこんな本があって読んでいれば将来も違ったかな~と思わせるほどです。

ということで今度秋葉原に行って部品を買い、組み立ててみようと思います。きっと動かないだろうとは思いますが、昔を思い出しながら失敗も楽しもうと思います。

ワークキャンプに関する講演会

今日はSCI JapanというNGOの方を招いてワークキャンプについて講演をしていただきました。NGOの代表の方だけでなく、スリランカの津波被災地にボランティアとして活動した学生さんの話も伺うことができました。

詳細については別の機会に譲るとして、自分が汗を流して活動することの価値が充分に伝わってくる、とても素晴らしい内容でした。

残念だったのは参加した学生さんの数が少なかったこと。今回はいろいろと考えて学生さんへの接近を試みたのですが、結局のところ口コミ程度にしか広がりませんでした。今後のいろいろな計画を考えると、こちらはなかなか難しい問題になりそうです。

http://www.sci-japan.org/

SCI Japanのメインページは上記なのですが現在工事中ということで、

http://www.sci-japan.org/HP2005/HP2005.htm

のほうが中身が見えます。

プログラミング初心者向けの書籍は?

昨日の日記はSqueakやSmalltalk/80関係の書籍の「はじめに」の辺りにある「この本の対象は?」をずらずらと並べてみたものです。

前期が終わりに近づき、そろそろ後期の授業の準備にかかろうというところで、「ソフトウェア開発の授業で使う言語は何にしようか?」という毎年悩む問題につきあたりました。

前期にやっている設計の授業で、例年のように進行が遅れてしまい、プログラム言語にはあまり依存しない段階で終わることになったのは内心ありがたいのですが、後期では言語を定めないと実装に進めません。

プログラムとしては比較的小規模なスタンドアロンアプリケーションを作るので、オブジェクト指向系であればどんな言語でもいいのですが、できれば作っている状態や動作している状態の見えやすい言語がいいですね。

となれば断然Smalltalk/80系の環境が良いと個人的に思っていますが、言語習得のためのテキストとして本を選ぶのに困ってしまうのです。というのも、学生さんのプログラミング能力にはかなりばらつきがあるので、なるべくプログラミング初心者を対象として実習を進めていきたいのですが、なかなか適切な書籍がありません。

SqueakやSmalltalk/80関係の見ると、単なる言語解説書を越えたリッチな内容を持つ名著が多く、持っていて良い本だと思うのですが、いかんせん初心者にはとっつきにくい感があります。昨日のリストのように対象読者を見ても、明確に(?)初心者向けを謳っているのは「ウィンストンのSmalltalk」だけで、選べる状況にないのは残念です。

オブジェクト指向を教えるために、CやらC++やBasicを教えてからというのは、「最初に学んだ言語が後の思考を左右する」ということからも避けたいところです。だいいち、Smalltalk/80の文法を教えるのに、これはif文と同じだよとかfor文と同じだよとか言って理解させようとするのは胸がチクチク痛みます。

メッセージパッシングや情報隠蔽といった考え方は、難解でもなく、それなりに理解できるしくみだと思うので、この辺の考え方から徐々に環境の使い方や文法の解説に進むようなものがあるといいな~。と思うこのごろです。

Squeakプログラミング入門

ジーン・コリエネック他著、阿部和広監修

2004年4月、株式会社エスアイビー・アクセス

isbn:4434043307

訳者まえがきより

本書は、オブジェクト指向についての初心者を対象に、Squeakが持つさまざまなプログラミング環境を説明すると同時に、オブジェクト指向について身近な例題を使いながら解説し、その根底に流れる考え方を説明しようとするものです。…

はじめにより

…主人公はジムという名のプログラマで、オブジェクト指向パラダイム、Smalltalkプログラミング、そしてSqueak環境に関して、その必要性を何となく感じています。…

ケント・ベックのSmalltalkベストプラクティス・パターン

ケント・ベック著、梅澤 真史他訳

2003年4月、ピアソン・エデュケーション

isbn:4894717549

はじめにより

学習-もしもSmalltalkを学習中なら、これらのパターンはシステムを効果的に利用できるようになるための大きな手助けとなってくれるでしょう。…この本の他にSmalltalkのちゃんとした入門書が必要になるでしょう。それらと一緒にこの本を読むことで学習効果を劇的に向上させることができるでしょう。

Squeak入門

Mark Guzdial他著、軋音組訳

2003年3月、株式会社エスアイビー・アクセス

isbn:4434029479

本書(翻訳書)の構成

本書は、Squeakをプログラマやメディアクリエイタのための紹介した章(第2章~第5章)と、システムプログラマの向けに解説した章(第1章、第6章、第7章)からなっています。…

第2章より

この章の対象となるのは、関数や条件分岐、ループ、変数、型などが説明できる、中級から上級までのプログラマです。また、オブジェクト指向言語でプログラムしたことがあって、クラスや、インスタンス、メソッド、継承といった言葉が分かっていることを想定しています。…

ウィンストンのSMALLTALK

Patrick Henry Winston著、飯塚 富雄訳

1999年4月、アジソン・ウェスレイ・パブリッシャーズ・ジャパン

isbn:4795297355

訳者まえがきより

…最近では、”On to C++”、”On to C”、”On to Java”など、未経験のプログラミング言語を新たに習得したいと考えているプログラマに定評の入門書”On to …”シリーズの著者としても知られてきました。本書も、そのシリーズの一冊です。シリーズの他の著書と同様に、明快で簡潔なスタイルで書かれており、Smalltalkの入門書として最適です。…

Smalltalkのススメ

今野 睦他著

1997年6月、アジソン・ウェスレイ・パブリッシャーズ・ジャパン

isbn:4795297002

まえがきより

本書は、Smalltalkに初めて接する方が処理系を選択する際に役立つように、まず、Smalltalkの文法とクラスライブラリを概説し、次に各Smalltalk処理系の特徴について述べます。処理系の詳細情報やSmalltalkプログラミングに関しては「付録」に挙げた参考文献で補ってください。…

Smalltalkイディオム

青木 淳著

1997年2月、ソフト・リサーチ・センター

isbn:4915778819

はじめにより

…一度、何らかのプログラミング言語で、コンピュータソフトウェアの世界観が決定づけられてしまうと、そのプログラマの世界観は堅牢なものになってしまい、容易に変更することができません。…

…この本は、ぜひ、母国語としてのプログラミング言語を探し求めているプログラマに読んでいただきたいと思います。また、Basic、C++、Java、HTMLなどの多くのプログラミング言語をそこそこ操れるのだけれど、これぞという決め手の言語に欠けるプログラマにもお薦めします。…