文系です。手に職を付けたくて、プログラミングスクールで勉強を始めたものの、プログラミングスクールで学んだ程度のスキルではES(エントリーシート)が通らず、意味があるのか疑問に感じています
プログラミングスクール出身で、優秀なプログラマーを見たことがないんですけど……
ひろゆき氏は、「作りたいものがあったとき、インターネット上にある情報だけでプログラムを作れない人って、プログラミングに向いてない」と考えている。スクールで新しい言語や流行しているミドルウェアを学んでも、結局はマニュアルを読み解いて、実践できる力が必要である。そのためにも、独学できる能力を持っている方がいいと述べる。
独学する能力を身に付けるためのオススメの方法は、「いつも言っているんですけれど、『とほほのWWW入門』の『HTML』の項目から始めてください。僕はそこから始めたんで。今はもっと便利なサイトがあるかもしれないけれど……htmlが書ければ、プログラムは書けるんですよ」
学生からの質問は次第に、2ちゃんねるに関する話題になっていった。ひろゆき氏は、2ちゃんねるブレークスルーの肝は「実は設計だったんじゃないかな、と今になって思う」と振り返る。
「昔、Perlスクリプトが置ける無料のサーバが結構あって、黎明(れいめい)期の2ちゃんねるはそういうサイトを渡り歩いていたんですよ。そういうとこってサイトごとで使えるスクリプトの癖みたいなものがあったりするんです。ライブラリのパスの場所やデータ保存の仕方が微妙に違うとか。なので、どのサーバに行っても動くような汎用(はんよう)的なPerlスクリプトを書いていました」
当時の掲示板サイトはデータ部分は1つの大きなファイルやデータベースを利用していることが多く、そのためプログラムの動作が遅くなりがちで、かつデータの一部でも破損したら全体が壊れてしまうこともあった。つまりそれは、掲示板が「落ちる」ことを意味していた。
2ちゃんねるがはやった理由として、ひろゆき氏は次のように説明した。「結局、落ちない掲示板がはやるんですよ。当時の掲示板は『必ず落ちるもの』だったので……。後は『(表示や書き込みが)速い方がイイよね』というのもあって」
従来の掲示板の課題を目の当たりにしてきたひろゆき氏は、2ちゃんねるでは、まずデータベースの使用を避けたという。プログラムは、テキストファイルベースにし、さらにスレッドごとにファイルをバラバラに管理することにした。そうすることで、1ファイルが破損しても他のファイルが生きているため、掲示板全体が落ちなくて済むというわけだ。
また、複数の人が同時に掲示板に書き込む際のファイル破損を防ぐためにファイルロックを設定するプログラマーが当時は多かったが、CPUが他の処理で食われている場合など、ファイルロック状態が長引けば、なかなか投稿できない状態になってしまう。そのせいでアクセスがかえって集中して掲示板がダウンしてしまうリスクを考えて、2ちゃんねるはあえてファイルロックをせずにひたすら追記をし、表示をするときに追記を逆にするという構造にした。
「データベースを使うときはMyISAMを使うとテーブルロックだけど、InnoDBだと行ロックなので、そっちの方が安全だよね、みたいな話です。最近はもうMySQLも使わないと思いますが」
ひろゆき氏の丁寧な説明に、参加者からは「真面目じゃん」というコメントが寄せられた。
Copyright © ITmedia, Inc. All Rights Reserved.