macbook買いました。
初のmacなんで色々心配でしたが、なんか使いやすい感じがしますね。
bootcampっていうwindows環境を構築できるのがあるので使いにくかったらそれでwindows環境にしちゃえばいいかって思ってたんですが、その必要はとりあえずなさそうですね。
ただ、まだ慣れないのでキーボードの使い方もままならない。。。
パソコン自体久しぶりに買ったので、今はwindowsでもそうなのかもしれないけど、ネットワークの接続とか、写真の取り込みとか、サーバへの接続とか色々なことがトラブルなく進んでくのはストレスがなくていいですね。
昔は、色々と悩まされていたのに。。。。
後、普通の人はあんまり興味がないかもしれないけど、terminalからUNIXコマンドが使えるのがいいですね。
SSHですぐにサーバに接続とかできるし。
ただ、やっぱりscpはちょっと慣れないせいか使いづらい。。。
WinSCPに慣れすぎた。
なるべく純正のもので環境を作りたい感じなんですが、なんかツールとか入れた方がいいのかな。
とはいっても、さっそくFirefoxとThunderbirdはインストールしてしまいましたが。。。。
ついでに、今日ビデオカメラも買ってしまいました。もちろん息子を撮影するために。。。
今週は、お金使いすぎました。。。。。
javascript
javascriptロジックとHTMLが完全に分離できるのがいい!
それとGreasemonkeyも気になる。
やっぱこれからはjavascript本気でやらなきゃかね。。。
p_blog
PHPで書かれているのでカスタマイズもしやすい。
ここで書いてる記事もとりあえず移行してみました。
freestyle programmer's blog
とりあえず、近いうちは両方を更新していく感じで、ちょっとづつ移行していこうかな。。。。
最近フレームワークについて思うこと
最近の流行的には、ほとんどのフレームワークがフロントコントローラを採用している。
私の良く使うmojaviもZendFrameWorkのZend_Controllerもそうですね。
ひとりでやってる分にはいいかなぁと思っていたんですが、やっぱりプロジェクトで使う、
また、運用、保守は開発メンバーとは別メンバーが引き継ぐっていうときに、ページコントローラの方が
良いんじゃないかって思ってきました。
引継ぎの際に完璧な形で設計書が残されていているか、引き継ぐ相手ができるプログラマーだったら、
フロントコントローラでもまったく問題ないと思いますが、それ以外の場合はやっぱりページコントローラの方が
いい気がする。
別に、ページコントローラだからってソースが汚くなるわけではなく、ルール決めをしっかりと行っていないから
汚くなるわけだよね。
それに、やっぱりページコントローラの利点として、URLと対応するファイルがそろっていて、
そのアクセスされているファイルを見ればそこからすべてソースコードを追えるってことにあると思う。
(まあフロントコントローラでも追えるのですが、追いやすいということで)
他にもいろいろ理由はあるのですがとりあえず今日はここまで。。。
中途半端だけど。。。。
Rapid Framework (Mojavi4)
なんかいつの間にか、Mojaviのサイトが変わってましたね。
ただ、TOPからのリンク先がまだないけど。。。
もうすでに開発しなくなったのかと思っていましたが、なんか活動が始まるのでしょうか。
最近はZend Frameworkを使い始めていたのですが、Mojaviがまた復活するのであれば悩むところかな。。
PHPフレームワーク
以前、Mojaviに関してblog書いたときに作ったPHPフレームワークについてのアンケートです。
お暇な方は回答してくださいね。
一応、このアンケートを作成するサイト自体をMojaviで作ってます。
WEBアプリケーションエンジニアの二極化スパイラルへの仮説
最近、WEBアプリケーションエンジニアの求人情報が好調だ。
好調というのは、求人数が多く求職者に対する給料が上がっているということ。
WEBアプリケーションは、他の技術、例えば自動車や電気製品などよりもよりオープンに技術が公開されている。
そのためどこかのWEBサイトで一歩進んだ技術が採用されれば、
即他のWEBサイトでも同じような技術が採用される。
それは、その技術がネット上で公開されていることが大きい。
そうなると、競合他社どこかで新しい技術が使われたら、その他の競合は
その会社に遅れをとらないよう同じ技術を採用しなくてはならなくなる。
こうなると、
技術の変化は恐ろしく早い。
そして、その技術を使えるエンジニアのいるITベンダーは恐ろしく仕事が増える。
よって、
WEBアプリケーションエンジニアの人材争奪合戦になる。
と、ここまでだと今まで、全然WEBとは無縁の仕事をしてきた人も
「やっぱこれからは手に職だよな」
といって安易にプログラマーになろうとする。
今までは、「文系からプログラマー」「まったくの初心者でもOK」という求人が数多くあった。
しかし、これらは今までの話。これからはこのような求人はなくなっていくと思われる。
もちろん文系からでもまったくの初心者でも優秀なプログラマーになれる。
しかし、数学が苦手で消去法で文系を選んだ人が、自動車会社の設計士を目指すことの様に、
安易に踏み込める領域ではなくなる。
今までは、たしかにプログラムはちょっと勉強すればある程度のWEBサイトがつくれた。
しかし、これからはそんな簡単に作れるようなWEBサイトは必要なくなる。
というか、新しく作られることがなくなる。
さらに、ちょっと勉強しただけの人が作成できるようなものは、全部自動で出来てしまうようになる。
最近のRuby on Rails , Symphony (訂正-> Symfony) などはその典型だ。
今までは、優秀な一部の設計者+数多くのプログラマーでプロジェクトが組まれていたが、
今後は設計とプログラムができる少数の優秀なエンジニアでプロジェクトが組まれることになる。
そうなると、企業が欲しがる人材には高額な給料が提示されるかわりに、その他のエンジニアは必要とされなくなってしまう。
あくまで仮説ですが
こうなるといつまでたっても必要とされないエンジニアにならないよう日々勉強ですね。。。
あぁ大変。。。。。
Mojavi SEO対策
こんな感じ ↓
http://xxxxx.co.jp/index.php?module=Defult&action=Index
そのため、各ページを検索エンジンに拾ってもらうためにちょっとした工夫が必要になります。
まずは、Mojaviのconfig.phpファイルの↓の部分を1から2に変更。
define('URL_FORMAT',1); => define('URL_FORMAT',2);
こうすることで、引数がPATHフォーマットでもMojaviが認識するようになります。
こんな感じ ↓ でも上のURLと同じ動き
http://xxxxx.co.jp/index.php/module/Default/action/Index/
そしてさらに、Mojaviのindex.phpを配置しているディレクトリに、以下の記述をした.htaccessを配置します。
<FilesMatch "^index$">
ForceType application/x-httpd-php
</FilesMatch>
最後に、index.phpをコピーして、index にすれば、出来上がり。
するとこんな感じのURL ↓ でアクセスできます。
http://xxxxx.co.jp/index/module/Default/action/Index/
お気に入りのPHPフレームワークは?
リファクタリング
自分の作ってるプログラムがなんとなく不安なときにはリファクタリングをする。
もうすでに動いているシステムなので、書き換えるのには思ったほど時間はかからない。
リファクタリングをすることで新たなバグを生んでしまう可能性は十分にありえるけど、
これから遭遇するであろう困難な問題に比べればたいしたことない。
勇気を持ってリファクタリングを。
リファクタリングをする際に、どうしていいかわからない場合は
まず、全体を見渡して共通部分を見つける。
この際に気をつけなければならないポイントは、
ここで言う共通部分とは同じプログラムが記述してあるだけではない。
論理的に考えて必ず同じでなければならない場所のこと。
これを間違えると後から修正が困難になる。
この部分をまとめていくだけでソースコードはすっきりする。
さらにもう一段階。
今度は、プログラムの実行階層をそろえること。
これは、実際に行おうとするとかなり大幅な修正が必要となるが実行階層をそろえる前とそろえた後では、極端にソースコードの質が変わってくる。
