1: 海江田三郎 ★ 2016/06/18(土) 08:34:24.25 ID:CAP_USER
https://wirelesswire.jp/2016/05/53318/
no title


no title

情報化社会と言われて久しいのですが、パーソナルコンピュータが生まれてから40年が経過しても、未だに最も普及している情報処理手段は紙と手書きです。
 そのなかでも非常に興味深いのは、コンピュータという最も高度な情報処理装置を使いこなすプログラマーほど、手書きを必要としているという点です。

 この写真は弊社のとあるプログラマーの作業風景ですが、キーボードの下に紙のノートを挟んで使っています。

 さらに、彼の左側には、ホワイトボードが設置され、そこにも何かを書いています。
 なぜ情報処理の達人であり、普通の人の何倍ものスピードでキーボードを打ち、自らのイメージする論理を直接コンピュータに
入力できる能力に長けたプログラマーたちが、よりによって紙への手書きを必要とするのでしょうか。
たとえば、これは筆者が高校生に最新の深層学習の用語や原理を教えた時のホワイトボードです。
 これを見ると一目瞭然ですが、複雑な概念や新規性の高い概念はキーボードで書くよりもまず手書きで書くほうが圧倒的に速く伝えることが出来ます。
 文字の配置や大きさによる強弱、数式、図、図と図の関係、文字と文字の関係、そういったものが一切の制約なしに書き下せるからです。

こちらも、筆者のオフィスのホワイトボードです。
 これは、プログラミングという道具と数学という道具の関係性を説明した図で、古典的な数学という(古い)道具ではシグマ(Σ)を使って
表さなければならなりませんでした。

 ところがΣで表現可能な演算は積和演算だけです。
 これはプログラミング言語ならforループという単純な構図で表せます。
 ただしシグマにもメリットがあって、プログラミング言語に比べると簡潔に表現できるのでより上位の概念を簡略化して説明することができます。
 プログラミング言語の場合、単純なシグマではできない複雑な計算や条件分岐ができるのも特徴です。
 同じ概念を表現するのに複数の表現手段を持っていることは強みである、ということでもあります。

 手書きで書く場合はシグマを使ったほうが圧倒的に速く、簡潔に書けますから板書を中心とする学校ではシグマを使った計算が多用されます。
しかし実際の計算をやらせるためには、シグマを使った数式を人間のプログラマーがプログラミング言語にいわば翻訳してやる必要があります。本来、これは非常にバカバカしく、非効率的なことです。
 しかし今のところ、本格的な数式を自動的にプログラミングする方法はありません。紺屋の白袴ではないのですが、プログラマーは怠惰なので、
自分に必要な数式をプログラミング言語に翻訳してしまうか、もしくはだれかが翻訳した実装をどこかから拾ってきて、それで良しとしてしまう癖があります。
 また、数式は単なる関係性を表現しているに過ぎず、数式のどの部分をどのように使うかということはその都度プログラマーが考えなくてはなりません。
引用元: http://potato.2ch.net/test/read.cgi/bizplus/1466206464/


2: 海江田三郎 ★ 2016/06/18(土) 08:34:34.93 ID:CAP_USER
 たとえば筆者がよく使う例ですが
no title

 この数式は物理学で最初に習う運動方程式ですが、これをそのままプログラミング言語にして「F=ma」としてもきちんと動作しません。
 まず、プログラミング言語では変数名が一文字であるという暗黙の了解事項はなく、「ma」が「m」と「a」なのか、それとも「ma」というひとつ
の名前なのか区別できません。多くのプログラミング言語では「ma」をひとつの名前として扱います。それがFに代入されるわけですが、
当然、maにはなにも初期値が与えられていないので多くのプログラミング言語ではエラーになるか、ならなかったとしてもなんの意味もない数式ということになります。
 数学で変数が一文字と決められているのは、そのほうが手書きのコストが少なくて済むからでしょう。そのかわり、書く位置や大きさを変えることで意味を変化させ、
より簡潔に関係性を表現できるようになっていますし、補足的に変数のちかくに小さな添字を加えて修飾することもできます。
 ところがプログラミング言語でこれを表現しようとすると、関係式ではなく関係式から導き出される手順をプログラミングしなくてはなりません。
これを扱うためにはコペルニクス的転回が必要で、たとえば一次元の数直線上を移動する物体を想定してみると、F=maを正しく表現するには以下の
ようなプログラムを書かなくてはなりません。

x=0; //位置
v=0; //速度
a=0; //加速度
m=1; //質量
F=1; //力
function onenterframe(){
a = F/m; // F=maの式変形
v += a; // 加速度を時間積分して速度に
x += v; // 速度を時間積分して位置に
} onenterframeは一定期間おきに呼び出される関数だと思ってください。
 F=maという関係式から、実際の物体の位置の変化を決めるために暗黙的に存在が想定されていた速度vと位置xという2つの変数がいきなり登場します。
 これは、F=maのa(加速度)が暗黙的にv(速度)とx(位置)の存在を想定しているからです。
 つまりプログラミングとは関係式が暗黙的に持つ隠れた意味を明確化し、手順に還元するという役割を持っています。
 このとき、明確でない関係式を理解するために、実際に数直線を書いて検討したりというプロセスが欠かせません。結果、手書きが必要ということになるのです。


 手書きを多用するのはプログラマーだけとは限りません
(続きはサイトで)

3: 名刺は切らしておりまして 2016/06/18(土) 08:36:25.29 ID:kRzAwdmJ
いつの時代だよ

5: 名刺は切らしておりまして 2016/06/18(土) 08:42:35.90 ID:HKbVd/Rp
例えば図を使って頭整理したいときがある
その時に
紙とペンは有効なんだよな

記憶しておきたいだけならメモ帳でいい

6: 名刺は切らしておりまして 2016/06/18(土) 08:43:00.30 ID:g+n7WBGh
理系の研究室いくとかならず黒板があって
黒板があるとそこには必ず誰かが書いた数式が残っている。
世界中どこいってもそう。
たまにその前で舌出して自撮りするw

7: 名刺は切らしておりまして 2016/06/18(土) 08:43:03.78 ID:YFO8yiAi
プログラムは数学じゃないことがよくわかった
ただ人のレベルにもよるし昔は端末が少なくて使用時間が貴重だったこともあり
手書きは欠かせなかったし構想や構図を練る関係でよく手書きはしてた

8: 名刺は切らしておりまして 2016/06/18(土) 08:45:31.69 ID:Akx8dr+g
プログラムは作文、黒板は理に叶ってるよ

10: 名刺は切らしておりまして 2016/06/18(土) 08:47:29.41 ID:uwfV2KDF
手書きは便利だよ
人間はミスするからねミスチェックするときの答え合わせにいいよ

11: 名刺は切らしておりまして 2016/06/18(土) 08:51:53.10 ID:fq0KcPb7
複雑なコードを求められてるからじゃないかな
ホワイトボードは使わないけどノートは使う
考えてるだけの無駄な時間が減るのと、無駄なエラーが減ったね

13: 名刺は切らしておりまして 2016/06/18(土) 08:52:24.97 ID:I+SoIQQk
手書きタッチパネルがイライラしないで紙とペン並みになる時代は来るのだろうか
まあ、紙とペン使えってことになって需要が無いか

16: 名刺は切らしておりまして 2016/06/18(土) 08:58:24.27 ID:cunGKa6q
光学式マウスが出る前の時代に、リング綴じノート
をマウスパッド代わりに使ったことあるよな?

19: 名刺は切らしておりまして 2016/06/18(土) 09:02:28.58 ID:/nYIJlmH
プログラマはなぜ手抜きするのか?

89: 名刺は切らしておりまして 2016/06/18(土) 11:12:40.59 ID:tJXVKmIe
>>19
そもそもプログラムを作る動機は人間が楽をしたいことだから

21: 名刺は切らしておりまして 2016/06/18(土) 09:03:35.43 ID:SbjV8A7E
手書きは好きな場所に書き加えられるというのが大きい
これは本当に大きい

25: 名刺は切らしておりまして 2016/06/18(土) 09:08:16.48 ID:nm/qG95M
一からアイデア練る時なんかは、自由に書き込める紙に手書きじゃないと無理だろ。

36: 名刺は切らしておりまして 2016/06/18(土) 09:23:00.90 ID:Cep3IIc9
羽衣チョークが無いとアメリカの数学者が困るって話題を思い出した

38: 名刺は切らしておりまして 2016/06/18(土) 09:25:37.23 ID:IEwEvtl7
>>1
Πも知らないのか

41: 名刺は切らしておりまして 2016/06/18(土) 09:32:46.55 ID:APWTEokm
ペンタブでアイデアをお絵描きしてファイル保存する連中はどうなんだ
手書きか?手書きでないのか?

45: 名刺は切らしておりまして 2016/06/18(土) 09:36:48.70 ID:t/AScpqh
紙は最強の記憶補助媒体である

47: 名刺は切らしておりまして 2016/06/18(土) 09:38:20.43 ID:/Lm6DgVA
>>45
いい表現だね

短期記憶に限界がある以上
アウトプットの早い方法は強いよね

51: 名刺は切らしておりまして 2016/06/18(土) 09:44:43.70 ID:oZJnEmsv
紙の方がアクセスが圧倒的に早い

54: 名刺は切らしておりまして 2016/06/18(土) 09:48:51.58 ID:XMYLHN32
プログラミングって意外とビジュアルな脳の作業だよね
Visual Studioって言うくらいだし

56: 名刺は切らしておりまして 2016/06/18(土) 09:50:14.62 ID:RfGqVGAu
Σをforで表現するって、いつの時代のプログラマだよって感じだな
でも考えやアイデアをまとめるにには手描きが一番いい。
キーボードは所詮文字を並べる役にしかたたん。

60: 名刺は切らしておりまして 2016/06/18(土) 09:59:48.20 ID:fm48DCH0
結局のところ01信号を全部の
抽象化してるんだけど
抽象化の能力って
手を動かさないとどんどん
落ちてくるんだよね
特に線を引くとか丸を描くのはよい

67: 名刺は切らしておりまして 2016/06/18(土) 10:08:31.68 ID:rDv+1Lsr
あたま中の記憶の消滅時間が短いので
さっさ書けないとまとまらない

68: 名刺は切らしておりまして 2016/06/18(土) 10:08:57.22 ID:PTg9xCuu
.
 図形で考えた方が、視覚野のほうが大脳皮質で広いし、初等教育から図形で
 考えるように教えられている。
 数学は、記号論理学の側面があって、Σや微積分、アインシュタインの縮約記法
 なんて便利じゃない。

 汎用の言語では無理じゃないそういうのをプログラム言語へすぐ変換するのは。
 

70: 名刺は切らしておりまして 2016/06/18(土) 10:12:58.15 ID:GxLLivCb
UIをデザインしたりロジックを組み立てるとき
紙に書いたほうが速いんだよな

73: 名刺は切らしておりまして 2016/06/18(土) 10:21:15.68 ID:164RRPzq
手書きはしないけど、実装すべきロジックに悩んだらテキストエディタで
文章で一旦箇条書きにして、それをコードに置き換えることはよくやる。

同じ経験のある人には共感できることだけど、そうでない人には何を言ってるのかわかんないんじゃないかなこれ。

76: 名刺は切らしておりまして 2016/06/18(土) 10:29:30.58 ID:164RRPzq
実装すべきロジックを考える思考の補助として、コードを打つ前に
一度紙に書いて整理するとわかりやすいってことを言いたいのだと思うんだけど。

78: 名刺は切らしておりまして 2016/06/18(土) 10:35:09.93 ID:TNm9XmDC
つまり
アナログ最強 
 

85: 名刺は切らしておりまして 2016/06/18(土) 10:54:01.35 ID:xX8raa/p
>>1
話の前半は良いが後半のたとえの部分の論理はむちゃくちゃ。
ロジックを自ら実装して解を求める話と、公式を適用する話が
ごちゃまぜに論じられてるから。別に解を求めるなら手書きで
公式を適用するようにライブラリ関数を使えば良い。
F=maの変数名がmなのかmaなのかという話に至っては、プログラム
書く人間なら、mとaの間に乗算演算子入れるし、それが手書き優位の
理由になるわけがない。

87: 名刺は切らしておりまして 2016/06/18(土) 11:05:46.53 ID:ybSp5xqp
最近プログラミングに注目画集まってるせいか、Excelでマクロを組める俺が部所でちょっとしたヒーローになってる。
プログラミングなんて誰でもできそうなのにね。

88: 名刺は切らしておりまして 2016/06/18(土) 11:07:13.19 ID:5n8sD330
>>87
その壁はなかなか高いよ
一旦できてしまえばこんなもんか、だけどさ
恋と同じでね

94: 名刺は切らしておりまして 2016/06/18(土) 11:32:46.26 ID:RVG5FFAL
ARで制限のない画用紙に手書きでメモしたい

96: 名刺は切らしておりまして 2016/06/18(土) 11:40:02.05 ID:c3VdJYpR
主にメーカーで仕事してる個人事業主だけど、説明のためにホワイトボード使うことはあっても紙に書くなんてほとんどない。そもそも情報漏洩の原因になるし、ノートPCやタブレット支給されるから紙に書く意味がない。
デジタルデータなら検索も編集も思いのまま、情報共有もしやすい。

ほんといつの時代の話だよ。金のない大学の研究室とかじゃないの?

99: 名刺は切らしておりまして 2016/06/18(土) 11:44:03.97 ID:bZOn78/H
体重60kgのプログラマーのプログラムは60000g

102: 名刺は切らしておりまして 2016/06/18(土) 11:54:29.85 ID:ISNlwuiz
手書きすると意外といろいろなアイデアが生まれてくる
ちょこっとメモったりもできるしね
頭脳労働者にとってキーボートより発想記録の自由度が高いことが重要

105: 名刺は切らしておりまして 2016/06/18(土) 11:58:53.02 ID:qA/sj0gY
プログラミングとは
脳内処理フローを
言語に置換することである。

106: 名刺は切らしておりまして 2016/06/18(土) 11:59:52.29 ID:qA/sj0gY
脳内処理フローは
紙に手書きすると
イメージしやすいのだ

スポンサード リンク