プログラミング童貞
プログラミング童貞とは、その名の通りプログラミングの未経験者のことである。 プログラミング処女と表記されることもある。
目次
概要
インターネット上には、無修正のアダルトビデオが溢れているのと同様に、プログラミングについての情報も溢れているため、「C言語が基本」「PHPはWebサイトによく使われていて比較的簡単」などのプログラミング言語についてのさわり程度の知識は備えているものもいる。
しかし「Java」と「JavaScript」を混同するなど、未経験ゆえの間違った知識も多い。 これは童貞が尿道と膣口が同一であると勘違いするようなものである。
プログラミング童貞とプログラミング処女
まずプログラミング童貞とプログラミング処女はまったくの同一のものである。童貞とは男性および女性で区別すべきものではない。
童貞とは本来は「童身」で「貞潔」な存在であるカトリック教の修道女を指す宗教用語であり、1900年代ごろから「異性との性交渉の経験がない男女」を意味する汎用的な用語へと変化し、さらに近年の日本では男性のみを指すことが多く、女性の場合は「処女」と表記されることが多い。
しかしながら、童貞と処女を区別するのは近年の日本特有のものであり、日本古来の表記では区別せず、また英語における表記は童貞も処女のどちらも「Virgin」であり男性または女性で区別することはない。
よって、英語圏を主体とするプログラミングという世界においては英語における解釈を正とし、プログラミング処女もプログラミング童貞も区別することなく同一のものであるとするのが正しいと言えよう。
プログラミング童貞からの卒業
プログラミング童貞から卒業するにはプログラミングを実際に行ってみる必要がある。 書籍やネット上の情報を読み、そこに掲載されているサンプルプログラムを実際に作製してみるなどの行為を行った者はプログラミング素人童貞と呼ばれる。 その次のステップとして大小問わずオリジナルのプログラムを作り上げることが出来たならば、みごとプログラマーの初号を手にすることになる。
プログラミング童貞からの卒業に最適な言語
プログラミング童貞を捨てるにおいて極めて重要なのは「俺すげぇ」的な簡単さと派手な動きによる覚醒的な興奮である。 その点が欠如したプログラミング言語では童貞を捨て去るまでモチベーションを保てず、中折れ挫折することになるであろう。
真っ黒で地味なコンソール上でハロワなどは論外だ。 それはパソコンの大先生がパフォーマンスを行うために存在しているものでありプログラミング童貞から卒業するためのものではない。
RPGツクール
言わずと知れたRPGツクール。 RPGツクールを馬鹿にする者も多いが視覚的にフラグなどの概念を覚えるには最適な教材であり、少なくともテキストエディタ相手に地味でクソつまらないハロワをやるより100万倍マシだ。
NXT-G
NXT-Gはレゴ・マインドストームNXTに付属するレゴブロックを制御するために作られたフルGUIベースのプログラミング言語だ。 日本語公式サイトでは「NXTソフトウェア」という名前で紹介されている。
マウスでぽちぽちと様々なアイコンを繋ぎ合わせてプログラミングを行うという簡単さと、レゴブロックで作られたロボットが実際に動くという派手さはプログラミング童貞卒業のネタとしては比類なき領域に達している。さらにプログラミング言語としての完成度も地味に高く.NET Frameworkに取り入れられたTaskクラスなどの並列処理ライブラリ(Task Parallel Library)の元ネタだったりと侮れない存在だ。
ただし問題がないわけでもなく、日本では業務用教材としてしか流通していおらず、並行輸入品は価格が飛びぬけてクソ高い。 その難関さえクリアできるのであれば迷わずこれから始めるべきだ。
Processing
ProcessingとはMITのマッドサイエンティスト天才科学者たちがクソ真面目に「簡単」かつ「派手」でモチベーションが保てる最強のプログラミング学習教材とは何か、を追い求めた結果だ。
それはエレクトリックなアートを学ぶための学習用プログラミング言語だと悟った。いわゆるメガデモがサクサクっと作れる学習教材として開発されたプログラミング言語だけあって、明示的で、簡単で、そして派手だ。
これさえあれば汚い覚醒剤などなくても脳ミソお花畑状態になるほどエレクトロできるし、お酒の一杯でも吞みながらキーボードを叩き続ければもはや怖いものなしだ。
オープンソースかつ無料で配布されているのでクソ貧乏なクソ学生にも最適だ。ただし今はクソ貧乏でも「ソフトを売って一攫千金だ!」という夢は捨てるな。人間は空気を食って生きていけないしお金は開発持続にもっとも重要な要素だ。開発を持続してくれなくて一番ムカツクのは買ってくれたお客さんだ。
JavaScript
JavaScriptはもっとも流行っているプログラミング言語だ。 テキストエディタとブラウザさえあればすぐに始められる。 まともな統合開発環境やデバッガないなどという批判はそんな機能あっても意味不明なプログラミング童貞には一切関係ない見当違いの批判だ。
しかもjQueryの爆発的なヒットで情報があふれているのでググってコピペするだけで素っ気ないHTMLもグリグリ動きだす。まるで一流プログラマーになったかのように錯覚できる。ただしそれはプログラミング素人童貞となんらかわらないし、そこから先へ進もうとするとJavaScriptは一気に難易度があがる諸刃の剣でもある。しかし昨今のプログラミング技能でもっとも重要だとされる「ググってコピペ」する技術を学ぶには最適なのは確かだ。
C#
最近流行のC#だ。
C#とひとことで言ってもWinFormsやWPFといったデスクトップアプリ、ASP.NET MVCなどのサーバーサイド、UnityやPlayStation Suite SDK、XNAなどのゲーム特化型など多岐にわたり、その用途ごとにまったくの別物だという前知識が必要だ。
そしてその中でもおすすめなのがポチポチっとiPhoneアプリを作れるMonoTouchだ。MonoTouchは有料だが「一攫千金うはうはwww」という夢を見続ければ高いモチベーションを維持できること間違いなしだ。