30 年経った今でも QBasic は最高です



長男のノアは 3 か月前に 7 歳でした。もし彼が家族全員で Minecraft を 2 時間プレイできるのであれば、ためらうことなくそれを実行したでしょう。彼の人生の別の愛は、スーパーマリオメーカーです。私が彼の年齢で経験したレベルを彼がプレイしているのを見たとき、鳥肌が立ちました。約5か月前、私は家族を捨てて、ルーダム・ダレへの毎年恒例の巡礼に 出かけました。: ゲーム開発者のコ​​ンペティションでは、友達と一緒にアパートに閉じこもり、穴居人の状態に戻り、48 時間起きていて、ゼロから完成したゲームを作成します。私が自分の革新的な AAA ゲームを妻に誇らしげに見せたとき、Noah は自然に興味を持ちました。そこで、私は彼にコードの世界を紹介し、簡単な単語から実際のゲームを作成する方法を示しました (彼はただ読むことを学んだばかりです)。その日以来、ノアは私に、自分でビデオゲームを作る方法を教えてほしいと常に求めてきました。そして、次の 5 か月間、私は言語の聖杯/子供向け IDE を検索し、その興味の火花を忘れられない経験に変えたいと願っていました...



私の検索は、私を無限のフォーラムに導き、無数の推奨言語とプラットフォーム (SmallBasic、Pico-8、Smalltalk、Scratch など) を試しました。私は素晴らしい StackOverflow オラクルの質問をしましたが、役に立ちませんでした。5 か月後、私は残念な結論に達しました。私の数年間で得たものに匹敵するものはありませんでした。30 年経った今でも、QBasic はプログラミングの初心者にとって最適な言語です。



「神様、GOTOの使い方を教えないでください!」


10 PRINT " ,    ?!”
20 GOTO 10






はい、QBasic はひどい手続き型言語です。彼は、ほとんどの人が有害であると考えている概念を導入し、暗黙の宣言に不都合な構文を使用し、大文字と小文字を区別せず、その中のインデックスはゼロから始まらないなど、リストは無限です...スキルを開発するとき、何年にもわたる間違った練習を正すよりも、最初から正しい反射神経を発達させる方がはるかに優れています。このアドバイスに従って、私はおそらく、私が大好きな Ruby 言語の基本から始めるべきです。それにもかかわらず、これらの概念のほとんどは、ほとんどの QBasic の「危険信号」によって考慮されていますが、当時は次の目的がありました。言語をシンプルでアクセスしやすくすること。この原則は、柔軟性、複雑性、ロジックを優先して、他のすべての言語によって放棄されました。



今日、息子の 11 インチ HP Stream に QBasic をインストールしました。インストールは DOSBox を介して手動で行う必要がありました。彼がデスクトップ アイコンをダブルクリックすると、すぐに IDE が紹介画面で私たちを迎えて、たくさんの思い出がよみがえりました。





それから、私はノアに、プログラマーの秘密のサークルの全員が持つべき神聖な儀式があると言いました。それは、世界中のすべてのプログラマーを歓迎するプログラムで学び始めることです。私が式を口述している間、彼はゆっくりと各キーを探し、右手で魔法の言葉を注意深くタイプし PRINT "hello world"







ました. 彼は微笑んで私に 5 つ渡し、後で参照できるように小さなノートにコードを書き留めました。





さらにいくつかのコマンドを学びました: CLS、COLOR、PLAY、INPUT、IF。説明する必要はありません: 複雑さ、厄介な演算子、抽象的な概念、学ぶべきドキュメント、オブジェクト/クラス/メソッドの概念、インストールに必要なフレームワーク、IDE の大量のメニューやボタン、特別なキーワードや括弧。それは、最も純粋な単純さと形式のコードでした。



1 時間も経たないうちに、彼は自分のプログラムを作成しました。これは、コンピューターがあなたをどう思っているかを伝える、インタラクティブで信じられないほど洗練されたアプリケーションです。





... ノアが彼のいとこで親友のクリスチャンのために誇らしげに立ち上げたもの:





...そして、彼はそれがどのように機能し、コードが何をするのを簡単に説明 しました!





つまり、7 歳の息子はわずか 1 時間で、初めてのテキスト ゲームを作成できただけでなく、自分でプログラムを作成、コンパイル、実行するときに生じる喜びとスリルも感じました。ノートの 1 ページに収めるための追加ポイント:





私が世界で最高の仕事をしていると言われる理由を彼が理解してくれてとても嬉しかったです。



今、私が後悔している唯一のことは、30 年以上子供たちにとってより良いものを考え出すことができなかったことです: Qbasic には、シンプルなキーワードのセットが限られています (すべてのヘルプは 1 つの画面に収まり、F1 によって呼び出され、簡単な例!) は、視覚的なアーティファクトでコーダーの注意をそらすことはなく、非常にコンパクトで快適な開発環境を備えており、エラーを即座に表示し、1 つのキーを押すだけでコードをコンパイルおよび実行します。私たちは、より堅牢で複雑な言語/フレームワーク/IDE (もちろん、実用的なアプリケーションに不可欠です) を構築しましたが、QBasic よりもプログラミングの楽しさに直接アクセスする簡単な方法を考え出したことはありません。 .今日 QBasic を起動することでさえ、初心者にとっては困難な作業となっています。最新の Mac / PC / Linux マシンで実行されていますが、以前は 3.5 インチのフロッピー ディスクを A:\ ... に挿入するだけで十分でした。



しかし、ところで、十分な説教ですが、今日は、プログラミングの喜びと美しさで他の人の知り合いを祝う必要があります。



ほら!






広告



当社は、あらゆるプロジェクトに最新のレンタル サーバーを提供しています 数クリックで独自の料金プランを作成できます。最大構成は記録を破ります - 128 CPU コア、512 GB RAM、4000 GB NVMe! テレグラム チャットに



参加して ください






All Articles