SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

特集記事

プログラマーが小説を書くとは

プログラミングの経験を活かして異業種に挑む方法

  • X ポスト
  • このエントリーをはてなブックマークに追加

 プログラムを書く傍ら、12年ほど小説を書き続けて作家デビューが決まりました。こうした異業種参入の挑戦は、他の技術者の方にも参考になると思います。というわけで、「プログラマー的アプローチでの小説執筆」「執筆手順とプログラマー的ツールの使い方」の2点について、情報を共有したいと思います。

  • X ポスト
  • このエントリーをはてなブックマークに追加

プログラムと小説

 いつもは『マンガで分かるプログラミング用語辞典』を描いている、クロノス・クラウンの柳井です。松本清張賞の最終候補に残った私の小説が、文藝春秋から『裏切りのプログラム ハッカー探偵 鹿敷堂桂馬』として、8月27日に出版されました。

 実はプログラムやその解説書などを書きながら、12年ほど小説の新人賞に投稿を続けていました。そして50作以上書き、試行錯誤していました。その間、プログラマーならではのアプローチで、新人賞の攻略に挑んでいました。

 結局、賞を取れずにデビューとなりましたが、「プログラミングの経験を活かして異業種に挑む」というのは、CodeZineの読者の方々にも、興味のある話だと思います。というわけで、「プログラマーが小説を書くとは」というテーマで、以下の2点を書いていこうと思います。

  • プログラマー的アプローチでの小説執筆
  • 執筆手順とプログラマー的ツールの使い方

 さて、上記の本編に入る前に「なぜプログラムと小説か?」という話をします。理由は「ゲーム」です。

 私は子供時代、ゲーム少年でした。小学生時代は、ファミコンを買ってもらえず、友人の家で遊んだゲームを、家でボードゲーム化して遊んでいました。中学生から大学生の頃は、TRPG(テーブルトークRPG)にはまり、そのマスターをしながら、多くのシステムを作っていました。そして社会人になりゲーム会社に就職し、独立して会社を作り、最初に行ったことはボードゲームを作ることでした。

 ここまで書くと何割かの人が、「なぜプログラムと小説か?」の理由が分かると思います。ゲームのシステム作りの部分が「プログラム」へと繋がり、ゲームの物語の部分が「小説」へと変化していったわけです。

 なので私にとって、「プログラムと小説」は、根っこが同じ「ゲーム」の延長なわけです。そして、プログラムの方が先に仕事になり、小説はデビューまでに随分と時間が掛かりました。そのため、プログラマーとしての経験を活かして、小説に取り組むという流れになりました。そうした経緯で、異業種参入することになったわけです。

 というわけで、私が「プログラミングの経験を活かして小説に挑んで学んだこと」を書いていこうと思います。

プログラマー的アプローチでの小説執筆

小説というコード

 まず、プログラマーにとって小説とは何かという話をします。プログラマーにとって小説とは、プログラムのソースコードに該当するものです。

 執筆者は、ソースコードとして小説を書きます。このソースコードは、読者の脳内でコンパイルされて即時実行されます。つまり小説においては、読者が「コンパイラ兼実行環境」なわけです。

 このことは2つのことを意味します。「読者の脳で、コンパイルエラーが起きないようにコードを書く」こと、そして「読者の脳で、どういった実行処理が行われるかを想定してコードを書く」ことです。

 読者が誤読する文章や、誤字脱字が大量にある文章は、コンパイルエラーが生じる文章というわけです。

 また、グラフィックスのプログラムを書く際に、背景、中景、近景と描画順番を考えるように、小説の文章も、脳内にどのような情報を逐次与えていくかを考える必要があります。

 こうした「小説の文章」を書く際には、気をつけたいことがあります。小説は、文字ベースのストリームデータです。この文字をどのように脳内で処理させるかによって、文体を作り、読者に読書体験を与えていくことになります。

 そういう意味で、小説はインタラクティブなゲームよりも、音楽やアニメ、映画に近い媒体だと言えます。

 上記を踏まえて、プログラマーが小説を書く上での目標を2つ書きます。

  • 第一目標:読者の脳内コンパイラを通るコードを書く。
  • 第二目標:読者の脳内で展開するための、文章、演出、物語の技法を磨く。

会員登録無料すると、続きをお読みいただけます

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

次のページ
再現性

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
特集記事連載記事一覧

もっと読む

この記事の著者

柳井 政和(ヤナイ マサカズ)

クロノス・クラウン合同会社 代表社員http://crocro.com/オンラインソフトを多数公開。プログラムを書いたり、ゲームを作ったり、記事を執筆したり、マンガを描いたり、小説を書いたりしています。「めもりーくりーなー」でオンラインソフト大賞に入賞。最近は、小説家デビューして小説も書いています(『裏切りのプログラム』他)。面白いことなら何でもOKのさすらいの企画屋です。 

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/9611 2016/09/02 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング