Slashdot Mirror


PHP Succeeding Where Java Has Failed

ficken writes "Web browser pioneer Marc Andreessen recently announced his prediction that PHP will be more popular than Java for building web-based applications." From the article: "Wooing programmers is nothing new in the computing industry, where players constantly jockey to establish their products as an essential foundation. Indeed, many credit Microsoft's success to its highly regarded programming tools, which make it easier for developers to write software that run on Windows. PHP has caught on widely. About 22 million Web sites employ it, and useage is steadily increasing. About 450 programmers have privileges to approve changes to the software. Major companies that employ PHP include Yahoo, Lufthansa and Deutsche Telekom's T-Online." Meanwhilie, Piersky writes "Zend has announced its rival to .NET and J2EE, with the Zend PHP Framework. In a press release, they stated that it will be 'A Web application framework which will standardize the way PHP applications are built. The Zend PHP Framework will accelerate and improve the development and deployment of mission-critical PHP Web applications'. This will for part of Zend's PHP Collaboration Project"

610 comments

  1. I am completely unbiased... by Fortyseven · · Score: 5, Funny

    As a PHP coder and Java hater, I am completely in agreement with whatever the hell this article says. :D

    1. Re:I am completely unbiased... by SatanicPuppy · · Score: 5, Insightful

      Well, as a Java coder who's been coding almost exclusively in php for a year or so, I have to say it makes me feel better about my time spent. Php is definitely easy to work with, though that creates the opportunity for some seriously scary code.

      I have to say, just not working with Tomcat is a plus (though I give major Props to the Fedora team for the option to install Tomcat right off the install disks)...When gcj finally catches up, I'll be a happy puppy.

      --
      ad logicam Claiming a proposition is false because it was presented as the conclusion of a fallacious argument.
    2. Re:I am completely unbiased... by BlightShadow · · Score: 1

      Go PHP!!!

    3. Re:I am completely unbiased... by (A)*(B)!0_- · · Score: 1
      It makes you feel better that someone who stands to make money in relation to PHP's success says that PHP will be a success?

      You're easy to please.

      And just for fun: Java servlets > anything PHP produces

    4. Re:I am completely unbiased... by Anonymous Coward · · Score: 0

      woohoo brother! I am likewise a PHP lover and Java hater.

    5. Re:I am completely unbiased... by David's+Boy+Toy · · Score: 1

      I kind of have the feeling that PHP is "yet another language" for no good reason. modperl + Mason makes a great web language and gives access to many years of CPAN package development.

      But I do agree Java sucks in relation to either. Only place I see Java as useful is for cross platform client applications. But for a web page server its super heavy weight.

    6. Re:I am completely unbiased... by KiloByte · · Score: 2, Insightful

      As someone impartial to the Java-vs-PHP debate (and a soldier to a third side), I would describe PHP as Visual Basic of server-side development. It's very easy to use, but most code is monstrously sloppy and/or insecure -- I might have been unlucky, but the three times I fixed problems in php code (and usually rewrote things in Perl), the code had glaring holes and was totally unreadable. You're reading this right -- I rewrote things to Perl to make them readable.

      The problem with Java is that you can't really integrate it with anything other than Java itself -- Sun can teach Microsoft a lot when it comes to blocking third-party improvements. Until, as you say, gcj or any other piece of free software catches up, Java won't be usable. It died as a client-side language, and is struggling on the server as well.

      Thus, the bottom line is: long live Larry Wall!

      --
      The creatures outside looked from Alt-Right to Antifa; but already it was impossible to say which was which.
    7. Re:I am completely unbiased... by SatanicPuppy · · Score: 1

      Like I care what he thinks. But PHB's everywhere are reading it, and absorbing the idea that php is teh good, and the next time I'm looking for a job, they'll be like, "Hmmmmm, he knows Php...We should pay him more."

      Oh yea.

      But I agree somewhat. I'd rather be doing Java, though for some of the stuff I'm doing, Java would be a waste, and Php is easier to maintain than Perl.

      --
      ad logicam Claiming a proposition is false because it was presented as the conclusion of a fallacious argument.
    8. Re:I am completely unbiased... by masklinn · · Score: 1
      But PHB's everywhere are reading it, and absorbing the idea that php is teh good, and the next time I'm looking for a job, they'll be like, "Hmmmmm, he knows Php...We should pay him more."

      Yeah, but for the fact that just about everyone "knows" PHP...

      --
      "The way we can tell it's C# instead of Haskell is because it's nine lines instead of two." -- wadler
    9. Re:I am completely unbiased... by SatanicPuppy · · Score: 4, Interesting

      Yea. You can write good code in Php, but I've seen a lot of slop as well, and I've talked to a lot of "Php programmers" who don't know the first thing about datastructures---unsuprising since php really doesn't have anything besides a weird hash-array-stack thing with ad hoc support for multidimensions, and don't understand reusable objects or abstraction.

      Does definitely remind me of VB, though the syntax isn't as screwy.

      --
      ad logicam Claiming a proposition is false because it was presented as the conclusion of a fallacious argument.
    10. Re:I am completely unbiased... by SatanicPuppy · · Score: 1

      Well, by "Knows" in this case I mean, "Has x amount of verifiable application development experience in Php."

      There is a world of difference between being able to look at php and say, "It looks familiar, shouldn't be any problem to code in it" and saying, "Yea, I've written seven majors apps in php, of the following types..."

      --
      ad logicam Claiming a proposition is false because it was presented as the conclusion of a fallacious argument.
    11. Re:I am completely unbiased... by CastrTroy · · Score: 1

      There definitely is a lower entry point for php. Most hosting companies offer php and mysql support, for something around $4 per month. You won't find a lot of places that host Java, and even some that do make it a little difficults. Plus Java has a few shortcomings that make it harder to use on a shared system. The fact that there are times when you have to reboot the webserver to load new code is a big one. PHP is much better suited to small 1 person development environments, whereas Java is better suited to enterprise multideveloper situations.

      --

      Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
    12. Re:I am completely unbiased... by Xugumad · · Score: 1

      Out of curiousity, what size of app are you working on, and do you have co-developers who have to read your code?

      Not that anything's wrong with PHP, but I suspect that if we'd written our current major web app (70k lines of code, excluding HTML, and 140 individual servlets) in PHP, I'd have a lot of very unhappy colleagues.

    13. Re:I am completely unbiased... by LDoggg_ · · Score: 5, Insightful

      The problem with Java is that you can't really integrate it with anything other than Java itself

      Huh?
      Not sure what you mean here. If by integrate you mean communicate with other languages there's things like CORBA and SOAP, if you mean call other shared libraries there's always JNI if you can't find a java lib to do something.

      Until, as you say, gcj or any other piece of free software catches up, Java won't be usable.

      Strange, I'm using it every day at work. Have been in one way or another professionally for 8 years now.

      It died as a client-side language, and is struggling on the server as well.

      You do realise that is no better than a BSD is dying troll right?
      Just checked Moster.com. 105 java positions available within 50 miles of my house, 18 for PHP, 42 for perl

      Now I'm saying that as someone who also uses PHP. I've been using it quite a bit lately and don't mind it at all, but we're talking apples and oranges here. Sure PHP can be used to write monstrously sloppy and/or insecure code, but so can any language. PHP can also be used to write clean easily maintable secure code.
      PHP wasn't even close to java in terms of object oriented coding until PHP5 came out, which unfortuneatly has been very slow to appear on most 3rd party hosting servers and distros.

      My only real gripes with PHP are the lack of a standard DB connectivity layer like JDBC. PEAR:DB and ADODB are close, but they still rely on non-php libraries so setting up a connection to oracle or sql server is painful. The other thing is a lack of type hinting for primatives. Seems kinda silly to have to do a check if something is an int or double in the method instead of just putting it in the method's signature. I'm know its a loosely typed language, but type hinting is there as an option for objects, why not primatives too?

      I'm looking forward to PHP5.5 its going to have some real nice features that will bring it little closer to server side java and a little further from something like .asp where most of the business logic is in the presentation layer.

      --

      "If they have both, tell them we use Linux. And if they have that, tell them the computers are down." -Dave Chapelle
    14. Re:I am completely unbiased... by KanSer · · Score: 0, Offtopic

      Java is dead? PHP > Java?

      Tell that to the hundred thousand people playing runescape.com at any given moment.

      Let's see a 3d mmorpg done in PHP.

      Yeah, right.

      --
      • MOD PARENT UP by Anonymous Coward Wednesday April 20, @4:20
    15. Re:I am completely unbiased... by Xugumad · · Score: 3, Funny

      Note to self - write article claiming people who use the online name "Xugumad" at 100% more productive than regular employees :)

    16. Re:I am completely unbiased... by Anonymous Coward · · Score: 2, Informative
      I could say several positive things about PHP, but I think it wiser to point out some of its weaknesses. The presentation is a fairly geeky and technical based rant, so read if it works for you! PHP is fine for certain websites, but don't believe it's universally better:
      • No non-commercial debugger without paying Zend $$ (Perl, Python, and Ruby provide one for free).
        • For certain embedded or kernel environments, I can understand kprintf() mentality. For today's ample boxes and supposed modern languages I expect at least a rudimentary command line debugger.
        • For gravy, give me a good profiler for when the performance problem isn't with a backend database and doing it's tracing/diagnostics/explain plan mantra. NOTE: Strangely enough I've had more success in this area with PHP than for the debugger
      • Lack of well known tool of similar quality to Perl's (-w|use diagnostics) or pychecker to spearhead any of deficiences of using a scripting language over a statically typed language. Sorry more analysis than "php -l" for syntax errors would be of great benefit to PHP. If there is one that I'm not aware of since the last time I checked, here's your chance to educate more people on the matter.
      • Windows PHP/Apache stack seems very unstable on Windows compared to Linux, yet these two are the same respective layers in LAMP. Zend has a $olution and I have NOT tried FastCGI, so mission critical apps with high reliability don't seem to be really cross-platform. I'd be willing to pay ActiveState money before Zend, since it all seems about hooking people and selling the pot-hole patch kits.
      • Brain dead basic library design, until Pear remedies (in some cases):
        1. Why doesn't variable interpolation within an HTML page do htmlspecialchars()?
          • Most cases need this behavior, let's make the opposite the default!
          • Making the hacks and the couple of legitimate cases call a function to not do the expansion would make too much sense, we can't cause any minor backwards compatibility problems, especially when we would have to admit to one of our mistakes. Far better to claim there is some correct way for the application programmer to do that and that it is their fault, not ours.
        2. Basic language design promotes, but doesn't preclude, seperation of business logic and display, especially for lower-level developers who write code who others must maintain. Just read the default documentation assuming you're a beginner with nothing else. NOTE: yes, I believe that you are better off using one of the Pear Template Solutions for several reasons and getting a decent book besides the default documents (this advice goes double, if you happen to use Perl). Python and Ruby seem to have better documentation sources for learning the languages, IMHO.
        3. Most PHP DB interfaces are prone to SQL injection, because they do not promote the use of Bind variables. Proper DB quoting can happen at the proper place within the library instead of depending on application programmers to get it right all the time. This is the approach used by many other scripting languages (Perl DBI and Pythin DB API 2.0 come to mind).
        4. Alot of damn functions for PHP array, yet doing usorts() and other stuff doesn't allow one to keep a sorted array efficiently while still inserting items
          • Already tried using a PHP-user level implemented binary search
          • Some approaches work OK, until about 1000-2000 items then performance significantly decays.
          • Weasel statements about providing object-like facilties within the language, but not saying that it is an object oriented language. Heck I wouldn't want to be able to sort my "objects" without using a regular function now would I and efficiently at that?
          • Some sorting can happen at the DB level, if properly done. But some applications and algorithms require more capability in the host language.
          • Most other lang
    17. Re:I am completely unbiased... by Anonymous Coward · · Score: 0

      Here is my experience. I am not a professional programmer, I work as a mechanical engineer for a smaller industrial equipment manufacturing company. Other than drawings I am programmer for anything that company need and that can be done in house. That includes almost full ERP system excluding GL, AP, AR but includes invoicing, purchase order. Base is programmed 7 years ago in MS Access and has been performing without a glitch for 6 years serving 15 users. Around year 2000 I said to myself I wanna be a serious business software programmer, so I picked J2EE for its 'enterprise' feature. I did not realize how complex it is. Thing that bothered me the most was xml config files, I never use any IDE just a plain text editor so that was a big pain. I just don't like them. After 3 years spend doing j2ee, I looked back and realize that for all that time I had done just a single application, which sucked anyway. So, I tried php and what a difference. My productivity was 100 times better, using nice mvc framework like Seagull I got a solid base for developing any business application that we need. LAMP server so far has been very stable and fast. I generate some reports through adodb->ms access that are even faster that going through the access itself. Gradualy, I am moving everything to mysql. My application logic is sometimes very complex and I find it very easy to change and modify when requirements change.
      So to conclude, I could not be happier using LAMP, just sorry for 3 years I wasted with j2ee.

      I now appreciate simplicity even if not fully featured. Software is so complex these days. I think of the period 1997-2000 as golden age of computing in business, when everything was working good without complexity.

    18. Re:I am completely unbiased... by rsheridan6 · · Score: 2, Insightful
      Is this because PHP is inherently unreadable, or because it's so easy to learn that a lot of incompetent people who barely deserve the title "programmer" use it? People say the same things about Perl, but when I dabbled in Perl I concluded that its alleged unreadability had more to do with its users than the language itself, because the code I found was pretty readable (I happened to have an interest in a project written by MIT CS grads). I have no experience with PHP (besides looking at the manual and finding it unappealing), but maybe the same thing is going on with PHP. PHP was, after all, designed to be used by, let's just say, non-alpha-geeks.

      The existence of badly written code that nonetheless works would be sign of PHP's success in that regard.

      --
      Don't drop the soap, Tommy!
    19. Re:I am completely unbiased... by Anonymous Coward · · Score: 1, Insightful

      Whether code is written in good style or not, has very little to do with whether it is written in PHP or not, and has everything to do with the habits of the programmer. Also, last time I checked, comments are generated by the programmer, not the parser, nor are they inherent or dependent to the language itself. Evaluating a language based on how bad a programmer bad form and then making a comparison to your Perl coding styles seems like you are just posting to make yourself feel good. It would be a far more useful comparison to compare how intuitive the language is to write and how
      flexible and capable the language is in the hands of a capable programming team.

      PHP having a decent (not grade compared to say Lua) object oriented model for a scripting language and a gazillion different libraries and extensions, can be compared much better to Java and JSP or even ASP; however I don't think it can be usefully compared to Perl without being unfair to either side. Note: I work with both PHP and Perl and find that on a day to day basis, these two are complementary to each other since they each do things very well that the other doesn't.

      Just my 2 cents.
      Frank

    20. Re:I am completely unbiased... by Xugumad · · Score: 1

      Partially in response to Pxtl's message (http://games.slashdot.org/comments.pl?sid=165966& cid=13845107), partially just to support what I'm saying, the source code is at:

      http://sourceforge.net/projects/mms-mle/

      Feel free to poke at if you want. It's not in readily compilable condition, and is mostly open source because we can, but nevermind...

    21. Re:I am completely unbiased... by Anonymous Coward · · Score: 0

      It's obvious you're an anti-java troll. What scares me is the non-obvious fact that you might actually believe what you posted. It's so far from realistic that I fear for anyone that relies on your technical expertise.

    22. Re:I am completely unbiased... by Mercano · · Score: 4, Interesting

      [Java] died as a client-side language.

      Not sure how much this is worth, but as we speak the top item on the Most Active Projects list over on SourceForge (insert tinfoil hat disclaimer here), Azureus is a client side Java app. For those of you keeping score at home, the #2 spot, GAIM, is in C and PHP comes in at #3 via phpMyAdmin. Keep in mind this is looking at quality (and a pretty wierd messure of quality, at that), not quantity, but still intersting.

      --
      #include <signature.h>
    23. Re:I am completely unbiased... by Anonymous Coward · · Score: 0

      Just checked Moster.com. 105 java positions available within 50 miles of my house, 18 for PHP, 42 for perl

      Dude, where do you live? I'm moving there.

    24. Re:I am completely unbiased... by Crayon+Kid · · Score: 1

      One could also say they're using Java so that those awful pirates can steal movies and music over BitTorrent, then C++ so that those damn kids can chat each other stupid over IM, while only on third place do we see honest, hard-working software engineers doing database maintenance.

      (Ducks.)

      --
      i ate crayons when i was a kid and now i have two braincells and the blue ones taste nicer
    25. Re:I am completely unbiased... by Anonymous Coward · · Score: 0

      My only real gripes with PHP are the lack of a standard DB connectivity layer like JDBC.

      You mean like PDO?

    26. Re:I am completely unbiased... by LDoggg_ · · Score: 1

      Exaclty. This is the feature I've been anticipating. Is it already out? I thought it was coming with 5.5
      Also, does the oracle shared lib still require a sqlnet client install complete with a tnsnames.ora?
      JDBC simply requires the .jar file in the classpath. All the low level TCP stuff is included

      --

      "If they have both, tell them we use Linux. And if they have that, tell them the computers are down." -Dave Chapelle
    27. Re:I am completely unbiased... by SatanicPuppy · · Score: 2, Insightful

      I don't think Php is inherently unreadable. With good formatting, well-named variables, and intelligent use of functions, it's just as readable as anything else.

      I think it's a bit more readable than Perl, simply because Perl lets you get away with things that php does not. $_ leaps to mind.

      But Perl gets a bad rep from people who write sloppy Perl code. If you break things out into packages and functions and aren;t afraid to use linebreaks, the code doesn't become an illegible snarled mess. The things I see that make most people throw their hands up are undocumented regular expressions...If you're good with regex you look at it and go, "eh, email address validator", but if you're not it looks like someone wiped their nose on the number bar while alternately whacking the shift key.

      --
      ad logicam Claiming a proposition is false because it was presented as the conclusion of a fallacious argument.
    28. Re:I am completely unbiased... by LDoggg_ · · Score: 1

      5th largest city in the us :)
      was really just making the point about the ratios of the languages in question.

      --

      "If they have both, tell them we use Linux. And if they have that, tell them the computers are down." -Dave Chapelle
    29. Re:I am completely unbiased... by Anonymous Coward · · Score: 1, Insightful

      Why doesn't variable interpolation within an HTML page do htmlspecialchars()

      OH BOY I totally agree with this. Passing data into the HTML without HTML-escaping by default is a STUPID design choice. It's liking building a DB access layer that doesn't auto-quote placeholders.

      And on top of that, they make the name htmlspecialchars() so LONG. And PHP doesn't have function aliasing, so you can't give it a different name, you have to create a new function that calls it (waste of cycles).

      I really wish PHP would get it's head out of it's ass and make the HTML escaping the default. Or at least give me an easy way to write my own template system (no, Smarty and bloat like that isn't what I mean.. I mean a *low-level* way to plug into the existing template system), OR a way to reliably audit existing templates and point out unescaped tags..

      Think about it: If escaping is the default, and you forget to unescape, you get visible HTML in your page. Easy to spot.

      If UNESCAPED is the default, and you forget to escape, you don't see ANYTHING wrong. Until a XSS attack is found in your app and posted to Bugtraq.

      Dumb dumb dumb.

      PS, another HUGE problem with PHP is that it's very difficult to cache the compiled bytecode (wait does it even compile to bytecode??) and/or keep data in RAM between hits. You have to download a third-party tool or hack something yourself with shared memory. If I write a big PHP app, I want to keep the compiled classes in RAM or on disk for more speed, like I do with mod_perl or Rails. What is the *reliable* way to do this in PHP?? I think it might even be impossible, due to the massive dependence on a global namespace..

    30. Re:I am completely unbiased... by anti-trojan · · Score: 2, Informative

      If I write a big PHP app, I want to keep the compiled classes in RAM or on disk for more speed, like I do with mod_perl or Rails. What is the *reliable* way to do this in PHP?? I think it might even be impossible, due to the massive dependence on a global namespace..

      I believe PHP accelerators (like the open source eAccelerator) do exactly that. But again, I am not a PHP expert.

    31. Re:I am completely unbiased... by Ryan+Amos · · Score: 1

      And I can speak from experience that Azureus' use of Java is the biggest thing wrong with it. The program looks like a windows program, but the interface is unresponsive and hangs easily. I find this to be similar with other Java client side programs.

    32. Re:I am completely unbiased... by Anonymous Coward · · Score: 0

      Hehe, my coworker was all like: "I built this cms thing and many people are using it blah blah blah I know how to do this or that in PHP". And then one day she asked me how to solve a really simple problem, and I said, use a for-loop, and she was like, errr, I don't really know how those work.

      Stereotypical...

    33. Re:I am completely unbiased... by Anonymous Coward · · Score: 0

      > Php is easier to maintain than Perl.

      PHP: Perl for Dummies.

    34. Re:I am completely unbiased... by dreadlock9 · · Score: 1

      FYI PHP 5.1 comes with a standard DB connectivity library called PDO. You can also install it on PHP 5.

      http://www.php.net/pdo

    35. Re:I am completely unbiased... by bani · · Score: 1

      azureus is a slow, bloated pile of doggie poo. i mean really, why should a bittorrent client take _500mb_ of ram just to idle empty? it also takes ages to start up on my opteron 1400 with 1.5gb ddr2700 dual channel, whereas all other clients start up in a fraction of a second. azureus menus are eye-wateringly slow as is the rest of the interface.

      eclipse isn't any better.

      not exactly glowing examples of java, unless you're saying mind-blowingly slow applications are a selling point.

    36. Re:I am completely unbiased... by KiloByte · · Score: 1

      Is this because PHP is inherently unreadable, or because it's so easy to learn that a lot of incompetent people who barely deserve the title "programmer" use it?

      The latter, absolutely. PHP is trivial to use, and I've seen it used by someone who couldn't even do a simple while loop. It's the Visual Basic of WWW programming, with all of its benefits and downsides.

      On the other hand, I (and I meet the typical geek traits to an extreme: socially inept, incapable of focusing on uninterested things to the point of dropping from the university, having taken spots near the top on many programming contests including ACM world finals and the very top on a CEOI), after using Perl for some random tasks for years, I can't call myself anything but an amateur there. I'm not a web programmer nor do I develop applications in Perl -- just use it for the random odd tasks, but still.

      It's comparing Apples and Microsofts, er, pears here. PHP is just meant for a completely different kind of users than Perl. But, the fact that the latter tend to be seasoned programmers offsets the fact that Perl is the proverbial line noise language, designed by someone who won IOCCC twice.

      --
      The creatures outside looked from Alt-Right to Antifa; but already it was impossible to say which was which.
    37. Re:I am completely unbiased... by jZnat · · Score: 1

      Although there is some FUD about PDO with some developers already, but I for one welcome our new data object overlords.

      --
      'Yes, firefox is indeed greater than women. Can women block pops up for you? No. Can Firefox show you naked women? Yes.'
    38. Re:I am completely unbiased... by Anonymous Coward · · Score: 0

      unsuprising since php really doesn't have anything besides a weird hash-array-stack thing with ad hoc support for multidimensions, and don't understand reusable objects or abstraction.

      Actually PHP supports all that stuff. It was just bolted on after-the-fact and is ugly, at least in comparison to e.g. Python.

    39. Re:I am completely unbiased... by LordoftheWoods · · Score: 1

      Servlets more 'heavyweight' then PHP? I call FUD. CGI is notoriously inefficient; Servlets skip it entirely. Am I right that CGI is still the standard setup for PHP? I believe there may be some alternatives, but considering default settings I've always heard that servlets are far more efficient.

    40. Re:I am completely unbiased... by PopCulture · · Score: 1

      "There is a world of difference between..."

      no... there... isn't!!!

      --

      Here's to finally giving Bush his exit strategy in November
  2. PHP is great stuff by ReformedExCon · · Score: 2, Insightful

    If you are a web "programmer", it's definitely nice to have well-built tools that let you think even less about what you are doing and come up with something useful.

    I suppose that's true in most jobs, though.

    --
    Jesus saved me from my past. He can save you as well.
    1. Re:PHP is great stuff by rovingeyes · · Score: 4, Interesting
      "If you are a web "programmer", it's definitely nice to have well-built tools that let you think even less about what you are doing and come up with something useful."

      Don't know about you, but it sounds dangerous to me.

    2. Re:PHP is great stuff by netkid91 · · Score: 0

      What do you mean by 'tools' Visual Studio tools, or a good web-based script system. I'd rather have a good script system even if I have to type in code by hand vs. visually editing forms(Visual Studio 2005) and having a crappy language available for only one OS(ASP.NET)

      --
      NO~, I read Slashdot because I think it's stupid.....
    3. Re:PHP is great stuff by Anonymous Coward · · Score: 0


      Dangerous ? no surely not

    4. Re:PHP is great stuff by AVee · · Score: 2, Interesting

      True, but it also explains why PHP will likely be more populair than Java for web apps. The resulting apps will also likely be of lower quality, but Windows is the most used OS as well...

    5. Re:PHP is great stuff by Demerol · · Score: 1

      Oh? So then what would you recommend?

    6. Re:PHP is great stuff by Crayon+Kid · · Score: 1

      True, but it also explains why PHP will likely be more populair than Java for web apps. The resulting apps will also likely be of lower quality, but Windows is the most used OS as well...

      There's nothing in PHP that will inherently force the appearance of bad code. It's the programmers producing bad code, not the engine or the platform.

      And how about we touch on one of the most important differences between Java and PHP, and why PHP is so easy to use? Stuff like:

      * It's interpreted, so no waiting for compilation or working with binary only form. To prevent the trolling, I'll also add that no, it doesn't make it slower, and the code can be protected if needed when deploying or selling it.

      * It's loose typed. It lets programmers concentrate on the functionality they want to implement, instead of worrying about declaring stuff, or variables having locked types.

      --
      i ate crayons when i was a kid and now i have two braincells and the blue ones taste nicer
    7. Re:PHP is great stuff by masklinn · · Score: 2, Interesting

      AFAIK:

      • ASP.Net is NOT a language, it's a framework, it makes quite a number of modules and precreated functions available but it's not a language (while ASP was a language, more or less, created from VB).
      • You can use just about any language running on top of the CLR (.Net's equivalent of the JVM) in an ASP.Net environment. That includes VB.Net, C#, Boo, IronPython, ... or even your own language since the CLI itself is an open spec and you're completely free to create your language compiling in CLI (.Net's "assembly")
      • Mono implements ASP.Net 1.1 very well (completely in fact, I think) and even implements part of .Net 2 already, which means that ASP.Net actually is cross-platform (since Mono runs on Linux, OSX, Solaris, *BSD and Windows over s390, SPARC, PowerPC, x86, x86-64, IA64, ARM and HP-PA)
      --
      "The way we can tell it's C# instead of Haskell is because it's nine lines instead of two." -- wadler
    8. Re:PHP is great stuff by Anonymous Coward · · Score: 0

      Practically any language will allow you to write dangerous code and inexperienced programmers will write crappy code. PHP has a shorter learning curve than Java, welcoming inexperienced programmers.

      So the language isn't necessarily the problem.

    9. Re:PHP is great stuff by DrSkwid · · Score: 1

      nothing, except the total inconsistency of the API

      strtr ( string str, string from, string to )

      str_replace ( mixed search, mixed replace, mixed subject [, int &count] )

      so, as a paradigm do I use _ or not in function names

      should I put subject or predicate first

      what does the API do? oh it is totally ad-hoc

      How about I use capitalisation!

      gah, it's case insensitive

      oh well, sloppy code here we come

      --
      There are places where the networks are not touching,and there are places where they are-Boeing's Lori Gunter
    10. Re:PHP is great stuff by Anonymous Coward · · Score: 0

      And, in addition, we can install turck MMCache, APC or another Opcode Cache systems to improve speed.

    11. Re:PHP is great stuff by lastchance_000 · · Score: 1

      Easy to use, hard to maintain, hard to scale. It doesn't have to be that way, but it's easier (on the face of it) to just throw some code together and have an application up. It's harder to do the up-front work that makes a quality product, and PHP's target audience, new coders, won't generally do that worl or even know to do that work.

    12. Re:PHP is great stuff by outsider007 · · Score: 1

      I don't consider PHP a well built tool. 7 years of php and I still have to look up every string function because I can't remember or guess the order of arguments. Do you know how often string functions are used? Very often.

      Anyway I'm moving on to Ruby. I'm tired of looking things up. And another thing every 16 yr old looking for a summer job has PHP on his resume. If I can get my company to switch to Oracle I'll be set for life. Let me break down salary prediction for in a couple years:

      Php/Mysql experience ->35-50k
      (Java|Ruby)/Oracle experience ->60-90k

      --
      If you mod me down the terrorists will have won
    13. Re:PHP is great stuff by Anonymous Coward · · Score: 0

      Just don't think about it.

    14. Re:PHP is great stuff by Samus · · Score: 1

      Actually ASP was really just somewhat of a framework similar to ASP.Net. As long as your scripting language was hostable in Windows Scripting Host you could plug it into ASP. Back in 2000 I did some Python and ASP. I think at the time there was also a Perl extension for this as well. You might have mistaken ASP as a language since the default language for a page was VBScript.

      --
      In Republican America phones tap you.
    15. Re:PHP is great stuff by Doctor+Faustus · · Score: 1

      How about I use capitalisation!

      gah, it's case insensitive


      Case insensitivity doesn't mean you can't still multicapitalize. Unless your IDE automatically forces references to the declared case (VB6 does this), you can MultiCapitalize for readability even if the original designer didn't think to. If Java was like this, I could ignore the stupid namingConvention of leaving the first letter of a class member in lower case.

    16. Re:PHP is great stuff by masklinn · · Score: 1

      Yes, I pretty much believed that ASP was only usable with VBScript. Thanks for these informations.

      --
      "The way we can tell it's C# instead of Haskell is because it's nine lines instead of two." -- wadler
    17. Re:PHP is great stuff by enrico_suave · · Score: 1

      ""If you are a web "programmer", it's definitely nice to have well-built tools that let you think even less about what you are doing and come up with something useful."

      >>Don't know about you, but it sounds dangerous to me."

      Well depending on what the previous poster meant.

      If they meant, I should be able to just randomly code without any cohesive thinking about where i'm going or what effects my coding decisions make... yeah that doesn't sound too good.

      If they meant, having tools that mean you think about what you are doing but don't have to get myried in the details/idosyncracies/drudfery and just think about functionality... that sounds fun.. kinda reminds me conceptually of the whole Ruby on Rails type thinking/approach.

      --
      Build Your Own PVR/HTPC news, reviews, &
    18. Re:PHP is great stuff by DrSkwid · · Score: 1

      to my eyes case insensitivity is just plain wrong / confusing / sloppy

      function NoNesting() {return 0;}

      print nonesting();

      and it also means you have to remember to grep -i instead of grep, which is bad enough in and of itself!

      --
      There are places where the networks are not touching,and there are places where they are-Boeing's Lori Gunter
    19. Re:PHP is great stuff by Taliesan999 · · Score: 1

      I love the way you seem to think that strong typing is a DISADVANTAGE.

      In an application which has any kind of thought put into it, strong typing ensures consistancy of the data and ensures that when the application reaches the maintenance phase people don't have to wonder just what data might be in that variable or what format it might be in.

    20. Re:PHP is great stuff by Zontar+The+Mindless · · Score: 1

      ASP 3.0 also supports JScript out of the box. No addons required. A thousand times nicer than VBScript, too.

      --
      Il n'y a pas de Planet B.
  3. J2EE won't fail... by _undan · · Score: 5, Insightful

    ... until companies who need mission critical systems have someone they can phone when something goes wrong, and some form of developer accreditation. Don't kid yourself. J2EE isn't picked because of the language, it's because it's got Sun and IBM (through Websphere) behind it.

    1. Re:J2EE won't fail... by Anonymous Coward · · Score: 0

      Besides support, J2EE is a totally different beast. Compare PHP applications with J2EE's n-tiered, distributable apps and you will see that it is like comparing apples with testicles. They are both round/used for web apps but that is just about it. Different tools for different problems.

    2. Re:J2EE won't fail... by digidave · · Score: 2

      Swap "J2EE" for "Windows" and you have the same argument as is used against Linux. PHP is supported by Zend and several other companies. As the article says, Oracle and IBM are both showing support for PHP.

      And nobody said J2EE was going to die. It's just that more people are realizing it isn't always the best way to develop a web app. IMO (and some people say I'm wrong sometimes), Java excels where you need to interface with legacy and/or disparate systems. If you don't need to do that, Java and J2EE might not be for you. This is why it's so great for banks that need to interface their online banking web site with their banking and account data. It's also why it's overkill for 99% of web sites. It makes more sense on an intranet where you don't need to worry as much about security when linking many internal systems (not because Java is insecure, but because linking web apps to critical business systems in inherently dangerous, moreso when you're exposing the web app to the general public).

      --
      The global economy is a great thing until you feel it locally.
    3. Re:J2EE won't fail... by bloodredsun · · Score: 1
      And nobody said J2EE was going to die

      And, of course, the best way to raise the profile of any technology is to say that it's better then the current number one (I await the flames from everyone else about what actually IS the best technology for creating webapps... )

      I agree with your that Java is better served for higher-end solutions but I'd like to see a comparison between PHP, Ruby-on-Rails and other scripting language frameworks, including such things as ease of use, maintainability, performance and scalability. Basically the real concerns for a developer.

    4. Re:J2EE won't fail... by arkanes · · Score: 2, Interesting
      Java excels where you need to interface with legacy and/or disparate systems.

      This is exactly contrary to my experience. Java *sucks* at playing nice with other systems, unless you build up a "play nice with Java" layer in those other systems first. PHP, shitty as it is, is much better. Python and Perl are both much better (Python more than perl these days, imo) as glue code.

      Java works best when it can run in long running, memory hogging, monolithic processes, where it's development and execution model can really shine (these are the circumstances you get those "faster than C" benchmarks). Java doesn't play nice with other systems, and interop via JNI can kill the GC optimizations that let it beat manual memory management for performance.

    5. Re:J2EE won't fail... by aled · · Score: 1

      It seem that most programmers in slashdot only care about how much the language fits with his own tastes rather that on those things you mention like ease of use, maintainability, performance, scalability, and I would add maturity, availability, deployment, documentation, support, robustness, tool support and surely missing others. You see, those are problems that the user, customer o the sysadmin will have, why should a programmer care?

      --

      "I think this line is mostly filler"
    6. Re:J2EE won't fail... by bloodredsun · · Score: 1
      why should a programmer care?

      <sarcasm>
      You mean apart from the chance to join everyone in the flaming echolalia that is slashdot when the subject is a programming language?
      </sarcasm>

      I think it's a matter of experience frankly.

    7. Re:J2EE won't fail... by Gilmoure · · Score: 1

      No one has ever used my testicles for a web app. At least not that I've noticed.

      --
      I drank what? -- Socrates
    8. Re:J2EE won't fail... by jadavis · · Score: 1

      J2EE isn't picked because of the language, it's because it's got Sun and IBM (through Websphere) behind it.

      Can someone do a quick explanation of what J2EE is and where it fits in with Servelets, Tomcat, JBoss, etc?

      --
      Social scientists are inspired by theories; scientists are humbled by facts.
    9. Re:J2EE won't fail... by eikonos · · Score: 1

      You'd notice the moment someone posted a link on /. :P

  4. In other news by Anonymous Coward · · Score: 5, Funny

    Coke succeeding where peanuts fail.

    What? The two do different things.

    1. Re:In other news by Anonymous Coward · · Score: 1, Funny

      Unless, of course, you put them together.

      Whether this is some kind of analogy for the actual topic at hand is an exercise for the reader. :P

    2. Re:In other news by grasshoppa · · Score: 1

      What? The two do different things.

      Good point: One's a language for writing dynamic websites, where as the other is a language for writing dynamic websites.

      --
      Mod me down with all of your hatred and your journey towards the dark side will be complete!
    3. Re:In other news by curunir · · Score: 1

      Or...

      One is a language which lends itself to quick and dirty web pages that have to run in a shared context (i.e. a webhost account) and the other one lends itself to enterprise deployments where you really have to have full control of the OS.

      PHP won't be a serious option for large-scale projects until it can compete with not only J2EE but also frameworks like Spring/Webwork/Tiles/Sitemesh/Hibernate/iBatis. Similarly, Java won't be able to compete with PHP in the cheap-o webhost arena until it can be deployed in a shared context.

      Ruby is much closer than PHP is right now. Rails, while completely full of hacks and still pretty slow, even with FastCGI, comes much closer to offering the developer what he/she needs to create a maintainable website.

      --
      "Don't blame me, I voted for Kodos!"
    4. Re:In other news by kberg108 · · Score: 0

      Java is used for a whole hell of a lot more than dynamic web sites. I agree with the orginal posting. They are very different and comparing the two is stupid. Besides there are a whole lot more java based web apps than the ones you see on public or service based web sites. Trying to compare the container architecures implimented JBoss/Jetty/Hibernate/etc to Zend's stuff is foolish. Frankly Zend is playing catch up to the big boys who have been at this for years. I do feel happy for PHP scripters, for now they can learn how real applications are built. !!!Fuck Tards!!!

      --
      I like things that are sweet and not things that are lame. --
    5. Re:In other news by timeOday · · Score: 1

      If your point is simply that Java, Flash, and PHP are good for different things, then you're in violent agreement with Andreessen. The point is, this is not what Sun had in mind 10 years ago, and many would take issue with abandoning Java for web apps even today. With Java, there wasn't supposed to be a need for Java and Flash and PHP and C++ and C#... Java was going to be *the* solution, from applets to embedded to servers, but in fact Java's niche just seems to keep shrinking.

    6. Re:In other news by Skjellifetti · · Score: 1

      but in fact Java's niche just seems to keep shrinking.

      And yet the folks who keep repeating this "Java is dieing" mantra in one form or another never seem to provide any metrics that might really prove their point. OTOH, there are lots of easily available metrics (e.g. job listings, press releases from handset manufactures, product announcements on Freshmeat) that seem to suggest the opposite.

      Who cares what Sun had in mind 10 years ago? In both life and technology, staying static will kill you.

  5. PHP can do allot by fak3r · · Score: 1, Insightful

    I'm neither a java or php programmer, but I do work with both. While java is nice and portable, I'm very impressed with how far PHP (Personal Home Page) has gone. There are acclerator projects out there that cache php scripts, making them much more responsive. I use eAceelerator (formerly MmTURKE Cache or something like that) and it's obvious that php performance can be improved. For many a simple LAMP setup is very powerful, I've been using it for a website, as well as webmail, for over 4 years now.

    1. Re:PHP can do allot by Anonymous Coward · · Score: 0

      PHP stands for

      PHP: Hypertext Preprocessor

      It used to stand for personal home page, before they realized that a two bit name would get them nowhere.

    2. Re:PHP can do allot by christopherfinke · · Score: 5, Informative
      I'm very impressed with how far PHP (Personal Home Page) has gone.
      PHP hasn't stood for Personal Home Page for a long time. It stands for "PHP: Hypertext Preprocessor."
    3. Re:PHP can do allot by totallygeek · · Score: 2, Informative
      I'm neither a java or php programmer, but I do work with both. While java is nice and portable, I'm very impressed with how far PHP (Personal Home Page) has gone. There are acclerator projects out there that cache php scripts, making them much more responsive. I use eAceelerator (formerly MmTURKE Cache or something like that) and it's obvious that php performance can be improved. For many a simple LAMP setup is very powerful, I've been using it for a website, as well as webmail, for over 4 years now.


      Two things:

      • Java may be portable, but a fair percentage of applications written with Java, both corporate and Internet, work only for an intended audience of operating systems. Java has evolved out of its starting premise of platform-independence.
      • PHP no longer is referenced as Personal Home Page. It is the PHP Hypertext Processor. For some reason, corporate types won't let you use something with the word personal in it, but annoying recursive acronyms are acceptable.
    4. Re:PHP can do allot by Anonymous Coward · · Score: 0

      Allot is like "assign" or "dole out". Alot is not a word. You seem to mean "a lot". Why is that so fucking hard for so many people?

      -Peter

    5. Re:PHP can do allot by netkid91 · · Score: 0

      Aggreed, Java was made for platform-indepence, code it once and it works on all, not so much anymore. With the need for web-services in the future and a diverse economy of OS'es, we need something that works for all and will stay that way, a big reason for a shift to PHP.

      --
      NO~, I read Slashdot because I think it's stupid.....
    6. Re:PHP can do allot by b1t+r0t · · Score: 1
      Allot is like "assign" or "dole out". Alot is not a word. You seem to mean "a lot". Why is that so fucking hard for so many people?

      Probably (not "prolly", people!) the same reason that lose vs loose is so fucking hard for so many people. Because they just don't fucking care.

      --

      --
      "Open source is good." - Steve Jobs
      "Open source is evil." - Microsoft
    7. Re:PHP can do allot by Anonymous Coward · · Score: 0

      Don't you know? Recursive acronyms are all the rage.

    8. Re:PHP can do allot by Anonymous Coward · · Score: 0

      Well PHP is no longer Personal Home Page its PHP:Hypertext Preprocessor

    9. Re:PHP can do allot by 62vette · · Score: 1

      Actually, it stands for Pre Hypertext Processor. Or, at least it did back in the days of PHP3.

    10. Re:PHP can do allot by bloodredsun · · Score: 1

      I disagree on the supposed non-portability of Java. For the last few years, all my Java work has been developed on win32 and and then hosted on *nix systems, mostly Solaris and some RedHat and it's all been fine.
      The only issue comes from companies leveraging the spec to suit them. JNDI lookups in application servers being a classic example, why the hell do I need to have a proprietry Initial Context Factory string in my code?

      I'm with you on the annoying acronyms though. I always imagine it's some geek sniggering into his Star Trek coffee mug thinking "Now that's FUNNY, hur hur hur"

    11. Re:PHP can do allot by John+Nowak · · Score: 1

      Can you please tell us more about this allot() function? Is this some sort of manual memory management for php?

    12. Re:PHP can do allot by Ozwald · · Score: 1

      I always found that Java was completely unportable. I know it's supposed to be but trying to get JSP stuff working on different platforms made me regret ever choosing it. There are just too many implementations and patchwork tools to get JSP running and worse yet if you want more advanced stuff like SOAP.

      PHP on the other hand is a few second installer on Windows (for IIS and Apache) and on non mainstream OSs like OpenBSD a small command line. To get JSP working on Windows seems like a day's work and is hopeless on anything non Redhat.

      Oz

    13. Re:PHP can do allot by ScrewMaster · · Score: 1

      I thought PHP stood for Programmers Having Problems. But then again, I think that HTML stands for a Hokey Twisted Macro Language that is Hard To Make Likeable because it Has Too Much Lacking, so probably I'm not the best person to ask.

      --
      The higher the technology, the sharper that two-edged sword.
    14. Re:PHP can do allot by ortholattice · · Score: 1

      Can't any of you get it right? PHP (used to?) stand for Perl Hypertext Preprocessor. Perl, in turn, is supposed to have stood for Practical Extraction and Report Language (although I vaguely recall that there was some controversy regarding this and it may have been disclaimed by Perl's originator, Larry Wall).

    15. Re:PHP can do allot by Anonymous Coward · · Score: 0

      I thought it was for "People who Hate Perl." ;-)

      Old joke for all you kiddies out there... PHP was originally designed as a Perl module.

    16. Re:PHP can do allot by aled · · Score: 1

      I can tell from my experience how to install for windows:
      0) install java developer kit (jdk). Usually from Sun or you favorite implementation.
      1) download tomcat installer (exe)
      2) install
      Once the download done it must take no more than a few minutes.
      You can download a .zip if like but then you must put the java binaries on PATH and run tomcat/bin/startup.bat
      For linux or as/400 is about the same but run startup.sh.

      Then develop you application and deploy it.

      --

      "I think this line is mostly filler"
    17. Re:PHP can do allot by ScrewMaster · · Score: 1

      "Prolly" is often a deliberate misspelling/mispronunciation done for effect and is thus acceptable in certain contexts, whereas "Alot", "lose vs. loose" and my personal favorite "interger" (argh!) are just wrong.

      Many years I go I dated an English instructor. She told me that she had been forced to read so many misspelled words over the years that it had really affected her own ability to spell properly (and this from a girl who won spelling bees without batting an eyelash.) She would occasionally show me student papers while she was grading them. These were from first and second year college students, many of whom could not write in full sentences, much less use proper spelling. It was truly appalling ... somewhere along the line a few balls got dropped.

      I hear a lot of noise about how far down the educational ladder America has fallen, mostly with regard to math and science as those are seen as essential to our economic survival. But language skills are no exception, I'm afraid. Like it or not, the ability to communicate efficiently with your fellow man is just as important whether you are a rocket scientist, an engineer, or a journalist.

      This is for all of you semi-literate technojocks that chose an engineering curriculum thinking you could avoid learning how-to-write because, after all, you're only interested in the technology. Right? You know who you are. And I personally know a number of technical people that were astonished (and dismayed) to find that the world outside the University fully expected them to have reasonable communication skills. Nobody expects quality prose from an engineer ... but full sentences are nice, as is the ability to organize ones thoughts on paper.

      Frankly, all those analytical term papers I had to write about Shakespeare, Mary Shelly, and other dead people didn't seem all that useful to me at the time. Just another hill I had to climb on my way to a diploma. But the first time I got asked to write a fifty-page project proposal it all became very clear.

      I ran my own consulting business for many years, and I discovered (much to my surprise, I admit) that good communication skills were, in and of themselves, a competitive edge. Other consultants that I would go up against might even have had technical skills superior to my own: but they were unable to communicate that to the customer. Furthermore, good documentation of a completed project is equally important to many customers, and if your written communication throughout the initial phases of a project is solid and professional, they will have no problem believing that you will document it properly as well.

      For anyone who is considering a technical or engineering career, all I can say is: study hard, and don't neglect your verbal skills. They will pay off handsomely throughout your entire working life.

      --
      The higher the technology, the sharper that two-edged sword.
    18. Re:PHP can do allot by Marc2k · · Score: 1

      Many years I go I dated an English instructor.

      I go? Ago! This one even is one word! Arrrgggghhhh

      --
      --- What
    19. Re:PHP can do allot by Tack · · Score: 1

      I have observed that, by and large, the best hackers have excellent language skills. Those who have mediocre programming abilities are equally mediocre in prose.

    20. Re:PHP can do allot by Anonymous Coward · · Score: 0

      If you're not smart enough to be able to setup a Java dev environment than perhaps you should reconsider what profession you're in. Saying that you use PHP because it was the easiest to get working is basically admitting you're a retard.

    21. Re:PHP can do allot by Vancorps · · Score: 1
      That really doesn't sound like you know what you're talking about.

      You described all the easy parts. Tomcat will also add all those jars to the classpath automatically which is nice except if you're working with Oracle where its indeed a nightmare.

      Now go ahead and edit the web.xml and server.xml files to register your datasources and configure security. Want to interface with a directory service to make sure resources are properly secured inside your web app? Good luck with that.

      That last issue I ran into last week, I saw no way to get around it and the documentation for Tomcat is atrocious. I remember having to google for install instructions for the admin tool. I found out how to install it in a forum where a bunch of people were complaining. Turns out I had done most of it right except for the deleting of an htm file. Would have been nice if the readme that came with the package actually included the install instructions.

      okay, now you've got admin working, if not get ready to edit more xml files and restart the service to actually deploy applications.

      I threw out Tomcat and just install the Oracle Application server which still has issues integrating with Oracle Reports binaries and don't forget to secure everything. Of course I'm in the Oracle world, so that means installing the Oracle AS Infrastructure server and the Oracle AS Portal and then configuring portal for use with Reports. Of course before you do that you have to setup Oracle Internet Directory and single sign on in order to ensure that your pages are properly protected.

      This whole experience has given me a bit more respect for IIS as an integrated web and app server. The model is so much easier to work with and a hell of a lot faster to deploy although you can argue about the end security. Performance these days is pretty much similar with other app servers.

      Anywho, sorry bout the rant, but this is the biggest thing hitting java and the best thing php has going for it. PHP can be deployed and extended with very little effort and time. JAVA can take time to deploy even if you do know what you're doing. There is still a lot of xml file editing with poor documentation. I ended up giving up on figuring out what the hell I'm sposed to put in the xml files since there doesn't seem to be any documentation. I submitted a TAR on Oracle's metalink yesterday morning, I'm still waiting for a reply. Usually only takes 20 minutes to hear from them. Fun fun

      I tell ya its irony the day I can extend functionality in IIS without restarting the service while I have to restart Tomcat or OC4J.
    22. Re:PHP can do allot by Sique · · Score: 1

      And this invalidates the comment above how?

      PHP used to stand for Personal Home Page, and it has gone far. Even the name doesn't stand anymore for Personal Home Page ;)

      --
      .sig: Sique *sigh*
    23. Re:PHP can do allot by aled · · Score: 1

      Come on, the OP says tomcat is hard to install, which is not. Configuration on specific apps may be more problematic. I had some problems with classpath myself. I don't like putting JDBC drivers into paths shared by tomcat. I prefer to put the libraries into the war, for isolating each app. I would like to put the database access on an application server but haven't that setup yet in our apps. I think that tryinh to deploy a database application in PHP if it has not the drivers compiled in would not work, so Java has an edge at least.
      I agree on documentation, it's deficient if I'm being kind.

      --

      "I think this line is mostly filler"
    24. Re:PHP can do allot by tourvil · · Score: 1
      PHP hasn't stood for Personal Home Page for a long time. It stands for "PHP: Hypertext Preprocessor."

      Personal Home Page Hypertext Preprocessor?

    25. Re:PHP can do allot by demigod · · Score: 1
      For those interested there is a little info on the history of PHP

      For some reason I seem to remember the first time I ran across PHP it was called "The home page construction kit" and I remember thinking it must have been some sort of translation or something that was abbreviated PHP in another language. I tried look through some of my old e-mail, but I don't remember where I put the really old ones.

      Maybe I should e-mail Rasmus and see if I mis-remember that.

      --
      "The last thing I want to do is deal with a bunch of people who want something."
      Major Major
    26. Re:PHP can do allot by Vancorps · · Score: 1
      I would think this day and age its mighty difficult to find a real DBMS that doesn't have drivers that PHP can use.

      Now if I can only find out how to get the client ip address from a reports binary then I'll be set.

      Also, deficient I would say is being nice. Apache has come a long way there, I remember the days when it was difficult although it was never as bad as something like sendmail. Of course with both pieces there is documentation to actually show you the light.

      Java does have an edge in that I don't believe I've ever found anything that couldn't be integrated with java. I've seen java integrate with cell phones for years so yeah its definitely got that edge.

    27. Re:PHP can do allot by Tablizer · · Score: 1

      Inclooding run yor spail chekker? :-)

  6. Will be? by bhirsch · · Score: 2, Insightful

    I thought PHP was already more popular. Granted PHP-Nuke, etc aren't exactly banking apps.

    1. Re:Will be? by Anonymous Coward · · Score: 1, Insightful

      I thought PHP was already more popular

      PHP's popularity is partially due to cost of hosting a PHP web site. PHP is just easier for hosting providers to setup and not as resource-hungry as a JVM. Shared JVM's are also a pain, because often times you really need to restart the whole JVM to get things to work (OutOfMemoryExceptions). So for a serious site, you'd want your own JVM, and that costs even more.

      If Java hosting didn't cost 2.5 times as much as PHP hosting (and that's just for shared JVM), we'd probably see more Java-based sites. I know I'd like to have some place to host the Java web apps that I've written for fun. I'm just way too paranoid to host them on my home connection.

      As for the languages themselves, I like Java for working on big projects. PHP I use for little hacks and simple web pages (as well as extending Drupal, or whatever blog software I happen to be using). Of course I've never been paid to work with PHP so I don't know the full extent of its capabilities.

    2. Re:Will be? by yomahz · · Score: 1

      I thought PHP was already more popular.

      That really all depends on what crowd you mean. If you mean popularity with the corporate "enterprise" crowd, PHP doesn't even usually get invited to lunch, much less the corporate christmas party.

      --
      "A mind is a terrible thing to taste."
    3. Re:Will be? by Anonymous Coward · · Score: 0
      Check out cwihosting.com, they have some nice Java hosting plans, and very affordable prices.

      I don't work for them, just a satisfied customer.

  7. Help me out here by wren337 · · Score: 5, Insightful

    Doesn't PHP tend to be embedded in the page? I thought it was a more direct comparison to JSP than to Java. And like JSP I expected it violated the seperation of logic and presentation that I love so dearly. I've been avoiding PHP for the same reason I don't do JSP pages, I don't like code in the presentation layer.

    I am prepared to have my mind blown here, can someone enlighten me?

    1. Re:Help me out here by TheSpoom · · Score: 5, Informative

      You're pretty much correct. PHP is a lot closer to JSP or ASP than Java, and yes, it can violate separation of logic and presentation. However, you can use the Smarty templating library to separate code and presentation (and I recommend this to anyone learning PHP, because embedding PHP in HTML makes for very sloppy and nigh unreadable code).

      --
      It's better to vote for what you want and not get it than to vote for what you don't want and get it.
      - E. Debs
    2. Re:Help me out here by Dukael_Mikakis · · Score: 1, Interesting

      Yeah, the PHP files will have code mixed in with your html, which can only somewhat be mitigated by things like CSS and function imports and such, which is actually a big reason why I'm not completely sold on PHP. The php files end up looking somewhat ugly and sometimes the code is pretty convoluted.

      On the flip side, I've been working with Ruby on Rails and it's beautiful. Scripts to generate the starting points for your web files, separation of design and implementation, a great framework. Only thing it lacks is a strong IDE (as far as I can tell) behind it and extensive documentation or resources on the web if you hit a wall (PHP sites are everywhere, for example).

    3. Re:Help me out here by potHead42 · · Score: 1

      Well, it certainly encourages you to just throw everything together in a single file, but it's a programming language like any other, so it's also possible to separate everything and build complete MVC-frameworks, for example there's Cake which looks like a clone of Ruby on Rails.

    4. Re:Help me out here by Anonymous Coward · · Score: 2, Informative

      You can separate presentation and logic in PHP just fine, and once you come to doing templates you can use a really powerful templating language - PHP.

    5. Re:Help me out here by tertullian · · Score: 2, Insightful

      Don't fool yourself, I've seen much Java code with "real Java" embedded into the pages. I've worked on projects that make use of BroadVision, Weblogic, etc... and there seems to always be a need to have logic on the presentation layer. With PHP, I've been using Smarty, and I've been able to accomplish everything I need to do without the having to put PHP logic on the page. This argument of presentation/logic separation is hypocritical when it comes from Java developers, because they don't practice what they preach.

      --
      Goal in Life: Learn as much as I can...
    6. Re:Help me out here by jiushao · · Score: 1

      Just want to point out that the template library approach is similar to the way JSP works. So even then the comparison PHP <=> JSP is quite apt.

    7. Re:Help me out here by wren337 · · Score: 1


      We use one servlet/many handlers to generate XML, and the presentation layer is XSL(T). So yes, you can do Java with no code in your presentation layer.

    8. Re:Help me out here by digidave · · Score: 2, Interesting

      There is nothing in PHP that discourages you from mixing logic and presentation, but there is also nothing discouraging you from separating them either. This is exactly what makes PHP great for dirty hacks and large web apps alike.

      Templating is part of the solution, but so is good app design. If you don't want to mix your logic, you simply need to code it that way. Zend PHP Framework will help enforce some of the same separation as Java does, but it's not strictly necessary. You can do MVC app design without much trouble. Take a look at Sitepoint's PHP Application Design forum (http://www.sitepoint.com/forums/forumdisplay.php? f=147).

      There are also Ruby on Rails-type frameworks such as CakePHP (http://www.cakephp.org./

      --
      The global economy is a great thing until you feel it locally.
    9. Re:Help me out here by JASegler · · Score: 1

      Depends on what you consider "code".

      I would call all of these xsl tags "code".

      xsl:choose
      xsl:when
      xsl:otherwise
      xsl:for-each
      xsl:if
      xsl:call-template
          xsl:with-param

      And yes I'm on a Java project using XML/XSLT as the presentation layer.
      Personally I find XSLT's to be overly complicated pages. It has also been much slower and much more memory intensive than a comparable Bean/Struts/JSP solution.

      A good Bean/Struts/JSP solution would make extensive use of JSP tags and not have any raw Java code in them.

      On the other hand you can go with a code heavy JSP solution with methods and inner classes defined in the JSP itself.

      I've used PHP in the past and remember it being on par with JSP. You can be as clean as you want in PHP or as dirty as you want.

      But in the business world PHP won't make inroads easily. Businesses are trying to reduce the number of languages they have to keep expertise in. XML is replacing EDI as the data interchange standard on a large number of fronts. Java is being pushed very successfully by IBM, etc as the enterprise language to do everything in.

      For most places Struts/JSP is the presentation layer they go with. XML/XSLT has interest.. But the speed/memory issues hold them back right now. Anyone suggesting PHP gets pushed towards the Java solutions.

      And of the 5 Fortune 500 companies in this area I have worked with 4 are going Java. 1 is going .NET.

      -Jerry

    10. Re:Help me out here by Anonymous Coward · · Score: 0

      PHP is an oop language, or procedural. It's possible to write a mess of html interspersed with php, or it's possible to put all your business logic into components, and glue these together into very easy to understand flows.

      As with any language, you can use it correctly or not.

      IMHO PHP belongs on your front line web servers, tomcat and J2EE belong behind them in the dmz running your app server, exposing your components via web services, on a private network to the webservers.

      There simply hasn't been enough security research on J2EE to safely expose J2EE services directly to the internet. There are too many J2EE implementations for the security community to track and test.

      l8,
      AC

    11. Re:Help me out here by bahwi · · Score: 1

      Then don't code in the presentation layer. It's not where it belongs anyways, most larger php projects are separated, and any competent programmer will separate it anyways. Yeah, you can do bad code in PHP, but you can do it in other languages. See Obfuscated C contest. Or java's famous: string.operand(string.toUpper(blah.toBlah(blah.mak eDisappear(blah.makeRandomText(crap)))));

      Don't tell me that's easier to understand than badly written PHP. But no, you don't have to code in the presentation layer, and we enforce that where I work.

    12. Re:Help me out here by wren337 · · Score: 1

      We're using XSLTC (runtime compiled stylesheets) exclusively and the performance and memory profiles have been very good. There are very few considerations when switching to XSLTC, the only one that bit us was your template names can't start with a number. The template name gets used as a Java method name, so it must begin with a character.

      I agree, xpath expressions and xsl tags you use for display control are code (it'a a complete language). I've seen rouge team members write some pretty wacky stuff into a JSP page though, opening database connections and such. I've NEVER had those kinds of problems developing with XSL. It keeps you and your team honest.

    13. Re:Help me out here by 1010011010 · · Score: 1

      Presentation logic is different than business logic.

      --
      Napster-to-go says "Fill and refill your compatible MP3 player", which is a lie. It's not MP3. It's WMA with DRM.
    14. Re:Help me out here by __aanonl8035 · · Score: 3, Informative

      I find it strange how people recommend Smarty for separation of code from content. Smarty implements its own while loops and if then statements. I have yet to come across a web application using Smarty that was easily readable. I would think if the goal was to separate code from content, one would use a templating engine more akin to QuickTemplates. It does not make you relearn a whole new programming language syntax for while loops and if then statements like Smarty does.

    15. Re:Help me out here by Randolpho · · Score: 2, Informative

      Separation of concerns (code in your presentation layer) is a design issue, not a language issue. Calling PHP a bad language because you can put code in your presentation layer is like calling water bad because you can drown in it.

      --
      "Times have not become more violent. They have just become more televised."
      -Marilyn Manson
    16. Re:Help me out here by Anonymous Coward · · Score: 0



      It really depends on what kind of logic it is. It's okay to have presentation logic on the page -- code whose job it is to lay things out or present the information.

      The problem really comes when you start having buisness logic embedded into the page. That is, making decisions about data that relate to buisness rules simply because it's "easier" to put that decision on the page than elsewhere.

    17. Re:Help me out here by bobdinkel · · Score: 3, Insightful
      I find it strange how people recommend Smarty for separation of code from content. Smarty implements its own while loops and if then statements. I have yet to come across a web application using Smarty that was easily readable. I would think if the goal was to separate code from content, one would use a templating engine more akin to QuickTemplates. It does not make you relearn a whole new programming language syntax for while loops and if then statements like Smarty does.

      People recommend Smarty because PHP feels pretty incomplete without it. And it's not about separating code from contentit's about separating business logic from display logic. And the syntax is really easy.

      --
      A publicly traded company exists solely to make profits for shareholders.
    18. Re:Help me out here by Anonymous Coward · · Score: 3, Insightful

      PHP already is a templating language! You don't need the extra overhead of these 'template engines'. PHP is already doing it for you. You wouldn't go and build a templating engine via Smarty now would you?

    19. Re:Help me out here by Anonymous Coward · · Score: 0

      Perl with HTML::Template is my choice. It allows separation.

    20. Re:Help me out here by hoggoth · · Score: 1

      > like calling water bad because you can drown in it

      The dangers you alluded to are greatly underappreciated. See this page for more on the hidden scourge of the 21st century!

      --
      - For the complete works of Shakespeare: cat /dev/random (may take some time)
    21. Re:Help me out here by davesag · · Score: 1

      Is that the whole point of AJaX, that the interface can be an event driving display, the visuals are done in css with some scripting, the objects are modelled in javascript and renders can generate page components for them that get styles by the css. the requests to the back end are more tightly structured and so the simple method calls become a high level interface that exchanges textual tokens. any old slut of a language can talk to that.

      btw as a java / javascript developer i am a little biased.

      php just seems to lack that zen like feeling you get when coding in java.

      --
      I used to have a better sig than this, but I got tired of it
    22. Re:Help me out here by HeaththeGreat · · Score: 1

      You needn't avoid JSP to avoid mixing presentation and application logic, it just requires a little discipline. Basically, don't use scriptlets. If you create custom tags, you can encapsulate presentation logic into reusable components. You can then pass your application logic into that tag.

    23. Re:Help me out here by budgenator · · Score: 1

      Doesn't PHP tend to be embedded in the page?
      often usualy what happens is it starts out simple where mixing logic and presentation isn't a big deal, just a quick-dirty web-app for a small group of users doing one thing. Then feature creep, different users come onboard, more feature creep until it becomes obvious that the thing should have been designed from the beginning because it turned into an unmagageable mess of spegetti.

      At that point you have to start ripping it appart, refactoring everything and start using a proper templateling lib, then you find a lot of uglies to fix along the way, that's what I'm doing now.
      Going through a disicplined desgn cycle prevents a lot of that.

      --
      Apocalypse Cancelled, Sorry, No Ticket Refunds
    24. Re:Help me out here by seann · · Score: 1
      include('Smarty.class.php');
       
      // create object
      $smarty = new Smarty;
      // assign some content. This would typically come from
      // a database or other source, but we'll use static
      // values for the purpose of this example.
      $smarty->assign('name', 'george smith');
      $smarty->assign('address', '45th & Harris');
      // display it
      $smarty->display('index.tpl');
       
      <html>
      <hea d>
      <title>{$title|default:"no title"}</title>
      </head>
      <body>
      I'm confused as why this is different to:
      include('Main.class.php');
       
      // create object
      $clMain = new CommonFunctions;
      <html>
      <head>
      <title><?= $clMain->Title() ?></title>
      </head>
      <body>
      User Information:<p>
       
      Name: <?= $clMain->Name() ?><br>
      Address: <?= $clMain->Address() ?><br>
       
      </body>
      </html>
      --
      I'm a big retard who forgot to log out of Slashdot on Mike's computer! LOOK AT ME.
    25. Re:Help me out here by thePowerOfGrayskull · · Score: 4, Insightful

      However, you can use the Smarty templating library to separate code and presentation (and I recommend this to anyone learning PHP, because embedding PHP in HTML makes for very sloppy and nigh unreadable code).

      Come again? You're saying that {$value} somehow separates presentation from code more than does <?=$value;?>?

    26. Re:Help me out here by dan+the+person · · Score: 1

      JSP is for the presentation layer silly. It doesn't violate MVC etc.

      Yes it has logic in it, PRESENTATION logic.

      Do the apps you develop not have an interactive front end? If so then fine stick with plain HTML. Otherwise you need ASP or PHP, or JSP etc etc. And they can call functions on your EJB session beans or what layer you keep your business logic in.

      If you want to be really anal, it's simple to turn on a flag so any JSPs with java scriptlets fail to compile, then you are forced to use jstl and the expression language (much better than embedded java for presentation logic IMHO)

    27. Re:Help me out here by hurricaen · · Score: 1

      After programming in both, it seems to me that php serves the utility of both servlets and jsp pages. For instance, you can have the target of a form request be a handler php page that has nothing but php; it could modify user state and redirect back to the original page which is then regenerated based on the updated state. -K

    28. Re:Help me out here by seweso · · Score: 0

      I personally use php to output xml and render this xml to xhtml with xslt, works pretty fly.

    29. Re:Help me out here by Anonymous Coward · · Score: 0

      You must be a horrible programmer because you're example is nothing but an embarrassment to yourself.

      P.S. Yup just checked your blog and now it's been confirmed that you're indeed a horrible programmer.

    30. Re:Help me out here by Decaff · · Score: 1

      You're pretty much correct. PHP is a lot closer to JSP or ASP than Java,

      Eh? JSP is Java. It is a standard part of J2EE!

    31. Re:Help me out here by Anonymous Coward · · Score: 0

      Although I haven't used PHP, I think you're correct according to everything I've read. I don't care what method you use to create or render web pages, it just plain sucks. And when people call web page creation "programming" it's a crime (or a joke.) I've run across awful JSP's that were embedded with code. I'm sure you get the same thing with PHP. With JSP's you can (and should) use tag libs and it seems that PHP has the same thing. Also, I believe JSF trys to address some of the difficulties with JSP development.

      One other thing. There are a lot of people here that have been bashing Java/J2EE. They have been making dumb statements that show they have no idea what they 're talking about. I currently work developing mission critical enteprise software using Java/J2EE. The systems are incredibly complex. Saying that Java sucks and PHP is great doesn't mean anything. There's no way an enterprise is going to use PHP as its development tool. At least not until its supported by a stable software company (if there is such a thing.)

      There, I made my statement, let the world ponder...

    32. Re:Help me out here by Anonymous Coward · · Score: 0

      That would depend on how the logic is coded.

      For real seperation of logic from presentation I've been using PHP 5 for over 2 years now and with the excellent libxml library all my logic is built and presented as an XML doc which I then use XSLT to convert into compliant XHTML1.1.
      I have an extensive library backend that can also be used from the CLI and most "simple" task usually only require something like:
      $query = Sql::queryName( );
      $data['pageName'] = $this->TmakeSimpleNode( $query );
      return $data;

      Using this library I'm able to keep all the presentation firmly away from any logic that's required while decreasing the time taken for development. My library is still works in progress but when done it will have an admin panel for selection of modules previously built to be provided for use on a new project, if new modules are required then the outline template of the class will be built from the admin panel with all case statements already defined and methods pre-defined so all that's required is the meat of the code, a bit of XSL and CSS and hey presto - a website with minimal development time :-)

    33. Re:Help me out here by mildgift · · Score: 1

      Agreed. On a current project, we created a "template language" by restricting our use of PHP constructs. You have while loops, variable and object references, and the ? : (ternary) operator. We had to add htmlentities() to filter output (another post pointed this issue out too). All objects to be rendered to the page are either global values or objects that are like iterators; and these iterators may contain references to iterators, allowing for nested hierarchies of data. These templates are rendered by setting up the objects as globals, and then "including" the template.

      With some discipline, you can have a somewhat readable separation of code from logic. The "templating language" consists of two powerful constructs with a somewhat steep learning curve (especially ? : ) but once learned, it covers 99% of your needs.

      The code that does the heavy lifting is in classes. A normal looking PHP file includes these classes and instantiates objects, and passes user data into the classes. Then, the templates are loaded up and rendered. Most pages don't require much PHP-scripting logic, because you keep trying to push the logic into the classes (many of which implement the controller pattern) and push that logic further back into SQL statements.

    34. Re:Help me out here by Anonymous Coward · · Score: 0

      Have you used smarty before? I have used it before in many applications. It is a very nice template system. The programming language not at all difficult to learn. The programmer writes the template code initially and the website designer can do whatever he likes with the layout. You can take the data almost directly from the database and display it. Here's an example to list users:

      php code:
      $Users = Array(1 => 'username', 2 => 'username');
      $smarty->assign('Users', $Users);
      $smarty->display('listusers.tpl');

      template file:
      {foreach from=$Users key=UserID item=Username}
      {$UserID}. {$Username}<br>
      {/foreach}

    35. Re:Help me out here by the_2nd_coming · · Score: 1

      but you can do that with out smarty.

      --



      I am the Alpha and the Omega-3
    36. Re:Help me out here by moof1138 · · Score: 2, Insightful

      It's not about exactly separating presentation from code - the presentation is also code. It's about separating business logic from display logic. Your example overlooks the key piece, where the business logic to determine $value is done.

      --

      Hyperbole is the worst thing ever.
    37. Re:Help me out here by captainclever · · Score: 1

      Just thought i'd interject and say we use PHP/Smarty for Last.fm - Smarty is pretty good, i'd recommend it.

      You need to learn 3 or 4 new syntax tricks, but it's well thought out and works nicely.
      Flexible too, you can easily add pre/post filters and what-not if you need to extend Smartys behaviour.

      --
      Last.fm - join the social music revolution
    38. Re:Help me out here by lemnik · · Score: 1

      I stayed away from JSP's initialy as well (because of the way they mix display and business logic). These days I tend to have a servlet do the business logic and pass the processed data through to a JSP (via the HttpServletRequest.setAttribute method) which then does the rendering, extracting the processed data through custom taglibs.

      I've coded in PHP quite a bit in the past, but I found it lacking for any site consisting of more than a few pages (and I sudder everytime I think of having to connect to databases with PHP).

    39. Re:Help me out here by robla · · Score: 2, Insightful

      It's harder to enforce separation without something like Smarty. Disclaimer: I haven't used Smarty, but I've used a homegrown templating system with PHP.

      It's nice to be able to give the people responsible for content and layout access to the files of the website, without giving them access to the code that actually contacts the database, has access to server globals, etc. You can enforce that sort of separation via policy rather than code, but if its only policy, there's a temptation to bend the rules, especially if you have a page designer who knows just enough PHP to be dangerous. Better to have a template system that doesn't give raw database access, and then have a backend that exposes the pieces of database data to the designers that they need.

    40. Re:Help me out here by bahwi · · Score: 1

      Haha, you ever deal with java source code done in a hurry?

      My example was just that java can be bad as well as any other language, not that it has to be. But people say "scripting always makes bad code!" when that isn't true, and the converse "non scripting languages always have good, clean code!" when that isn't true either.

      Learn to read and interpret dude, seriously. Some wack-o java defender? If you like it go for it.

    41. Re:Help me out here by Anonymous Coward · · Score: 0

      = display.tpl = hello ! = business.php = $value=$_GET['value']; include('display.tpl');

    42. Re:Help me out here by killjoe · · Score: 1

      Personally I think templating is wrong. That's right you heard me, it's wrong. I have never used a templating language that didn't have constructs like if-then and loops. They are simply a new language you learn.

      I think something like swing is a better idea. Everything is code, it's easy to read, easy to program. There are lots of toolkits to put swing like programming for the web and I always reccomend people use those instead of smarty or other templating systems.

      --
      evil is as evil does
    43. Re:Help me out here by Anonymous Coward · · Score: 0
      = display.tpl =
       
      hello <b><?=$value?></b>!
       
      = business.php =
       
      $value=$_GET['value'];
      include('display.tpl' );
    44. Re:Help me out here by aftermath09 · · Score: 1

      The fact that you are talking about JSP shows how little most people know about Java. MVC frameworks like Struts, Spring, Webwork, etc. have been around for a long time. While PHP seems like a great tool for creating (simpler) websites, no one can deny the maturity and vast amount of libraries that Java has to offer. This is definitely apples to oranges.

    45. Re:Help me out here by thePowerOfGrayskull · · Score: 1

      Actually, that was exactly my point. A templating language like smarty does separate the presentation logic from the business logic -- but it does so by using a parsed language to parse yet another language, which is not the height of efficiency. PHP itself can be used in the same way, without introducing the additional overhead.

      But then, this topic has been covered by others far more eloquentthan me.

    46. Re:Help me out here by Tablizer · · Score: 1

      separation of logic and presentation.

      I think seeking this is often overblown. Switching GUI's is rarely done because there rarely is a one-to-one translation beween GUI systems. They are usually so different that a rewrite is warrented anyhow to adjust to the different philosophies of GUI frameworks. For example, compare the "packing" concept of Tk to HTML. There are many things that just don't directly translate.

      Further, the "net present value" concept of accounting/finance tends to dismiss targeting code for an event that may be 10 years away (and far from certain). Nobody has made a good case that NPV does not apply to IT.

    47. Re:Help me out here by Splab · · Score: 1

      As someone else points out, smarty doesnt sepperate, but actually obfuscates even more in my opinion.

      With PHP5's DOM implementation its getting alot easier to sepperate, right now I'm working on a CMS styled thingiewaththismagic where the code is 100% free of html - it produces a nice clean xml tree and then you can pair that up with xsl/css to get your fancy webpage.

      Should be done in the first quarter (of 2010).

  8. PHP Desktop Apps?! by luiss · · Score: 3, Insightful

    Java "failed" on the desktop. I didn't know PHP desktop apps were taking over.

    1. Re:PHP Desktop Apps?! by digidave · · Score: 2, Interesting

      Sure, that's what php-gtk (http://gtk.php.net/) is all about :)

      Actually, php-gtk is very useful when you have an existing PHP web app that you want to port into a desktop app. It's a great project, but is definitely not meant for large-scale apps.

      --
      The global economy is a great thing until you feel it locally.
    2. Re:PHP Desktop Apps?! by Dukael_Mikakis · · Score: 4, Funny

      It's a great project, but is definitely not meant for large-scale apps.

      What are you talking about? I'm posting this right now on my php-coded web-bro&%($(*#&%#&@&NO CARRIER

    3. Re:PHP Desktop Apps?! by agent+dero · · Score: 1

      DAMN YOU LEVEL THREEEEEEEEEEEEEEEEEEE!!!!!!11

      (KAAAAAHHHNNN!!!)

      one of these days the lameness filter will get a sense of humour.....or is it trying to tell me something? ;)

      --
      Error 407 - No creative sig found
    4. Re:PHP Desktop Apps?! by Slashdiddly · · Score: 1

      Cool! Your browser was able to send the 'NO CARRIER' message *after* it dropped the connection. Does this only work in php?

  9. Guessed wrong again! by MojoSF · · Score: 5, Funny
    I've resisted specialization for most of my career, giving me breadth but not depth. It's hurt me in job interviews where the hiring managers want specialized expertise instead of intelligence and problem solving skills.

    So I decided that I'd focus on Java for my depth. Now I read that I guessed wrong again!

    Maybe I should have gone C#/.ASP.

    No, Python and Zope are where it's at!

    No way, Ruby is the way to go. Arrrgh!

    1. Re:Guessed wrong again! by amightywind · · Score: 1

      You make a good point. Fortunately PHP, Python, and Ruby are simplistic enough where specialization require a huge investiment in time like Java or C++. I think the hacking world is pretty saturated with languages. It started with Java in 1995, Perl, ASP, PHP, Python, and really ended with Ruby a few years ago. None of these languages has really advanced the state of the art. I am still waiting for Lisp to become fashionable again. We'd all be better off.

      --
      an ill wind that blows no good
    2. Re:Guessed wrong again! by Anonymous Coward · · Score: 3, Insightful

      If hiring managers were looking for specialization, you were hiring at the wrong kind of company.. i would kill for developers that could develop and not just plug crap into .net or java

    3. Re:Guessed wrong again! by b1t+r0t · · Score: 1

      Wait until next year and it'll be something else.

      --

      --
      "Open source is good." - Steve Jobs
      "Open source is evil." - Microsoft
    4. Re:Guessed wrong again! by KiroDude · · Score: 2, Insightful

      Can you give me the name of those companies that do not ask for specialization??
      I totally agree with the parent post, people mistake syntax with logic. I might be able to tell you every single reserved word, function, operand and whatnot of one language, but if I do not have the necessary logic to put all these words together in the right order, it is useless.
      Language syntax can be picked up pretty quickly, logic not.

    5. Re:Guessed wrong again! by cstec · · Score: 1

      Don't feel bad. If you have a PHP skillset, it's has no cash value. PHP is free, so everyone who has a PHP project figures they shouldn't have to pay you either. No joke, 99% of the contract work available is minimum wage or less.

      As least with Java and .NET your skills have a commercial value.

      I like PHP, I use it for everything I do, but from a career standpoint, it's about as useful as getting tanked at the company party and puking on the CEO.

    6. Re:Guessed wrong again! by schiefaw · · Score: 1

      I was hired at my current position even though they were using my least familiar language for development and transitioning to .Net which I had never used at all. The trick was that I interviewed directly with the development team and bypassed HR. I am not sure how that happened, as it is not the normal policy of this company.

      The consensus view was that if I could handle C++, ASP, JAVA, and JSP, then I could handle VB development and .Net. Actually, I spent most of the time selling my ability to solve complex problems. Code monkeys are easy to find, problem solvers are not.

      I have come to the conclusion that it is a loosing proposition to sell yourself as an expert in a specific language, unless you are talking to an HR drone.

      --
      Angleyne: You can't bend that girder - it's unbendable! Bender: Well I don't know anything about lifting, so that ju
    7. Re:Guessed wrong again! by hal2814 · · Score: 1

      Functional languages like LISP and ML won't ever be popular again. They do not lend themselves well to the hack and slash coding techniques found all too often in today's software development projects.

    8. Re:Guessed wrong again! by (trb001) · · Score: 1

      Sadly, I agree with both your sentiment and the parent post's experience. Way too many managers, including many in my own experience, hire for specific buzz words on a resume instead of looking for and actually interviewing based on a breadth and understanding of CS concepts. The more you work with Java, PHP, Web Design, etc, the more you realize it's the same concept that good developers have been using for years, just packaged up with a different syntax and interface. People who don't understand the concept, but have 5+ years experience with Java, still won't understand the Struts framework.

      --trb

    9. Re:Guessed wrong again! by masklinn · · Score: 1

      Python was actually born in 1991 and Ruby in 1993, so your "end" was pretty much before even the start.

      And you're missing quite many languages here (now about the state of the art issue, well every language since Lisp has been trying to catch up with Lisp, which means that 40 years of computer history were mostly spent trying to make what already exists exist again. And failing at it).

      --
      "The way we can tell it's C# instead of Haskell is because it's nine lines instead of two." -- wadler
    10. Re:Guessed wrong again! by amightywind · · Score: 1

      What I am hoping is that someone with influence in 'the enterprise' like Booch, or Yourdon (you know the type) will rediscover that programming with side effects is not so nice. I know Lisp would be a hard sell because its syntax has such a bad reputation. But one can always hope.

      --
      an ill wind that blows no good
    11. Re:Guessed wrong again! by masklinn · · Score: 1
      Don't feel bad. If you have a PHP skillset, it's has no cash value. PHP is free, so everyone who has a PHP project figures they shouldn't have to pay you either. No joke, 99% of the contract work available is minimum wage or less.

      PHP being "free" doesn't have any impact on the cash value, everyone and his uncle "knowing" PHP has.

      C# is free (as in speech since Mono, and it has a fully public spec), Python is free, Ruby is free, Perl is free. Heck, C, C++, Lisp, Haskell, OCaml and D are all free too.

      --
      "The way we can tell it's C# instead of Haskell is because it's nine lines instead of two." -- wadler
    12. Re:Guessed wrong again! by hal2814 · · Score: 1

      Lisp's syntax only get a bad name because people don't know it. Rest assured that if people got used to the syntax, they'd dislike the strong typing aspects a LOT more than any syntax concerns. In fact, a lot of people I hear complain about "syntax" are really complaining about how the type system works.

    13. Re:Guessed wrong again! by Anonymous Coward · · Score: 0

      If hiring managers were looking for specialization, you were hiring at the wrong kind of company.. i would kill for developers that could develop and not just plug crap into .net or java

      I'm a developer and system administrator performing both functions in Windows and Linux with familiarity with multiple development technologies and methodologies. I will contact you with details regarding the target and we can begin negotiations.

    14. Re:Guessed wrong again! by amightywind · · Score: 1

      Amen. I only repeat the misguided opinions you read out there.

      --
      an ill wind that blows no good
    15. Re:Guessed wrong again! by Courageous · · Score: 1

      I'm a hiring engineer at a major defense firm. My experience backs your own. If we wanted a java web developer, and couldn't hire a java web developer, hiring someone skilled in apache, mod_perl, mod_php, and other distributed web platform technologies and concepts is a better choice than hiring a plain old java programmer. The distributed web is conceptually more difficult than the java programming language per se.

      Teaching an HR guy that "apache+mod_php+zope is equivalent to J2EE, and in some ways may be better, even though we want J2EE" is impossible though. Their brains would melt... :(

      C//

    16. Re:Guessed wrong again! by dan+the+person · · Score: 1

      I've resisted specialization for most of my career, giving me breadth but not depth. It's hurt me in job interviews where the hiring managers want specialized expertise instead of intelligence and problem solving skills.

      Since when did problem solving, intelligence, and depth of knowledge become mutually exclusive?

    17. Re:Guessed wrong again! by Slashdiddly · · Score: 1

      Wait until next year and it'll be something else.

      No need to wait. It's already something else this year - Java^H^H^H^HECMAScript.

    18. Re:Guessed wrong again! by Glock27 · · Score: 1
      Functional languages like LISP and ML won't ever be popular again.

      Were they "popular" at some point in the past? o.O

      I think Dylan has a shot at significant popularity, now that high quality open source compilers exist. It has all the flexibility, expressiveness and power of CL/Scheme, the safety and portability of Java, and the efficiency of C++.

      So, get out there and use it! :-)

      --
      Galileo: "The Earth revolves around the Sun!"
      Score: -1 100% Flamebait
    19. Re:Guessed wrong again! by jc42 · · Score: 1

      [E]very language since Lisp has been trying to catch up with Lisp, which means that 40 years of computer history were mostly spent trying to make what already exists exist again. And failing at it.

      Pretty much true. And you could substitute several other languages. Back in the 70's, I did projects in both Snobol and Prolog. Ever since then, I've repeatedly regretted the lack of powerful pattern matching in every language I've used (including perl, which still can't do recursive patterns), and I've often really wished I could just code a simple resolution in the primitive languages I'm forced by "the market" to use.

      And why do we have to keep coding loops to run through arrays? The APL folks showed us how easy it is for your language to do that for you, and they did it decades ago. This would eliminate zillions of off-by-one bugs, and half the code in a lot of routines.

      Isaac Newton's famous statement about standing on the shoulders of giants. Some time back, someone (I don't recall who) observed that in the computer field, we don't stand on the shoulders of giants; we stand on their toes.

      --
      Those who do study history are doomed to stand helplessly by while everyone else repeats it.
    20. Re:Guessed wrong again! by Glock27 · · Score: 1
      Lisp's syntax only get a bad name because people don't know it.

      That just isn't so. Most scientists, mathematicians, and engineers find:

      c = sqrt(a**2 + b**2)

      much more readable than

      (c (sqrt (+ (pow a 2) (pow b 2))

      Infix syntax isn't a good fit for lots of people. That's the main reason LISP didn't catch on for general use back in the Golden Age of AI Languages.

      --
      Galileo: "The Earth revolves around the Sun!"
      Score: -1 100% Flamebait
    21. Re:Guessed wrong again! by RealProgrammer · · Score: 1

      > I've resisted specialization for most of my career

      That's really best, IMO. The field changes so fast that today's specialization is tomorrow's dead end.

      The older I get, though, the harder it is to delve into new topics. It's not hard mentally, just emotionally. I'm tired of the latest new thing, and want my favorite old things to keep being cutting edge, which they may never again be.

      On the plus side, there is so much convergence and so much confusion about it that old skills often suddenly look new again.

      --
      sigs, as if you care.
    22. Re:Guessed wrong again! by masklinn · · Score: 1
      And why do we have to keep coding loops to run through arrays? The APL folks showed us how easy it is for your language to do that for you, and they did it decades ago. This would eliminate zillions of off-by-one bugs, and half the code in a lot of routines.

      Do you mean by using iterators?

      If so, quite a lot of languages now do it that way (and I'm not talking about explicit creation of iterators the Java way, or the use of specific statements such as perl's for_each)

      Not enough yet, though...

      If it's not via iterators, how was it done in APL?

      --
      "The way we can tell it's C# instead of Haskell is because it's nine lines instead of two." -- wadler
    23. Re:Guessed wrong again! by masklinn · · Score: 1

      Mmmm wikipedia tells me that they (APL, but also J and Fortran) generalized operations and functions to work over arrays as well as scalars. Is that it?

      So basically the ability to do every operation on a whole array (and have it extended to each element of the array) instead of having it done manually via looping?

      --
      "The way we can tell it's C# instead of Haskell is because it's nine lines instead of two." -- wadler
    24. Re:Guessed wrong again! by Anonymous Coward · · Score: 0

      Paul Graham would rip your face off for this one. BTW, orbitz.com is written in 200k lines of lisp iirc.

    25. Re:Guessed wrong again! by jc42 · · Score: 1

      Right. The APL folks realized that a compiler knows the type of each variable, and can easily ffigure out whether the args of, say, A+B are scalars or arrays. If they are arrays with compatible shapes, the compiler just does the obvious loop, and produces a result that is also an array (which may be assigned, used in another operation, passed to a function, whatever).

      Some languages would have problems implementing this. In C, for example, the compiler doesn't always know the size of an array, so it wouldn't know the bounds for the loop. In perl, the array's size is available, so the loop is feasible. @A+@B could easily generate the sum, using zero for missing or undefined entires, giving a sum the same size as the larger of @A and @B. You'd probably also have to treat any non-numeric values as zero. You could also make %A+%B work in the obvious way, by running the index through all the keys of both hash tables.

      One of the initial weirdnesses in APL was that A*B does the same sort of same-element multiply. It isn't the [matrix] product of A and B. That has to be defined as a separate operation. The general pattern was that the value of was an array produced by simply applying to each pair of corresponding values in and . If they are N-dimensional arrays, this requires N nested loops, of course. On a CPU with parallel-processing or vector operations, the operations can be done in parallel.

      Since this works with all binary ops, in perl you could also do something like @A.@B to get the results of catenating all the corresponding items of both lists (using '' for any missing values, of course).

      Anyway, in languages where it's feasible (not C), this can make for some very compact, elegant code for table calculations. And it eliminates most of the common off-by-one sort of bugs.

      --
      Those who do study history are doomed to stand helplessly by while everyone else repeats it.
    26. Re:Guessed wrong again! by weston · · Score: 1

      If hiring managers were looking for specialization, you were hiring at the wrong kind of company.. i would kill for developers that could develop and not just plug crap into .net or java

      Sure, *you* would, but without those specifics, your HR people would have no freakin' idea how to sort resumes.

      Not that it would make a big difference from how things are now.

    27. Re:Guessed wrong again! by masklinn · · Score: 1
      Right. The APL folks realized that a compiler knows the type of each variable, and can easily ffigure out whether the args of, say, A+B are scalars or arrays. If they are arrays with compatible shapes, the compiler just does the obvious loop, and produces a result that is also an array (which may be assigned, used in another operation, passed to a function, whatever).

      Not doable that way in dynamic languages that consider arrays (or lists, or dictionaries, or whatever) as perfectly normal first-class objects, since they could be manipulated themselves in the function as objects, not as object-holding entities.

      Which is why Python for example has functions such as map() or filter() that take an array-like object and a function and apply said function to each element of the array automagically (map outputs an array holding the return of the function for each element of the initial array, filter returns an array with the elements for which the function passed returned true). Seems to do the same, but not as easily... There is the list comprehension thingie too, that works fairly well (once again doesn't work as easily, but works fine with Python's concepts)

      --
      "The way we can tell it's C# instead of Haskell is because it's nine lines instead of two." -- wadler
    28. Re:Guessed wrong again! by btobin · · Score: 1
      The older I get, though, the harder it is to delve into new topics. It's not hard mentally, just emotionally. I'm tired of the latest new thing, and want my favorite old things to keep being cutting edge, which they may never again be.

      There's a trick to this: pick as your favorite thing something that never was popular, so the stuff you use at work is always just a dim approximation of what you would really like to use. Then the new stuff, if you've picked your favorite properly (and assuming that there is at least some kind of half-blind, halting progress in the industry), should tend to be more like your favorite than the stuff you're currently using, so you'll always be inclined to investigate it.

  10. The Success of PHP by kihjin · · Score: 3, Informative

    About 22 million Web sites employ it

    Well, of course. PHP works for free.

    Wondering where the '22 million web sites' comes from? http://www.php.net/usage.php.

    --
    This slashdot-related signature is a stub. You can help kihjin by expanding it.
    1. Re:The Success of PHP by Piersky · · Score: 2, Informative

      Actually it comes from Netcraft

    2. Re:The Success of PHP by tjr · · Score: 1
      PHP is free, and it works for free.

      I'm not particularly fond of PHP as a language -- I much prefer Python or Lisp -- but it's so easy to just use PHP because it tends to already be ready to run on web server systems (no or little setup involved) and there's lots and lots of support available. (How many books do you see on writing Python/MySQL apps? Or Lisp/MySQL apps? Such things exist, but the PHP/MySQL combo is a lot easier to find learning materials for.)

      If other languages really want to catch on like PHP has, they will need to be as easy to use as a web development system as PHP is.

    3. Re:The Success of PHP by BrerBear · · Score: 1

      About 22 million Web sites employ it

      Is that employ or deploy?

      I remember PHP making these claims for years now, that there's an amazing amount of uptake. But how are they counting the sites? Is it just by pinging a server to determine if it has PHP installed? Or are they tracking whether it's actively used in development? I'm wondering if these numbers exist because PHP is just installed by default on common server deployments.

      Unfortunately, they don't call this out on the PHP site, and I suspect that's for a reason...

    4. Re:The Success of PHP by John+Nowak · · Score: 1

      Netcraft confirms it: 22 million websites are dead.

  11. Pardon me while I roll my eyes by Anonymous Coward · · Score: 5, Insightful

    "Java is much more programmer-friendly than C or C++, or was for a few years there until they made just as complicated. It's become arguably even harder to learn than C++," Andreessen said. And the mantle of simplicity is being passed on: "PHP is such is an easier environment to develop in than Java."

    This is just silly. PHP is far from "simpler" than Java. PHP *is* better suited to basic page generation tasks. Its syntax is easy to learn, and it's quick to get a page running. However, any sort of complexity thrown at the system starts making PHP look difficult and Java look easy. For example, I often write web applications that require that user sessions communicate with each other. Now this is stupidly simple in Java thanks to the use of Singletons or named derivitives. One can easily build a chat room, for example, whereas PHP begins to get a bit more tricky. Now throw really complex needs like PDF generation, Dynamic Excel Spreadsheets, XML/SOAP/XML-RPC/EDI communication, mainframe interfaces, off-brand databases, performance caches, and other large scale features, and suddenly Java doesn't look so hard anymore. PHP, OTOH, begins screaming for mercy.

    One would think that Andreessen would understand how to use the right tool for the right job, but apparently not. He should be kept away from the press. He always manages to sound 50 IQ points dumber than he actually is. (A common problem when dealing with the press.)

    1. Re:Pardon me while I roll my eyes by netkid91 · · Score: 2, Interesting

      Not a big fan of Java, slow, bulky, not user friendly. Best part about PHP is extensions, just write some C++ code(or C#/VB.NET on windows *frowns*) and make it a DLL, set it up and use it, not easily available as Java yet because no as many people use it yet. Honestly both preform well compared to ASP.NET and we should stop bashing each other, get a way for JSP and PHP to work together is what we need, simple page rendering stuff goes to the PHP engine, backend proccessing to Java, really, it might work.

      --
      NO~, I read Slashdot because I think it's stupid.....
    2. Re:Pardon me while I roll my eyes by FortKnox · · Score: 1

      Fully agreed, here.
      PHP is a great language for small web applications, but doing something complex like an insurance intranet site, and Java is clearly the better option.

      --
      Good quote, too many chars. Seriously, the slashdot 120 char limit sucks!
    3. Re:Pardon me while I roll my eyes by popeyethesailor · · Score: 0, Troll

      This is the reason I think the whole comparison is unfair - PHP should've been compared to ASP.NET or any one of the bazillion Web UI frameworks of Java(Spring,Struts, Tapestry,JSF whatever).

      However, the real strength of these systems is not in themselves; they are built on a superb platform base which provides Threading, IO, Networking, Graphics, Db access, i18n,and all the things a programmer might ever require. PHP doesnt have anything remotely similar, as far as i can see.

    4. Re:Pardon me while I roll my eyes by Zebra_X · · Score: 1

      This is just silly. PHP is far from "simpler" than Java.

      He does not mean simple as in stupid, he means simple as in easy to use. The infrastructure, the language, the libraries are all more accessible in PHP than in Java. It is for these reasons programmers like PHP.

      Your points Re: Tasks that are more sophisticated are right on though.

    5. Re:Pardon me while I roll my eyes by Gilmoure · · Score: 3, Funny

      Don't you know that non-partisanship on Slashdork won't be tolerated? If your comment can't be fodder for flamewar, you may be modded down (and cute bunnies won't like you anymore).

      --
      I drank what? -- Socrates
    6. Re:Pardon me while I roll my eyes by Crayon+Kid · · Score: 4, Informative

      However, the real strength of these systems is not in themselves; they are built on a superb platform base which provides Threading, IO, Networking, Graphics, Db access, i18n,and all the things a programmer might ever require. PHP doesnt have anything remotely similar, as far as i can see.

      OK, this is a troll if I ever saw one and may I be damned for feeding one but here it goes:

      Go look at PEAR and the PHP manual index and then tell people PHP doesn't have a platform offering all those.

      --
      i ate crayons when i was a kid and now i have two braincells and the blue ones taste nicer
    7. Re:Pardon me while I roll my eyes by coder111 · · Score: 4, Informative

      There's usually no need to integrate PHP with Java and use PHP for page rendering, because there are tools in Java that do page rendering just as well as PHP, if not better. If you need integration anyway, you can integrate Tomcat with Apache- then all your static (images, CSS) and PHP stuff will run on apache, for java stuff tomcat will get called. This will both increase performance (as Apache is better suited for serving static stuff than Tomcat) and allow PHP to be used on same box, same port.

      Java is not slow in server-side, it is just slow on desktop with Swing. Get Tomcat and try benchmarking some JSPs if you don't believe me. Templates with java might be slower than JSP, but anyway, page rendering is something that impacts the performance of web application the least.

      With java you EXTREMELY RARELY need to write extensions, usually you can find java libraries (most of them open source) that do the stuff you need. Or you can just use standart java class libraries, that are enough for 95% of cases. This way you can get a platform-independent solution for no additional cost. While your DLLs (.so's?) will have to be compiled for each architecture, coded to be cross-platform, installed by system administrators, etc.

      If you need to interface with C++/C, there is JNI (Java native interface, It is hairy and unfriendly though). Of you can integrate via some kind of interprocess communication (pipes still work, as will TCP, with java you can write TCP client/server in 10-30 lines of code). This way you can have any language on the other side of IPC. You can use webservices/CORBA/XML RPC if you want to be fancy.

      --Coder

    8. Re:Pardon me while I roll my eyes by colinrichardday · · Score: 1

      You find php's pdflib inadequate for your needs?

    9. Re:Pardon me while I roll my eyes by masklinn · · Score: 2, Informative
      Best part about PHP is extensions, just write some C++ code(or C#/VB.NET on windows *frowns*) and make it a DLL, set it up and use it.

      That's called a theory. It's much harder to build in reality, and mostly sucks anyway since you still don't get any namespace and have to decorate every damn function like there was no god.

      not easily available as Java yet because no as many people use it yet

      Thing is in Java you can write your extensions in Java (the JIT compiler is running behind so perfs are good anyway), or use JNI to use C/C++ compiled modules.

      Or you can do it the Nice Way and just hop on to Python or Ruby, get full OO, namespaces, and modules (including native compiled) that are actually fairly easy to build.

      With batteries included

      --
      "The way we can tell it's C# instead of Haskell is because it's nine lines instead of two." -- wadler
    10. Re:Pardon me while I roll my eyes by radixvir · · Score: 1

      PHP is designed for Web Applications. I wouldn't try to write a Chat Room in PHP. I think you are comparing apples and oranges here. I think a better comparison would be between PHP and Java/JSP/Struts/Whatever. There PHP is succeeding because it is easier to use and faster to develop. This is why the summary stated the prediction 'PHP will be more popular than Java for building web-based applications'.

    11. Re:Pardon me while I roll my eyes by Anonymous Coward · · Score: 1, Informative

      You find php's pdflib inadequate for your needs?

      Why yes, yes I do. In Java I can use PDFBox to merge pages together, populate form fields, and literally tear apart and put the PDF back together. Manually. By object. With encryption.

      Combined with the power of FOP (FO -> PDF) and SVG, PDFLib doesn't hold a bloody candle.

    12. Re:Pardon me while I roll my eyes by Anonymous Coward · · Score: 0
      Now throw really complex needs like PDF generation, Dynamic Excel Spreadsheets, XML/SOAP/XML-RPC/EDI communication, mainframe interfaces, off-brand databases, performance caches, and other large scale features, and suddenly Java doesn't look so hard anymore. PHP, OTOH, begins screaming for mercy.


      Huh?

      PDFLib
      PEAR::Spreadsheet_Excel_Writer
      XML is no different than tossing out a different Smarty template and header("Content-type: text/xml")
      SOAP and XML-RPC are in PEAR
      Smarty does template caching

      I'm not sure what other large-scale features you're referring to, but don't you think that a centralized Java application server is far more of a bottleneck than the shared-nothing architecture that PHP uses?

      Specialized mainframe architectures and one-off database software are niche applications. Do you suppose that Yahoo (one of those large-scale sites you're referring to and mentioned in the article) is running some hierarchical database on an old System 360 or running DB2 or Oracle?
    13. Re:Pardon me while I roll my eyes by TobascoKid · · Score: 1

      PHP is designed for Web Applications. I wouldn't try to write a Chat Room in PHP.

      I think the OP was refering to writing a Web App based chat room (hence the need to write web applications that require that user sessions communicate with each other.).

      --
      At some point, somewhere, the entire internet will be found to be illegal.
    14. Re:Pardon me while I roll my eyes by nuttzy · · Score: 1

      PHP is a great language for small web applications, but doing something complex like an insurance intranet site, and Java is clearly the better option. This statement is completely BS unless you've written a large app in PHP. My company's framework of 150k lines of PHP stands up nicely even though we get about 20 page views per second. We host the sites/tools of some major political entities, all of which are policitally charged and thus I won't give names. Simply put, LAMP works for web apps of all sizes. If you have the need for generating PDF files, there are only about a bazillion utils out there that can do this for you and PHP easily hooks in to them. What has been lacking from PHP is exactly what the framework is proposing. A standardized development scheme. I hope methods for dealing with security issues (ie. SQL injection, XSS, unvalidated user data) will be covered. In my company's framework, these exploits are not even possible (unless we step out of the framework). A well designed DBAL and OO approach goes a long way.

    15. Re:Pardon me while I roll my eyes by LDoggg_ · · Score: 1

      While PEAR:DB is nice, its a far cry from jdbc.
      JDBC drivers are usually pure java, not just a wrapper to call a native library.
      Try connecting to oracle from php on anything other than redhat enterprise.
      It can be done, but its extremely painful to set up.

      --

      "If they have both, tell them we use Linux. And if they have that, tell them the computers are down." -Dave Chapelle
    16. Re:Pardon me while I roll my eyes by Anonymous Coward · · Score: 0

      PDFLib

      Can it populate form fields? Can you count the number of pages in existing PDFs? Can you decrypt a document? Can you merge pages together? On the generation side, can you do complex tables and fixed positioning? How about using XSL-FO templates (perhaps even through JSP or PHP) to construct the PDF document?

      PEAR::Spreadsheet_Excel_Writer

      You're kidding me, right? PEAR does a decent job, but nothing like the low-level (AND high-level) access that POI can provide.

      XML is no different than tossing out a different Smarty template and header("Content-type: text/xml")

      I'm sorry, WHAT? Forget about generating XML. That's easy. Let's talk XSL-T, XMLDBs, XPath, XQuery, etc. Does any of this sound familiar? PHP is NOT designed for that sort of heavy lifting.

      SOAP and XML-RPC are in PEAR

      Uh yeah. In beta. Released only a couple of months ago. I've been doing this stuff in Java for YEARS.

      Smarty does template caching

      Template? Who's talking about templates? We're talking about seriously large, honest to God, Comp-Sci data structures here.

      Q: What do you do when you have a massive list of categories and products, 90% of which is displayed on the front page in a dense table that takes 30 seconds to construct from the database, and has to be pruned based on the customer or search criteria?

      A: You stash a navigatable data structure in memory that can be used by multiple processes to generate the page in milliseconds.

      Template cache. Pff. That's a good one.

      I'm not sure what other large-scale features you're referring to, but don't you think that a centralized Java application server is far more of a bottleneck than the shared-nothing architecture that PHP uses?

      Oh, I'm quite certain. Nothing says "slow" like sharing information via the database or disk drive.

      Specialized mainframe architectures and one-off database software are niche applications.

      *cough* *sputter* *gag* Niche? Try visiting Madison, WI sometime. Every frickin' business in the area uses Java->CICS software to interface their web with an IBM mainframe. Niche my ass.

      Do you suppose that Yahoo (one of those large-scale sites you're referring to and mentioned in the article) is running some hierarchical database on an old System 360 or running DB2 or Oracle?

      No, but that's because Yahoo is a web-based company, not someone likely to use a mainframe.

    17. Re:Pardon me while I roll my eyes by hoggoth · · Score: 5, Insightful

      > One would think that Andreessen would understand how to use the right tool for the right job, but apparently not

      Andreessen knows exactly how to use the right tool for the job, like a surgeon. His tool is the media, and his job, as a new member of the board at Zend, is to promote PHP.

      --
      - For the complete works of Shakespeare: cat /dev/random (may take some time)
    18. Re:Pardon me while I roll my eyes by hellraizr · · Score: 1

      not trolling but just an observation.....

      "Now throw really complex needs like PDF generation, Dynamic Excel Spreadsheets, XML/SOAP/XML-RPC/EDI communication, mainframe interfaces, off-brand databases, performance caches, and other large scale features, and suddenly Java doesn't look so hard anymore."

      Then the great gods of IT come forth and said "...AND LET THERE BE CPAN!...."

      Sorry just had to stick that in there :)

    19. Re:Pardon me while I roll my eyes by Anonymous Coward · · Score: 0

      PDF generation, Dynamic Excel Spreadsheets, XML/SOAP/XML-RPC/EDI communication, mainframe interfaces, off-brand databases, performance caches, and other large scale features...

      Also, PHP claims to support, say, Oracle and LDAP, but when you actually go ahead and use them, you find out that PHP only supports EITHER Oracle or LDAP, but segfaults when you load them both!

    20. Re:Pardon me while I roll my eyes by Mercano · · Score: 1

      Best part about PHP is extensions, just write some C++ code(or C#/VB.NET on windows *frowns*) and make it a DLL.

      Um, if you are going to be writing custom C-like code anyway, why not just write it in Java and not have to worry about linking different languages together at all? The fact that you find PHP inadequate to complete your entire project on its own doesn't speak well for it.

      --
      #include <signature.h>
    21. Re:Pardon me while I roll my eyes by Anonymous Coward · · Score: 0

      Where are you getting these mythical performance comparrisons?

      Performance is dependent on the language, but usually even moreso on the programmer. For example, in .NET if you use a repeater instead of a datagrid, you will typically see that you are able to gain several hundred more requests per second (I believe there's even an MSDN article on this exact comparrison). Another example in .NET, Python, and Java would be using the string builder or string library objects instead of conventional concatenation (i.e. StringBuilder, string.Format(), etc.)

      I am honestly curious where you are finding that ASP.NET is slower. I do work all the time with web apps using PHP, Java, Python, .NET, and a few others.

      I can honestly say that .NET typically performs better than most of the other languages I've used with the web, particularly for complicated, data intensive pages. I can back that up with code if you like.

      Please provide evidence before you jump on the M$ bashing train.

    22. Re:Pardon me while I roll my eyes by Decaff · · Score: 2, Informative

      Not a big fan of Java, slow,

      No, especially not server side. Reaches within a few % of C++ speed in well-established benchmarks:
      http://www.shudo.net/jit/perf/

      bulky,

      No. It can run within a few 100k on mobile devices. Non-GUI java apps can run in just a few MB.

      not user friendly.

      A vague term, which could mean anything.

    23. Re:Pardon me while I roll my eyes by Anonymous Coward · · Score: 0

      USE="oracle7" emerge dev-lang/php
      Note: Extremely painful. I lost one testicle and three fingers doing this.

    24. Re:Pardon me while I roll my eyes by LDoggg_ · · Score: 1

      That includes setting up the sqlnet client? Thought it was proprietary to oracle.

      --

      "If they have both, tell them we use Linux. And if they have that, tell them the computers are down." -Dave Chapelle
    25. Re:Pardon me while I roll my eyes by fimbulvetr · · Score: 1

      It looks for your $ORACLE_HOME and will build php using that. If you don't have the oracle client installed, it will fail compilation.
      The oracle client isn't hard to install on gentoo though, not any harder than any other linux, anyway.

    26. Re:Pardon me while I roll my eyes by LDoggg_ · · Score: 1

      sqlclient sucks to install on most distros I've tried.
      The new instant-client thing helps a little.

      --

      "If they have both, tell them we use Linux. And if they have that, tell them the computers are down." -Dave Chapelle
    27. Re:Pardon me while I roll my eyes by Decaff · · Score: 1

      Java is not slow in server-side, it is just slow on desktop with Swing

      It was slow on desktop with Swing. There have been major speed-ups in the Swing implementation shipped with Java 1.4.x and 1.5.x.

    28. Re:Pardon me while I roll my eyes by matfud · · Score: 1

      I find it interesting when people say "But Yahoo uses PHP". I know for a fact that they also use many other technologies. Java being one of them. The company I work for writes software. Its written in java. Yahoo uses it for thier mobile sites.

    29. Re:Pardon me while I roll my eyes by Anonymous Coward · · Score: 0

      Please show me where PHP allows you to synchronize threads.

    30. Re:Pardon me while I roll my eyes by bani · · Score: 1

      No. It can run within a few 100k on mobile devices.

      Which means nothing for web servers. Unless you recommend running J2ME on a web server?

      still, a few 100k is a _lot_, many embedded devices have only a few kb.

      Non-GUI java apps can run in just a few MB.

      Of course, java was supposed to have completely taken over years ago (if you believed the sun hype).

      java's niche keeps shrinking. first it was 'take over the world' then 'take over the desktop' then 'take over light clients' then 'take over appliances' then 'take over mobile devices'. well, it hasnt really taken over anything yet, despite over a decade of hype. it keeps getting forced into ever smaller niches. the fragmentation of java into mobile/enterprise/etc shows theyre just now coming to grips with the fundamental problems of java that they've been denying for so long.

    31. Re:Pardon me while I roll my eyes by Decaff · · Score: 1

      Which means nothing for web servers. Unless you recommend running J2ME on a web server?

      It means that there is nothing intrinsically bulky about Java programs. Java code can be very effectively shared between requests and threads.

      still, a few 100k is a _lot_, many embedded devices have only a few kb.

      And how does that relate to web servers? I suppose you must be referring to low memory devices like those that match the JavaCard specification - which deals with apps running in just a few kb of memory on smartcards. Java is specifically being used in mobile and embedded situations because it's bytecode is more compact than many native instruction sets.

      java's niche keeps shrinking. first it was 'take over the world' then 'take over the desktop' then 'take over light clients' then 'take over appliances' then 'take over mobile devices'. well, it hasnt really taken over anything yet, despite over a decade of hype. it keeps getting forced into ever smaller niches. the fragmentation of java into mobile/enterprise/etc shows ....

      This has to be one of the most distorted readings of the IT market I have ever read.

      Java is dominant and growing in the server market. It is the de-facto standard for server-side development (which means more than just scripting web pages!). If you don't believe me, just check the job openings for different languages. It is now the de-facto standard for mobile device development (it isn't easy to find a mobile phone that doesn't run it).

      Java is expanding into new areas all the time. In the past couple of years it has started to become widely used in real-time control, aviation etc: Boeing gave a major presentation of Java-based robotic aircraft technology a few months ago. It is also now widely used in the automotive industry. If you drive a new BMW it is likely that you are using Java.

      Java hasn't fragmented into mobile/standard/enterprise at all. There are only two divisions: standard and mobile. Mobile is simply a reduced VM + libraries for very low memory environments. The only difference between standard and enterprise is the libraries you include. That is all.

      theyre just now coming to grips with the fundamental problems of java that they've been denying for so long.

      No. It is exactly the opposite. They have been working at removing problems that Java has had in the past, giving it reducted, size, hugely improved performance, reliable multi-threading, and garbage collection mechanisms which are controllable enough for highly-reliable real-time work.

    32. Re:Pardon me while I roll my eyes by fimbulvetr · · Score: 1

      Pardon me, I should have said "isn't too hard to install". It's not easy, but it's no SASL either. I mean, Oracle has sucky documentation, SASL has misleading (at best) documentation:)
      In short, I'm with ya.

    33. Re:Pardon me while I roll my eyes by OpenServe · · Score: 1

      Go look at PEAR and the PHP manual index and then tell people PHP doesn't have a platform offering all those.

      I do both PHP and Java development. Neither PEAR nor built-in PHP functions are a valid comparison to the extensibility of Java. Java itself gives developers a stable (if utilitarian) base and a standard namespace upon which can be cleanly extended as far as needed. PHP has no namespace and its base is slightly re-defined with every major release. PHP has its roots as a procedural scripting language for CGI. Java has its roots as an Object Oriented managed-bytecode general purpose language. They were intended to serve completely different purposes and it is a disservice to the programming world to cast them as equals. PHP is great for the public web, where rapid development and low barrier to entry outweighs other factors. Java is the best tool for the job when more formality is needed, such as complex business applications. Java can also do things that PHP simply cannot, by limitations of PHP's architecture. Perhaps most importantly, Java can fork off threads to do background tasks which are not related to HTTP requests. While this capability is nearly useless on the public web, it is an absolute requirement for most types of business applications.

      The realist will note that PHP and Java are both popular in the areas where they are currently the best tool for the job. PHP has a large selection of software and tools useful for working with the public web. Java has a large selection of software, tools and frameworks useful for creating business, scientific, and otherwise data-intensive software. Of course, there is an increasing amount of overlap, mostly on the Java side. Java is becoming simpler to develop for and is gaining more agility in the light-weight arenas. For PHP to overlap into traditional Java territory, it will need a significant overhaul of its architecture. I don't see any evidence of this happening in the near future, though I suppose it can't be ruled out.

    34. Re:Pardon me while I roll my eyes by tyldis · · Score: 1

      Oracle has sucky documentation?
      Not to get horribly off topic, but: http://www.oracle.com/technology/documentation/dat abase10gr2.html
      I think it said something like 5000 pages when I sent the printjob to my boss' printer (Hey, he refused me the 2-day DBA!).

    35. Re:Pardon me while I roll my eyes by fimbulvetr · · Score: 1

      Heh. Well, if the size of the documentation had anything to do with the quality, well, things would be a lot better. Just wait until you find all the undocumented things they're so famous for. If you're just beginning, you'll see what I mean.

  12. Caching by Anonymous Coward · · Score: 2, Interesting

    In asp and asp net there are extensive facilities to cache in to memory.

    I don't know much Php but as far as I can tell there is no way to do this natively. This is one of the reasons I don't use php. You see site like groklaw get overloaded when Slashdot hits them because they pull the freaking article out of the database every time it's requested.

    If somebody could show me some in process caching that'd take me a long way to ditching php. I don't mean caching to disk either. Caching to disk is much slower than memory.

    Ideas?

    AC.

    1. Re:Caching by I+confirm+I'm+not+a · · Score: 1

      In asp and asp net there are extensive facilities to cache in to memory.

      I don't know much Php but as far as I can tell there is no way to do this natively.

      (Long-time ASP/VBScript coder, recently started using PHP) Are you talking about ASP's session and application objects? If so, PHP has an equivalent to ASP's session object at least: $_SESSION. It looks to me like $GLOBALS may be an equivalent to ASP's application object, but I've not had an opportunity to try it yet.

      Incidentally, my first impressions of PHP are that it offers a great deal more than ASP, though if I was using it for any length of time I'd want to check out templating: PHP mixed with HTML makes ASP mixed with HTML look beautiful!

      --
      This is where the serious fun begins.
    2. Re:Caching by fireproof · · Score: 1

      (Long-time ASP/VBScript coder, recently started using PHP) Are you talking about ASP's session and application objects? If so, PHP has an equivalent to ASP's session object at least: $_SESSION. It looks to me like $GLOBALS may be an equivalent to ASP's application object, but I've not had an opportunity to try it yet.

      No, PHP's session vars aren't the same thing as caching in memory. Ultimately, the data you write to $_SESSION gets written to disk, and then is retrieved again next time a script using sessions is called.

      Incidentally, my first impressions of PHP are that it offers a great deal more than ASP, though if I was using it for any length of time I'd want to check out templating: PHP mixed with HTML makes ASP mixed with HTML look beautiful!

      I did some ASP coding about 5 years ago, and started with PHP 4 years ago. I know at that point PHP seemed to offer much more 'out of the box'. Overall, I find it much easier to work with than ASP. Of course, I haven't tried any of the new ASP.NET stuff, so it might be better now.

      --

      /* "A fool does not delight in understanding, but only in revealing his own mind." */

    3. Re:Caching by bigtrike · · Score: 1

      Why not just enable mod_cache in Apache or put your webserver behind a machine running squid?

    4. Re:Caching by I+confirm+I'm+not+a · · Score: 1

      No, PHP's session vars aren't the same thing as caching in memory. Ultimately, the data you write to $_SESSION gets written to disk, and then is retrieved again next time a script using sessions is called.

      Ah, fair enough. I take it ASP's sessions *are* cached, or am I not understanding the original question? (I've never really poked behind the scenes with ASP)

      --
      This is where the serious fun begins.
    5. Re:Caching by Anonymous Coward · · Score: 0

      A lot of PHP coders give PHP a bad name.
      They are the silly people who write code like /a>, don't validate there code, or put '@' infront of the required and includes.
      Natually since they don't know how any real code works, security, etc, they toss in a $site = mysql->querry(date); instead of cacheing it away with the "memcache" set of commands. Oh well. And yes, that's right you can cache in php.

    6. Re:Caching by Anonymous Coward · · Score: 0

      Try memcached: http://www.danga.com/memcached/ and php-mcache http://www.klir.com/~johnm/php-mcache/

      memcached is a lightweight, fast distributed cache which gets communicated with over TCP. php-mcache is a c extensions for php which allows you to interface with it. There is some overhead to talking over TCP instead of in process, but the benifit is that you can move the cache to a seperate server or cluster of servers, keeping the cache in process only scales so far.

    7. Re:Caching by kv9 · · Score: 1

      If somebody could show me some in process caching that'd take me a long way to ditching php. I don't mean caching to disk either. Caching to disk is much slower than memory. Ideas?

      idea.
  13. Re:Java failed because it's a slow toy. by Piersky · · Score: 2, Insightful

    No, I agree. PHP is just a scripting language. Would you use C/C++ on a website? I wouldn't

  14. Both have strengths and weaknesses by Anonymous Coward · · Score: 4, Insightful

    I've done programming in PHP and in Java.

    PHP is straightforward and easy, and most distributions have their own packages for it. Whereas with Java, the initial set up is overwhelming for beginners.

    I learnt PHP years ago by myself, and it wasn't really that hard. Yet a few months ago when I was finally required to learn Java, the complexity of the Java frameworks (Hibernate, Spring, etc) tortured me for days before I actually knew what was going on. And it doesn't help when all the frameworks gives such a "bulky" feeling.

    The learning curve of Java is definitely much higher than PHP.

    Of course, I do agree that Java is much better suited for large scale web programming than PHP. It's much easier to do things cleanly in Java, and although PHP's loose typing is great for a simple 1 page script, I'd rather have the strict typing of Java when it comes to large scale projects.

  15. Imposter Boy Speaks by Anonymous Coward · · Score: 0, Informative

    Everything you need to know is in this article

    Netscape always controlled the media when it came to the story about how the browser was first built. This is the only article that I've ever seen that actually went back to the place where it was created to find out the real story.

    History is written by the victors.... Even if that "history" isn't true.

  16. Till next year by spikexyz · · Score: 1

    then it'll be something else.

  17. Re:Ajax? by DigitumDei · · Score: 1

    AJAX is not a language, it is a collection of languages and technologies that allow for desktop application like qualities on your browser. PHP often is the back end of an AJAX application.

  18. Cliche Elitist Reply by sethadam1 · · Score: 1, Funny

    To save everyone the time and trouble, let's cover it here:

    * PHP sucks.
    * PHP is for n00bs.
    * PHP is usually poorly written.
    * PHP is a scripting language and you can't do anything but write web pages with it.
    * PHP sucks because the function names are inconsistent.
    * PHP is slow.
    * PHP isn't capable of working in a real enterprise.
    * Real coders use Perl.
    * PHP doesn't scale.

    Does that about cover it?

    1. Re:Cliche Elitist Reply by broggyr · · Score: 1

      Everyone is a n00b at one point... Look at me for example LOL

      --
      Irony? Yea, it's like goldy and bronzy, only it's made of iron!
    2. Re:Cliche Elitist Reply by shodson · · Score: 0, Flamebait

      * Real coders use Perl.

      Uh, I was listening until you dropped that unintelligable bomb on us all.

    3. Re:Cliche Elitist Reply by Anonymous Coward · · Score: 0

      You missed one: an inexcusably bad security track record.

    4. Re:Cliche Elitist Reply by Karaman · · Score: 1

      Why dont you learn PHP and get a job :)

      --
      sex is better than war!
    5. Re:Cliche Elitist Reply by sethadam1 · · Score: 1

      It's supposed to be a "CLICHE" elitist reply. I maintain a CMS written in PHP. All of is is sarcastic.

    6. Re:Cliche Elitist Reply by Walrus99 · · Score: 0

      "Real coders use Perl." Yes, Perl is easier to read. I'll say it again, Perl is easier to read. With Perl the computation is done seperatly and then the HTML is printed back to the browser. I find this a lot easier to deal with then having loops, etc. inside HTML. Also, as someone else pointed out, Perl is more secure.

      Having said that, it boils down to a question of wether you want the code in the HTML or the HTML in the code. You say tomato and I say to-ma-to ... (an old song for you young folks.)

    7. Re:Cliche Elitist Reply by TheSpoom · · Score: 3, Insightful

      And because I'm bored and I like PHP, my reply to all of the above:

      * PHP sucks.

      PHP has functions for practically anything you can imagine. Of course, I'll get into why it doesn't suck in the replies below, as this is a bit too general.

      * PHP is for n00bs.

      PHP is for developers who want to get something done quickly. The syntax is very easy to learn, and variables are loosely typed, but in my experience this doesn't mean that the language is flawed; it means that one can code up something without having to worry about unnecessary things like pointers, variable conversion and the like. And to be honest, in website scripting I've never come across a need for more advanced syntax than PHP provides in my five or more years of using it.

      * PHP is usually poorly written.

      This, unfortunately, is usually true. Because PHP is easy to use, it is often used by people who don't want to worry about writing good code either. But like everything else, there are varying grades of professionalism. PHP *can* be written well, it's just a case of taking the time to do so.

      * PHP is a scripting language and you can't do anything but write web pages with it.

      Scripting language, yes. But it most certainly can be used for things other than websites.

      * PHP sucks because the function names are inconsistent.

      True, but this is why one has a manual. I've never been all that concerned about it.

      * PHP is slow.

      Actually, it's really not. Take a look at this comparison between different CGI modules for Apache: PHP actually outdoes Perl here.

      * PHP isn't capable of working in a real enterprise.

      I haven't had experience with integrating PHP into an "enterprise" situation personally, but I'll refer you to Zend's Enterprise PHP page for various reasons why PHP is indeed ready for the enterprise.

      * Real coders use Perl.

      Real coders use the tool that best fits the problem.

      * PHP doesn't scale.

      Now THIS is something I can definitely refute. I work for a company that creates mods for a PHP / Smarty-based online shopping cart known as X-Cart and I can tell you, PHP scales wonderfully, otherwise stores wouldn't use it as a base of their business operations. X-Cart is on the order of hundreds of thousands of lines of PHP code, and very commonly has tens of thousands of customers accessing it concurrently.

      And yeah, I know you were joking, but hey, I was bored. ;^)

      --
      It's better to vote for what you want and not get it than to vote for what you don't want and get it.
      - E. Debs
    8. Re:Cliche Elitist Reply by masklinn · · Score: 1

      Nope, you forgot that PHP still has no namespaces, that PHP is not modular, that PHP5's objects blow, that PHP is weakly typed (please don't mix that with the fact that it's also dynamically typed which I'd consider a good thing), that PHP has braces and that PHP's syntax is pretty ugly.

      --
      "The way we can tell it's C# instead of Haskell is because it's nine lines instead of two." -- wadler
    9. Re:Cliche Elitist Reply by maxwell+demon · · Score: 1
      * Real coders use Perl.

      I thought real programmers used FORTRAN?
      --
      The Tao of math: The numbers you can count are not the real numbers.
    10. Re:Cliche Elitist Reply by leonia · · Score: 1

      http://mice.cs.columbia.edu/getTechreport.php?tech reportID=363&format=pdf provides additional performance data that indicates that PHP is a pretty reasonable choice from a performance perspective, even without the Zend engine.

    11. Re:Cliche Elitist Reply by FrangoAssado · · Score: 1

      > * PHP is slow.

      Actually, it's really not. Take a look at this comparison between different CGI modules for Apache: PHP actually outdoes Perl here.

      You should read the text of your own link instead of only watching the pictures. The results are (according to your link): FastCGI (1st), mod_perl (2nd), PHP (3rd).

      [...]

      > * PHP doesn't scale.

      Now THIS is something I can definitely refute. [...]

      From the conclusions of the same benchmark you linked:

      The results of PHP were not what we expected. Being exposed to the hype that rules on the Internet about PHP, we expected it to be at least at the second place. It did not scale well (see BENCH4) and exhausted system processing power when it run, leaving it unusable. [...]

    12. Re:Cliche Elitist Reply by Thuktun · · Score: 1

      PHP is usually poorly written.

      Since 90% of everything is crap, this probably can be said of most other languages, too.

    13. Re:Cliche Elitist Reply by kill-1 · · Score: 1
      Real coders use Perl.
      Real coders use the tool that best fits the problem.

      But for web development "tools" like Perl, Python or Ruby fit the problem much better than PHP.

    14. Re:Cliche Elitist Reply by flibuste · · Score: 1

      PHP isn't capable of working in a real enterprise.

      I haven't had experience with integrating PHP into an "enterprise" situation personally, but I'll refer you to Zend's Enterprise PHP page for various reasons why PHP is indeed ready for the enterprise.

      That's exactly the point that is missing in the FA and the F posts here. PHP is not usable in a average-size company. I have been in a lot of enterprise IT projects (last 10 years, mind you), many being interfaced with a web front-end. I have never been in a meeting where PHP was even considered an option, and never seen any PHP page there. There is no room for PHP in a company that has mixed plateforms, transactional web sites, various security providers and such. PHP is just not suitable. Java is geared toward ease of integration, J2EE is oriented toward enterprise services. PHP just cannot beat that, unless you have millions to throw out the window in an IT project, and have your next job waiting for you. Having said that, yes you can knock up things with PHP rapidly. But those things stay at home. So how any good is this?
    15. Re:Cliche Elitist Reply by jcoleman · · Score: 1
      I haven't had experience with integrating PHP into an "enterprise" situation personally, but I'll refer you to Zend's Enterprise PHP page for various reasons why PHP is indeed ready for the enterprise.

      The link you provided took over a minute to load. Any enterprise that relies on PHP for its enterprise solution is a doomed enterprise, at least IT-wise.

    16. Re:Cliche Elitist Reply by shobadobs · · Score: 1

      Real programmers use Perl to write FORTRAN.

    17. Re:Cliche Elitist Reply by NoMaster · · Score: 1
      * PHP is a scripting language and you can't do anything but write web pages with it.

      Scripting language, yes. But it most certainly can [php.net] be used for things other than websites.
      I once started to write a HTPC front-end using the PHP CLI - reading data from an IR receiver on a serial port via serproxy, writing directly to the IE DOM (via COM/DCOM) to build on-screen menus, and controlling Media Player Classic via its built-in HTTP server.

      I will admit that I, someone who is most definitely not a programmer, eventually became so disgusted by the number of really nasty hacks I was implementing that actually worked that I gave it up in despair at the monster I'd created...

      --
      What part of "a well regulated militia" do you not understand?
    18. Re:Cliche Elitist Reply by TheSpoom · · Score: 1

      It sounds like what you created was a hack in the first place so I'm not surprised... :^P

      --
      It's better to vote for what you want and not get it than to vote for what you don't want and get it.
      - E. Debs
  19. Marc Andreessen is on Zend's Board of Directors by ChrisRijk · · Score: 5, Informative
    http://www.zend.com/news/zendpr.php?id=107
    Zend Technologies, Inc., the PHP company and creator of products and services supporting the development, deployment and management of PHP-based applications, today announced Marc Andreessen and Gaurav Dhillon as the newest members of the Zend board of directors.


    Little "full disclosure" for everyone.

    PS There's more to Java on webservers than J2EE. There's also multiple Open Source versions of J2EE.
    1. Re:Marc Andreessen is on Zend's Board of Directors by jiushao · · Score: 1
      Haha, good stuff. So then the title should read "Zend executive announces Java dead and replaced with Zend PHP".

      Good to hear though since this just seemed a bit too silly to be true. Sure PHP is a way easier way to get the typical website up and running, but the Java stack of libraries and tools is incredibly much more comprehensive. Sure this means that PHP is an excellent pick for 90% of all web applications in the world, whereas Java shoots for the full 100% but is more difficult to deal with. This is even just dealing with J2EE, as the parent states there is an incredible amount of very specialized functionality available for Java.

      Summary: We are better off with both PHP and Java (I use both), but PHP replacing Java across the board is less likely than Java replacing PHP.

    2. Re:Marc Andreessen is on Zend's Board of Directors by duncangough · · Score: 2, Informative

      Beat me to it, of course he's going to say that PHP is catching up on Java in the enterprise since that's where they want to take it and that's where the next pot of gold is.

      Sadly, PHP has hit a brick wall recently. There are backward compatibilty problems with PHP4 (not helped by the developers telling the community to stfu, noobs), PHP5 is not being picked up at any rate of knots and now people are look to PHP6 to fix all their problems. Ruby looks better by the day, to be honest.

      --
      Millionsofgames!

    3. Re:Marc Andreessen is on Zend's Board of Directors by Augusto · · Score: 1

      Good info, didn't know about all the compatibility problems.

      I'm from mostly a Java background and was trying to decide if I should play a bit with Ruby or PHP, but Ruby on Rails looks more interesting to me at this time.

      Still wouldn't mind doing some PHP projects of course ...

      --

      - sigs are for wimps.
    4. Re:Marc Andreessen is on Zend's Board of Directors by masklinn · · Score: 2, Informative

      Either Ruby (and RoR) or Python (and Django, Zope, the terrific TurboGears or any other framework) would probably be much more interresting and enjoyable.

      Do remember, though, that none of them are Java, you have to forget the Java way and "get" the philosophy of those languages or you'll end up frustrated with very slow apps and bloated code.

      --
      "The way we can tell it's C# instead of Haskell is because it's nine lines instead of two." -- wadler
    5. Re:Marc Andreessen is on Zend's Board of Directors by Decaff · · Score: 1

      I'm from mostly a Java background and was trying to decide if I should play a bit with Ruby or PHP, but Ruby on Rails looks more interesting to me at this time.

      It is interesting, but takes shortcuts that can lead potentially to future problems. For example, with Rails you define your data model in the actual database. This is fine until you find your client wants another database or major changes to the schema. Dealing with this using Rails can be done, but it can be awkward. Java has libraries and APIs like Hibernate, JDO 2.0 and EJB 3.0 that allow you to define your data model as Java classes (far easier to keep track of) and easily write code that does not care what database you are on. Sounds like a better and safer way to develop to me.

    6. Re:Marc Andreessen is on Zend's Board of Directors by Anonymous Coward · · Score: 1, Insightful

      Something that many people do not seem to realize is that every website running ColdFusion is using Java. There are an awful lot of those out there.

  20. lingo... overload by jkind · · Score: 2, Interesting

    Is it just me, or is anyone else having "framework" and "standards" overload?
    Seems like every post mentions some form of standards or framework, and everyone wants to standardize everything within a framework. Or perhaps make a framework which will help standardize everything. I can't stop saying standards framework.......standards framework..... I miss the old days when "ware" was the hot term.. webware..awareware..opencourseware..cookware..
    On topic.. Php is just so much more fun then Java... (except when you're first loading it into Apache for Win and Apache just tells you "failed").. And I visit phpclasses.org almost daily, just because there is lots of cool stuff there to try and play with. Kind of like javaboutique, but not as stale..

    I do think it is an exaggeration to say Java is failing.. Although C#/.NET seems to peck away at the domination every quarter.. Way off topic: Does anyone have a website which lists the "top skills" as listed in job postings online? I used to visit such a site for jobs in the UK but can't find it anymore, and doing a search on google for "top skills job postings C# Java" is a fruitless endeavour.

    --
    ~jennifer.k~
    1. Re:lingo... overload by maxwell+demon · · Score: 1
      Is it just me, or is anyone else having "framework" and "standards" overload?

      Don't you see the importance of a standardization of buzzwords in a common hype framework?
      --
      The Tao of math: The numbers you can count are not the real numbers.
    2. Re:lingo... overload by Anonymous Coward · · Score: 0
    3. Re:lingo... overload by Senzei · · Score: 1
      Don't you see the importance of a standardization of buzzwords in a common hype framework?

      synergy?

      --
      Slashdot: Where anecdotes and generalizations can be freely substituted for facts, logic, or intelligence
  21. How long until the obligatory... by Ron+Harwood · · Score: 0, Redundant

    ...Ruby on Rails comments start coming out?

    Happens during every PHP story...

    1. Re:How long until the obligatory... by Viper+Daimao · · Score: 1
      --
      "In the game of life, someone always has to lose. To me, if life were fair, that someone would always be Oklahoma." -DKR
    2. Re:How long until the obligatory... by Anonymous Coward · · Score: 0


      http://www.jobstats.co.uk/

      gives trends in the UK job sector

  22. Here we go... by Naikrovek · · Score: 2, Insightful

    PHP just isn't on the same standard in my eyes as Java or C#. Doesn't PHP have something like 3,000 built-in functions? That is not a sign of a well designed language.

    J2EE has a very well-respected place in larger organizations. The support is fantastic, the tools are fantastic, and the language is actually very nice, once you truly get to know it.

    I used to think that Java was slow and useless, but when I actually started writing a lot of it, I found that its really not as bad as everyone told me it would be. Java is becoming the new COBOL as far as business acceptance goes, its everywhere that it needs to be, from what I've seen.

    PHP is good for its own uses as well. I started programming in PHP, and I've written dozens of website backends in PHP, but the Java families (and other OO languages like C++ or C#) are just more elegant for the larger projects, web-based and otherwise.

    I wish PHP and PHP programmers the best. Go, spread to anyone you can, but stay away from me. I've found a new girlfriend, and her name is Object Orientation.

    1. Re:Here we go... by LiquidCoooled · · Score: 1

      Java isn't available on most web servers is it?

      PHP has built in functions just like java/c# has the built in libraries.

      Having many functions shows its been used for a lot of things.

      --
      liqbase :: faster than paper
    2. Re:Here we go... by geoffspear · · Score: 1

      Yes, it's quite a shame that you can't do object oriented programming in PHP.

      --
      Don't blame me; I'm never given mod points.
    3. Re:Here we go... by Crayon+Kid · · Score: 1

      [..]Java is becoming the new COBOL[..]

      Oh you really made the case for Java here... "You don't like Java? How can you? It's the new COBOL! Everybody's loving it!"

      --
      i ate crayons when i was a kid and now i have two braincells and the blue ones taste nicer
    4. Re:Here we go... by Anonymous Coward · · Score: 0

      I've found a new girlfriend, and her name is Object Orientation.

      have you taken a look at PHP 5?

    5. Re:Here we go... by Anonymous Coward · · Score: 2, Interesting

      PHP just isn't on the same standard in my eyes as Java or C#. Doesn't PHP have something like 3,000 built-in functions? That is not a sign of a well designed language.

      Doesn't Java have like 5,000 built-in classes, let alone functions? And then the web page support adds on more classes and more functions. This is not the sign of a well designed language...

      (And, yes, they are the same things. Most of those "3,000 built in functions" are actually libraries. You can strip them out if you really wanted to. I have no idea how you'd strip out the massive Java library bloat, though. Probably why Java's runtime comes in at like 400MB (410 MB on my machine, but that includes the docs), while PHP boasts a slightly trimmer and more functional 20MB or so runtime.)

    6. Re:Here we go... by masklinn · · Score: 1

      Yes. It blows. Badly.

      --
      "The way we can tell it's C# instead of Haskell is because it's nine lines instead of two." -- wadler
    7. Re:Here we go... by the+eric+conspiracy · · Score: 1

      Doesn't Java have like 5,000 built-in classes

      More like 3000. And it covers a vastly wider range of applications - 2D and 3D graphics APIs, a couple of GUI frameworks, XML binding frameworks etc. PHP sure looks both weak-assed and crufty.

  23. I have to say it.... by Capt+James+McCarthy · · Score: 1

    Call me OT if you want, but everytime PHP is discussed, I have to say that it a wonderful language. That's it. Anyone who uses the gui web development tools are missing out on the beauty (and horror) that can be created in PHP. It should be considered a major language milestone for development IMHO.

    --
    There are no loopholes. It's either legal or it's not.
  24. PHP, or Ruby? by tcopeland · · Score: 2, Insightful

    Seems like Ruby on Rails is competing for web apps too - lots of comparisons are floating around out there. Some large sites are converting over, too, like Derek Siver's "CD Baby" - he blogged on the conversion here.

    I've certainly found Rails to be a good fit with interfacing with a Jabber PostgreSQL backend. Good times!

    1. Re:PHP, or Ruby? by MacJedi · · Score: 1
      --
      2^5
    2. Re:PHP, or Ruby? by Anonymous Coward · · Score: 0

      For the "lets try and emulate and fail Rails" PHP version?

    3. Re:PHP, or Ruby? by Anonymous Coward · · Score: 0

      sorry, but any php based solution will not have the plain elegance of rails, just by virtue of using php over ruby..

    4. Re:PHP, or Ruby? by MacJedi · · Score: 1

      Even if we assume that the language bigotry you are espousing is entirely true, I'd argue that using "ruby-on-rails design principles" can make it possible to develop php apps more quickly and easily without having to relearn a language or hire different developers and that is a Good Thing.

      --
      2^5
  25. Apples and Oranges? by Dekortage · · Score: 3, Insightful

    I work with PHP and Java (and JSP and XML and enough other acroynms to choke a hippo). Andressen's comments seem so clearly aimed at server-side Java. PHP doesn't do client side, though there are projects underway like GTK and WinBinder. But still... Java was supposed to kill C, and it didn't. PHP won't kill Java either.

    --
    $nice = $webHosting + $domainNames + $sslCerts
  26. Re:Ajax? by C0deJunkie · · Score: 1

    No, you are not so OT, since the use of AJAX on the client side, with a backend made of a bunch of robust J2EE web services is actually driving the new "web architecture" paradigm.
    This, of course, applies since PHP (and also many other "scripting languages") is actually not "three" or "n-tier-oriented".

  27. Isn't it a bit late? by Anonymous Coward · · Score: 0

    Between the PHP Eclipse plugin which is a nice IDE (but not a full framework), and Ruby on Rails (which is no IDE, but a very nice framework), isn't Zend just beginning to realize that it could have pushed PHP way further by starting such an initiative sooner? (we have been craving for a framework, and a decent IDE for years).

  28. Bitter by cparisi · · Score: 2, Interesting

    Andreessen sounds bitter about Java and Sun in general. Maybe he attributes Netscape's ultimate "failure" with their misplaced focus on creating a browser written in Java. Netscape placed a lot of faith and resources in Java and perhaps he feels betrayed or disillusioned. Anyway, I agree that PHP is better (or at least easier to use) than Java for some things. But it is not a replacement for Java.

    1. Re:Bitter by deanj · · Score: 1

      Netscape never wrote a browser in Java. They did deploy perhaps the most poorly implemented version of Java FOR a browser...well, ever.

      I mean, HotJava (the all-Java browser that Sun wrote) ran applets more quickly that Netscape ever did.

      Besides, as someone pointed out, marca sits on the board of Zend... Not exactly unbiased on this whole topic.

    2. Re:Bitter by msuzio · · Score: 1

      Actually, they did pursue a strategy to write a mail/news client for Netscape Communicator in Java:

      http://wiki.mozilla.org/Grendel

    3. Re:Bitter by cparisi · · Score: 1

      You are correct that they did not deliver a Java version of Netscape client (Navigator). But they supposedly tried.

      http://www.sun.com/smi/Press/sunflash/1997-08/sunf lash.970826.4.html

      I am not sure if the HTML component in the JDK is from Netscape or not, but I do know that it is really lame.

    4. Re:Bitter by cparisi · · Score: 1
  29. PHP wins - it's economics by CousinLarry · · Score: 3, Insightful

    Yes, both PHP and Java are free - i'm not talking about the monetary cost of either platform.

    I'm talking about the network effects of PHP being available on every shared host in the world.

    Try to find a cheap, reliable tomcat hosting service. Then throw a dart at a google search for "web hosting." You'll find that outside of enterprise, PHP is the lingua franca.

    So if you're a poor student or struggling entrepreneur looking to make an experiment or prototype, you will naturally gravitate toward PHP (same argument works for mySQL/postgre v the world). And guess who will populate the next gen of enterprise?

    1. Re:PHP wins - it's economics by orasio · · Score: 2, Insightful

      I was a student in 1996, and I learned ASP for a specific project. Some time later, I found PHP, and liked it. I did some stuff with PHP. I really admire Rasmus, I met him when he came to Uruguay, and he is great. I believe PHP is a great idea, and works great.

      But now I use Java, because I think it's much easier to work with, when you have teams of more than two people. PHP gives you too much freedom to be easily managed. It's nice for experimenting, for stuff you want to see right away, for complex stuff you don't have to maintain for others, too.
      I like better the ability to have interfaces, standards, Struts, lots of things that make Java better for developer teams.

      The same that the guys who start right now with PHP, they might or might not change.

    2. Re:PHP wins - it's economics by Hrvat · · Score: 1

      Hate to break it to you but many, MANY, Java developers know languages other than Java, PHP being one of them (shock! surprise!) I made prototypes in both PHP and Java (it's easy to download Tomcat and Struts and Eclipse) I actually gravitate toward Java when building prototypes but use PHP on my personal site because I am too lazy to set up my own hosted server to run my Java code.

      --
      TANSTAAFL
    3. Re:PHP wins - it's economics by CousinLarry · · Score: 1

      I like better the ability to have interfaces, standards, Struts, lots of things that make Java better for developer teams.

      interfaces (i assume you mean the OO type) : http://www.zend.com/php5/articles/engine2-php5-cha nges.php

      Struts = Smarty: http://smarty.php.net/ (and this is about 100 times easier to configure and deploy than Struts)

    4. Re:PHP wins - it's economics by thomas.galvin · · Score: 1

      Try to find a cheap, reliable tomcat hosting service. Then throw a dart at a google search for "web hosting." You'll find that outside of enterprise, PHP is the lingua franca.

      I can get a linux-based server with PHP and Tomcat for about $10 a month. I use PHP for most stuff; some very simple page generation, things where Server Side Includes don't quite cut it, and the like. When I need to do some heavy lifting, though, I drop a WAR file on the server.

      So if you're a poor student or struggling entrepreneur looking to make an experiment or prototype, you will naturally gravitate toward PHP (same argument works for mySQL/postgre v the world). And guess who will populate the next gen of enterprise?

      Tomcat and JBoss can both be dowloaded for free, just like PHP. Drop them on your linux box at home, grab some caffine, and go at it.

      Again, I use PHP and MySQL for the "quick and dirty." I threw a surprise birthday party for a friend a month or so ago, and had people sign up on my web site. It was a quick 20 minute PHP-MySQL app. It was also throw-away code; no modularization, no resure planned or needed.

      On the other hand, I'm currently writing some software that will let an organization manage conferences: multi-week registrations, multiple options to choose from, varying price structures, seating charts, etc, etc. I'm writing this one in Java, and using the Derby embedded database. Why? Well, quite honestly, it's largly because I think in Java, and the "correct" solution comes more naturally to me.

      There are other benifits, though. For instance, I am developing "desktop" and "web" versions simultaniously; I could get the database code working correctly, without wondering if the errors I was seeing were from bugs in my code, problems with sever configuration, etc. Now that I'm putting a front-end onto it, I can concentrate only on the HTTP stuff, and, later, on the Swing stuff.

      This kind of modularization is possible with PHP, but you need to do a lot more planning to make it happen. With Java, at least in my experience, this kind of design is just more natural.

    5. Re:PHP wins - it's economics by orasio · · Score: 1

      Struts does not equal Smarty.
      Maybe Struts + Velocity might do a similar job than Smarty.
      And Java is not that difficult. In my case, I have less trouble with Java than PHP. I work with different distributions, and PHP libs are not trivially deployed, although it's not too hard.
      Because I know some Java, it's much easier for me to install Java stuff than PHP stuff.
      I understand that PHP might have lots of features I like in Java, but I happen to like the fact that Java _forces_ you to have some structure.
      People like different things. I like Java, because I know what to expect from my teammates work, regardless of individual genius. Java I can always fix. PHP has lots of potential to be harder.

      Anyway, that wasn't even my point. I was just saying that the stuff about kids learning PHP and then using it in the enterprise is now necessarily true, because I have a different experience.
      Of course, you can use any language to program, but people have different taste and expectations towards languages. I liked Pascal myself, and hated C. Lots of people thought otherwise. In the end, I believe it's a matter of taste.

    6. Re:PHP wins - it's economics by bani · · Score: 1

      php is perfectly adequate for 99% of peoples needs. that 1% who dont have their needs fulfulled by php will use java. the postgresql people who whine about mysql market share are the same: they resolutely insist everyone needs that last 1%, even if they don't. in reality mysql is perfectly adequate for 99%.

    7. Re:PHP wins - it's economics by jadavis · · Score: 1

      For web projects, I usually use PHP. However, I've been interested in another platform for a while, because I sometimes get annoyed by PHP.

      How was the move to Java for you? Anything that bothered you or slowed you down? How about Tomcat, did that work well for the most part?

      I happen to have a Tomcat book and a Struts book right next to me, so this is an interesting thread to read.

      --
      Social scientists are inspired by theories; scientists are humbled by facts.
  30. PHP Succeeds Because It's Not Overkill by sbma44 · · Score: 3, Insightful

    I primarily work in ASP.NET, and have done some work with JSP. Those are nice environments (well... ASP.NET is, anyway) -- but for many, many things, they're overkill. A robust OO model is nice for making programmers feel comfortable, but until recently the web has been an inherently procedural undertaking. ASP.NET and AJAX are putting an end to this, but the underlying technology remains stateless.

    PHP is procedurally oriented, works well, and -- most important -- is free. I can't convince my boss to touch it, of course, but if some names get behind it, it might become a much easier sell.

    1. Re:PHP Succeeds Because It's Not Overkill by Fahrvergnuugen · · Score: 1

      Don't ask for permission. Solve a complex problem quickly and then when he asks how you did it, tell him you used PHP (worked for me).

      --
      Kiteboarding Gear Mention slashdot and get 10% off!
    2. Re:PHP Succeeds Because It's Not Overkill by shutdown+-p+now · · Score: 1
      A robust OO model is nice for making programmers feel comfortable, but until recently the web has been an inherently procedural undertaking.
      There's nothing inherently procedural about web applications. On the contrary, MVC fits them quite naturally, and then object-oriented decoupling follows seamlessly. See Rails for a good modern example, but such things have been done for ages. I did it myself in PHP more than once.
    3. Re:PHP Succeeds Because It's Not Overkill by sbma44 · · Score: 1

      Perhaps not web applications -- but apps are made of pages, and pages are procedural. That's all I'm saying. For many simple apps, there's no need for a complex object model. When you get down to it, web programming is about reading and writing strings.

      And yes, I'm aware of PHP's potential for OO (I've done a little work with Drupal, for example), and as I mentioned, work in an OO webdev environment professionally. When I write my own one-off personal apps, though, I rarely bother setting up classes. Sometimes the overhead involved in doing something the Right Way isn't justified. PHP is capable of conforming to the Right Way -- but it's in other situations where it shines.

    4. Re:PHP Succeeds Because It's Not Overkill by Anonymous Coward · · Score: 0

      People like you keep my paychecks coming. God bless consulting.

      While I understand time constraints, there is no other way but the right way. Do it right, the first time or you'll often be sorry later.

      It's akin to the dark side of the force...the quick and easy path for you fellow nerds.

    5. Re:PHP Succeeds Because It's Not Overkill by the_2nd_coming · · Score: 1

      and then your boss looks at it, says, "yeah that was fast but I told you to do it using {C#/VB.net/ActivePerl/IronPython/what-ever-else-as p.net-language}. Redo it by tonight.

      --



      I am the Alpha and the Omega-3
    6. Re:PHP Succeeds Because It's Not Overkill by shutdown+-p+now · · Score: 1
      Perhaps not web applications -- but apps are made of pages, and pages are procedural.
      Pages are no more procedural than a Swing dialog form with OK/Cancel. They are what you make out of them. And pages do fit MVC naturally - a page is nothing more than a view in that system, a controller is what processes an HTTP request, and the model is what handles DB access and business logic. Of course, MVC by no means has to be implemented in an object-oriented way, but it most commonly is.
    7. Re:PHP Succeeds Because It's Not Overkill by jnkt · · Score: 1

      Just how is >Ajax< putting an end to procedural development? Thought it was just way to update web pages ...

    8. Re:PHP Succeeds Because It's Not Overkill by killjoe · · Score: 1

      ASP.NET development in a nutshell:

      Slap a control on the form, write some code, hit debug button, wait for the application to compile and internet explorer to launch, log in to your application, navigate to the page you want to see, notice your mistake....

      Fix your code, hit the debug button, wait for your application to compile and internet explorer to launch, log in to your application, navigate to the page you want to test, (notice a mistake or desire a new behavior) repeat all over again.

      PHP development in a nutshell.

      Write HTML by hand, write code by hand, launch firefox, log in to your application, navigate to the page you want, notice a mistake...

      Change code (or html), hit the reload button, THERE IS NO STEP THREE!!!!!!.

      ASP.NET has got to be the most unproductive way to code web apps ever. Don't even get me started on what a bastard cludge of a language VB.NET is, orElse? andAlso? BAHAHAHAHAHAHAHAHAHA.

      --
      evil is as evil does
    9. Re:PHP Succeeds Because It's Not Overkill by deserttrail · · Score: 1

      PHP is how ASP used to be... Life was good then (except the VBScript part (and the crap spaghetti-code)) :-P

      I won't touch VB.NET with a ten foot pole, but one of the nice things about ASP.NET is that I don't have to (unless I'm working on someone else's pre-existing project).

      You don't have to use the debug button (I never do). Waiting for both compiles is a PITA, but you can save some time by opening any browser yourself and then just use the reload button.

      --
      Be civil to all; sociable to many; familiar with few; friend to one; enemy to none. --Benjamin Franklin
    10. Re:PHP Succeeds Because It's Not Overkill by NutscrapeSucks · · Score: 1

      And pages do fit MVC naturally - a page is nothing more than a view in that system, a controller is what processes an HTTP request, and the model is what handles DB access and business logic.

      Well the root problem with the web model and MVC is that the "page" is actually a mostly stateless request, but a MVC framework needs to maintain the state of the "view". Java designers tend to solve this problem simply by shoving all the page state into the server's session, which can dramatically reduce scalability. ASP.NET shoves everything into a hidden form field.

      Neither approach really deals with the web model of "page navigaiton" very well, because in both cases the Back/Forward buttons really don't work as expected.

      --
      Whenever I hear the word 'Innovation', I reach for my pistol.
    11. Re:PHP Succeeds Because It's Not Overkill by NutscrapeSucks · · Score: 1

      You know, you can write ASP.NET just like PHP (with no code-behind or build cycle). You just can't use Visual Studio to do it.

      --
      Whenever I hear the word 'Innovation', I reach for my pistol.
    12. Re:PHP Succeeds Because It's Not Overkill by shutdown+-p+now · · Score: 1

      Any web application is going to be stateful; it's not an MVC-specific requirement. I don't see how a procedural-oriented design would be any less state-dependant. And yes, it does break the Back/Forward buttons in many hideous ways - but there's really no fix to this as those buttons were not designed with stateful navigation (and thus, Web applications) in mind in the first place.

    13. Re:PHP Succeeds Because It's Not Overkill by sbma44 · · Score: 1

      I respect your suspicion at mentions of the buzzword of the moment. But AJAX helps you avoid the need to post back to the server, which in turn means it makes more sense to maintain the page's state on the client side. That makes OO much more applicable to web development: if objects persist, the OO model makes more sense. If you're recreating objects all the time, OO ends up being just a way of organizing functions and data, and doesn't really save you much effort.

      That's how it seems to me, anyway.

    14. Re:PHP Succeeds Because It's Not Overkill by sbma44 · · Score: 1

      VB.NET is ugly and horrible and deserves to die.

      But you're being too harsh on ASP.NET development. As others have noted, you don't need to use the debug button (and really shouldn't, unless you're *actually* debugging). You can just open a browser window, build and refresh. You don't have to compile PHP, it's true, but doing a build in C# is generally very fast.

      You're also glossing over how easy ASP.NET makes some things. DataBinding is a pretty huge time-saver. Accomplishing a given task generally requires that you write many more lines of PHP than it would C# in ASP.NET.

    15. Re:PHP Succeeds Because It's Not Overkill by NutscrapeSucks · · Score: 1

      No, it's actually quite easy to build web applications where the Back Button works properly ... I've been doing it for years now. Simply ask yourself "Does the HTTP Request have all the information needed to recreate the server state by itself?" And if the application state is maintained in storage such as a database, this is quite easy to do (even if not the most scalable).

      Incidentially, ASP.NET meets this requirement, the user just sees an ugly dialog about resubmitting forms. In general, session-based Java toolkits do a poor job at this, and "it's an application" doesn't translate well to users who understand how the web is supposed to work.

      --
      Whenever I hear the word 'Innovation', I reach for my pistol.
    16. Re:PHP Succeeds Because It's Not Overkill by shutdown+-p+now · · Score: 1

      There are certain subtleties about how the Back button in particular works, in Opera but now also in Firefox, where the browser loads the page from the cache ignoring any hints to do otherwise. While I myself cannot live without this feature (most likely the sole reason which kept me using Opera for years), it has a potential of breaking a web application - at least as seen by someone who does not understand how those things usually work.

    17. Re:PHP Succeeds Because It's Not Overkill by killjoe · · Score: 1

      "But you're being too harsh on ASP.NET development. As others have noted, you don't need to use the debug button (and really shouldn't, unless you're *actually* debugging). You can just open a browser window, build and refresh."

      Building expires your session so your refresh doesn't work. You have to log in and then navigate to the page you were having a problem with.

      "ou don't have to compile PHP, it's true, but doing a build in C# is generally very fast."

      Still slower then no build at all. Multiply the build time by thousands and send an invoice to Bill Gates for wasting your time so much.

      "DataBinding is a pretty huge time-saver. "

      Only when you are coding, it makes maintenance a nightmare. You save on the initial stage of your application lifecycle but suffer horribly during the rest of your applications lifetime. You know the maintenance, debugging phase that is 90% of all applications lifetime. Besides which it's a bad idea, it's always been a bad idea, it will continue to be a bad idea. I can't think of one accomplished programmer who reccomends it, I can't think of one respected book on programming that reccomends it. Not one. There are even best practices and white papers made by MS that don't reccomend it.

      "Accomplishing a given task generally requires that you write many more lines of PHP than it would C# in ASP.NET."

      That's not true. PHP has a such a huge and rich library that you can accomplish amazing tasks in just a few lines of code using other peoples efforts. The PEAR library is huge and the amount of third party libraries staggers the imagination. Take a look at PHPlens for example. Another think you can do in PHP is to start with a complete system like Nuke or Xoops, with no code whatsoever you can set up a web site with full authentication, plug in architecture, fine grained permissions, database abstraction, and just about anything else you can think of. With no code at all!. You only write the code if you want to customize something. Face it the PHP community so much more generous then the ASP.NET community and that's what makes using PHP hundreds of times more productive then ASP.NET.

      --
      evil is as evil does
    18. Re:PHP Succeeds Because It's Not Overkill by killjoe · · Score: 1

      compiling expires your session, you still have to log back in and then navigate to the page you were looking at. Building takes time and during the lifecycle of your web development process you might have build thousands if not tens of thousands of times.

      --
      evil is as evil does
    19. Re:PHP Succeeds Because It's Not Overkill by deserttrail · · Score: 1

      True enough. Luckily, I don't work on any applications that require sessions for login tracking, so I did overlook that part. :-)

      I hate the compiling too. Oh well, I still get paid even if I'm just waiting for the compiler. :-p

      --
      Be civil to all; sociable to many; familiar with few; friend to one; enemy to none. --Benjamin Franklin
    20. Re:PHP Succeeds Because It's Not Overkill by snickers · · Score: 1

      "Building expires your session so your refresh doesn't work. You have to log in and then navigate to the page you were having a problem with."

      Try using the "ASP.NET State Service". This can be configured in the web.config in the sessionState tag. Using this makes developing in dotnet a lot easier as the session is maintained when you do a build.

  31. Java vs PHP development by totallygeek · · Score: 5, Informative
    I am an owner of a software development company, and I can tell you that both have their place. All languages (and sadly, operating systems) are tools and it makes sense to use the right tool for the job. Languages we may be using depending on the task include C, Pascal, DataFlex, Java, PHP, Perl, Python, and even bash. Someone might ask why Pascal; which is because we have a well-defined set of libraries for that language which allow us to access many other applications, which in another language would be difficult or expensive to recode.


    All that aside, we typically use PHP for all web-based applications. The ease of coding, and the ability to affect change with zero downtime is a big plus. We can have several programmers affecting changes in one codebase in real time. And, for a program which took us six months to develop in PHP, it would have taken at least fifty percent longer with Java.

    1. Re:Java vs PHP development by jcoleman · · Score: 2, Insightful
      We can have several programmers affecting changes in one codebase in real time.

      I'm not sure why you think
      a) this is a good idea to do in PHP, and
      b) this can't be done in Java.

      And, for a program which took us six months to develop in PHP, it would have taken at least fifty percent longer with Java.

      And now it will take you at least two hundred percent as much time to maintain.

  32. this is definitely flamebait by Anonymous Coward · · Score: 0

    We actually have PHP hosted on Tomcat, we did some internal work to make the buggy PHP-Servlet work correctly so we could use PHPBB and some other PHP components. We've integrated Coldfusion 6.1 in the mix and have a load of ASPs sitting behind Tomcat through a proxy servlet. Personally, I like java much better, it's a more general programming language than PHP. I've seen PHP under the hood and I'm not impressed with the underlying code. The 6.0 version of the JDK will support PHP and other scripting languages more smoothly. If you're interested take a look at JSR-223. There's a preview technology demonstration available. On many levels, I really don't care what templating language our web developer wish to code in, I do care how easy it is to write and deploy server components.

  33. the best thing about java is... by bogaboga · · Score: 1
    ...the fact that it can be used to push realtime currency and stock data to remote computer networks and devices. As a full-time currency speculator, I can trade realtime just like the guy on the New York trading floor. The last time I did this was when I an on "holiday" in East Africa. All made possible because of java. In this field, PHP is of no use.

    The Zend announcement of a technology to rival .NET and java might change the picture though.

  34. very biased article by Philodoxx · · Score: 5, Insightful

    I'll come straight out and admit that I'm a Java programmer, but I've used PHP and I will admit it is simple to use.

    I find the comparison that the article makes between them is very one dimensional, it's saying that PHP is better than JSP, which I suppose is debatable (I prefer JSP ;) ). The problem is that Java is so much more than just JSP on the server side, it has an entire framework of technologies (some part of J2EE, some not) that make it a complete package. If they want to compare Java and PHP, it should bring in not only ease of development, but scalability, interoperability and security. I would have also liked to see the number of commerical websites running PHP vs the number of commercial websites running Java. For instance my home page has TorrentFlux on it, which is php based. So I guess I fall into that 22 million, although that's not really by design.

    I won't try and say Java is better (because of my limited PHP experience) but if an author wants to convince me that PHP is better than Java, it's going to have to talk about more than simplicity and hype.

    --
    Oh, a lesson in history from Mr. I'm my own grandpa.
    1. Re:very biased article by mildgift · · Score: 1

      Well.... you work with the situation you get. In the corporate environment, you have the whole server, and the sysadmin, and maybe a programmer who is someone is isn't also that sysadmin. In that situation, Java is viable.

      On the web, you've got someone who wants to run a site on a share web host. The sysadmin for the web host wants to be hassled as little as possible by people deploying applications... therefore, PHP is better because it doesn't have any "software deployment" concept aside from "upload the file to the server." You have a programmer, who probably wants a few dozen people running his whizzy app. If the webmaster is the programmer, s/he may still want others to run the software. PHP apps are easy to deploy.

      If you're talking strictly about developing rich applications, particularly large ones for a specific purpose that have a web face, Java is a better language, and a better environment. If you want to distribute small web applications that work for web sites to do "web site" things, though, PHP wins.

      The competition, however, is still a false one. On the one hand, you have PHP for "short" projects of, say, 50,000 lines or so. You have Java for large projects. These aren't in competition with each other. The competion won't be really obvious until a proprietary PHP apps grows and needs to integrate with the Java codebase via a PHP/Java interface. Then, people will be choosing, within a project, between the PHP/C implementation of a feature, and the Java implementation of the feature. ( And, as in all competitive situation, the customer wins :-) )

  35. Let's send an in email by tertullian · · Score: 2, Insightful

    Let's see In Java: import some.crap; import some.more.crap; import yet.some.crap; class SomeMailClass { create object 1 create object 2 create object 3 call object 1.somefunction(); call object 2.somefunction.bloated(); call object 3.somefunction.Ihave.lost.interest.already(); blah, blah, blah } now, let's do this in PHP. mail('me@mydomain','Subject',$message,$headers); In Java: For the above code, I'll bill out an hour to my client just for writing and compiling the class. Oh wait, there was a compile problem, let's debug...recompile, wait, wait, wait... ok, let's get started on the next part In PHP: I sent an email, ok, let's get started on the next part. I'll bill an hour to my client have something to show for it.

    --
    Goal in Life: Learn as much as I can...
    1. Re:Let's send an in email by Anonymous Coward · · Score: 0

      Let's see In Java:
      import some.crap;
      import some.more.crap;
      import yet.some.crap;
      class SomeMailClass
      {
      create object 1
      create object 2
      create object 3
      call object 1.somefunction();
      call object 2.somefunction.bloated();
      call object 3.somefunction.Ihave.lost.interest.already();
      blah, blah, blah
      }

      now, let's do this in PHP.
      mail('me@mydomain','Subject',$message,$headers);

      In Java:
      For the above code, I'll bill out an hour to my client just for writing and compiling the class. Oh wait, there was a compile problem, let's debug...recompile, wait, wait, wait... ok, let's get started on the next part

      In PHP: I sent an email, ok, let's get started on the next part. I'll bill an hour to my client have something to show for it.
      --
      Goal in Life: Learn as much as I can...

    2. Re:Let's send an in email by Anonymous Coward · · Score: 0

      Remind me to not become a client of yours.

    3. Re:Let's send an in email by JediTrainer · · Score: 1

      ...and that's why most of us use (or have created) a library to simplify it to just that.

      On our end, it took only a few hours for one coder to encapsulate all that cruft into a simple library. Sending an email for me (in Java) is now as simple as:

      EmailMessage email = new EmailMessage();
      email.setFrom( "from@wherever.com" );
      email.addRecipient( "to@wherever.com" );
      email.setSubject( "Example" );
      email.setBody( "Whatever" );
      //also optionally email.addAttachment( inputStream, filename );
      email.send();

      Granted, it might be a tiny bit verbose, but is that really hard? The EmailMessage class does all the messy work, and we only had to write it once. If you're finding that you're doing that hard crap over and over again, you should re-think your coding practices.

      --

      You can accomplish anything you set your mind to. The impossible just takes a little longer.
    4. Re:Let's send an in email by Anonymous Coward · · Score: 0

      Being an incompetent, stupid programmer is no proof of a language being better/worse. If your problem with Java is having to type too much or repeat yourself, you just don't know what the fuck you're doing and should go back to VB6.

    5. Re:Let's send an in email by Anonymous Coward · · Score: 0

      Are you kidding me? This is the exact type of thing that libraries and taglibs are for. Here's the easy way to send an email:
      <mt:mail server="home.net" to="foo@home.net"
      from="bar@home.net" subject="mail taglib">
              <mt:message>[body of message]</mt:message>
              <mt:send/>
      </mt:mail>


      Now that this lame arguement is out of the way, let's talk about accessing IMAP, shall we? In Java (using JavaMail), it works out of the box. Just point to the server and you'll get a nice heirarchy of folders and messages. Try the same in PHP, and you are likely to find that:

      a) You have to recompile PHP for support. (Not an easy task.)
      b) You have to muddle through a number of poorly-documented functions instead of a nice OO heirarchy.
      c) You'll run into weird problems like garbled email messages when you open a PostgreSQL DB connection prior to IMAP connection.

      PHP is good for a lot of things. But arguing against Java's flexibility is just silly. Use the right tool for the right job and your life will be fine and dandy.

    6. Re:Let's send an in email by Anonymous Coward · · Score: 0

      You must be one of those "developers" that relies on tools like Frontpage (or maybe Word?) 'cause anything else takes too long. Keep on truckin' buddy!

    7. Re:Let's send an in email by veg_all · · Score: 1
      mail('me@mydomain','Subject',$message,$headers);


      And then for the sender header I give you this:
      haxor@attack.com%0AContent-Type:multipart/mixed;%2 0boundary=frog;%0A
      And now you're an annonymous remailer. I'm a php coder, but you have ignored the necessary work of filtering your input, man. Which wouldn't be a big deal, since it's a simple example, but you're comparing the ammount of necessary code, and it seems you've left some out....

      Check this out.
      --
      grammar-lesson free since 1999. (rescinded - 2005)
    8. Re:Let's send an in email by Craig+Davison · · Score: 1

      Not knowing the usual way of doing things in PHP, I might be talking out of my ass here, but shouldn't that mail() function be doing the filtering/escaping? If I give it an email address with a newline in it, I want to send an email to an address with a newline in it (regardless if that's a valid RFC822 address), and not even be able to put something on the next line of the email headers. It should be sufficiently abstracted that I don't need to know enough about email headers to know what I need to filter out of an address.

      Also, strange nobody mentioned that he's not checking the return value of mail(), unless there's exception handling in PHP and he's letting the error fall through to a default exception handler.

    9. Re:Let's send an in email by veg_all · · Score: 1

      If you give any header a value with a newline, you're creating 2 headers, according to RFC 822:

      3.2. HEADER FIELD DEFINITIONS
      [...]
      field = field-name ":" [ field-body ] CRLF

      So after CRLF you are set to define a new fieldname : field-body. And no, php doesn't do any filtering for you in the mail() function.

      --
      grammar-lesson free since 1999. (rescinded - 2005)
  36. Success through lack of hype by Pike · · Score: 2, Interesting

    PHP might well succeed where java has failed, but it will be because:

    - it's used on its merits, not because of hype, or a New Gospel of Platform Independence
    - it's simpler and faster
    - it's not being touted by a huge company such that it shows up on MS's radar as a challenge ...which are also things that Ruby has going for it. Or Python. The point isn't that PHP succeeded, the point is that java failed (at becoming kingathehill) and why it failed.

  37. Comment removed by account_deleted · · Score: 1

    Comment removed based on user account deletion

  38. Templating: Re:Help me out here by foolfodder · · Score: 1

    A good alternative to using smarty: http://phpsavant.com/

  39. HAY GUYS GUESS WAHT! by Anonymous Coward · · Score: 0

    Windows is more popular than Linux. Dunno if that's a compliment, really.

  40. sun death wish by pubjames · · Score: 1

    I always thought Sun had a bit of a death wish when it came to Java. It has amazing publicity when the web was booming, and they managed to screw it up bigtime.

    For instance, in order to install Java so that you could use a java app on the web you had to go to their web site and hunt around to find the download, even then you had to choose between whether you wanted to download the Java SQW1.2 or ZXY4.2 - it was as if they didn't really want normal people to be able to use it. Java was an amazing opportunity for Sun which they completely screwed up.

    1. Re:sun death wish by jiushao · · Score: 1

      Yeah, they should just have hired a team of hackers that could break into peoples machines and install Java on them while they slept. This whole "people having to download software to have it" thing is a horrible move.

    2. Re:sun death wish by pubjames · · Score: 1

      That's not the point. They seemed to make the process very difficult.

    3. Re:sun death wish by Anonymous Coward · · Score: 0

      Actually I can tell you the comparison between java and php is like comparing apples and eggs. Secondly, its an overly simplified statement. Java does much more and is much broader, and java is a programming language, not a website language such as php. There are lot of tools that are build on java and lots of frameworks that make it possible and easy to create websites and many other applications. Those thinking of JSP only are comming several years behind and are missing the fun.

      You shoud know how much of an explosion Java has undergone and the number of initiatives, open source frameworks, tools, ... have been created in Java in the last years. It's simply unbelievable. Very usefull and powerfull stuff, and used by many, many people.

      Simply said, Java has not failed at all. Its a big winner. What is true is that with php, it has been easier to create rather simple websites quickly (several years already), which run fine with less powerfull servers.

      And for those thinking that Java is dead on the desktop: http://weblogs.java.net/blog/hansmuller/archive/20 05/10/official_swing.html

      I'm not even starting to talk about other domains Java has arrived in. Millions of devices that support it.

      Php is good at what it does, to some limits and it is not alone. Java is much more powerfull, much broader and has a very big marketshare also in completely other domains.

      Every big vendor supports Java (even Microsoft to some extend) and a lot of them with big power and success. In the world of open source Java is also a big winner with many big successfull projects.

    4. Re:sun death wish by Doctor+Memory · · Score: 1
      As opposed to PHP, where you just:
      • download the latest version
      • compile it
      • install it
      • stop your web server (assuming you have Apache or IIS, otherwise don't even bother getting started)
      • edit the web server config file
      • restart the web server


      Not sure how many "normal people" who can deal with *that* can't figure out the difference between the Java runtime (JRE) and the complete development kit (JDK).
      --
      Just junk food for thought...
    5. Re:sun death wish by mildgift · · Score: 1

      Most people learn PHP by downloading a PHP app, installing it on their website (on a hosted server) and then eventually learn enough PHP to modify the app.

      The ones who move on to doing more programming usually get the Windows verson of PHP to run on their own computer, and deploy the app to a *nix server. So, they basically don't ever have to deal with compiling PHP or even reconfiguring and restarting the server.

  41. Re:Ajax? by dashifen · · Score: 1

    And, with the class structure of PHP, I've had great success running AJAX with a PHP object receiving the data and manipulating it.

  42. Debugging can be cumbersome by Dysenteryduke · · Score: 1

    I've written web apps in Java, PHP, and now Python (check out Turbogears). Debugging PHP was such a pain, especially the PHP Extension and Application Repository (PEAR). Most of the bugs I would be trying to fix were not bugs on my part but bugs in the PHP libraries. Not to mention the error that was thrown 99% of the time was completely inaccurate. Just my experiences...

  43. flamebait! by Anonymous Coward · · Score: 2, Insightful

    There should be an option to moderate a whole article as flamebait!

  44. Found one by p3d0 · · Score: 1
    --
    Patrick Doyle
    I mod down every jackass who puts his moderation policy in his sig. Oh, wait a sec....
  45. Native compiled PHP with a widget set? by Trigun · · Score: 1

    Although I think that PHP has made large strides in the web market, I'm hoping to see the day when there'll be kde and gtk bindings, as well as native compiled code.

    1. Re:Native compiled PHP with a widget set? by vidarh · · Score: 2, Informative

      You mean like PHP-GTK?

    2. Re:Native compiled PHP with a widget set? by Trigun · · Score: 1

      Okay, I missed that one. There goes my weekend.

  46. "wooing windows programmers" ?? by Pike · · Score: 1

    Sorry but I beg to differ on that one. Other than get its OS installed on every new PC, Microsoft does nothing to incent programmers to write for Windows.

    That ended when they stopped including QBasic and started selling VB for $100-$700.

    1. Re:"wooing windows programmers" ?? by Commander+Spock · · Score: 0

      Actually, Microsoft offers their "Express Edition"s of most of their developer products as free downloads.

      Visit the site for more information.

  47. For a neat example of what PHP can do by Junior+J.+Junior+III · · Score: 1

    Check out the link in my .sig, it's a web-based game based on an old MUD, done up in php.

    --
    You see? You see? Your stupid minds! Stupid! Stupid!
  48. screw 'em both by SCHecklerX · · Score: 1, Informative

    I'll stick with embedded perl, thanks. It does what I need, and I am already familiar with it. All the benefits of perl and mod_perl, with the simplicity of embedding into a page. I'm sure PHP is nice, but why bother learning it?

    1. Re:screw 'em both by the_2nd_coming · · Score: 1

      and you set that up how?

      --



      I am the Alpha and the Omega-3
  49. There's no reason to put logic into presentation by coder111 · · Score: 1

    No, there is no reason to put logic into presentation layer, and i've been coding web apps with java for years. You can ALWAYS represent the data in some kind of data structure that just needs to be displayed.

    Oh, and I use Apache Velocity (jakarta.apache.org), which is a templating engine, that more or less forbids putting logic into templates.

    So not all of us java programmers are stupid or liars. Ancient frameworks and JSP and ancient applications made with them sometimes had logic in presentation layer, but most of the modern stuff doesn't. Check out MVC1 and compare it with MVC2 application design- you'll see the difference.

    --Coder

  50. Re:Java failed because it's a slow toy. by Anonymous Coward · · Score: 0

    Why not? It's kept one guy from getting fired. No one wants to touch all those C CGI scripts, especially because they're mission critical...

  51. Re:Microsoft tools make it easier? by broggyr · · Score: 1

    Agreed. Although I am not "guruistic" (I make up my own words when it suits me lol) when it comes to building pages, I have built very basic sites. Amazing the crapola that MS FrontPage dumps in there - the difference is amazing! Is this an attempt by them to try to make the pages most compatible with IE? Sure seems like it...

    --
    Irony? Yea, it's like goldy and bronzy, only it's made of iron!
  52. PHP has frequent remote exploits by Anonymous Coward · · Score: 0

    Don't forget that.

  53. Re:Marc's Support : the kiss of death? by Crayon+Kid · · Score: 1

    PHP rocks. Pure and Simple.
    [...]
    Opinions are like assholes: everyone's got one, and they all smell.


    Peee-eeew.

    --
    i ate crayons when i was a kid and now i have two braincells and the blue ones taste nicer
  54. In related news by kinglink · · Score: 1

    PHP is succeeding where C++, Basic, and Fortran failed too...... webpages.

  55. Pussy... by ccozan · · Score: 1

    Bah, i did that in assembler while on top of Himalaya.

  56. this is sad by namekuseijin · · Score: 3, Informative

    The alternative to extremely bloated and redundant java and .net web technologies is an extremely basic (old)ASP-alike with all functions and variables sharing the same namespace and global variables running wild. Granted, it's easy. Just as easy as notepad and just as featureless and error-prone...

    Hey, i'm just as annoyed at java and .net as everybody else, but i'd point to Python, Ruby, Perl or Tcl technologies rather than this sub-Perl refugee...

    --
    I don't feel like it...
  57. I risk being tagged elitist, but... by Snowhare · · Score: 5, Insightful

    PHP is and will be continue to be popular with the masses simply because, like HTML, the entry barrier is very low. It will fail to make deep inroads at the high end for the same reason: The entry barrier is very low.

    Sounds like a contradiction? Not really. The entry barrier for PHP is so low that we are seeing zillions of poorly written, insecure and unscalable PHP apps written by amateur programmers. Resulting in numerous security scares about PHP and contributing more than slightly to the infamous Slashdot Effect where a site that gets a sudden traffic surge craters as it runs out not of datapipe but simple CPU power. This scares the hell out of anyone who considers using PHP in the enterprise.

    Don't get me wrong: It is possible to write good, secure, scalable code in PHP. It just isn't very common.

    1. Re:I risk being tagged elitist, but... by dun0s · · Score: 2, Informative

      Sites that suffer the /. effect do so because they are not expecting the traffic. In the same way that very large enterprise websites that suddenly release XYZ bit of software for download by the marketing department who never told the IT department also suffer a similar /. effect. It isn't always the language or the programmer or the scaleability of the website. It all depends on what level of traffic is expected.

    2. Re:I risk being tagged elitist, but... by Fahrvergnuugen · · Score: 1

      Don't get me wrong: It is possible to write good, secure, scalable code in PHP. It just isn't very common.

      Hopefully the Zend PHP Collaboration Project will help more people write "good, secure, scalable" php code.

      --
      Kiteboarding Gear Mention slashdot and get 10% off!
    3. Re:I risk being tagged elitist, but... by sootman · · Score: 1

      PHP is and will be continue to be popular with the masses simply because, like HTML, the entry barrier is very low. It will fail to make deep inroads at the high end for the same reason: The entry barrier is very low.

      I don't understand your comment. HTML is not, and can not be, a programming language, so yeah, mission-critical, enterprise-level, your-buzzword-here apps will never be written in HTML, because they can't be. On the other hand, HTML is in use by every single company, large and small, from AOL to IBM to Sun to the US government--on their web pages. So in that sense, I would say HTML has made huge inroads into every single large and powerful organization there is.

      I agree that the premise of the article is dumb. PHP and Java have very little overlap. Like another poster said--"In other news, Coke wins where peanuts fail." And overall, I don't know if this is good news or not. On the one hand, M.A. is pretty well known and if he's saying good things about PHP, then great. (For me at least--I like PHP.) Maybe morons who value his opinion will hear this and I'll have that much less convincing to do. On the other hand, people who really know about him know he isn't as smart as the media makes him out to be. He got lucky and became the WWW's original "golden boy" but the true story is he wasn't particularly talented, he pissed off a lot of people by taking coders and code, and as far as I know he hasn't done a single substantial thing since leaving Netscape. So in that sense, I don't value his opinion much, and if he says PHP is great, I really don't give a shit.

      --
      Dear Slashdot: next time you want to mess with the site, add a rich-text editor for comments.
    4. Re:I risk being tagged elitist, but... by Anonymous Coward · · Score: 0

      I don't understand your comment. HTML is not, and can not be, a programming language, so yeah, mission-critical, enterprise-level, your-buzzword-here apps will never be written in HTML, because they can't be. On the other hand, HTML is in use by every single company, large and small, from AOL to IBM to Sun to the US government--on their web pages. So in that sense, I would say HTML has made huge inroads into every single large and powerful organization there is.

      s/HTML/handwritten, non-CMS HTML/g and you get the idea

    5. Re:I risk being tagged elitist, but... by nchip · · Score: 1

      So true.

      However, php really needs do a better security effort, even if it makes making php web pages harder. Scalability and poor software readability on the other hand are not realistically fixable on the language level.

      --
      signatures pending - ansa@kos.to - (dont mail there)
    6. Re:I risk being tagged elitist, but... by bmalia · · Score: 1

      Don't get me wrong: It is possible to write good, secure, scalable code in PHP. It just isn't very common.

      Many who work with PHP don't even know what good, secure, scalable code is. When you make a dumbed down product that any idiot can use, you get idiots who use it.

      --
      There's no place like ~/
    7. Re:I risk being tagged elitist, but... by neelm · · Score: 1

      You have pegged reality quite well. If you are looking to be a PHP developer and make $60K+ a year, you will have a hard time finding a job. Low barrier to entry means even if you do write good, secure, scalable code in PHP you will have to compete with far more resumes for the job than if you were Java.

      Just look at your local jobs section, or favorite tech jobs site. Search on Java, then search on PHP - the java guy has far more choices. (then for fun, search .NET)

      Marc is getting paid well to spend time in PHP, are you?

    8. Re:I risk being tagged elitist, but... by twocents · · Score: 1

      I wouldn't consider your comment that of an elitist, but of someone that underestimates change and has a very optimistic view of what 'high end' is in the world of computer apps. If I hadn't checked out your Web site I would actually consider this comment that of a troll.

      Vague phrases and knowledge regarding security and scale do often play a role in technology choices, but if one is a company that delivers a quality products, coded in Perl, PHP, Java, whatever, then that company is more likely to land work than a company that produces poorly written products coded only in Java.

      There is a ton of shoddy, crappy software written for the Enterprise in quite a few languages by veteran developers - no one, not even the poor, huddled masses of PHP developers, have the lock on the 'develop crummy code' market.

      With that said, the two languages are headed in a similar direction from very different beginnings, so I think most predictions are probably good for about a week.

    9. Re:I risk being tagged elitist, but... by Anonymous Coward · · Score: 0

      Actually, a large % of slashdotting can be traced directly to PHP's shitty database handling. Problems that simply do not exist with ASP or J2EE.

    10. Re:I risk being tagged elitist, but... by Ray+Alloc · · Score: 0

      Example of "secure, scalable, yadayada... PHP app", please.

  58. PHP: good for admins, not so good for developers by FedeTXF · · Score: 3, Interesting

    I teach PHP in college since 2001 and I use Java/JSP at work and at home since 2003.
    PHP is good for an admin to set up some forum, photo gallery, database administration front end, a CMS, whatever tool you can download form sourceforge and install in a few hours to give users/customers a service.

    When you need to develop a solution with specific needs and there's no tool to download and use right off the shelf, PHP gives you lots of headaches.

    The API changes a lot, very fast. This is not good. From PHP 3.0 to 4.0 things break and new stuff gets added so fast some sites have to keep using PHP 3 in order to avoid spending many hours recoding old code. Now PHP 5 is a new language altogether.

    Lots of changes are for good since PHP was really bad in some areas in early version so the rewrote everything form scratch, that forces developers to relearn and recode.

    The lack of abstraction in the PHP API leaves lots of stuff to the developer. For example, working with HTTP headers. The header function just sends whatever header you send in. You have to account for browser bugs on your code and maitain that. The manual is full of user comments regarding how to use certain function that give different results with different databases, browsers, platforms, Apache configurations, etc. Those things don't belong to API, there are bugs, but you have to work around them in your code.

    If you use a PHP CMS or a PHP forum, you know the people developping it will do the dirty work for you and release a quality product, but for a small organization with a few programers, migrating from PHP3 to PHP5 to get the new cool stuff they implemented is hard, painful and takes a lot of debugging time.

    In contrast Java has managed to keep backwards compatibility while adding new functionality and the API has been quite stable. Of course it has bugs, migration problems and imcompatibilities, but the java developers (SUN, Apache foundation, IBM, etc) make an effort to make developers' life easier. The PHP developers also try, but are less sucessful.

    At the same time in Java you don't have such a wide selection of free tools ready to use in a web site, but you do have tons and tons of libraries ready to be integrated in your java web app, which PHP has but in much smaller quantity.

  59. complexity? by mmport80 · · Score: 1

    WILL THIS ADD COMPLEXITY TO DEVELOPING php? If so, I rather think that Zend fully understand their product. PHP is popular cos it is easy!

  60. Have to be "nuts" to mix the two ... by isolationism · · Score: 1

    Could someone pass this message along to the Squirrelmail team?

  61. The big problem with PHP as i see it. by Dext · · Score: 1

    The main problem with PHP is that its almost to easy for someone with no real programming knowledge to use. PHP is a very powerful language but it lacks the standardization present in other languages. I work as a freelance web developer (unless someone wants to hire me full time) and i cant even count the amount of times i was asked to help fix problems on sites which were caused because of poor coding standards or a lack of knowledge on the original developers part. This is combined with the fact that most smaller PHP driven sites end up being a messy combination of free scripts people find online, then are glued together in a poor way by a person with out a lot of programming knowledge.

    Zend is doing a lot to fix these problems and make PHP much more appealing for professional developer. Zend studio is an amazing tool for PHP, being able to debug an entire website remotely was huge for me. Combined with the Zend Framework and other tools, PHP becomes a viable alternative to J2EE or .NET, and all for a fraction of the price.

    Before we can get there though, some things will need to change in the way PHP code is written. PHPDOC should always be used for every piece of PHP code Coding standards like those used in the PEAR project should always be followed. Also, PHP5 needs to go into more wide spread use. Currently very few web hosting company's support PHP5, this is usually because the applications they them self use for managing their business are written in PHP4.

    Hopefully PHP will replace J2EE and .NET one day, but it isn't here yet, until then it looks like I am stuck fixing other peoples mistakes.

  62. Shouldn't compare the two... by Sierpinski · · Score: 1

    I don't really think that PHP should be put in the same base for comparison as Java, or more specifically, J2EE. PHP is a scripting language. Just about anyone with a moderate knowledge of programming concepts would probably be able to pick up a book and start writing scripts. From the simple "Hello World", to the full blown portal site, PHP is as complex as you want to make it. J2EE on the other hand, adds several layers of complexity from the very beginning. You need a webserver capable of processing PHP for those kind of scripts, but for J2EE you need the JRE, then (at least as far as my experience went) two installs of java, one for the base language, and another for the J2EE "engine" (for lack of a better word.) PHP doesn't require OOP knowledge, J2EE does.

    People who just want to write a blog or some other relatively simple task online will use a relatively simple tool to do it. Why pull out the J2EE for something thats not an 'EE' (enterprise environment)? The ratio developers (professional and hobbyist) that I know that know PHP vs J2EE is staggering. Unless someone has a specific need that requires the use of J2EE, why learn the more complex one when the simpler one would suffice?

  63. Java never seemed intregrated with the browser by xtal · · Score: 2, Insightful

    Applets, apps.. whatever, Java never seemed to flow as an extension of the browser in the way that PHP did. It always seemed to be a better C++ (flame suits on) with one hell of a standard library built in.

    Unfortunately, the answer to "it's not fast enough" always seemed to involve a very heavy, expensive machine from Sun. Hrmm.

    Microsoft's solutions always seemed inelegant to me.

    PHP always was, and is, about making web applications and database interfaces very efficiently.

    Why is it suprising then, that it would be adopted?

    --
    ..don't panic
    1. Re:Java never seemed intregrated with the browser by sr180 · · Score: 1

      You are comparing Java on the Client Machine to PHP on the server. That is not the comparison that the article is making.

      --
      In Soviet Russia the insensitive clod is YOU!
    2. Re:Java never seemed intregrated with the browser by Hast · · Score: 1

      Wow, it's just facinating haw incorrect this post is. It just seems like there's no point in even beginning to correct it, but you could start with the other posters suggestion not to confuse Java Applets and PHP server-based CGI.

  64. MS by hachete · · Score: 1

    Now that MS have declared an interest in the donkey (JBOSS and MS), will they go ahead and "introduce" all the OS frameworks to MS server to try and woo away hosters from linux? Nice time to be a light-weight framework provider.

    --
    Patriotism is a virtue of the vicious
  65. web apps all have the same problem: the browser by helix_r · · Score: 4, Insightful


    Web apps all have the same problem. They use a goddamn BROWSER as the application platform. This sucks.

    I'm looking at a typical jsp right now. Its an awful demoralizing conflation of xml, css, jstl, html, and javascript-- all in one file. As developer, it sucks to work with and it is a major hassle to create a nice user experience with this trash y stuff.

    I have not worked with PHP, but looking at the source from the browser page, I imagine the same problems apply.

    Whatever happened to the "applet" concept? True, there were problems with it initially, but one would think that these problems could have been solved by now. Instead, the industry turned away from nice clean designs to the brutal mess that is today's web app.

    1. Re:web apps all have the same problem: the browser by Dominic_Mazzoni · · Score: 1

      Web apps all have the same problem. They use a goddamn BROWSER as the application platform. This sucks. ...
      Whatever happened to the "applet" concept?


      Ya know, I used to feel the same way, but then I finally realized that for most applications, the browser as an application platform is actually better and results in a better user experience. With a web-based application, every user can rely on:

      * Cross-platform compatibility - aside from a diminising number of Windows-IE-only sites, any web application works on Windows, Mac, and Linux equally. Sadly, this was rarely true of Java applets, though I agree there's no reason this shouldn't have worked in theory.
      * Resizable fonts and modifiable colors - absolutely critical for the visually impaired. Only a tiny fraction of desktop applications are customizable for the visually impaired, and virtually no Java applets are, but it's trivial to make a website accessible (add ALT tags to any images).
      * Text is selectable and copyable.
      * For an application that needs to access a remote server, support for your firewall. Small client apps don't tend to support proxy servers / firewalls. But web browsers handle all of this for you.

      I'm not saying we're ready for Office in the web browser with today's technology. But for a lot of apps (online banking, making reservations, accessing a company database) there are many advantages to doing it based on the web, rather than using applets or client-side apps.

    2. Re:web apps all have the same problem: the browser by ydrol · · Score: 1
      Ya know, I used to feel the same way, but then I finally realized that for most applications, the browser as an application platform is actually better and results in a better user experience. With a web-based application, every user can rely on:....

      .. getting charged twice by over-eagerly clicking "[Authorise Payment]" and then really screwing everything up by hitting the [Back] button.

    3. Re:web apps all have the same problem: the browser by jcoleman · · Score: 1
      I'm looking at a typical jsp right now. Its an awful demoralizing conflation of xml, css, jstl, html, and javascript-- all in one file. As developer, it sucks to work with and it is a major hassle to create a nice user experience with this trash y stuff.

      There is a handy little pattern in web applications these days called "model-view-controller," aka MVC. Google it and you'll see that the problem you mention above is the fault of the coders and not the fault of the programming language.

  66. Re:For an example of what PHP can do by b10m · · Score: 1

    Oh joy, someone can mimic a MUD in PHP, how neat!

    I think DHTML Lemmings is far more impressive.

    MUDs can be build in any language, if you really still wanted to...

  67. As a Java developer with PHP experience... by pico303 · · Score: 5, Insightful

    ...I can honestly say I avoid PHP at all costs. PHP feels like it was built by committee: there's no consistency in the language. Even with 5 I still feel like I'm hacking together web pages.

    I feel like there's a lack of standardized libraries for PHP. I've used PearDB, but it's sure not ActiveRecord or Hibernate. Smarty's o.k., but I'm already developing in a template language for HTML pages, why do I need another one? It's like working with JSP tag libraries (which I find equally wasteful).

    Fundamentally, I think the tight coupling between view, controller, and model that PHP naturally engenders is bad. Practically, I've seen where Ruby on Rails has gone in just a single year, and it's further than PHP's gone in the last 5. Things you can do in Rails in a few days take weeks of coding in PHP, even with the help of third-party libraries.

    PHP has a strong foothold with small, inexpensive ISPs, which is the only reason I think that people still use it. Unfortunately, the "war" between 4 and 5 has really hurt the credibility of PHP moving forward. Does any ISP support PHP 5?

    If PHP wants to compete against Ruby on the low end and J2EE and .NET on the high end, it's going to need new development tools--both for writing the code and useful libraries, stronger leadership, and a clear plan for the future. I don't see any of this happening in its current state. I consider myself to be a PHP outsider these days, and looking in it doesn't look so fun in the pool.

    1. Re:As a Java developer with PHP experience... by Anonymous Coward · · Score: 0
      Smarty's o.k., but I'm already developing in a template language for HTML pages, why do I need another one?
      I agree with all your other points, but you will never ever catch me calling Smarty "o.k.". The same lack of consistency that plagues PHP is strongly present in Smarty (foreach and section syntax anyone?) Also, while PHP's Unicode processing simply sucks, Smarty's built-in functions seem to actively seek new ways to mangle anything Unicode-encoded.
    2. Re:As a Java developer with PHP experience... by bfioca · · Score: 1
      There's a framework out there that was built by a Java developer to address all of these concerns... it just hasn't caught on just yet.

      It's called WASP it uses the Flexy template engine (which is even better at logic separation than Smarty) and DB DataObjects.

      Here's an article comparing WASP in PHP to Java.

    3. Re:As a Java developer with PHP experience... by TrekCycling · · Score: 1

      Concur. I am a J2EE developer by trade and PHP was my fallback language for non-profit, personal and other side projects for a while. But now I'm using Ruby on Rails. Faster to develop than PHP and much better structured (when using Rails).

    4. Re:As a Java developer with PHP experience... by Jesus_666 · · Score: 1

      PHP is great for throwing stuff together. I use it as a shell scripting language and apart from the time it takes the interpreter to load it's very nice. I probably could do my stuff in Perl or Ruby, but PHP comes with enough syntactic sugar that I can quickly put sogether something when I need it.

      --
      USE HOT GRITS WITH STATUE OF NATALIE PORTMAN (NAKED AND PETRIFIED)
    5. Re:As a Java developer with PHP experience... by Tablizer · · Score: 1

      I have not seen any evidence that a rails-like framework cannot be built for PHP. I don't see why UI frameworks have to be married to a specific language anyhow.

    6. Re:As a Java developer with PHP experience... by Trejkaz · · Score: 1

      Rails isn't a UI framework anyway. It's a whole-stack framework.

      --
      Karma: It's all a bunch of tree-huggin' hippy crap!
  68. This is an API complaint, not a language complaint by israfil_kamana · · Score: 3, Interesting

    If you have such problems in Java then write a really small little class that does all this work for you, generically, in one place, so you can access it by saying

    Mailer.mail(to,from,subject,message,header1 ... headerN);

    Many java frameworks are terrible, but that's a matter of API aesthetic. For instance, I hate the Java frameworks' APIs for reflection and dynamic method invocation and such. So I wrap it all in two methods

    public boolean canPerformMethod(String methodSignature);

    public Object performMethod(String methodSignature,Object param1 ... Object paramN);

    (Note: the above is pseudo-code so I don't have to explain how to do variable number of parameters in Java 5 - not all /.ers are Java coders.)
    (Note2: By using aspect-oriented programming, I can insert these methods high-up in the object-hierarchy)

    The point is that now, anywhere in my code I can dynamically invoke methods by:

    Foo result = null;
    if (target.canPerformMethod("processFoo:String:Foo")) {
          result = (Foo)target.performMethod("method:String:Foo","Pro ccessing Foo",aFoo);
    }

    That simple structure replaces about 10-20 lines of exception handling, method lookup, and all sorts of crap, because I (wait for it) encapsulated it.

    I'm not saying it's not convenient to have mail(...). Of course it is. But the point of languages like Java is that if you have a preferred API, you can wrap the complexity of a crappy API with a nicer convenient one in your own code. That's called good programming. No actualy need to whine.

    It's only when the raw functionality is not there, or when the raw langauge/runtime capabilities don't actually allow you to create the functionality you want in a convenient form - that's when whining is necessary. But modern Java, with Java 5 + aspectJ pretty much allows anything to be created in relatively convenient APIs.

    The only remaining issue is to convince someone at Sun to refactor their core APIs into something that provides some of this convenience out-of-the-box. Or go write Objective-C against the Cocoa APIs on MacOSX. They're pretty nice.

    --
    i - This sig provided by /dev/random and an infinite number of monkeys at keyboards.
  69. Since When Has Java Failed? by the+eric+conspiracy · · Score: 3, Interesting

    This article is a crock. PHP is great for your $10 a month hosting service domain on a shared server, but Java has been and continues to be the market leader when it comes to writing web based functionality that integrates across an entire enterprise.

    Try doing this in PHP.

    There is a reason that eBay handles 1 billion transactions a day on Java.

    1. Re:Since When Has Java Failed? by drew · · Score: 4, Funny

      There is a reason that eBay handles 1 billion transactions a day on Java.

      Because they run it on a million servers?

      --
      If I don't put anything here, will anyone recognize me anymore?
    2. Re:Since When Has Java Failed? by lawpoop · · Score: 1

      Hey, I could do that site in plain old HTML.

      --
      Computers are useless. They can only give you answers.
      -- Pablo Picasso
    3. Re:Since When Has Java Failed? by prockcore · · Score: 1

      Because they run it on a million servers?

      And it's still slow as sludge.

  70. Ning by mparaz · · Score: 1

    Social platform Ning has marca as cofounder and supports PHP as its first language.

  71. PHP sure makes it easy to write insecure code by finkployd · · Score: 1

    I don't know if it is the class of programmers it attracts, or the langauge itself but it seems pretty much all the worst, insecure web applications are written in PHP these days. PHP-Nuke seems like it is exploited about monthly for example.

    Then again, I wrote my weblog software in C, so what the hell am I talking about?

    Finkployd

  72. correction in pseudo-code by israfil_kamana · · Score: 1

    For the pendantic, this is what I meant:

    Foo result = null;
    if (target.canPerformMethod("processFoo:String:Foo")) {
                result = (Foo)target.performMethod("processFoo:String:Foo", "Pro ccessing Foo",aFoo);
    }

    The earlier one would have invoked a non-existant method. Should have written the Unit Test first... :)

    I also should mention that the above is used to hit arbitrary methods, so you don't have to know the specific class/interface up-front. This is really really useful in plug-in interfaces for applications, for example. And yes, you can re-structure your code around strong interfaces and all sorts of things to avoid having to do this, but sometimes this kind of approach saves 10s and 100s of lines of code, and as long as you perform the check, it's safe as houses.

    .

    --
    i - This sig provided by /dev/random and an infinite number of monkeys at keyboards.
  73. The problem for casual Java is hosting (price) by buddylee · · Score: 2, Interesting

    I'm running into this now, but to get wide acceptance, hosting for Java needs to come down in price. For instance, I can find a company to host my html website for $10/year. I can find a company to host my asp/asp.net website for $3.99/month and I can find a company to host my php site for about the same. The CHEAPEST java host I found was charging about $15/mo for fewer feature addons (bandwidth, space, etc) than the $3 php or asp hosts.

    It's not difficult to see why Java isn't in the mainstream as far as casual or moderate web developers go.

    And I really don't understand why the cost is so high since everything Java hosting uses is supposed to be free (compared to buying IIS & a windows server).

    1. Re:The problem for casual Java is hosting (price) by Tyler+Eaves · · Score: 1

      The simple answer is that Java eats CPU and RAM for lunch. You can run 1000 small PHP on a single server, easy. Trying running 1000 java apps (or even 100) on the same hardware.

      --
      TODO: Something witty here...
    2. Re:The problem for casual Java is hosting (price) by bmalia · · Score: 1

      I agree with your argument that Java hosts are limited. However, thought i'd mention that the cheapest java hosting package I found is $7.95 per month through ObjectNova.com

      --
      There's no place like ~/
    3. Re:The problem for casual Java is hosting (price) by bmalia · · Score: 1

      Which is why java hosts will often give you a discounted price for a "Shared Tomcat" package.

      --
      There's no place like ~/
  74. Re:Java failed because it's a slow toy. by Finuvir · · Score: 1

    Would you use C/C++ on a website? I wouldn't

    Google uses C for just about everything and Amazon uses C++ for lots of things (along with Perl and Java). If you're building something that big you may not want to do it in a language like PHP. Having said that, Yahoo! largely uses PHP so it obviously can scale.
    --
    Why is anything anything?
  75. It is our own ilk... by awfar · · Score: 1

    I agree fully; we are our own worst enemy. As "architects" begin to architect IT, they have all the patterns, buzzwords, technologies, to make business and academics feel good about what they are accomplishing/spending/hiring. If, in fact, you were running software like you were launching a rocket to the moon, such NASA'esque scale and complexity for software may be helpful (but maybe not - see the report on the shuttle failure). But that, I suggest, is not where most endeavors lie.

    I am sad about this industry because of it.

  76. Microsoft's highly regarded programming tools by DerelictMan · · Score: 1, Flamebait
    Indeed, many credit Microsoft's success to its highly regarded programming tools, which make it easier for developers to write software that run on Windows.
    Am I the only one who read the above as "highly retarded"? :)
    1. Re:Microsoft's highly regarded programming tools by DerelictMan · · Score: 0

      To the mods: that was a joke. I know Microsoft's tools are highly regarded (and probably with good reason), that was just the way it read to me at first and I thought it was funny...

  77. We used PHP for our last product, but... by dskoll · · Score: 1

    For the last four years, I've been working on a product whose Web interface was written in PHP. It worked well for us, and was easy to write, is very stable, and is fairly maintainable.

    However, our next product is not using PHP. We've switched to Perl (specifically, the Catalyst framework) for a number of reasons:

    • Part of the both products is written in Perl anyway, so reducing the number of languages helps avoid confusion. Ever write my $var; in PHP? :-)
    • PHP has maddeningly-inconsistent naming. in_array or inarray? nat_case_sort or natcasesort? htmlentities vs htmlspecialchars_decode vs html_entity_decode. Argh!!!
    • DBI. CPAN. What more can I say?
    • use strict; use warnings;. PHP has no equivalent notions; it's way too loose.
    1. Re:We used PHP for our last product, but... by VvScythevV · · Score: 1

      Naming conventions in PHP are definitely ackward, I wrote a library of aliases so all the functions I use have one naming convention and I don't have to remember if XYZ function uses an underscore or not. As for errors/warning, you can use error_reporting(E_ALL); but most of the things it'll report on should be fairly obvious already and a lot of detailed and harder to find things will slip by.

      --
      -- Reality is for people who lack imagination.
  78. Java failing? by mcvos · · Score: 1

    It's not quite clear from the article where Java is failing. Well, there are some things, like applets, that people once thought were cool, and are now completely ignored. For building complex websites, however, there are lots of really useful Java frameworks that can help you out.

    That, however is also the problem with Java: there is too much stuff. Do you need EJB? JDO? JSP? Struts? Spring? Something else? (Answers: No, yes, no, no and yes!) Java used to be powerful and easy, but it's grown overweight and complex. It doesn't have to be that way, however. The Java world is starting to realise that it needs to go back to Plain Old Java Objects (like Spring does) and do away with all the overly complicated J2EE junk (especially EJB2!).

    Personally I wouldn't dream of building big websites in JSP or PHP (although PHP is probably fine for small ones), while something like Cocoon (mostly Java components, with bits of other stuff whenever that's more useful) is great for rapid deployment of complex sites (although I'm sure others will disagree; it suits my needs, however).

    The article also says that Java is losing ground to Javascript and AJAX. I don't see how. The only Java they might possibly be competing with are applets, and those have been dead for quite some time now. There are plans to include AJAX support in Cocoon, which makes a lot of sense. Using different tools for different tasks and all. And that's how it's meant to be: everything has its place, including Java and PHP.

    1. Re:Java failing? by bloo9298 · · Score: 2, Insightful
      It's not quite clear from the article where Java is failing.

      On the contrary, the article makes it very clear: Java is failing to provide income for Marc Andreesen.

    2. Re:Java failing? by ShieldW0lf · · Score: 1

      The article also says that Java is losing ground to Javascript and AJAX. I don't see how. The only Java they might possibly be competing with are applets, and those have been dead for quite some time now.

      This is totally false. Applets are not dead, they are all over the place. They're not popular for user interfaces, but there are lots of web apps that use applets for networking and DHTML for the UI. This is where Java stands to lose ground to AJAX.

      --
      -1 Uncomfortable Truth
  79. OS-independent Java by totallygeek · · Score: 1
    I disagree on the supposed non-portability of Java. For the last few years, all my Java work has been developed on win32 and and then hosted on *nix systems, mostly Solaris and some RedHat and it's all been fine.


    That's great. What I was saying is this is becoming more rare. If someone attempts to play some online Java games, they work fine in Windows, but not from a Mac. I know of a corporation that wrote many apps in Java ontop of Netware, but things ceased to work when they pushed the apps to Linux desktops. All I am saying is that Java's write-once approach does not work in the real world because many programmers are building applications for a specific audience of operating systems/environments, and not caring about any of the others.

    1. Re:OS-independent Java by aled · · Score: 1

      Java its not magic, but if you are a little carefull its easier to get portable programs than for example a C/C++ program. My main problems are with old applets or that are tied to Microsoft JVM. That's the developer fault, or perhaps a business decision.
      Our web apps binaries run without problems on windows, linux or as/400, unchanged.

      --

      "I think this line is mostly filler"
    2. Re:OS-independent Java by bloodredsun · · Score: 1

      Fair point. With client side programming you are always going to be at the mercy of the setup and configuration, but you make the point that it's the programmer who's responsible for the dependancy on a specific environment not Java. Well crafted code will run 99% (WAG stat) of the time on varied systems. But then you're supposing that the developer has the time/skills/support to be able to write well crafted code rather than krufty stuff that only just works but does the job which is a whole 'nother kettle of fish.

  80. Where's the other article? by GuyZero · · Score: 1

    The one that says "Java succeeding where PHP has failed"? You know, where they cover system integration projects in banks where they tried to use PHP, but ended up scrapping it for Java? Oh wait - not even an idiot would use PHP for that.

    What a non-article. Yes, PHP is better than servlets for some stuff. And C is better than Ruby for writing a UNIX-clone kernel. Is this not obvious to anyone with a basic education in computer science?

  81. I'm sorry but I, almost, completely disagree by burnttoy · · Score: 1

    Hmmm, Having been hacking PHP for a while now I can say that it is an absolute breeze to do some of the things you are asking (PDF, XML etc). The "trick" with PHP is to go and search for relevant libaries. I started creating dynamic sites in PERL but, for once, PERL didn't really do the trick for me. Mostly I didn't like the tight binding between Apache and PERL for session management. In fact, dare I say it, PERL is starting to look a little long in the tooth.

    PHP is good but can't easily create Java style servlets, I'll probably be proved wrong though! So session->session comms are a bit hairy. However, combined with MySQL a lot of problems go away.

    However, I do take your point about off-brand databases and mainframe interfaces. Yes, that sort of thing is probably considerably easier in Java than PHP.

    --
    Time flies like an arrow. Fruit flies like a banana.
    1. Re:I'm sorry but I, almost, completely disagree by coder111 · · Score: 1

      Um, PHP libraries?

      What about good database abstraction layer like JDBC? What about distributed caching or just plain caching? What about a good O-R mapping layer like Hybernate/JDO/Cayenne?

      What about MVC2 frameworks, component frameworks, capabilities to build distributed applications? RPC? Object serialization? Messenging APIs (like JMS)?

      PHP is good for many things, but there are so many things lacking. I'm sure I'll get some responses pointing out PHP solutions for the problems I described here, but I doubt any of them are as mature as their Java counterparts. Of course, it's been a while since i worked with PHP, so things might have changed since then.

      --Coder

    2. Re:I'm sorry but I, almost, completely disagree by saberworks · · Score: 1
      Mostly I didn't like the tight binding between Apache and PERL for session management.
      You clearly missed the plethora of session management modules on CPAN, many of which have nothing at all to do with apache.
    3. Re:I'm sorry but I, almost, completely disagree by burnttoy · · Score: 1

      i clearly have! cheers. i'll go and have another hunt around.

      --
      Time flies like an arrow. Fruit flies like a banana.
    4. Re:I'm sorry but I, almost, completely disagree by PyroX_Pro · · Score: 1

      Creole and Propel.

    5. Re:I'm sorry but I, almost, completely disagree by LordoftheWoods · · Score: 1

      PEAR, Creole, Propel, the one that Zend is developing... Why does PHP need so many? Were they just too late delivering something that virtually everybody needs so we ended up with tons of incompatible solutions?

  82. Re:Microsoft tools make it easier? by k1s1w1 · · Score: 1

    >> Indeed, many credit Microsoft's success to its highly regarded programming tools, which make it easier for developers to write software that run on Windows.

    I think that quote was referring to Visual Studio and ASP.NET. FrontPage is a piece of total crapware that spits out obfuscated HTML, but VS 7 is actually pretty good, especially since it lets you keep the code separate from the HTML unlike ASP classic. The problem I have with ASP and PHP is that the code will become totally spaghetti-fied unless you are VERY careful with it, and trying to decipher someone else's ASP code is usually a total nightmare.

  83. Re:Java failed because it's a slow toy. by masklinn · · Score: 1

    Some people do, I actually know someone who codes a forum in CGI/C

    --
    "The way we can tell it's C# instead of Haskell is because it's nine lines instead of two." -- wadler
  84. RubyOnRails.com by Anonymous Coward · · Score: 0

    The question isn't PHP or Java, it's why aren't you using Ruby on Rails? Go check it out. PHP is a joke in comparison and Java far too complex. www.rubyonrails.com

  85. PHP is not in Java's league by Dystopian+Rebel · · Score: 1

    PHP has all the faults of Perl... and I ~like~ Perl.

    As far as a language goes, PHP is a mess.

    As far as capability goes, let me see PHP do something as good as this:

    http://sourceforge.net/projects/azureus/

    --
    Rich And Stupid is not so bad as Working For Rich And Stupid.
  86. Pardon me while I poke your eyes with a fork by Foofoobar · · Score: 1

    I handle PDF generation all the time through PDFlib. FDF generation is built in and simple. Image generation through GD and ImageMagick. SOAP and XML can be compiled in when you do the 'make'.

    I have no idea what you are talking about when you say PHP can't do these things. Been doing some of them for a long time.

    --
    This is my sig. There are many like it but this one is mine.
    1. Re:Pardon me while I poke your eyes with a fork by Anonymous Coward · · Score: 0

      FDF generation is built in and simple.

      BWHAHAHAHAHAHA!!!

      (Wipes tears from eyes.)

      FDF generation! That's a good one! (Ow, my gut hurts from laughing!) Call me when you can actually populate an encrypted document, then merge the resulting pages together. Or split them apart. Or insert objects.

      FDF is a sick joke that Adobe foisted upon the world. It works poorly, and is nothing more than a stub that requires that the source document ALWAYS remain in the original location. Without change. Otherwise the FDF with break, or present incorrect information.

    2. Re:Pardon me while I poke your eyes with a fork by Foofoobar · · Score: 1

      Well yes, if your stupid.

      But not me. I'm smart. :)

      I didn't find any of it to be a problem. Would you like me to call you now? Cause it would be kinda difficult to do it in the past.

      --
      This is my sig. There are many like it but this one is mine.
    3. Re:Pardon me while I poke your eyes with a fork by Anonymous Coward · · Score: 0

      Oh really? Would you like to explain how you managed to actually modify existing PDF documents in PHP without resorting to Java? I'm sure you could install ActivePDF, but that still doesn't give the same level of control as PDFBox does for Java. (Not to mention that it seems to like to break at a whim, and only works on Windows.)

      So please, I'd like to hear this. I'm all ears.

    4. Re:Pardon me while I poke your eyes with a fork by Foofoobar · · Score: 1

      PDFlib. :)
      Allows you to modify and even merge PDF's through PHP. You can use ClibPDF as well but it has a rather limited function set.

      --
      This is my sig. There are many like it but this one is mine.
    5. Re:Pardon me while I poke your eyes with a fork by Anonymous Coward · · Score: 0

      Uh huh. I'm looking at the features list right now. I don't see populating form fields anywhere. Now I'm looking at the API docs. Still nothing. I certainly don't see any APIs for direct PDF "Object" access for you to build your own, either. So where is it?

      And if you are able to populate the fields, why are you bothering with FDF? Especially since you can run into conflicting field names when you merge the documents into one. In those cases you need to rename the fields or you will cause Acrobat to malfunction. (I've even seen Acrobat crash just because the same field name is used across merged documents.)

      So you're not making any sense here. You say on one hand that PDFLib lets you populate fields. Yet on the other, you say you use FDF. Which is it? It's certainly not both unless you REALLY don't understand what we're talking about.

      P.S. From this page we find:

      Merged result is integral part of PDF page description?
      Form Fields: NO

      Graphics and text properties can be overridden upon filling?
      Form Fields: NO

    6. Re:Pardon me while I poke your eyes with a fork by Foofoobar · · Score: 1

      Populating form fields is handled via FDF or XML generated in PHP through MySQL. You just asked how to do those functions with PHP. I told you; use the PDFlib mod for PHP.

      Through PDFlib you autogenerate your pdf, then use FDF (or XML) to read data from a DB and populate your PDF.

      OR... while generating your PDF, default form fields with data from your DB.

      There are lots of ways to do it. It's not really that hard. Seriously.

      --
      This is my sig. There are many like it but this one is mine.
    7. Re:Pardon me while I poke your eyes with a fork by Anonymous Coward · · Score: 0

      You're still not making any sense. FDF is a stub file. It's separate from the PDF. Now there are utilities that can merge the FDF into the PDF file, but AFAIK, PDFLib isn't one of them. (And I've combed their website to check. In my previous post I even pointed out the link where they said that FDF data was NOT a part of the PDF file.)

      FDFs are NOT acceptable by many companies because:

      1. The source file must be distributed with the FDF, or the PDF must be kept unchanging and always publically available.

      2. The field names in the PDF can conflict when documents are merged, requiring that the field names be changed. If you're going to change the PDF, you might as well set the value inside the PDF while you're at it. In some circumstances, it's impossible to know what the final field name will be, making FDF not usable.

      3. FDFs result in the PDF being downloaded multiple times, resulting in higher bandwidth costs.

      4. There's no guarantee that the file the FDF loads is the exact same file the client original saw. (This is very important for some legal documents.)

      OR... while generating your PDF, default form fields with data from your DB.

      That's assuming you have that option. What if the PDF comes from a partner? In Java, I can modify the PDF form fields and send the result to the client.

      You keep claiming you can actually modify the PDF form fields, yet you keep mentioning FDF. Which is it?

    8. Re:Pardon me while I poke your eyes with a fork by Foofoobar · · Score: 1

      To dynamically pop the PDF AFTER you have sent it, you use javascript built into the PDF when you dynamically generate it via PHP. :)

      Again, fairly simple :)

      Any other questions?

      --
      This is my sig. There are many like it but this one is mine.
    9. Re:Pardon me while I poke your eyes with a fork by Anonymous Coward · · Score: 0

      Fairly simple, and WRONG. I asked you point blank, and you keep ignoring the question. Can you take a given PDF and modify it's form fields? The answer is obviously NO. You keep referring to PDFs you generated. That's not always an option. (In my business, it's not an option at all.) So you've got a goody bag of cute little hacks. So what? At the end of the day, your cute little hacks do not solve the actual problem, and are likely to fail in a variety of circumstances. (e.g. Javascript doesn't work in all PDF viewers.)

      In Java, I have all the power to do everything you've described, and FAR, FAR more. And that is my point. I can do it quickly, easily, and (most importantly) in a straightforward fashion. Why would I bother with a metric crapload of hacks when I can just do the job right the first time in Java? Not to mention that I can do it free with tools like PDFBox and FOP, whereas many of the features you've alluded to require a costly version of PDFLib.

      So feel free to lie to yourself all you like. But PHP is simply not a heavy lifting language. It's designed for light web work, and I'm afraid it will remain as such.

    10. Re:Pardon me while I poke your eyes with a fork by fimbulvetr · · Score: 1

      It's interesting you want to sound so reputable, but you remain anonymous.

    11. Re:Pardon me while I poke your eyes with a fork by Foofoobar · · Score: 1

      Can you take a given PDF and modify it's form fields?

      And I answered yes. And you seem to have missed all the times I have said yes and explained in simple english how to do it.

      No sweat though if you can't understand. PHP can seem very complex to your average Visual Basic programmer.

      --
      This is my sig. There are many like it but this one is mine.
    12. Re:Pardon me while I poke your eyes with a fork by Anonymous Coward · · Score: 0

      Mmm. My actual account has 5965 Comments. I'm quite well known around here. I'm posting anonymously because I'm still sort of recovering from the shear emotional stress of the UN/US Internet stories. I have to say, there's nothing quite so frustrating as people arguing on the basis of nationalism instead of logic. :-/

      What I find interesting is that FooFooBar keeps evading the questions he's asked. Strikes me that he's just trolling.

    13. Re:Pardon me while I poke your eyes with a fork by Anonymous Coward · · Score: 0

      It seems you still don't understand what he is talking about. He has a PDF that has form fields in it. He did not generate that PDF -- it was given to him. He wants to make a copy of that PDF with the form fields filled out and flattened. There is no easy way to do this in PHP. With Java, even a PHP-programming simpleton can do it.

    14. Re:Pardon me while I poke your eyes with a fork by Foofoobar · · Score: 1

      Yes there is. FDF. Built in capabilities in PHP.

      Now if he wants to have the form fields filled out to where they can't be changed, he needs to use PDFlib with PHO. PDFlib can work with existing PDF's and overwrite them. In this instance, you would remove the form fields and replace them with a text box if you wanted them not to be over written.

      Between FDF and PDFlib, there is nothing you can't do to a PDF and PHP.

      --
      This is my sig. There are many like it but this one is mine.
    15. Re:Pardon me while I poke your eyes with a fork by Anonymous Coward · · Score: 0

      Your parents should have been sterilized.. Seriously. Don't be such a fucking asshole.

    16. Re:Pardon me while I poke your eyes with a fork by Anonymous Coward · · Score: 0

      Why do you keep talking about FDF? "He wants to make a copy of that PDF with the form fields filled out and flattened." I guess you don't know the (standard) terminology.

      To continue, not only is PDFlib not free, but PHO for PDFlib does not exist as far as google can tell. You can do everything he mentioned for free in Java.

    17. Re:Pardon me while I poke your eyes with a fork by Foofoobar · · Score: 1

      Use PDFlib and replace the form field with text fields. Basically, you read the form fields default data, then replace the form fields with text boxes. This is a way to take the form and 'flatten it'.

      I've tried to say this several times already but the individual just gets belligerent. Honestly, if he wants to call me a liar he can but he's wrong when he says it can't be done. Whether he wants to try it for himself or not is up to him.

      All I'm sayin is use PDFlib with PHP and it's very simple.

      --
      This is my sig. There are many like it but this one is mine.
  87. Re:Java failed because it's a slow toy. by Anonymous Coward · · Score: 0

    Yes, 'cause 5 or 10 vendors who use php, c and c++ means php fails. Lord help you and your tiny sample sets.

  88. PHP vs Java by Daveznet · · Score: 1

    This is like comparing Apples with Oranges, yes PHP can create simple dynamic web pages quickly and easily, but use it to create and type of enterprise scale application and watch its maintainability/simplicity drop like a sack of rocks. PHP has its place for scripting simple websites and making connections to small-intermediate sized databases, but it will never over take Java as a programming language, PHP is a scripting language in my opion. I dont know if this still stands true, but the last version of PHP that I worked with didnt even have namespaces, something that I believe makes maintainability of any application easier another thing only the core modules of PHP are thread safe, which is another thing you need to have in any large scale application. Java excels with threads making them extremely easy to use and has alot of support for it. IMHO PHP wont over take Java, I have yet to see any Banks use PHP for their online banking involving money transactions. PHP has its place for creating small-medium dynamic websites.

    --
    GL HF!
  89. Maybe, but PHP will always be insecure by ilovegeorgebush · · Score: 1

    Well, he has a point. PHP is easy to learn. However, PHP is insecure - fact! It also has some annoying features and is not so pleasent for a programmer. Remember btw, that the person saying this is the guy whose selling PHP :-)

  90. PHP framework - no thank you very much! by Anonymous Coward · · Score: 0
    I was happy and joyfull and agreed with the sentiments of the article until I read the sentence: "PHP framework". That imediately send shivers down my spine and gave me a mental picture of would-be J2EE zealots ganging together in the quest for ruining another fine programming language.


    - Please keep way from PHP


    - Please do not try to out-framework Java


    - Please do someting useful with your time


    PHP is beautiful precisely because of the coding-efficiency. You can do as little or as much as is needed in solving the task at hand, without being dragged down by an impossibly complex framework.

    As little as I like microsoft they had understood that userfriendliness goes for programmers as well. To add insult to injury programs created with this -easy-to-use platform even outperforms Java on a routine basis - but thats another flamewar.


    Of course, being an anonymous coward, this rant will never be read anyway...

    1. Re:PHP framework - no thank you very much! by chez69 · · Score: 1

      You don't need a framework to develop java web apps either, but it makes it a lot easier for somebody else to maintain your code later.

      somebody said it earlier, PHP is the BASIC of the web. I'll add this: it's easy to develop in, but absolute ass when your application is large and you need to bring people up to speed on it.

      --
      PHP is the solution of choice for relaying mysql errors to web users.
    2. Re:PHP framework - no thank you very much! by Anonymous Coward · · Score: 0
      That was not my point. I've seen large well-structured PHP systems living happily without frameworks. Frameworks is not a panacea and no excuse for not writing well-engineered software. The point is, that badly engineered frameworks, such as the fullblown J2EE framework w. EJB2 is a detriment to programmer productivity and furthermore, in this particular case, even weighing down the application performance wise. I know of well-performing J2EE systems that run on clustered 8 CPU SUN machines and being reasonably maintanable - systems that uses the much simpler servlet architecture. But I dare anyone to come up with an example of a J2EE/EJB2 system that can be explained to an adept but EJB2 unware programmer in a day and which furthermore can be left unattended and performing well for weeks.


      Hopefully EJB3 can alleviate Java of some of the EJB2 weight, but I have just met to many starry eyed Java 'architects' in total disregard of customer requirements, timeframes and performance being so much in love with the wonderful intricasies of the convoluted ÈJB2 to have any high hopes anymore for this ilk of programming.

  91. Why PHP is succeeding where Java failed by Qbertino · · Score: 1

    I recently got up to speed with a real life commercial PHP App a client needs. Allways wanted to do that, and been mucking around with the one or other PHP threeliner throughout the years.
    PHP is just as people percieve it: Some strange sort of SSI PL that has become the reference for everything SSI. While Perl has a very funny syntax (on the brink of being silly) PHP has some strange sort of order to it. The "->" Object.method separator being only one of those strange things.
    But now I've learned from 1st hand experience why this awkward PHP thing is the most powerfull SSI solution and why people are using it for stuff any programmer in his right mind wouldn't dream of using PHP for:
    Documentation.
    Throw a beercan into a crowded shopping mall at saturday moring. The person yelling "Ouch!" has either
    a) written a PHP/MySQL app themselves, b) is related to somebody who did or c) knows somebody personally whos built a PHP/MySQL CMS or written a Book on the subject.
    Type your PHP question into Google and it will pop up the answer.
    Wanna do some webapp stuff? You can bet there is a PHP function for that, and that there are at least 5 Tutorials explaining how to use it. Plus a very well written official reference.
    The designers I work with have zilch knowledge of datamodelling (or objectmodelling for that matter) and the app we're building just now is a relational intergrety nightmare - yet all of them each know a few lines of PHP.
    The sheer number of ready made OSS/PD PHP solutions out there outweigh every amount of Java web applikations ever written. PHP is open, extremly well documented, fast, cheap, scalable and is based on tried and true technologies.

    It boils down to a quite simple fact actually:
    PHP is nothing less than the web generations Basic.

    --
    We suffer more in our imagination than in reality. - Seneca
  92. Parallel universe? by lorcha · · Score: 3, Funny
    I think Andreessen is operating in a parallel universe that is different from the one in which we live.

    Fact: PHP was released on June 8, 1995.
    Fact: The Java Servlet spec (first server-side Java) was released over 4 years later on October 1, 1999.

    After 5 years, Java as caught up with and far surpassed PHP in terms of usage, tools, maturity, etc. Java is showing no signs of slowing down. I don't know what iPlanet Marc is on, but on my planet, if you want to do any server-side web programming, you better know J2EE or .NET.

    Also funny was this quote from TFA:

    "I think Flash is one of the most exciting technologies out there that's almost on the verge of great success and never quite achieving it," Andreessen said.
    Uh, yeah, Marc. That falls solidly in to the category of "thing we wish were true but aren't." I wish Flash wasn't so popular, but the fact is it's used very heavily.
    --
    "Avoid employing unlucky people - throw half of the pile of CVs in the bin without reading them." -- David Brent
    1. Re:Parallel universe? by truffle · · Score: 1

      Flash with actionscript 2.0 is actually a really great development platform for web based end user apps/games. I'm a C++ developer but I'd love to program more in flash / actionscript 2.0 :)

      Flash has a bit of a reputation as being for art projects and not for serious coding. Actionscript 1.0 was a piece of trash. It's going to take a while for flash to loose it's reputation.

      --

      ---
      I support spreading santorum
    2. Re:Parallel universe? by Anonymous Coward · · Score: 0

      that is, *IF* it looses that rep. Look how long all the assbags have hung onto the "JVM" is sooo slow /whine.

    3. Re:Parallel universe? by drewzhrodague · · Score: 1

      Some of us choose not to have a giant and bloated infrastructure just to do some simple server-side things. In that case, PHP suits us fine. I would certainly need quite a bit more infrastructure than the two webservers I have, had I chosen JSP, or .NET.

      --
      Zhrodague.net - I do projects and stuff too.
    4. Re:Parallel universe? by gatzby3jr · · Score: 0

      You're also comparing a project released by a group of people that originally started as Perl scripts, to a fully developed programming language backed by several large companies. Not to mention you assumed that when PHP was released, it was #1 in the market. It was actually CGI/Perl that was most popular for server-side programming until recently (and still many pages are run on CGI/Perl). On another note, of course PHP programmers can produce bad code, but I've also seen extremely poor code written in Java, C++, and others, but that doesn't make the language itself bad. I use PHP as a means to produce web applications, and what I think the best part is you can make it as complicated as you need it, and you don't have to use OOP (Object Oriented Programming) for tasks that don't need it. However, if you do need it (or it would help), you can design it that way.

    5. Re:Parallel universe? by Anonymous Coward · · Score: 0

      The problem with Flash is that nobody has really come up with a useful reason to use it - other than Macromedia itself (Breeze and FlashPaper)

      Skip Intro is the first thing I look for when visiting a over-expensive site.

      Fancy navigations and animations add little to the 'net. It's information that we are after. And, with Flash and Search Engines failing to get along, flash fails to deliver any substantial value.

  93. Re:Let's send a better email by porneL · · Score: 1

    And now try to make this code secure, prevent header injection, add attachments, etc. You'll find that you're importing PEAR classes and doing it all Java way.

    PHP is simple for simple things. It requires a lot of skill and attention in large projects.

  94. It's getting there, but it has its problems by bigtrike · · Score: 3, Informative
    I've used PHP for years and by now I have a love/hate relationship with it. Some of my biggest issues with php are:
    • Lack of binary compatibility even on debug fix releases. My code shouldn't stop working when I upgrade from 4.3.2 to 4.3.3 due to an undocumented addition of a run time warning
    • Error reporting must be turned down well below useful levels in order to use PEAR in PHP 5. Ignoring E_NOTICE level warnings is usually a very bad idea, but necessary until PEAR works in PHP 5
    • Code can't be entirely compatible with PHP 4 and 5 standards (var produces warnings in PHP5, public/private does not work in any PHP 4)
    • Lack of standardization of function naming and argument order. I always have to check whether the function I'm using has an underscore between the words and whether it's needle, haystack or haystack, needle
    • Kitchen sink approach. Again, all functions are in the same namespace. This results in some pretty weird function naming
    • Lack of great debug support. xdebug sort of works, but is still very immature
    • Loose typing. You have to study the documentation very carefully in order to understand how to compare variables and get the expected result. In addition, since type conversion is automatic and performed on numbers when they exceed certain ranges, precision may be lost unless you have a very detailed understanding of how and when type conversions happen and plan out the numerical ranges of your variables accordingly
    • Caveats with unset()/isset/null/arrays


    PHP may have a bunch of issues, but it's still the best tool for my job.
  95. I only use PHP... by spycker · · Score: 1

    For all the available open source projects to be downloaded gratis (i.e. free)!!!

    Mambo, Joomla, NukePHP, ...

    Thats it. No other reason than that. Otherwise, C# and Java based solutions are better in every conceivable way. All the yacking about better for reason X, Y, or Z are just that - 'yack'.

  96. Re:Java failed because it's a slow toy. by thomas.galvin · · Score: 1

    No, I agree. PHP is just a scripting language. Would you use C/C++ on a website? I wouldn't

    I have. PHP lacked the database support, CORBA support, socket support, threading support... etc. that we needed.

    Now, if I'd have had my way, we would have used Java, and we would have been more productive, but requierments are requierments, and the client was a java-phobe. C'est la vie.

  97. I'm seeing more of the same rhetoric by CousinLarry · · Score: 1

    I knew this debate sounded familiar....

    Find and replace:

    "PHP" with "LINUX"
    and...
    "Java" / "J2EE" with "MICROSOFT"

    Result:

    "Web browser pioneer Marc Andreessen recently announced his prediction that LINUX will be more popular than Microsoft for building web-based applications." From the article: "Wooing programmers is nothing new in the computing industry, where players constantly jockey to establish their products as an essential foundation. Indeed, many credit Microsoft's success to its highly regarded programming tools, which make it easier for developers to write software that run on Windows. LINUX has caught on widely. About 22 million Web sites employ it, and useage is steadily increasing. About 450 programmers have privileges to approve changes to the software. Major companies that employ LINUX include Yahoo, Lufthansa and Deutsche Telekom's T-Online." Meanwhilie, Piersky writes "Zend has announced its rival to .NET and MICROSOFT, with the Zend LINUX Framework. In a press release, they stated that it will be 'A Web application framework which will standardize the way LINUX applications are built. The Zend LINUX Framework will accelerate and improve the development and deployment of mission-critical LINUX Web applications'. This will for part of Zend's LINUX Collaboration Project"

  98. That's why you need a framework... by Phil+John · · Score: 1

    ...and should stick to it.

    Our e-commerce and CMS platform is highly maintainable and is written in PHP.

    We use a template library for all xhtml outputwhich is fully xhtml 1.0 compliant, all javascript and CSS is in external files, never inline.

    In one swoop that's your display (xhtml+javascript+css) taken care of in a maintainable way. If a client wants a completely different look and feel for their system we merely tweak the css and/or templates and they are good to go, no messing with the business logic.

    We've got a robust set of in-house libraries for dealing with things like sessions, authentication, data munging and whatnot, these are all kept in seperate library files and only included where necessary. We also use some brilliant third party libs, such as the excellent ADOdb and Smarty. All of our big libraries are extendable classes which allows us to easily plugin different components (e.g. we support 4 text editor widgets, WysiwygPRO, TinyMCE, FCKEditor and plain ol' textarea and image resizing and cropping via ImageMagick or GD2).

    Finally, we use fusebox to promote code reuse and to logically compartmentalise the application, it really helps logic when you can break stuff down into circuits (eg admin, shop, customer login) and actions (add user, add to cart, checkout).

    It's taken a few years to get to where we are (from the old way of php mixed with css mixed with html all in one file) but we've managed the transition and now have two platforms that are so ludricously easy to extend that we now allow clients access to do it (via a plugin API).

    Whatever happened to the "applet" concept? True, there were problems with it initially, but one would think that these problems could have been solved by now. Instead, the industry turned away from nice clean designs to the brutal mess that is today's web app.

    AFAIK applets still have major problems with accessability that you just don't get even with fairly rich dhtml stuff.

    --
    I am NaN
    1. Re:That's why you need a framework... by pdo400 · · Score: 1

      If you clean, well structured code was one of your design goals why did you choose PHP in the first place? I don't mean to bag on your setup as it sounds like it's running great, but it seems like you've done a lot of work to emulate in PHP things that you get in Java for free.

      --
      --
    2. Re:That's why you need a framework... by Phil+John · · Score: 1

      The reason is reduced cost of maintenance (no expensive app server admins) and to allow a far greater number of people to purchase and make use of our software. PHP hosting is still far more abundant and for the most part far cheaper.

      We do use J2EE for larger bespoke projects (such as a complete asset tracking system for a large optics retailer we're working on at the moment). It's all about using the right tool for the job, smaller CMS and e-Commerce systems can be far better served using the PHP setup.

      It also wasn't a lot of work to achieve our goals, 99% of it is just discipline, the other 1% is making sure you seperate stuff.

      --
      I am NaN
  99. Re:Let's send a better email by ilovegeorgebush · · Score: 1

    hahah, thank you! If you want something done securly or properly, don't use PHP.

  100. There goes portability...thank you for playing... by irritating+environme · · Score: 1

    You obviously do nothing but Windows. Java "extensions" are just java, and have the same near-guarantee of running seamlessly on any platform. Especially if you're talking server code.

    --


    Hey, I'm just your average shit and piss factory.
  101. I love PHP by Darksoftnet · · Score: 1

    Personal Home Page all the way!! :)

    1. Re:I love PHP by yezooz · · Score: 1

      yeah, PHP rulez!!! :D

      --
      www.w3net.pl
  102. PHP as presentation / Java for logic/db access by affinity · · Score: 0

    I always thought that for big sites or complex applications that PHP would be great as a presentation layer and Java (ie servlets) would be great as the business logic and DB access. I would rather have java servlet handling complex logic on the backend then a php script.

    --
    no sig yet
  103. Re:Pardon me while I unroll your eyes by Mateo_LeFou · · Score: 2, Interesting

    TFA has a perfect example of andreessen using the right tool for the right job: "Andreessen, who just helped launch a start-up called Ning for sharing photos, reviews or other content online, acknowledges that Java has its place. "'My new company is running a combination of Java and PHP. This is something I get no end of crap about,' he said of the technical decision. 'We have a core to our system that is built in Java. It is more like an operating system, like a system programming project. Then we have the entire application level--practically everything you see is in PHP.'"

    --
    My turnips listen for the soft cry of your love
  104. Have to chime in here as a new Railer... by 5n3ak3rp1mp · · Score: 2, Informative

    I know this is about PHP but as a long-time web developer, I'm sure a lot of other web devs will be reading this, so here are my observations on RoR.

    I've started my first small-scale Ruby on Rails project, having done work in the past in ASP, .NET and PHP. Here are some thoughts.

    1) RoR may be highly buzz-worthy but it is certainly NOT a panacea. It has a definite and slightly steep learning curve, especially if you are also new to Ruby and/or OOP and/or MVC (I am sort of but not completely new to all of these). You will still have to do the work of developing your application- you just won't have to do the "stupid" kind of work that much (repeating code in views, bubbling new database fields through umpteen app tiers to the surface of your app, hand-validating everything, building a mechanism to bubble errors or notifications to the surface, etc. etc.)

    That said...

    2) I can see that if I can get past the little syntactic things that are currently tripping me up, a lot of the RoR technology (and all the assistance its framework provides, once you get to know it... again, that takes time) helps to make web development a breeze.

    3) MVC certainly seems like a pattern to seriously consider for anything other than a small web app. Mixing code in the presentation layer is not the way to go if you want easy unit testing, separation of view from code (so your graphic designers can go in and do their thing separately), arbitrary mixing of controller code with different views, etc.

    4) Ruby itself is a pretty great language to code in and highly readable. It has a few quirks (doesn't every language?) but if you are aware of them then they won't get in your way. Some of the things I like about it were apparently "borrowed" from Perl (as I never really got that into Perl). If you are not a static-typing purist, I'd say check it out on its own.

    5) Installing some Ruby/Rails components that depend on each other is not at ALL as painless as it should be on OS X. For example, I'm currently having issues with RMagick and GraphicsMagick even though I followed a guide I found online, to the letter. I think the darwinports, fink, and rubygems people should get together and work some shit out, as all the different default paths these packaging/deployment tools install their stuff to causes mutual interdependencies to sometimes fail. I've also seen some MySQL issues that will require good troubleshooting to resolve, for some people- some of it is based on incompatibilities with GCC 4.0, or between the password hashes of different MySQL versions, or... Basically, this is all stuff that as a Rails scripter (as opposed to a C++ programmer) you wouldn't want to focus too much time on. If you want to know what I'm talking about just google "rmagick 'os x'" or "mysql rails 'os x'" and read up. That said, if you can get a good host with good Ruby/Rails support, you might not need to worry about such things... Unless you want to develop locally on that shiny Powerbook (grrrr). You better be a good troubleshooter, as Google won't get you out of EVERY bind!

    6) The people on the #rubyonrails IRC channel on freenode are generally helpful, but not at all hours of the day. It also helps if you put up small PayPal rewards to get someone to help you over those time-sensitive humps ;)

    7) Managers at big corporations (such as my employer) who have been out of direct touch with technology for a while will only tend to recommend the "usual big stuff"- in this case Java/EJB/Oracle, or .NET. I suppose this falls under the "Nobody ever got fired for recommending IBM" paradigm, but the si

  105. If only you were right... by bluGill · · Score: 1

    Sadly I have to work in the real world. I have never seen a hiring manager who wasn't looking for specialization no matter what.

    In the real world you shouldn't even bother to apply unless you have 15 years of Java and 5 years of .net. The people who make this decision are high enough to enforce it, and also high enough that they don't need to know details like not even the creators of Java have 15 years experience, and .net is not yet 5 years old. So only liars can get a job.

    I found an exception to that rule, and that was only after looking for a long time. I wish I had a clue where I could find another, as they are not profitable (yet they claim) so my job is potentially in danger should the investors pull out which I've seen happen before.

    1. Re:If only you were right... by Anonymous Coward · · Score: 0

      I had a friend who looked for a .NET development job before, and he showed me a newspaper ad that asked for 5 years of .NET experience.
      Trying to give some hint to that clueless employer, I wrote a letter to the employer asked if he mis-printed it. The response went like this: "Oh ya, we are actually looking for a 3 years .NET experience and / or 5 years for the beta version".
      I bet he still does not know what he was saying...
      For your information, that happened in September 2004.

    2. Re:If only you were right... by commbat · · Score: 1

      It's possible that they're actually LOOKING for liars. In a future wrongful termination lawsuit all they have to do is pull out the old resume and prove the plaintif a liar, case closed.

      --
      'Intellectual Properties' are uncontrollable in the wild. To base an economy on them is just stupid.
    3. Re:If only you were right... by heinousjay · · Score: 1

      Yeah, probably the way you're going to fire someone is what you should be thinking if you're in the process of hiring them. Obviously qualifications are a distant second.

      --
      Slashdot - where whining about luck is the new way to make the world you want.
  106. shared-nothing architecture? What? by irritating+environme · · Score: 1

    "I'm not sure what other large-scale features you're referring to, but don't you think that a centralized Java application server is far more of a bottleneck than the shared-nothing architecture that PHP uses?"

    You knowledge of PHP libraries aside, that statement betrays your architectural ignorance.

    PHP is a dynamic page generation platform that accesses a database. The bottlenecks aren't magically solved by PHP koolaid. With a strong preference for a sub-enterprise database that won't easily scale. You totally don't know what you're talking about

    As for the libraries, are all those libraries cross-platform? Ah nevermind, cross-platform is for "niche" technologies, "niche" platforms, and "niche" web sites.

    --


    Hey, I'm just your average shit and piss factory.
    1. Re:shared-nothing architecture? What? by scotbot · · Score: 1
      PHP is a dynamic page generation platform that accesses a database. The bottlenecks aren't magically solved by PHP koolaid. With a strong preference for a sub-enterprise database that won't easily scale. You totally don't know what you're talking about

      Sub-enterprise, eh? You mean like Oracle which now supports PHP. OR maybe MS SQL, too, for example. Alas, maybe you don't know what you're talking about either.

  107. I can't believe you just said that. by Marc2k · · Score: 1

    "Hmmmmm, he knows Php...We should pay him more."

    That made me spit coffee all over my desk. Why on Earth would a company pay you more because you're familiar with a technology that is both ubiquitous and extremely easy to learn? Instead of doing that, they could pay you the same, and pay someone equally as versed in PHP right out of high school for $9/hour. Then they'd even have concurrency, so that you could attend to more pressing matters that [presumably] the high school kid could not.

    --
    --- What
    1. Re:I can't believe you just said that. by Agarax · · Score: 1

      There is a difference between knowing PHP and knowing php.

      --
      Remember folks, slashdot doesn't have a -1 "disagree" moderation!
    2. Re:I can't believe you just said that. by mforbes · · Score: 1

      Yes. The kid fresh from high school knows PHP. Those who make a living off of it grok PHP.

      --

      Allegedly real newspaper headline from 1998:
      Man Struck by Lightning Faces Battery Charge

    3. Re:I can't believe you just said that. by ShieldW0lf · · Score: 1

      Yes. The kid fresh from high school knows PHP. Those who make a living off of it grok PHP.

      I don't think you need to grok PHP to make a living off of it. You just need to be able to sell it convincingly. From what stats I've seen regarding the failure rate of IT projects in recent history, you don't even need to be able to make anything with it that works.

      --
      -1 Uncomfortable Truth
  108. Silly argument by pavera · · Score: 2, Informative

    Ok, I've been developing for 12 years now, and almost purely web development for the last 4. I generally use PHP for what its good for (page generation, presentation layer type stuff), and use xml-rpc or SOAP from php to connect to java, python, perl, or c++ whatever has the best libraries/capabilities/ease of use for what I'm trying to do. I've actually moved almost exclusively to python as my backend/business logic language of choice, but Java worked fine for this purpose 3 years ago too. To me, setting up struts, jsps, all that garbage is a ton of overhead that a simple soap/xml-rpc setup easily replaces (and in my experience php + soap/xml-rpc + languageX is faster than an all java setup). PHP then can do what its best at, my frontends are very lightweight, and load almost as fast as static html, and I use a real language for logic and libraries etc. Now maybe this new PHP Framework will provide some classes and things that would be useable on the backend, I dunno.

    The setup I use is basically the J2EE model, except I get the best of all worlds, because I can access code written in any language seemlessly, use n-tier architecture without even thinking about it, use advanced cacheing libraries available in the higher end/heavier languages, and because the backend code is running as a daemon running a soap or xml-rpc server, I sidestep the whole perl/python interpretter startup bottleneck.

    It's not about which language is "best" its about what tool gets the job done.

    1. Re:Silly argument by chez69 · · Score: 1

      that soap/xml-rpc call has overhead associated with it. JSPs aren't that bad to code with, and everything can be a local function call.

      --
      PHP is the solution of choice for relaying mysql errors to web users.
    2. Re:Silly argument by pavera · · Score: 1

      obviously there is overhead associated with it, however having to run a java app server (like jboss, or even just tomcat) so that jsps work, has a much larger overhead hit (150-300MB of RAM used at the very least). Java can be fast for some things, but I've yet to see a truly high performance app server (tomcat, jboss, websphere, are all dogs compared to a simple SOAP/xml-rpc client/server setup in any language).

      Further, if you're trying to make all local calls, then your app isn't scalable. My apps by default have n-tier clustering built in all the time. You're site grows, you need to handle 1 million hits a day now... drop a couple more 2k boxes in there, move a couple services around, no new code to write, just works.

  109. PHP is great, for simple things. by bigtangringo · · Score: 1

    I used to use PHP, now I'm stuck with using PHP for those applications. God help you if you ever want to break out of the LAMP paradigm is all I have to say. I can't even begin to articulate why I loathe PHP so much anymore, every time I look at the language, my loathing only grows. Kids, please, go (really) work with some Java. You'll thank me later.

    While you're at it, don't use any templating engine. XSL has been around, it's great. Use it, love it.

    --
    Yes, I am a smart ass; it's better than the alternative.
  110. Coldfusion Gets no Love by Anonymous Coward · · Score: 1, Interesting

    I dont understand why people never give coldfusion any love. If you want to be able to make rapid applications that are scalable, learn it. It's learning curve is low and because you can use Java to extend it, it can go a long ways. But if you want to write 12 lines of code to do what it takes 3 in Coldfusion thats your business, but you may also want to stay away from Ruby on Rails then also.

    Ohh but you got to pay for it so that may be the problem.

    Ok now you can continue and if anybody wants that can throw in the old "Coldfusion is not a real language."

    1. Re:Coldfusion Gets no Love by Anonymous Coward · · Score: 0

      Hmmm... as you said, having to pay for it doesn't help.
      But I guess the problem is that it aims to a niche that is very hard to find.
      Usually, programmers want something powerfull and flexible enough to work with, and perhaps CF is too high level for them. I mean that it's level of abstraction could be more an annoyance than a help for someone who knows programing.
      On the other hand, you could say that it's a perfect fit for someone with no knowledge of programming, but honestly, have you ever known any non-programmer fiddling with databases and dynamic web sites?

      I think that once you know what's a database and how to build a relatively simple dynamic website, learning to program is not that hard.
      At least that was my experience.
      I first started using wizards (like FrontPage database wizard), or Dreamweaver, and soon realized that so many tools to make my life easier where making it harder instead...then I learned ColdFusion and, after that, I only needed a few minutes with a php tutorial to start grasping the basics of programming...

      A few days later, I discovered Python and saw the light... Alleluya!!

  111. very w00table by EddyPearson · · Score: 1

    This is great, soon i'll be able to hack up windows apps in php!

    --
    You feel sleepy. Close your eyes. The opinions stated above are yours. You cannot imagine why you ever felt otherwise.
  112. How about the best tool for the job? by MarkWatson · · Score: 1

    I am somewhat known as a Java guy (written 5 Java books, and try a web search for 'Java consultant' and check out the first non-paid for link :-) but I still get tired of Java developers who think that Java is the best tool for everything. Same goes for Python/Ruby/PHP/Lip/Smalltalk, etc.

    For very simple sites, PHP is great (I have read through the code for a few great PHP driven sites - great functionality, but not best from a maintainability and architecture point of view). Ruby on Rails has some great features (I love the architecture of RoR, love the way model classes are mapped to .rhtml views, etc.) and RoR makes a lot of sense for some projects. Java on the server rocks, big time - for some projects.

    I think that developers should look at themselves as problem solvers and craftsmen and as such try to use the best tools without preconceived biases.

    -Mark

  113. Re:There's no reason to put logic into presentatio by vidarh · · Score: 1
    If you are writing code that "represents the data in some kind of data structure that just needs to be displayed" that code is part of your presentation layer. Either that code is what decides what goes on the web page, in which case it's part of the presentation layer, or it doesn't, in which case logic somewhere else needs to decide what goes on the page.

    Either way, unless all your applications always return static web pages, there - per definition - is logic in your presentation layer or there would be nothing there and it would be kind of useless to talk about "presentation layer".

  114. Rhetorical Questions by Anonymous Coward · · Score: 0

    Look at your "desktop" on you computer (Linux,Windows,Mac ... whatever).

    How many apps running are written in C/C++ ?

    How many are written in Java ?

    How many are written in PHP ?

    1. Re:Rhetorical Questions by thomas.galvin · · Score: 1

      Look at your "desktop" on you computer (Linux,Windows,Mac ... whatever).

      Mac.

      How many apps running are written in C/C++ ?

      Almost none. Objective C is the rule on a Mac.

      How many are written in Java ?

      Almost all the rest. All my custom tools and apps are Java. My text editor, my checkbook, my Bible software... all Java.

      How many are written in PHP ?

      Only the stuff I used for my website. I can do some nifty document handling with it, so I use PHP and the built-in webserver to keep track of my articles.

  115. What about the long run? by RAMMS+EIN · · Score: 4, Interesting

    I have to wonder about the long run here. When I work with Java, I find it a pain to work with, because of all the required boilerplate and the inflexibility. Things have probably gotten better with Java 5, but Java has been a pain in all the years before it.

    When I work with PHP, I find it a pain to work with, because of its apparent lack of design. It feels like a cobbled-together heap of features and hacks, and so does the code written in it. I tend to write cleaner code than what I've seen from other people, but that doesn't make the final product any less messy when various people have worked on it.

    Neither language is absolutely horrible; comparing them to others, Java is a language with a relatively clean design, and PHP is a good choice in its niche of writing web applications. However, my pain in working with these languages is a direct result of these languages being poorly designed. I'm into programming languages, and I know many that have better designs than Java and PHP. I wonder if these languages won't take over in the future.

    Some changes are happening already. Various organizations are moving away from Java for web applications, and I know others that would do well to do so as well. Much of the work that went into PHP 5 comes from a realization that earlier versions were flawed (the same can be said of Perl 6). Ruby appears to be on the rise. Paul Graham and others have had good results employing Common Lisp for web applications.

    The only thing I can see standing in the way of better languages taking over the web application sphere is the fact that the decision making process is based more on fame than on qualities. I maintain that Java has become so successful largely because of the enormous hype surrounding it. PHP, Linux and MySQL have also risen largely due to hype. Of course, it's true that you won't overly disadvantage yourself if you use whatever most others use, but it would still be better if decisions were made based on sound knowledge of technical benefits.

    --
    Please correct me if I got my facts wrong.
    1. Re:What about the long run? by ubeans · · Score: 1

      The only thing I can see standing in the way of better languages taking over the web application sphere is the fact that the decision making process is based more on fame than on qualities.

      Actually the decision to use one language is more based on availability of information and of skilled resources in the workforce that are trained on this language, coupled with good development tools (Eclipse) and the availability of existing, reusable code. Nobody builds projects from scratch nowadays. I personnally believe in evolution, not revolution.

    2. Re:What about the long run? by Tablizer · · Score: 1

      Paul Graham and others have had good results employing Common Lisp for web applications.

      Paul G.'s app was to run many small storelets. Most applications don't have a bunch of small independent things but rather interrelated. So I am not sure that is a good test.

      Second, Yahoo has reworked a lot of the CL code into other languages I hear (although some dispute that).

      Paul G. claims that Lisp code is simply smaller (less code) and that is one of its alleged selling points. I have yet to see a decent demonstration for practical applications.

  116. It's About Time... by ThinkComp · · Score: 1

    I contacted Andi and Zeev two years ago about the possibility of a PHP framework geared toward business use. The response I received at the time said that it was an interesting idea-yet one that Zend still didn't find interesting enough to pursue. I followed up with them throughout 2004 and 2005, and was constantly given the runaround by various Zend employees. I submitted a talk idea earlier this year for the Zend conference on my PHP framework, and was rejected. (I wonder why.) At a previous conference, one Zend rep told me, "we're a difficult company to work with. You don't wan't to work with us."

    Now, Zend wants everyone to work with them. It's too little, too late, I'm afraid.

    I'm going to push Think's Lampshade non-OO PHP framework as hard as I can. Contrary to Zend's claims, it is simple, possibly the simplest one out there, and it isn't restricted to one particular industry. (If it were, I'm not sure how educational loan officers, medical researchers and T-Shirt distributors could all be using it at once.) In the meantime, we'll see if Zend's vaporware ever materializes.

  117. Marc Andreessen - director of Zend Technologies by Anonymous Coward · · Score: 0

    Zend Technologies expanded its board of directors with Netscape co-founder Marc Andreessen and Guarav Dhillon, who was founder and CEO of data integration software maker Informatica. Zend makes development tools for the open-source language PHP.

    Full article

    I'm sure that being a director of Zend Technologies does not make him biased in any way.

  118. Small proyects to big proyects: From C to PHP. by bubulubugoth · · Score: 0

    PHP as any other language, has its pros and cons. Back in the old days, when I was starting to develop for Windows, the OWL borland library was a plus, but there is always the awful presentation layer. Ergonomy of GUI is something unexplored now. The downbar left button has become an standar, but is it: Rigth? Always the presentation layer is a pain. Then you have a system: Web applications, that you could leverage the GUI to graphical designers, wich dont have the twisted mind of a developer. Create visualy rich applications, easy add of eyecandy, easy to make it work coding, this was PHP bringed to the Web... There was C based CGI, JSP pages, both of them, where from "those things are difficult" and posed a mental barrier to those "brilliant" designers. PHP presented as: Personal Home Page, something without strange names as "strict typing", "pointers", "standar input", or so... Thats why PHP gained so much terraing against any other languaje, and PHP is a specific purpouse language, so as a language, the documentation found at internet, is much more specific, and also PHP was very fast absorbed by the newly hungry of identity "internet developers"... and with out very much fuss... PHP becomes a standar, almos the facto, with out much things to learn, like C, and with out distribution issues as Java... Linux also evolved this way... When you where entering the world of Linux the easy thing you could do at your new linux installation was: Develop PHP with Mysql. Both at the distribution... A new market, for a new paradigm.. thats why PHP has become a wide used language. And for scalability: Bad code scales well in PHP, Bad code doesnt scale at Java/JSP, and Bad code is impossible to scale with C/C++/C#/C-anything. There are thing that PHP is missing when talking to Industrial strength applications... but for the 50/60% of the market, the micro, small and medium market, that wich provides food and shelter for about the 90% of the world population, isnt so important. PHP belongs to the ecology of Linux and Internet. It will be there, until Linux flops, and the Internet breaks...

    --
    Â_Â
  119. Dear Programming Populace, by Marc2k · · Score: 1

    Please stop confusing "hacking" with "writing simple blog/shopping cart/cms engines that only need to perform CRUD operations on non-optimised databases in such a manner as to forever forego modularity, reusability, and readability."

    All my love,

    Marc

    --
    --- What
  120. Programming tools? by Mike+McTernan · · Score: 3, Insightful

    > Indeed, many credit Microsoft's success to its highly
    > regarded programming tools, which make it easier for
    > developers to write software that run on Windows.

    Bleh. Windows doesn't even come with a compiler.

    I think that's probably why a lot of developers like Unix so much - most systems come with a compiler as standard and the man pages give you all the APIs you need. Grab your favourite editor and off you go!

    --
    -- Mike
    1. Re:Programming tools? by Anonymous Coward · · Score: 0

      Don't you think anyone who knows how to use a compiler knows how to find and install the one Microsoft offers (for free)? If you feel victimized just because you have to go to a website and download a 32MB installer, you probably don't have the temperament to be a programmer.

      More to the point, I don't know any developer who chooses his/her development platform based on the initial availability of a compiler. Honestly, can't you think of a large number of far more important considerations without even trying too hard?

  121. its confirmed! by spazdaqx · · Score: 1

    Legos better than wood for building plastic houses.

  122. Java Failed? by Ranger · · Score: 1

    Surely you jest. Java was supposed to be our saviour. Our killer app. At the very least, our Microsoft killer. It was supposed to lead us to the promised land of write once, run everywhere. It was supposed to be fast. Now this upstart, PHP (Putting the Hype back in Programming), comes along and succeeds where Java has failed?

    Of course, no slashdot discussion would be complete without the obligatory Ruby evangelists chiming in with their posts. I haven't seen that sort of zeal since the disappearance of the undead Amiga fans. They want to railroad us into using Ruby.

    I'm still a big fan of Perl, but for web work, PHP gets the job done for me. I'm looking into Python which seems to be easy enough to learn, but it's spawned that beast Zope which takes a long time to tame if I want to do any serious web work with.

    Java, PHP, Ruby, Python, Perl, VB, C#, and ASP all have their supporters. And other than saying what I think, programmers trying to persuade other programmers what language to use is a waste of time. If you think I'm being a troll. This whole fucking story IS a troll. We all have different learning styles. We have to use our judgement on what programming tool is going to work best for us. For some people it's the Microsoft paradigm, for others it's the Java paradigm, and for those of us who want to get work done it's the C++, PHP, Perl, and Python paradigms.

    --
    "You'll get nothing, and you'll like it!"
    1. Re:Java Failed? by the+eric+conspiracy · · Score: 1

      PHP gets the job done for me.

      I am sorry, but I have worked on PHP based ecommerce sites written by a team of programmers. I HAVE NEVER SEEN REAL WORLD PHP WEB APPS that don't suck giant donkey dicks! The only thing worse is some of those early 1995 sites written in CGI Perl.

      There is No NONE NADDA culture of acceptable programming practice in the PHP space. Thank god some of our customers insisted THOUSHALTDELIVERJAVA to us. It enabled me to learn Java and land a real job that paid enough to feed my family before the PHP shop I was working for went bust.

      Now maybe PHP can be used to write good code. But I consider that to be a pie in the sky theoretical possibility much like time travel, dark energy and space warps. It would be great but you won't see it in your lifetime.

      And I *SURE AS SHIT* don't want to try to make a living working on code like that.

      More recently I have been looking at mod_python. Now that I could see using to build lightweight web sites. Once it matures a bit.

      But php? BLLEEECCHHHH. In practice its use leads to all the wrong sorts of things. Tierless designs with presentation, business logic and persistance all happening in the same goddam file. Worse than old spaghetti code you see in old BASIC programs because the cruft is multi level.

  123. PHP easier? by Anonymous Coward · · Score: 0

    Php was succesfull, and also discredited, because it was way easier than Java.
    But now Zend managed to make it just as complicated as Java, so I expect it to get some more respect...

  124. out of all this i've learned only one thing by vena · · Score: 1

    PHP sure makes people angry. is it somehow threatening or what? how does it affect YOU if some guy writes buddy PHP for his website? how does that even reflect on the language, when it's perfectly capable but the programmer wasn't?

  125. Any money in PHP programming? by walterbyrd · · Score: 1


    Not from what I can see. I have not investigated it in any depth, but it looks to me like the lowest paid java developer is paid about the same as the highest paid PHP developer.

    On denver.craigslist.org, I have seen ads for php/mysql developer jobs starting at $6.50 an hour.

    Just my casual observation.

  126. Re:Microsoft tools make it easier? by D3m3rz3l · · Score: 1

    I agree that FrontPage is pretty bad, but I think the article was referring to Microsoft's desktop application programming tools, hence they said "make it easier for developers to write software that run on Windows." Although a lot of people deny it, Visual Studio .NET is really an excellent piece of work. The C++ compiler is more standards complient than the KAI compiler (which is often touted as the most standards complient C++ compiler around). Personally, I used to detest both C# and Java but recently I've been doing some work in C# and it's quite effective and productive if you are sticking to a Windows environment. On the other hand, I work in graphics where speed is important, so I treat C# as more of a prototyping tool, and then convert to C++ ("classical", NOT "managed"). Visual Basic is good for really rapid prototyping I suppose. I used VB 3.0 in 1993 and quickly outgrew it, although people say that Visual Basic really came into it's own after version 5.0. Personally, I'm never going back to any variant of Basic. On the other hand, I am not a big fan of ASP.NET. I don't know anything about web applications development, but I presume that if you are coding stuff in ASP, then you need to be hosting the website using IIS. Although I really don't know; does Apache etc support ASP.NET in some form of emulation or something?

  127. you're 2 years off -- try March 1997 by Stu+Charlton · · Score: 1

    The Servlet developer's kit was originally released in beta on March 4, 1997 (see timeline), with the 1.0 release of the Java Web Server on June 5, 1997. I remember putting a servlet-based application into production in Autumn 1998.

    Even JavaServer Pages was released before that date, on June 2, 1999 -- and there was JHTML before that from ATG.

    --
    -Stu
  128. Too little too late by Trails · · Score: 0

    Given the comprehensive suckiness of .NET, I could see PHP taking a chunk out of their market, but the Java web-app market tends to be entrenched large-scale corporations and enterprises. These companies tend to be invested in Java-based web apps to the tune of several million up to several billion dollars. PHP will not make a dent.

  129. Define Web Application by WMNelis · · Score: 1

    I am not quite sure why people keep saying PHP will replace Java. PHP is a web page scripting language. This is roughly equivalent to Java's JSP, not Java as a whole.

    This being said, I certainly welcome any improvement over JSP. This being said there is no reason PHP and another language cannot work together. Generally it is considered poor design for large applications to be written entirely in the web pages. There is much more going on in an application than the View (ie. the Model and Controler in an MVC architecture). For example, let's your application needs to update data based on the reciept of an asynchronous messasge. It would be poor design to have the pages wait for this message. Instead you would build a component on the "back-end" that would handle this update to the database for you.

    PHP is ill equipped to handle this type of scenerio. This is not a dig on PHP, but PHP is not intended for this. The "back-end" code that handles this asynchronous update could certainly use PHP as its user interface.

    Anyhow, this is why I do not believe PHP will overthrow any language other than page scripting languages like itself.

    --

    Sig free since 2/6/2002
  130. Re:PHP: good for admins, not so good for developer by bmalia · · Score: 1

    At the same time in Java you don't have such a wide selection of free tools ready to use in a web site, but you do have tons and tons of libraries ready to be integrated in your java web app, which PHP has but in much smaller quantity.

    I found this line interesting. Maybe the usage of PHP on many sites isn't because its better. Maybe its because there is just more publicly available scripts that people can install. For instance, a guy I know who runs his gaming clans website wanted to show off the website he built to me. I was very impressed with it. Had a username/password message board type stuff and a streaming radio and an overall cool design. But upon further investigion, he didn't WRITE the website. He downloaded a CMS package, a skin for it, and added some content through the CMS interface of course. He didn't need to know how to write PHP. He didn't need to even know how to do HTML. As a developer, I just shake my head.

    --
    There's no place like ~/
  131. Good catch by lorcha · · Score: 1
    I also thought I had remembered seeing servlets at a job I was at in mid-97 (doing server-side perl coding, ironically enough) but I couldn't find any references in 5 minutes of searching Sun's website.

    My point still stands, however. PHP came first.

    --
    "Avoid employing unlucky people - throw half of the pile of CVs in the bin without reading them." -- David Brent
  132. PHP 5 by loconet · · Score: 1
    It is worth mentioning that PHP 5 is catching the attention of more and more java developers as well. Frameworks like
    • Mojavi (MVC framework ie: Java Struts)
    • Propel (ORM framework ie: Apache Torque / Hibernate)
    • Prado (Component-based and Event-driven framework ie: asp.net)

    are helping PHP move from being a micky mouse scripting tool for joe web designer's guestbook to a tool used to create full blown web applications.

    --
    [alk]
  133. So you wrote a couple of toys in java by Anonymous Coward · · Score: 0

    C'mon ... "objective c" is very close to C/C++ and just Apple's attempt to proprietize the language.

    "Text Editor"
    "CheckBook"
    "Bible Software".

    Cripes. Java is toy building language. It'd be the new pascal but it's 10 years old now.
    It's the new basic.

    1. Re:So you wrote a couple of toys in java by Anonymous Coward · · Score: 0

      I thought the same thing in high school, yet now I am a J2EE developer making more money than C/C++ developers with years more experience. J2EE makes scalability and security straightforward and halves development time compared to C++ with CORBA. That's why all the banks, brokerages, and investment firms use Java on the backend. Maybe Java's a toy but only because it's fun.

    2. Re:So you wrote a couple of toys in java by larry+bagina · · Score: 1
      C'mon ... "objective c" is very close to C/C++ and just Apple's attempt to proprietize the language.

      Objective C was created by Stepstone, it had nothing to do with Apple before The Apple/NeXT merger.

      Anyhow, to back up your point, a lot of Macintosh software is still C/C++ based... iTunes and Finder for example.

      --
      Do you even lift?

      These aren't the 'roids you're looking for.

  134. Analogy by Anonymous Coward · · Score: 0

    PHP and Java are like two women: one is fast and easy, but the other is much better for a long-term relationship.

  135. I won't step into the language wars here, but... by smagruder · · Score: 2, Informative

    PHP-based applications can be great if designed by good programmers.

    For proof, just look at some of the projects using PHP: Mantis Bug Tracker, PHPMyAdmin, MediaWiki (Wikipedia), several top discussion boards, Friendster, reportedly apps by Yahoo, and countless others.

    These are HIGH-QUALITY web applications. Of course, great things can be done with other platforms, but it's nonsense to slam PHP because "it's so easy that non-programmers produce a lot of crap code with it". The proof that it's worthy is in the *best* apps that are produced, not the worst ones!

    --
    Steve Magruder, Metro Foodist
  136. J2EE Sucks by multipartmixed · · Score: 4, Funny

    I don't write in either Java or PHP -- I'm a Grade-A C-slinger -- but here are my REAL-WORLD experiences with both platforms.

    C Coders perspective:

    PHP - I wrote some objects for PHP5 about eight months ago. The documentation blows, I had to use gdb and a notepad to figure out some of the idiotic details for accessing the symbol table and so forth. The Horrible, horrible dangling-if-macros are terrible. Took 3 days (from "I know nothing" to "I'm done and debugged").

    Java - I wrote some JNI interfaces. Actually, they interfaced to the exact same code as the PHP5 modules! (Making a useful C library, encapsulated in C++ objects usable across Java and PHP platforms). Easy stuff! I used cxxwrap. Took 1 day.

    Manager's Perspective (I wear that hat, too): PHP is pretty cool, as long as you treat it like a programming language and perform proper data abstraction, code layout, blah-de-blah. "Web guys" need to learn awful fast that "Web Programming" had better be treated the same was as system programming, or large applications become difficult to manage. PHP does little to enforce this (hey, just stick some code right in the middle of the style sheet!), but good discipline will solve all of PHP's major problems.

    It's also nice when PHP the guys ask for help, I say "C library function XXXX will solve your problem" or "the underlying OS call behaves this way, that's probably why you're having issues..." and it transliterates directly into PHP. (And I can look at the PHP sources and actually understand them).

    Java, on the other hand -- I can't take my years of experience with the UNIX OS and help anybody coding on Java, because it has absolutely nothing in common with the underlying OS, POSIX, etc. Now, that may not be all that bad, but it's damned frustrating when you plan on doing common, every day operations that work anywhere else BUT Java, and have the platform smacks you in the face.

    For example, say you need to link two different web hierarchies together (say, images from your apache server and the same images in your tomcat container). You'd make a software link, right? OH, NOOOOO, you make a soft link and then you spend the next three hours figuring out why the fuck it doesn't work, because those asshats who designed the platform didn't like them, so you instead have to hunt through cryptic XML configuration files to find out how to turn on some asshat undocumented directive to allow a BASIC FUNCTION OF THE OPERATING SYSTEM.

    For fuck's sake! Now, I suppose the above criticism is more a J2EE criticism than a Java critism, but, if we want to compare apples to apples, .php vs. .jsp seems right on target. So let me enunciate very clearly:

    J2EE SUCKS HUGE DONKEY BALLS.

    Essential redux: Each PHP guy gets more done in a day than two Java guys get done in a week.

    Why? How can this be? Java solves everything except world hunger!

    The Java guys spend three days a week debugging shit that's gone wrong with Tomcat on one server or another. It's always some incompatibility here, surprise-bite-you-in-the-ass-there. Two applications on the same server use the same JAR file, so the containers refuse to load. That sort of thing. Sheer idiocy.

    Then they spend one day debugging shit that's gone wrong with Eclipse (or its mangling of the CVS repository, or some ant dependency problem, or)... then they spend half a day each writing code, and another half day synchronizing their changes. And meanwhile they whine that 256 megs of RAM isn't enough to edit a fucking text file (and do NOTHING else at the same time).

    And Lord help you if you want to add another table to the database and want them to do something as silly as retrieve the data from it and put it on a web page. Apparently, this is incredibly difficult, because it involves creating new hibernate objects, which of course fucks everything else in the ass, well, because, something called hotspot didn't get it's monthly fucking hormone shot or som

    --

    Do daemons dream of electric sleep()?
    1. Re:J2EE Sucks by heinousjay · · Score: 1

      Hey, if all you need is code done fast and you don't care if it works correctly, I'll write you anything you want, in 1 day - 100K.

      --
      Slashdot - where whining about luck is the new way to make the world you want.
    2. Re:J2EE Sucks by drmerope · · Score: 1

      A little embellishment for taste, but overall the point is right:

      Java is "write once, run nowhere"

    3. Re:J2EE Sucks by yomahz · · Score: 1


      The Java guys spend three days a week debugging shit that's gone wrong with Tomcat on one server or another. It's always some incompatibility here, surprise-bite-you-in-the-ass-there. Two applications on the same server use the same JAR file, so the containers refuse to load. That sort of thing. Sheer idiocy.

      Then they spend one day debugging shit that's gone wrong with Eclipse (or its mangling of the CVS repository, or some ant dependency problem, or)... then they spend half a day each writing code, and another half day synchronizing their changes. And meanwhile they whine that 256 megs of RAM isn't enough to edit a fucking text file (and do NOTHING else at the same time).


      Are most of those really J2EE problems or "vendor" problems? Like most things in life, you get what you pay for. I'll agree that it sucks that the editors and app servers are so memory intensive but thankfully RAM is cheap. I know that we're comparing this with another "free" product and my "no such thing as a free lunch" argument doesn't hold up here. Without really knowing the in's and out's of PHP, I can't really say much on that front.


      And Lord help you if you want to add another table to the database and want them to do something as silly as retrieve the data from it and put it on a web page. Apparently, this is incredibly difficult, because it involves creating new hibernate objects, which of course fucks everything else in the ass, well, because, something called hotspot didn't get it's monthly fucking hormone shot or something.


      Ahhhhhh BULLSHIT! Come on now... If my boss comes to me right now and says, "add this table", it's 15-20 minutes from zero to JavaBean, XML mapping, DAO and unit tests done. Hibernate tools will generate most of the code for you. If your developers are telling you different, they're taking you for a ride.


      I am sick and fucking tired of the shit that continuously goes wrong with that monstrous piece of bloatware that takes a zillion fucking days to write "hello, world" in. And the worst part is, I can write shell scripts to massage sql*plus output into webpages [same task as hibernate->jsp] in 1/10th the time with eight trillion times the performance and one billionth of the RAM footprint. Too bad they are too high a bug/security risk to run in production...


      If you don't require transactions (rollbacks for database as well as business logic), pluggable security, clustering (performance as well as fail over), distributed communication, guaranteed delivery, complex workflows, caching, blah, blah, blah J2EE is a horrible fit. That's common sense, day one stuff though right?

      --
      "A mind is a terrible thing to taste."
  137. PHP == Microsoft by Soong · · Score: 1

    I like how that opener draws parallels between PHP and Microsoft. Both frustrate me by their inferiority and their pervasiveness. I always wonder how something so bad became so popular. It feels like there's just something wrong with the Universe when things like that happen.

    I tried PHP a couple times (both my own new stuff and tinkering with downloaded apps like Drupal and Wikimedia), but for anything bigger and more complex than one page, I want Servlets, a real language and a real development environment.

    --
    Start Running Better Polls
  138. Dont overlook the sleeper. by The+Infidel · · Score: 1

    Ruby. Ruby on Rails. gooooood stuff.

  139. Keep in mind how bloated most java shops are. by Some+Random+Username · · Score: 1

    You tend to see 5 java programmers doing the job of a single perl developer (for web programming). Not suprising that people need lots of java programmers.

    1. Re:Keep in mind how bloated most java shops are. by plughead · · Score: 1

      I call BS.

      At the company I work at, we had two Java developers replace a PERL monstrosity that ~TEN developers had vomited up (BTW, we provided them with the base HTML up front.)

      The Java replacement was faster, more functional and just prettier looking.

      --
      If a giant oil company wanted an abortion, would W's head explode?
    2. Re:Keep in mind how bloated most java shops are. by Some+Random+Username · · Score: 1

      So? Who says your experience isn't the exception to the rule? I am working in a java shop right now, and its certainly just like I said.

    3. Re:Keep in mind how bloated most java shops are. by plughead · · Score: 1

      So? Who says your experience isn't the exception to the rule?

      And who says that your experience isn't the exception?

      More to the point, however, I have an actual example of a web app that was first written in PERL, then re-written faster/better/with less resources in Java. There are many factors, like programmer talent, etc., but I think the biggest factor may be the size and complexity of the site. Sure you might be able to crank out a 1 or 2 page site in PERL faster than I can in Java, but I think a highly dynamic site with 20+ pages would be a whole different story (and don't even get me started on maintenance.)

      Having said that, I will say that we avoided EJB like the plague. It seems to be getting more reasonable with version 3, but at the time it was an absolute mess that may well have taken a few extra programmers to deal with the additional complexity.

      In the end, I think PERL, Java and PHP all have their place-- just 'use the right tool for the job'.

      --
      If a giant oil company wanted an abortion, would W's head explode?
    4. Re:Keep in mind how bloated most java shops are. by Some+Random+Username · · Score: 0, Flamebait

      I didn't say anything about java not being useful, quit being so defensive. The fact is people using dynamic languages can code faster than people using java. Or are you going to try to pretend that you can do the same thing faster in C than you can in java? We all know its nonsense, pretending otherwise won't change anything.

    5. Re:Keep in mind how bloated most java shops are. by Anonymous Coward · · Score: 0

      Whether or not a language is dynamic has very little to do with how quickly one can write a significant application.

      It's the functionality and suitability of the platform provided libraries, and the existence of a broad and competant community that creates useful and stable third party libraries.

      PHP, Perl and Java all score very well on all those counts, so it really is just a case of what you feel happiest using.

      I like C, so I use Java.

  140. A good analogy: by RexRhino · · Score: 1

    PHP is the good ol' beat up pickup truck... Java is one of those natural gas delivery trucks that delivery companies in the city use.

    With PHP, you can throw junk in the back, tie it down with bungie cords, and get the thing rolling to wherever you want. Java runs a lot smoother, the trucks are a bit more reliable, but because of the whole natural gas thing there is a bigger investment in getting it up and running... you can't really throw an old refridgerator in the back and take off.

    And neither one is an 18 wheeler big rig, or a sports car!

  141. The thing that should not be by shutdown+-p+now · · Score: 1
    The more interesting thing to do is not to compre PHP and Java, but rather PHP and Perl/Python/Ruby. That's where a lot of questions arise all of a sudden. PHP is - let us be honest - an awful language, by design. The only good thing about it is that it is dynamic (in the same sense of the word that other scripting languages are), but it is shared by most if not all its competitors. As far as the rest of the language goes, it is still vastly inferior to the others. Primitive object model (somewhat rectified in 5.x to bring it to the level of Java, sure; but still nowhere near Python or Ruby), no closures, only one container type... the list could go on and on. Semantically, PHP is closest to bastardised JavaScript with all the nice features thrown away (for the sake of simplicity, no doubt). When it comes to the standard library, it is so horrible it can actually challenge BASIC in that department - hunderds of global constants and functions in a single namespace (granted, the language itself does not provide any namespacing facilities); what, "polymorphism"? forget this silly word!

    The situation is somewhat better on the 3rd-party libraries and frameworks front, but still nowhere near the sheer size of CPAN, or the quality of Python offerings.

    So, then, why PHP and not Perl, Python or Ruby for web programming? My guess would be, because it's available pretty much everywhere, with little to no effort... in other words, much like Windows. And also because it has the reputation of being easier to learn than any alternatives (which is not necessarily true, but that's what the people hear all the time). Is there anything else to it that I might be missing?

  142. Re:Java failed because it's a slow toy. by yezooz · · Score: 1

    Of course it's not suitable for all tasks, but for small- and medium-size web applications should work perfectly... Generally I wouldn't agree - PHP it's not a toy!

    --
    www.w3net.pl
  143. why ignore naming conventions by shmlco · · Score: 1
    "If Java was like this, I could ignore the stupid namingConvention of leaving the first letter of a class member in lower case."

    And why ignore naming conventions? Just so you're code is different from everyone else's, or so someone else familiar with the language and who's attempting to read your "special" coding style has to shift mental gears every time he does so?

    Huh. People say everyone else's code is unreadable. And we wonder why...

    --
    Any sect, cult, or religion will legislate its creed into law if it acquires the political power to do so.
    1. Re:why ignore naming conventions by Doctor+Faustus · · Score: 1

      Because it's a bad convention. Case is too subtle to be putting meaning into it.

    2. Re:why ignore naming conventions by pivo · · Score: 1

      The vast majority of programming languages are case sensitive, it's not just Java. Perhaps if you only know VB or PHP then the subtleties of case sensitivity may be too much, but case insensitivity in a language strikes me (and I'd guess most other programmers) as a recipe for sloppy code.

    3. Re:why ignore naming conventions by pyite · · Score: 1

      Maybe because capitalizing starting with a second word is stupid?

      --

      "Nature doesn't care how smart you are. You can still be wrong." - Richard Feynman

    4. Re:why ignore naming conventions by Doctor+Faustus · · Score: 1

      Of the languages I'm reasonably familiar with, C and its descendents, XSLT and Postscript are case sensitive. VB, Pascal, SQL, Fortran, x86 assembly language and Sparc assembly language are not. Lisp is sometimes. I think I have a wide enough range to say it's fairly even.

    5. Re:why ignore naming conventions by LordoftheWoods · · Score: 1

      Why?

      The convention makes things easier to read. Classes are capitalized, methods are not. The second words and on are capitalized because otherwise it would be difficult to read them. They are also shorter and avoid superfluous underscores. They actually did think about these conventions then stick to them, unlike in PHP. The end result is that code is much more readable.

  144. are there any frameworks for php? by josepha48 · · Score: 1
    Not to be flamebait, but I'd really like to know. Are there any frameworks in php that compare to jsf, struts, or the tag libs?

    In using Java I can create an xml document and xslt and then transform it into all my needed JavaBeans, and then using struts I can create an html page that uses those beans.

    The advantage here is that the struts tags automatically fill them selves on error, so when a user submits a form, I don't have to code if ( $foo != null ) {} else {} and fill in the text boxes and check buttons on a form.

    Also if I retrienve data from the database, I just convert the data from a result set to xml and then to a hashtable and fill my bean from the hashtable. With the filled bean this data is then automaticaly in the page with no work from me. Since all my beans inherit the ability to convert the xml to a hashtable, its a breeze to deal with database forms.

    Currently as a coder I focus on business rules and GUI and not even deal with how things get into the forms.

    Does this exist for php? ( really I don't know )

    --

    Only 'flamers' flame!
    Does slashdot hate my posts?

    1. Re:are there any frameworks for php? by FigWig · · Score: 1

      I just started looking into PHP (somewhat as a result of this article) but I found the following frameworks:

      Seagull

      WASP

      Fusebox

      Mach-II

      --
      Scuttlemonkey is a troll
    2. Re:are there any frameworks for php? by josepha48 · · Score: 1
      Interesting. They all seem like they are based on the Model View Controller, like struts, and other java frameworks.

      One of them has a build.properties file like ant for Java. One had a something.xml like struts-config.xml. It looks more like they have taken the ideas that are already out there for java and copied them to php. It seems like a good idea, but I don't see the benifits of moving from java to php when I have the same functionality available in php that I have in java. I also have lots of gui IDE's for java web coding. I know there are gui IDE's for php, dreamweaver handles both to some extent. So at this point I see them as more of moving toward some sort of equal frameworks. So the real question becomes do you want to code in php or java?

      --

      Only 'flamers' flame!
      Does slashdot hate my posts?

  145. Amazing by electricdream · · Score: 1

    This is the most amazing product ever. It's so well put together and easy to use that Zend doesn't feel they have to document or describe it and so light weight that there's nothing to download! WOW!

    Yes folks once again the PHP admits to being the last player to the game feild with essential technology.

    Remember folks these are the people who can't even standardize the naming conventions for functions in their core language.

    Please go to the frameworks site it's basically an empty shell coated in marketing buzzwords.

    http://www.zend.com/collaboration/framework-overvi ew.php

    --
    -- force and mind are opposites; morality ends where a gun begins ayn rand
  146. PHP vs Java??? by fforw · · Score: 1

    After reading the article I am left with the impression that Marc Andreessen has no real idea what he is talking about. First the article does neither mention JSP nor any of the other relevant technologies ( tapestry, velocity, struts etc. etc.). If Marc Andreessen wants to compare PHP to Java he should do it by comparing it to the different approaches which have many differences in target and complexity. He says Java is "arguably even harder to learn than C++" - again he seems to compare C++ core language to Java plus every library in existence - otherwise I can't understand how he comes to this conclusion.

    Let's focus on PHP vs. JSP. I have done websites in both JSP and PHP. I did not really like PHP. The function naming is a complete mess, it's rather hard to get a decent structure into it and I hate languages that use special charactes to prefix variables. For me PHP is only advisable for websites with a really low functional complexity.

    JSP is quite nice when used correctly - which would include renouncing scripting expression inside the JSP documents. ( there is no real difference between <?php echo $foo ?>, <?= $foo ?> and <% out.print(foo) %>, <%= foo %> ). Instead just use custom tags and EL expressions, mix it with some MVC features and you have a decent structure, a clean separation of code and layout with a nice declarative interface. You may want to add some autogeneration of descriptor files to ease development. (or just use japano my webapplication framework which coincidentially contains all that features ;)

    Yes, it is a little more complicated than JSP, but simplicity isn't everything.

    --
    while (!asleep()) sheep++
  147. Thank goodness by ksc · · Score: 1

    Does this mean we can FINALLY put that Java crap where it belongs? In the trash?

  148. quality by nostriluu · · Score: 1

    I've used both php and java extensively. Java is just designed better to support code quality. For all the technical reasons people have given here.

    Using an IDE like eclipse, you can manage a very large project, with tens of thousands of lines of code. This is what java is designed for, and where many projects end up going. You can change one line of code, and instantly see how it affects the rest of the code. You can drastically and /safely/ redesign entire suites of APIs. You get very high quality feedback on how you are using the language. This is all because of the features of Java like strong typing.

    Java is designed as opposed to being very organically evolved, and this means a lot (especially, excuse me, considering where PHP comes from - personal home pages).

    Sure, its sometimes a pain to deal with more conditions of doing something (is it an empty string, is it null, is it a 0?), but I don't mind for the sake of having my code be explicitly safe, when you consider that ultimately code is designed to be executed reliably.

    Maybe with all its redesigns PHP will one day have the quality of java, but its going to take a while and I have a feeling it will just end up reinventing the wheel.

    One of the main drawback with Java is there's not yet any complete open version of Java, but there are several on their way from orgnizations that are going to come through.

    The other drawback of Java is there's an abundance of complex high level web frameworks, but this makes it a very responsive environment and once you've climbed on top of a heap of APIs you'll find you can surf any contemporary trends fairly easily.

  149. You're kidding, right? by Peeptophe · · Score: 0

    I can't believe the number of Pro-PHP developers on /.

    You're all joking right? I mean, how can you rip the hell out of Windows being a security risk then turn around and talk about the beauty and wonderment of PHP?

    Sure, apples and oranges, OS and Scripting language

    But seriously, PHP? Talk about a buggy security risk.

    And how about all the MAJOR changes between MINOR versions? If you develop something for PHP today it is unlikely it will work with the next version.

    The list goes on.

    The point being that the complaints all the Linux users make regarding Windows can apply to the main scripting language Linux users (I'm sure the majority of Websites developed with PHP are running on a Linux box compared to Windows) develop their web applications with.

    Ironic. Pot, kettle, stfu.

    --
    * Si hoc legere scis numium eruditionis habes *
  150. Re:PHP: good for admins, not so good for developer by migurski · · Score: 1
    The API changes a lot, very fast. This is not good. From PHP 3.0 to 4.0 things break and new stuff gets added so fast some sites have to keep using PHP 3 in order to avoid spending many hours recoding old code. Now PHP 5 is a new language altogether.

    Fast??? PHP 4 was released 5 1/2 years ago. PHP 5 was released 1 year ago. 4 1/2 years of stability is hardly what I'd call "fast", and I was using PHP all that time with no major language-driven changes to my code needed. Even now, PHP 4 is the most widely-deployed version of the language by far. Contrast this to RoR, which has seen dozens of app-breaking changes in the past year alone, primarily because it hasn't reached 1.0 and is still being heavily modified.

  151. Coffee Mug Vs. Hammer by Strixy · · Score: 1

    How about using the right tool for the right job? how about not giving me the statistics without also giving me the methodology? (And the bias behind them?)

    PHP is a nice, lovely, wonderful tool which I use a great deal.

    Java is a tool that I use as well.

    Sometimes knowing both get's the job done better than knowing only one. But saying that everything shold be done in PHP or everything should be done in JAVA is about as bogus as giving statistics on the usage of web sites employing one or the other.

    Are you counting each web site running Wordpress as a web site that uses PHP?

    I would hate to try and use 100% Java to do a blog interface - I would, however, employ a Java wysiwyg editor.

    Using a coffee mug to tap a nail into a wall to hang a picture will work, but I wouldn't want to build a fence with one. I certainly wouldn't want to drink coffee out of a hammer.

  152. PHP vs Java by spacemky · · Score: 1

    Maybe easier and more widley used but not as scalable or robust.

    "The simplicity of scripting language PHP means it will be more popular than Java for building Web-based applications"
    Is it really a popularity contest? That's really funny.

    If everyone was jumping off of bridges would that make it the best thing for a person to do?

    --
    640YB ought to be enough for anybody.
  153. Dreamhost supports PHP 5 by timealterer · · Score: 1

    Dreamhost, the ever-popular cheap geeky webhost, has supported PHP 5 for a while. They actually give you an option between PHP 4 and PHP 5 in their control panel on a per-domain basis.. that's the way they do business.

    --
    - Allen Pike
    Altering time, one time at a time.
  154. Programming Background by bigdadro · · Score: 1

    Is there any relation between education and preference over language. I know my school really pushed JAVA so that is what i use. I learned OOP concepts on it so Java just makes more sense to me. When I need to do simple web stuff I'll use Bluedragon CFML over php for that same reason. I can natively invoke java classes in CFML. (Can you in php?).

  155. well duh by Anonymous Coward · · Score: 0

    well duh, java sucks

  156. Silly slashdotter.. by Anonymous Coward · · Score: 0

    Silly slashdotter, datatypes are for elitists.

    But seriously, can someone tell me again just exactly -why- PHP would -need- datatypes?

    1. Re:Silly slashdotter.. by Anonymous Coward · · Score: 0

      I dunno, maybe to mirror the data models in your database to make your code easier to understand, or possibly a decent xml parser? Have you ever tried to maintain 20,000 lines of php? Any language on the planet can use data structures. Granted, you have very little need to create complex trees and such in php since if you need to do anything complex, php probably isn't your language.

  157. Either you example is badly chosen... by ^BR · · Score: 1

    ...or you code sucks.

    Can't target implement an interface (e.g. in you example an interface named Plugin)? The code would become:

    if (target instanceof Bar)
    result = ((Plugin) target).processingFoo(aFoo);

    More readability, more performance. If plugins for you application can implements many different optionnal functionnalities just define more interfaces...

    Really you seem to have serious design problem... Almost the only case introspection is needed for something else than a debugger or some other programmer helping tool is when you don't know the name of the method to invoke, e.g. the JUnit case where it will invoke all method named testSomething() returning void and taking no params.

    If you already know the method's name, make it part of an interface and your life will be easier. I'd be interrested to know why you need introspection in your case.

  158. Scalability and clean code by theolein · · Score: 1

    Java, rather, jsp and struts, hibernate etc may be an enormous pain to set up with ant, maven etc in Tomcat or on BEA or whatever, but they have real advantages compared to PHP as an application grows. Java tends to enforce abstraction whereas PHP doesn't really care. I've developed with both and I've noticed that while PHP is fun for simpler sites, it's very easy to make a nightmare out of it with larger ones. Yes, there are now templates and various PEAR modules and various accelerators but they simply don't compre to Java in terms of maturity or clean code, and for very large object collections, Java is faster by quite a bit. Another really serious problem with PHP is the moving target syndrome where there is little deprecation but lots of dropping of legacy functionality. A company I know has a real problem at the moment in that it is facing serious costs in moving some old PHP code to a newer version, but is forced due to customer pressure to keep some older versions around. It's messy.

    I really like Ruby On Rails approach. It is however too new to be used on critical projects. It lacks certain things like precompilation and is still only runnable as CGI.

    All that said, PHP is growing and will no doubt eventually make Java's life difficult as it grows into larger applications and becomes more mature, but it might just find that Ruby might overtake it eventually.

  159. MOD PARENT DOWN -TROLL by Viper+Daimao · · Score: 1

    recycled comment here

    --
    "In the game of life, someone always has to lose. To me, if life were fair, that someone would always be Oklahoma." -DKR
  160. sorry the code become by ^BR · · Score: 1
    if (target instanceof Plugin)
    result = ((Plugin) target).processingFoo(aFoo);

    In a not posted version of my comment the interface was named Bar, but since we were speaking plugin I could as well call it Plugin.

    And there was some issues with my R key, I meant "your" instead of "you" at least twice in the parent comment ;-)

  161. PHP Popular? Well - DUH!!! by Anonymous Coward · · Score: 0

    Well, the popularity of PHP is to be expected. Anyone thinking otherwise is a fool. Most beginners can slap something together with it pretty easily, there's all kinds of forums and other projects (gallery and what not) made with it.

    But most importantly - LAMP hosting is dirt cheap. PHP hosting is almost free. Try to find good J2EE/Oracle or ASP.Net/SQL Server hosting for anywhere NEAR that price. Since Windows 2003, SQL Server, Oracle, big name J2EE servers and others cost a fortune... It's never going to happen. That's why only big companies really use it. Do you want to have to pay 100$ a month to host your blog or family photos when LAMP hosting will do (not that you neccesarily like it) and will cost next to nothing.

    Most of these 22 million websites are blogs, personnal sites, small hobby sites, phpbb/vb/ibulletin forums, small business sites and other such things. They don't usually require transactional integrity, high quality code, N-tier design and such (and much less the associated high design costs nor hosting costs). It just isn't google/amazon/ebay or the like.

    Busines wise, I almost never have requests for PHP apps. I make most of my money coding ASP.Net/C# and Java. It tends to pay better too, as most people who want that aren't individuals or small businesses and they can afford to pay more for something solid and well designed.

    99.9% of PHP stuff I've seen was just like most ASP/VBScript stuff: basically a so-so web page and some unappealing scripting language mixed together, resulting in a BigUglyMess(TM). To get anything done, you need all kind of external stuff (PEAR and such).

    It's sad in a way to see how MS has this really good technology (ASP.Net/C#), but it'll never get used very much on the web because of licensing costs (hence high hosting costs). One can only dream Mono will change something to that, but I don't see much webhosts jumping at it (like RoR hosting - it's not overly common)

    It's not like PHP gets used because of it's enterprise grade robustness, language consistency or anything like that. It's just that sometimes simple, quick and inexpensive is what matters the most. Works well for small projects, but it's too bad I can't make a living making PHP pages for individuals at the 50 cents/page they're willing and expecting to pay.

  162. This is news? by Weedlekin · · Score: 1

    A member of the board of a company telling the press that their product is arse-kickingly better than everything else isn't news. It's a press release disguised as an interview, just like all those "interviews" that authors, actors, and musicians suddenly start giving whenever they're launching something new. And guess what? Michael Douglass doesn't sit there on TV saying "Well, Larry, this new movie is the biggest shite-fest to hit the box office in ten years. The director is crap, and the writers are crap, and my leading lady has great tits but less acting talent than a can of peas, but I decided to be in it anyway because they paid me fifty million dollars for two months' work", even if that's what he really thinks. Instead, he'll waffle on about it being a privilege to work with such a telented bunch of people, and how the role really allowed him to explore new avenues of characterisation, so everybody should just rush out and see it when it hits cinemas next week.

    It's called marketing, people, and it really isn't worth getting into a debate about the relatives merits of what Andresson is selling versus what he isn't selling, because he'd be saying something entirely different if his new job was with Sun or MS instead of Zend.

    --
    I'm not going to change your sheets again, Mr. Hastings.
  163. Marc Andreessen is an idiot by Anonymous Coward · · Score: 0

    Gimme a break, he got lucky once and landed a job as a research programmer at the NCSA after he graduated from college. That doesn't make him a visionary, much less a competent programmer.

    His track record on tech issues speaks for itself. Why anyone would listen to what he has to say is beyond me.

  164. Re:I won't step into the language wars here, but.. by bani · · Score: 1

    agreed, mantis and phpmyadmin are wonderful. i use them both heavily. mantis is miles better than bugzilla -- bugzilla is relatively top-heavy and the interface is very cumbersome.

  165. hosting by itsabouttime · · Score: 1

    php web hosting is more widely available and less expensive typically than Java. While this can all be done with open source software I beleieve we will continue to see the corporate world using Java and individuals increasingly using php.

  166. Better check your boxen by Trinition · · Score: 1

    I just checked my copy of Azures that I've had running a couple of days now, and it's using 86MB of RAM. Sounds like a lot for a BitTorrent client in some ways, but Zures is the a very full-featured client. The original BitTorrent client from Bram Cohen (SP?) himself was a much tiner, but also less-features piece of software. So, that's apples and oranges.

    But, seriously, if BitTorrent is using 500MB of RAM on your system just to IDLE... whew! You've got something else going serisouly wrong.

    1. Re:Better check your boxen by bani · · Score: 1

      azureus takes that much on w2k also. shrug.

      my boxen are fine. no other applications eat resources like java gui apps.

      i'm not the only one who noticed this though. google and you'll find a lot of complaints about azureus being a monstrous memory pig and deadly slow.

  167. Andreessen gets it wrong it again by fbg111 · · Score: 1

    No, Ruby will be more popular than either Java or PHP for building web-based applications. Take PHP's targeted purpose and framework simplicity, add the power of a better language, and you've got Ruby, and mindshare.

    --
    Flying is easy, just throw yourself at the ground and miss. -Douglas Adams
  168. PHP overtaking Java -- or will it be AJAX & Ru by Anonymous Coward · · Score: 0

    Marc Andreessen said. "I think there's no question the Web model is going to dominate over the next 10, 20, 30 years."

    Some interesting work is being done on the PCs, however, but he pointed only to applications that run in a Web browser and that rely on data and services supplied over the Internet. Here, again, Java is losing to an unrelated scripting technology called JavaScript and a JavaScript offshoot called AJAX that permits a fancier user interface.


    Andreessen isn't the only one suggesting Java is not the best choice for this type of application. Bruce Tate is one of several who've suggested AJAX and Ruby on Rails are a better solution than Java or PHP:
    http://www.webservicessummit.com/Articles/MovingPa stJava_2.htm

  169. What about FireFox? by Trinition · · Score: 1

    On my system, FireFox used to be a HUGE hog. I solved it by switching to Opera. FireFox would grow to hundreds of MB after a couple of days. Opera is hovering at 46MB after weeks. So... does FireFox use a Java UI, too?

    Also, if Azures is such a pig and is so slow, why do so many people use it? I mean, I find it to be perfectly fine, but this is not the first time I've heard poeople complain about it -- but still its cited all the time by others as a GOOD example of a Java app (like I do). Why such a polarizing view?

    1. Re:What about FireFox? by bani · · Score: 0

      sure, firefox is big. but it doesn't approach the slowness and bloatedness of azureus. firefox may be bloated enough, but it isn't slow enough to be using a java ui ;)

      so many people use azureus because its featureful and has shiny buttons. they tolerate its bloatedness and slowness, sort of like people tolerate eclipse because it's a nice ide even if it's slow as molasses. or like they tolerate microsoft windows despite the viruses and malware and crashes.

      however the shiny azureus gui isn't enough to make me want to use it over the perfectly functional, much more responsive, and much less resource hungry python client. i can also detach the python client into a screen session and log off ;)

      so java has two resource-hungry and dog slow gui applications to tout as its shining example of how it's dominating the entire software development world. color me unimpressed?

    2. Re:What about FireFox? by Mercano · · Score: 1

      So... does FireFox use a Java UI, too?

      No, it uses XUL, which is a whole different can of non-native portable code, with the added fun of interpeting JavaScript. Face it, theres two options for a GUI. Use a platform native that run likedy split but is a pain to port, or use a platform indepenedent package that lets your app look pretty much the same all over (and is probably skinable, too) but take a speed hit to be able to get things running everywhere.

      If you are looking for a Gecko based browser that uses native windows controls, you'll be wanting K-Meleon, Firefox's leser known stepsister.

      --
      #include <signature.h>
    3. Re:What about FireFox? by WWE-TicK · · Score: 1

      > Use a platform native that run likedy split but is a pain to port,


      Not if you use something like wxWidgets

  170. knowing the first thing about software projects... by Anonymous Coward · · Score: 0

    It would help if some of /. readers actually read something about the issues faced in developing software 30 years ago because the modern day tools (java, php, c#, etc.) are still only the smallest of improvements over the 1970s OS API + programming languages while the problems are largely the same.

    Proper business process modeling, user use cases, requirements tracking and project progress tracking still are the main issues in software just as they were in the 1970s.

    Programming tools, language, methodology, uml, db design, os api, etc all are much much less important than solving the business problem.

  171. Regarding "Reuse" by Tablizer · · Score: 1

    and don't understand reusable objects or abstraction.

    Show me a practical[1] example of OO being more reusable than other paradigms can be. "Reuse" has fallen out of favor as a major OO bragging point even among most OO proponents. Your claims are so 80's.

    [1] No animal, shapes, or device-driver examples as often found in OO books.

    1. Re:Regarding "Reuse" by LordoftheWoods · · Score: 1

      Hmm? Whats the equivalent of interfaces & dynamic binding which allows drop-in replacement of chunks of an application (even at runtime) in, say, C, which predates OOP? I don't understand people who say 'objects have failed' or 'objects aren't any more reusable.' While they may not be more reusable per se, they are easier to make reusable. As someone who has found objects a quite useful way to structure code, I question your assertions. If you could cite some features in pre-OOP languages that are analagous to these features, I would better be able to see your point.

    2. Re:Regarding "Reuse" by Tablizer · · Score: 1

      C is not the pennicle of procedural in any way. I am a fan of dynamic languages in which changing things at run-time is a snap (without OO). I don't know how other static languages besides C would do it because I don't care about static languages. Anybody else want to comment? In short, that seems to be a language-specific issue.

      Besides, in my domain swapping in and out components with identicle interfaces but a different implementations is not a common need. Nobody is going to pay somebody to write the same thing twice in my domain.

    3. Re:Regarding "Reuse" by AcornWeb · · Score: 1

      Show me a practical[1] example of OO being more reusable

      I'm not sure about more reusable, but I just used it for PHP email (because PHP doesn't have very good email support, but I digress) this way:

      Email.php
      \--- EmailWithAttachment.php

      where EmailWithAttachment inherited from Email.php and just overrode the Email object when necessary. Works great.

      --
      Your Windows PC is my other computer.
    4. Re:Regarding "Reuse" by Anonymous Coward · · Score: 0

      C does not predate OOP.

    5. Re:Regarding "Reuse" by Old+Wolf · · Score: 1

      I agree that re-use is a bit more hyped than it should be.
      However it is still important.
      If you've ever tried to do Serial I/O using the Windows API then you will appreciate how horrible it is. So I decided to write an object that does it for me, with a nice user interface. I've since used that object in many applications that I hadn't even considered when I first wrote it, with a great overall saving in design and maintenance time.

  172. The roots of success by don_oles · · Score: 0

    You know why java has succeeded? Because of using the word "Enterprise" in one of the names. J2EE. Suppose you are a manager (inexperienced user with lot of self-estimation). What technology would you choose for your corporate web site? Some (lousy open-source) PHP or "leading" "supported by major software developer" Java Second "Enterprise Edition". "Server server1 is open for e-business". "Enterprise" java beans. It's obvious that PHP has little chances. It's all marketing.

    Playing from the ground with Assembler, Pascal, then C/C++, after learning perl I realized that a Larry Wall needs a monument despite he is alive so far. ;-) PHP guys did even better work. With PHP you are not a programmer, you just solve your problems.

    On the contrary, so far I see projects in java that are just _ridiculous_. And running IBM Webshrere is not a fun. And a web-shop with a dozen of users does not need to occupy 700 Mb of RAM running on high-end servers just to work "adequately".

  173. Re:Java failed because it's a slow toy. by Anonymous Coward · · Score: 0

    Actually Google uses Java very extensively. Google engineer said in a recent interview that large parts of popular Google products are written in Java.

  174. Both PHP and Java have their own following... by asoft · · Score: 1

    PHP has been developed specifically for the web. It is also the most recent of the web programming languages and has popular following. This is due to ease of learning, and fast development time. In the long run, each have their own areas of preference among the programmer community.

    --
    asoft
  175. If We Had Been Smart in the Beginning by oldCoder · · Score: 1
    If we had been smart in the beginning we would have saved ourselves a lot of trouble by using the same language on the client-side as the server side. An improved Javascript could do anything that PHP could do and probably that Ruby could do.

    The extra confusion and administrative overhead of using two or three languages (plus html, xml and css) on the same project slows it all down.

    What's stunning is that the Netscape server products took exactly this approach but never caught on.

    Javascript is the most popular programming language and also one of the slowest. No reason it can't be speeded up. I like ruby better but despair that the browser-makers will ever include it on the client side.

    --

    I18N == Intergalacticization
  176. Untrue. by Anonymous Coward · · Score: 0

    I've written a MUD in PHP. It can certainly do handle it, and do so pretty well.