tags:

views:

470

answers:

8

(System = programming language, framework, etc.)

PHP has some serious benefits, which are ignored by other programming languages and their frameworks.

One of them is easy deployment. It feels dirty to just put a file into a directory, which matches the URL. But it's incredible easy and straightforward. No matter what you think of the language itself.

On Apache you have mod_php and FastCGI. On all other web servers you can use FastCGI and it behaves just like plain old mod_php. File in Directory and keep going.

No restarts if you change something in the code. Just reload the page.

I used many languages, including the 4 big scripters Perl, Ruby, PHP, Python. Whenever I have the choice, I use Python.

But this choice was easy. What to do if I want to use Python for web development?

  1. Apache + mod_python
  2. WSGI
  3. CGI
  4. FastCGI
  5. Python webserver
  6. Python webserver behind Proxy
  7. SCGI
  8. just give up

Similar with any other language.

Is there anything available at the moment or in development, that could be a future PHP killer? Something with the benefits of easy deployment, but with a better language?

+1  A: 

IMHO, it would be some kind of Ruby framework and Phusion Passenger(a.k.a. mod_rails / mod_rack).

Aram Verstegen
+4  A: 

Your question implies that a "PHP killer" is needed. PHP has its uses; indeed it has been used extremely widely on some very high profile websites. Python also has its uses.

In the context of building a website, I would (and have) used both technologies - the PHP for the main website and Python for specific scripting tasks that either aren't possible in PHP or are faster in Python. Other people will use it in different ways.

I think you should use what suits best and I'm not sure you can compare them (Python and PHP) directly.

DavidM
+1  A: 

Well thinking of the question a little backwards, but ColdFusion provides many of the same features that you list above, as well as inline markup and code, and lots of libraries to make use of. If it was open source and free like PHP I think it would have caught on a lot more than it can as a proprietary product. But if you are looking for a platform with the benefits you cited above but with a more straightforward way of interconnecting with other web services and rich content like Flash I would definitely take a look at CF.

alxp
+1  A: 

Javascript. Steve Yegge explains the attributes of a near perfect language here. He's talking about javascript 2 and he's said that it's the "next big language" (NBL).

Wouldn't it be nice to have the consistency of the same language on the client and server? Write validation logic once?

Edit: In addition, since javascript and actionscript are similar (both based on ECMAScript), developers can transition to writing flex applications. So javascript can cover traditional client and server scripting, Flash, and even desktop applications with AIR.

rick
I would love to if you ask me. Javascript is a beautiful language, which I discovered after years of hating it. Also, think about writing CouchDB queries in JS, or providing server-side scripting engine for web applications - that'd be hot!
Michał Rudnicki
It can already be done via a JS server Aptana's Jaxer (look it up). Yes, there's a lot you can do with JS... to developing desktop applications (AIR, Windows sidebar), but I think we're all looking for something more structured as the NBL, plus browsers are on the go for killing it.
kRON
kRON - I'm aware of jaxer since I use aptana for php development. As you are aware, being a php person, structure is up to the developer. I don't follow you comment about browsers killing js.
rick
+4  A: 

First someone has to coerce all the free webhosts to support this PHP killer. Read the sign ups at most free webhosts and they support PHP, server side includes, some Perl/cgi, a version of Python around 2.2 or 2.3 if at all and Rails? Forget it. Short of the Apache project forving the language onto all versions of apache http server, the PHP killer won't be around any time soon.

jmucchiello
Why would someone ding this today?
jmucchiello
+7  A: 

The style of php programming you describe is very straightforward and easy to grasp for new developers. One thing I like about the language, however, is that it can go beyond the "drop a file in a directory" methodology and still maintain its ease of use.

There are several mature MVC frameworks that promote good coding practice, separation of concerns, clean urls, etc. There's ORM functionality provided by a few different packages. There are options for test driven development.

The question implies that PHP as a language is inherently bad and is only popular because it is easy to deploy.

I would venture that there is a quite a bit of bad PHP code in the universe, but that there is a significant amount of good PHP code as well. As time goes on the language will continue to serve as a solid platform for development.

The reality may be that Good PHP is the PHP Killer.

GloryFish
A: 

I'd agree that, had we had cheaper alternatives to PHP - it would've died. Thankfully, the language is going in a good direction (OOP) and we are getting a share of quality frameworks (Cake, Symfony, CodeIgniter, Kohana, and so on) and the tools are getting more serious.

I think it's the simplicity of PHP, that's so easily achieved, is both the good and bad side of the language. Seriously, sometimes you can't figure out how everything gets flattened out during execution with includes and dynamic loads that it gets so hard to debug.

I agree with GloryFish that Good PHP is the next PHP Killer. I'd definitely like to see OOP in PHP and PHPDocs enforced more by developers so that the tools can really start picking it up and we can start concentrating on better handling of objects and whats happening where and how.

kRON
A: 

I think if the XAMPP/LAMPP people rolled a version with python instead of php, that might be a potential 'php killer.' The one click install makes it easy for novices to get started with php, and I could see the same really helping python adoption.

jacobangel