森畑研究室
東京大学教養学部 学際科学科 総合情報学コース
東京大学大学院総合文化研究科 広域科学専攻 広域システム科学系

研究目標:プログラミングに産業革命を
 現状、プログラミングは専門的な修練を積んだ人による技能となっています。言うなれば、全てが職人による一品物です。これほど情報技術・機器が一般的になった世界で、これで良いのでしょうか? マニュアル通りにやれば誰でもできるような、そういう生産技術があってこそ、プログラミングは本物の「産業」たりえるとは思いませんか?
 本研究室では、誰でもできるプログラミングを目指して、プログラミングの基礎理論、およびその応用について研究しています。
本研究室のアプローチ
 本研究室では、プログラミング教育や統合開発環境(IDE)などの改善を目指しません。そのような発想は、服飾産業で言えば針や糸を改善するようなものです。産業化に真に必要なのは「産業機械」、例えばミシンです。ボタンを押せば自動的に縫ってくれて、ほつれ止めも飾り縫いもスイッチ一つ、マニュアルを読めば誰でも操作できる。そういう「産業機械」がプログラミングには圧倒的に不足しています。
 プログラミングのための産業機械のために、本研究室では以下の3点を中心に研究を行っています。 (関連:森畑による講演の動画
本研究室に向いている人・向いていない人
 本研究室には、現状のプログラミング・プログラミング言語に疑問・不満のある人が向いています。逆に、プログラミングに不満のない人、自由にプログラミングのできている人はあまり向いていないかもしれません。
 プログラミングの研究をする以上、現状を知るという意味で、プログラミング言語等について一定の知識が必要です。しかし、高いプログラミングスキルや個々のプログラミング言語についての詳しい知識などは、あればそれに越したことはありませんが、必須ではありません。
 プログラミングに関する技術をソリッドに組み立てるためには、最終的には数学が必要になります。どの程度の数学が必要かは研究テーマやアプローチによりますが、数学アレルギーの人にはあまりお勧めできません。逆に、数学は好きだが純粋数学よりも数学の応用を探求したい、という人は楽しめる可能性があります。
本研究室で扱うテーマの範囲
 本研究室のテーマは「プログラミング」であり「ソフトウェア開発」ではありません。つまり、巨大なソフトウェアの開発というプロジェクト全体ではなく、ソフトウェアを構成する各部品の開発を扱います。例えば自動車の開発であれば、ホイール一個、場合によってはネジ一本の開発技法を扱う一方、品質管理、工場ラインの管理、PDCAサイクルの回し方、顧客との折衝などは対象としない、ということです。
 本研究室は、高度な技術をもつ職人に特注すべきような、本物の「一品もの」の開発は扱いません。そのような例は、気象予報やスペースシャトル制御のように非常に高い性能と信頼性が必要なもの、富嶽コンピュータのような特別なアーキテクチャに特化したもの、最先端の技術を用いたものなどです。
研究テーマ例とそれに関連する文献
(参考:森畑の研究テーマ候補リスト
研究室に参加したい方へ
<研究室に参加したい方へ (How to Join Our Laboratory)>
過去の修士論文題目
過去の卒業論文題目
関連研究室

<back>
Akimasa Morihata. Nov., 2020