カンボジアにて、独学でWEB技術をもぐもぐしております。

カンボジア人が制作したWEBサイトの保守・修正の愚痴あれこれ

»

ជំរាបសួរ អ្នកត្រូវបានគេ ពីរបៀប ធ្វើ? ខ្ញុំ ជប៉ុន

2f2ae659.jpg

彼はカンボジアの有名なコメディアンで...って名倉やないかい!

カンボジアでのWEB制作について

カンボジアでは、日本と違ってITワーカーは割と人気の職種。現地の子と話をしてると、医者とか弁護士よりも、IT関係とかバンカーの方がカッコいいというか、イケてる仕事ってイメージがあるようで。

なぜかって?給料が比較的高いってのもあるけど、デスクワークなのが結構魅力らしい。外は暑いからね。納得の理由。あと、スーツを着れる仕事に就いてるってのも結構ステータスになるらしい。

ちなみに、カンボジアの最低賃金って、月140ドルぐらい。レストランスタッフなら140ドル、マネージャクラスで400ドル、1000ドル貰えばローカル企業の社長クラス。

そんな中、私が知っている事例だと、フリーのカンボジア人プログラマがポータルサイトの制作を請けて、2ヶ月納期で2000ドルの報酬を貰っていた。ITのスキルさえあれば、並のカンボジア人の年収以上を叩き出すことも可能だったりする。夢のある話だ。

さて、私は今、そんなカンボジア人たちが作ったWEBサイトの保守・修正を行っている。カンボジア人のプログラマと一緒に働いたことはないけど、彼らが残したソースコードと戦う毎日だ。

その中で、色々と「このやろー!」と思うことがあったので、ここで愚痴りたいと思う。

事例1:車輪の再開発

とあるサイトでBootstrapというCSSフレームワークを使っていた。

詳しい説明は省くが、このBootstrapの魅力は「PCとスマホの表示切り替えをすっごく楽に実装できる」という点にある。

Bootstrapの記法を理解し正しく運用すれば、HTMLでマークアップするだけでレスポンシブサイトが実現できるのだ。CSSも、 Javascriptも、PHPも、いずれのコードも必要ない。素晴らしい。

が、Bootstrapを採用しているのにも関わらず、PHPの自作関数でレスポンシブ機能が実装されていた。俗に言う「車輪の再開発」である。

さらにソースコードの中身をよくよく見ていると、Bootstrapの記法を完全に無視し、必要なスタイルがCSSで再定義されていた。

どうやら、Bootstrapの基本概念や仕様を理解しないまま、開発を進めてしまっていたらしい。なんてこった。泣いた。

また、このサイトはLaravelというWEBフレームワークで構築されていた。これまた詳しい説明は省くが、共通部品はテンプレートパーツとして再利用できる仕組みがある。

Don't repeat yourself、同じコードを繰り返すな、再利用しろ。プログラマの原則である。

だが悲しいかな、コピペで増殖した似たようなコード群。テンプレートパーツに引数を渡して実装すれば、機能を使いまわせるのに。

それに加え、MVCモデルの恩恵もガン無視である。モデルクラスにロジックを埋め込めば、ビューでもコントローラーでも使いまわせるのに。ファットコントローラーはマジ勘弁。

フレームワークが提供する素晴らしい機能は悉く無視され、残されたのは残念コードだったとさ。なんたる悲劇。

事例2:機能の実装漏れ

「このページに検索機能を付けてくれ」と頼んでいて、そのページには検索ボタンが設置されていた。いざボタンを押してみると、トップページに逆戻り。

私が引き継いだ時はそんな状態だった。単なるリンクの設定ミスかなーと思っていたが、サイトを解析している内に驚愕の事実が。そもそも、そんな機能は実装されてなかった。

泣く泣く私がその機能をイチから再実装するハメに。なんでや。

事例3:点在するバグ

絞り込み検索をすればするほど、検索結果が増えるバグ。解析してみると、SQL文のANDとORの設定が逆だった。おい。

管理画面で情報入力する際、どうも挙動がおかしい。解析してみると、参照するテーブルが間違っていた。ソース上には、バグを直そうと頑張った痕跡があった。どうやら途中で力尽きたようだった。おい。

他にも細かいのがいっぱいあるけど、こういう感じのバグが非常に多い。

日本と違って、70%程度の出来でリリースしてしまって、運用しながらバグ潰し...ってスタイルが海外では一般的なそうなので、これが一概に悪いとは言えないのかもしれないが。

事例4:BRタグ連打

キイイイイイイーーー!!!!

HTMLタグのマークアップをするとき、行間を空けるためにbrタグを多用していた。古き良きテキストサイトかよ。やめてくれ。段落や行間を表現したいなら、pタグ使うなり、spanタグでマージン設定するなりしてくれ。

あーすっきりした

こういう愚痴って、多分カンボジアに限った話じゃなくて、日本でもよくあるんだろうなーとも思う。  

コードのリファクタリングは結構良い経験になるそうなので、スキルアップしてるぞ!と前向きに考えるようにしよう、うん。

コラムっつうか愚痴で申し訳ない。カンボジアあんま関係ないし。

Comment(4)

コメント

くーろ

とても悲しむべきことに、日本でもそういう会社はあるんですよね。
ベンダーではなく、クライアントにそのまま納品して炎上するのがウチですorz

ksiroi

指導できる人材がいないとまぁそうなるよね、っていう典型例っすな…
日本に限らず、どこの現場でもまま露呈する状況…。ベンチャーとかに多いっすね。

6A1U

> くーろ 様

>> クライアントにそのまま納品して炎上

事後対応で結局利益が出ないんですね、わかります( ´ω´ )


6A1U


> ksiroi 様

>> 指導できる人材がいない

本当にソレが問題なんですよね。育てたら育てたで独立されちゃうってのも泣きどころ。


>> ベンチャーとかに多い

カンボジアは国自体がベンチャーみたいなモンなので、諦めるしか...(絶望

コメントを投稿する