Friday, July 14, 2006

Living with PHP

PHP is everywhere, the most popular web boards use it, many shopping carts use it, a ton of dynamic websites use it to render their content. Almost every System admin is going to to have to deal with PHP. The optimal setup for PHP is linux running apache. PERIOD. It is the most widely used combo.However in the real world running linux is not always an option, sometimes you need to run windows or a more reliable unix for one reason or another.

The windows server market is roughly 30% (I should say the IIS market). That is a large chunk of servers and a fair amount of them will probably be running PHP.

The point being PHP is open sourced, maintained by a community. A group of users who mainly follow the idea of open sourced code. (Otherwise why would they donate all this time) These community members who create, maintain, and upgrade PHP are almost all running some GPL'ed OS and have that "more holy than you" attitude towards windows admins and users.

So its not a surprise that serious windows bugs like this one stay active for months at a time. A bug that can cripple a whole system running PHP; basically ignored. Now i'm sure your yelling "It's open source why dont YOU fix it" We'll the thing is im not a hardcore programmer neither are most system admins. We are paid to run servers, preform maintaince on them, and provide as little downtime as possible. Not re-write PHP. We honestly have little choice in running it and are tied to a community that shuns %30 of its user base.

The problem basically stems from open source communites. The community has no insentives other than its own dogma to fix problems. If your not on their side of the fence they dont give a shit. Noticed i said open souce communities not companies. Companies (even companies like Sun that open source some of their stuff or give it away) have a financial insentive to have stable reliable software. No CEO in his right mind would risk %30 of his user base. He would be risking his job.

Tuesday, July 11, 2006

I Love .... LAMP

LAMP for those of you who aren't in the l33t Web 2.0 crowd stands for Linux, Apache, MySQL and PHP. Basically a stack for you to develop web sites and web applications on top of. Hey and the great new is it's open source top to bottom. Obviously this gives the all GPL cheerleaders a woody.





We'll not to disagree with Brick, but I think LAMP is a quite inferior to most app stacks available today. It isn't even the best among open source or free app stack out there. LAMP however is praised and fawned over like its the second coming. Don't get me wrong, LAMP works on some level, but is it necessarily the best choice??

LINUX

Ahhh.. Linux the great open source idea, thousands of developers donating time and effort for our benefit. Adding so many features that the kernel is getting no debug time. Linux works and is quite popular on the server front. It however suffers from bloatware on many distro's. (redhat fedora *cough *cough) It isn't even the best modern day UNIX. If your going the Linux route at least try something that is scaled back ala Debian or Ubuntu. Unless you like running a server with so many programs you dont recognize half of them. Studies have shown your better off with a true Unix, such as Solaris. Which is also now open sourced. It's years ahead of Linux with ZFS filesystem and offers a clean coherent package. Otherwise Windows 2003 Server is just as reliable as Linux on the server front.

Apache

this is a hard one to argue with... Apache works and it is great webserver. Modular and stable, runs on almost any OS. In all honestly, IIS gets the job done just as well on windows. It's a toss up, If you want the open source, apache is hands down the right choice.


MySQL

mysql brought database management to classrooms around the world. SQL is THE querying language for Databases, however using MySQL is like using SQL on training wheels. MySQL is limited compared to MSSQL, PostgreSQL, DB2, even the free Oracle DB runs laps around it. The Great thing about MySQL is it works, but so does everything else, and they are better at it!!! If you are still hung up on the Open source deal Postgre is the way to go.

PHP

don't get me started on PHP. (if your running PHP4 register_globals=off would be a good start) PHP itself is not a bad language. PHP within itself is not any less secure than other scripting languages. The problem lies within the people that use PHP. "I can write a program in PHP in 5 lines what would take me 15 lines in JSPs" is a common pro PHP argument. Yeah you can make it code short, but your sacrificing security in the process. PHP is so easy for beginners and allowing people to cut corners from conventional programmer that it invites people to write insecure scripts. (Look ma! no "GET_REQUEST"s!!!) I know they have made steps in PHP5, but PHP still lacks on the performance front, in production you definently need Turk MM_Cache to get PHP to bearable speeds. JSPs are more or less the professional industry's' standard. ASP.NET has a strong following and is still maturing (sadly, should have matured by now), though it is still better than PHP performance wise. A lot of the Web 2.0'ers are using Ruby, which does suffer from the same performance ailments as PHP but is a great intro to web apps.

So now before all you Linux fan boys throw a shit fit, here are some words of advice, Don't be like Brick simply look at things saying you love them, actually think for yourselves, and try out some of the other open source alternatives. or even (gasp) commercial offerings, you may be surprised

Sources:
http://www.eweek.com/article2/0,1895,1983364,00.asp
http://www.itjungle.com/two/two062106-story01.html
http://blogs.zdnet.com/open-source/?p=702


Monday, July 10, 2006

The Unix-Haters Handbook.

a book written in '94 about unix user's frustration with the philosophy of "worse is better" that seems to prevail in unix software design. Attention GNU/GPL hippies, before you bust a nut over the title, this book is meant to be funny and has a sarcastic tone.

Download here.