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