1: 田杉山脈 ★ 2020/02/14(金) 16:28:35.07 ID:CAP_USER
一般向け経済誌が特集で取り上げるなど、相変わらずプログラミングが注目を集めている。「素人記者がプログラミングに挑戦してみた」といった記事も多い。

 「やったことはないが、自分もプログラミングを始めればガラッと世界が変わるのではないか」と思っている読者も多いだろう。私もかつてはそうだった。

 私がプログラミングを知ったのは中学生のときだ。出会った時期自体は早い。自分が持っていたパソコン用に簡単なゲームのプログラムを作り、遊んでいたこともある。

しかし、プログラミングに対してはずっと苦手意識を持っていた。見よう見まねでプログラムは作れるものの、どうして動くかはあまり説明できない。プログラミングを理解できている実感は全くなかった。「いつかプログラミングができるようになりたい」とずっと思っていた。

できるといっても無数のレベルがある
 私がプログラミングをきちんと学ぶきっかけになったのが、2005年に日経ソフトウエアという雑誌の編集部に異動したことだ。

 日経BPの雑誌は書店を通さない定期購読タイプが多いが、日経ソフトウエアは書店売りの一般向けプログラミング雑誌である。基本的には外部の執筆者に原稿を依頼することが多い。ただ自分で記事を書くこともある。

 プログラミングを学ぼうと思った理由は2つある。1つは自分がプログラミングの記事を書かなければならなくなったこと。もう1つは外部執筆者のプログラミングの実力を見極める必要があったことだ。

関連記事:プログラマの実力偽装を考える──初心者と中級者を分けているもの
 学習のために使うプログラミング言語には「Scheme(スキーム)」を選んだ。教育用によく使われていた言語で、実用的なソフトウエアの開発にはあまり使われない。実用的な言語を選ぶと、固有の文法やライブラリーといったその言語だけの事情に引っ張られてしまうのではないかと考えたのだ。言語にとらわれないプログラミングの本質を学びたかった。

 当時、Schemeを使ってコンピューターサイエンスの基礎を学ぶ勉強会が週に1回開催されていた。そこで、その勉強会に欠かさず参加するようになった。勉強会は2~3年続き、それなりの量のSchemeコードを書いた。この経験が、自分のプログラミングの基礎になっていると思う。

 こうして少しはプログラミングができるようになって初めて分かったことがある。「プログラミングができるといっても、そのレベルの幅はとんでもなく広い」ということだ。プログラミングが少しできる人と最上位レベルのプログラミングの実力を持つ人の差は、想像以上に大きかった。
以下ソース
https://xtech.nikkei.com/atcl/nxt/column/18/00682/021200027/

2: 名刺は切らしておりまして 2020/02/14(金) 16:33:10.06 ID:Ir0AeyDF
>>1
2chのコード改良したLinux板の住人は尊敬する

41: 名刺は切らしておりまして 2020/02/14(金) 17:50:47.41 ID:P0JYr9JZ
>>2
gzipしてなかったって
それまでが適当すぎない?と思ったがそうでもないのか

365: 名刺は切らしておりまして 2020/02/16(日) 10:00:56.03 ID:zjPYZrVO
>>41
ざっくり言えばそれで合ってるけど、実現するには色々泥臭い実装が必要
サーバー側はともかくクライアント側は色々あるから大変だったと思うよ

119: 名刺は切らしておりまして 2020/02/14(金) 22:08:51.37 ID:Nnm559jP
>>2
まぁ当時はガチのプロがかなりいたからなぁ
ニコニコのこいづかさんとかもその一人らしいし

3: 名刺は切らしておりまして 2020/02/14(金) 16:33:57.35 ID:kIQcNRFA
>>1
C++から返ってくるエラーコードが超適当ってのが分かったからやめた

8: 名刺は切らしておりまして 2020/02/14(金) 16:41:54.87 ID:YKScqrYf
プログラミングの差なんて理解できないから
ミジンコがアインシュタインの脳内を理解する行為に等しい
筆者のプログラミングの実力を見極めるためといった動機がまず間違ってる
こんなんだから、あんな頓珍漢な内容になってるんだろうな、日経は

10: 名刺は切らしておりまして 2020/02/14(金) 16:45:17.01 ID:qSxDM5Vc
>プログラミングができるといっても、そのレベルの幅はとんでもなく広い

ソフトウェアはとりあえず動くものが作れるようになるには、ものすごく敷居が低い。
というかほとんど敷居なんかない。
それが他の工学分野と違うところ。
個人的な偏見だけど、ソフト屋には勘違い野郎が多い。
ろくに知らなくても動くものを作れちゃうからな。

71: 名刺は切らしておりまして 2020/02/14(金) 19:19:10.41 ID:3P25p5UW
>>10
なんだって同じだよな
絵が描けるっていっても落書きから写真と見分けつかないレベルまであるし、空手だって型をなんとなくできるのと実戦で人殴り倒せるのは全く別物

122: 名刺は切らしておりまして 2020/02/14(金) 22:18:18.22 ID:q9B7qTaQ
>>10
胸が痛いぜ。おれも含めてそういうやつらは、ガチンコで学んだ人間とのレベルの差を思い知り血反吐吐くんだよ。

177: 名刺は切らしておりまして 2020/02/15(土) 02:37:25.35 ID:4oV6M1vK
>>10
同じ動作をさせるのでも、1000行書くヤツもいれば、ほんの数行で終るヤツもいる
それが技術力

198: 名刺は切らしておりまして 2020/02/15(土) 07:41:46.52 ID:ri00FFWR
>>177
1,000行ってすごいね
俺なんかMAX400行くらいで業務効率化のためにアプリ動かすプログラムくらいしか作れない
元が経理担当だから仕方ないけど

203: 名刺は切らしておりまして 2020/02/15(土) 07:49:10.72 ID:E7hecWMv
>>198
明確な機能を持たせたメソッドなら50行以下(単純なデータ移送は除外)
そもそもステップ数なんぞアテにならん

初期化に一回変数宣言して
次の行で0突っ込んで
後で本題の値突っ込んでるとかいうは?ってなるようなの書いてる輩だっている

207: 名刺は切らしておりまして 2020/02/15(土) 08:04:31.54 ID:pEdBW6qZ
>>203
>初期化に一回変数宣言して
>次の行で0突っ込んで
>後で本題の値突っ込んでるとかいうは?ってなるようなの書いてる輩だっている

工業的に作るプログラムだと、そのやり方がルール化されてたりするんだよ
プログラマには適正怪しいのも居るのが現実だから、
バク作り込み防止には結構有効だったりする

213: 名刺は切らしておりまして 2020/02/15(土) 08:18:55.62 ID:ZxHIQVDZ
>>207
組み込みとかならそれでいいけどなぁ、
今は初期化漏れとかIDEやコンパイラで検出できるのに
まだそれやってて、逆にツールの邪魔してるやついるよなw

219: 名刺は切らしておりまして 2020/02/15(土) 08:33:50.05 ID:pEdBW6qZ
>>216
客にプログラム・ソースの良し悪しなんて判らないから、
効率良く短いコードより、無駄に長い方が金取り易い
コンパクトに書くと、「ボッてる」と思う客もいる

223: 名刺は切らしておりまして 2020/02/15(土) 08:42:43.41 ID:E7hecWMv
>>219
「動いてりゃ良い」を地で行く客は保守性なんて考えてないもんな
その動いてりゃ良いのせいで余計に金がかかるし現場と亀裂が生じるとも知らずに

227: 名刺は切らしておりまして 2020/02/15(土) 09:00:58.16 ID:oOuoC/GZ
>>219
客はステップ数なんて気にしないし興味もない。
要件通り動くかどうか。それだけ。

311: 名刺は切らしておりまして 2020/02/15(土) 17:54:23.02 ID:tIBGUzKj
>>213
ツールの変化が激しいからね。あなたの常識もすぐに非常識になる。

253: 名刺は切らしておりまして 2020/02/15(土) 11:14:24.22 ID:/n44aZBr
>>207
これをデータベースでやってるバカ見たときは頃してやりたいと思ったw
insertは主キー以外すべて空値で、処理進めながら値入れていくものだから凄い勢いで断片化してパフォーマンスが低下した

257: 名刺は切らしておりまして 2020/02/15(土) 11:53:59.21 ID:pEdBW6qZ
>>253
大昔は、フローチャート書かせて、中堅以上がチェックしてたから
酷いおバカロジックは防げた

260: 名刺は切らしておりまして 2020/02/15(土) 12:14:33.98 ID:/n44aZBr
>>257
フロー書いてたって汎用機だろ、それ
あれは固定長だから問題ないなw

303: 名刺は切らしておりまして 2020/02/15(土) 17:35:55.55 ID:tIBGUzKj
>>177
オイラなんかコマンド一発、一行だ。

11: 名刺は切らしておりまして 2020/02/14(金) 16:46:22.86 ID:gwOadikk
hello worldとパソコン画面に出せるだけだった。

13: 名刺は切らしておりまして 2020/02/14(金) 16:47:56.34 ID:a503iZeJ
プログラミングが出来ると女の子にモテモテだと聞きました

14: 名刺は切らしておりまして 2020/02/14(金) 16:48:24.27 ID:xUZGP8NC
ハローワールドと文字が出るところで、そりゃ最初にそう出る様に打ち込んだしなって
冷めた目で見てしまい、こんなの積み重ねていつになったら凄いものがプログラミングができるのだろうと
気が遠くなった。
その後の「代入」を表現するとき、「箱に入れる」という言い回しに気持ち悪くなった。

199: 名刺は切らしておりまして 2020/02/15(土) 07:43:48.44 ID:ri00FFWR
>>14
HELLO WORLDを表示させることにはまったく意味がない
表示されたことによってプログラミングの環境が整ったことを確認するもの
って死んだ伯母さんか言うてた

404: 名刺は切らしておりまして 2020/02/16(日) 20:24:44.66 ID:CUxpiU5H
>>14
でもその表現が一番的確じゃね?メモリ領域を確保とか言われた方がしんどいだろ

16: 名刺は切らしておりまして 2020/02/14(金) 16:50:22.41 ID:T5woewZV
COBOLとFORTLAN、PL-1なら自信アルで

82: 名刺は切らしておりまして 2020/02/14(金) 19:49:16.55 ID:DM1vSky0
>>16
今年58歳でしょ

266: tree d 2020/02/15(土) 13:00:45.84 ID:lQhlyRmI
>>16
地獄みたいな案件しかない言語やな

20: 名刺は切らしておりまして 2020/02/14(金) 17:01:59.46 ID:eGmzgp8h
プログラミングのソースコードの良し悪しって、
先人の書いたコードの改修を数やると、違いがよく判るようになる
似た処理で一寸の違いでかなり違ったりするが、
他人のコードを見ないと中々判らない

22: 名刺は切らしておりまして 2020/02/14(金) 17:03:19.76 ID:9miCprg7
上から下
条件分岐
繰り返し

この3つだけだけど

37: 名刺は切らしておりまして 2020/02/14(金) 17:39:40.04 ID:3m6ahN0W
>>22
これに尽きるよね

165: 名刺は切らしておりまして 2020/02/15(土) 00:49:24.24 ID:wTbyIGto
>>22
関数型言語のSchemeではそうはならないよ。
オブジェクト指向言語でも玄人が書くコードでは
そうはならない。

188: 名刺は切らしておりまして 2020/02/15(土) 07:00:44.82 ID:VUSuKMyZ
>>22
君よく分かってるね

229: 名刺は切らしておりまして 2020/02/15(土) 09:09:06.87 ID:bzmyUu8B
>>22
あとはイベントが起きる条件かな。

240: 名刺は切らしておりまして 2020/02/15(土) 10:25:26.15 ID:jh7adPYF
>>22
と思うやろ
ヘッダの扱い方とかバージョン管理とかのプログラミングとは直接関係ないことを覚えないと話にならない
書いて終わり動いて終わりではない

366: 名刺は切らしておりまして 2020/02/16(日) 10:07:49.59 ID:zjPYZrVO
>>22
構造化レベルで止まってる老害乙w
古い本だが「アルゴリズム+データ構造=プログラム」みたいな本を読むことを勧める

32: 名刺は切らしておりまして 2020/02/14(金) 17:22:58.78 ID:4df5wLa3
結局どのレベルまでブロック化出来るのかという問題なんじゃないかな能力レベルは。
言語仕様でブロック化できるけどそういうのは当たり前として関数群の機能をブロック化してインターフェースをいかに一般化普遍化出来るのかと言うのが能力だとおもうよ。

153: 名刺は切らしておりまして 2020/02/14(金) 23:48:52.51 ID:tz+vmeXX
>>32
抽象化に長けていることは、良いプログラマの条件の一つだろうね。

36: 名刺は切らしておりまして 2020/02/14(金) 17:36:52.59 ID:u2EOIhXE
プログラミングなんて覚えても専業にでもならなければ無用なもんだろ
一般人が必要なソフトなんて探せば高品質なものがいくらでもあるし。
趣味でやるならいいけど仕事で使おうと思うなら非効率。

43: 名刺は切らしておりまして 2020/02/14(金) 17:52:13.96 ID:mAY9qplE
ハッカーに夢

掲載スレ:http://egg.5ch.net/test/read.cgi/bizplus/1581665315/