New Immissions/Updates:
boundless - educate - edutalab - empatico - es-ebooks - es16 - fr16 - fsfiles - hesperian - solidaria - wikipediaforschools
- wikipediaforschoolses - wikipediaforschoolsfr - wikipediaforschoolspt - worldmap -

See also: Liber Liber - Libro Parlato - Liber Musica  - Manuzio -  Liber Liber ISO Files - Alphabetical Order - Multivolume ZIP Complete Archive - PDF Files - OGG Music Files -

PROJECT GUTENBERG HTML: Volume I - Volume II - Volume III - Volume IV - Volume V - Volume VI - Volume VII - Volume VIII - Volume IX

Ascolta ""Volevo solo fare un audiolibro"" su Spreaker.
CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
本物のプログラマーはパスカルを使わない - Wikipedia

本物のプログラマーはパスカルを使わない

出典: フリー百科事典『ウィキペディア(Wikipedia)』

本物のプログラマーはパスカルを使わない』 (ほんもののプログラマーはパスカルをつかわない) は、1982年に執筆されたコンピュータに関するエッセイでテクトロニクス社(当時)のEd Postの作とされている。日本においては1985年にコンピュータ情報誌Bit共立出版)1985年4月号に掲載された。原題は Real Programmers Don't Use Pascal

その内容は、次の文章により始まる。

Back in the good old days -- the "Golden Era" of com- puters, it was easy to separate the men from the boys (some- times called "Real Men" and "Quiche Eaters" in the litera- ture). During this period, the Real Men were the ones that understood computer programming, and the Quiche Eaters were the ones that didn't. A real computer programmer said things like "DO 10 I=1,10" and "ABEND" (they actually talked in capital letters, you understand), and the rest of the world said things like "computers are too complicated for me" and "I can't relate to computers -- they're so impersonal". (A previous work [1] points out that Real Men don't "relate" to anything, and aren't afraid of being impersonal.)
古きよき日々、電算機の黄金期には男とガキの区別はしっかりしていた(文学的には、真の男とキッシュ喰いと呼ぶかもしれない)。あのころは、計算機プログラミングのなんたるかを知る真の男と、そうでは無いキッシュ喰いがいたのだ。真の計算機プログラマは「DO 10 I=1,10」やら「ABEND」[1]やらという具合に会話していた(彼らは本当に大文字でしゃべっていたんだ、信じられるか?)。彼ら以外の世界中の誰もが「コンピューターは自分には複雑すぎてわからない」とか「コンピューターには関らない。あれは酷く非人間的だ」と言っていたものだ(これまでの研究[文献1]では、真の男は何物とも「関係」せず、非人間的であることを恐れないことが指摘されている)。
But, as usual, times change. We are faced today with a world in which little old ladies can get computers in their microwave ovens, 12 year old kids can blow Real Men out of the water playing Asteroids and Pac-Man, and anyone can buy and even understand their very own Personal Computer. The Real Programmer is in danger of becoming extinct, of being replaced by high-school students with TRASH-80s.
だが例にもれず、時代は変わるものだ。かよわい老婦人も電子レンジに内蔵されたコンピューターを所有し、「アステロイド」や「パックマン」ではしゃぐ12歳のガキが真の男だと吹聴して廻り、誰もが自分自身のパーソナルコンピューターを購入し理解しうる時代にわれわれは直面している。真の計算機プログラマは絶滅の危機に瀕しているのだ。そしてゴミピューターを使う高校のガキに置き換わりつつある。
There is a clear need to point out the differences between the typical high-school junior Pac-Man player and a Real Programmer. If this difference is made clear, it will give these kids something to aspire to -- a role model, a Father Figure. It will also help explain to the employers of Real Programmers why it would be a mistake to replace the Real Programmers on their staff with 12 year old Pac-Man players (at a considerable salary savings).
典型的な工房(高坊)パックマンプレーヤーと真のプログラマとの間の相違点を指摘する必要性は明らかだ。違いがはっきりとわかるようにできれば、これらガキどもが熱望するもの──手本を、「父の像」を示すことができよう。同時に、真のプログラマを雇用する者に彼等をクビにして12才のパックマン小僧を雇うことが(かなりの人件費削減にはなるが)何ゆえ間違った選択となるのか説明することもできるのだ。
(C)Ed Post 1982.

以下、本文はFORTRANプログラマがいかに本物であるかということについて例を挙げて滔々と謳っている(ただしFORTRANが出てくるのは最初の二章だけであるが……)。その実はタイトルにあるような当時の新進気鋭の構造化言語の雄であったPASCALについて言及するわけでもなく、FORTRANなどをメインフレーム上のタイムシェアリングシステムで利用する旧世代を善しとする後進的なプログラマーを皮肉るパロディになっていると考える向きもある。

21世紀の今日においては、題材となったFORTRANPascalもすでにコンピュータ言語の古典となって久しいが、プログラミングという職業に携わるものの人となりについて書かれたエッセイとして捉えるとき、一脈通じるものを感じ取ることができる名著である。

タイトルはフェアースタインの著作"Real Men Don't Eat Quiche"(1982年)をもじっており、以下

2. コンピューター言語
3. 構造化プログラミング
4. OS
5. プログラミングツール
6. 本物のプログラマーの仕事
7. 本物のプログラマーの行動
8. 本物のプログラマーの生態
9. 先行き

と節が続く。各節は本文と引用句とから構成される。いくつか例を挙げると、

  • テキサスインスツルメンツ社の伝説的なプログラマがある日、長距離電話でユーザーからシステムクラッシュを告げられた。彼は、その電話口でユーザーに16進コードを指示して、メインフレームの制御フロントパネルのトグルスイッチを操作させた。曰く、「本物のプログラマは電話でブート・コードを唱え、大陸の反対側でクラッシュしたシステムを再起動させる」
  • 本物のプログラマは、FORTRANで人工知能プログラムを書く
  • 本物のプログラマは、戸惑うことなく5ページにもわたるDOループを書かなくてはならない
  • 本物のプログラマは自己書き換えプログラミング・コードを記述する。そのことにより20 ナノ秒もループ実行時間が改善される
  • ソースデバッガ? - 「本物のプログラマはコアダンプを読むものである」
  • 「プログラム全部を、本物のプログラマは印字するものである」そして、彼のオフィスの平らなところは全て年代順になるようにリストを積み上げておく。
  • 「本物のプログラマは」妻の名前は覚えていなくとも、「ASCIIコードやEBCDICコードは忘れない」

[編集] Real Programmer Stories

その後、1992年4月1日にMike Schenkが編纂しUUNETに投稿された、Real Programmer StoriesにもReal Programmer Don't Use PASCALは採録されている。Real Programmer Storiesには、Real Programmer Don't Use PASCALの続編(派生物)である、

  • 「本物のコンピュータ科学者はコードを書かない」 (Real Computer Scientists Don't Write Code)
  • 「本物のコンピュータ技術者はダンプを読まない」 (Real Software Engineers Don't Read Dumps)
  • 「本物のプログラマは仕様書を書かない」 (Real Programmers Don't Write Specs)

なども併せて収録されている。

[編集] 脚注

  1. ^ ABEND=Abendはドイツ語夕方のことだが、アプリケーションが異常停止した際に発生するIBM 360のエラーメッセージの一つでもある (ABnormal END)。

[編集] 外部リンク

他の言語

Static Wikipedia (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2006 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia February 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu