HIBINO Mitsuhiro

ソースコードを用いたプログラマの思考の表現

Expressing of a Programmer’s Thought Using Source Code

本論は、プログラマである筆者自身の考えをソースコードの形式で記述した作品《/module/Whom》の制作と展示を通して、プログラマの思考を伝えることを目的とする。
 プログラマブルなコンピュータの発明から70年以上が経過し情報通信技術は大きく発展した。それに伴い1950年代に発明されたいくつかの高級プログラミング言語を起源として、プログラミング言語は今日に至るまでシステムの目的をより遂行しやすくなるように進化を続けている。
 使用するプログラミング言語はプログラマの発想に影響するとする言説は数多く存在している。筆者はプログラミング言語とプログラマの思考を説明するために頻繁に用いられる理論的枠組みである「言語的相対論」の中から文化とプログラミング言語の接続を行い、データ構造を操作する複数の手段を「語彙」、語彙の中からどれを選択し記述するかを「言葉遣い」と捉え、プログラミング言語を用いた言葉遣いにプログラマ自身の思考が反映されると考え、プログラミング言語を用いた記述方法で思考を伝えることを目的とした。
 また、情報通信技術自体が高度にブラックボックス化されたため、多くの人々がプログラミング言語は実行するものであり、ソースコードを読んで理解しようとするものではないとする風潮があると考えられる。本研究では鑑賞者がソースコードを読むことで思考を伝えることができると考えているため、多様な鑑賞者に対して自身が記述したソースコードを読んでもらうための試みも行い、これも目的としている。
 これら二つの目的から、将来的にはプログラマが用いるコミュニケーションの手段として発展させることを意識し、プログラマの思考の表現を目的に《/module/Whom》を制作した。
 作品の展示とそのコードレビューを実施し、ソースコードに自身の思考が反映されその内容を伝えることが、一定数の鑑賞者に対しては可能であることを示した。また、作品の展示から映像や声といったメディアの性質を作用させてより多くの鑑賞者に対して、興味を惹くことが可能であることを示した。

The purpose of this research is to communicate my thought as a programmer through the creation and exhibition of my work /module/Whom.
 Information and communications technology has progressed rapidly since the first programmable computer was invented over 70 years ago. Since that time, programming languages have continued to progress and make development simpler.
 There are many discourses which claim that the programming languages which programmers use influence how they think. The main theoretical framework I use for this thesis is linguistic relativity, a theory frequently used to discuss the relationship programming language and a programmer’s thought. In this paper, I use the term ‘vocabulary’ to refer to methods of manipulating data, and I use the term ‘wording’ to refer to the act of selecting a term from this vocabulary. A programmer’s thought, I claim, is reflected in source code through wording, and a major goal of my work was to use code to convey my thoughts.
 As IT becomes more sophisticated, people begin to see it as a ‘black box’, leading to a tendency for people to consider that the purpose of programming languages is to be executed, not to be read or understood. In response to this, another goal of my work /module/Whom is to use code to convey my thoughts to spectators of diverse backgrounds. Exhibiting this work and engaging in a code review demonstrated that I was able to achieve this effectively for a certain number of viewers and that it may be possible to attract the interest of a wider audience using voice and video.

主査
山田晃嗣
副査
プロフィール
1994年岐阜県出身、ソフトウェアエンジニア。幼少期よりプログラムを記述する行為そのものに喜びを感じ、プログラミング言語を用いた実装方法に現れるプログラマの思考を研究。