2018-10-17に更新

2005~2009年あたりのWeb開発がどんなのだったか

現在Web開発といえばバックエンドであればRuby, PHP, Python, Node, Elixir等、フロントであればReact, Vue, Angular等を自由に選び、インフラもHeroku, Firebaseやその他サーバーレス構成で無料運用など選んで使え、バラエティに富んだ方法で自分の個性にあったものを使い楽しく行うことができる。

でも、2005~2009年頃はそうではなかった。ふと思い出したので色々調べつつ色々書き出してみる。(個人の知識をベースにした内容のため、知らない部分を含めると間違っている部分もあるかもしれない。また各年の記述はWikipediaでざっと調べたので違ってる可能性もあるかも知れない)

プログラミング言語

確かWeb界隈で主に使われていたのはJava, PHP, Perl, Ruby, JavaScriptだったと思う。会社での業務でどうだったかは知らないが、レンタルサーバーで使えるということでとにかくサーバーサイドはPHPとPerlの人口の割合がかなり多かったのではないかと思う。フロントで必要だったのでJavaScriptは当然よく使われていた。

PHP

このころは一応PHP5も出ていたようだが、調べてみるとリリースされたばかりの過渡期だったようで、PHP4もまだかなり使われていた。当時のさくらインターネットのニュース等を見てみるとまだまだ新しいバージョンを使えるようにしていて現役っぽい感じがする。

さくらのレンタルサーバ PHP 4.4.2-dev(開発版) 提供のお知らせ

バージョンの違い問題

前述の通り、PHPのバージョンの過渡期であり、どこを見ても違うバージョンが動いていた。この頃は当然Dockerもないので、とにかくローカルやサーバーでPHPのバージョンが違って動かなかったりという感じで混乱しまくっていた気がする。

フレームワーク乱立問題

PHPは色々なフレームワークが作られていた。Mojavi, Zend, CodeIgniter等。

特にCakePHP1が革新的で、この頃はかなり高いシェアを誇っていたのではないかと思う。僕自身スクリーンキャストを見た時の興奮は計り知れない。あっという間にWebアプリケーションが作れてしまうのだから。この頃はまだPHP4用と5用のモデルクラスに分かれていて、内部で振り分けられていたりした。その後CakePHPとCodeIgniterだけが残って行ったように思う。

じゃあ何が問題なのかというと、この頃は各個人、各社の間で独自のオレオレフレームワークを作る事が大流行してしまっていた。単に遊びで作るだけなら良いのだが、普通に業務でも使われていたりした。仕様もよくわからないし、そもそもCakePHP等と比べると何も便利ですらないしものすごくコード量も増えるので、本当に大変だった。

僕自身ちいたんというフレームワークを作って一般公開していたりした(結構使ってくれたりWeb上で解説したりしてくれる人がいた)。もちろんそれを仕事でも小さい案件で使ったりしたので、ちょっと前に修正依頼が来た時に非常に後悔した覚えがある。

PHPの歴史上大量の技術的負債を発生させた時期だったと思う。

Perl

これもCGIの動くレンタルサーバーでは使えるのがデフォルトだったので、非常によく使われていたのではないかと思う。とくにはてなやmixiが実際に業務でもガンガンに使っていたのでそれが人気に拍車をかけていたと思う。なんとなくPerlを使いこなせる人はかっこいい、みたいな印象があった気がする。

サーバーの構築を説明しているサイトなどでも、Apacheの設定方法を解説しているページではとりあえずperlを動かして動作確認する説明が入っていたりした。

Ruby

ある時からRuby on Railsがめちゃくちゃ流行りだしていた気がする。ナウいし名前もカッコいいしGemも使えるという現在のモダンな思想に一番近いものだったので。

ただレンタルサーバーでは使えないので、恐らく個人で色々サービスを作る人達や、自分でサーバーを構築できる時の業務などでどんどん使われ始めていったのではないかと思う。

JavaScript

Node.jsは当然この時期には無いのでフロントのみに用いられていた。Ajaxという言葉がむちゃくちゃ流行っていた。

jQueryがまだ出始めだった時期で、でもその便利さから一気に流行っていった気がする。

それまでは主にprototype.jsというライブラリが使われていた。たしかほとんどidベースでしか要素を取ってこれなかったのではなかったかなと思う。僕の昔の開発物にも残っていたりするので非常に困る。特にjQueryと同様$を使っているのが。当時も名前をどうしても覚えられず今もうまく検索できず見つけられないのだが、scriptなんとかciousという色々すごいことができる拡張ライブラリもあった。

当然Webpackなどもないので、他のjsファイルをロードしたい場合にはscriptタグを動的に追加するみたいなことをしていた気がする。

ちなみに当時はまだガラケーがよく使われていたが、JavaScriptが動かないので使えなかった。

あとjQuery.mobileっていうSPAが当時既に存在していたの知ってるだろうか。あれも設定不足でリンクの挙動とかが変わっちゃったりして結構色々な人を苦しめていた気がする。

Python

僕は使っていなかったので謎。でもPythonで作られているライブラリなどは時々見かけた気がするので、結構使われていたのかもしれない。(特に海外で?)

調べてみるとDjangoも一応2005年にリリースされていたらしい。

インフラ

当時は今みたいなクラウドサーバーとか、Herokuみたいに簡単にデプロイできるサービスとか、サーバーレスなんてものはなかった。

レンタルサーバー

多分今よりレンタルサーバーが使われる機会が多かったのではないかと思う。ロリポップ、エックスサーバー等。特にさくらの共用レンタルサーバーとかが使われることが多かったのでは? さくらはssh接続が使えたので便利だった(エックスサーバーも当時から可能だった?)

専用サーバー

それ以外には専用サーバーになってしまうので、初期費用別で毎月1万円近くかかってしまうこともあったが、サービスを運営している人は個人でもそういうのを使っていた人は多いのでは。運営者のブログとか見ると専用サーバーを使っているとかちょこちょこあった気がする。

VPS

あとはVPSも出てきていたので専用サーバーよりは安くなっていったと思う。ただ、パフォーマンスが良くなかったり調子が悪かったりして結構文句の声も上がっていた気がする。

AWS

調べてみると2006年くらいにEC2も出てきてたらしい。確かにどこかの時期でAWSを使っているという人やネットでも情報が出始めたりしていた。結局個人ではやはり高くて僕は手を出せなかった気がするが。

当時はAmazonといえば本を売っているサービスだったので、なんでそんな会社がサーバーのサービスをやっているのか不思議に思っていたが、今考えればあれだけ流行っていたサービスを運営している会社であれば何も不思議ではなかった。当時からアソシエイトやAPIなど、技術的なことに関しては先進的だった気がする。やはり歴史が長いので現在も一強なのは頷ける。

ブラウザ

PC

Chromeは2008年にリリースされたため、それまでは存在しなかった。それまではIE、Firefox、Safari、Operaあたりが主に使われていた。IEがかなりシェアが高く、Firefoxもめちゃくちゃ多かった気がする。SafariやOperaはどうだったんだろう?

何にしろ開発中に、SafariやOperaだとちゃんと動かないんですが、みたいな報告はあった。

Chromeが出てからは、とにかく速いということで一気にChromeユーザーが増えていった気がする。

携帯

まだガラケーがメインだったと思う。日本でのiPhone発売が2008年らしい。

JavaScriptは動かないし、HTMLやCSSもまともに動かなかったり、GPS等を使うのに特殊な方法が必要だったり、そもそもau、SoftBank(この頃vodafone?)、DoCoMoで挙動が違うのでそれぞれ実装しなきゃいけなかった。

Flashも動的に動かすためにはプログラムで直接中身を動的に書き換えたりするとかで、本当にガラケーはWeb開発界隈的には最悪な環境だった。スマホとPCだけ気にすればいい今の時代はかなり恵まれている。

デザイン

僕はデザイナーじゃないので詳しいことはわからないが、一応色々触った範囲で覚えていることを書いておく。ちなみにこのあたりはちょっと前にかなり流行った下記の記事の方が参考になる。

若い世代が知らない2000年代のHTMLコーディングの地獄 - ICS MEDIA

CSS

とにかく単なるCSS。WebpackもないのでSCSS等は無い。と言いたいところだが調べてみるとScssはFirst appearedが2006年になっている。多分Gemとかでは早くから使われていたのかもしれない。

とはいえできることは少なかった。角丸もないし、Flexboxも、box-shadowも、transitionのようなアニメーション系も。beforeとかafterとかも? とにかくそういうのは全部divとかtableで画像を組み合わせてやっていた。

余白を作るために1pxの画像を使っていたため、どのプロジェクトにもそういう画像が置いてあった。でもよく考えたらなんでなんだろう。paddingやmarginはあったと思うが…。

IE問題

Flexboxがいつから出たのかは忘れたが、とりあえず当時はなかったので全部floatを使ってレイアウトは実装されていた。いや、正しくはまだdivではなくtableをネストしまくるデザインが多かったので、過渡期ではあった。

何にしろfloatによるデザインが進んでいたのだが、IEが自己中心的な仕様でHTMLとCSSを解釈していたため、IEとFirefoxで表示が変わってしまうという問題が多発し、どちらにも対応するために変な決まった実装方法でないとダメ、みたいな感じになっていた。逆に面倒だからもうtableのままでいいや、みたいな人も結構いたのではないだろうか。

多分Chromeの出現から、どんどんIEの異常性の認知が進んでいったのではないだろうか。結構IEが正しいのになんでFirefoxは、という間違った情報も飛び交っていた気がする。

Flash

当時、HTML5もCSS3もcanvasも無かったので、みんなWeb上のリッチコンテンツとしてFlashを使っていた(DOM操作のものもあった)。全部コードで書けるエンジニア向けのFlexというのもあった。

Flash職人みたいな人たちがたくさんいて、毎年2chで紅白みたいなのをやっていた。

エディタ

AtomやVisual Studio Code等は無い。僕はさくらエディタを使っていた。一応Eclipseとか有料の物含めIDE的なものはあったと思うが、正直これぞ、というものはなかった。秀丸も使っていた人がまだ多かったのでは。

そんな中2008年にSublime Textができたらしいので、流行ったのは納得がいく。

Vimmerは多分ずっとVimを使っていたのだろう。僕もmacユーザーだったら恐らくVimしか使っていなかったと思う。

バージョン管理

Subversionが主に使われていたと思う。一応2005年にGitもリリースされていたようだが、GitHubが2008年らしいので恐らく日本でGitが流行りだしたのはそのへんではないだろうか。

ちょっと前にも使う機会があったが、全ての処理がリモートでまともなブランチ運用ができず、ローカルで失敗してもやり直せばOK、みたいなのもないので正直仕事として使うのは無理があったように思う。本当に今はGitがメインになりいい時代になった。

サービス等

Twitter

2006年からとのこと。多分それからすぐOAuth認証が実装されたわけではないと思うので、今みたいな簡単なソーシャルログイン実装等はできなかったのだろう。

mixi

2008~2009年頃にmixiアプリが実装された。多分国内初のソーシャルアプリプラットホームで、個人的にかなり熱かった。ぼくもここで法人化してネココレース、本格小説といった売れないアプリを出したりした。

これからどんどんmobageやGREEでも始まり、ガチャをメインとしたカードゲームやキャラ集めソーシャルゲームが流行っていった。開発に携わった方も多いのではないだろうか。

情報収集系

何だったんだろう!? 全く思い出せない。はてなブックマークもまだ出てなかったか、出てすぐなので今みたいなエントリー一覧は無かったのでは?

クラウドソーシング

ランサーズは2008年くらいに登場していたようだが、それまでは恐らく@SOHOやさぶみっとのマッチングサービスが主流だったのではないだろうか。現在のランサーズやクラウドワークスとは違い、サービス内で費用のやり取りがなかったため、フリーランスは直接顧客を見つけることができメリットが大きかった。(その分サービス運営側のメリットが少なすぎたのではないかと思うが)

まとめ

発展途上のものが無いわけではないが、今は本当にいい時代。

個人的に技術界隈のものはほとんどがファッションと同じだと思っている。プログラミング言語も、フレームワークも、その他環境も、初心者or熟練者であるかも、広くいろいろ学びたいor一つの事にのめり込みたいかさえも。

みんな仲良くいがみ合わず、他者の興味のあるファッションを尊重しつつ、好きなものを使って楽しくWeb開発していこう。

あと正直この記事書いてる事自体が楽しかったので、他にも昔のアプリ業界とか、昔のIoT業界とか、昔の機械学習業界とか、書ける人がいたら是非書いてほしい。


dala00

Crieitの開発者です。 主にLAMPで開発しているWebエンジニアです(在宅)。大体10年程。 業務依頼、同業種の方からのコンタクトなどお気軽にご連絡ください。 業務経験有:PHP, MySQL, Laravel5, CakePHP3, JavaScript, RoR 趣味:Elixir, Phoenix, Node, Nuxt, Express, Vue等色々

Crieitはαバージョンで開発中です。進捗は公式Twitterアカウントをフォローして確認してください。 興味がある方は是非記事の投稿もお願いします! どんな軽い内容でも嬉しいです。
なぜCrieitを作ろうと思ったか
関連記事

コメント