【コラム】

日本語で10行プログラミング

90 10行プログラミング最終回~10行プログラミングを振り返って

  • >
  • >>

90/90

長い間続いた本連載も、90回目の今回で一区切りつけることとなりました。10行という限られたプログラムながら、なでしこを使えば、仕事の自動化に役立つことが十分説明できたことを証明できたと思っています。時には、10行に収めるために少々無理をしましたが、10行だからこそ、ポイントを絞って、仕事の自動化に役立つノウハウを紹介できました。

区切りとなる今回は、10行プログラミングを振り返りつつ、今後の開発について書いてみたいと思います。

10行プログラミングを振り返って

楽しかったこと・大変だったこと

10行プログラミングを書くのは、とても楽しい時間でした。とにかく、なでしこを使うことで、非常に難しい処理が10行という短いプログラムで書くことができた時には、「なでしこ、すごい!」と、自画自賛し誇らしい気持ちになったものです。そしてネットの評判で「こんな処理が数行の日本語で書ける」と話題に上るのがとにかく嬉しかったです。

しかし、面白いネタが思い浮かばない時は、非常に苦しく悩むこともありました。締め切りに追われた漫画家や小説家はこんな心境だったのか!と作家気分も十分に味わうことができたのも、大きな収穫(?!)でした。

10行プログラミングを書いていて気づいたこと

10行プログラミングを書いていて、10行であるがゆえの壁に何度かぶつかりました。それは、Windowプログラミングです。ウィンドウ上に独自のエディタやボタンを配置していくと、それだけで、あっという間に10行を超えてしまいます。これは、プログラムと言うよりデザインなのですが、それでも、10行以内に収めて書く必要があります。

そのために、10行プログラミングでは、デザインが不要な出来合いのモーダルダイアログを利用する命令、「尋ねる」や「二択」、「メモ記入」や「項目記入」などを使うことが多かったです。

これらの命令は、イベントドリブンにより進行するWindowプログラミングと無縁で、常に手順を、上から下へと順々に記述していくことができます。プログラムを短くする上でも、分かりやすいプログラムを書く上でも非常に重宝しました。

それから、90回も原稿を書いているので当然ですが、連載当初よりも、なでしこが活躍できる現場を、明確に答えられるようになってきました。

それは、以下の場面です。

  • 定型処理の自動化を行う時
  • プログラミングの学習をしたい時
  • 使い捨てプログラムを書く時

定型処理は言うまでもありません。なでしこに用意されている1,000個を超える命令のほとんどが、定型処理のために用意されているものです。

そして、プログラミングの学習においては、日本語が持つ可読性をもってすると、高い学習効果を発揮することができます。

あと、なでしこでは、10行程度の使い捨てプログラムを書くのが非常に得意です。それは、本連載で十分にアピールできたのではと思っています。また、連載と関係なく、私自身も1回実行して終わりというプログラムを非常によく使うのです。

私がよく書く使い捨てプログラムは、クリップボードの内容を整形する場合です。ここでも、なでしこのダイアログ「メモ記入」命令を使って、整形した内容をテキストエディタに表示させることができます。また、送るメニューのフォルダを開く時などもなでしこを使います。こうなると既になでしこがランチャーの代わりです。(ちなみに、送るメニューのフォルダなら「SENDTOパスを起動。」と書いて実行するだけです。)

10行プログラミングが「なでしこ」に与えた影響

10行プログラミングは、私にとっても、なでしこにとっても、とても素晴らしい企画でした。なでしこは、「誰でも簡単に日々の定型作業の自動化を行う」を目標に開発していました。そのため、10行プログラミングを執筆していて、「もっと簡単・簡潔に書けるようにしたい、もっと簡単に書けるはず」と、原稿を書きながら機能や命令を追加したこともありました。10行プログラミングの原稿を書く作業の中で、常に、なでしこを使いやすくする工夫について考えることができたのです。なでしこの細かい使い勝手は、この原稿があったからこそ、向上したと言えるかもしれません。この場を借りて、なでしこを育ててくれたマイコミジャーナルと読者の皆様に感謝したいと思います。

今後について

なでしこは進化し続ける

連載は一区切りですが、当然ながら、なでしこのサポートは継続されますし、バージョンアップも行います。というのも、私は、日々なでしこを使って仕事をしているからです。私がなでしこを使い続ける限り、バージョンアップは行われますし、最近では、複数人で継続して開発を行う体制も整ってきました。

なでしこで実現させたいアイデアも、まだまだあります。いくつか挙げてみると、最近では、Webサービスと連携するWeb APIを利用することで、これまで以上に面白いことが実現できるようになっています。そこで、いろいろな Web サービスと簡単に連携できる機能もつけていきたいと思っています。それから、大量のデータを効率的に扱えるように、データベースとの連携をもっと強化したいと思っています。これまでも、SQLiteやAccessなどのデータベースと、SQLを介しての対話はできました(本コラムでも、過去に郵便番号のデータベースを作ったりしましたね。)。しかし、SQLを書かなくても、もっと気軽に使える仕組みを提案したいと思っています。データベースアクセスを簡単にするような仕組みを導入したりして、自然な日本語でデータベース操作できるようにしたいと思っています。

なでしこの開発目標の「日々の定型作業の自動化」もハードやOSの進化に合わせて少しずつ変化してきていますので、新しい状況に合わせて、なでしこを改良し続けていきたいと思います。ぜひ、なでしこの今後も楽しみにしていてください。

次回予告、「葵」について

現在、IPAの未踏プロジェクトで『Web開発環境「葵」』を開発中です。これは、「Webなでしこ」とも言える存在です。

日本語プログラミング言語で、ブログパーツなどの、Webアプリケーションを開発することができるようにするものです。

完成したら、また、こちらで葵のお話をしたいと思います。それまで、暫くのお別れです。次は「葵」でお会いしましょう!

葵のWebサイト

  • >
  • >>

90/90

インデックス

連載目次
第90回 10行プログラミング最終回~10行プログラミングを振り返って
第89回 フォルダ一括圧縮
第88回 テキストエディタに貼り付けたExcelの表を見やすく整形する
第87回 一発加算電卓
第86回 ブログにHTMLソースを貼れるよう変換する
第85回 カード式メモ帳
第84回 時間電卓を作る
第83回 アスキーアート地図エディタ
第82回 縦書き風テキスト作成ツール
第81回 Excelシートの比較を行う
第80回 ノルマ計算機
第79回 高速バックアップ
第78回 単語帳に読み上げ機能をつける
第77回 ホームページのバックアップツール
第76回 英単語帳を作成する(その2)
第75回 英単語帳を作成する(その1)
第74回 メモリカード挿入でデータをコピーするツール
第73回 モールス信号ソフトの作成
第72回 フォトCDランチャーを作る
第71回 残暑見舞い作成ツールを作る
第70回 画面キャプチャプログラムを作る
第69回 様々なルールに対応するビンゴシートのプログラムを作る
第68回 ビンゴカードを作る
第67回 ビンゴマシンを作る
第66回 パスワードマネージャの作成
第65回 アンドゥ機能をつける
第64回 テキストの比較ツール~FCフロントエンド
第63回 システム情報クリップ
第62回 飲み会電卓を作る
第61回 バイナリエディタの作成
第60回 メールフッタ作成ツール(その2)
第59回 メールフッタ作成ツール(その1)
第58回 プロセス監視ツールを作成する
第57回 TODOメモを作る
第56回 携帯電話をテキストリーダーに使う(2)
第55回 携帯電話をテキストリーダーに使う(1)
第54回 「オープンソースカンファレンス2006 Tokyo/Spring」に参加しました
第53回 10行でチャットソフトを作る(2)
第52回 10行でチャットソフトを作る(1)
第51回 プレゼンタイマーを作る
第50回 カラーピッカーを作る
第49回 簡単な暗号作成プログラム
第48回 お手軽データベース「SQLite」を使う
第47回 CUI(コマンドライン)環境を拡張する
第46回 デスクトップ画像を記録するプログラム
第45回 市外局番で住所を調べる検索プログラム
第44回 コマンドライン型ランチャーを作る
第43回 文字数カウンタを作る
第42回 日本語でバッチ処理
第41回 イベントドリブンと電光掲示板
第40回 なでしこでWindowsの「送る」メニューを使いやすくする
第39回 同人音楽即売会M3に参加して思ったこと
第38回 画像のサムネイル作成
第37回 なでしことExcelで行事予定カレンダーを作ろう
第36回 なでしことExcelで月間カレンダーを作ろう!
第35回 なでしことExcelで年間カレンダーを作ろう
第34回 急な電話にも安心、意外と便利な「手書きメモ」
第33回 携帯電話のアドレスデータを取り出す
第32回 記念日カウンターを作る
第31回 顔文字入力支援ソフト
第30回 アスキーアートのためのエディタ
第29回 HTTPサーバーを作る
第28回 手紙のあいさつ文を作成するプログラム
第27回 ギターコードの構成音を表示
第26回 音楽の再生スピードを変える
第25回 ミニスライドショーを作る
第24回 撮影日で写真を振り分け
第23回 PSP用テキスト画像の作成
第22回 金種計算
第21回 パスワードを自動生成
第20回 携帯メールでWEBを更新する
第19回 時間の使い方を反省するプログラム
第18回 ウェブを画像でキャプチャ
第17回 ラーメンタイマーを作る
第16回 画像のトリミングツール
第15回 ごみの分別カレンダー
第14回 デスクトップ検索ツール
第13回 フォント見本帳
第12回 セピア調の画像ビューワー
第11回 健康チェック
第10回 10行で壁紙にらくがきする
第9回 WEBサイトの更新チェッカー
第8回 WEBページのリンク切れをチェック その2
第7回 WEBページのリンク切れをチェック
第6回 音楽ファイルの整理 - メディアタグから自動フォルダ分類
第5回 請求書の自動作成・印刷~Word連携技
第4回 重要データのバックアップ術
第3回 10行ニュースリーダーを作ろう!
第2回 なでしことは その2
第1回 なでしことは? その1

もっと見る

人気記事

一覧

新着記事