eh now... There are still many great places where php is used.
PHP is just like JavaScript, but with a billion functions /tongue.gif" style="vertical-align:middle" emoid=":P" border="0" alt="tongue.gif" />
But ditto on the css. It's been far too many years that have gone by where we've been able to achieve full css layouts. The CSS Zen Garden has been around for over 4 - 5 years now.... so it's long been proven.
polvero: Oh yes. Sorry, you are right. PHP IS good for somethings. I was meaning large websites and applications. I think PHP is great for embedding small functionality into web pages. It works great for that. Remember what PHP originally stood for /biggrin.gif" style="vertical-align:middle" emoid=":D" border="0" alt="biggrin.gif" />
And remember the word 'originally'. Many a GIANT site are built on raw PHP with no 'framework'. But that is another topic. /whistle.gif" style="vertical-align:middle" emoid=":whist:" border="0" alt="whistle.gif" />
IMHO, JAAulde, PHP should have kept with Personal.Home.Pages.
Just because lots of people use something doesn't mean it's the best way of going about something. I had to create a php website once for a realtor... it wasn't even that complex (he just had to list properties). It took me and another developer a month to complete it. If we had been using django like we are now, it would have taken just a week... or less. (citi(dash)spaces(dot)com)
Actually, PHP should stand for Painfully.Hacer.Pages. ('Hacer' is spanish for 'make') /tongue.gif" style="vertical-align:middle" emoid=":P" border="0" alt="tongue.gif" />
To date, I've worked on three different realty websites. One of them was built from the ground up, using php for property searches, mailing out newsletters to leads, and a basic built CMS so the realitors could add addition houses, and take away homes when they sold - without my help. None of these projects took me (working solo) near a month to complete.
Rather than shooting down php as a whole, could it be possible that maybe some people are better at it than others?
Perhaps. I had only been using the internet for 4 or 5 months before that... so that may have made a difference.
But I guess it was more than just php. It has a lot of javascript stuff too (like that map). But just the work to create a new page or a little new functionality took too long. Now I can create whole new functionality with so much ease. Like with my blog... I added RSS and ATOM feeds in 30 mins (it took that long because it was my first time working with feeds). Now I could do it in more like 2 to 10 mins with writing about 7 lines of code.
But still. I am going to contune to shoot down PHP as a whole for large projects. PHP is a jumble of unorganized functions. It's also a pain to maintain other peoples php code as it can be done so many ways (the one thing I don't like about ruby and love so much about python). Also, everyone seems to have their own way of doing syntax and laying out their code.
And I won't even talk about PHP's classes... /tongue.gif" style="vertical-align:middle" emoid=":P" border="0" alt="tongue.gif" />
I'm going to use what is fastest to create things with. And Django (turbogears is pretty cool too) makes my life as a webdeveloper much much easier. From their templating language to their automaticly generated administration panel... I love it and am not going back to php!
You aught to try something besides php... you might like it better /biggrin.gif" style="vertical-align:middle" emoid=":D" border="0" alt="biggrin.gif" />
Ok... enough ranting. Sorry if I got a little carried... but I'm a strongly oppionated person. /smile.gif" style="vertical-align:middle" emoid=":)" border="0" alt="smile.gif" />
django is a framework for Python like Rails is a framework for Ruby.
It is hard to compare one base scripting language to the framework of another.
It would really need to be compared to other frameworks like the many ones out there for php. (even zend is releasing a framework).
I think this thread may need to be split.
The thread was split
Yeah, it is a bit off track /tongue.gif" style="vertical-align:middle" emoid=":P" border="0" alt="tongue.gif" />
But I like the python language better as a language than php.
Even without frameworks, I would still use python for webdevelopment. I see frameworks as simply doing redundant things for you. Makes things easier /smile.gif" style="vertical-align:middle" emoid=":)" border="0" alt="smile.gif" />
I would think twice about many of the statements about PHP. It most definitely is an enterprise solution. And yes, I'll say it again - even Yahoo! is using PHP on several properties.
Then again it helps having Rasmus around to help tweak things. PHP most definitely is the real thing.
Also don't forget, use the No-Framework-PHP-MVC Framework... MVC has been around for decades, so there's no reason to dismiss it now.
I think joey's point is that just because it *is* serving billions of hits doesn't mean it's the *best* solution for doing that.
Any high-level language like PHP or Python or Ruby is going to be reletively slow to compile. Since computers have gotten so fast, this isn't a big deal. That is why we are, today, not saying: "Well, Cobol is cooler!" Cobol was a PAIN! I mean, come on, writting Assembly code for serving dynamic pages? yay. right.
PHP is great. It was years ahead of its time. That doesn't mean it will always be the best solution.
I see some serious problems with Ruby on Rails' implementaions of some things, but I also see them quickly being fixed. Ruby itself is a very mature langauage that has been around for a long time (yes, even longer than PHP /tongue.gif" style="vertical-align:middle" emoid=":P" border="0" alt="tongue.gif" />). Ruby has been slower catching on since most of the documentation for it remained in Japanese for so long.
Any time you use a new language, it's going to be better than your old language in some ways. Ruby is way cooler than PHP (see my sig).... in some ways. PHP is better at some things than Ruby is.
But as a whole, PHP remains a half-way solution for serving up massive PHP applications. When I found out that digg was running on PHP, quite frankly, I didn't believe it. They must have some insane clusters in order to be able to process all that. Honestly, I think that's where you start having problems with PHP. If you've got to node cluster computers together to compensate for a language's inefficency, then why don't you just switch to a new language? It's not a money issue -- once you're needing to cluster computers just to keep up with traffic, chances are you're not going to be hurting for money. It's an issue of doing something the right way.
I think MrHerald nailed it on the head.... most web developers are lazy. Web developers tend to be the laziest of any sort of developers. We're all use to working with simple scripting languages and can't wrap our heads around the fact that there are better-optimized solutions out there. Not the language's fault /wink.gif" style="vertical-align:middle" emoid=";)" border="0" alt="wink.gif" />
Yep PHP isn't bad, it just doesn't force us to think ahead and/or be good programmers. Its too lax on many things, but that is also what makes it powerful.
Now Ruby is cool, but its one of those things that I haven't had time (or the need) to fully get into. Its on my list of "things to learn" when the time comes.
It all comes down to whatever suits your needs. PHP can run large-scale websites fast, and it is a breeze to work in. I feel very productive in PHP, but then its because I've been working with it for a long time. When I switch over to ASP.NET I'm a little slower (but its a nice system too). A lot of companies, from what I've seen, aren't sold on Ruby just yet, so they only allow me to work in proven languages like PHP, perl, ASP.NET, etc.
I'll tell you what I've really enjoyed lately, Flash. We've been doing some complete Flash-based applications with web services and man let me tell you how slick it is to work in Flash 8 and the large set of components. Of course, you've got to have the flash player, but 95% of people do, and these are corporate environments where its almost a guarantee to have Flash installed.
For all companies that aren't in the startup faze... going with something stable is better to do. Heh, django hasn't even released a version one yet /tongue.gif" style="vertical-align:middle" emoid=":P" border="0" alt="tongue.gif" />
And I'm not trying to convince anyone... I'm just expressing myself. /biggrin.gif" style="vertical-align:middle" emoid=":D" border="0" alt="biggrin.gif" />
(honestly, I never meant all this to go on and on like it has)
And yes, PHP has an advantage with being everywhere. But I still hate how everyone seems to write their code in their own little way (makes it hard to read) /tongue.gif" style="vertical-align:middle" emoid=":P" border="0" alt="tongue.gif" />
Ah, and MrHerald, laziness is a good trait when it comes to web development. /biggrin.gif" style="vertical-align:middle" emoid=":D" border="0" alt="biggrin.gif" />
Also, I was reading somewhere something I found interesting. Python actually isn't much slower than languages like C. C worked great at one time because it was trivial to convert the compiled binaries into computer readable language (01010100110101). But as processors have advanced, it isn't like that anymore. In fact, people have poured in millions of dollars to keep C running as fast as it does simply because so much software is writtin in it.
I just found that interesting.
*snickers* like older versions of IE. /tongue.gif" style="vertical-align:middle" emoid=":P" border="0" alt="tongue.gif" />
/whistle.gif" style="vertical-align:middle" emoid=":whist:" border="0" alt="whistle.gif" />
Depends on what you're doing. If you're serving a Hello World page, then plain text will be fastest, followed by simple HTML, followed by PHP, followed by RoR.
If you're talking about a sophisticated web-based application that requires actual use of a computer's processor for handling information, then RoR is going to smoke PHP. Ruby has much tighter integration with a computer's hardware.
That's what Joey's been saying... Use a language for what it's designed for. PHP is *meant* to be embended in simple HTML pages to serve up some dynamic content. Of course you can write web based applications in PHP, but that's not the best tool for the job.
Ruby or Python is meant to write web-based applications. If you need a simple site, like a blog or photo journal, then you shouldn't be using Ruby or Python.
Everyone just needs to come over to Bill's camp and be happy. /biggrin.gif" style="vertical-align:middle" emoid=":D" border="0" alt="biggrin.gif" />
VB.NET/C# are the RoxoZ! /biggrin.gif" style="vertical-align:middle" emoid=":D" border="0" alt="biggrin.gif" />
Mod Edit: This thread split out of Why table free websites?
- Bob
Yeah, going from tables to CSS is like going from PHP to Ruby or Python!!!
/wink.gif" style="vertical-align:middle" emoid=";)" border="0" alt="wink.gif" />
My blog about web development.
And my site about game development.
>>> math.sqrt(-1) == joey101
True