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

カンボジアで働いている人の備忘録

24歳、なんかカンボジアで起業したみたいです(他人事)

未経験でWEB関連の仕事に取り掛かった - 1日目

今日は09:00からオフィスにこもってサイトの解析に当たっていた。とりあえずバックアップを取ったDBの管理権限を貰い、既存のソースの置き場は教えてもらったんだが...WEB関連の経験なんかほぼないので、正直どこから手をつけていいのか分からない。まずもってソースが読めない。致命的。 DBとPHPとHTMLがどう絡み合ってWEBサイトを構築しているのかがイメージできない。分かっちゃいたけどやっぱヤバい。

サイト作ったカンボジア人に連絡してみるという手段もあるのだが、その本人が有能すぎて捕まらないという状況らしい。やっぱ独学しかないか。

とりあえずファイル構造を眺めてみる

既存のサイトにAPIを追加すればいいと言えば話は単純だが、修正箇所のアタリを付けられないことには話にならない。言語と記法とかとりあえず置いといて、まずはサイト自体がどういう構造なのか把握すること方向で考えよう。修正の基本はまず既存コードを眺めるとこから。これ鉄則。今回は個人製作だから設計書なんてないし、断片的な情報から推察しつつ手探りでやるしかない。

ちなみにこのサイト、カンボジア人が作ったもの。ファイル構造やソース自体は凄くキレイ。すごい。キレイ過ぎるというか、手作り感があんま感じられない。一瞬触ったことのあるRuby on Railsと似た雰囲気。しっかり整理整頓されたMVCモデルになってる。ということはあれか。何らかのPHPフレームワークを使ってるっぽいな。

お次は何のフレームワークを使っているのかを調べる。ソースコードから推察するのは知識的に不可能なので、とりあえずファイル名とかから手掛かりを探っていく。プロジェクトの浅い階層に「yii.bat」とかいう変な名前のファイル発見。他に手掛かりもなかったので、ダメもとで「php yii framework 」でググってみた。

www.yiiframework.com

Yeaaaaaaaaaaaaaaaaah!!!!!

f:id:wn_trinity:20160303001816j:plain

なんて読むのかと思ったら"Yes, it is"の略で「Yii(イー)」って読むらしい。

初めに: Yii とは何か | The Definitive Guide to Yii | Yii PHP Framework

これが分かっただけでもかなりの収穫。フレームワークの記法・思想・ファイル構造を抑えてしまえば、他人のサイトでもある程度は解読できるハズ。

しかしこのYiiとかいうフレームワーク、日本語の情報が少ない。そら海外のエンジニアが使ってるフレームワークだし仕方ないか。手間だけど英語のサイトを参考にするしかない。

とりあえずYiiを動かせる環境構築をしてみる

Installing Yii - Getting Started - The Definitive Guide to Yii 2.0

このサイトを見つつ色々とインストール。エラーで止まったらその都度ググって足りないファイルを追加。毎回思うんだけど、プログラミングの一番面倒臭いトコってこの環境構築だよな...ここで心折れそうになる。面白くない割につまずくところ多いし。

指示通りにコマンドを流していく。やってることはよく分からないが、ローカルサーバを起動してindex.phpにアクセス。デモページが表示された。一応成功したらしい。やったぜ。本当はチュートリアル通りにやってのに例外が頻発しまくっててブチギレ寸前だったけど。バージョンいじったりファイル参照変えたりしてたら治った。なんで例外が出なくなったのか今でも分からんけど、動いたしまあいいか。

この作業だけで4時間ぐらいかかった。疲れた。まだ何もしてないのに。しかしまあ、これでも一歩前進。というか個人的には1日でよくやったと自分で褒めてやりたいくらい。

とにかく明日からはチュートリアルに従ってローカルにCRUD操作のできるページを構築して、そこにGoogle Mapを実装する...というゴールに向けて動いていこう。一通りの手順さえ分かれば、既存サイトの修正のイメージもできるはずだ。期限は2週間、どこまでやれるのやら。