Skip to content

Instantly share code, notes, and snippets.

@matarillo
Last active April 24, 2016 07:45
Show Gist options
  • Star 9 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save matarillo/6208533 to your computer and use it in GitHub Desktop.
Save matarillo/6208533 to your computer and use it in GitHub Desktop.

#WindowsでPHP開発すると生きるのがつらいのを軽減する方法 Web PIと WebMatrix を使いましょう。ApacheはやめてIISにしましょう。

つらみが解決されるか?というと、そんなことはないでしょうね。 そのたびに、「××がやりたいだけなのにできない○○なんて糞」と大声で言えば、多量のノイズと少量の有益な情報が速やかに集まるので、それはそれでいいんじゃないのかと思います。ストレス解消にもなるし、DIS上等ですよね。

(こっちにも追記) こんな日本語ドキュメントがあるんだから、MSには金あるよねー。PHP on Windows ガイドライン

##追記

ちゃんと書かないと伝わんないから書くけど、ぼくは元記事であるWindows Vista以降を使うと生きるのがつらい理由については否定しないというかむしろ肯定側。特に、「そもそもWAMP環境は似非のかたまりであり、苦行であって、楽をしようとかできるはずがない。」は、ほんとそうだよなって思ってる。

WAMPに限らないんだけど、FOSSコミュニティがWindowsを一級サポートしてるケースなんてほんとにレア。よくあるのが、プロダクトそのものは移植されてるんだけど、モジュールとかライブラリとかそういう周辺まで含めるとてんでダメなケース。そういう場合の多くはモジュールとかライブラリがPOSIX依存してるとかで、Cygwinを入れれば「動く」こともあるけど。Cygwinこそ似非のかたまりだと個人的には思っている。(WindowsでCygwinがなくても快適に動くFOSSプロダクトはほんとJava関連の一部だけじゃないかと思ったり。)

Windowsにはそりゃいいとこも悪いとこもあって、それをひっくるめてのWindowsなはず。なんだけど、Windows向けFOSSプロダクトはどうしても「移植」だから、Windowsを抽象化するというか、隠す方向で実装される。でも隠しきれるはずないんだ。ジョエル・スポルスキがいうところの「漏れのある抽象化」。

やっぱりWindowsを知らなきゃハマることはある(今回のUACとかね)。そういう場合はFOSSプロジェクトのFAQなどを読むと回避策が書いてあったりすることもある。でもそういうのはマシなほうで、FOSSのソースコードを読むと(FOSSだから気軽に読めますね。ちなみにMS製品でも金を払えばソースコードを開示してくれるケースもありますが、それは置きます)Windowsのケースを考慮しない実装になってたりして、そういうのはそりゃコード直してビルドしなおしたり、PullReq送ったりすりゃ直ると思うし、FOSSなんだからそうあるべきと思うけど、あなたがそれをやりたいかどうかが問題でしょう。Linuxで動かしてりゃそんな地雷は踏まないのにWindowsで動かしてると地雷を踏むとなりゃ、そりゃただ使いたいだけの利用者はうんざりするよ。

FOSS on Windowsの道の多くはまだ踏み固められてない。繰り返すけど、「楽をしようとかできるはずがない」んだ。「Apacheならわかるから大丈夫、Windows自体はアホでもわかるOSなんだから勉強とかいらないし」とか油断してると罠にはまる。そうすると、またジョエルを引用するけど学習性無力感を持っちゃうか、あるいは、「私がモテないのはどう考えてもお前らが悪い!」ってなる。

uzullaさんが「アパッチとかウィンドウズマスターの人に絶対使うなクソがっていわれました」ってツイートしてるけどさ、使うには覚悟がいるよってことだけなんだけど。それでもまだApache on Windowsは歴史もあるし罠が少ないほうだとは思うよ。Ruby on Railsと関連gemは大変だって聞くし。(すみません、自分ではRoR/Winを試してないので何ともいえません)

で、だよ。楽な道がないんだとしたら、FOSS on Windowsの地雷を踏みながら回避策を見つけたりソースコードを読んだり直したりするのと、Windowsを学び、Windowsでよく使われる方法を学び、IIS糞だなーとか思うところもあるだろうけどIISを学んで使うのと、どっちの困難を選ぶのってことを聞きたい。(どっちも嫌な人は全力で逃げましょう。それでいいと思う。)

ついでに書くと、Windows糞だなーって思ってる人は最近のWindowsのこと全然知らないことが多すぎるから、たまには知識のアップデートしたら?という思いもある。昔のWindowsが糞だったことは否定しないし、最近のWindowsでも相変わらず糞なところだってたくさんあるわけだけど、それでもだいぶまともになってるところもあるんだよ、と。

なので、最近のWindowsのことを知りたいなという奇特な人は、twitterで @matarillo にお気軽に質問ください。答えられるかどうかは分からないけど。MS系の情報が少ないのはある面で事実なのでそういうのを個人的にフォローしていきたいと思ってる。

MS系も*nix系も両方やりゃいいんや!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment