読者です 読者をやめる 読者になる 読者になる

Minecraftとタートルと僕

PCゲームMinecraftのMOD「ComputerCraft」の情報を集めたニッチなブログです。

ニトリのコードを見てニヨニヨする会(そして最後にニヨニヨできなくなった話)

改題のお知らせ(2015.06.24 8:00)

内容と題名を合わせる為に、題名に()内の追記を入れました。 最後まで読んでいただければ幸いです。

このお話は、プログラマあるあるを探す(ニヨニヨする)ためにコードを読み始めた筆者が、 発見し、調べていくうちに、その背景にある事情を慮り、だんだん笑えなくなってくる流れをご紹介しています。

はじめに

ニトリのECサイトであるニトリネットがリニューアルに失敗して6日も経ってから復旧したということで、 (一部の)プログラマクラスタで話題になっています。

僕の率直な感想は次のようなもの。

閉鎖状態の「ニトリネット」が6/23にサイト運営を再開、不具合の主因はCPU不足 | ネットショップ担当者フォーラム

ともあれ関係者の皆さまお疲れ様でした。個人の責任問題などと短絡化することなく、粛々と原因解明と、できればぜひ知見の共有公開をお願いしたい。

2015/06/23 13:40

プレスリリースでは、原因としてCPU不足を挙げています。

珍しい原因ですよね。あまり聞いたこと無いのでぜひその知見を知りたいものです。

しかし次のようなつぶやきが

こんなツイートをみたら興味がわくじゃないですか! 

サイトトップページの(HTML)ソースコードを読んでみました。

プログラマあるある探しをする

流し読みなので適当なこともつぶやいていますが、当初はこんな感じ。

コメント行にニヨニヨ

authentication という単語は長すぎるのでこんなコメントはあるあるネタですよね。

/*NINSHO*/

/*PANKUZU(¥取る)*/

ネーミングセンスにニヨニヨ

ふと、気になる箇所が目に付く

  • なぜか数百行の空改行が何箇所もある。全部削れば1000行くらい圧縮できそう
  • 謎の空<li>が大量に(下図参照)

f:id:hevohevo:20150624003043p:plain:w400

コードを少し読み込んでみると、どうやらトップページにあるプルダウンメニュー(下図参照)のコードらしい。

本来は、このメニュー項目のサブ項目が設定してあったようです。

たとえば、下の図のプルダウンメニュー「ベッド」にマウスポインタを合わせると、その下位カテゴリのメニューが右にポップアップしてという動きでしょうか。たぶん。

でも、なぜかその項目文字列だけ削除されており、タグだけが残ったままです。

f:id:hevohevo:20150624003246p:plain:w400

もしかして各項目のサブ項目の要件定義が間に合わずに空欄にしてあるのかなと思ったのですが、このプルダウンメニューをクリックして飛んだページにはそれらサブ項目らしきものが見つかるわけで。

もう一つ気になる箇所

つまり、HTMLのBODYのど真ん中にCSSインクルードしているのです。しかも、h1やpなどの基本的なタグのスタイルを全てリセットするreset.cssなるものを。

CSSはHEADにというのが原則だと思っていたので不思議に思い、尋ねてみました。

たまたま上記ツイートを読んでくださった方から、次のようなコメントがいただけました。

また、次のようなコメントも。

そのようなやり方があるのですね。大規模サイトを構築したことがないので勉強になります。

最後はしみじみ

おそらく、コードを突貫工事で全面的に書き直したために、空白行などが含まれる荒さの目立つコードが出てきてしまったのだろうなと予想しています。

しばらくしたら、綺麗に整理されてこのような荒い部分はなくなるだろうなとも。

中の人、本当にお疲れ様です。

最初はニヨニヨと言いつつ、最後は自分に当てはめて落ち込みたくなりました。

ニヨニヨなんてできないよ・・・。

補足1

補足2(2015.06.24 1:50)

改めて読み直してみると、たしかにこの記事、茶化しすぎな気もしますね。

あまりに不快に思われる方が多いようでしたら削除しましょうか。

この件について、感想などコメントをください。

補足3(2015.06.25 01:15)

一時は記事そのものを削除することも考えましたが、 ふざけて書いた補足1の文章を削り、本文中の明らかに茶化すような表現を修正することで記事自体は残すことにします。

タイトルにある「ニヨニヨ」という言葉も大変不評なので削るべきかとは思いますが、すでにこれだけの方が読んでいる記事でタイトルを大幅に改編することは混乱を招くと思い、軽率な私自身への自戒の意味も込めて現在のままにしておきます。