Slashdot Mirror


4 Web Scripting Languages Compared

monkey crunch writes: "ZDNet is running an article comparing PHP, ColdFusion, JSP, & ASP. Although they don't show the script sources, it's interesting to note that PHP garnered the highest performance of the bunch. From the article, PHP: 49pps, ASP: 43pps, CF: 29pps, JSP: 13pps" PHP did gather the highest pps, but it's interesting to also note what the article gave top honors. In any case, it's an interesting topic, but remember: use what's best for you. Don't use what you feel you "have" to.

237 comments

  1. Re:Embedded Perl??? by SCHecklerX · · Score: 1

    Here's a link

  2. Re:Stats by Daath · · Score: 1

    The preview thing fux0rz things up! Fix it plz! Here is the prettier post:

    At Security Space you'll find all sorts of interesting stats, such as what kind of servers people use, what modules apache servers use, what technologies people make use of and what people author their stuff in.
    It's a really good site, which I use a lot to point out how many sites run open source products. Strangely I cannot find Tomcat there... Odd?

    --
    Any technology distinguishable from magic, is insufficiently advanced.
  3. Re:PHP *is* relatively new by The+OPTiCIAN · · Score: 1
    • The database connectivity is far from perfect, and ODBC isn't the magic bullet some people like to think it is. While you can use ODBC to connect to an Oracle database, it will offer significantly lower performance than using the ora_functions.
    OK, but the same applies to the other languages. Using ODBC performance will be lesser, and using custom database access will be less portable. The article singled out PHP by saying that its database access was portability-unfriendly.

    --


    Believe with me, my saplings.
  4. Re:ASP, JSP and servlets by Skim123 · · Score: 2
    writing ASP's and backend code in VB - I have to say I was new to web scripting languages at that point and ASP was a bit of a revelation - it was like, 'yes! Now I can write my web sites in BASIC' ... Then after graduating I took a job at a web design firm- they were using JSPs - I took one look and realised it was basically ASPs, but with Java

    You can write ASP in PerlScript, JScript, Python, VBScript, etc. And ASP+, Microsoft's next "version" of ASP, will support, among other languages, C#, which is just alias java c#

    --

    I could not justify my existence if I were a turkey farmer. Would I terminate myself? Undoubtably, yes.

  5. No no no by icebear.dk · · Score: 1

    As an experienced Java server coder I can vouch that the idea that using Tomcat 3.2 as a benchmark is utter stupidity. Tomcat developers and all benchmarks agree that either Resin or Orion server delivers the best performance for JSP. Tomcat is murderously slow in comparsion (ZDNet tipped it off when they said ASP was faster, which by no means matches my experience or general concensus). I have coded components (Bean) and extensions (taglibs) for JSP a few times and I have yet to come across a better general web scripting technology than this. Now I know that /. is the home of a lot of perl/C lovers but can all those companies who are ignoring M$ solutions and going for the Java solution really be that wrong. Anyway to get to the point a java compiled JSP/Servlet container running a web application of JSPs, Servlets, taglibs and Bean, is a very good and portable solution (I am still forced to develop on Windozer but we deploy on Linux as well as Win2k and WinNT). "Think of something cool and tell yourself it`s my sig" -me adapting a quote from BtVS

    --
    A person is smart, people are deeply stupid
  6. On Error Sucks by Skim123 · · Score: 2

    Fortunately VB7 will support try/catch/finally blocks.

    --

    I could not justify my existence if I were a turkey farmer. Would I terminate myself? Undoubtably, yes.

  7. Re:and perl is where? by Camel+Pilot · · Score: 1

    "and it is very difficult to maintain"

    100% recycled BS. I am the only one who tires of this complant. Perl is not hard ot maintain, bad programming and design structure is hard to maintain. I have been involved in 25K LOC projects with an established coding standard and naming convention and variable scoping rules. Ease of Maintainance exceeded any C project I have ever worked with and a 25K LOC Perl project is probably worth 35k of C or C++ code for equivalent functionality.

  8. Re:A Few Clarifications on ASP & JSP by ras_b · · Score: 1

    did you have any source control? i sure hope so. Visual Interdev integrates nicely with VSS- you can check files in and out directly from VID. Did you ever need to check the MSDN for help with your ASP? if you have the MSDN installed (which you should if you are working on a fairly large project using ASP/COM), just press F1 in VID and viola, whatever you have highlighted automagically pops up in the MSDN help files. Or what about deployment? didn't you need to deploy over multiple servers? VID simplifies this process nicely since you connect directly to the web server. hit save and the file is already updated on the server. open up the the test server as a separate project in the same window, drag and drop- bam- you just deployed to the test server. what about database access? you can browse the db directly from VID without ever opening up a SQL window.

    it sounds like you didn't even attempt to use VID for anything more than an HTML editor. forget the autogenerated junk- that's crap. but if you know how to write web code, you shouldn't need or want any of that anyway. VID offers a ton of productivity enhancers if you take the few moments to learn and use them.

  9. ASP is an ISAPI filter by ras_b · · Score: 1

    you are correct that ASP isn't a language, but you seem to be searching for the correct way to define it, so here it is: ASP is an ISAPI filter on the web server that interprets any file with a .asp extension. all that means is that it's a DLL (asp.dll) that does the work if a .asp page is requested.

  10. Re:What about dynamic GIF/JPG figures and PDF file by TurkishGeek · · Score: 2
    PHP can build dynamic PDF and figures ?

    Give me a break. You can generate dynamic GIF/JPG and PDF with all of the scripting languages in the article. PHP, being the kitchen sink of a language that it is, chose to bundle the GD library, and several PDF generation libraries into the language, and that's about all that makes it slightly advantageous in this respect. It's fairly trivial to create dynamic GIF/JPG images with JSP/servlets (Jason Hunter's servlet book had some examples), and there are at least three Java PDF generation class libraries that you can use to generate PDF from JSP/servlets.



    I will no even get started about ASP and CF-both can readily access COM objects, which opens up a whole bunch of opportunities since there are so many libraries available. PDF and GIF/JPG is definitely not a problem with any of these technologies.



    Whenever you're designing a comprehensive reporting application at work, coming up with a decent library to generate good-looking business charts is a problem with technologies like PHP, however. There is so much free and commercial Java and COM libraries available for JSP/Servlet and ASP or Cold Fusion developers, but not for PHP.
    --
    Zigbee Central: A Zigbee weblog
  11. Hey, I LIKE ColdFusion by SuperRob · · Score: 2
    I learned ColdFusion in about two weeks, and I'm now making a ridiculous amount of money coding some pretty significant apps for my company with it.

    Say anything you want about what's better, what's worse ... but I'm sticking with this mealticket for right now. ColdFusion is great ... it's fast, easy, fairly elegant, and pays really well!!!

  12. Re:JSP's and Older Techs by Furry+Ice · · Score: 1
    I've been forced to use JSP at work, and can't say that I'm too fond of it. It's a very powerful, solid web language. However, this power is it's weakness. Code and content really should not be mixed for anything more than just presentational logic. However, with JSP you have the ability to write arbitrary Java amongst your HTML. How can this be a bad thing? Well, if you make a concerted effort across your entire team to abstract the guts of your code into beans, you'll do pretty well. However, if you're in a rush (like most companies are), that standard will be the first thing thrown out the window, and you'll end up with a hairy mess: imagine 6 HTML pages within a single JSP, selected with a switch statement, where the main body of various tables are drawn by functions defined at the top of the file. Try handing that thing over to your web designers. Believe, they won't be able to make a dent, and you'll end up with a site designed by developers. It'll be very nasty.

    Of course, ASP shares these same problems, as JSP was modeled after it. The real solution to this problem is to use a scripting language which doesn't allow the intermingling of Java code and presentation. An example would be WebMacro or Velocity, template engines which use a very simple scripting language to access bean properties to display a page. A servlet inspects the HTTP request, performs all logic for deciding how to handle this request, constructs a bean representation of the data requested, and then passes this data to the template for display. This seperation is clean--the servlet is written by a Java programmer, the template by a graphics artist. They only need to communicate about what data will be passed between the two. It also enforces good style of not allowing arbitrary code to appear in your presentation layer--something which requires a fair amount of discipline--especially with junior developers--when working with JSP.

    The main thing JSP has going for it right now is market push. JSP was just a clone of ASP in an attempt to win mindshare by providing something familiar. {A,J}SP really isn't very well thought-out, but most people don't realize this because they don't know much about the alternatives. Compound this with the fact that developers don't mind mixing code and content, and you've got a pretty strong force in favor of something which can make web monkey's lives a living hell. It's really a good idea to look at the alternatives. Unfortunately, none of them have really reached the critical mass of users yet, but as sooner we make the transition, the faster they'll mature!

  13. Why test on different OSes? by defective · · Score: 1

    All of these scripting languages are available on both Windows and Linux (some on other OSes too). They took into consideration how easy it is to code in CF, why not take into consideration which OS a scripting language best runs on?

  14. Re:Web Scripting... by maznaz · · Score: 1

    Interestingly enough Tesco (a massive uk chain of supermarkets) are implementing their newest checkout apps in linux! Conversely Sainsbury's (their major rival) use NT. I was amused to notice this when upon seeing familiar messages ona few checkouts in Sainsbury's I looked closer to see that Dr Watson had detected appplication errors and seen fit to close the checkouts.
    --

    --
    you have just proved that sig ads work! Email me for a written quotation.
  15. Problem is with web teams. by hey! · · Score: 4

    You can't separate the tool from the kind of craftsman and job it is intended for. The reason I mention this is that comparing these scripting languages this way abstracts out the most critical details

    Thus, when you look at the "cost (Developer time)" score, what you are really looking at depends on the composition your team. It's just plain stupid to rank JSP/servlets as "C" and ASP as "B"; there are applications a skilled programmer can do with JSP that would be nearly impossible in ASP. In that case, JSP would be "A" and ASP would be "D". On the other hand, if you are relying your already overtaxed and underskilled Microsoft only IT app development department to deploy some very simple dynamic content, then ASP would rate "A" and JSP would rate "D" for cost.

    By the way, about a and a half year ago I took my small company kicking and screaming to Zope. I built a standard page framework with consistent but customizable layout, navigational elements and decorations. Was this costly -- you bet. We wasted untold time arguing over content that users provided that had hard coded positions, dimensions, font sizes, and IE only HTML extensions. However, once I got these people out of the layout business into the content business, we ended up with a web site that is consistent, professional, and constantly updated with no technical skills required at all.

    Moral: the cost to deploy is not necessarily related to the cost to maintain.

    --
    Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
  16. Re:phplib by BrianMertens · · Score: 1

    I use PHPLIB for its Template class.

    And, AFAIK there is no template functionality built-in to PHP4... yet.

    --
    Why do I need a sig? I never post.
  17. Re:ASP by omega1 · · Score: 1

    Just to let you know, JSP actually will let you use other languages as well. It's not commonly implemented, but Resin from caucho.com can use either java or javascript ...

    However, JSP is definitely slanted towards java ;-)

  18. Re:What about Cocoon? by lscoughlin · · Score: 1

    Actually, if you plan your displays before implementing them in xsl, and nail down your xml formats, xml/xsl is a very elegent, extremely maintainable way of managing display on very large sites. If your working on a site large enough to justify it, then the processing overhead isn't a big concern, you have the iron for it. And as for the added level of complexity at initial development... like all development tasks, the better you do it the first time, the easier it is to maintain on into the future.

    On the other hand, if all your doing is web counters, message boards, and fancy dhtml crapola... then you care about this [] much.

    --
    Old truckers never die, they just get a new peterbilt
  19. Ever try SteelBlue by Nile · · Score: 1
    First a dsclaimer: I'm a principal developer of SteelBlue

    If you are intersted in web scripting languages similar to Cold Fusion, you may want to check out http://www.steelblue.com SteelBlue is a fully free and open source application server designed to produce dynamic database driven web applications.

    The core design of the language is similar to Cold Fusion in that regular HTML is extended with special purpose tags for doing things like SQL, data type checking, making select boxes, etc. This is supplemented with a "Eval" language that is similar in syntax to C. There is also a library of a few objects that can be manipulated to do things like parse XML or manipulate JPEG files.

    In addition hooks have been built to allow easy extension of the core language by anone who can write C or C++.

    This code is newly open sourced, so we are looking for whatever feedback we can get...what we have gotten so far has been good, so people seem to like it. Now all we need to do is get more people to see it! -Al

  20. ZDNET loves $$$$ by xanthos · · Score: 1

    Is it just me or does ZDNET usually manage to select the most expensive, slowest product?

    I guess open source just doesn't buy enough advertising. We probably should be grateful that they even mentioned perl.

    --
    Average Intelligence is a Scary Thing
  21. The fact that they picked ColdFusion... by dwalsh · · Score: 1

    ... shows their cluelessness.

    ColdFusion is not an OO language, it is not even a structured programming language (you can't write functions that you call elsewhere in the same file). This means that any non-trivial web apps rapidly grow into an unmaintainable mess of code.

    And in spite of their benchmarks, any procedural code in CF is dog slow. If you hit on a bug (and there are quite a few) that causes problems with what you trying to do, you cannot switch app server vendors as you would with JSP.

    It may have been faster that Tomcat, as configured by them, but this does not mean that ColdFusion is faster than JSP. ColdFusion is interpreted, more so than Java, and is not nearly as optimised and researched as Java virtual machines are.

    The one thing I would give ColdFusion credit for is DB access, which is extremely quick and easy. You configure a DB connection in the CF administration interface, and you then refer to it by name in the code, no specifying all the connection info. This allows you to create dynamic webpages that show DB records much more quickly than with the competitive systems.

    In this regard, ColdFusion does for Web Apps what VB did for Windows desktop client apps, in that it allows very rapid development of frontends for databases. Arguably it is "the VB of web development", even more so than ASP+VBScript. But as you can imagine, the resulting code frequently ends up about as maintainable as a lot of VB apps.

    --
    ${YEAR+1} is going to be the year of Linux on the desktop!
  22. ColdFusion by Grasshopper · · Score: 2


    I'd have to agree with the article that ColdFusion has a quick development time and is easy to use. Also, and I saw this refuted above, but it is also extremely easy to maintain and more portable than you'd think.

    I develop web applications for the USPS, and we use ColdFusion in the project I'm currently on; there are no portability issues to speak of with the basic cfml code. There *are*, however, portability issues concerning the CFX tags (ColdFusion extensions written in C++ and compiled as shared objects) and *anything* that mentions Java. I attribute the Java problem with the fact that it's an environment nightmare to get anything written in Java to run on different machines. The CFX problem was unintended, but Allaire made an error when they compiled the server using Sun's native C compiler (for the Solaris version). If you use gcc to compile your libraries, forget it; it will ungracefully crash and burn.

    So what are the downfalls? The same pitfalls come with ColdFusion as with anything not open-sourced. They don't fix their own bugs in a timely manner. I have personally discovered two bugs, one of which is really getting in the way of development (and stability), Allaire has officially recognized both and escalated the situation, but there are *no* patches to fix these problems and no sign of any help.

    If PHP had problems as large as these, were notified about it, and didn't have it fixed with amazing haste, I'd be disappointed.

    That's worth a lot more to me than being able to teach an idiot how to code and make it work, which seems to be the focus of corporate opinions.

    --
    Source code is a lot like a parachute; it needs to be open in order to function properly.
    1. Re:ColdFusion by Hallow · · Score: 1

      I'm part of a team that maintains a very large site in ColdFusion, and let me tell you, ColdFusion has some really nasty problems.

      For one, it has very limited handling of binary data. As in, you can base64 encode/decode it, and store the base64'd data in a database. That's it. There's no BLOB support at all, and no way to pull a file from a database and send it to the client without saving it to disk and including it on your page (say for image file data).

      Also, yes, it's made for dummies. It's easy to learn if all you know is HTML. If you already know perl or c, it can be quite frustrating. Arrays, structures, etc. start with 1, not 0. If you get 0 records from a database query, the RecordCount will be 0, but the CurrentRow will be 1! Functions and tags don't always act they way they're supposed too, especially when you're CFINCLUDE'ing or CFMODULE'ing files nested 15 levels deep.

      When to use #'s and when not to use #'s? Some functions (IsDefined() for example) require the #'s, while in general allaire says don't use them in contitionals or functions, just in output.

      Text formatting and parsing with ColdFusion is a serious pain.

      It's really expensive. At $5,000 per server, a proper development, staging, and production environment will cost you $15,000. If you want to make use of the clustering support? $5,000 extra per node.

      Support contracts are expensive and difficult to obtain.

      It's difficult to write secure code in ColdFusion. Having to lock things left and right is a pain (here I can't say that PHP's shared memory support is any better).

      I'd much rather be working with PHP, but all that said ColdFusion isn't too bad.

    2. Re:ColdFusion by Hallow · · Score: 1

      Oh. I forgot to mention memory useage. Allaire recommends (or at least did last year), that any production box have 512megs of ram as an absolute bear minimum, with the recommended minimum being 1gig of ram. Ouch!

    3. Re:ColdFusion by rodgerd · · Score: 1
      Cold Fusion's greatest weakness is spawned directly from it's greatest strength: it's a damn easy language to learn and use. If you're good, you can do some slick stuff really, really quickly; if you're not so good, you can spawn a codebase that is impossible to maintain. Blame the meat, not the product.

      I'd go further than that: if one of perl's guiding lights is, "Make the easy things easy and the hard things possible", Cold Fusion is more like "Make the easy things easy and the hard things fucking near unachievable". That said, CF is very quick to develop in and can allow non-programmers to do trivial stuff like build tables from queries very easily. But pushing its envelope hurts a lot.

      The company I work for has some CF people, and they can crank straightforward DB backed sites out at a terrifying rate.

    4. Re:ColdFusion by Hallow · · Score: 1

      Doh, it's not #'s so much as it is "'"'s

    5. Re:ColdFusion by cheezit · · Score: 1

      I hit this exact problem a few months ago. I traced it to one of the eternal C++ problems: lack of standard name mangling/decoration. The CFX interface could easily be an "extern C" type interface, but instead it is a C++ interface. The native Sun compiler and gcc mangle names differently, hence missing symbols at shared object load time.

      The other thing I noticed was that the CFX resources out there on the net seemed predominantly for ColdFusion on windows, with hardly anything about CFXs for Solaris. I guess this reflects the installed base of ColdFusion being mostly NT 4 boxes.

      --
      Premature optimization is the root of all evil
  23. It takes all kinds... by Pac · · Score: 2

    A good web development team, no matter which language or platform you choose, will have a mix of people coming all the way from the pure inteface guys (including here the designers) down to the bare metal guys (including the usual daily-kernel-compiling guy). All projects larger than toys I have been working on for two years have had this configuration.

    As for ASP, the mix ASP/COM is the Microsoft-blessed way to use the technology since the beginnings of 1999 (almost two years ago). So, yes, you must have a good C++ guy in your team, otherwise you will be unable to scale up for too long with ASP. PHP will take you a bit higher before entropy takes over. Python is even better (now if only Guido would put the braces back where Nature intended them to be... :)).

  24. Re:JSP/Servlets/EJBs in the financial sector. by mgkimsal2 · · Score: 1

    1. Not sure if I'd say Java is 'open' and 'non-proprietary'. There are apparently a lot of things developers would like to see in Java, but Sun is not implementing. I don't know specifics offhand, but one of the guys here does a lot of Java stuff and fills me in on the details now and then. Yes, you can see code, and yes, it's cross-platform, but I wouldn't say 'non-proprietary'.

    It's proprietary to Sun's specs. There just happens to be a large enough user base out there to make it seem common.

    2. A lot of packages don't, either. Or if they do, it's more 'java bandwagon' hopping than true support. Our latest experience is with the Adobe Acrobat 'bean'. Adobe seems intent on making it as hard as possible to do PDF work on non-MS platforms (no acrobat 4 for unix, for start) and the 'bean' they released is pretty low quality.

    They had a press release in summer 1999 saying how they were supporting Java through this PDF bean thing - the code we see in the Java itself is all marked 1998, and it's not been updated since.

    Not saying all developers are like this, but do some research before jumping into Java - just because people say 'works with Java!' doesn't mean it actually does.

    4. There are some inconsistencies we've come across between platforms that don't lend themselves to 'write once run anywhere' java mythology. Keyboard issues, for one. Also, Windows Java support is different than Linux, for example. I'm sure it can all be 'worked around', but it's not simple. (these are more 'graphic' issues, perhaps not important for server-side java work).

  25. Re:Altogether a poor article by ras_b · · Score: 1

    Python, Perl: How do you write a serious article about web scripting languages leaving these two out?

    the article mentions both python and perl on the 3rd page.

    Perl is the mother of all scripting language

    the article actually calls perl "The granddaddy of open-source Web programming languages".

  26. What the hell? by Mr.+Piccolo · · Score: 1

    OK, would someone mind telling me why ZDNET refuses my connection when I'm running SLackware Linux but not when I'm running Windows 95?

    It makes absolutely no sense!

    --
    Glückwünsche, haben Sie Slashdot ermordet, indem Sie zum korporativen Druck beugten und Subskriptionen einlei
  27. Re:JSP is not a scripting language by GameGuy · · Score: 1

    Depends on your point of view. CF can easily be extended with C, Delphi, etc.

    --
    The Game Guy
  28. Re:Web Scripting Languages by The+OPTiCIAN · · Score: 1
    • Yes, I talk about recompiling. Recompiling takes time, especially with Java. Rule of thumb by a fellow Java developer (who, btw, loves Java): No matter what kind of hardware you throw at it, the JDK will make your system slow down to a halt.
    I'm a professional servlet developer (feels so good to say that - haven't been for long ;) ). We use jikes (IBM compiler that's DAMN fast) and compiling... well.. even on our largest modules takes only a couple of seconds. I have scripts set up to quickly copy files betweenmy development box and the destination server. One script takes care of everything, and I don't find the speed an issue. However, I did when I was using the Sun compiler.

    --


    Believe with me, my saplings.
  29. Roxen: GPL'd ColdFusion on steroids (?) by szap · · Score: 1
    From what I saw of ColdFusion, Roxen Webserver (not to be confused with Platform, their add-on which is a fully featured XSLT'd Content Manager, but not Free) was very similar. I say "was" because that was Roxen 1.x, Roxen 2.x is now XML compliant (tags must be closed, etc). Some comments on Roxen, nee Spinner:
    • Their server is fully written in Pike, a GPL'd decendant of lpc, which looks like C with OOP, GC, etc. This means that the same damn source can run on NT as well as *nix, provided Pike is happily running on the OS. And Pike is fast, VERY fast.
    • On certain setups (static pages), Roxen Webserver 2.x beats the crap out of Apache 1.2.x. Yes, I've tested this. Yes, a webserver written in an interpreted language beats Apache.
    • Security Focus runs it. In fact, Aleph One occasionally pops into the Roxen and Pike mailing lists.
    • Web browser frontend, in addition to config files in XML
    • Modules (think mod_redirect, etc) for Roxen is ridiculously easy to write compared with Apache's
    • RXML, an XML extension of XHTML. This is also amazingly powerful. Wanna render a TrueType text into your webpage? <gtext nfont="Arial">Hello, World!</gtext> and the damn thing actually renders it automagically. Gotta be seen to believe it. Works with CGI, PHP, mod_perl or JSP (not tested personally) too.
    • Experimental mod_perl, java, etc.
    • The documentation needs more work, though.
    • Kitchen sink not included

    We've been using Roxen for nearly a year now. And it really is a very productive environment. Roxen is hard to be categorized since it's both a webserver and contains its own scripting/markup language AND still works with other scripting languages.

  30. PHP Hard to Learn? by Atomizer · · Score: 4

    I'm suprised by the developer cost/learning score they gave to PHP. I always thought PHP was very easy to learn, even easier than ASP. PHP always takes less code than ASP in my experience. You don't end up with the "Response.Write" when all you mean is "print". Don't get me started about "MoveNext". Arg!

    On the other hand, I do think PHP needs a more consistent DB API. (I think they are working on it.) But ASPs is only consistant because there is only really one direct way, ODBC. If you only used ODBC on PHP all your code would be more portable among DBs. But it's much more fun to use FreeTDS to hit a MS SQL server with a Linux/Apache/PHP server than an expensive ODBC driver.

    I've also found that all of our contractors that we have hired that know ASP learn PHP very quickly. They all have the same comments about the PHP code being much smaller and easier to read. VBScript that is used in most ASP pages just doesn't quite fit the web as well as PHP.

    And another thing. ColdFusion is the cheap way to start a web project? I guess that fits if you rate PHP hard to learn and expensive to develop, but $5000 is a hard price to take up against free for almost anything else. Sounds like Dilbert logic to me. The most expensive product will obviously make our programmers more productive.

    1. Re:PHP Hard to Learn? by imataion · · Score: 1
      The enterprise edition of ColdFusion cost $5k. That includes fault tolerance and clustering. PHP don't do that good ("Also, any organization doing clustering or failover with PHP is in largely uncharted waters"). Thats where you sink the $5k. If you don't want or need fault tolerance and clustering ColdFusion is $1,295.

      As to you comment;
      Sounds like Dilbert logic to me. The most expensive product will obviously make our programmers more productive.
      As I'm sure all of us know, all anologies are false but perhaps this will still serve as an illustrative point, 10 guys with tractors will be more productive than 10 guys with shovels even though (or because) tractors are more expensive.

      The ease of use (the development environment is like candy) is really worth the money. It's easy and fast for NON-programmers to learn, develop, etc.
      --
      Do you ever feel like there are people watching you? You're not alone.
    2. Re:PHP Hard to Learn? by imataion · · Score: 1

      Couldn't find you're email address so I hope you check back. A good CF reasource is http://forums.allaire.com/devconf/main.cfm?CFID=12 6813&CFTOKEN=19664018&& if that link doesn't work try http://www.allaire.com/DEVELOPER/ReferenceDesk/For ums.cfm (its the parent directory). Also "The ColdFusion Web Application Constriction Kit" by Ben Forta rocks, of course that is just more money you would need to spend. Nonetheless, a excellent, nearly perfect text reference.

      You are right about CFTAGNAME is annoying. I agree that they should drop the leading CF.

      I am desperate to try out PHP i have only heard good things about (coding) it. I hope the above is some help.

      --
      Do you ever feel like there are people watching you? You're not alone.
    3. Re:PHP Hard to Learn? by McSnickered · · Score: 2

      I can't really say if PHP is easier to learn that CF, but I do know that I first used PHP 3.0 for a MySQL enabled calendar project a few months ago. I had almost no problem moving into it's coding style and syntax. It was incredibly easy to implement, and documention, help threads, and FAQ's are all over the web.

      Now, at work we occasionally have to work with CF. I find it's coding style and syntax clumsy: everything needs a stupid tag around stranglely named commands like CFIF, CFELSE, CFENDIF, etc. And I can't seem to find good help resources online.

      PHP's coding style let's you insert blocks of code into your html wherever you want, it doesn't require excessive tags, it's easy to modularize with include files (CF might allow this but I haven't found it yet), functions, and even object-oriented programming.

      So I guess I just haven't had the right experience with CF or maybe I would like it better. But for my money (and PHP don't cost none!), I'd go with PHP.

      --
      They call me the working man. I guess that's what I am.
    4. Re:PHP Hard to Learn? by joe+user+jr · · Score: 2
      (regarding Cold Fusion:)
      It's easy and fast for NON-programmers to learn, develop, etc.
      Here's a true story: A (non-programming) friend of mine works for a company who decide to set up a scripted website. They're pretty much IT-stupid.

      They get their design ideas together and hold a meeting to decide on a platform. I've been selling my friend (their most IT-non-stupid member of staff) on a Free solution (php) and he puts this point of view at their meeting. The management decides that Cold Fusion is what they want.

      They buy Cold Fusion and hire a developer (spending about 2 grand) The developer screws up and doesn't deliver anything that looks like it's going to work. Panic, as they have demo and launch dates looming.

      After getting the go-ahead from management, my friend locates an off the shelf php app that does most of what they need. He's now modifying it to fill in the gaps, and both their launch and demo have been successful.

      Now I'm not drawing any conclusions about Cold Fusion - they were unlucky with their developer - but it's interesting to consider:

      • they didn't consider doing the development in cold fusion themselves. Producing any reasonably complex app requires the ability to think like a programmer. It therefore needs a programmer, no matter how wonderful the IDE.
      • It was possible to find a suitable php solution in such short order precisely because php is Free Software. Online help, ideas and solutions abound because of the prevailing ethos among php developers.
      • php is obviously not that intimidating to learn. My friend's previous experience with writing software consisted in copying character by character some programs published in computer magazines of the early eighties :-)
      --
      .sigs: Just Say No!
    5. Re:PHP Hard to Learn? by Prof_Dagoski · · Score: 2

      You pointed up a good difference between open source products and proprietary ones: cost vs value. I haven't used Cold Fusion myself, but I have used Lasso extensively and that's one of the main proprietary competitors for ColdFusion. One of the big problems I've had with Lasso is getting help when I'm stuck. For a product that costs at least $1100--for a fairly stripped down package--, I want to have some kind of support at least for the first 90 days. About all you seem to get from the vendor these days is a mailing list and searchable archives. Big deal. You get that with PHP, and its free. So, my question given that Lasso, ColdFusion, and PHP do the same things, is what is the business case for using one of these closed source products? And in terms of a DB API, you're right everyone is using either ODBC or JDBC these days and PHP supports ODBC, so again, what do products like ColdFusion and Lasso give you that open source systems like PHP don't? Is it a warm fuzzy feeling that some corporation is "supporting" the thing? BTW, I'd like to point out that I'm not singling Blue World(Lasso) out by any means, its just that I've noticed a trend for diminshing support and candor among vendors in general thats been going on for a decade. This is one reason why open source appeals to me so much.

  31. Irony in benchmarks and slashdot response. by Pengo · · Score: 4


    For the first time the benchmarks where not the main focus of the article, but the ease of uses and development time in getting to market. I do stand behind their opinion of ColdFusio being something that is easy to get going and something built in one weeks time, but then you will run into the same problem w/PHP.. a bunch of code that is not reusable.

    Tomcat/JAVA is a great development platform. The PagePerSecond is not that relavent because you can load balance hardware and .. frankly.. hardware is cheep compared to human resources, etc. We have a very large application that was written in Java/JSP and it's very simple to manage. We have a large code base of 'Beans' and we use the JSP for the glue to the presentation. Our group doesn't utilize the taglibs yet, as our 'Bean' base is still under heavy dev.

    I do agree that there are some performance issues with Tomcat, but those are easily fixed by using something like Resin (GPL) or Orion (Commercial). Lots of small companies are looking for quick and dirty solutions that fit the budget. (Free) .. Tomcat is (IMHO) the best bet, because if your application grows and grows, you will be in a better position to manage the code. (Downfall of PHP).




    --------------------

    1. Re:Irony in benchmarks and slashdot response. by DrunkenChinaMan · · Score: 1

      but then you will run into the same problem w/PHP.. a bunch of code that is not reusable. The fusebox methodology of writing CF (or even php) applications greatly contradict this myth.

      --


      Oracle.
    2. Re:Irony in benchmarks and slashdot response. by Jack9 · · Score: 1

      but then you will run into the same problem w/PHP.. a bunch of code that is not reusable.

      I have had the same code since PHP2 and I have only had better and better performance. Nothing breaks and nothing works better ^^

      Often wrong but never in doubt.
      I am Jack9.

      --

      Often wrong but never in doubt.
      I am Jack9.
      Everyone knows me.
    3. Re:Irony in benchmarks and slashdot response. by Anonymous Coward · · Score: 1
      How is hardware load balancing relevant to performance? It seems to me that while load *balancing* helps scalability and redundancy, it does nothing if not degrade raw throughput by putting an additional layer between browser/client and server.

      Hardware may be cheap, but it isn't free. When you factor in the additional cost of maintenance, administration, hosting (e.g. space rental), and bandwidth (increased # of concurrent connections because the server longer to complete requests), the costs rise dramatically.

      Software engineers are deluding themselves if they think that tripling the cost of a web/app server tier of hardware is insignificant to the bottom line.

    4. Re:Irony in benchmarks and slashdot response. by Anonymous Coward · · Score: 1

      Quite true, I'm modding this up because the insane startup rush is maturing, and hardware does cost.

      Cisco is hardware. They have the second-highest market valuation of any company. Therefore hardware must cost, because they don't charge commodity prices, and you do have to upgrade.

  32. Web Scripting Languages by SamBeckett · · Score: 3

    I've been developing with most of these "web" scripting languages this past year, and I can tell you one thing about all of them:

    They suck.

    Yes, it's true.. ColdFusion is nice for rapid, small applcations, but anything over that you will be grinding your teeth because of limitations of the language.

    PHP.. PHP is in the same boat, but you can develop middle-sized applications before grinding your teeth. The language itself feels likc one giant hack and there is WAY to much built-in, no module support to speak of, and the "unified" DB driver sucks (ODBC has a performance hit). It's shoddy OOP and function support causes headaches.

    Java Servlets take FOREVER and a day to develop; ColdFusion and PHP beat the pants off of Java anyday; However, like I was telling my boss, "With Java, everything looks like a nail..."

    Can't speak for ASP, but I can say...

    Python. It's a better language (syntax, semantics, libraries, modules, OOP) than PHP any day.

    1. Re:Web Scripting Languages by doctorwes · · Score: 1

      I definitely agree with the Python recommendation, especially for applications which involve a lot of computations as well as the usual database access and presentation layers. I work in finance (risk management) and in my view PHP can't handle computationally intensive appliations, while Java development is too cumbersome in an environment where the specs are constantly changing. Because my applications are built using Python, I can respond to requests in hours, not days.

    2. Re:Web Scripting Languages by pod · · Score: 1

      Yeah, this is the most annoying thing I found with PHP. You couldn't use double indirection, (even just a single -> would not work all the time?!?) and I found myself using temps all the time... (when you have your own class that wraps several other classes with return hashes containing other complicated structs... you get the picture).

      --
      "Hot lesbian witches! It's fucking genius!"
    3. Re:Web Scripting Languages by Hanno · · Score: 1

      True, with servlets, you have to re-compile (but this really has nothing to do with JSP/ASP/PHP) but you still don't have to restart your app server in most cases.

      Yes, I talk about recompiling. Recompiling takes time, especially with Java. Rule of thumb by a fellow Java developer (who, btw, loves Java): No matter what kind of hardware you throw at it, the JDK will make your system slow down to a halt.

      I remember waiting 30 to 60 seconds to the see the result of a single line of changed code in a JSP page. This is quite some time ago, but back then, we certainly did not use a slow machine.

      And JSP, at least in the version that I used back when it was young, was just a text filter that transformed JSP pages into Java servlet source and then recompiled the whole fricking page. Again, change, wait, wait, wait, see, change again, wait, wait, ...


      ------------------

      --

      ------------------
      You may like my a cappella music
    4. Re:Web Scripting Languages by Hanno · · Score: 2

      With the exception of your Python recommendation (I prefer Perl, so let the holy wars begin :-), I second everything you just wrote.

      Java Servlets and JSP is basically a "Slow Prototyping" environment and the long time it takes to just change a single line of code and then give that a try simply makes JSP a bad choice.

      PHP has been good to me for small projects, but recently a PHP based application blew up in my face when our client started a cooperation major web site. Basically, we got slashdotted and PHP showed that it did not scale well, despite having a really big machine.

      Friends have made me turn to Perl/FastCGI and we are currently moving the above-mentioned PHP-based site to this. Let's see if this serves our needs.

      ------------------

      --

      ------------------
      You may like my a cappella music
    5. Re:Web Scripting Languages by Ramshackle · · Score: 1
      Again, I'm afraid I just don't understand what you're saying. You're right in saying that a JSP is compiled into a servlet, but it's transparent to you as the writer of the JSP. The compilation is done by the appserver, and on the type of hardware that a decent server is run on, the largest of pages would take a couple of seconds (first hit after change only) tops.

      When was the last time you talked to this friend who loved Java? And was he using Linux or Windows? Try jikes out and see if it's as slow as he claims. I assure you, it is not. Even the regular Sun JDK does nothing close to "slowing your system down to a halt."

      By the way, compiling "the whole fricking page" is desirable. This is what makes it so fast. Subsequent hits are precompiled and quite fast.

    6. Re:Web Scripting Languages by Ramshackle · · Score: 1
      What are you talking about? The majority of JSP containers have the ability to re-scan their JSP directories for changed JSPs often enough that you make a change, save, and pull it up in the browser!

      True, with servlets, you have to re-compile (but this really has nothing to do with JSP/ASP/PHP) but you still don't have to restart your app server in most cases.

    7. Re:Web Scripting Languages by Hanno · · Score: 1

      and on the type of hardware that a decent server is run on, the largest of pages would take a couple of seconds (first hit after change only) tops

      It was a Windows NT box. Sure, we all hate Windows, but it was a big, well-equipped production server and it was running version 1.0 of the original Sun Java Webserver (which has silently been stomped by now).

      When was the last time you talked to this friend who loved Java?

      Oh, yesterday. He develops huge applications in Java on a Solaris box. He likes the language, but hates the Sun compiler. However, he cannot get around it. Jikes is not an option for what he does.

      Even the regular Sun JDK does nothing close to "slowing your system down to a halt."

      You have your anecdote, I have mine. On my machine, it does. The Sun JDK requires huge amounts of memory and it is a slow compiler.

      By the way, compiling "the whole fricking page" is desirable. This is what makes it so fast. Subsequent hits are precompiled and quite fast.

      You are mixing up my argument. I don't question that the result of JSP and Servlets makes a fast application and I don't claim that a Java application is slow.

      But *development* in Java is slow compared to the popular web scripting languages.

      Trust me, I did not exaggerate when I claimed that it took me 30 to 60 seconds to wait for a rather simple JSP page to recompile. I used my watch on that, since I could not believe it myself.

      ------------------

      --

      ------------------
      You may like my a cappella music
    8. Re:Web Scripting Languages by Corrado · · Score: 1

      Life with Java 1.3 is *much* better and faster! :)

      Later...

      --
      KangarooBox - We make IT simple!
    9. Re:Web Scripting Languages by Ian+Bicking · · Score: 2
      PHP.. PHP is in the same boat, but you can develop middle-sized applications before grinding your teeth. The language itself feels likc one giant hack
      Is it just me, or can you really not do ($object1->method1())->method2() in PHP? Or $object['index']->method() . Like, really simple chaining of expressions.

      Maybe it's just me (correct me, I'll thank you!) But I seriously fear that PHP doesn't follow the basic principles of parser construction, and that the object system was a total hack -- not even a messy language extension (which would be bad enough), but just a straight out hack.

    10. Re:Web Scripting Languages by jcostom · · Score: 2
      PHP.. PHP is in the same boat, but you can develop middle-sized applications before grinding your teeth. The language itself feels likc one giant hack and there is WAY to much built-in, no module support to speak of, and the "unified" DB driver sucks (ODBC has a performance hit). It's shoddy OOP and function support causes headaches.

      True, the ODBC layer has a performance hit, but there are abstraction layers out there that give you a consistent API, phpLib for one. I don't use phpLib, I've got my own class library that I wrote. I can use mysql, msql, mssql, sybase, oci8 or pgsql by changing one variable in the little file I require() that's got db connection/auth data in it.

      Also, pay attention to the PEAR project that's a part of PHP 4.x. They're working on a unified DB class.
      --

      --

      The unsig!
  33. So, THAT's how Microsoft does it by LordDartan · · Score: 4

    Am I the only one who finds this statement on the second page of the article funny??

    "When performance does become important, various techniques are available that can make dramatic differences in speed. For example, Microsoft Corp. has rewritten the Nile benchmark we used in these tests..."

    So that's how you get the big speed, to hell with the application, rewrite the benchmark itself! *grin*

    1. Re:So, THAT's how Microsoft does it by angelo · · Score: 1

      That's what I do in real life too. If I have something that is a bear to calculate in real time, I'll calculate and store. It's just good programming. No language is perfect.

      I use WinRunner at work to test healthcare applications. When I need today's date, do I call my date function over and over? hells no. I call it once for script and toss it in a variable. Why should I go throw all those cycles away?

    2. Re:So, THAT's how Microsoft does it by AndrewHowe · · Score: 2

      No shit, Sherlock!

      But the original poster dude seems to think it funny that Microsoft made the changes. So funny in fact that he stopped reading in the middle of a sentence, and thus completely missed the point of the article...

      "Our design goals for writing test applications were to keep the algorithms as similar as possible on all platforms (for comparability) as well as to write code that was easy to understand and quick to develop. Fast performance was not a goal."

      "When performance does become important, various techniques are available that can make dramatic differences in speed."

      (My bold, again)

      What's funny is the hair-trigger, knee-jerk, tenuous-as-you-like anti-Microsoft brigade, like this guy and the moderators who thought he was meta-funny.

      On a more serious note though, it's important to realise that different products are often aimed at different niches, and a "one size fits all" benchmark is close to useless.

    3. Re:So, THAT's how Microsoft does it by AndrewHowe · · Score: 4

      Yeah, but it's not as funny if you don't selectively quote. Here's the entire paragraph:-

      "For example, Microsoft Corp. has rewritten the Nile benchmark we used in these tests in several ways to demonstrate optimization techniques. The company ended up with an application with quite different application logic and database design from ours (but that generates the same pages we do) that runs about twice as fast as the speed of our version on similar hardware."

      There you go, and I added some bold of my own. How do you like that?

  34. Re:PHP *is* relatively new by mosch · · Score: 2

    The point they were making is that it's a different interface to the same functionality, depending on what db you're using, and they're absolutely right. Since these languages are written (allegedly) for people who aren't exactly geniuses, that's a bad thing.

    PHPLib actually does a pretty decent job of addressing this problem in php3, but php4 didn't take that particular lesson from phplib.

    They didn't "single out PHP", they made some constructive criticism. All you slashdroids need to learn the difference.

    --
    "Don't trolls get tired?"

  35. Coldfusion??? by johnlcallaway · · Score: 1

    I participated in an evaluation of Cold Fusion a few years ago. It was decided not to use it because it generated really ugly HTML pages that were too difficult to debug. While Cold Fusion at the time had some featuers that made development easier, it was felt that all of the ease in development would be wasted when it came time to figure out why the pages didn't look t he way we wanted them to.

    Any insight from users on the current product offering and whether or not this feature still exists??

    --
    I rarely read replies, it's my opinion and if you thought about your opinion a little more, I'm OK with that.
    1. Re:Coldfusion??? by zenzizi · · Score: 1

      coldfusion has had the tag for a while.
      this permits outputting only between <cfoutput> tags and therefore avoids the incredibly long blanks in your html source. :)

      --
      /// evilloop.com // la route est plus large que longue /
    2. Re:Coldfusion??? by PortHaven · · Score: 1

      I use it all the time, it spews raw HTML to the browser. The problem is their studio's WYSIWYG is really unsupported and unintended, just a throwback from the Homesite program. But our pages look the same as HTML. They're just dynamic. But if you expect to code any dynamic database pages in WYSIWYG don't hold your breath...

  36. Re:Suprising by codealot · · Score: 1

    Who do you call at 3:00 in the morning for technical support on your site????

    You're kidding, right? Why is it that I have been unable to get quality support from Allaire for any price?

    Keep your support contracts. I'll keep my open source. Fair enough?

  37. Re:Recommendations for JSP server by CiaranMc · · Score: 1

    Depends on your means, I guess. Orion Server is very very good. It's free for non-commercial use but $1500 for commercial deployment. It does include a complete, standards-compliant EJB container though!

    Also, the authors are often present on #Java on EFNet, so you get a lot of free, timely report. One bug I found was fixed within 2 hours of my reporting it and a patch was available for download!

    -Ciaran

  38. Re:HTML::Mason by pmallach · · Score: 1
    I dito that! We are porting our financial information site ARIVA.DE over to Mason. Some parts are already finished and will be online next week.

    What we gain? Easy customization for ASP customers, good reuse of our existing application logic packaged into Perl-Modules, quick development model, ...

    Mason just feels good.

  39. JSP would've done better by DerMarlboro · · Score: 2

    JSP would've done better if they had used Caucho's Resin. It's lightning fast. I'd be interested to see the results of a more comprehensive test covering more app servers.

  40. Re:Why we switched from ASP to JSP/Servlets by josepha48 · · Score: 2
    ASP = Actually Slow Pages.

    Okay maybe not. I have used ASP, and I did not find it all that. I have used PHP, and I liked it better than ASP, but I find both a bit slow and 'limiting'. ASP is usually done in VBScript, so if you have had any experience with Excel or Word Macros then you would feel right at home.

    I think perl is actually better, but for true speed I'd use C.

    I have heard of JSP servers going down when the garbage collection suddently kicks in. Think of a busy web server that does not have time to do its garbage collection. At some point it needs to do so and when it does, everything else stop or slows. This is just a part of Java though. It happens in any one of these languages that the authors mentioned too. Perl is better about garbage collection I think than Java, at least in my experience with the two.

    DON'T use tcl, or you will regret it.

    I don't want a lot, I just want it all!
    Flame away, I have a hose!

    --

    Only 'flamers' flame!

  41. Re:Odd review by Devolver42 · · Score: 1

    You're forgetting something. There are a lot of web developers out there that simply don't hand-write their code. They usually have one or two guys in house that actually have enough skills to debug their garbage WYSIWYG output. Perl, in these situations, isn't going to be used because the one or two people capable of writing decent Perl stuff are too busy debugging the garbage output of other so-called "web developers."

    --

    Devolver's Homepage... more fun than a box of crackerjacks.
  42. Re: WebObjects == great technology by poiu · · Score: 2
    WebObjects had three great things going for it: great tools, fantastic database connectivity middleware, and really solid web scripting and tag extentions.

    It still does. The main Problem with JSP's (& ASP's and CFM's) are that they are all the same. It is *possible* to design a good app using them, but the default paradim encourages lazy coding and mashing all of the Code & HTML & Data Store logic into one file. A gauranteed recipe for non-reuse, non-OO encapsulation, and headaches down the road.

    Model-View-Controler (MVC) is the core of most good design patterns. It seperates out the display logic, from the business logic, from the data store issues. WebObjects has this design pattern in its DNA, they've been doing it since way back. Multi-tier logical seperation of functionality is a GOOD THING.

    No matter what tool you are using, read Design Patters by the "Gang of Four" (tm) and Refactoring by Fowler. It will allow you to make a good design using any technology. Design Patterns was written and based on several peices of old NeXTStep technology (Foundation). And, they've been improving WebObjects constantly over the years. Check out the OmniGroup mailing list on WebObjects, a lot of Apple developers subscribe to it.

    I think people should use the right tool for the job. I happen to use WO because it lets me be more productive than any other middle ware technology I've used (and I've used all the major ones). BTW: re Java - WebObjects supports pure Java (and will support Linux in the next version due out RSN).

    -POIU

    ---

    --

    ---
    "Don't anthropomorphize computers. They hate that."
  43. PHP -- the best of the worst by Angst+Badger · · Score: 2

    Of the four languages reviewed, I have to say that PHP sucks least, but it still sucks. The developers plainly couldn't spell orthogonality much less define it, the documentation is simply awful, the interpreter's ability to detect, localize, and identify errors is on a par with stuff I used back in the punchcard era, and mixing PHP code with HTML and SQL produces results that are grotesque. I wish to hell someone would crank out an Apache modules that would make it easier to plug calls to compiled C or C++ code into web pages.

    --

    --
    Proud member of the Weirdo-American community.
  44. Re:Altogether a poor article by Pac · · Score: 2

    In my view, both should be all-out contestants in any serious comparison. What would be the point of excluding Perl if, for instance, all platforms your analize were worst than Perl? If you exclude it as "old", how would you know?.

    The exclusion of Python is also unforgivable. Just a look at Python's API is enough to notice how serious this language is becoming.

  45. BRL: advantages of JSP with easier language by brlewis · · Score: 1

    They at least mentioned perl toward the end of the article, but didn't mention BRL at all. BRL is not widely known yet, but provides all the advantages the article mentioned for JSP while embedding a much easier language.

  46. Memoirs of a happy php progammer by gid · · Score: 1
    I've been a php programmer for a year and a half, and after the first week or so I knew 99% of the function names and args/syntax of everything I needed to do.

    Ok, every once in awhile I'll want to do something crazy, but for those cases, just load up http://php.net/manual/ it has GREAT searching capabilities, and I've yet to look for a function that doesn't exist, or that I can't compile in.

    The reason that php has lack of a good solid API is because they simply call the mysql client libraries and give you access to them, or oracle 8i functions or whatever. The don't have all sorts of crazy wrappers to slow your app down. Php is made to be extremely modular, if you want a consitant db interface api, then make your OWN functions in php. It's these things called user definable functions, HELLO? COLDFUSION? :) So you say making your own wrapper functions is too difficult and time consuming to spend the extra day on? Then use ODBC if you really want, ya you can compile that into php also...

    Just the other day I wanted to gzip some straight text data before storing it in the database, because I knew I wouldn't need that data much and I knew that it would be EXTREMLY compressible (640k down to 4.5k). So I lookup the zlib functions, compile them in, and voila, I'm using them 15 minutes later. I've done perl programming and cold fusion program and I've never found as nice and easy to use docs as php has. The comments on php.net really help a lot to. Chances are, if you want to do something, someone else has done it too and posted a comment helping you.

    Oh, and if you ever get really stuck? There's always #php on efnet. You just gotta ask nicely, and made sure you did your homework before asking. :)

    Argue with me all you want, but you'll have a really hard time convincing me to switch to anything else. I understand if your programming toysrus.com to not buckle under the load of the Christmas rush you might want to use coldfusion/jsp or whatever. But we just aren't programming anything of that caliber here. :)



    ---

  47. What about Roxen? by the_arrow · · Score: 2

    Besides being supported by PHP, it also have Java servlets, and it's own language Pike (based on LPC (an object-oriented C dialect)). Very featurefull, and cross platform, and the source is available.

    / The Arrow

    --
    / The Arrow
    "How lovely you are. So lovely in my straightjacket..." - Nny
  48. and perl is where? by Lumpy · · Score: 1

    Kinda interested in seeing how perl matches up.
    I prefer Perl to all the others because it can be coded almost exactly like C. (It can also be coded as a giant ball of string with everything re-mapped to sanscript thus revealing a mess that only frankenstine could love.)

    Is there any comparasions for perl and these? Obviously perl can do it well, with slash as the perfect example.

    --
    Do not look at laser with remaining good eye.
    1. Re:and perl is where? by tm2b · · Score: 3

      Perl can't be taken seriously as a high-end web site development language. For large complex sites (slashdot really isn't either - it's a very straightforward single application), perl just doesn't have the performance one needs, and it is very difficult to maintain.

      Sure, perl works great as a quick way to put out code that works - but remember that it was designed as a report language, not a dynamic content engine. While there's an apparent similarity of these two tasks, they scale very differently.

      --
      "It is our blasphemy which has made us great, and will sustain us, and which the gods secretly admire in us." - Zelazny
    2. Re:and perl is where? by pudge · · Score: 2

      While people keep saying how Perl is insufficient to the task, thousands upon thousands of programmers will quietly, surely, quickly, efficiently, and superbly get their job done using it.

    3. Re:and perl is where? by tzanger · · Score: 3

      Perl can't be taken seriously as a high-end web site development language.

      Howso? Oh wait, I think I hear something:

      For large complex sites (slashdot really isn't either - it's a very straightforward single application), perl just doesn't have the performance one needs, and it is very difficult to maintain.

      Where's the proof? Mod_Perl takes up a whack of memory, sure, but the speed is right in line with the rest of them. What large, complex site doesn't have a cluster of machines with a shitload of memory on each? And as far as your maintainability arguement goes... I can show you code in just about any language which is a nightmare to maintain. Hell I could show you spaghetti code in C++ which I personally thought was impossible until I started cleaning up one particular in-house project.

      Perl may seem to facilitate nasty coding practises but in reality it all comes down to the programmers. Are they going for geek machismo or are they working toward something which is maintainable? Perl has a wonderfully clean OO syntax; I prefer it to C++. The built-in regexps are great for formatting stuff after the database has had its try.

      Perl ain't perfect, but it is certainly up to the task, IMO.

    4. Re:and perl is where? by jas79 · · Score: 1

      Perl is discused on the thirth page of the article.

    5. Re:and perl is where? by King+of+the+World · · Score: 1

      Do you have some links that show mod_perl is at all as fast as PHP?

  49. VBScript's On Error by Pseudonymus+Bosch · · Score: 1

    We used VBScript for our code, and we wish it had try/catch keywords; without these, writing error-handling logic was more cumbersome because we had to do manual checks in the code to see if errors had occurred. (ASP also supports JScript, which has try/catch keywords.)

    Doesn't On Error statement in VB Script work like try/catch? At least you don't have to do so many manual checks.
    __

    --
    __
    Men with no respect for life must never be allowed to control the ultimate instruments of death.
    GW Bu
  50. I chose PHP by kawlyn · · Score: 2

    for several reasons. I am currently involved in setting up a new website that just got some money. It is currenly running an assortment of perl and python scripts on a Zeus Server. After looking at a couple of options we decided on PHP on Apache, why? at this point it's cost. ASP or CF on NT with MS SQL is a little too much up front. And for us that was the bottom line. Having said that I realize that 5 potheads financing a website with VISA doesn't exactly follow the same rules as 'Enterpise Computing' decisions but hey I just wated to get in my $ 0.02 CDN. As an aside the most interesting config we looked at was ASP using Python and MySQL on a NT box.

    --

    When someone yells "Stop" or goes limp, or taps out, the fight is over.
  51. Why scripting languages? by Snowfox · · Score: 1

    It seems like compiled web applications are all but forgotten. For my own use, I still believe in C/C++ cgi apps with various utility libraries.

    Why are the various scripting languages in such overwhelming favor?

    1. Re:Why scripting languages? by jcrowe · · Score: 1

      This is true, but do you think the companies that are paying programmers to create a compiled program for a web application are going to be useing an external hosting solution?

    2. Re:Why scripting languages? by Tarquin+Sidebottom · · Score: 1

      ISP's/hosting companies also tend be be quite happy to privide cgi/php/asp but are far less likely to let the average user go and install some compiled program which could be doing anything.

    3. Re:Why scripting languages? by tzanger · · Score: 1

      In a script, the worst that can happen is a bad page, the server itself is fine and continues. In a compiled module, the worst that can happen is that the server core dumps and dies.

      Huh? I wasn't referring to a server module, I was referring to a compiled CGI.

      i.e.:
      void main(void)
      {
      int *p=0;

      *p = 1;

      }

      Now that, if run, will SIGSEGV. If I run it from a webserver, it will not crash the server.

    4. Re:Why scripting languages? by codealot · · Score: 1

      Have you ever considered the reason you get little traffic? Couldn't be because of a sluggish site now, could it?

    5. Re:Why scripting languages? by bornie · · Score: 1

      Because they are easier to do.

      Fast development, less courses fot the employee seems to be the norm.

      Meet an Oracle-Java developer some days ago. When I told him de programmed c under linux he was somewhat shocked. He thought c-developers was an extinct species. It was saddened.

    6. Re:Why scripting languages? by wackysootroom · · Score: 1

      Scripting languages are good for webmasters as long as a few security ground rules are followed. I find PHP and Perl scripts much easier to write quickly than C/C++ code. Most webmasters have a deadline that pretty much dictates that a scripting language should be used. I wouldnt want to spend all night chasing memory bugs in a web script, especially with a 3 day deadline.

    7. Re:Why scripting languages? by tzanger · · Score: 1

      My experience is that it's too easy to hang the web server with low level languages. If there's a bug in your script, the worst that will happen is the user gets a bad page.

      I don't follow. Both get run by the webserver and both return HTML. If a script crashes the user gets a bad page. If the compiled program crashes you will likely get a bad page and/or a core dump. How is this any different?

      I thought the webservers had a timeout set on their exec() so that they'd quit gracefully, no matter what was run.

    8. Re:Why scripting languages? by topher71 · · Score: 1

      You answered your own question.

      In a script, the worst that can happen is a bad page, the server itself is fine and continues. In a compiled module, the worst that can happen is that the server core dumps and dies.

      In a production site, uptime is the key. A bad page keeps your uptime going, a core dump means people in suits come and ask you questions.

      --
      -- topher71
    9. Re:Why scripting languages? by AMK · · Score: 2
      Because raw performance matters less due to network latency or connecting to other servers (your RDBMS or other backend). Given that setting up a TCP connection and downloading the HTML and images take a certain amount of time, any savings from writing in a compiled language are neglible. For example, say the user's computer can download a page in five seconds. Say my Python program takes 0.5 sec, while your C program takes 0.005 seconds (100x faster); who cares about 0.5 vs. .005 sec for the actual processing?

      Also, I think people often envision themselves running Amazon-scale services with thousands of hits per second and therefore need CPU usage pared down to the bone, but practically I think many Web sites are low-volume. The one I work on for my day job probably can expect 5000 or 10000 registered users, tops, and so the CPU is never heavily loaded at all, so there's no reason to give up the ease of programming and debugging for unneeded speed improvements.

  52. A Few Clarifications on ASP & JSP by ras_b · · Score: 2

    first of all, JSP and ASP are not scripting languages. JSP is Java and HTML (not "based on Java". it is Java). ASP is not even a language. It is an ISAPI filter on the web server- a .dll that interprets pages with a .asp extension. The languages used in ASP are scripting languages (Jscript, Javascript, or VBScript). But the next generation of ASP -- ASP+ -does not use any scripting languages. You may choose your programming language of choice (not sure about Java- prob not, but you can use VB, C++, C#, COBOL- and more)

    And as far as JSP performance goes, i did not see it mentioned anywhere that JSP pages are compiled into servlets the first time the page is accessed. this means the first page view is extremely slow, but every page hit after that is significantly faster. ASP+ also will compile the pages as opposed to interpreting them on the fly as ASP does.

    ASP, in my opinion, is easier to write mainly as a result of Micro$oft's extensive development tools (Visual Studio and it's close ties to MS servers). but JSP can run on almost any web server- with little or no code changes- and it's not that much more difficult to write. And now there is the J2EE spec which claims no code changes are necessary if the spec is followed (from experience this is not true, but *very* few changes were needed to move an app from NT/JRun to iPlanet). I haven't used the other languages mentioned, so i can't speak about them.

  53. hmmmm by Daath · · Score: 2

    ColdFusion is their first choice? I dunno why, seems strange...
    CF and ASP should be bottom, PHP should win, and JSP should be the web-scripting to come, I see huge potential in JSP, but it's so slow...
    Porting the M$ ADO to PHP would be the greatest thing that has happened to PHP since the new scripting engine... But then again, we'd loose all our nice db classes =)

    --
    Any technology distinguishable from magic, is insufficiently advanced.
    1. Re:hmmmm by GameGuy · · Score: 1

      Hardly - you just need to read the article instead of automatically assuming anything that isn't free and on linux can't possibly be good - which seems to be the norm for SlashDot users From the article: 'With our priorities of speedy development, ease of use, and a complete and powerful API, ColdFusion really stood out.' THAT is why CF stands out - they have targets that are in reality. And the next reply to this will be 'I can code faster than X people' Maybe you can. But if you take 10 random CF coders and 10 random PHP coders, you are MUCH MUCH more likely to have the CF people easily out perform the PHP people. This is just the reality of the languages. You don't NEED a full blown language to delivery things on the 'net. KEEP IT SIMPLE STUPID. These are words to live by.

      --
      The Game Guy
    2. Re:hmmmm by jallen02 · · Score: 1

      Also, JSP is so slow?

      They used Tomcat Beta5 in their testing.. OOooo not even an optimized polished product.....

      I could make a site scale just as well with any one of those languages given my platform of choice for JSP

      Jeremy

    3. Re:hmmmm by Erataikasu · · Score: 1

      At the bottom of the article it says this:

      We didn't have many loops or complex code structures in our code, the places where the optimizer can be most helpful.


      It was referring to the PHP code, but presumably all the pages did the same thing. And in this context, I say of course Cold Fusion wins. Simple pages which are mostly HTML, with a tiny bit of database code in them are CF's strength.

      For anything remotely complex, like for example a Slashdot type site, Cold Fusion is an absolute nightmare. I mostly work with PHP these days (It's not perfect, but I think version 4 is really picking up, and by version 5 or 6 it should have smoothed out most of its wrinkles, such as the lack of a single DB API as the article mentions), and I shudder at the thought that I may have to go back and maintain some of that CF code that I wrote a year or so ago.

      There's also my CF pet peeve - because there are no code blocks per se, loops are just a pair of tags, and anything within those tags is looped over, INCLUDING SPACES, which are output directly to the browser. You look at the output generated by a CF page with loops in it, you'll see lots and lots of extra whitespace. I think there are options to suppress it, but it just smells of bad design to me.

      I dunno, maybe it's because I inherited some bad code, but I hate Cold Fusion with a passion you can only dream of.

    4. Re:hmmmm by Rasmus · · Score: 1

      PHP 4 includes a database abstraction layer. Obviously the presence of this feature is not advertised well enough as people keep thinking that there is no data abstraction layer available in PHP. A sample script would look something like this:

      require_once 'DB';
      $db = DB::connect('odbc://rasmus:pw@host/my_db');
      $stmt = $db->prepare('select * from my_table');
      $result = $db->execute($stmt);
      while($row = $db->fetchrow($result)) {
      while(list($key, $value) = each($row)) {
      echo "$field: $value\n";
      }
      }
      $db->disconnect();

  54. JSPs perform poorly on Tomcat by Atom+Tan · · Score: 2

    My experience with Tomcat is that it still has a lot of bugs/features under construction and is certainly not optimized for performance in the way that commercial servlet containers are. A more stable and robust servlet container (Allaire's JRun comes to mind) would have provided much more realistic numbers on JSP performance.

  55. Zope? by Caseman · · Score: 1

    On reason I never read ZDNet anymore is they always leave major stuff out. If you don't consider Zope when choosing a web development platform, you're missing out big time.

    Zope, although far from perfect, gives you excellent flexibility in how you go about creating active content. It is also entirely object-oriented in nature making modular design easy.

    With Zope you can do your layout and simple logic with DTML. There are also many "products" you can add to Zope for major functionality. For example, Squishdot emulates a Slashdot-like web site. Smart objects like ZCatalog and ZSQL Methods make content searching and database querying functionality plug right in. Plus you can create your own object classes to behave however you want.

    But, the real key is that when you need some heavy processing logic, you can fall back to Python and more recently Perl to do your bidding.

    Other nice features include infinite undos and versions which allow you to work on a live server without breaking functionality. Plus Zope has an excellent community of developers and all around nice people. With Guido and company now in the fold at Digital Creations, it'll only get better.

    Like I said, Zope is not perfect, but it is quickly maturing into a rapid web development platform that is second to none. If you are searching for a platform, do yourself a favor and check it out.

  56. Tomcat != JSP by Mr+Neutron · · Score: 5
    Note that the Tomcat results shouldn't be taken as representative of all JSP engines. Tomcat is merely one JSP engine of many, albeit the "reference implementation" for JSP. It also has the advantage of being free software. However, lots of other web and app servers (iPlanet, BEA WebLogic, WebSphere, blah, blah) implement their own JSP/servlet engines. Their performance will definitely vary.

    Neutron

    --
    I get my kicks above the .sigline, Sunshine.
    1. Re:Tomcat != JSP by Anonymous Coward · · Score: 1

      For a $15,000/CPU WebLogic license, one would certainly hope performance is better.

    2. Re:Tomcat != JSP by raphaelite · · Score: 1

      Download the source from here (http://www.zdnet.com/eweek/stories/general/0,1101 1,2646732,00.html) for further insight into what's killing their JSP performance... they're not doing any database connection pooling at all! The connection is released after every request, so they have to renegotiate the connection before each page can render. The ODBC COM object used in ASP, and (I think) the default PHP database connectors, both provide connection pooling. This is a massive component of the runtime performance that really needs to be addressed. There's plenty of good JDBC connection pooling code available for free; hopefully Sun is listening and will make it part of the java.sql package eventually.

    3. Re:Tomcat != JSP by wik · · Score: 2
      It's interesting to note that they didn't say which JVM they were using. The IBM JVM and Sun's 1.3 JVM are supposed to be worlds better than the Blackdown 1.2 JVM on Linux. Not to mention, there is quite a bit of tweaking that can be done with just JVM settings (e.g. set Min/Max heap equal to keep heap reallocations down).

      Also, I just have to note that nobody mentioned the testing methodology. Were they running the JVM for a long time? Or did they just fire it up for a few seconds? In the long case, the JVM will get into a steady state. In the initial case, most servers will be creating new objects and threads until they have adjusted to the load. A good rampup time is around 20 minutes.

      --
      / \
      \ / ASCII ribbon campaign for peace
      x
      / \
    4. Re:Tomcat != JSP by vanza · · Score: 1

      However, lots of other web and app servers (iPlanet, BEA WebLogic, WebSphere, blah, blah) implement their own JSP/servlet engines. Their performance will definitely vary.

      Not only that, but the Java Virtual Machine plays a big role in performance. We have a pretty big application running on Apache JServ here (Servlets, no JSP), and the performance gain when we tried the IBM JDK 1.3 was enormous, comparing to when we were using the 1.2.2 JDK from Sun. The same can be said when testing Sun's JDK 1.3.0 against 1.2.2.


      --
      Marcelo Vanzin
      --
      Marcelo Vanzin
    5. Re:Tomcat != JSP by latneM · · Score: 3
      Check out this link and here as well to see just how much they vary. Granted, the benchmarks are from a vendor and are likely going to be tweaked to make their product (Resin looks good), but you can see an order of magnitude difference between Tomcat and some of the others.


      I will chime in with my own little opinion that it is far cheaper to buy the hardware to get the performance you need from any technology you choose (within reason) than it is to train a staff to a new technology.


      And the best example of tuning a Java web app I've heard was a bank's app running on a 16-way Ultra-Sparc. Not pleased with performance they considered moving to an E10K. Then someone pointed out that they were using green threads. For the non-Java guys, green threads (as opposed to native threads) are managed by the VM and cannot use multiple CPUs. Their app was pegging one CPU and leaving the rest idle. Moving to native threads gave them an instant speed, um, boost would be an understatement.

    6. Re:Tomcat != JSP by Kingpin · · Score: 1


      That article was a strange mix of things that had no relation to one another. Why at all mention the lack of IDE's? Who needs anything but a good editor? Taglibs have nothing to do with performance either, why mention it? The arguments simply aren't good enough for the article to be considered a benchmark. Try gnujsp, enhydra, Tomcat4b etc. and make sure that you're you're truly testing what you _think_ you're testing, not the servlet engine performance.

      --
      Unable to read configuration file '/bigassraid/htdig//conf/14229.conf'
      Geocrawler error message.
  57. ASP by MattC413 · · Score: 1
    ASP is becoming very popular with web businesses these days. The ability to use seperate scripting languages within the ASP spec definately helps it along.

    The speed of ASP is decent, and you can do a lot with it. Besides, companies are paying big chunks of change to those people they hire (and large signing bonuses) to do the programming. If you'd like to beef up your resume, I'd suggest learning ASP is a great way to get ahead of others who don't know it.

    -Matt

    1. Re:ASP by truthsearch · · Score: 1

      Companies paying big bucks for ASP developers doesn't say much. Its popularity certainly doesn't mean it's the best choice. Many in management choose ASP because: 1) It's a Microsoft so-called "technology" and they use their products for almost everything else; 2) It's based on Visual Basic which either they already use or can easily find developers who know it. Adding ASP to one's resume is a fine thing, as adding anything else, but I strongly suggest that no one make it their only Web scripting / programming experience. Let's not forget that Microsoft "technologies" and their acronyms change on a frequent basis, much quicker than other languages. And I don't consider most of their changes to be evolutionary, as other laguages move on, but re-writes. E.g. developing current VB6 apps in VB7 will require major re-writing. You'll never want to do that for your web scripts if you don't have to.

  58. JSP Performance by under_score · · Score: 3

    With JSP's performance measurement may be a bit more of an art than with the others. Since the JSP container (eg Tomcat) is often configured to compile any .jsp that has changed, it may have a serious performance hit attributed to it. However, that _feature_ is meant for development and would be turned of in deployment: all the .jsp files are pre-compiled. As well, the JVM used makes quite a large performance difference. The Win32 JVM with Hotspot, seriously outperforms some of the other JVM's (orders of magnitude difference). I don't really know about the Linux JVM's, but I have heard that they underperform relative to Sun's Win32 JVM. Basically, the performance aspect of the article is completely bogus: utilizing two completely different OS platforms is just the start of the problems!

  59. ASP, JSP and servlets by robertito · · Score: 2

    I took a summer job at BT (the british telecoms company) two years ago, writing ASP's and backend code in VB - I have to say I was new to web scripting languages at that point and ASP was a bit of a revelation - it was like, 'yes! Now I can write my web sites in BASIC!'... of course VB isn't great, but it is easy to use (at least until it crashes). Then after graduating I took a job at a web design firm- they were using JSPs - I took one look and realised it was basically ASPs, but with Java, and was very very happy. JSPs perform great (the first time one runs it gets compiled into a servlet, which takes a second or so, after that access is just fine). JSPs have only got better since, though anyone looking at JSP should also think about XSLT, just for an alternative approach...

    At my current (dot.com, internet travel) company, I'm writing Java once more, and it's a pleasure- the only problem is that the front end of our site is naked servlets, dating from pre-JSP days, and we use our own propriety template symstem to generate the html- the template system has really starting to creak at the seams and it's not flexible enough to cope with our needs... we'll be swtiching over to JSP (possibly mixed in with some XML/XLST) soon....

  60. Cold Fusion vs. PHP by Staciebeth · · Score: 3

    I write Cold Fusion all the time, every day, and I have to say it's damn easy to learn and use (and write badly, but that's something else). If all you know is HTML the tag structure won't confuse you and so on. BUT...I just picked up PHP a few months ago and I love it. So much nicer. So much easier to read. Even though my Cold Fusion is still much stronger than my PHP, I would never recommend using Cold Fusion.

  61. Re:Curious scoring by Pfhreakaz0id · · Score: 2

    I don't understand. I can take something coded in ado and move the databases and just change the connect string.... I moved one app from Access to something called to Pervasive SQL to Microsoft SQL and never changed the app code much at all...
    ---

  62. Re:Recommendations for JSP server by toppk · · Score: 1

    you need ajp13 (ie: from mod_jk) to support ssl.

    Unfortunetely ajp13 is buggy right now.

    I'm running a production site (moderate traffic) with tomcat 3.2b6 +patches/apache 1.3.14/mod_jk/ibm 1.3.0jvm on a rackspace.com rh6.2 box...

    I'm pleased.

  63. Re:Why we switched from ASP to JSP/Servlets by josepha48 · · Score: 2
    If you know how to code and you get the proper tools you can debug your code real easily in C. Apache is done in C so if it is good enough for a web server then it is good enough for a web application as well.

    TCl is also used in Story Server and that program sucks. It is slow, it is not scalable, it forks processes as does ASP each time you go out of the . There are much better and faster things that tcl.

    I don't want a lot, I just want it all!
    Flame away, I have a hose!

    --

    Only 'flamers' flame!

  64. Re:"PHP on large, important projects..." by Communomancer · · Score: 1

    Well, if you truly can't tell from the content, how "large" and "important" can the project be if it has a two week lifespan? Or are you just making stuff up?

    --
    "UNIX" is never having to say you're sorry.
  65. Re:PHP *is* relatively new by The+OPTiCIAN · · Score: 1

    All you slashdroids need to learn the difference.
    My apologise.

    :)

    --


    Believe with me, my saplings.
  66. from the author -- actually the code is posted by Timothy+Dyck · · Score: 1

    It was available all along on eWEEK's site, along with an Excel spreadsheet giving more detailed test configurations and the exact pages/sec numbers. ZDNet has the right to republish eWEEK content and didn't include the page with the associated downloads in their version. The page is http://www.zd net .com/eweek/stories/general/0,11011,2646732,00.html . Unfortunately, there is are some spaces in the name of the ZIP file that has the code: Mozilla and IE download the file fine, but Netscape 4.7 has a problem with the filename. I'll get that changed, and can also e-mail it to anyone who wants it.

    I found out a few days ago that this story got posted on Slashdot and will post a response to address some of the questions that have come up as soon as I can get it done.

    Regards,
    Tim Dyck, eWEEK Labs
    timothy_dyck@ziffdavis.com

  67. Re:Curious scoring by LetterJ · · Score: 1

    Nothing like screwing up the link to your own product. PHPTriad.

    LetterJ

  68. Re: code reuse, scalability? by slonob · · Score: 1

    KISS is fine until your site becomes real busy and there is a need to make it more complex.

    I think the attitude of making it easy on your developers will turn around and bite you in the ass when you need to do more than have the site running.

    This article was for the most part superficial. I wouldn't take any of the advice to the board, especially if you're a part of a medium to large business.

    It seems the premise of the article was "so you want to make your fantasy game site super cool?" Not "so you want to make the best all around choice for your enterprise web project?"

    /Jarrod

    --
    Strict obedience to the law is the key to liberty.
  69. Re:Scripting is bad by Johann · · Score: 1

    When worried about mixing presentation layers, don't you really need to decide how long the web site will live in its current state? Whole sites are rewritten frequently, so spending too much time on interface separation costs your company unecessary dollars.

    Now you can reply with the 'but what about big sites'? IMHO - large sites should use JSP and Servlets because they have larger staffs and easier separation of work. However, you can use other technologies to keep your presentation and data layers abstracted. PHP comes to mind.

    "Fat, drunk, and stupid is no way to go through life."

    --
    "You're gonna need a bigger boat." - Chief Brody
  70. Anyone benchmark Wikki Wikki Web? by cant_get_a_good_nick · · Score: 1

    Tht sure as hell has a lot of untyped stuff, must fly.

  71. A few notes on their ASP evaluation by barzok · · Score: 2
    I wrote ASP code daily, and have developed some rather complex apps in it. There are a few things in this article that smell like the author fell prey to marketing drivel or really has no experience with the tools.
    ASP makes programming easier by supporting untyped variables
    This tends to make my job harder, not easier. But then I cut my teeth on Pascal, C and Java, not VB. I, for one, don't like my variables shape-shifting on me (and they do that, just as they do in Perl).

    We used VBScript for our code, and we wish it had try/catch keywords; without these, writing error-handling logic was more cumbersome because we had to do manual checks in the code to see if errors had occurred. (ASP also supports JScript, which has try/catch keywords.)
    Well, the solution there is to use JScript, or write your error-prone stuff into functions (such as ADO SQL queries, object creation, etc.) so you only have to write the error-trapping code a minimal number of times. Code reuse = good

    ASP development tools are widespread and generally quite mature
    They are? The only decent one I've found is Visual InterDev, and it's lacking a lot of features that other MS development environments have and developers come to depend upon. And it's only in its second version.

    The biggest thing that they left out is the documentation. In some places, the ASP & VBScript docs are great, sometimes they suck, sometimes they're just plain wrong, or nonexistent. Every time I go into MSDN, it's a crapshoot unless I'm looking up something I had looked up previously and need a refresher on (like which is the search string and which is the string being searched in instr(); the tooltip just says "string, string2").

    The article also glosses over some of the completely undocumented, or barely documented, things that really drive developers nuts. Like when will 4-digit years be displayed, and when will 2-digit years be displayed? Answer: unless you write your own function to split the date into its pieces (day, month, year) and compose a string, it depends on the server's regional settings and the currently-logged-on user's regional settings.

  72. Benchmarking languages... by Erik+Hollensbe · · Score: 1

    The code in each language is different in regards to many things, and each step is handled differently by their respective compiler/interpreter.

    This isn't like we're looking at just performance here, we also need ot be looking at what created teh code in each, and what benefits one have over the others...

    For instance, I bet JSP would be the only solution where all of the other languages would fail.

    Also, there are languages like perl and C which accomplish pretty much anything you want, but in the process leave "ease" and the 400 mysql_*() functions in PHP behind.... PHP won't do an IPC-speaking threaded daemon though. (at least, AFAIK). Writing a daemon for stuff that shows up a lot can significantly help deliverance (no pun intended :).

  73. Re:ColdFusion is Damn Cool by rmjones · · Score: 1
    You use ColdFusion because of security? Is this sarcasm? Behold:

    Allaire ColdFusion Server 4.5.1 Administrator Login Password DoS Vulnerability (vulnerabilities) url: http://www.securityfocus.com/bid/1314 Last modified on: 2000-6-7 - Relevance: 1.000000

    Allaire ColdFusion 4.5.1 Cached File Request DoS Vulnerability (vulnerabilities) url: http://www.securityfocus.com/bid/1192 Last modified on: 2000-5-10 - Relevance: 0.999962

    Allaire ColdFusion Path Disclosure Vulnerability (vulnerabilities) url: http://www.securityfocus.com/bid/1021 Last modified on: 2000-3-1 - Relevance: 0.999867

    Allaire ColdFusion 4.0x CFCACHE Vulnerability (vulnerabilities) url: http://www.securityfocus.com/bid/917 Last modified on: 2000-1-4 - Relevance: 0.999788

    Allaire ColdFusion Undocumented CFML Tags Vulnerability (vulnerabilities) url: http://www.securityfocus.com/bid/550 Last modified on: 1999-7-29 - Relevance: 0.999571

    Allaire ColdFusion Remote File Display, Deletion, Upload and Execution Vulnerability (vulnerabilities) url: http://www.securityfocus.com/bid/115 Last modified on: 1998-12-25 - Relevance: 0.999274

    Allaire ColdFusion Start/Stop Denial of Service Vulnerability (vulnerabilities) url: http://www.securityfocus.com/bid/274 Last modified on: 1998-5-19 - Relevance: 0.998975

    Allaire ColdFusion CFCRYPT.EXE Vulnerability (vulnerabilities) url: http://www.securityfocus.com/bid/275 Last modified on: 1998-5-19 - Relevance: 0.998975

    Compare this to PHP's record:

    PHP Error Logging Format String Vulnerability (vulnerabilities) url: http://www.securityfocus.com/bid/1786 Last modified on: 2000-10-12 - Relevance: 1.000000

    PHP Upload Arbitrary File Disclosure Vulnerability (vulnerabilities) url: http://www.securityfocus.com/bid/1649 Last modified on: 2000-9-3 - Relevance: 0.999946

    PHP3 'safe_mode' Failure Vulnerability (vulnerabilities) url: http://www.securityfocus.com/bid/911 Last modified on: 2000-1-4 - Relevance: 0.999614

    PHP/FI mylog/mlog Vulnerability (vulnerabilities) url: http://www.securityfocus.com/bid/713 Last modified on: 1997-10-19 - Relevance: 0.998510

    PHP/FI Buffer Overflow Vulnerability (vulnerabilities) url: http://www.securityfocus.com/bid/712 Last modified on: 1997-4-17 - Relevance: 0.998257

    Not perfect, but considering the source is available for audit not too bad.
  74. web SCRIPTING languages. by matman · · Score: 2

    The biggest problem with web scripting languages, is that they are just that - scripting languages. They're being pushed as more than they are. If you need great performance, and a REAL language, why not write your own server, or base one off of an already existing server? That means write your program to the API of a server - like apache - or if you need extreme specialization, code something your self. I'm getting to the point where I'd like to try something like Eiffel to help me to improve the security and stability of my web based applications.

    1. Re:web SCRIPTING languages. by SCHecklerX · · Score: 1
      So when you write a buggy app, it brings down the whole server? No thanks.

      HTML::EmbPerl with Mod_Perl works beautifully for me here. The bottleneck is not in the execution of the code. It is in your bandwidth.

  75. iHTML by SpacePunk · · Score: 1

    Interesting they dind't include iHTML in their web scripting review.

  76. Re:PHP IDE by tweek · · Score: 2

    Actually after checking out the various links, I think you may have either intentionally misled or unintentionally misunderstood in regards to what an IDE is. Syntax highlighting does not an IDE make. What needs to exist (in ZD's mind) is something like Cold Fusion Studio or VC++ where you have some of the nifty auto complete and context tools. Personally I find syntax highlighting to be enough for me in vi.

    On a side note, if someone were so inclined (maybe me when i have time) we could use mozilla to create a PHP Studio similar to what people are working on for zope.

    --
    "Fighting the underpants gnomes since 1998!" "Bruce Schneier knows the state of schroedinger's cat"
  77. Prototypes by iconian · · Score: 1

    Aside from having shorter development cycles, scripting languages are also great for prototyping a website or portions of it. It's like writing a first draft. Considering how much your superiors change their minds without realizing the havoc it wreaks on your code, scripting languages are great to conceptualize and layout a site. When the design stabilizes, you can move to one of the compiled languages. It might sound like redundant work but too often is the case where you have to scrap your code to fit the needs of the bosses. And it's better to scrap a scripting language than it is to a compiled language.

  78. Re:JSP is not a scripting language by Howie · · Score: 1

    My (limited) understanding of Zend and PHP4 is this is how it works too now, or at least can do.

    I know that there are also ASP implentations that work like this - not Microsoft's but at least one of Halcyon or Chilisoft's ASP products is very similar to JSP in structure.

    --
    "don't fall into the fallacy of believing that Perl can solve social problems. Maybe Perl 6 can, but that's a ways off"
  79. PHP has an ODBC layer by tm2b · · Score: 1

    Sigh. The article is, er, factually deficient. For example:

    They claim that a major shortcoming of PHP is a lack of a standard database API. Yet PHP has an excellent ODBC layer!

    Alas, this seems to be another "I can justify my own language preferences with a lot of hand waving" article.

    --
    "It is our blasphemy which has made us great, and will sustain us, and which the gods secretly admire in us." - Zelazny
  80. Scripting language? by chris.bitmead · · Score: 1

    I don't know what all this nonsense about web scripting languages is. Any "safe" programming language that you would use for programming in the large is likely to be a good choice for web programming. You wouldn't write general purpose code in PHP would you? Then don't use it for web pages. You would use Scheme/Smalltalk/Eiffel/Lisp for general purpose programming? Then why not use it for web scripting too. For my money Java is the pick of the 4 reviewed because it's a semi-decent programming language, but no need to use it just because everyone else is.

  81. PHP comments by dizzy_p · · Score: 1

    Hmmm, IMHO a lot of the things in the article written about PHP is bollocks - like that API consitency is bad, and that there are virtually any IDEs (integrated dev. environments). What about Emacs for Gods sake! and I believe there's a win editor named phpEd wich will do the job.

    The zdnet guys should have done better research
    before writing the article.

    -larsw-

    --
    --larsw
  82. Re:Hemos .. learn English by King+of+the+World · · Score: 1

    Learn English yourself my little peasant. Abandon your childish Americanisms and King of the World will shower you with honours.

  83. Re:Tomcat != JSP (agreed) by ragnar · · Score: 2

    Good observation. I work with WebLogic and Tomcat on a regular basis and I think they should have at least given mention to commercial engines. I believe their intent was to showcase the most affordable option in each category, but they didn't explicitly say this. Also, benchmarking the free implementation (Tomcat) is a politically safe thing to do, but they might have been criticized for choosing to benchmark one commercial app server but not another.

    --
    -- Solaris Central - http://w
  84. Errata Errata by superdoo · · Score: 1
    "That the author did not had the time or the will to learn the APIs..."

    That the author did not have the time or the will to learn the APIs...

    Preview is everyone's friend...

  85. Re:Scripting is bad by slonob · · Score: 1

    It is important to make your project impenetrable to as many people as is possible.

    What do you mean you can't figure out how to change the look of your page? What are you a freaking moron?

    Don't you think a mix of JSP and scriptlets, for example, make an ideal site? How about use the scriptlets to remove as much code as possible from the front end developers and leave the stupid HTML far far away from the scriptlet whizes? Seems like a good idea to me.

    --
    Strict obedience to the law is the key to liberty.
  86. Re:TCL, the rising star by Flabio · · Score: 1

    In addition to not including Perl, I find the exclusion of TCL disappointing. Being a TCL proponent, I am constantly surprised to see how seldom this amazing language is included in tests like this. With the rapid rise in use of AOLserver, however, which makes extensive use of TCL, I hope this trend will change.

    Our website, EventNation.com, was originally written in Perl and ran on Apache. By porting it over to TCL on AOLserver, we were able to quadruple our peak load. Still, I am always curious to see how TCL compares to the some of the trendy languages, such as PHP and JSP.

    Scott

  87. SQLJ is better than JDBC by topher71 · · Score: 1

    JDBC sucks, but if you're using Oracle, I would highly recommend you use SQLJ.

    --
    -- topher71
  88. wrong paradigm by q000921 · · Score: 1
    I like PHP and use it for adding a bit of dynamic behavior to web pages.

    But the problem with all these scripting languages (well, I can't speak for CF, but I believe it works the same way) is that they mix scripting code with HTML. On bigger projects, where coding is often separate from design, that's a big problem. Even on smaller projects, it can become a maintenance headache, and it plays havoc with both language tools and HTML tools.

    I don't think the future belongs to any of these languages: they are using the wrong paradigm. In the future, you are most likely going to see XML templates, XML and relational databases, and code that puts the two together.

  89. Re:They forgot ePerl by slonob · · Score: 1

    More to the point, they forgot perl. Or better yet mod_perl. ePerl, Embperl, and Mason all are worth considering because of mod_perl. So I think you meant "they forgot mod_perl."

    --
    Strict obedience to the law is the key to liberty.
  90. Re:Why we switched from ASP to JSP/Servlets by codealot · · Score: 1

    Nice summary, I agree wholeheartedly.

    Incidentally, our experience with ColdFusion is very similar; the scripts are difficult to debug and test, performance is miserable for any complex pages, and the server fails for reasons that are difficult to explain.

    Many "features" of ColdFusion, i.e. memory management, are mostly undocumented and poorly understood. I have had CF scripts that exhaust server memory (yes, 1GB of memory) until I "tweaked" them slightly.

  91. More proof of Java's inferiority! by AFCArchvile · · Score: 2
    Seriously, don't use Java to code unless you're not worried about efficiency; Java lags like hell, even when fully compiled into classes.

    Also, consider one thing: the only scripting language that ASP didn't beat out was PHP. So before you go assuming that all of Microsoft is evil, think about the things that they did right: ASP's performance, as shown in this article; DirectSound and DirectDraw, which still beat the pants off of OSS and svgalib; and Win2000 Professional, proof that an NT workstation can be as versatile as 98 and still be ultra-stable.

    --
    "Ancillary does not mean you get to rule the world." --U.S. Circuit Judge Harry Edwards, speaking to the FCC's lawyer
  92. Curious scoring by yelvington · · Score: 1
    I found the article shallow and curiously lacking in any real performance metrics that might help me understand the differences between the languages.

    I only have up-close-and-personal familiarity with PHP. I found ZDNet's scoring odd:

    "C" for developer time. ZDnet asserts that Cold Fusion, a proprietary language, is easier to learn. Well, that might be if you've never written any code in C or shell scripts. If you have, PHP is as comfortable as an old shoe. There's an awful lot of personal preference tied up in a score like this.

    "D" for tools. Gee, no draw-and-drag programming environment. I don't get it. Maybe this is important to somebody. Have we spawned a generation of programmers who can't type?

    "C" for installation. Maybe if you're installing it under Windows. Many Linux distributions come with PHP already installed. I did ./configure, make, make install and it took about five minutes.

    "C" for back-end connectivity. This is a tough one because there is a conflict between portability, on the one hand, and performance/features on the other. If you want a portable SQL API, you're going to be stuck with a least-common-denominator API. If you want to code for performance -- putting stored procedures in the DB, for example -- they're not going to run on some other RDBMS. You've got to make a choice, and PHP lets you do that -- there are abstract database API's, but the fact that few people actually use them is telling.

    "A" for performance. Yeah, that would be important if you care about your users.

    1. Re:Curious scoring by Thackeri · · Score: 2

      Whilst ADO may provide a common interface to all the DB implementations the datasources do not all support the same features - you would struggle to use an Access datasource for any 'real' db application, it's just too limited.

      JDBC is almost identical to ADO in alot of its functionlity and the drivers supplied by various vendors seem more coherent than using ODBC connections through ADO. You often get many errors when using JDBC via ODBC and so far I have yet to see one which is a limitation of the Java side of things!

      All in all I'm sure that there must be a better way of handling database access than through either ADO or ODBC... if only someone would ocme up with it!

      --
      Better the pride that resides in a Citizen of the world, than the pride that divides when a colourful rag is unfurled
    2. Re:Curious scoring by Pfhreakaz0id · · Score: 2

      I thought the note that someone was trying to port ADO to PHP is interesting. ADO is very nice for database independence. It's always the same. Oracle, SQL Server, Access. I don't know PHP, but are you saying you have to code specifically for one database? Geez, that'd be a big pain in the ass.
      ---

    3. Re:Curious scoring by Atomizer · · Score: 1

      I've installed PHP on Windows NT, IIS 4.0 and Linux. It's easy on both. It is harder than ASP, because you do have to download it and copy a file. I think most web admins can handle the task.

      Also, DB portability thing gets messed up right away. Try inserting a date/time field into any DB, then take that same syntax and use it in Oracle. What?!? Doesn't work?! Oh that's right Oracle can't deal with raw dates, you need to use a TO_DATE (or something) function. Of course, no other DB uses that, so you now have DB specific code with a common API.

    4. Re:Curious scoring by yelvington · · Score: 1
      No, you don't have to code separately for each database -- you can use the PEAR portability objects that PHP includes (and ZDnet completely missed!), or you can use the popular third-party library PHPlib.

      But you probably WANT to code separately. If you shoot for the least common denominator, you get the smallest feature set. ZDnet includes a sidebar about performance tuning; every DB-related suggestion breaks the entire portability model. Databases are all different!

    5. Re:Curious scoring by LetterJ · · Score: 1

      On installation: Even on Windows, it's gotten pretty easy. I wrote PHPTriad which installs PHP/Apache/MySQL in 5 min or less. Over 40000 downloads since August.

      LetterJ

  93. Safety and ad hoc adaptability by Morgaine · · Score: 4

    Why are the various scripting languages in such overwhelming favor?

    For two reasons, and they're both true:

    (i) A lot of web programmers simply don't have the background to use professional development standards, nor the attention span nor attention to detail required for successful non-trivial programming in C or C++. As a result, if they used these relatively low-level tools the result would be fairly horrendous. It's *much* easier to generate buggy code in inherently unsafe languages than in safe scripting ones. Pragmatically, it makes sense.

    (ii) The web moves at a break-neck pace, and there just isn't the time to produce a well engineered product using C/C++ before the requirements have changed yet again. Scripting languages allow you to make ad hoc changes without blowing your whole foot off every time. Errors tend to be comparatively minor, easy to diagnose, and the language usually stays in control rather than bombing out altogether.

    In a nutshell, scripting languages make a lot of sense in this application area. That said, they're definitely not the answer to everything.

    --
    "The question of whether machines can think is no more interesting than [] whether submarines can swim" - Dijkstra
    1. Re:Safety and ad hoc adaptability by Thackeri · · Score: 1

      ...and mainly because c/c++ aren't well suited to the web realm?

      --
      Better the pride that resides in a Citizen of the world, than the pride that divides when a colourful rag is unfurled
  94. ColdFusion by American+AC+in+Paris · · Score: 2
    There are certain things about Cold Fusion that make it a really, really excellent language to use. It's easy to crank out web sites stupid fast. The documentation is good, and the dev community strong. It's easy to write reusable code, and it plays nice with custom code. Administration and DB connectivity are no-brainers; Cold Fusion Studio is an absolute dream to work in.

    Some shortcomings include the fact that it isn't a top speed performer, but to be honest, the bulk of websites out there will run perfectly well given a reasonable server environment and intelligently-written code. That last note, however, points out CF's biggest weakness: it's all too easy to code in for idiots, so you'll often end up with idiotic code if your project isn't managed properly. Yes, any web developer can pick it up and run with it; this is a Good Thing (I seem to recall something about 'more eyes' being good...) So long as you have a competent tech reviewing and leading code development, you can get some pretty nifty results from Cold Fusion.

    Cold Fusion's greatest weakness is spawned directly from it's greatest strength: it's a damn easy language to learn and use. If you're good, you can do some slick stuff really, really quickly; if you're not so good, you can spawn a codebase that is impossible to maintain. Blame the meat, not the product.

    --

    Obliteracy: Words with explosions

  95. JSP/Servlets/EJBs in the financial sector. by The+Dodger · · Score: 2

    Sun's J2EE is making inroads into the financial sector. I'm currently consulting for one of the world's largest banks, and they're making heavy use of JSP, Java Servlets and EJBs in a number of seperate ecommerce/ebusiness-related projects. Tomcat, Apache JServ and JRun are in use for projects using JSP and Servlets, whilst IBM's Websphere and BEA's Weblogic are in use for projects using Enterprise Java Beans.

    Using Java for this sort of stuff has a number of advantages, from what I've seen:

    1. Java is an open, non-proprietary language, so coders are easier to come by than when you're using platforms like Vignette or Cold Fusion.
    2. A lot of proprietary software packages deliberately make it easy to hook into them from a Java program (forgive me if I'm not using the right terms here - I'm not a programmer). You've also got JDBC to make it easy to hook into databases.
    3. If circumstances change, you can switch to a different engine/application server easily. So, for example, if BEA decide to double the licence cost of Weblogic, you can just switch to IBM's Websphere or iPlanet instead. That's not so easy to do if you're using a proprietary language.
    4. Portable. Develop on NT/Linux, deploy on Solaris/AIX/whatever.
    These guys are also playing around with Cocoon, although I've yet to see it actually deployed.

    You'd actually be surprised at how much open source stuff is in use here. I've come across Apache, Samba, rsync, Perl, ssh, as well as the aforementioned Tomcat.


    D.

  96. PHP IDE by N8F8 · · Score: 3
    Here is a list of editors to use with PHP. Personally I prefer HTML-Kit. HTML-Kit is free, extensible and supports new standards very quickly. The IDE is very similar to ColdFusion/HomeSite.

    From personal experience I would put ColdFusion and PHP tied for the top slot. CF is cleaner and easier for building small apps but PHP has MUCH better support and is better for medium size apps. Not to mention the easiest to learn. ASP sucks. Really there is no such thing as ASP since its really a hodgepodge of VBScript, JScript and HTML. With Microsoft's .NET it gets even worse with 16+ languages available. PHP is simple, has decent string handling and excellent online support. PHP+Apache+MySQL is a killer combo. Want an easy install? Check out PHPTriad for Windows. Chances are than any question you could come up with has been asked and answered in one os the the support groups.

    --
    "God fights on the side with the best artillery." - Napoleon, Marshal of France - speaking truth to power
    1. Re:PHP IDE by rabtech · · Score: 2
      I'm afraid you misunderstand what .NET is all about. First of all, what you are refering to is actually the ASP+ component of .NET
      It bring several advantages over the current ASP model (and some much-needed changes IMHO):

      Code is stored separately from HTML

      On first run, code is compiled into native x86 binaries which are cached until you edit the source again

      There are no more "script" languages -- you can use full VB, C++, C#, perl, COBOL, or any other supported language. (I fail to see why more choice is somehow a problem)

      You can mix languages in the same project if you wish -- your web classes can be written in high-performance C++, but glued together via Visual Basic for maintainability. You can even inherit and override the C++ classes in VB

      Security model -- all ASP+ pages run under a security context. If the user under which your site is running doesn't have access to write to %systemroot%, then any attempt to write to that directory will yield access denied.

      All of the functionality is based upon the Common Language Runtime. Since all the languages are full-blown, you can do just about anything you wish (provided your service is running under a user context that supports what you are trying to do.) Also, a *nix port of the .NET runtime is planned.


      -----

      --
      Natural != (nontoxic || beneficial)
  97. Article by jallen02 · · Score: 2

    I had the opportunity to read this article yesterday. I passed it around on a few mailing lists.

    Now in all of the languages with low pages per second I want to make a few comments.

    First just as an example since I do CF about half of the time where I work ColdFusion has features examples, caching queries, structures(NOT C like structures think associative arrays), XML transformations of data (WDDX), and several other features that can make things such as pages per second irrelevant.

    I am also of the opinon that they did very little tweaking of these servers because my own test results reflected much higher amounts in almost every language, putting CF, Php, JSP all on the same playing field.

    They used Tomcat beta 5 to determine that JSP could only do 13 pages per second.. what kinda valid test is that against polsihed products like php and CF??

    The point is that part of the test IMO is totally invalid.

    Now to move on to some finer points of the article that further reflect IMO the fact that the reviewers were biased.

    They reffered to php as an esoteric language and rated it as a C, an A being the best, in programmer productivity, this has PHB speak, and marketing written ALLLLLLL over it.

    So my basic conclusion is that this article is basically useless and it is nothing more than fun to read....

    I wont even touch the fact that each langauges have different feature sets that make them very well suited to certain orientations of development....

    Blah, Use your own brain and experience, once again ZDNet proves to me they have some clueless people.

    Jeremy

  98. Cocoon is slow by iseletsk · · Score: 2

    Even that Cocoon is a greate idea, the shear amount of work required for transofrming XML into something else is huge. This is one of the main reasons it is so slow. It is very hard to make it perform, and performance is very important, especially for the large websites.
    Maybe the performance will be better once version 2 is out. But I doubt it. The solution is probably in processing XML/XSL on the client

    1. Re:Cocoon is slow by Mr+Neutron · · Score: 1
      The solution is probably in processing XML/XSL on the client

      Wouldn't that be nice? I agree that would be the best solution, but I fear that would send XSLT the way of HTML and Java/ECMAscript - that is, nothing looks or works the same on two clients.

      I agree that Cocoon's performance is a concern, and I have higher hopes for C2. For now, throwing hardware at the problem is not such a bad option. Even server hardware is cheap compared to developer time.

      Neutron

      --
      I get my kicks above the .sigline, Sunshine.
  99. Re:Why we switched from ASP to JSP/Servlets by codealot · · Score: 1

    I think perl is actually better, but for true speed I'd use C.

    Do you really want to spend half your debugging time chasing memory leaks and SIGSEGV traps? *shudder* There are far better choices than C for long-running server applications.

    DON'T use tcl, or you will regret it.

    So what's wrong with Tcl? AOLServer is actually quite capable, it'll hold its own against PHP etc.

  100. What about ATG's Dynamo by CarbonBoy · · Score: 1

    ATG's Dynamo is becoming increasingly popular for web development. It would have been interesting to see how their .jhtml/Dynamo Servlet concept rates compared to the other technologies.

  101. Re:"PHP on large, important projects..." by mosch · · Score: 1

    Okay, and what's your point, crack smoker?

    --
    "Don't trolls get tired?"

  102. Cold Fusion isn't that simple by brlewis · · Score: 1

    Speaking of results from average programmers, take a look at MBTA Bus Schedules. View an individual schedule. You'll notice the title bar says "Schedule for #routenumber#", clearly the result of a programmer error re. CF syntax. Just because some of the syntax looks like HTML doesn't mean Cold Fusion is really simpler than other languages.

    It's unlikely that such an error would have been made had the MBTA used a truly simple language like BRL.

  103. Re:Scripting is bad by UsonianAutomatic · · Score: 1

    If all you're using scripting for is inserting a "quote of the day", maintaining your guestbook, and "You are visitor number 00000000000011 since 12/8/96" hit counter, I guess that argument could be made. (?)

    It seems to me, though, that the whole point of using server-side embedded scripting is to merge data and presentation; a script pulls from a database or XML file and plugs the data into a template. Data isn't "tainted" by presentation, and changing the look of the site is simply a matter of changing the template. Why drag Java servlets and application servers into it?

  104. Re:JSP is not a scripting language by rossjudson · · Score: 1
    Exactly right! And there are some extra-cool helpers (like Hammock that can really help you out. Hammock generates most of the HTML for you, based on simple, familiar layout systems.

    In general, it's really easy to transform Java objects into and out of XML. And when you do that, you can style them into HTML, or anything else.

  105. Development tools for JSP??? by tsmith213 · · Score: 1
    From the article:

    Development tools are also generally lacking in the JSP space

    What kind of devel tools does this guy want? An editor with syntax highlighting? Gimme a break. Sheesh, you don't even have to use javac for JSP.

    Why are so many programmers wussies these days?

  106. Re:Altogether a poor article by DrunkenChinaMan · · Score: 1

    You've obviously only read a few articles relating to CF, and the first line of your post automatically assumes that the source is biased by potential advertisement oppurtunities (typical of the slashdot community)

    a) Python, Perl: After reading 200 pages of your average "intro to perl" book - you're still just learning how to work with variables and strings - maybe some looping - still scratching your head wondering when they will get to tying this into your web site.
    After reading 200 pages of your average "intro to CF" book - you're tying your web application into databases; writing transactional SQL code; using complex date, time, string, file manipulation, etc. functions and doing billable work while showing massive results. This is all while guillermo - the new perl guy - is trying to figure out why he is getting 'syntax error' when he is trying to parse a string.

    b)In a real corporate environment, maintainability and portability would probably outshine all three, ruling CF and ASP out

    use the fusebox methodology and you won't run into that. Your templates are included into the HTML as objects. Store all of your global variables in the application.cfm file and it will take you 2 seconds to take the whole application to another machine.

    --


    Oracle.
  107. Re:What about dynamic GIF/JPG figures and PDF file by codealot · · Score: 1

    There is so much free and commercial Java and COM libraries available for JSP/Servlet and ASP or Cold Fusion developers, but not for PHP.

    That's partly true. ColdFusion however tries to be portable, with availability on NT, Linux, Solaris, and others. COM certainly isn't available on all those platforms.

    For that matter, when using PHP on Windows, you could write your own COM bindings... you have the source.

    That is to say, the availability of COM isn't so much a language issue as a platform issue.

  108. Re:Altogether a poor article by Ian+Bicking · · Score: 3
    Users must make a concerted effort to keep track of the independently changing components of PHP they are using
    I've just started doing development in PHP, and I've really noticed this as a problem. It's not the size of the API that's a problem -- it's the lack of organization. There's nothing like modules, there's no good naming convention, and there's so damn many functions.

    PHP is an evolved language, and it really shows. There wasn't a conscious and conservative philosophy behind it. That's both a plus and a minus -- but I think more minus than plus. Everything is there, and that's great -- but it's hard to find it, or when reading code to figure out where it came from.

    I can also understand why they didn't cover Perl or Python, because both of these aren't really web scripting languages, they are general purpose. Of course, there are HTML embedded versions of both of them but they don't seem to have caught on, which is too bad. And Zope/DTML/Python isn't really scripting either, but considerably more than that (though I'm under the impression that Cold Fusion attempts to be something similar).

  109. Re:How about Vignette or more industrial strength by Volatile_Memory · · Score: 1
    Having worked with Vignette, I wouldn't even put it in with these technologies. ASP, JSP, PHP & ColdFusion are really designed to create dynamic web applications, whereas Vignette is geared toward serving flat HTML pages through templates.

    And don't even get me started about their use of TCL as the underlying language. I found their implementation of TCL almost entirely inadequate for all but the most basic if...thens. I even found TCL commands that would not work within Vignette... it didn't seem that the entire TCL language was supported.

    I'm not bashing Vignette. It did quite well on the project I did, but I dont think it is anywhere close in flexibility to the technologies listed here.

    /**
    I have a "Zero Policy" tolerance.

    --

    /**
    I have a "Zero Policy" tolerance.
    */

  110. Altogether a poor article by Pac · · Score: 5

    This article is rather simplistic and poor, both in content and in conclusions. I will not discuss the fact that the "winner" is probably the only potential advertiser (PHP does not advertise, Microsoft and Sun won't advertise only for yet another article about ASP or JSP), but let us see what was left out, misinterpreted or plainly wrong:

    a) Python, Perl: How do you write a serious article about web scripting languages leaving these two out? Perl is the mother of all scripting language, Python is a rising star with lots of supporters and amj already huge codebase. And both perform as well as any of the examined technologies.

    b) Their priorities were "of speedy development, ease of use, and a complete and powerful API". In a real corporate environment, maintainability and portability would probably outshine all three, ruling CF and ASP out (my opinion, yuor mileage may vary) and leaving the stage for PHP, Python and JSP (more or less in this order, from worst to best).

    c) How on earth would COM support make ASP harder to write? In my experience, access to COM objects let you write smaller and sipler scripts.

    d) PHP is probably as easy as ASP to learn, it fells rather natural to any C/C++ programmer and it has probably the most powerful API for Web programming of the pack. The the author did not had the time or the will to learn the APIs ("Users must make a concerted effort to keep track of the indepen dently changing components of PHP they are using")

    e) Also, the lack of an standardized database API in PHP is botha curse and a blessing. First, there are some PHP libraries out there addressing this issue. Second, the trade here is speed for convenience. Third, all data acess function were made similar, so changing database is not harder than it should be. And finally, PHP supports ODBC.

    f) Tomcat is a reference implementation. There are faster alternatives out there.

    I will not go on. Forget this article.

    If you need speed, ease of use, a fair price (let us say, zero or less), good portability and good mantainability, use PHP, Python or JSP. Or even, if you are really sure your code will never have to leave a Windows box, ASP/COM.

    1. Re:Altogether a poor article by Pac · · Score: 2

      My bias against CF may be even outdated, since the last time I saw it being used was two years ago. But, and I commnet from a software development professional perspective:
      a) It still seems to suffer from performance problems.
      b) It is not portable.
      c) CF experience is not transferable from a field of application to another. With Java, PHP and ASP, I can easily use/hire developers without web/internet experience and have them learn something that will complement their knowledge (in Java, C/C++, VB, respectively). And the contrary is also true, I can easily take the web developers and grow them into full-fledged programmers. It does not seem to aply to CF.

      As for your first point, I never said Perl is easy to learn. I was only pointing that leaving Perl out is unfair and incorrect. Perl codebase running real life sites probably outnumber CF,PHP and JSP codebases taken together. And what you say of CF is probably true for Python or ASP too.

    2. Re:Altogether a poor article by glitch_ · · Score: 1

      Just some points that you made, that I'd like to emphasize.

      ASP is not to be used alone. On any site that generates any traffic you will need to encapsulate most of your code into COM objects written either in VB or VC++. It makes the code cleaner, easier to understand, and faster. But this also means you have to master a scripting language, and at least be fluent in 1 or 2 more genuine, bonified, programming languages. Many ASP developers only know ASP, that's all the want to know and that is all they care to know. Also, I see way to many web designers calling themselves developers and way to many web developers calling themselves programmers.

  111. Odd review by Rob+Kaper · · Score: 1
    I'm not a Perl freak, in fact I love PHP, but any review about web scripting languages for Linux which only lists Perl and doesn't include it as one of the main options, well.. sucks.

    They make it sound like Perl is dead and only great if you're already using it (right CmdrTaco?) but not an option when starting with a new project.

    1. Re:Odd review by jallen02 · · Score: 1

      Honestly I do a lot of web development on the backend

      I write a lot of Java, and a lot of C++, and I do a lot of tuning of ColdFusion

      And almost any start up which is based on VC funding tend to use the more "trendy" platforms.

      YOu have to think of it like this, Is it going to be easier for me to find 3 Three CF develors and one Java developer and one DBA for Oracle, or is it going to be easier for me to find 4 perl developers on the drop of the hat given the current trends in the market.

      I can tell you this... Perl is a rare skill to find people who can write really good code with it

      Jeremy

  112. String processing by uradu · · Score: 2

    I think one of the big reasons is that most popular scripting languages have considerably better string handling support than traditional compiled languages. And since string processing is pretty much what most web scripts do most of the time, that's a good thing. Think strings in C/C++ and you get the point. While there are certainly many advanced string classes available, C/C++ still puts certain semantic constraints on their use. Scripts usually have few or none of these constraints.

    As an aside, I think Delphi is one of the most suitable traditional compiled languages for web development. That's because of the decent string support, the clean and readable syntax, the good speed, and excellent database connectivity.

    The other main advantage that scripts offer is cross-platform portability. A set of PHP pages should port pretty well from Linux to Win32 depending on what they do. The same can't be said for binary DLLs or even their source code.

  113. They forgot ePerl by quigonn · · Score: 1

    ePerl combines the into-HTML-embeddability of PHP with the power of Perl. Just have a look at http://www.engelschall.com/sw/eperl.

    --
    A monkey is doing the real work for me.
  114. Since when has ASP been a language? by onion2k · · Score: 5

    ASP isn't a language. Its a container for other languages. Its used with VBscript, JavaScript and PerlScript, alongside HTML (And others..). There are no commands in ASP.

    As far as I remember ASP was designed to be a sort of glue that holds together a bunch of custom COM objects and DLLs. It was designed to be an operating environment.

    In my experience building dynamic web sites (not much.. few years) ASP and PerlScript, with a drop of VB in times of boredom, have always been a good, flexible team. Depends what you're doing..

  115. 13 pps for JSP? by KarmaBlackballed · · Score: 1

    I know that Java has to be compiled at runtime, but when properly configured on a server, it does not have to be complied again to be used. The compile overhead can be significant.

    It isn't clear from the article if they properly configured the Apache Linux server to persist the compiled Java code between calls. 13 pages per second is not production ready relative to any other product (considering that PHP and ASP were over 40 pps.)

    --

    --- -- - -
    Give me LIBERTY, or give me a check.
  116. JSP isn't NEW!!! by Yousef · · Score: 1

    I've been using JSP for over a year and a half. In computing terms that makes it OLD!
    New Atlanta (http://www.newatlanta.com) have had a plugin for Netscape Enterprise Server 3.6 for some time. JSP is also supported by MS IIS (once again with the New atlanta plugin), Inprise Application Server, IBM Websphere, and the newer version of Weblogic Application Server.

    JSP is a Java extension of Servlets. It allows you to leverage the OO concepts of Java in what is basically a HTML environment.
    Besides, the real beauty of JSP is that you can invoke Java Beans directly, and leaving you JSP relatively clean of Java Code (Although I've seen some REALLY BAD/DIRTY JSP).
    I would also take issue with the Articles description of JSP as a scripting language.
    All JSP is compiled to a java servlet on the Server! Hence it isn't what I'd call a script.

    --
    -- "To ask a question is to show ignorance; Not to ask a question means you'll remain ignorant."
  117. useless measure by websensei · · Score: 1
    JSP pages must be compiled the very first time they are called. This is where JSP will be MUCH slower than any other scripting solution. This is well documented and obvious, and is reflecteed in these scores. AFTER this first load, though, every subsequent request (until the server is restarted) is MUCH faster as the servlet's contents are resident in memory and do NOT need to be compiled again. And this is where JSP starts to kick the others' tails.

    So some benchmark comparing speeds will NOT reflect the real-life performance of JSP (even if they weren't using a better container than tomcat). HIGH VOLUME sites increasingly turn to JSP (WebLogic etc) because of its great performance under heavy load.

    --

    La via sola al paradiso incommincia nel inferno
  118. there's more to web scripting than that by orabidoo · · Score: 2
    Making a good dynamic site is more complicated than sticking some php/java/vbs/whatever code in the middle of an html file. First, you really don't want to put your programming logic and your html in the same file, for two reasons: 1) programmers and designers should not interfere w/ each other's work, and 2) program code stuck in the middle of text is not maintainable; for large applications you really want to create libraries of functions and do things in a structured way. Second, you probably want to treat your whole website as an OO application, to handle a hiearchy of common pieces (ex. navigation) as well as looks or themes.

    There are *many* technologies out there to do these things right. Apache with mod_perl and either AxKit or the Templating Toolkit (or others) can do it. I hear PHP can do it using the right libraries. Java servlets, for all their verbosity, can do it using something like go.com's Tea system.

    I have never used ColdFusion or ASP myself, but I know many people who have, and I've repeatedly heard that they're great for quickly building something, but very bad for managing complexity.

  119. Re:You missed one, ZDNET by ozzmosis · · Score: 1

    thats kinda weird , because I read about it on that page.

  120. Web Scripting... by RedElf · · Score: 1

    Such an interesting & deep topic this can be...I've coded HTML for over 3 years now & have studied the benefits of the different coding languages before deciding PHP was what I needed to go with.

    One day when you go buy batteries for you Palm Pilot you will notice PHP-Enabled checkout stands!

    -RedElf

    --
    You know, I have one simple request. And that is to have sharks with frickin' laser beams attached to their heads!
  121. Re:Altogether a poor article - I agree by Darkling-MHCN · · Score: 1

    This article is obviously written by people with a total bias... Even though by their own admission JSP was the slowest and the hardest to write in, they still toted it as it being the "core Web scripting language in a few years".

    They neglected to even look at ASP+ which would have a benchmark far in excess of the others as on the first hit it is compiled by the server the and run as a binary there after. With all the power of the libraries in the .NET platform accessible to it.... plus the slick Visual Studio interface behind it... There's no doubt what my pick would be.

  122. ColdFusion is Damn Cool by bluemiracle · · Score: 1

    I have always believed in the ease of use and amazingly simple development with Coldfusion. I have always used Coldfusion for it's lack of security bugs. But of course, security is only as good as the code you write.

  123. I would have liked to see REBOL in the comparisons by cheekymonkey_68 · · Score: 1

    I've read that REBOL could be useful for web scripting, but have no idea performance wise where it would fit in against PHP,ColdFusion, JSP, & ASP

    Anyone used it for web scripting yet ?

  124. FunkScript is obviously the best. by Anonymous Coward · · Score: 1

    When is comes to scripting, nothing beats Funkscript.

  125. this article is pathetic by CrazyJ020 · · Score: 2

    I looked through the ASP source used for this article and it is absolute spagetti. I hope this page does not represent most of the ASP out there on the web. No wonder these guys only got 49 req/sec. As an experienced ASP programmer I can confidently say that I could get better performance than these guys with only half the hardware and the same functionality. I am thoroughly disgusted. I am not familiar with any of the other scripting languages that were evaluated, therefore I cannot comment on the source used. If the source looks anything like this ASP, I would take these performance results with a grain of salt.

  126. Scripting is bad by Anonymous Coward · · Score: 1

    It encourages mixing of the presentation and data layers, causing problems with future maintenance of code. This is corrected through use of Java servlets and application servers ATG, Tomcat etc.

    1. Re:Scripting is bad by ignatiusst · · Score: 1

      Oh, yeah... and we all know how important it is to keep out any corrupting influence from all that important detail in the presentation layer...

  127. Re:JSP's and Older Techs by hship · · Score: 1
    I also felt pain at the lack of (free, open) availability for WebObjects.

    I've been working on my own framework, Tapestry, which shares many features with WebObjects, but uses a very different component object model that is much more compatible with Java and J2EE.

    (It isn't quite as powerful as WOF, and it makes the developer do a few extra things, but its more open, extensible and scalable and not tied to any particular vendor).

    We're using Tapestry internally on a very important application for one of our clients (a multi-billion-dollar bank interest).

    Tapestry is LGPL and works quite well; it's also heavily documented (in Word and using JavaDoc), and has tutorials and example code, including a real J2EE application.

  128. ROFLMAO by Stu+Charlton · · Score: 1

    sorry, the green -> native threads thing just made my day. Thank you. :)

    --
    -Stu
  129. PHP relatively new: by Anonymous Coward · · Score: 5
    "PHP is relativeliy new and it's not mature enough for corporate use."

    Is this a joke ?

    PHP has been here since 1994. It's older than the other languages in the chart.

    Also, they state that PHP has no uniform database API: This is false:
    You can use ODBC for all kinds of database. However, you have the alternative of using the direct APIs to improove performance.

    1. Re:PHP relatively new: by Wonko+the+Sane · · Score: 1
      (why isn't there a stand-alone version of PHP?)

      Using PHP As A Shell Scripting Language

  130. Re:JSP's and Older Techs by Stu+Charlton · · Score: 1

    The problem of JSP's causing gucky HTML pages is something I think we're going to have to recognize as unavoidable.. The world of dynamic page generation has two options:

    1) Put your HTML in your code (Perl, CGI, servlets, etc)
    2) Put your code in your HTML (ASP, JSP, PHP)

    I think it's a trade-off on a case-per-case basis.

    And don't forget that JSP's tag libraries *really* clean things up if used properly. (They're quite new though)..

    --
    -Stu
  131. Re:PHP with JavaBeans, Best of Both Worlds by TurkishGeek · · Score: 4

    Meanwhile you will have ended up with two different languages to support in the same production environment. This may not be a problem for a small design shop where you have a couple developers that know both languages and the code that everybody works on; but in a big company environment, it makes life very difficult.

    Despite being a useful "hack language" to create small, simple contraptions; PHP is not exactly the most readable/maintainable language on Earth. Add to that the thousands of Web designers who believe they became programmers by just writing some simple logic in PHP, and you have a lot of poorly written code in a poorly documented (yes, I know about the online manual. Go see for yourself how poorly Oracle functions in PHP are documented, for example.) language. Just like Perl, the flexibility and power comes at the expense of readability and maintainability.

    I fail to understand why anybody would want to use PHP with JavaBeans if they know enough about Java to figure thise setup in the first place. I don't think there is anything in particular that you can do with PHP but not with JSP. I don't think the JSP functionality can extend any more, since anything that can be done on the server side in Java can be done in a JSP page.
    --
    Zigbee Central: A Zigbee weblog
  132. Re:phplib (was: PHP relatively new) by mosch · · Score: 1

    Actually you should check your history there. ODBC is a Microsoft invented standard. You should thank them for this innovation.

    --
    "Don't trolls get tired?"

  133. It's because they used Tomcat. by TurkishGeek · · Score: 1

    For some unknown reason, they chose Tomcat, the lamest JSP engine available. Had they chosen Resin or Orion in conjunction with the IBM JDK, the results would be quite different.

    --
    Zigbee Central: A Zigbee weblog
  134. Cold Fusion moving to JSP by TedTschopp · · Score: 1

    I run a site which uses CF. Nice product. It is not the saviour of the free world, but it is nice. The one thing that I found interesting is that they failed to mention or they didn't know, that for version 5.0 of Cold Fusion, CF will be an abstraction layer on top of JSP. Or at least that was the plan the last time I heard it from Allaire.

    --
    Fantasy remains a human right; we make in our measure and in our derivative mode... -- JRR Tolkien
  135. Re:Tools? by Anonymous Coward · · Score: 1

    Nope, that would be Microsoft Script Editor, Kiddie Edition 2000.

  136. Re:HTML::Mason by madprof · · Score: 1

    I am using Mason to develop a large-ish site for selling goods on-line and I've found it fantastic.
    The flexibility and power of the system is truly astonishing.
    For those not in the know - each page is constructed out of components which are a mixture of HTML and Perl, very much like PHP. Components can output something but don't necessarily have to. The best bit is that their output can be cached so using the same component 50 times in the same page will not require it to be processed 50 times.
    I'd love to see how mod_perl/Mason stacks up against the competition performance-wise.
    This is, for me, the future of web development with Perl.

  137. Errata by Pac · · Score: 2

    Perl is the mother of all scripting language, Python is a rising star with lots of supporters and amj already huge codebase

    scripting languages
    an already huge codebase

    access to COM objects let you write smaller and sipler scripts.

    simpler scripts

    The the author did not had the time or the will to learn the APIs ("Users must make a concerted effort to keep track of the indepen dently changing components of PHP they are using")

    That the author did not had the time or the will to learn the APIs ("Users must make a concerted effort to keep track of the independently changing components of PHP they are using") does not change this.

    Preview is your friend... :)

  138. Server-side Java is only getting faster by Trinition · · Score: 1

    As everyone has pointed out, Tomcat is only a reference implementation. But what about the server-side Hotspot VM? These are just now coming out and offer to improve performance beyond beleif for server-side java!

  139. Article missed out on *Commercial JSP* products. by jonbrewer · · Score: 1

    I've noticed that when JSP is implemented in large-scale projects (for example, in banks), JRun is often the product used.

    The authors may have stayed away from JRun to keep from pushing Allaire too much - as the same company that brings us ColdFusion also brings us JSP - but I wish they hadn't. It would be nice to see how the performance stacks up.

  140. Abstract Database access by Phill+Hugo · · Score: 3

    Try Zope. www.zope.org

    ZSQL Methods are completely independant of your actual database and you can change your external database with a couple of clicks (if you need an external one in the first place. Zope has a long running persistant object system of its own which keeps instances of things alive along with their data until you specifcally delete them - even between reboots!

    The underlying Python DB access is specific to whatever database you use but in Zope Land it is wrappered around Zope DB drivers which the ZSQL Methods talk to. Similar to what the DB.php stuff in PHP4 does but with a more compelling reason to use it.

    They also encourage code resuse as you can template your queries just like your HTML..

    SELECT * FROM users
    <dtml-if username>
    WHERE user=<dtml-var username>
    </dtml-if>

    Then when you call them, their magic happens and out pops the results in a python list.

    Made me wonder if they included Zope in this round up if Zope would have A or D for tools, its web interface being its own tool really.

    Phill

  141. JSP's and Older Techs by under_score · · Score: 5

    I used to do a bit of WebObjects development back in the OpenStep days. WebObjects had three great things going for it: great tools, fantastic database connectivity middleware, and really solid web scripting and tag extentions. Recently, I have been doing Java 2 Enterprise Edition development. At my day job, I am working in a high availability application server environment, and in my night job, I am prototyping a educational web system. In that second role I am using JSP's. (Dislaimer: I love Java compared to C++ but hate it compared to Objective-C.) As the article points out, the tool support is missing, and I personally find JDBC to be a pretty weak database interface, but the actual JSP technology is really cool! I've been working on custom tag extentions and they really rock - solving the problem of separating display code (html) from business logic and model code (accomplished with the use of JavaBeans and EJB's). Personally, I think that the Java platform is the way to go in the long run. JSP's are a really good step to completing the platform and the Tomcat reference implementation is a great tool for prototyping.

    1. Re:JSP's and Older Techs by Hapko3 · · Score: 1

      I don't think you can blame a language for the mistakes stupid programmers make. The fact that JSP allowes arbitrary Java code is very convenient at times. However the companies and programmers that screw up their presentation and logic layers just because they can deserve what they get. I have been working with JSPs Servlets and EJBs quite a bit over the past few weeks and Im quite impressed with the J2EE platform.

    2. Re:JSP's and Older Techs by iapetus · · Score: 1

      Just a couple of points to raise: firstly, there isn't exactly zero tool support for JSPs, just for Tomcat. Commercial application servers are (unsurprisingly) slightly ahead here. I'm currently working with Websphere, which while it has some issues, does have useful support for generating and maintaining JSPs (through Websphere Studio) and good administration and testing tools (integrated into VisualAge).

      As you say, JDBC probably isn't the best interface to be using directly in all cases, but EJBs are great for this sort of enterprise application: the business logic developer doesn't need to know anything about the back end and how it's accessed anyway.

      --
      ++ Say to Elrond "Hello.".
      Elrond says "No.". Elrond gives you some lunch.
  142. Easier and faster to program for.. by Mindjiver · · Score: 1

    Im a web developer I dont know C/C++ good enough to make a web-app with it. But with asp/php I can make several in a very short time frame.
    But the relative ease of programming will bite you in the ass if you dont have a good head and can structure your code in a good way. ASP/Vbscript is a big reason for this. Many people without any programming skills will try to make a web-application and the result will often be very bad!
    "One World, One Web, One Program" - Microsoft Promotional Ad

    --
    I know not what course others may take; but as for me, give me liberty or give me death!
  143. 'far and away more advanced' by mosch · · Score: 1

    I've looked at phplib.netuse.de, and don't see what's 'far and away' more advanced. Could you please elaborate, such that /. might contain useful information?

    --
    "Don't trolls get tired?"

  144. Re:Suprising by ZFusionGuy · · Score: 1

    Hmmmmm. What exactally happens when your beautiful PHP constructed Site begins behaving badly? Who do you call at 3:00 in the morning for technical support on your site???? Show me the 1-800 number for PHP Technical Support? Corporate america cannot afford to wait for someone to reply to a "help" request on some listserv. Period. These products are bought for a lot more that price tag alone. Think Support!!! Why do you think that Sun gives away their products? Because they like you??? "I've never met a fish I didn't like..."

  145. Re:phplib by mosch · · Score: 2

    It's not quite as good as the template functionality, but what i do is create for every page, two files. foo.php and foo.ihtml. here's an ultra simple example

    ----foo.php
    $username = "Bob";

    ----foo.ihtml

    Hi ! How are you today?

    ---

    as noted, it's not as nice as the phplib templating, but it's better than nothing.

    --
    "Don't trolls get tired?"

  146. What about Cocoon? by Mr+Neutron · · Score: 3
    IMHO, one of the most exciting things to come out of the Apache XML project (or Apache in general) is Cocoon. Cocoon includes the eXtensible Server Pages (XSP) Processor which allows complete separation of content and presentation. XSP is what JSP wants to be when it grows up. It provides tags for the inclusion of Java logic into dynamic XML documents - other languages will be supported in the future. This, combined with the XSLT engine (Xalan) provides a very powerful content generation and formatting framework.

    Anyone who has to design, implement and support large, web-based applications should check out Cocoon.

    Neutron

    --
    I get my kicks above the .sigline, Sunshine.
  147. Freedom (as in beer) still means something by franksbiyatch · · Score: 1
    For people learning these technologies, trying to make an educated decision which is best for their needs, the ability to download and start hacking right away means quite a bit.

    Those of you still in the academic environment remember: there will come a day when you can't buy all your software for $5 a license.

    href="http://www.ridiculopathy.com/index.php?displ ay=20001031">Ridiculopathy: Halloween coverage

  148. webmacro by trance9 · · Score: 2

    JSP is not a good scripting engine for Java in my opinion. It forces you to put all your code and your HTML together in one place. A real mess. I have the same problem with ASP and PHP.

    Check out WebMacro: webmacro.org

    WebMacro is a Java servlet template engine which allows you to separate this stuff. You write pure Java code in the back end, and straight up HTML with some formatting codes in the front.

    It makes everything really clean.

  149. Re:Why we switched from ASP to JSP/Servlets by scode · · Score: 1

    Garbage collection is not something that it done once in 10 minutes. You make it sound like a Java based server would suddetly "stop" after a few minutes - WRONG.

    Point number 1) Even given a PRIMITIVE Java Virtual Machine, GC tends to get done at least once every few seconds, or more often.

    Point number 2) Moden JVMs should handle it perfectly with generational and/or incremental GC. Just try running some huge application like Enhydra (www.enhydra.org) and you'll notice it's not a problem.

    GC is NOT a problem unless you want a 200 fps in some game and a GC paus takes 10 milliseconds...

    --
    / Peter Schuller
    --
    peter.schuller@infidyne.com
    http://www.scode.org
  150. Tomcat is dog slow by MarNuke · · Score: 1
    Do you know how slow Tomcat really is!??!

    Let me tell you. It can ONLY do 50 requests a second, anything more then that, IT BLOWS UP!! I mean self termates, died, buries it self, stumbles around drunken.. etc.. The only way to get working again is to restart it.

    I have tomcat 3.1 running, I'll show you.

    ./ab -n 100 -c 100
    Complete requests: 100
    Time taken for tests: 2.507 seconds
    Requests per second: 39.89

    ./ab -n 500 -c 500
    Complete requests: 500
    Time taken for tests: 10.208 seconds
    Requests per second: 48.98

    ./ab -n 1000 -c 1000
    Complete requests: 1000
    Time taken for tests: 20.465 seconds
    Requests per second: 48.86

    ./ab -n 2000 -c 1000
    Complete requests: 2000
    Time taken for tests: 42.394 seconds
    Requests per second: 47.18

    Ok, enough playing around. Let's give it some real load..
    ./ab -n 10000 -c 1000

    web 30907 0.0 0.0 0 0 ? Z 11:41 0:00 [java defunct]

    oops!

    # /usr/local/apache_t3.1/bin/apache-tomcat restart
    --
    MarNuke
  151. PHP *is* relatively new by mosch · · Score: 3

    Have you written any large projects in PHP? I mean really large, mission-critical projects. If so you'll quickly see that while it has strong points, it's far from perfect.

    The database connectivity is far from perfect, and ODBC isn't the magic bullet some people like to think it is. While you can use ODBC to connect to an Oracle database, it will offer significantly lower performance than using the ora_ functions.

    If you want an example of the lack of uniformity in the database API, look at odbc_fetch_row, it takes a statement handle, and optionally a row number. If the row number is omitted, it returns the next row. Now look at pg_fetch_row, it takes a statement handle, and a mandatory row number. If you omit the row number, it just plain doesn't work.

    Look at the functionality of something as simple as 'break'. One would assume that break would exit any looping construct, whether it be for, foreach, or while. Well, you'd be right that it exits for or while, but it doesn't exit a foreach.

    And there are other inconsistencies too, which are obnoxious, for example 'is_array, is_long, is_dir, and is_double' all do what you'd expect. but it's not 'is_set', it's 'isset'. If you take a reference to $this in the constructor for an object, it's not the same reference that the new class returns. (Bug 7454)

    And they're right, debugging support for PHP is horrible. The debuggers that are out there only work on certain versions, so if you're doing development against the CVS version of PHP in order to get the latest bug fixes, they won't work, because of changes to the Zend internals. error_log is the equivalent of debugging with printf, and if you add your own error handler, there's a bug which prevents it from showing the error message. (Bug 7283).

    PHP has been here since 1994, but it's been massively rewritten at least twice. Once in PHP3, and again for PHP4. It has a lot of potential, enough that I'm using it on large, important projects. But I wouldn't dream of using it on a large, important project that had to be done in 2 weeks. The language still needs time to stabalize.



    --
    "Don't trolls get tired?"
  152. phplib (was: PHP relatively new) by danimal; · · Score: 1

    Yeah, this attitude is frustrating. I love PHP, I code in it daily. Me an PHP, we go way back ;-)

    I do want to point out however, JDBC the unified DB API for Java is a very appealing feature. ODBC is a very slow API and requires a Microsoft environment to run your DBs (I think there might be ODBC implmentations on Unix [variants] but this is hole in my knowledge). I have developed *many* DB (MySQL, MSSQL, mSQL) apps with PHP and what I would give to have the flexibility of a unified API.

    I have heard that phplib can mimic a unified DB API but I have not yet used it for fear of performance problems using an external foreign 'lib'. I gather this mainly from the fact that many great PHP+MySQL projects do not use phplib and have the problem of porting to other DBs

    If you are a phplib fan and want to try to convince me I am all ears.

    --
    "Please do not reply if you're an evil alien! Thanks"
  153. Why we switched from ASP to JSP/Servlets by e_n_d_o · · Score: 2

    I won't make any comparisons to PHP or ColdFusion, I haven't used them.

    But in terms of performance, my company moved from ASP to JSP for performance among other reasons. My company creates Intranet solutions, Web-based training, dynamic-content Web sites, etc.

    ASP has a few major glaring issues.

    1. Performance: When scripts are asked to perform complex operations, such as dynamically creating one of our site administration screens that have more tables, frames, than a big horse can ----, ASP crawls. As our systems got more complex, we moved them to VB COM components, and later to VJ++ COM components for speed. When we started switching to the full Java technologies, the testers reported a big increase in speed and usability, even though the applications were getting more complex. Before we "officially" switched from ASP to JSP, I ran a few very practical tests on both, to see how fast they might run in our applications. JSP flattened ASP, normally by a factor of 10, sometimes by 100. (I did this test 18 months ago, with Apache JServ)

    2. Less bugs in my code. ASP is a breeding ground for bugs. Because its interpreted, SYNTAX ERRORS can exist in your code and you won't know about them til some client calls up having used some obscure branch of an If statement that missed testing.

    3. Less bugs in their code. Ever heard of a "Catastrophic Error?" If you haven't you haven't used ASP for long enough. If you use this technology for a long time AND REALLY PUSH IT HARD, it will snap on its own. This is my biggest problem with ASP. I've had cases where my code was correct and when executed would nearly bring down the server. The solution was sometimes as simple as switching the order of two non-initialized variable declarations.... this leads me to believe there are great flaws within the ASP engine. Because no one can probably believe this point, let me just give you an example....the following program might work:

    Dim A = 5
    Dim B = 6

    Foo A, B

    While this one might bring the server down:

    Dim B = 6
    Dim A = 5

    Foo A, B

    I've seen this happen! I haven't the slightest clue as to what caused it, but it often happens on very large scripts (running the above code isn't going to demonstrate the problem).

  154. PHB Article by n-baxley · · Score: 1

    This is definetly a PHB article. High on opinions, and low on details. I've used CF alot, and think it's a great language. It actually does have a lot of functionality, and the custom tags let you create anything you want. I haven't used JSP, but others at my company seem to think that it's really where it's at. ASP is definetly not a good tool. Compared to the other languages, it has been shoehorned into being a web based language. It takes much more code, and it is harder to understand what that code is doing. I've just started using PHP, but I see a lot of similarities between it and CF, and think that it will be a contendor. Don't flame me on this, but the disadvantage of Perl is that you have to do all of the prints and subroutine calls. With the other langugaes, you intersperse the code in with your HTML and that allows you to develop and alter the pages more quickly. I wonder if any of these languages will come out on top, or if we'll be having this discussion again in 3 years.

    Nate Baxley

  155. 100x does make a difference by Great_Jehovah · · Score: 1

    As you stated it does not make a difference for one user but for 1,000 users all accessing the same site at once....

  156. PHP with JavaBeans, Best of Both Worlds by peterdaly · · Score: 2

    Pros: Flexible if somewhat haphazard language; growing pool of support.

    Cons: Relatively new; few tools; lacks unified database API.

    Bottom Line: Not mature enough yet for widespread corporate use, but holds promise.
    --------------
    I have starting moving my web development projects (at least the largest one I am working on) to a PHP/JavaBeans solution. I no longer have to mess with any of the database API's in PHP, as my JavaBeans do all the dirty work. Currently, JSP seams to be very immature, based on the research I have done.

    Using a PHP/JavaBean model, I try to keep the API (HTML) layer as thin as possible. In addition to being able to add other interfaces easier (XML, Java Applet, etc.), I can easily migrate to a JSP front end if the JSP functionality catches up and/or passes PHP. There are currently some things my site currently does in PHP, which JSP does not support, and would take way to long (and more java skills than I have) to program into a bean.

    This should prove to be an interesting discussion to read through.

    -Pete

  157. phplib by mosch · · Score: 2

    phplib was an excellent library for use with PHP3, however the best parts of it (namely session support) have been included in PHP4 standard, so there isn't much need to look at it anymore, except for legacy use, or if PHP4 is still too young for your purposes.

    --
    "Don't trolls get tired?"

  158. "PHP on large, important projects..." by doctorwes · · Score: 1
    "...that had to be done in 2 weeks."

    thesims.com uses PHP and Oracle, and had to be done in not much more than a month, I believe.

  159. Or AxKit... by Matts · · Score: 2

    For Perl users out there, don't forget about AxKit - an implementation of some of the same technology as Cocoon, but in a mod_perl framework (with a few differences too). Of course we support some different technology, and have a few different tacks on the same ideas, but the idea of using W3C recommendations to implement a server framework is the same.

    For the person in this thread saying that Cocoon is slow, you might be interested to know that Covalent had to drop Cocoon and replace it with AxKit for the Apache mailing list archives at http://archive.covalent.net/ - I don't have specific details of why Cocoon couldn't hold up (it continually crashed when the hits went higher than 3 hits/sec), only that AxKit does hold up to the strain (Of course, I'm biased)

    --

    Matt. Want XML + Apache + Stylesheets? Get AxKit.
  160. HTML::Mason by shani · · Score: 2
    They seem to have forgotten Mason:

    http://www.masonhq.com

    All the goodness of Perl, embedded in your HTML.

    <cynic>
    But of course, they'll never get advertising dollars from this...
    </cynic>

  161. Recommendations for JSP server by Adam+Wiggins · · Score: 3

    Anyone have any recommendations for a good JSP server? I've used Apache JServ for a while and it's horribly unstable, frequently locking up and requiring a kill -9. Tomcat seems nice, but I was unable to get it working over SSL even after many hours of tweaking config files. I've been planning on looking into Enhydra, which I've heard good things about.

    Any others I should be considering?

  162. Embedded Perl??? by SCHecklerX · · Score: 1

    What about the excellent HTML::Embperl? I've used this to rapidly develop all sorts of dynamically generated web pages. It uses Mod_Perl to boot.

  163. Suprising by SudoPenguin · · Score: 1

    I thought they would have given PHP a little better review. I just recently started learning PHP and I love it. The speed and simplicity involved with it are unmatched. I think CF's high price tag is sick considering I paid $1.95 for my Linux distro on CD. Unfortunately the corporate world and dot-com deadpool usually think the one that costs the most is the best. Sad Me.

  164. JSP is not a scripting language by jb_nizet · · Score: 1

    Don't know much about the others, but JSP is not a scripting language. It's a technology that let's you write dynamic web pages using plain HTML (or XML, or anything else) and scriptlets and custom tags.

    Scriptlets are small pieces of Java code (and Java is NOT a scripting language), and custom tags are, well, parameterized tags, looking like XML tags, and that execute some pieces of Java code.

    The article is informative, but isn't complete enough, and its title is not correct. It also doesn't mention the possibility of using custom tags, which makes the JSP coding much easier and really separates the presentation code from the business code.

    BTW, I'm not sure the API of ColdFusion could really compare to the Java one (Is there a bigger API than the Java API?).

    JB.

  165. Re:What about dynamic GIF/JPG figures and PDF file by King+of+Zeroes · · Score: 1

    Why don't they compare all the features ? This is Zdnet we're talking about. I also don't think that this was meant to be a comprehensive benchmarking or anything, more like a blurb to attract some suits. Note that no one dwelled on the fact that their winner will set you back a cool 5 grand but PHP runs $0.00US.

  166. If you like ASP, wait for ASP+ by Skim123 · · Score: 2

    Microsoft's next "evolution" of ASP is really cool and will blow ASP (and JSP/PHP/CF) out of the water, IMHO. Of course I may be a bit biased... but... uh... well, just read up on ASP+, it is pretty cool. :-)

    --

    I could not justify my existence if I were a turkey farmer. Would I terminate myself? Undoubtably, yes.