2024.12.19
システムの穴を運用でカバーしようとしてミス多発… バグが大量発生、決算が合わない状態から業務効率化を実現するまで
リンクをコピー
記事をブックマーク
杜甫々氏(以下、杜甫々):どうも杜甫々です。「とほほのWWW入門」というやつを作っています。こういうところに出ることはあまりなくて、2022年の岡山のオープンセミナーも録画でやっていたので、こんなにたくさんの人の前でしゃべるのは初めてだったりします。
まずちょっと、おじさんの紹介をやっていきます。「とほほのWWW入門」の管理人です。1996年から始めたので、もう27年目に突入ですね。ハンドルネームは杜甫々です。途中で漢字を当てはめてみました。本名は違いますけどね。
広島生まれの広島在住です。もちろんカープファンです。2023年の観戦成績は6勝1敗で、けっこう良かったんじゃないかなと思っています。
次にインターネット歴です。会社に入ったのが1988年で、その時からやっているので、もうインターネット歴が36年です。そういった感じで、インターネット老人会会長を目指しています。
個人的な歴史は広く浅くであまりないので、ちょっと懐かしい話、おじさんの話をしたいと思います。
コンピューターと出会ったのが1981年ですね。コモドールジャパンのVIC-1001という、CPUがファミコンと同じ「MOS 6502」というものを積んだやつ。メモリが5KBでしたね。フロッピーなんてもちろんなくて、プログラムはカセットテープから読み込むとか、そういった感じのものでした。
当時作っていたプログラムがBASICをサポートしていたんですけれども、BASICでメモリが5KBしかないので、プログラムを作るのも変数は全部1文字。メモリがもったいない(笑)。(変数名を)2文字使っちゃうと(メモリを)倍使っちゃうんですよね(笑)。
まぁえっと、こんな「ペンゴ」みたいなアーケードゲームがあったので、それをちょっと真似して、ペンギンが氷をプチッとして、追いかけてくるスノービーをやっつける。そんなものを作って遊んでいました。
5KBしかなくて、ちょっと作り方が悪かったのか、遊んでいるとスタック領域がどんどん上がってくるんですね。溜まってくるんです。ゲームをずっと続けていくとデータ領域を破壊してくるんです。
(会場笑)
そうすると何が起こるかというと、氷がランダムなデータにぐちゃぐちゃに壊れていきます。スノービーがぐちゃぐちゃに壊れて、ペンギンも壊れて、世界の崩壊が始まる。そんな感じで遊んでいました(笑)。
次に買ったのがPC-8801mkII SR。これも88(シリーズ)の名機と呼ばれたやつです。Z80AというCPUと、メモリが64KBに増えました。10倍ぐらい増えましたね。でも64KBでもちゃんとカラーのフルをやろうとするとメモリが足りないので、メモリの後ろのほうをいったん赤に切り替えて赤を描画して、緑に切り替えて緑を描画して、そして青に切り替えて青に描画してと、そんなことをやっていたパソコンです。
この頃に作ったのが「漢字BASIC」。私が持っていた88は漢字ROMがあったんですけど、友人が持っていたちょっと古いやつにはなかったので。今考えたら著作権的にちょっとまずかったんだろうなと思うんですけれども、漢字のフォントデータを全部フロッピーディスクに入れて、そのフロッピーを1文字ずつ読みながら表示をする。
BASICでちょっと拡張できる部分があったので、そうやっていました。ただね、ちょっと長い文章をやろうとすると、ガチャガチャっとディスクが壊れそうなんですよね。
(会場笑)
あまり使わなかったですが、そんなことをやって遊んでいました。
この頃にアセンブラとかもやりましたね。今は使うことはないとは思いますけれども、メモリがあって、例えばメモリの03+05=08とやろうと思ったら、メモリから05をレジスタにロードする。それでレジスタの中で演算をやって、それをメモリにストアする。こんなことをやっていました。
今はもうやることはないと思うんですけど、コンピューターの原理を知るにはこういうこともやるんだよ。「8ビットアセンブラ入門」というのもあるので、興味がある人は見てください。
そのあとに買ったのがPC-9801VM2というやつですね。16bitになりました。V30です。メモリが5倍ぐらい増えましたね。384KBです。MBじゃないですよ(笑)。384KBのパソコンでやっていました。ハードディスクもこの時に買いました。11MBのハードディスクです。そんな感じでやっていました。
それからあとは、ちょっとプログラミングのアルバイトをこの頃に始めたり、あとはCOBOLのキーパンチャーのアルバイトとかをやったり、そんなことをやっていました。
当時パソコンは1人1台なかったので、すべてフローチャートを作って紙の上でコーディングをして、その紙を僕ら学生が受け取ってひたすら打ち込む。そんなアルバイトをやっていた時代でした。1行2円でね。間違えたら10円ぐらいの罰金を取られるんですよ。
(会場笑)
本当に2、3人ぐらい+バイトぐらいの小さな会社だったんですけれども、宴会中に社長がいきなり「ゲームを作るぞ!」「みんな考えて来い!」と言い出して、それで私が考えたのが「桃栗3年柿8年ゲーム」というもので。ひたすら木を育てるゲームなんですけれども、ただ、1ゲームをやるのに8年かかっちゃうんですよ。
当時は育成ゲームがまだなかったので、もしこれを作っていたら、世界初の育成ゲームになっていたのかなと思っています。
2番目は、当時はまだマウスが一般的ではなくて、画面にタッチをするとクリックしたことになるというライトペンの時代でした。そのライトペンを使ったダーツゲーム。これもやはりなんかいろいろなものが壊れそうなのでダメ。ボツになりました。
その他に「リアルタイム将棋」。とにかく早く(駒を)動かしたほうが勝ちという将棋とかをやっていましたが、この頃にはもう社長がゲームを作る熱が冷めて、全部ポシャっちゃいました。
(スライドを示して)あとは大学ではこんなものを使っていました。日立のスーパーコンピューターを使っていたんですが、研究室の中はApple-IIという非常に古いマシンと、フロッピーディスクも表裏を使っていました。
あとは、磁気ディスクを信用しない教授の授業ではフロッピーディスクを使うのは禁止されて、パンチカードとか……。もう最後の世代だと思います。
1988年、会社に入社しました。ちょっと研究所っぽいところだったんですけどね。MicroVAXとかSunのワークステーションとか、この頃からかインターネットを始めています。
最初は4.3BSDのUNIXからTCP/IPとインターネットモジュールを、まだTCP/IPを持っていない他の16bitコンピューターからスーパーコンピューターまで移植する、というプロジェクトに入っていました。
(スライドを示して)その時にやったのがこんなことですね。UNIXの中のカーネルの中のモジュールなので、コンパイルするのに遅いし、メチャクチャ時間がかかるんですよ。入れ替えて、立ち上げてとかをやっていると、1行直すだけでも2時間ぐらいかかるんですよね。
もちろんログファイルにも書けない、デバッガも使えないみたいな感じで難しかったんですけれども、TCP/IPが動くだけの仮想的なOSもどきを作って、その上でTCP/IPを動かして、その上でTELNETやFTPを動かして、1つのコンピューターの上でTCP/IP通信ができる。こんな開発環境を作っていました。
これも仕事が暇だったので遊びで作って、「こんなのできました」と持って行ったら「じゃあ、これを売ろう」となったやつですね。
この頃、新人さんが集まって、まだ英語しかなかったものを翻訳しながらリンクを公開する「はじめてのAWK」というものをやっていました。これがとほほの書き方にけっこう似ていて、これが原点だったかなと思っています。
(スライドを示して)その他にやったのがこんなやつですね。疑似エージェントといって、当時はネットワーク管理システムを作っていたんですけれども、管理対象の機器をあまり貸してもらえないんですよね。
借りられてもちょっとしか借りられなくて、すぐに返さなきゃいけない。それでテストとか開発とかが面倒くさいので、疑似エージェントというものを作って、そいつがいったんSNMPでガーッと情報を集めるんですね。
それをテキストファイルにまとめて、そのテキストファイルを送ってもらう。それを読み込むと、同じような結果を返してくれる。これも遊びで、暇な時に「こんなのあったらいいなぁ」というかたちで作って、それを使って開発とかをやっていました。
(スライドを示して)あと会社でやったのはこんな感じですね。これはセキュリティ管理ソフトを作っていた時かな? モニタリングのアプリケーションをWindows上で作っていたんですけれども、それをアプライアンス化するということで、Linuxに移植しろと。
移植すると、なんかもうWindows版とLinux版のソースコードが二重になって面倒くさいので、「じゃあちょっと互換ライブラリを作っちゃえ」ということで。これは冬休みかなにかに作ったのかな?
冬休みにちょろちょろっと作って、コンパイルしたら動いちゃって。変えたのはパス名の¥を/に変えるぐらい。これでなんか動いちゃったねみたいな、そんなことをやっていました。
当時はまだ残業規制とかがぜんぜんなくて。作るのが楽しかったので、もう仕事なのか趣味なのかというなかで、けっこう楽しくやっていました。先輩とケンカしたこともあるんですけれども、そのケンカも「このモジュールはわしが作るんじゃ!」「いやいや! 俺のほうじゃろ」とか言って。そんな感じでケンカしたことが1回あるんですよね。楽しかった時代です。
それから「とほほのWWW入門」を開設したのが会社に入ってしばらく経った1996年ですね。プロバイダに入って、そのあと9月10日に「とほほのHTML入門」、9月24日に「とほほのJavaScript入門」を作って、10月25日に「とほほのWWW入門」に改版しています。
(スライドを示して)これは岡山のオープンセミナーでも話した内容ですが、アイコンとバナーはこんな感じです。「とほほアイコン」と呼ばれていますが、実は「ポップ君」という名前がついています。
あまり知られていないですね。当時は88×31の黄金比のバナーが流行っていましたので、そんな感じで、ガンダムのような色使いでやっていました。
このアイコンはけっこう売れるみたいで、本を2冊出しているんですけれども、やはり「とほほアイコン」のほうが人気が高いみたいですね。
それからサイトの中で「ラウンジ」という掲示板をやっていました。1997年です。Web作成に関する質問&回答コーナーみたいな感じです。今でいう「Yahoo!知恵袋」みたいな感じですね。質問する人がいて答える人がいて、ということをやっていました。
この前チラッとネットでニュースを見ていたら、ひろゆきさんの「2チャンネル」が「あめぞう掲示板」をパクッていると。それに対してひろゆきさんが「いやいや、パクッていないよ。ベースになるとしたら、とほほ入門にあった掲示板のスクリプトだね」みたいな(ことをお話しされている)記事を読んで、「あぁ、そうなんだ」と。
(会場拍手)
ありがとうございます(笑)。「スレッドフロー型掲示板」と「Wikipedia」にも載っているらしくて。それを見ると、あめぞう掲示板が基で、そこから2チャンネルにという流れがあるんですよね。でもなんか、年で見たら僕のほうが1年早いんだよな。
(会場笑)
もしかすると最初だったのかなぁと思っています。
なんだかんだでやりながら、「とほほのWWW入門」でもいろいろ紹介しています。言語系とかフレームワーク系とか、その他系とか。先々週ぐらいだったかな? Next.jsとかもちょっと増えています。こんなことを紹介しているので見にきてください。
あとね、ラウンジをやっている時に、スタイルシート論争というものに巻き込まれたというか、始めちゃったというか、そういったこともありました。当時HTML4.0とかCSSとかXHTMLとか、そのあたりにも「推進していくんだ! 使わない奴はやっつけろ!」みたいな風潮があって。
「移行する・しないというのは個人の自由なんじゃないの?」と言ったんですが、私の伝え方もまずかったんですよね。ちょっと論争みたいなこともあったなという、そんなこともありました。
結局のところ、XHTMLがやり過ぎたというか、思想が高すぎたんだろうなということで挫折となり、今はHTML5になっています。
実はHTML5も廃止済みで、今はWHATWG(Web Hypertext Application Technology Working Group)のHTML Living Standardが標準になっています。
昔から会社でもいろいろなものを見てきていて、仕様があるんですがHTML4.0とかXHTMLはHTML5になったりとか、IPv6は仕様書に出てきたけどなかなか普及しなかったりとかしていました。
最近だとXML/SOAPもJSON/RESTになってきたり、本当に古いところだとToken RingがEthernet(になったり)とか、壊れないコンピューターが壊れてもいいコンピューター(になったり)とか。いろいろなものが、厳格なものよりも多少シンプルなもの、ルーズでもいいからシンプルなものが普及しやすいのかなと思っています。
なんでもきちっとできる、完璧もいいんですけが、それだとなかなか広まらなくて。広まるものは、ちょっと良い仕様の必須条件なのかなと思ったりもしています。
(次回につづく)
関連タグ:
2024.12.20
日本の約10倍がん患者が殺到し、病院はキャパオーバー ジャパンハートが描く医療の未来と、カンボジアに新病院を作る理由
2024.12.19
12万通りの「資格の組み合わせ」の中で厳選された60の項目 532の資格を持つ林雄次氏の新刊『資格のかけ算』の見所
2024.12.16
32歳で成績最下位から1年でトップ営業になれた理由 売るテクニックよりも大事な「あり方」
2023.03.21
民間宇宙開発で高まる「飛行機とロケットの衝突」の危機...どうやって回避する?
PR | 2024.12.20
モンスター化したExcelが、ある日突然崩壊 昭和のガス工事会社を生まれ変わらせた、起死回生のノーコード活用術
2024.12.12
会議で発言しやすくなる「心理的安全性」を高めるには ファシリテーションがうまい人の3つの条件
2024.12.18
「社長以外みんな儲かる給与設計」にした理由 経営者たちが語る、優秀な人材集め・会社を発展させるためのヒント
2024.12.17
面接で「後輩を指導できなさそう」と思われる人の伝え方 歳を重ねるほど重視される経験の「ノウハウ化」
2024.12.13
ファシリテーターは「しゃべらないほうがいい」理由 入山章栄氏が語る、心理的安全性の高い場を作るポイント
2024.12.10
メールのラリー回数でわかる「評価されない人」の特徴 職場での評価を下げる行動5選
Climbers Startup JAPAN EXPO 2024 - 秋 -
2024.11.20 - 2024.11.21
『主体的なキャリア形成』を考える~資格のかけ算について〜
2024.12.07 - 2024.12.07
Startup CTO of the year 2024
2024.11.19 - 2024.11.19
社員の力を引き出す経営戦略〜ひとり一人が自ら成長する組織づくり〜
2024.11.20 - 2024.11.20
「確率思考」で未来を見通す 事業を成功に導く意思決定 ~エビデンス・ベースド・マーケティング思考の調査分析で事業に有効な予測手法とは~
2024.11.05 - 2024.11.05