Slashdot Mirror


LAMP Grid Application Server, No More J2EE

An anonymous reader writes "Check out this blog entry in Loosely Coupled about ActiveGrid's new open source Grid Application Server based on the LAMP (Linux, Apache, MySQL, PHP/Python/Perl) stack. Not to start another PHP vs. Java flame war, but it looks like LAMP is starting to grow up, and that it is much better suited for next generation applications than J2EE."

615 comments

  1. mirrordot not quick enough by odyrithm · · Score: 1

    so how about google cache:

    http://66.102.9.104/search?q=cache:AXRoWhcH5UIJ: ww w.looselycoupled.com/blog/lc00aa00074.html+lc00aa0 0074.html&hl=en

    --
    moo
    1. Re:mirrordot not quick enough by Alioth · · Score: 4, Informative

      Slashdot tends to put spurious spaces in long URLs making them useless. Please enclose them with the URL tag (note under the Comment text box, it tells you how to do this - just

      Example:
      http://66.102.9.104/search?q=cache:AXRoWhcH5UIJ:ww w.looselycoupled.com/blog/lc00aa00074.html+lc00aa0 0074.html&hl=en

    2. Re:mirrordot not quick enough by Eythian · · Score: 1
    3. Re:mirrordot not quick enough by buro9 · · Score: 2, Informative

      The spaces aren't spurious.

      They are there to prevent trolls from stretching the width of the page by inserting silly long strings of text that lack breaks.

      Slash code adds spaces, and that enables the text to wrap, meaning you don't get an ugly and ill-behaving website.

      The point is... Add the tag or make it HTML formatted to make Slash know that it is a URL and to not only hyperlink it, but not to break it either in the hyperlink (but still in the render as we still don't want wide pages).

    4. Re:mirrordot not quick enough by Anonymous Coward · · Score: 0

      The problem is it is now hanging on various non-cached page elements...

      Here is the google cache of just the text of the article, if you don't require the pretty formatting.

    5. Re:mirrordot not quick enough by Shaper_pmp · · Score: 2, Insightful

      Or why not insert tags instead? Ok, so it's not valid in later dialects of (X)HTML, but since when has slashdot's code validated as anything?

      Seriously - <WBR> tags either don't render at all, or render as "\n" (if a long string needs to be broken at that point). I've never understood why slashdot uses spaces (which muck up URLs), instead of <WBR>s (which generally don't).

      Anyone?

      --
      Everything in moderation, including moderation itself
  2. In which world? by Anonymous Coward · · Score: 5, Insightful

    Not to start another PHP vs. Java flame war, but it looks like LAMP is starting to grow up, and that it is much better suited for next generation applications than J2EE.

    What the hell do you base that peice of tripe on? Why lets compare an incomplete system cobled together on top of PHP to a mature Java based solution which is currently being used in hundreds of thousands of enterprise sites daily throughout the world. Yeah, I can see how LAMP just kicks J2EE's ass on that one.

    Seriously, overhype much?

    1. Re:In which world? by odyrithm · · Score: 1

      incomplete system cobled together on top of PHP

      What the hell do you base that peice of tripe on? :P

      --
      moo
    2. Re:In which world? by Anonymous Coward · · Score: 0

      While I agree with your comments, I don't think there are "hundreds of thousands" of J2EE enterprise sites. A few thousand maybe.

      Any one have any figures?

    3. Re:In which world? by Anonymous Coward · · Score: 3, Funny

      Begun this flame war has.

    4. Re:In which world? by BJH · · Score: 1

      Foresee can I its end not.

    5. Re:In which world? by Anonymous Coward · · Score: 0

      Oh, PKP on this PHP
      For off it pisses me.
      A further pox on J2EE,
      May a python strangle ye.

    6. Re:In which world? by Eric+Giguere · · Score: 5, Insightful

      People often equate J2EE with web applications and so do the J2EE-vs-LAMP comparison without the right information. J2EE is more than just web applications. You can build non-web clients that use the J2EE component model (they can even be built in other languages and use CORBA mappings). J2EE provides connections to legacy systems. J2EE supports asynchronous messaging. You can do pretty much everything transactionally with J2EE as well, so that if something fails along the way you can rollback your changes.

      Actually, comparing J2EE to LAMP is wrong in another way. A J2EE server can run on Linux. An Apache web server is often used as a front end to a J2EE server (especially when you integrate the app server within an already-existing web server infrastructure). You could use MySQL (though I think you'd better off using ASA, but I'm biased) as long as you make sure to use transactional tables. There goes the "LAM" part of "LAMP".

      So really, you're comparing the Java-based J2EE framework against similar Perl/PHP/Python frameworks. At least, that's what you should be comparing. Maybe for pure web apps the latter are better. I don't know, but you have to compare oranges to oranges.

      Eric
      JavaScript is not Java
    7. Re:In which world? by Gr8Apes · · Score: 2, Insightful

      try maintaining a large commercial website in something non-structured such as Perl/PHP. Yick! (Been there, have the T-shirt and a really bad taste...)

      Don't get me wrong, Perl and PHP have their uses, but running large commercial websites is not their strong suite, at least not with the additional maintenance requirements on ours.

      --
      The cesspool just got a check and balance.
    8. Re:In which world? by pyite · · Score: 1

      You're assuming there's such a thing as a "mature Java based solution." Pretty much every Java application I see/work with just reaffirms my belief that the language and the JVM are Busch league caricatures of real solutions. Why would one choose Java over Perl or PHP for web apps? For speed? Java certainly isn't giving you a speed boost over PHP or Perl. Is it because people enjoy System.stuff.morestuff.thisthing.and.thatthing that span 80 columns so much? Don't even get me started on Swing. "Complicated" Swing apps (which would be reasonably uncomplicated in any other "architecture") fail to run properly even on fast systems with 512MB of RAM. Java is a joke and everytime I hear someone try to defend it, I laugh.

      We can also go into the fact that Java is not free, but I'll leave you to analyze that on your own.

      --

      "Nature doesn't care how smart you are. You can still be wrong." - Richard Feynman

    9. Re:In which world? by lgas · · Score: 1

      I've even seen people using PHP as a templating engine in front of a J2EE application. So maybe instead of just the "LAM" part of "LAMP" it can even go as far as "LAMP+J2EE".

    10. Re:In which world? by Billly+Gates · · Score: 0, Troll

      Php and mysql are just not growing in the enterprise.

      Java is secure and php is extremely insecure. Go do a google search for php and security holes are go to the FBI's website and look it up? Php ranks higher than ASP with security holes.

      Not to sound trollish because php and mysql are great for tiny websites and hobbiests but Java and a real database or even postgresql are leaps and bounds already and have been enterprise ready for a long time.

      Wonder why livejournal.com or myspace go down every other day or get slow? Go read the logs? I am a member of the LJ-maintance community and mysql is to blame for 9 out of 10 times. When you need to upgrade the system or add a cluster you need to shutdown the whole portal or portitions of it. Pathetic! I am biased of course but Lamp has reached saturation in my opinion. Alot of work still needs to be done.

    11. Re:In which world? by Lodragandraoidh · · Score: 4, Informative

      Zope kicks both of their [censored] IMHO.

      Zope has:
      Built-in object database (hence Z Object Publishing Environment - ZOPE).
      Built-in http server (Medusa), and ftp server.
      Ability to integrate with other http servers (i.e. Apache).
      Built-in scripting/application language (Python - and you can add Perl if desired)
      Built-in ability to connect to traditional relational databases, if needed.
      WEBDAV compliant.
      Built-in support for XML, HTML, DTML, TAL, TALES, METAL, and CSS.
      Ability to extend the environment by building modules that become integral to the site.
      Web client based development and administration - with access control built-in and fully configurable to your needs. If you can reach it from the network, you can develop and administer it.
      A large stable of free/open source modules that can be loaded (Plone - a full function CRM solution, Zwiki - wikiwiki web clone, just to name a few).
      Built-in ability to cluster a site across multiple machines (can be architected to serve behind an SLB for scalability, or in seperate geographical locations to provide local access to shared resources).

      This is the fastest development environment I have seen - bar none. The biggest benefit comes from the object database - you don't have to think about a logical or physical data model beyond the needs of your application - you don't have to worry about how structures are defined in the database. You can move your data structures inside of your scripts directly into the object database as-is without having to monkey with table structures and all of the other baggage a relational database carries with it. Once you understand and use the object database, you never want to go back. Of course, you can attach to SQL databases, and do the silly walk if needed.

      I set up a CRM solution using Plone that has been up and working for 6 months now with minimal time babysitting it. Adjunct to that, I have built several unique apps far quicker than our IT department could possibly accomplish using J2EE (we have several projects through that group that are years overdue and over budget - hence my move to Zope for internal development of critical support functions that can not wait).

      Among the principles behind the Agile Manifesto are several that are instructive:

      "Our highest priority is to satisfy the customer through early and continuous delivery of valuable software."

      "Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage."

      "Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale."

      Zope has helped me be successful with all of the above. How do your tools measure up?

      --

      Lodragan Draoidh
      The more you explain it, the more I don't understand it. - Mark Twain
    12. Re:In which world? by Anonymous Coward · · Score: 3, Informative

      You said: Not to sound trollish because php and mysql are great for tiny websites and hobbiests...

      Umm, your not very good with php are you? Like any product you need to use it correctly, with the right set of tools to get it to work properly. Most people install php and dont do any optimizing whatsoever, and when their code runs slow blame php. First off, you need to compile php yourself, with only the options you need. Secondly, if you want to run enterprise PHP apps, you need Zend's tools. What, never heard of Zend? Oh, thats the engine php runs on. You see, there are a number of products that one should use with php to deploy enterprise applications: Zend optimizer, encoder and accelerator.
      Whats that you say? "Oh, those cost money! PHP is supposed to be free!". Well, yes, IF your a hobbiest, but if one plans to use PHP commercially, these are a must have.

      Don't complain about a tool untill you've spent the time to master it.

    13. Re:In which world? by RetroGeek · · Score: 2, Insightful

      Java certainly isn't giving you a speed boost over PHP or Perl

      Oh yes it does, for a very basic reason.

      Java is already compiled, it just needs to be linked.

      PHP/Perl has to be compiled (interpreted), then linked. For each page hit.

      For trivial pages, this is not such a big difference, but add in I18N support, inter-page communication support, session support, etc, and the time it takes to load up the "environment" in PHP/Perl completely swamps the time it takes to render a page.

      I code in both (and some ASP). For a q&d web site, PHP every time. For an enterprise level app with hundreds of pages, thousands of classes, J2EE is THE choice.

      Also, J2EE gives you a running application, whereas PHP is started for each page hit. With a running app, you can keep all sorts of information in memory, you can trigger events based on time, you can spawn threads, etc. You can set up database connection pooling, which means that there are constant active connections to the database, which REALLY speeds up back end access.

      Each has its own place. I use both.

      We can also go into the fact that Java is not free, but I'll leave you to analyze that on your own.

      d/l J2EE JDK (free)
      d/l Apache/Tomcat (free)
      d/l Eclipse IDE (free)
      d/l MySQL (free)

      Ok, I did my analysis, and my conclusion is that is it free.

      --

      - - - - - - - - - - -
      I am a programmer. I am paid to produce syntax not grammar. Deal with it.
    14. Re:In which world? by golgotha007 · · Score: 3, Interesting

      I am lead developer (well, the only developer) for a major website (+half million page views per day).

      When the owners of the website first came to me, they basically had a team of developers who worked around the clock to maintain the old website which was running JSP and Oracle on a total of 5 servers (I don't know the proc, mem, etc).

      The website ran like a damn pig and the owners were tired of all the problems.

      Basically, they came to me and asked me if I could re-create the entire website using FOSS and on two servers or less, while speeding the whole thing up. I'll be honest with you, I agreed to the job, but I was a little worried. Would LAMP live up to the hype?

      I settled on MySQL 4.1.3, PHP 4.3.8 and Apache 2.0.50. First, the owner wanted to see what one system (single 2.4GHz, 2 gigs RAM) was capable of before putting the second one online (which was only an additional web server). A few months later, the site was finished. I was sweating bullets when we switched the DNS record and the requests started to pour in!

      We've never had to turn the second webserver on. A single processor server (apache + PHP + mysql) handles the entire website, while the load average never climbs over 0.20.
      Every page is dynamically generated with several DB hits per page and we're talking about more than half a million page views per day (over 2 million hits per day, over 500GB per month), while the server sits not even breaking a sweat.

      Now, what can we conclude from this?
      First of all, JSP with Oracle isn't remotely capable of this project with the resources given.

      However, I do know from first hand experience that a LAMP design works well for large operations.

    15. Re:In which world? by ides · · Score: 1

      Actually you can solve this entire compile/execute problem when using Perl by using mod_perl instead of just a Perl CGI. This compiles all of your Perl for you and keeps it in RAM. Then only the execution is done on each request. This is how large sites such as /., tickmaster.com, amazon.com, etc. can use Perl for their site. Check it out at http;//perl.apache.org

    16. Re:In which world? by smcdow · · Score: 4, Funny
      ... and use CORBA mappings ...

      Some people, when confronted with a problem, say, "Let's use CORBA."

      Now they have two problems.

      --
      In the course of every project, it will become necessary to shoot the scientists and begin production.
    17. Re:In which world? by mobiGeek · · Score: 4, Insightful
      Now, what can we conclude from this?
      The only thing you can conclude is that your replaced a bunch of bozos. There is absolutely nothing else you can conclude.

      Give me your PHP/MySQL solution and I bet I can bring it to its knees with a few properly placed bad queries and/or data structures.

      To make any conclusions about technologies based on your one example would be a crime (...though, this is /. after all...)

      --

      ...Beware the IDEs of Microsoft...

    18. Re:In which world? by rjshields · · Score: 1

      Actually you can solve this entire compile/execute problem when using Perl by using mod_perl instead of just a Perl CGI.

      That only goes half way - the Perl code is still being interpretted for each page request, the difference being that each request is not run in a new process as is the case with CGI. The GP's point is that Java is faster because it is compiled, not interpretted, which is still a valid point even when you run mod_perl.

      --
      In this world nothing is certain but death, taxes and flawed car analogies.
    19. Re:In which world? by markv242 · · Score: 1

      There is nothing in your list that doesn't come with a halfway decent Java application server, like Resin. "Built-in object database". Uh, yeah, java was OO last I checked. "Built-in http server". Check. "Ability to integrate with other http servers". Check. "Built-in scripting/application language". Java/JSP, or JSTL for those of you who aren't programmers. "Built-in ability to connect to traditional databases" - seriously, this is one of your selling points? You're kidding, right? "WEBDAV compliant". So is Apache. "Built-in support for XML" (xerces) "HTML" (holy cow, really?) "Buzzword, buzzword, and buzzword" "Ability to extend the environment by building modules that become integral to the site". You just described a jar file. "If you can reach it from the network, you can develop and administer it." Like any other web application. "A large stable of free/open source modules that can be loaded". Check. "Built-in ability to cluster a site across multiple machines". Check. Look, I'm happy that you're using Python to develop new and supposedly interesting applications, but let's face it, your environment is nothing new.

    20. Re:In which world? by golgotha007 · · Score: 2, Interesting

      You're right, we (as a group) can't make any solid conclusions from this data. One of the major problems is that I never saw the old code or know anything about the websites previous deisgn.

      However, from my experience, in the future I will always recommend the setup I've already explained because I know it works well.

      Give me your PHP/MySQL solution and I bet I can bring it to its knees with a few properly placed bad queries and/or data structures.

      Of course, bad code will bring anything to its knees, no point there. That's the nice thing about advanced database methods; using stored procedures, transactions and the like can help maintain data integrity even if you've got a couple of bad developers in house, although it can act against you when considering performance.

      To make any conclusions about technologies based on your one example would be a crime...

      I could site other examples from co-workers or friends, but this is one example that has affected me personally. Do you have any examples of replacing FOSS with JSP and Oracle using weaker hardware and seeing an increase in performance?

    21. Re:In which world? by killjoe · · Score: 4, Informative

      What ZOPE doesn't have.

      Ability to publish zope objects with SOAP
      CORBA support.
      Message queues
      Object relational layer
      transaction support for relational databases
      RMI or it's equavalent in python
      Common logging infrastructure (log4j)
      Timed services (cron like device for calling certain code)
      Naming directory. .... Many Many more thing that are in J2EE but not in zope.

      But what it lacks more then anything else is good documentation. Yes there are lots of products but the vast majority of them have no more then a one sentence explation.

      FInally a plea to whoever is reading this.

      I hate Java, please please please build a J2EE like container for python or ruby make sure it has everything I have listed above.

      --
      evil is as evil does
    22. Re:In which world? by Anonymous Coward · · Score: 1, Informative

      That's why people created Python.

      Ease of scripting languages combined with a clean syntax (easier to manage and maintain then Java), obect oriented model, and is as cross platform as Java or C.

      Good stuff.

      You can hook it up to databases, you can code speed-sensitive parts in C and use them as functions/modules. You can use stuff like Zope for a bunch of supported libraries of code and such.

      It's a win win situation.

      Hell you can even write multithreaded applications with python if you want.

      Most everybody is taught it in school now, it doesn't have licensing restrictions, it's free and has a deverse and active community behind it.

      It's easy and quick to learn and even lay people can have a shot at writing basic stuff in it.

      It's good stuff.

    23. Re:In which world? by rutledjw · · Score: 1
      Not wanting to join the fray, but...

      This is the single dumbest thing I have heard (at least the dumbest today). There is nothing you can surmise without know how the previous site was built and the skillset of the developers. Who knows the original purpose of the site, if they hacked it out to do something else, if the tech was old, if the site was poorly writtem, etc.

      And your decision to place web, app, and DB server on a single box is a security masterpiece.

      What's your failover strategy? Does this one-CPU marvel of science not have any kind of hardware failures? WHat kind of "large operation" has no redundancy to compensate for failures in production?

      This post should have started with - Mary had a Little Lamb

      Large Operation indeed...

      --

      Computer Science is Applied Philosophy
    24. Re:In which world? by j3110 · · Score: 4, Insightful

      I think people are seriously misunderstanding the purposes of each peice of software... So I'll give it my best shot to clear it up.

      1) PHP
      For web scripting.
      Do something small and fast.
      Will run fast.
      Won't scale for the strictest rules of scaling.

      2) J2EE
      For everything big, not just web sites.
      Do something large and right, which takes more front time, but much less time to keep up. A good way to program yourself out of a job, easily. (Can be done with PHP, but not really stressed so much.)
      Will run fast, but can consume a lot of resources in the process. If it's running slow, just give it more memory, and learn -Xmx settings.
      Will scale in all senses of the word.

      Now... a little on the scalability...
      1) Load balancers are only 1 section of a huge problem, and you can load balance anything, including LAMP.
      2) Transaction support is new to the M in lamp, and no one uses them in the P part. J2EE has a transaction system (JTA) that will combine all your data access into one big happy transaction, on all your resources that support JTA (includes JDBC).
      3) Session state replication is completely absent from LAMP. A server could catch fire in a good J2EE configuration, and when the user clicks submit, they wouldn't even know, because at least two servers will have the users session id.

      Ok... now about why it takes less upkeep in J2EE land...
      1) Specs require backwards compatibility in all new versions. I've had problems with every section of LAMP on this issue, but never on J2EE.
      2) A JSP page is only supposed to display information and forms. There is no logic in it. If you have problems with this, I recommend STRUTS. Some people recommend WebWork or Spring. It's a matter of taste, but STRUTS is still the top dog. In PHP, you have to work hard to not mix the two. I used to do action= in the get to simulate this behavior, but it's still not as good, just workable.
      3) If you want a rich application accessing your data, you can do it through the same CORBA, SOAP, or XMLRPC calls. The newest spec from J2EE allows you to turn a normal function on a Session Bean (EJB) into a web service that can be called from anything, including JavaScript on Mozilla or a Flash animation (I have done this). Since it's calling the exact same method, if the database changes, you only have to update the code in the least number of places possible.

      Features completely abscent from LAMP:
      Good web-service support (you can fake it, but Zope actually does XML RPC for you)
      JTA (Transaction system)
      JMS (Messaging System for asynchronous processing)

      Things commonly thought to be missing from Java, but aren't:
      Easy scripting of SQL (The Java Standard Taglib is far easier to use than anything I used in PHP or Perl, but Zope probably has everyone beat there)
      Speed (the bottleneck in 99% of all software is disk related... If you know how to make a database properly, it will be fast.)

      Genuine concerns with Java:
      Memory consumption.
      Threading on your particular platform.
      Lagged support for the newest features on all platforms.
      Doesn't automatically pool database connections.
      Can be hard to configure properly.
      Requires more knowledge than it lets on.

      --
      Karma Clown
    25. Re:In which world? by Anonymous Coward · · Score: 1, Interesting

      > There is nothing in your list that doesn't come with a halfway decent Java application server, like Resin.

      You forgot to mention that Resin is god damned fast. Really changed my opinions on Java. Best of all, the "lite" version (which only lacks clustering and some caching code) is now GPL. Strangely I run Resin not for Java, strangely enough, but as a server front-end for some existing perl apps. Reason for this is because the FastCGI servlet it comes with is like the only free FastCGI implementation out there that's more or less drop-in and reliable on any platform.

      Zope, however, really does have some innovative stuff that other app servers should look at. The main problem is the piles of crud on top of it -- Zope source is basically unmaintainable, and when you have a basically undocumented Zope product to deal with (a product being the equivalent of a web app), looking at that horrendous code is the only option you have.

    26. Re:In which world? by MemoryDragon · · Score: 1

      All I conclude is that you just replaced a bunch of people who could not handle the technology (I assume the problems were query related) PHP per se is slower than JSP... So you are quite good at what you are doing the people you replaced are not...

    27. Re:In which world? by IndigoSkies · · Score: 1
      Eric Giguere wrote: There goes the "LAM" part of "LAMP". ... So really, you're comparing the Java-based J2EE framework against similar Perl/PHP/Python frameworks.

      Hear, hear! Spot on! I've been distressed about this nonsensical treatment of PHP as an application language for some time now. It's past time for people to wake up and start treating the language for what it is...

      The bottom is that if PHP can be directly compared to anything in the Java world, then it ought to be a comparison against JSP (without beans), because that's all it is -- a server side, page-level scripting language. Sure, you can do more with PHP if you write extensions in C or whatever, but then you're writing in C and not PHP!

    28. Re:In which world? by drew · · Score: 1

      I have used PHP, Perl, ASP, and a couple of others, all on large projects.

      I would choose any of them over J2EE, for any size site. There are a variety of reasons, but for the most part, it boils down to this:

      For any other web programming language, you create a file somewhere in your Document Root, and you have a web page. Simple as that. If you are using Java, you have to create an xml deployment descriptor, the files have to be in certain places in the directory hierarchy, and depending on your container, you may have to recompile for even the most trivial changes.

      Up until recently, I used PHP almost exclusively. While I find the PHP language (pre 5- haven't used PHP 5 yet) to be obnoxious in more ways than I can count, the PHP platform is (IMO) far and away the best alternative for web development in *NIX. If somebody would write a web development platform that worked like PHP, but used a Java interpreter instead of the PHP langugage interpreter, I would use it in a heartbeat.

      Lately, I've been programming in ASP using the JScript langugage. Although I'm not a fan of IIS as a web server, I really like using JavaScript as a server side programming language. I like the fact that ASP allows you to choose what language you want to write in (although why it defaults to VB, or why anyone would choose to use VB, is beyond me) I wish PHP would have followed this model with its development. Then somebody who actually knew a thing or two about programming language design could have replaced the PHP interpreter long ago with Python, Java, JavaScript, LISP (for those so inclined), or even Perl.

      --
      If I don't put anything here, will anyone recognize me anymore?
    29. Re:In which world? by Anonymous Coward · · Score: 1, Informative

      >"Built-in object database". Uh, yeah, java was OO last I checked.

      You apparently mis-understood this. Zope comes with ZODB, the Z Object Database. ZODB allows for persistant objects - i.e., your live python objects are transparently stored to disk and cached in memory for accessing them. You don't have to convert between other data format (SQL, csv, XML, whatever) in order to store/retrieve the objects. They persist as objects.

      So, of course Java supports OO programming. But that doesn't mean that high quality, free, object persistence system is available or included by default in J2EE frameworks.

    30. Re:In which world? by computational+super · · Score: 1

      Well, I maintain a large commercial website in something non-structured such as Java/JSP/struts/XML/XSLT...

      --
      Proud neuron in the Slashdot hivemind since 2002.
    31. Re:In which world? by tanguyr · · Score: 3, Insightful

      try maintaining a large commercial website in something non-structured such as Perl/PHP. Yick! (Been there, have the T-shirt and a really bad taste...)

      Oh come on! Some of the most heavily trafficed sites in the world - commerical and otherwise - are built on perl/php and seem to do just fine. Why do these discussions ALWAYS degenerate into "technology Y is better than technology X"? The fact of the matter is that, within a pretty broad spectrum of reason, what technology you use is not the deciding factor of how successful and maintainable your app is going to be. The day someone does come out with a miracle technology that REALLY improves a project's chances of success, we'll all know about it pretty darn quick because everybody will flock to it overnight - and i mean actual people, not magazine articles or Oreilly books. Given that we're all still having "my language can beat up your language" discussions on Slashdot, it's pretty safe to say that we're not at that point yet.

      If you had a bad experience with a Perl/PHP based site before, the chances are pretty high that the fault is more with the designers (or lack of) and builders than the languages used. No sweat, this job is a learning experience and the first couple of apps will always be dogfood. A very good book once described mastery (in the development business) as the stage where you don't want to rip up all the code you've done in the last six months and start over.

      --
      #!/usr/bin/english
    32. Re:In which world? by spongman · · Score: 1

      Ouch, still using ASP? Try this!

    33. Re:In which world? by codeguy007 · · Score: 1

      Give me your PHP/MySQL solution and I bet I can bring it to its knees with a few properly placed bad queries and/or data structures.

      Of course, bad code will bring anything to its knees, no point there. That's the nice thing about advanced database methods; using stored procedures, transactions and the like can help maintain data integrity even if you've got a couple of bad developers in house, although it can act against you when considering performance.

      Yeah I don't think he's talking about bad code he's talking about customer provided data. Customer data if not parsed right can cause serious damage to your database. This is stuff you need to handle yourself because php doesn't do it for you.

    34. Re:In which world? by Anonymous Coward · · Score: 0

      "Why would one choose Java over Perl or PHP for web apps? For speed? Java certainly isn't giving you a speed boost over PHP or Perl. Is it because people enjoy"

      That one sentence proved that you have no idea what you're talking about.

      "Java is a joke and everytime I hear someone try to defend it, I laugh"

      The only thing that is a joke here is you and how little you know about the subject of which you're speaking. Instead of blindly bashing Java how about you pick up a book because you seem to lack even the most basic knowledge of the subject.

    35. Re:In which world? by golgotha007 · · Score: 1

      I agree with you on the failover part. Although the server's uptime is concurrent when it was actually put into production (7 months), hardware failure is not if, it's when.

      You're also right about it not being a large operation. The hardware infrastucture is pathetic, but we are getting a fair amount of traffic.

      The original purpose of the site remains the same today.

      Personally, I'm guessing that the original site was over-engineered by imcompetent programmers. The purpose of my post wasn't to bash J2EE and/or Oracle or to say that FOSS is better, I was simply relating an experience I had to the Slashdot crowd thinking they might find it interesting.

      Basically, I'm a firm believer in the right tool for the right job.

      p.s. The Lamb was sure to go.

    36. Re:In which world? by golgotha007 · · Score: 1

      This is stuff you need to handle yourself because php doesn't do it for you.

      Indeed, but if you can make PHP do it for you without hassle, then why not? In fact, PHP has a wide array of functions available for just the very thing.

    37. Re:In which world? by bljohnson0 · · Score: 1

      Yeah - take a look at Hibernate. There ya go... high quality, free, object persistence for Java that works with most all major relational databases.

    38. Re:In which world? by scotartt · · Score: 1

      With a running app, ... you can spawn threads, etc.

      Not in J2EE you can't. Read the servlet spec.

      Otherwise I'd agree with you.

      --
      -A lovely little thinker, but a bugger when he's pissed-
    39. Re:In which world? by ignorant_newbie · · Score: 1

      >That only goes half way - the Perl code is still
      >being interpretted for each page request

      Sorry, Perl is a compiled language, not an interpreted language. It is compiled at run time ( can you say JIT ? i knew you could) instead of ahead of time, but it's still compiled.

      That having been said, why do you care? If you want to compare the performance of 2 things, you don't do it by having a theoretical discussion of their features. you put them on a race track and time them.

    40. Re:In which world? by drew · · Score: 1

      If i am reading the page correctly, that's just an IDE for ASP.NET, not a different web programming language/platform. No thanks, I'll stick with ViM. I have no interest in a drag-and-drop GUI web page creator, and all of its other features seem to me to be of dubious value.

      I will admit to being mildly interested in ASP.NET, however, using ASP.NET would be my employers decision, not mine.

      --
      If I don't put anything here, will anyone recognize me anymore?
    41. Re:In which world? by Anonymous Coward · · Score: 0

      PHP with a compiler cache is the fastest web development language, bar none. I have dual 2.4's that pump out 150+ db-driven pages per second all day long. Java people keep saying Java is fast, but they can't seem to demonstrate it when it counts. What anyone else sees is that Java sites are pigs. Add Oracle into the mix and you have pigs with broken legs.

      You say you can bring gp's PHP site to it's knees with a few bad queries - well, last I checked Java didn't help any with that. Sure it's easy to mess up in PHP with bad data structures, but Java would bring the site to it's knees just by being used in the first place, and all it would do with a bad data structure is throw up a stack trace for someone to deal with.

    42. Re:In which world? by ajr_trm · · Score: 1

      Basically, I'm a firm believer in the right tool for the right job.

      Sure. The right tool for the job is most important.

    43. Re:In which world? by pnot · · Score: 1
      I've been distressed about this nonsensical treatment of PHP as an application language for some time now.

      Amen. I've done a small CMS in LAM+PHP, and I came away with the feeling that anything bigger would be a maintenance nightmare. And I've had PHP upgrades break applications because newly introduced functions in the language clashed with function definitions in the application. It seems practically insane to me to have a language that big without cast-iron namespacing.

    44. Re:In which world? by RetroGeek · · Score: 1

      Right. You cannot spawn a servlet thread.

      But you can spawn a processing thread, then save the thread ID in the user session for later retrieval.

      --

      - - - - - - - - - - -
      I am a programmer. I am paid to produce syntax not grammar. Deal with it.
    45. Re:In which world? by EJB · · Score: 1

      And can you do searches on the stored objects with any kind of decent performance? What if you have a lot of objects, say 10 million?

      According to the parent you replied to, you don't have to worry about data formats of the database, so I guess you can't configure it. I don't see how you could get decent performance of the database from that.

    46. Re:In which world? by bwt · · Score: 1

      JSP with Oracle isn't remotely capable of this project with the resources given.

      Nothing you have said remotely justifies this claim. In fact, given the enormous numbers of enterprise systems using this architecture, it's pretty amazing you would make such a claim.

      Let me make a guess about this situation: the Oracle systems existed first and supported a client-server app. Then somebody said "lets do web" and you tacked on java, probably without using a good MVC approach. Boom, you hit the OO-RDBMS impedance mismatch and combined it with disasterous coupling of business logic with everything else. Even without knowing the facts, I'm willing to guess that your success is probably a result of allowing your web site design to drive your data model (which is probably not the situation the previous crew was probably in).

      My experience based on developing enterprise systems (and I can do it in all of the technologies you have mentioned) is that the most critical piece is 1) having a good RDBMS data model and 2) avoiding coupling among SQL, business logic, and presentation. If you are in an environment where business requirements don't change often, you can survive doing poorly on #2 if you do well on #1. Technology choice does not affect the first much factor much. However, MySQL lacking views and stored procedures actually makes it one of the few RDBMS thatforce sacrifices in the data model since you need such features to do certain things well like implementing sub-entities in the same table and many denormalizations.

      By the way, my experience, is that MySQL is poor for even moderate problems of enterprise systems. For a class of problems comparable to running a site like Slashdot, it is a reasonable solution, though in every case if the enterprise has an Oracle license already I would use that and if not I would use PostGres or Firebird first. I expect I will add Derby to that list soon.

      I'm not quite as down on PHP. It is one web tool among many and it competes well in many ways. I would predict that somebody well versed in JSP, especially somebody with strong taglibs experience, would outproduce somebody in PHP, but I certainly think it would be a fair fight.

    47. Re:In which world? by valmont · · Score: 1

      on top of RetroGeek's points, i'll point out that a good java servlet container such as apache/Tomcat lets you architect web applications that minimize disk I/O and allow you to make full use of available memory.

      I've never been able to find a way to cache data in memory using PHP. Every request requires some sort of disk or database IO. Now, that's not an issue for 99.99% of all sites out there, including anything you've built. But it does make every last bit of difference on heavily loaded applications. A Java Servlet Container lets you build custom in-memory caching layers that allow concurrent requests to share said data.

    48. Re:In which world? by ip_fired · · Score: 1

      I love hibernate! It's great. We also use Struts/Spring/Hibernate for our webapps, and it's been great developing it from scratch with these technologies.

      The code is so much cleaner and more organized than the older java code we had.

      --
      Don't count your messages before they ACK.
    49. Re:In which world? by Anonymous Coward · · Score: 0

      Because something uses a byte-code doesn't make it a compiled language. JIT results in native binary code. Byte code is just a fancy way of driving a virtual machine. Perl doesn't go to native code.

    50. Re:In which world? by Anonymous Coward · · Score: 0
      Some people, when confronted with a problem, say, "Let's use CORBA."

      And some people, not knowing anything about CORBA, try another way, and end up having to reinvent what CORBA already supports.

    51. Re:In which world? by Ryosen · · Score: 1

      Not in J2EE you can't. Read the servlet spec.

      The Servlet spec is only a small part of J2EE and you can, in fact, spawn threads in servlets. You cannot, however, spawn them within an EJB container.

      The reason that you cannot spawn threads in a container is that the conatiner does it for you. It manages the thread pool and allocates additional processes as needed. This is a far more eloquent approach than letting the developer spawn threads ad infinitum, bringing down the server.

      --

      Ryosen
      One man's "Troll, +1" is another man's "Insightful, +1".
    52. Re:In which world? by Gr8Apes · · Score: 1

      Wrongo. The root problem lay in the fact that the actual layout of dynamic items changes on a regular basis, and large parts are multiple DB driven, across multiple pages for a single transaction.

      Layout is partially data driven, and changes in data necessitate changes in code

      For forum type things, where the content is data driven, but the layout is static, Perl/PHP/etc are great. Same box, over and over again. Perfect solution. Forums are also a nice example of largely stateless connections, again lending itself to LAMP. Other commercial sites aren't.

      When you have roughly 26 pieces of data describing a single transaction, and those pieces of data refer to other pieces of data (objects, cached, for performance reasons) all of a sudden, Perl etc aren't the cornucopia they're made out to be.

      We would agree on the point of lack of designers/builders skills, though we disagree that it's acceptable for the first few apps to be dogfood. Hire someone who knows something, and mentor your newbies.

      --
      The cesspool just got a check and balance.
    53. Re:In which world? by Anonymous Coward · · Score: 1, Interesting

      What happens to your object database if you have to add "fields" to some of the objects, and dumping the data, modifying the object structures, and re-importing the data aren't really feasible options?

      Hmm...

    54. Re:In which world? by scotartt · · Score: 1

      Read the spec. Page 20, section 1.2 of the 2.4 specification. While Tomcat or some other containers might let you spawn threads the specification makes it abundantly clear that another container may actively prohibit it if the container vendor chooses.

      Hence, threading in servlets is non-portable and not to be trusted or relied upon.

      The language appears to be loosening as in previous version the warning was much more general. Also see that threads you spawn are still subject to the lifecycle of the service method on the servlet. I would not recommend generally to block client i/o on the successfull return of some threads. If I needed threading, parallel processing, I would consider using message queues to send requests to MDBs which would perform the logic independent of the servlet's lifecycle. Which is not the same thing as just spawning threads.

      The servlet still runs in 'a container' so your last paragraph about the 'container doing it for you' contradicts the first.

      And you can, in fact, spawn threads inside an EJB too. By which I mean the container doesn't have to stop you from doing it even though it violates the specification. I have seen it done in an application I once inherited and had to redesign. While the container (JBoss) was perfectly happy to let you do it, and it appeared to work ok at least under minimal load, the actual behaviour is non-deterministic.

      --
      -A lovely little thinker, but a bugger when he's pissed-
    55. Re:In which world? by tanguyr · · Score: 1

      Sounds like a classic case of tier leakage, esp. the bits about "changes in data necessitate changes in code". It is completely possible to seperate content generation and presentation in LAMP apps, just as it is possible to tie everything into a massive ugly knot with JSPs: just because one's a p-language and the other's java does *not* mean that's one's bound to fail and the other is idiot proof. And as for your comments regarding statelessness: HTTP is itself a stateless protocol, so a web application written in php or perl faces the same constraints and solutions as a J2EE web app. If we were discussing thick client apps then sure, but we're not: it's web app vs web app.

      What this sounds like to me is that you took the lessons learned in language/platform A and applied them in language/platform B, but then attributed your success to language B as if it were somehow "better".

      --
      #!/usr/bin/english
    56. Re:In which world? by adamfranco · · Score: 2, Informative

      You see, there are a number of products that one should use with php to deploy enterprise applications: Zend optimizer, encoder and accelerator.

      For a free (at least as in beer) PHP extension to transparently cache the compiled version of you PHP scripts (instead of recompiling every page load), check out
      PHP-Accelerator.

      --
      "When ideology and theology couple, their offspring are not always bad but they are always blind." -- Bill Moyers
    57. Re:In which world? by Lodragandraoidh · · Score: 2, Interesting
      Killjoe wrote:

      What ZOPE doesn't have.

      Ability to publish zope objects with SOAP
      CORBA support.
      Message queues

      SOAP and CORBA are data transport protocols. What would stop you from writing a product in python to handle these formats? Message queues are a physical implementation of those protocols. Again, you can implement your own queues in python (or any other language for that matter) This can be handled external to the Zope framework and passed into Zope via external methods.

      Object relational layer

      I'm not sure what you are referring to here. You can index and associate all sorts of meta-data with your zope objects - thereby relating the objects - is that what you were referring to? Additionally, Zope has a unique ability to acquire and use objects and permissions from folders above the current locale - so you could write a general purpose form that displays the contents of a directory for example, and apply it to multiple folders below without having to rewrite code.

      transaction support for relational databases

      Zope's ZODB (object database) does support transactions/rollback. Zope also has relational database plugins that allow you to communicate with all sorts of databases (oracle, sybase, mysql etc) - so if the database supports transactions - Zope should be able to make the database perform that function.

      RMI or it's equavalent in python

      You can write an external method to handle this, if needed, using jython. However, why bother with RMI when you can use sockets or python's Expect module? The benefit of these is not having to load anything special on the other end (I assume you would need Java on both ends of the RMI transaction).

      Common logging infrastructure (log4j)

      You could write an external method in python to write logs to a standard file - and call it from your applications.

      Timed services (cron like device for calling certain code)

      How about cron itself on a *nix system (you don't have to run ZOPE from Windoze - and I wouldn't recommend it anyway)? You can use cron to do certain administrative tasks for the overall system (such as packing the database). You could also write infrastructure pieces using python (or any other language for that matter) and have those modules run in cron (for example, an app to rotate your logs in the previous example).

      Naming directory. .... Many Many more thing that are in J2EE but not in zope.

      There is a python-ldap package available via sourceforge.net - you can use this and an X.500 (LDAP) directory to manage your names. You would use an external method (python) to manage input/querying the directory.

      But what it lacks more then anything else is good documentation. Yes there are lots of products but the vast majority of them have no more then a one sentence explation.

      I will agree that the documentation for Zope 2.X is not optimal (but there is certainly a lot of it - the Zopebook 2.6 version is 495 pages long). I am hoping the Zope X3 will have better documentation (several books on the subject can be preordered for a December or January delivery). X3 will serve as a testbed for new development paradigms, as well as bringing development tools in-line with some of the issues developers have complained about.

      The important aspect that you are missing is you can extend Zope via products and external python/other applications to get most, if not all of the functionality you mention here. If you really want to dig into the code, you can even modify the framework itself - since it is open source. Can you modify other frameworks in a similar fashion, or are you limited to what the vendor has p

      --

      Lodragan Draoidh
      The more you explain it, the more I don't understand it. - Mark Twain
    58. Re:In which world? by ahdeoz · · Score: 1
      all of the other baggage a relational database carries with it

      like scalability, adaptability, searchability (entity beans search better than than ZODB)

      You're right though that if you don't need a database, then don't use one. And a lot of websites don't. And reading a flat file for a few thousand objects isn't that bad. But if you have much data, access it from multiple sources, or may use it in more than one way, it may be time to consider a relational database. If you can use HSQLDB in production, then ZODB is good enough for you.

    59. Re:In which world? by ahdeoz · · Score: 1

      But you don't really have access to Linux when using Java. Java goes to extreme measures to isolate itself from the platform unless you use JNI (which some might say is really another measure to prevent you from accessing the OS or other applications.) You can't even read a directory efficiently. If you don't even have "ls" you don't really have linux.

    60. Re:In which world? by ahdeoz · · Score: 1

      no it's not. The perl code is cached, fairly well. The real problem is that you don't have a session level in-memory object store like you do with servlets or EJBs so that all state information has to be persisted to an external source like a database. You can alleviate this with an in-memory caching database or custom solution, but still, the ease of the ASP/Servlet style Application/Session/Request scoping is a huge plus. It is the one thing I really miss with PHP/Perl, even though ASP/Servlets do not really get it right.

    61. Re:In which world? by Lodragandraoidh · · Score: 1

      You are confusing Object Oriented programming with an Object Database. They are two seperate things. ZODB is a database that stores Z-objects (hence ZOPE - Z-Object Publishing Environment).

      You can extend Z-objects by adding meta-data variables (probably the wrong name for them - but this is how I associate these). You can use these same variables to index and search the object database.

      The neat thing is you don't have to mess with the guts of the ZODB - it just works - you just use it and extend it as needed.

      In an RDBMS world you have to define your logical data model beforehand. In the Zope world, you can create what you think are the right data structures, and then extend them as you go - without any of the problems associated with large RDBMS's. There is no pressure to 'get it right the first time' - thus enhancing the speed of iterative development cycles.

      I have one project that I managed that really needed an object model, as opposed to an RDBMS model (it was basically keeping track of new transport technology that is constantly changing as our network architecture changes). I tried to get the IT team to build a generic data structure that could be extended - they balked and forced me and my customers to define a logical data model ('we have had 20 years experience doing this - we know what is best', they said; yeah, right). Immediately after it shipped (late), we installed a new piece of hardware - which broke their data model (we emphasized the unknown aspects - but they refused to take that into account). Zope and the ZODB would have solved this problem easily. This same project is years overdue and massively over budget; I will never let this happen again - prefering to do my own development in most cases.

      With an RDBMS you are required to try to fit a square peg in a round hole, or modify the database (not an easy or quick thing to do on a complex relational database). With and ODBMS (Object Database Management System) - you can make changes on the fly in your code without having to monkey with the DB itself.

      It is a completely new paradigm that I can see is confusing to some people steeped in the standard methodology (dogma?) of the RDBMS world...

      --

      Lodragan Draoidh
      The more you explain it, the more I don't understand it. - Mark Twain
    62. Re:In which world? by Gr8Apes · · Score: 1

      Your last para would be interesting if it applied. I had no stake in the initial attempt, and have come in after the fact on the second.

      HTTP being stateless is irrelevant. J2EE containers enable one to simulate state easily and effectively in large scalable architectures, and we do this. It's almost painless. (I'm not familiar enough with PHP to know how effectively this could be done)

      As for the "bound to fail" claim, I claimed no such thing. I made the statement that Perl failed us because the maintenance for just about anything started to take more and more time (the general growth of cruft over time issue). I'll state now the same happens with Java/J2EE if care isn't taken, but it seems to happen at a much slower rate, especially if the original design is sound.

      I noticed that you completely glossed over the multiple DB type and DBs themselves. That issue is a pita within Perl, but can be handled. J2EE makes handling that scenario trivial. For this use case, J2EE is far superior to Perl.

      --
      The cesspool just got a check and balance.
    63. Re:In which world? by Anonymous Coward · · Score: 0

      Seriously, you must be on crack or something.

      ----
      You can hook it up to databases, you can code speed-sensitive parts in C and use them as functions/modules. You can use stuff like Zope for a bunch of supported libraries of code and such.
      ----

      a) You can also do that in Java - you just won't need to do it for damn near every little thing. Python is a great language, but it is so damn slow it makes me want to cry at times.

      b) I hope you're not comparing Zope to a J2EE app server like JBoss.

      ----
      Most everybody is taught it in school now, it doesn't have licensing restrictions, it's free and has a deverse and active community behind it.
      ----

      I can't think of a single school that teaches an elective Python course much less uses it as the school's teaching language. Care to name some schools?

    64. Re:In which world? by Anonymous Coward · · Score: 0

      OMG, an intelligent reply on Slashdot? What is the world coming to. :)

      Why is it that the LAMP crowd cannot see the obvious truth in your statements? For the most part, all of the big LAMP sites are just forums. Just forums and blogs, nothing more, nothing less.

      There are going to be a lot of disappointed PHP users after the new SPEC benchmarks provides definitive proof that LAMP is just an acronym for SLOW.

    65. Re:In which world? by rjshields · · Score: 1

      Sorry, Perl is a compiled language, not an interpreted language

      You're half right - Perl is compiled into byecode which is interpreted.

      can you say JIT ?

      JIT compilers compile to machine code - Perl doesn't uses a JIT compiler.

      If you want to compare the performance of 2 things, you don't do it by having a theoretical discussion of their features.

      It should be fairly easy to accept that a JIT compiler is going to produce faster running code than a bytecode interpreter. Anyway, here are some benchmarks (sorry, no Perl).

      --
      In this world nothing is certain but death, taxes and flawed car analogies.
    66. Re:In which world? by Anonymous Coward · · Score: 0
      Common logging infrastructure (log4j)


      Only a java programmer could take the print statement and build a project around it resulting in endless wasted time and complexity. FFS, some clown even wrote a book about it. And now people are even suggesting this joke is a prerequisite to a successful project.

    67. Re:In which world? by PierceLabs · · Score: 1

      What are you talking about? You can drop a JSP in a doc root just fine. You can call it index.jsp and have it be the default page of your site as well.

      I think your knowledge of J2EE programming may be insufficient.

    68. Re:In which world? by EJB · · Score: 1

      Actually, you are making quite a few too many assumptions here.
      Firstly, the difference between OO programming and an OO database is of course entirely clear to me, as one is a concept and the other is a database.

      But I think you meant "the difference between a relational database model and an OO database model". I am also aware of that difference.

      So let me repeat my question about performance, since what I want to know if ZODB performs seriously. There are several good OO databases, and I haven't heard anyone mentioning ZODB as one of them yet.

      Secondly, the difference between OO databases and RDBMS is very little in most practical situations, given that most applications fit either model, if you include an object-relational mapping tool (like Hibernate, if you are using Java) in the equation.

      There are some areas where OO databases have distinct advantages (especially those area where you don't search across many objects a lot, but instead navigate them through links), but those areas are quite few - CAD tools for example.

    69. Re:In which world? by asapien · · Score: 1

      Is yahoo slow? Is google slow? Some of the largest sites on the web are built on LAMP, amazone, yahoo, google. How many major pure-play sites are based on J2EE? Certainly tons of business software gets written in java, but with LAMP you can also interface legacy systems via C/C++. I'm suprised how many business apps get built with vbscript, which has to be about one of the lamest languages in regular use, its less capable in many ways compared to LAMP or J2EE, but because you have a lot of companies with old NT servers they won't replace a lot of business apps wind being written in vbscript.

    70. Re:In which world? by PHPgawd · · Score: 1
      Java is not open source, but is owned by a increasingly desparate company that is about to go down the tubes trying to sell overpriced hardware.

      Get it through your thick heads people:

      1. Java is owned by Sun Microsystems, Inc.

      2. Sun (NASDAQ:SUNW) has a duty to its stockholders to not go bankrupt, and thus its management have an absolute duty to at least TRY to stop the world from spinning (aka stop LAMP).

      3. Sun will not stop the world from spinning, they are still tied to a failed CPU architecture, and essentially have no future.

      4. Java, being owned by Sun, has the same future as Sun, which is to say no future at all.

      Have a nice day.

    71. Re:In which world? by Tassach · · Score: 1
      What would stop you from writing a product in python to handle these formats?
      Fiscal responsibility. The client is paying you to write THEIR application, not to write an open-source message queue in Python.
      --
      Why is it that the proponents of "one nation under God" are so eager to get rid of "liberty and justice for all"?
    72. Re:In which world? by Anonymous Coward · · Score: 0

      Probably can't. Just another lightweight scripting language solves world's problems fanboy.

    73. Re:In which world? by Anonymous Coward · · Score: 0

      If you're comparing ASP or PHP, at least compare like for like. You don't need to create an XML Deployment descriptor at all with Java, anymore than you would with IIS and ASP.

      I don't know what Java you have been doing, but it doesn't seem like you gained much experience using it. Either that or never grasped how to use it yourself. Having to recompile for minor changes? Doesn't sound like a well written application to me. In this case I'd say, "bad programming". It is easier to write applications in PHP and ASP. Although applications in these languages tend to be more forgiving. An adept programmer with a strong grasp of OOP principles and design patterns, would experience the same kind of problems you discuss as having. Given that Java is not mentioned in any of the large builds you've suggested and the problems you say you've encountered I seriously doubt you've done little more than dabble with J2EE.

      Although I note your comment about a Java based web platform, I've had no problems with tomcat and specifically it allows for the kind of 'drop in' code mentality as mentioned regarding ASP/PHP, but with JSP (as do most). Comparing XML based document handling in Java, with a dropped in document in PHP is only comparible if they are handling the documents in the same way. Both can be dropped in as xml and pointed to an xsl. Either that or the documents can be parsed either in JSP or PHP in similar ways. With well written extensible code, minor or even major changes can be made without a 'recompile'.

      If you're not a fan of IIS, then don't use it. Its quite a simple install to get ASP running on *nix based server, if you have apache, its also even possible to get .net running on it.

      I'm not sure if you're trolling with your last line and your description of a thing that 'allows you to choose what language you want to write in' which seems to describe .net without saying so out loud, o the "or even Perl" comment, if you look into the history of PHP, you'd find out how funny your idea is.

    74. Re:In which world? by Lodragandraoidh · · Score: 1

      This is where you, and many others are not thinking holistically about your chosen profession (assuming you are a developer). Think about this: what if I find myself needing to use queues on a regular basis to integrate with my customer's current interfaces? If I have a standard module that I can use from job to job, I will be more successful with each passing job because I will have leveraged code-reuse. Seeing that, wouldn't it behoove me to build such a tool if none existed? Others in similar situations could also benefit from this OS development - thus raising the bar of software development as a whole. This is essentially the model we have seen work so well with Perl over its lifetime.

      Your perspective is exactly what is sucking the life out of software development, and making our clients and the companies we work for see us not as valuable computer craftsmen, scientists and artisans, but instead as interchangeable code monkeys - and the source of our output simply intellectual property to be jealously guarded. Your perspective leads to throw-away development - each project being a unique 'reinvent the wheel' operation that always ends with spotty results. This mindset of the developers - and thus the way they tell their story to their clients and bosses through words and deeds - is why so many of us have been outsourced.

      I will grant that there may be developers who use the tools you support to effectively and speedily produce highly useful applications for their clients. On the other hand I have seen few, if any such operations in practice - and yet have many examples of just the opposite at my fingertips.

      Fiscal responsibility is just another term for shortsightedness. We save money in this year, yet end up paying for our hasty decisions in years to come above and beyond what we would have payed had we invested in the craft of software development.

      --

      Lodragan Draoidh
      The more you explain it, the more I don't understand it. - Mark Twain
    75. Re:In which world? by jamwt · · Score: 1

      First off, a general comment. A lot of your criticisms in of the "P" in LAMP seem to be based on a fundamental difference between some of the "P"s and J2EE.

      Sun might package everything up and sell it in a nice box, but that doesn't mean that "requirement X" cannot necessarily be done with a "P" language. Instead, with the P languages, you're probably looking at combining different tools: different independent projects that were created in response to requirement X, which, believe it or not, a lot of "P" programmer are aware of.

      The argument could be made that Sun's approach provides more integration; well, P's approach provides more variety. That may help you choose an optimum solution, and it keeps the competition alive as each project strives to fulfill that requirement the best for that language. Sun's J2EE solution wins simply because it's there, and it's official. Wee.

      I'm a python programmer, so this may not necessarily apply to all P languages, though I think generally it does. Now I'll try to provide some specific answers.

      If I'm honestly not getting what requirement X really is, I'd love to be educated and learn something today.

      2) Transaction support is new to the M in lamp, and no one uses them in the P part. J2EE has a transaction system (JTA) that will combine all your data access into one big happy transaction, on all your resources that support JTA (includes JDBC).

      I have to admit, I don't really know what this is. I googled it, I read sun's website, I read a few FAQs, and still I don't get it. What does it provide transactions for? (Beyond, databases/JDBC, the obvious, which is done at the DB level anyhow [by serious databases.])

      3) Session state replication is completely absent from LAMP. A server could catch fire in a good J2EE configuration, and when the user clicks submit, they wouldn't even know, because at least two servers will have the users session id.

      I've been using memcached lately for sessions, (which has "P" language apis), and while you can distribute sessions/caches across a network this way, I'll admit there is no redundancy (I don't think), probably because it was only intended to be a caching daemon. It'd be nice to have the redundancy worked in there for session support.

      Features completely abscent from LAMP: Good web-service support (you can fake it, but Zope actually does XML RPC for you)

      There are so many modules for this, it's crazy. soapy, ZSI, xmlrpc libs, Pyro, etc. Add "web services" to the long list things that are simpler problems than they're hyped to be.

      JMS (Messaging System for asynchronous processing)

      Seems like you could roll-your-own in a couple of hours with Twisted code.

      Easy scripting of SQL (The Java Standard Taglib is far easier to use than anything I used in PHP or Perl, but Zope probably has everyone beat there)

      If you're worried about easy scripting, you can take it a step further to a great ORM like SQLObject as well. The nature of dynamically typed languages makes it easy to do pretty neat tricks using metaclasses and such with projects like SQLObject.

      Ok... now about why it takes less upkeep in J2EE land... 1) Specs require backwards compatibility in all new versions. I've had problems with every section of LAMP on this issue, but never on J2EE.

      Never had this problem with Python, so I can't comment. I do know that Java/Sun is very good about backwards compat though.

      2) A JSP page is only supposed to display information and forms. There is no logic in it. If you have problems with this, I recommend STRUTS. Some people recommend WebWork or Spring. It's a matter of taste, but STRUTS is still the top dog. In PHP, you have to work hard to not mix the two. I used to do action= in the get to simulate this behavior, but it's still not as good, just workable.

      Twisted/Nevow. If you want that, you got it.

      Since it's calling the

    76. Re:In which world? by Anonymous Coward · · Score: 0

      suit
      suit
      suit

      NOT suite

      suit
      suit
      suit

    77. Re:In which world? by angel'o'sphere · · Score: 1

      Hm, so you needed such a long post to admit that your parent is right and ZOPE is missing all those things.

      Doesnt it come to your mind that a standard implementation inside of the applicatin server would make things for developers needing that stuff more easy?

      E.G. how do you use cron on a Win NT box? How would the API for a ZOPE "Enterprisse BEAN" be to use such a cron? How if you descide that bean needs to be accessed via CORBA -- in 2 hours? Oops ... on a J2EE Server you just enable it ... no need of writing a big library.

      Your asumption about message queues are moot ... same question as above: if I have a message subscriptin based enterprise service and like to attach it to a J2EE Server, its a matter of minutes to do so (if the basic services exist, of course), because I only need to enable a queue.

      For ZOPE I need to wrie a message queue management system my own ... and so on.

      J2EE is having its momentum because you have standards for nearly everything! Write once run anywhere. Write once, configure to adapting needs: threading, persistence, clustering, authentification, authorization ... Is user X allowed to call the bethod bah() in object foo? You can change that without writing a line of code ...

      ZOPE is a CMS ... or a Publisching Framework ... J2EE is an enterprise framework. You compare a racing car with a jet fighter.

      angel'o'sphere

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    78. Re:In which world? by angel'o'sphere · · Score: 1

      I would guess the other project was done by bad designers or bad programmers even.

      Its relatively easy to transform your PHP solution 1 : 1 into a JSP solution, so your conclusin sentence is simply wrong: First of all, JSP with Oracle isn't remotely capable of this project with the resources given.

      When I write a JSP for every of your PHP files, likely using Groovy in the areas where it is to cumbersome to make full fledged Java classes, we have exactly the same app ... but the Java one likely will be much faster. Your half a million page hits per day ... thats not much ... ahhh meanwhile 2 million. So its no wonder that a single PHP web server handles them.

      What is indeed a wonder that the other guys messed it completely up, congrats for teaching them a lession :D

      angel'o'sphere

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    79. Re:In which world? by ShieldW0lf · · Score: 1

      The fact of the matter is that, within a pretty broad spectrum of reason, what technology you use is not the deciding factor of how successful and maintainable your app is going to be. The day someone does come out with a miracle technology that REALLY improves a project's chances of success, we'll all know about it pretty darn quick because everybody will flock to it overnight - and i mean actual people, not magazine articles or Oreilly books.

      You're right! Visual Basic and Access are all any developer should ever need!

      --
      -1 Uncomfortable Truth
    80. Re:In which world? by Anonymous Coward · · Score: 0

      as a developer to whom php && java == true I have to agree with the entire post. It ain't the tools, it's the monkey turning the wrench that determines success. Choosing the right wrench depends on whether you want to use a brake line tool to undo the brake line, or vise-grips.

      Tomcat doesn't seem to get as much security attention as LAMP, so maybe LAMP is the right tool for front end webserving. It's very fast, can be object oriented and enjoy the same type of forced organization as java, if you design it properly. It can also be extremely secure since it only uses 2 of the most probed ports in the world. You can connect to your J2EE infrastructure, using webservices in the DMZ and not expose your virtual machine to god knows what.

      l8
      AC

    81. Re:In which world? by someone1234 · · Score: 1

      Being a tester i did this to a J2EE application in my company :) What does this prove? The application was written badly, the technology isn't necessarily wrong.

      --
      Patents Drive Free Software as Hurricanes Drive Construction Industry
    82. Re:In which world? by Anonymous Coward · · Score: 0

      Actually, I haven't heard that in a long while. The only solutions which are proposed to solve 90% of the problems are Java and XML.

    83. Re:In which world? by Anonymous Coward · · Score: 0

      My PentiumMMX 166MHz with just 32MB of RAM is doing just fine as a Apache/PostgreSQL/PHP server. I once tried setting up something like SunONE on it... OK, stop laughing, how should I put it... it didn't work out very well. I tried a different J2EE solution, JBoss as I thought it would have lower hardware requirements, but unfortunately, that thing was a resourcehog as well. I actually tried ancient versions of JBoss in the hope that they might require less powerfull hardware but again...

      Now, my Apache/PostgreSQL/PHP solution is running just fine. Moreover, I have an LDAP server, CUPS server, SSH server and finally an IMAP server all running on the same machine, without any performance problems whatsoever.

      So, for a Java solution, my hardware is ready for the dumpster.

    84. Re:In which world? by tonejava · · Score: 1
      No thanks, I'll stick with ViM. I have no interest in a drag-and-drop GUI web page creator, and all of its other features seem to me to be of dubious value.

      I don't know about you but the whole idea of developers developing web pages is slowly fading out. If a corporate person can drag'n'drop what they want then let them.

      Fine, they may not always get it right but drag'n'drop is the direction alot of people are turning, even Sun Microsystems with J2EE. (Look up Sun's Creator application and JSF technology - it may not be ideal but I would rather drag'n'drop that code in a flash!)

      People want software deployed more rapidly and at the same (if not better) quality and we [developers] can only type so much before our fingers drop off. There will always be a place for text editors but RAD is what is being demanded - Design and Deploy.

      I won't elaborate on developers trying to mind read corporates just so they get the first design right as I'm sure many out there have had the exact same problem - yep even after design, scope creeping is imminent.

    85. Re:In which world? by Anonymous Coward · · Score: 0

      I dunno about you nerds but my LAMP system smokes with well over 6.5 million page views a month on our site. Entirely php/mysql/html and nothing else.

      The site ways in at over 24 gig of data.

  3. "Not to start another flamewar BUT..." by rleyton · · Score: 5, Funny
    ...LAMP is much better suited for next generation applications than J2EE?

    Not provocative at all that. No. Not in the slightest.

    I'm sure the flamewar that no doubt follows is merely a figment of our collective imaginations.

    --
    ooooooh! What does this button do? - DeeDee, Dexters Lab.
    1. Re:"Not to start another flamewar BUT..." by krymsin01 · · Score: 1

      Psh, I write backends in ASSEMBLY. Java/PHP/Perl/Python suck.

      --
      stuff
    2. Re:"Not to start another flamewar BUT..." by timbloid · · Score: 2, Funny

      It's the Slashdot equivalent of saying "No offense" after doubting someone's parentage to their face ;)

    3. Re:"Not to start another flamewar BUT..." by blowdart · · Score: 1
      Assembly? Backwards? Sissy. I use a magnet to set the individual bits on the drive platter.

      And so on.

    4. Re:"Not to start another flamewar BUT..." by mr+i+want+to+go+home · · Score: 1

      Drive platter?! Amateur. I use a hole punch and reams of cartridge paper cards. When I'm being lazy I just get to work with vacuum tubes.

    5. Re:"Not to start another flamewar BUT..." by Alpha27 · · Score: 2, Funny

      Ha, you naive little underlying...

      I use carrier pigeons to transmit the hole punch data to chicken routes, that spits out egg packets to your computers.

      Next week, we are migrating to ant communication through the use of their scent glands for communication. Open Source all the way... just grab an ant and hack the chemistry and the biology.

    6. Re:"Not to start another flamewar BUT..." by GreyWolf3000 · · Score: 3, Funny
      That's nothing. I have a team of 11,000 midgets, with a dedicated sub-grouping of 26 midgets leading 13 categories, all shouting ones and zeroes in seemingly random succession, either to the group itself or to a "router" group.

      Oh, and they snarl.

      --
      Slashdot: Where people pretend to be twice as smart as they really are by behaving like children.
    7. Re:"Not to start another flamewar BUT..." by Bill,+Shooter+of+Bul · · Score: 2, Funny

      Not to start another flamewar BUT...

      Here is a box of matches and a gallon of gasoline. Lets see who can light a mathc quickest after being drenched in gasoline.

      --
      Well.. maybe. Or Maybe not. But Definitely not sort of.
    8. Re:"Not to start another flamewar BUT..." by flink · · Score: 1

      Vacuum tubes? Luxury! I build Babbage Machines from gears I tool from raw brass ingots.

    9. Re:"Not to start another flamewar BUT..." by CmdrGravy · · Score: 1

      Hole punch ! Bah I slither through the dirt to my customers caves and service them there and then, backends - who needs them ? It will be nice when I evolve legs though.

    10. Re:"Not to start another flamewar BUT..." by Anonymous Coward · · Score: 0

      you are all a bunch of slackers. I had to create this entire freakin planet just to figure out the question to the answer i got from my last computer!

  4. Summary by Anonymous Coward · · Score: 0

    To summarize TFA:
    "Here is a new application server, that is not really an application server, but that does not matter as noone really needs an application server"

    - Frist psot

  5. What the? by Prophetic_Truth · · Score: 5, Funny

    Not to start another PHP vs. Java flame war, but it looks like LAMP is starting to grow up, and that it is much better suited for next generation applications than J2EE."

    Thats like me saying, "Not to offend you, but check out goatse.cx!"

    ITS JUST NOT POSSIBLE TO HAVE IT BOTH WAYS!

    --
    time is a perception of a being's consciousness
    time is your 6th sense, the wierd ones are 7+
    1. Re:What the? by dylain · · Score: 1, Informative

      Who said goatse was offensive? Philistine.

    2. Re:What the? by Anonymous Coward · · Score: 0

      Actully, the only people that're offended by goatse.cx now are people that're offended due to censorship...

    3. Re:What the? by IO+ERROR · · Score: 4, Insightful
      Not to offend you, but check out mysql.com!

      LAMP is great for what it does, but MySQL has no place in the enterprise. There's way too much important stuff that it lacks. I'm sure the nice folks who run /. can tell you of their many misadventures with MySQL, if they chose to...

      Now if you'll excuse me, I have to go find my asbestos suit.

      --
      How am I supposed to fit a pithy, relevant quote into 120 characters?
    4. Re:What the? by Ice+Station+Zebra · · Score: 1

      Microsoft Access is in the enterprise. Are you saying that Access is better than MySQL?

    5. Re:What the? by Anonymous Coward · · Score: 0

      Ha! If you think those are offensive, check out this: BushClippy or this Statergey

    6. Re:What the? by Anonymous Coward · · Score: 0

      No, but there's an implicit "Access doesn't belong there either" in his response. Replace MySQL with "MySQL, Access, and any other half-arsed feature-missing database" and you'll get the actual meaning.

    7. Re:What the? by Bellyflop · · Score: 1

      I like MySQL as a concept, but my understanding is that it's missing a lot of the pieces that one would need from an enterprise DB. My understanding is that it's missing things like stored procedures, DB server clustering and transactional support. Am I mistaken? If I'm not, I don't see how most enterprises would be willing to switch over to MySQL even though the price sure is right....

    8. Re:What the? by Ice+Station+Zebra · · Score: 1

      I completely disagree. The enterprise needs a cheap, stable database that runs everywhere. Right now they use Microsoft SQL Sever with whole teams of DBA's to run it. MySQL is a setup and forget database that meets the needs of probably 90% of the piss-ant corporate databases in use today.

    9. Re:What the? by singleantler · · Score: 1

      Where on Earth did you get "Are you saying that Access is better than MySQL?" from? He didn't say use Access instead, he just said MySQL wasn't ready for the enterprise.

      Just a vague guess, but perhaps he's suggesting PostgreSQL, Oracle, Sybase or MS SQL Server are more suitable for the enterprise instead. Or perhaps he's a DB2 fan or something.

      Access isn't the only alternative to MySQL, thank god.

      --
      "What if they're using IE?" "I've dumbed Mozilla down to cope with it." - BOFH
    10. Re:What the? by GreyWolf3000 · · Score: 1

      Actually, recently MySQL has added clustering support to it's feature list recently.

      --
      Slashdot: Where people pretend to be twice as smart as they really are by behaving like children.
    11. Re:What the? by Anonymous Coward · · Score: 0

      Try this:

      CREATE TABLE foo (id tinyint); INSERT INTO foo VALUES (128); INSERT INTO foo VALUES ('abc'); SELECT * FROM foo;

      I don't think too many enterprises that actually give a damn about data integrity -- which I think quite a lot do -- even consider MySQL.

    12. Re:What the? by GreyWolf3000 · · Score: 2, Informative

      MySQL recently has gained clustering support. Not that I'm contending that this is all that's necessary to be "enterprise ready" but it certainly is progress.

      --
      Slashdot: Where people pretend to be twice as smart as they really are by behaving like children.
    13. Re:What the? by mr_angry · · Score: 2, Interesting

      I don't especially love microsoft products but for what we do at work, MySQL wouldn't be a possible replacement. Microsoft's Sql server doesn't seem to require that much attention here, maybe more than other products but it doesn't seem so bad. And the feature set is very good. MySQL has no triggers, this is something i can't live without. I don't think it has the same level of support for stored procedures and user defined functions and i don't know if it supports authentication thru something like LDAP.

      m$ also provides neat tools like a db management tool with a gui and a query tool as well. The management gui seems to be pretty good for the times i've used it.

      Microsoft's SQL Server isn't the best database on earth but i really think the SQL server product is quite decent. Please explain why you'd need much more DBAs for the ms product vs mysql ?

      --
      100% of statistics are wrong.
    14. Re:What the? by Erik+Hollensbe · · Score: 1

      enjoy finding the parallel to CREATE SEQUENCE. (hint: there is none, only auto-incrementing table BS)

      (If someone knows different, I'd love to hear it - i've scoured that damn site looking for it)

      MySQL is fast and it's easier to use than berkeleyDB. that's really where it ends.

    15. Re:What the? by Billly+Gates · · Score: 1

      I can't tell you fustrated I get when livejournal or myspace is down due to mysql problems and maintance.

      Mysql is improving though but I would rather be castrated than use it in a big warehouse.

    16. Re:What the? by kpharmer · · Score: 1

      > I like MySQL as a concept, but my understanding is that it's missing a lot of the pieces that one
      > would need from an enterprise DB.

      They've been addressing the missing feature set over the last couple of years. But there's still a way to go with the basics (in some ways Oracle/DB2 in '82 were more advanced than MySQL in '04).

      However, I'd be more concerned with:
      1. the non-ANSI philosophy
      2. the flip-flopping on database philosophy (two years ago they insisted nobody needed transactions (!), views, stored procs, etc, now they have them)
      3. the silent error approach: common sql errors (type errors, string truncations, etc) commonly fail with no exception to the user. This allows data corruption, and is completely unacceptable for a competitive database product.

      On the positive side, it does have momentum. So, I'm sure the basic feature gap will eventually be resolved. The philosophical & design issues are another matter though. Perhaps they'll address those. Then again, maybe not. Until they do, I use alternatives like postgresql.

    17. Re:What the? by ckaminski · · Score: 1

      I have to disagree. After having fought, and I mean battles of legendary proportions, with Oracle, I'm enamored with Microsoft's SQL Server, especially in it's 7.0 and later incarnations. Robust, reliable, fast, easy to manage.

      In a competition between Oracle and Microsoft, I honestly don't think SQL Server has any competition (except Sybase maybe, which it apparently is based off of). I have yet to use DB2, so cannot comment.

    18. Re:What the? by Khazunga · · Score: 2, Informative

      Then, they're only missing these

      --
      If at first you don't succeed, skydiving is not for you
    19. Re:What the? by NeoSkandranon · · Score: 1

      1. the non-ANSI philosophy

      Explain? AFraid i'm not sure what you mean there..

      --
      If you can't see the value in jet powered ants you should turn in your nerd card. - Dunbal (464142)
    20. Re:What the? by NeoSkandranon · · Score: 1

      How can you be sure that's a MySQL competency issue and not an IT staff competency issue?

      --
      If you can't see the value in jet powered ants you should turn in your nerd card. - Dunbal (464142)
    21. Re:What the? by tumbaumba · · Score: 1

      In a competition between Oracle and Microsoft, I honestly don't think SQL Server has any competition (except Sybase maybe, which it apparently is based off of)

      Well, let see. Foreign keys with out cascade delete or update, which makes them useless. Also you cannot emulate them with triggers because all triggers fire up only after update. No recursive selects. No ability to create new aggregate functions. No dynamic sql. Transact sql is a nice language indeed, but it just plain lacks features of Oracle's PL/SQL. I am sure somebody else could write more on why Sybase is no match for Oracle and in some domains even to PostgreSQL.

    22. Re:What the? by mr_angry · · Score: 1

      Oracle seems to have a lot more flexibility and power than SQL Server, but at the price of a very increased complexity. Maybe i'm wrong but that's the impression i have after working a fair bit with SQL Server and a little bit with Oracle.

      Everything on Oracle seem way more complicated, i totally understand why you don't like Oracle (i don't like it either but i still think it has more power, but we don't need that power at work, m$ is fine for our applications)

      --
      100% of statistics are wrong.
    23. Re:What the? by LWATCDR · · Score: 1

      "LAMP is great for what it does, but MySQL has no place in the enterprise."
      Sure it does. MySQL is perfectly fine for many projects that do not require a full blown SQL server. As a backed of a website it is fine. You are right that I would not want to trust my account payable to it but to say it has no place is just wrong.
      Also LAMP does not have to include MySQL anymore. Frankly LAMP does not need Linux anymore. What used to be called LAMP can be WAMP (Windows Apache MySQL, PHP or Perl or even Python). Or BAMP BSD, Apache, MySQL.... or LAPP Linux, Apache, Postgres, PHP.
      You can now pretty much use Linux/Windows/Mac OSX/ BSD/Solaris to develop and to deploy. You can use just about any database from SQLLite to DB2. You can use Peal or PHP to develop with. Frankly LAMP has lost it's original meaning.

      There is no good reason that you could not develop a project under MySQL or my favorite Postgres using PHP and Pear then convert it "port if you like" to the enterprise database of your choice.

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    24. Re:What the? by 4of12 · · Score: 1

      but MySQL has no place in the enterprise

      After everything I've heard, I'm inclined to belive that just about any and every SQL solution will give anyone and everyone grief, the only difference being the flavor of grief.

      But I'm curious where the best transition strategy lies: starting out with MySQL, can one grow to a certain point and then transition to one of the more expensive, supported, high-performance db engines in a reasonable way?

      --
      "Provided by the management for your protection."
    25. Re:What the? by mobiGeek · · Score: 1
      except Sybase maybe, which it apparently is based off of
      There is no apparently about it. MS SQL Server is a direct branch from the Sybase Adaptive Server Enterprise (formerly Sybase SQL Server) code, the result of a partnership gone differently than hoped for by one of the two parties involved.
      --

      ...Beware the IDEs of Microsoft...

    26. Re:What the? by Eric+Giguere · · Score: 1

      If you like SQL Server, you should check out SQL Anywhere Studio. The developer edition is free, so give it a try. Not only can you run ASA (the database part of SQL Anywhere Studio) on Windows and CE, you can also run it on Linux/Unix -- something you won't get from SQL Server.

      Eric
    27. Re:What the? by kpharmer · · Score: 1

      > After everything I've heard, I'm inclined to belive that just about any and every SQL solution
      > will give anyone and everyone grief, the only difference being the flavor of grief.

      Well, if you only encounter a database on rare occasion, then it will probably be a bit of grief: SQL isn't like c/java/.net/perl/python/etc. It's like the difference between solving a puzzle (SQL) and building a house (python).

      And that's just SQL: transaction management, relational (or dimensional) modeling, data management issues, data quality issues are all subjects of their own.

      On the other hand, if you build many business applications, find yourself interfacing with databases commonly, or are crunching a lot of data...then learning about relational databases is probably well worth your while.

      It's not really that difficult, and many of the concepts that are different than procedural or oo development are ultimately inescapable (such as transaction management).

      And wrapping SQL in an abstraction layer can work, but there are many legitimate circumstances in which it won't - like when you're querying against 100 GB of data and must have good performance.

      > But I'm curious where the best transition strategy lies: starting out with MySQL, can one
      > grow to a certain point and then transition to one of the more expensive, supported,
      > high-performance db engines in a reasonable way?

      That's a good strategy - except - that mysql is probably the least portable database out there. Starting from postgresql then moving (if necessary) to db2/oracle/sybase/sql server would generally be easier.

      On the other hand, keep in mind that the cost of commercial licensing for very small platforms is typically quite cheap for most databases anyway: DB2 is as cheap as $500 for a dual-cpu server. Oracle's lowest end configuration is almost as cheap as is SQL Server's.

      And porting between databases is not trivial for applications of any complexity. Not to say that it shouldn't be done, but it's one of those projects that shouldn't be planned for a busy afternoon.

    28. Re:What the? by bored · · Score: 1

      Like relational consistancy checks? No wonder its so fast, it doesn't validate anything. Where I work we have a couple dozen tables with foreign keys to each other. Mysql will let you enter completly bogus foreign key information, bogus dates that don't exist. You name it.

    29. Re:What the? by Anonymous Coward · · Score: 0

      > MySQL has no triggers, this is something i can't live without

      MySQL has no god damn VIEWS. You every try to migrate schemas without patching it up with views? Jiminy cricket, they JUST got subqueries, something even MS Access had.

      Oh, but that's right, LAMP projects never go over 20KLOC, and one developer owns all the code and can change all the queries in a couple days. Nope, no reports or maintenance scripts at all. Piddly.

    30. Re:What the? by Anonymous Coward · · Score: 1, Funny

      > Mysql is improving though but I would rather be castrated than use it in a big warehouse.

      Wow. I must get more use out of my boys, because frankly I'll make do with COBOL and raw ISAM calls or flatfiles or Access, if castration were the alternative...

    31. Re:What the? by Anonymous Coward · · Score: 0

      > MySQL is perfectly fine for many projects that do not require a full blown SQL server.

      Is it now? Hope you didn't want foreign keys. Mind you, you can specify them, they're just ignored. How about dates that make any sense (did you know there are 31 days in february? MySQL says so). Hey, did you know that the critical system metadata has no transactional integrity? Check it, they're MyISAM. Isn't that nice?

      Once you step away from the brain-dead MyISAM (e.g. you have tables larger than 2G), MySQL's vaunted speed advantage evaporates utterly. Which leaves you wondering why you're even using it at all.

    32. Re:What the? by drew · · Score: 2, Insightful

      While Oracle does seem to be the most powerful database out there, I see no reason for it to be near as complicated as it is. My theory is that Oracle is trying to mainting the artificically high salaries of Oracle DBA's. (Don't get me wrong, a decent Oracle DBA earns every penny he's paid, but why should they even be necessary?)

      --
      If I don't put anything here, will anyone recognize me anymore?
    33. Re:What the? by drew · · Score: 1

      add to your list that it's also missing basic data integrity. i used to support MySQL databases, and I can't tell you how many times I've had to delete and restore the data files from a backup because they had become corrupted.

      --
      If I don't put anything here, will anyone recognize me anymore?
    34. Re:What the? by LWATCDR · · Score: 1

      You can really live just fine without foreign keys. You can live just fine databases under 2 gigs in size for MANY applications.
      Here is one example. My company has a very old phone system. It does not store the call info but instead dumps it out the serialport in realtime. MySQL and Perl would handle reading the data from the serial port and sticking it onto a table just fine and dandy. Yes I could use a flat file but an SQL database is much nicer to work with. It is very easy to setup ODBC so managers can pull the database into Excel and look at things like call volume and rate. Frankly I used Postgres for this application because I already have a Postgres server up and running for an App that required transactions. MySQL has one advantage over Postgres and that is if you are using it in a mixed enviroment it is easier to find bindings for MySQL that work under Windows than for Postgres.
      Yes for a VERY large number of applications MySQL is just fine. Frankly I think Postgres is a better free solution and I have heard good things about Firebird as well.

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    35. Re:What the? by Alarion · · Score: 1

      try changing the table type from MyISAM to INNODB and try again.

    36. Re:What the? by raju1kabir · · Score: 1
      I can't tell you fustrated I get when livejournal or myspace is down due to mysql problems and maintance.

      You're taking the word of people who aren't able to run the system, that they know what to blame. Does that make sense?

      Why aren't you blaming the hardware vendor or the electic company or the people who made the air conditioners? You'd have just as much basis for that.

      --
      "Patriotism is your conviction that this country is superior to all other countries because you were born in it." -- GBS
    37. Re:What the? by Bob+Uhl · · Score: 2, Insightful

      What I don't understand is the love for MySQL when there is a better alternative available which is just as free and just as easy to use. PostgreSQL is a joy to use, and it actually does what one would expect with regards to referential integrity &c.

    38. Re:What the? by Anonymous Coward · · Score: 0

      MySQL has speed that no others can match. Of course, this comes at the expense of "enterprise" features like integrity, foreign keys, etc., and this is why a common solution is to use Oracle to ensure integrity and replicate the data to MySQL instances for querying, and of course using intelligent caching on top of that.

      Once you limit yourself to one idea or technology, you'll lose, no matter what you choose.

    39. Re:What the? by curious.corn · · Score: 1

      Why not use Berkeley DB for the little weblet serving Quick & Dirty templated views from a semi static content bucket. It's even javaized now...
      Actually I'm curious to hear from anybody using the thing...

      --
      Mi domando chi à il mandante di tutte le cazzate che faccio - Altan
    40. Re:What the? by unger · · Score: 1

      >What I don't understand is the love for MySQL
      >when there is a better alternative available
      >which is just as free

      the question to ask about freedom isn't "how free?". the question to ask is "what kind of freedom?". MySQL is GPL'd and this offers a different kind of freedom than the PostgreSQL license offers. this may be part of the draw to MySQL.

    41. Re:What the? by Billly+Gates · · Score: 1

      I suppose Windows is perfectly stable and whenever a Windows desktop crashes the problem is due to incompentant IT techs?

    42. Re:What the? by Anonymous Coward · · Score: 0

      Hmm... Access does offer a bunch of the things that MySQL doesn't have, especially transaction control (i.e., Begin Transaction, Commit/Rollback). While not a "server" system, using something like Borland's MIDAS to keep the Access access on the server and the user access to it brokered through MIDAS, well...

      But trying to use just an MDB file on a server for a transactional database with more than about 5 data-modifying connections is...well...not a good thing. It's not even client-server, really, because there is no Access process providing connection ports and handling requests, just an MDB file that multiple people are trying to modify at the same time on a slow network share...

    43. Re:What the? by Anonymous Coward · · Score: 0

      Sorry, MS SQL Server Enterprise Manager blows chunks compared to Oracle's database management tools, or even TOAD. TOAD_SS (at least the free version) isn't really all that useful, which is suprising, given how useful TOAD is (including the free version).

      ISQLW is a big step up compared to sqlplusw, but they should have made the database object window more like a toolbar, instead of a persistent window.

      And then there's the MySQL management tools... ugg.

      Interbase/Firebird should be more interesting to people. It's got a couple of very useful 3rd-party management tools. But its two-phase commit is annoying, imho, but I don't quite understand it/see the need of it beyond simply

      begin trans...
      insert/update/delete...
      commit/rollback.

      On SQL Server's plus side is stored procedures that can return datasets, which is WAYYY different and easier to use than Oracle. With Oracle, you have to jump through a couple of hoops, including putting stored procs in a package that also defines a weakly typed REF CURSOR. Not all ODBC/OleDB drivers work with this...

      If Oracle had parameterized views, then that would be much closer to what SS and IB can do (and most other RDBMS, I assume) with stored procedures that can return datasets...

      It would be nice in ORA to do:

      select * from my_param_view(id=15, name='Jones')

      but alas...

    44. Re:What the? by Bob+Uhl · · Score: 1
      I'm a strong supporter of the GPL and I prefer it over the BSDL. But PostgreSQL is free and better: that's all that matters. If someone wishes to, he could make some changes to PostgreSQL and GPL his forked version. Yeah, I'd prefer it if the dev team went full GPL, but the BSDL is just as free.

      You don't see folks using Joe's Piddly Little Piss-ant GPLed HTTPD instead of Apache; why do people use a piddly, incapable, inscalable database?

    45. Re:What the? by ahdeoz · · Score: 1

      nope, he's a Postgres zealot guaranteed. He's probably never seen Oracle, Sybase, or DB2.

    46. Re:What the? by WhiteDragon · · Score: 1

      I was just talking with a guy the other day whose company uses an SQL database for some things (it is MS SQL server) but most of their data is not in the database. Instead they have freaking huge servers, running java software that just keeps about half a terabyte of instantiated java classes in core. He said it works really well too! I was rather taken aback, but he said that it works pretty well.

      --
      Did you mount a military-grade, variable-focus MASER on an unlicensed artificial intelligence?
    47. Re:What the? by unger · · Score: 1

      >If someone wishes to, he could make some>
      >changes to PostgreSQL and GPL his forked version.

      i didn't think it was possible to convert BDSL'd code to GPL'd code.

      when i read a BSDL i notice that the one requirement is that i keep the license intact. wouldn't this prevent me from re-releasing the code under the GPL?

    48. Re:What the? by Bob+Uhl · · Score: 1
      BSDLed code can be converting to anything; one just must preserve the license on the original code. One can take BSDLed code and take it propietary, or GPLed or whatever.

      The license terms are that you can do anything you want, so long as credit is given.

    49. Re:What the? by Anonymous Coward · · Score: 0

      You know what they say, programmer time costs more these days than just throwing money at buying better hardware. Although maybe the whole offshore-to-India thing is changing that equation. I do think U.S. programmers are/were overpaid (come on, how many of you folks have horror stories about the dweebs in the cubicle next door?), although not by that much.

    50. Re:What the? by Anonymous Coward · · Score: 0

      Yeah, the GPL is more about preventing people from doing that than anything else. Otherwise, public domain licenses (which the BSD license more or less boils down to in most cases) would have been sufficient for the OSS movement. As it is, PostgreSQL is a fine product, and I still haven't seen a convincing answer as to why people still stick with MySQL, as quirky and sometimes just plain broken as it is. Perhaps the only thing I've heard that makes even a little sense is that, until recently, PostgreSQL had to run under Cygwin on Windows, where many of the audience for OSS RDBMS were. (We may all rail against the horror of it all, but most folks who are building a 10 hit/day Web site and need to add some database-y are probably using Windows... and probably the Visual Studio editor to boot.)

    51. Re:What the? by unger · · Score: 1

      >BSDLed code can be converting to anything . . .
      > . . . propietary, or GPLed or whatever.

      are you sure about this? this doesn't make intuitive sense to me. how could BSDL'd code be GPL'd if the original BSD-type license has to be included? doesn't a BSD-type license prevent the restrictions imposed by the GPL?

      i'm confused.

    52. Re:What the? by Bob+Uhl · · Score: 1
      Nope--the BSD license doesn't prevent anything. It requires that one give credit to the original writers, but other than that you are permitted to do whatever you want with the code. Thus BSdLed code is in Windows. But BSDLed code can also be used in GPLed software, or anywhere else.

      Many folks preer the BSD license because they find it freer than the GPL. That is perhaps true. I prefer the GPL because it means that my code itself will always be free.

    53. Re:What the? by unger · · Score: 1

      hmmm . . ., read this:

      --
      >i'm trying to grok the implications of what
      >"GPL-compatible" means.
      >
      >in a nutshell my understanding is that anything
      >with a GPL-compatible license can be re-released
      >under the GPL. is this the understanding y'all
      >have?

      No. The GPL does not permit you to impose additional restrictions on GPL-licensed code; and nothing in any of the common forms of the BSD license, for example, permits you to strip the BSD license (and its restrictions) from BSD-licensed code. So, in so doing, you both create legal hash of the GPL (simultaneously imposing further restrictions and claiming that you can't do so) while violating the BSD license you received the code under.
      --

      this person makes it sound like it is *not* possible to relicense BSDL'd code as GPL'd code.

  6. Interesting by Anonymous Coward · · Score: 1, Insightful

    Could not RTFA ... site is jammed...
    But I guess to each his own. Only time will tell which architecture was worth its own salt.

    Meanwhile, I do confess that I have more experience with a LAMP stack, which IMHO is easier to install and develop on.

    Your Opinion Will Vary

  7. Let me get this straight by Anonymous Coward · · Score: 4, Insightful

    So you are basically saying: Throw more hardware at an inherently slow platform (LAMP) than to use highly optimized J2EE-servers with s state-of-the-art hotspot compiler?

    1. Re:Let me get this straight by jedidiah · · Score: 1

      You are simply on crack.

      In this discussion, it is what you are shilling that is the inherently slow platform.

      --
      A Pirate and a Puritan look the same on a balance sheet.
    2. Re:Let me get this straight by Tim+C · · Score: 1

      Well, I write web-based applications in J2EE for a living, and we have no problems with it being an "inherently slow platform".

    3. Re:Let me get this straight by Anonymous Coward · · Score: 0

      Well maybe if you used something other than J2EE than you'd see a difference.

      J2EE isn't inherrently slow, just inherrently bloated and over engineered.

    4. Re:Let me get this straight by Anonymous Coward · · Score: 0

      Just a hint: He spelled it right. You didn't.

    5. Re:Let me get this straight by jedidiah · · Score: 1

      This is most likely the direct consequence of the fact that you are essentially spending someone else's money.

      --
      A Pirate and a Puritan look the same on a balance sheet.
    6. Re:Let me get this straight by Anonymous Coward · · Score: 0

      Can you explain why all of the top sites on the Web used Perl and PHP, and none of them use Java? Look at Amazon, Yahoo, Ticketmaster, Google, etc. These sites receive an insane amount of traffic, and they're all using one of the Ps. I've yet to see a Java site that isn't unbearably slow. Technical arguments aside, why is this? Why is my observation considered invalid if I can't explain why Java is slow?

      If I throw a rock straight up, it comes down and hits me on the head. Therefore, I don't do that. This is why I think Java is a poor choice for Web applications. I prefer to learn from other people's mistakes, so I don't choose Java.

  8. New /. business model? by dr_d_19 · · Score: 4, Insightful

    Seriously, is the flame war the new source if income? I mean, it sure increases the number of banner views. Let's report on a new emacs-version, citing it as "far less potent than the newer VI. also notepad K1CK$ aSS".

    1. Re:New /. business model? by Anonymous Coward · · Score: 0

      far less potent than the newer VI

      That's not a flame, that's a fact!

      ps. And that's not VI, it's Vi. Or did you meant 6?

  9. Where to go ? by KingRamsis · · Score: 4, Interesting

    Slashdotters help me with this; on the right I have an over-engineered J2EE with a dozen of work arounds that are over hyped like EJB facades and dozens of frameworks that are difficult to learn and slow (..and kinky, every one and their mom developed a framework), and there are no free (as in beer) quality servers (I know JBoss but good luck without the documentation), on the extreme left I have LAMP, a loosely coupled system, PHP is popular but lets admit it is an ugly hack just looking at PHP5 reconfirms my believe that PHP didn't handle it fast growth properly, in the middle there is Microsoft which I hate and don't want to consider., I want a decent middle ware, that is cross platform, fast, and well documented, free as in beer (and preferably as in speech also).

    1. Re:Where to go ? by Enygma42 · · Score: 5, Insightful

      Java is well suited for middle-ware too. You don't have to install a big heavy duty J2EE server and enterprise level DB server. Tomcat & MySQL does the job just fine for smaller operations.
      Take a look at O'Reillys "Better, Faster, Lighter Java"
      http://www.oreilly.com/catalog/bfljava/

      IMHO Java scales very well, from small prototype projects right up to enterprise level apps. PHP is fine for the smaller stuff but I'd rather poke my eyes out with a white hot needle than develop and enterprise app with it.

      --
      "hehe, website" - Homer Simpson
    2. Re:Where to go ? by Anonymous Coward · · Score: 0

      JBoss is extremely easy to set up! Who the hell needs the documentation? It is just a bonus for "dummies".

    3. Re:Where to go ? by LarsWestergren · · Score: 4, Insightful

      Slashdotters help me with this;

      Allright then...

      and there are no free (as in beer) quality servers

      Apache Tomcat.

      (..and kinky, every one and their mom developed a framework)

      Doesn't mean you have to use them all.

      I want a decent middle ware, that is cross platform, fast, and well documented, free as in beer (and preferably as in speech also).

      That's Java.

      --

      Being bitter is drinking poison and hoping someone else will die

    4. Re:Where to go ? by Kingpin · · Score: 1

      If you don't need EJBs (which you obviously don't as you mention PHP as a viable alternative to J2EE), then stick to Tomcat or Resin. The servlet API is as elegant as any. Make your own stuff instead of using available frameworks if that's what works for you.

      --
      Unable to read configuration file '/bigassraid/htdig//conf/14229.conf'
      Geocrawler error message.
    5. Re:Where to go ? by daBass · · Score: 1

      JBoss is not a quality server, with or without docs. If you are doing a free project, orionserver.com is not only free to use, it probably is the best J2EE server, period.

      As for all the frame works: stay away from them. Use XDoclet to automate your EJB generation (bit of a learning curve) and the incredibly simple SiteMesh to make layout a bit easier if you are doing a web app.

      That's it, stay away from frameworks and you are laughing at how easy J2EE really is to develop in.

    6. Re:Where to go ? by Anonymous Coward · · Score: 0

      Zope v2 with Plone is quite nice, and the new ZopeX3 is really neat, but no compatible Plone at the moment.

    7. Re:Where to go ? by timbloid · · Score: 1

      > JBoss is not a quality server, with or without docs.

      Or apparently, justification...

    8. Re:Where to go ? by Erik+from+Breda · · Score: 1

      Go to Erlang. It is intended for robust and concurrent (as in webserver) applications. Use yaws as your webserver.
      Erlang is free as in beer and in speech. It comes with a distributed database, CORBA and many other goodies.
      Everyone I know that tried it, liked it and prefered it over Java and PHP. The participants on the Erlang mailing lists are very supportive, too.

    9. Re:Where to go ? by Eric+Savage · · Score: 3, Insightful

      Your assessment is unfortunately a common one. Class, repeat after me, J2EE does not mean you have to use EJB. The "dozens of frameworks" is a growing problem, caused by picking bad/inappropriate ones and/or weak architectural management.

      In my experience, as a developer and as a web user, a simple non-EJB java webapp running a relatively mature framework (or not), on something like Resin is capable of tremendous performance, but I'll state that as opinion to try and avoid baiting some PHP flametard into posting how many views his anime forum can handle.

      If you are developing for something that isn't going on a server you run, with a nice simple Java webapp all of a sudden you (or more often someone else) can choose your OS (Windows, Mac, Linux, Solaris, etc), your DB server (MySQL, PostreSQL, Oracle, etc), AND your web server (Apache, IIS, none, etc). Thats something that MSFT and LAMP-heads don't offer (without compromising their acronym) and something that client IT departments will very much appreciate. A "pure" admin (i.e. one who doesn't consider him/herself a developer), HATES being told by some outside developer to patch their systems, or run something they don't know or don't like.

      --

      This is not the greatest sig in the world, this is just a tribute.
    10. Re:Where to go ? by CountBrass · · Score: 3, Interesting

      You do realise that J2EE is not a synonym for EJB don't you? And that xdoclet is one of the worst villains when it comes to meta-data hell?

      Do yourself a favour, stick with J2EE, dump that p-o-s EJB and use Hibernate and Spring and you'll do fine: and be amazed how much you can achieve if you don't tie yourself to the EJB dead horse. Seriously: you'll thank me.

      --
      Bad analogies are like waxing a monkey with a rainbow.
    11. Re:Where to go ? by javaman235 · · Score: 1

      I think it has to come down to what langauge you want to write in. MY personal favorite is Python, and therefore I work directly with mod_python.
      Personally, I think any language supported by .NET and Mono on the CLI is a good choice. I think honest to God that Mono is going to be a big thing in a year or two...think about it...the ability to call any non-platform-specific library from perl, python, C#, or visual basic in one web framework. That's mono at work, my friend!

      --
      -The art of programming is the pursuit of absolute simplicity.
    12. Re:Where to go ? by JavaSavant · · Score: 5, Informative

      Who needs EJB when there's Hibernate http://www.hibernate.org/ and Spring http://www.springframework.org/. Persistence, Transaction Management, and SQL generation in one tidy package. And it works on any J2EE app server, no matter how lightweight or robust.

      Not that I have qualms with any attempt to provide these services in PHP. It's not a matter of having just one tool in your toolbox, but rather knowing which tool is right for which job. My only response to the original poster is "I don't want to start a flamewar, but if you aren't a sound enough engineer to know when to use which tool, you pretty much suck."

    13. Re:Where to go ? by Anonymous Coward · · Score: 1, Insightful

      Tomcat is great, but it's not a complete J2EE application server, only a servlet container. You still need JBoss (or one of it's commercial counterparts) for EJBs and the like.

    14. Re:Where to go ? by doctormetal · · Score: 1

      I want a decent middle ware, that is cross platform, fast, and well documented, free as in beer (and preferably as in speech also).

      That's Java.


      are you sure?

      java is getting a lot faster with newer releases, but it is not cross platform.
      The java byte code is platform independant (unless you use platform specific stuff), but the JRE needed to run it is not.

    15. Re:Where to go ? by timbloid · · Score: 2, Insightful

      > be amazed how much you can achieve if you don't tie yourself to the EJB dead horse.

      EJBs do have their place. They are good for distibuting your objects across servers when the data processing is so costly that it outweighs the cost of remote invocation.

      The problem with EJBs is that everyone tried to use them for everything, and later realised that they were using an expensive (processing wise) hammer to crack a nut.

      JMS and MDBs also shouldn't be ignored...they too have their place.

      To claim that EJBs are a p-o-s is to ignore the applications where they do work...

    16. Re:Where to go ? by daBass · · Score: 1

      I certainly realise that, unfortunately, the rest of the world - especialy those not actualy using J2EE - doesn't.

      The problems with frameworks like that is that they are nice for one-man shops or even small dot-coms, but when it comes to enterprise development, it's best to stick to standards that are likely to be around for a while. Java history is littered with road kill that was once a popular and sometimes even good framework - until something sexier came along or the original developers gave up and some fuckwits that took over destroyed it.

      Use what works for you, but never declare anything superior or the only way to do things.

    17. Re:Where to go ? by Tim+C · · Score: 1

      The java byte code is platform independant (unless you use platform specific stuff), but the JRE needed to run it is not.

      JREs exist for all the major platforms. What OS and hardware combination is it that you want to run as a server (presumably with better support than googling for HOWTOs) that doesn't have a JRE available?

    18. Re:Where to go ? by Anonymous Coward · · Score: 0

      You're right, you can't run EJBs.

      Question: do you really *need* to? For the vast majority of cases, the answer is "no".

    19. Re:Where to go ? by M1FCJ · · Score: 1

      Oric Atmos. :)

    20. Re:Where to go ? by AstroPup · · Score: 1

      Ruby on rails. http://rubyonrails.org

    21. Re:Where to go ? by SoTuA · · Score: 1
      The java byte code is platform independant (unless you use platform specific stuff), but the JRE needed to run it is not.

      And this is different from PHP how? The PHP intepreter must be compiled for the platform. You can't just try to run PHP code with the x86-linux binary PHP executable on a x86-windows or a Sparc-Solaris platform.

      Seriously, is there something that is TRULY portable as in NOT NEEDING ANYTHING for the specific platform?

    22. Re:Where to go ? by thammoud · · Score: 1

      Hibernate replaces Entity beans very nicely. However, you still need session bean functionality. A layer that provides security and transactions in a standard way. While I like Spring a lot. it is not a standard and it really does not have many advantages over what session beans are meant to provide. At the end of the day, you need some middleware on top of RMI. The IOC functionality provided by Spring is very nice and EJB's in general can benefit from the concept. i see Spring being used with session beans but not to replace them.

    23. Re:Where to go ? by markroth8 · · Score: 2, Informative
      ...there are no free (as in beer) quality servers

      Actually, Sun Java System Application Server 8 PE is free as in beer, and it is high-quality with good documentation:

      http://java.sun.com/j2ee/1.4/download.html

      It is a fully compliant J2EE 1.4 application server that is free for development, production deployment, and redistribution.

      Disclaimer: I work for Sun.

    24. Re:Where to go ? by hachete · · Score: 1

      The major problem with EJB is persistence - even in JBOSS, this is unbelievably complex. I've come through a project where we did everything to avoid the persistence beast. If that was fixed - i.e. simplified, then everything in the garden would be rosy:-)

      Message Driven Beans and the Java Messaging Service are a really important part of the armoury. For, possibly the first time, it brings Big Iron messaging reliability within reach of the average programmer. If only someone could make it more language agnostic...

      h

      --
      Patriotism is a virtue of the vicious
    25. Re:Where to go ? by Erik+Hollensbe · · Score: 1

      if you are serious about asking this question...

      perhaps some other field might be up your alley. most OS's don't even use the same binary format, much less anything else.

      so either you aren't prepared to ask that question (and you shouldn't care until you are), or you are expecting bill gates and bill joy to hold hands and walk in the park, talk rememberances, and announce that they are getting married a week later.

    26. Re:Where to go ? by Anonymous Coward · · Score: 0

      While some servers are exorbitantly overpriced (*AHEM* WEBLOGIC *AHEM*), if you're complaining about prices J2EE is probably not the best fit for you. For most medium to large sized enterprises, the couple hundred bucks you'll spend on a nice application server (such as Resin) will seem like a drop in the bucket (and a steal of a deal!). And if you're worried about startup or development costs, you can download many servers free of charge for development purposes.

    27. Re:Where to go ? by Anonymous Coward · · Score: 0

      amen to the Spring/Hibernate combo. Best thing to happen to J2EE in a looong time.

    28. Re:Where to go ? by flacco · · Score: 1
      I want a decent middle ware, that is cross platform, fast, and well documented, free as in beer (and preferably as in speech also).

      Webware for Python.

      throw in Cheetah templates and you've got a comfy environment quite like java servlets plus velocity templates.

      i wish i'd known about webware before my last monstrous java web applicatin.

      --
      pr0n - keeping monitor glass spotless since 1981.
    29. Re:Where to go ? by GuyWithLag · · Score: 1

      That's stupid. You will need at least a week to create a useable framework that handles the essentials. Nevermind that you will not perceive the length of it if you are just-in-time coding parts of your application.

      Tell me, would you take a week to evaluate existing frameworks?

    30. Re:Where to go ? by SoTuA · · Score: 1
      if you are serious about asking this question...

      *sigh*. Why would I ask that question (as in 'being serious about asking it') after I put forth an argument that clearly supports that it isn't possible? And with REALLY BIG CAPS? Hint: It's a rethorical question, and its answer was an obvious "NO".

      The post I was responding to pointed out that Java wasn't "cross platform" because the JRE wasn't cross platform. To wich I respond "duh, find me a piece of software that works anywhere, with no native-compiled parts (like a JRE)".

    31. Re:Where to go ? by mattkime · · Score: 1

      I want a decent middle ware, that is cross platform, fast, and well documented, free as in beer (and preferably as in speech also).

      Someday we'll get there. Until then, I'd take a close look at Apple's WebObjects.

      http://www.apple.com/webobjects/

      When NeXT was bought out by Apple, WebObjects was their star product. It has built in object persistance, transaction management, and a host of other features. Apple uses it to run their dynamic content, including their store and developer sites.

      The catch? $699. (I bought my copy for about $150 on ebay.) The Developer tools are basically mac only. You can program with WO on a PC, I'm not sure about Linux - but you're giving up Apple's tools. Your application is fully cross platform for deployment.

      I've been keeping my eyes open for open source replacements, but they're often very complex.

      --
      Know what I like about atheists? I've yet to meet one that believes God is on their side.
    32. Re:Where to go ? by roman_mir · · Score: 1

      There is no any real reason why enterprise level application servers must be free as in beer. All firms I worked for paid for their BEA or Websphere licenses. On the other hand for development purposes you can download BEA for free, and if JBoss is not recognized as an 'enterprise level', this is just the truth in the eye of the beholder. If you can't afford an app-server, are you sure you can afford an enterprise level solution?

    33. Re:Where to go ? by heybo · · Score: 1

      Sun App Server is free as in beer. It also has good doucmentation and runs on Winders, Solaris or Linux. We tried to install Tomcat and got caught in dependecy hell. The Sun App Server installed without a hitch.

    34. Re:Where to go ? by D-Cypell · · Score: 1

      Tell me, would you take a week to evaluate existing frameworks?

      I should hope so, I have spent the better part of my Java career evaluating existing frameworks, and indeed, some of it writing them.

    35. Re:Where to go ? by poot_rootbeer · · Score: 1

      there are no free (as in beer) quality servers

      Apache Tomcat.


      Not only is it "free", but it's also "free quality". Maybe it's gotten better since the last time we tried to run a high-traffic production app on it, but we were not at all happy with its reliability.

      > (every one and their mom developed a framework)
      Doesn't mean you have to use them all.


      But you do need to (or at least should) use one of the many frameworks. How do you choose? Do you want to risk committing a million-dollar project to a given framework, only for the developers abandon it shortly thereafter?

      > free as in beer (and preferably as in speech also).
      That's Java.


      Java is hardly "free as in speech". It's a more open standard than many of its contemporaries, sure, but ultimately it's still Sun's to do with as it pleases.

    36. Re:Where to go ? by dadeSF · · Score: 1

      Geronimo will kick ass though!!

    37. Re:Where to go ? by nazzdeq · · Score: 1

      Yeah, everytime I'm using a website that's using Java I know immediately because it's slow as fuck. It scales great, performs on par w/ C++, . My ass. I'd like to see you use a Java OS and Java Webserver and Java Networking, Java Database and Java Browser, Java Office....hehe. You'd become the world's most patient person. -Nazz

    38. Re:Where to go ? by Joff_NZ · · Score: 1

      Indeed. So how about JOnAS

      It uses either Tomcat or Jetty on the web tier too!

      The documentation is (fairly) good, and the developers and communitiy are fast to respond, and very helpful. JOnAS has also received a grant to get full J2EE certification

      --
      The revolution will not be televised. It won't be on a friggin blog either
    39. Re:Where to go ? by Anonymous Coward · · Score: 0

      Hell, why not go for Derby/Cloudscape instead of MySQL?

    40. Re:Where to go ? by Anonymous Coward · · Score: 0

      Derby can't compare to MySQL. It's nice for small loads and being embeddable.
      PostgreSQL or Firebird are better alternatives when you need a proper db. And both kick MySQL's butt, so I really can't see why mysql is still this frigging popular..

    41. Re:Where to go ? by Anonymous Coward · · Score: 0

      Tomcat has been shaping up lately. If all you're looking for is a free servlet-container, look no further.

    42. Re:Where to go ? by Anonymous Coward · · Score: 0

      Apache Tomcat? Wait a minute, wasn't that the "problem" that Java developers claimed Friendster had when trying to make their site scale with Java? They switched to PHP, and they quit sucking. I thought Tomcat was the excuse the Java community was using for this.

    43. Re:Where to go ? by Anonymous Coward · · Score: 0

      I'm not sure if it counts as "free as in beer" and it's not open source, but Sun Java System Application Server 8.0 (and soon to be released 8.1) Platform Editions are FREE for both development and deployment (commercial or other). Oh, and the documentation is also free.

    44. Re:Where to go ? by Erik+Hollensbe · · Score: 1

      Sorry, sarcasm doesn't translate well and we are on slashdot after all. I thought you were serious. :)

    45. Re:Where to go ? by The+AtomicPunk · · Score: 1

      Jonas. Free. Has documention. Works well.

    46. Re:Where to go ? by Man_Holmes · · Score: 1

      Will you settle for four out of five? If that's the case consider ColdFusion.

      Before I am flamed, if you haven't used CF in the past twelve months whatever comment that you might make is probably no longer true.

      Coldfusion no longer has a problem with scalability and proper use of Coldfusion components lets you build object oriented applications.

      If your app server must be free then consider the free version of NewAtlanta's Blue Dragon server or the Swiss Railio which is in beta.

      All of these are built on top of Java. Blue Dragon even has a dotNet version.

      Why ColdFusion? Three words - Rapid Application Development.

      Man Holmes

    47. Re:Where to go ? by mcrbids · · Score: 1


      Slashdotters help me with this; on the right I have an over-engineered J2EE with a dozen of work arounds that are over hyped like EJB facades and dozens of frameworks that are difficult to learn and slow (..and kinky, every one and their mom developed a framework), and there are no free (as in beer) quality servers (I know JBoss but good luck without the documentation), on the extreme left I have LAMP, a loosely coupled system, PHP is popular but lets admit it is an ugly hack just looking at PHP5 reconfirms my believe that PHP didn't handle it fast growth properly, in the middle there is Microsoft which I hate and don't want to consider., I want a decent middle ware, that is cross platform, fast, and well documented, free as in beer (and preferably as in speech also).


      Summary of post: Everybody: mumble mumble sucks mumble sucks mumble mumble it all sucks WTF?.

      And, this is modded insightful! (mods, wake up before moderating!)

      --
      I have no problem with your religion until you decide it's reason to deprive others of the truth.
    48. Re:Where to go ? by Anonymous Coward · · Score: 0

      I had sex with your mother

    49. Re:Where to go ? by doctormetal · · Score: 1

      The java byte code is platform independant (unless you use platform specific stuff), but the JRE needed to run it is not.

      And this is different from PHP how? The PHP intepreter must be compiled for the platform. You can't just try to run PHP code with the x86-linux binary PHP executable on a x86-windows or a Sparc-Solaris platform.


      It is not different, but a lot o people claim it is. They claim java is truly platform independant, but it isn't.

      Seriously, is there something that is TRULY portable as in NOT NEEDING ANYTHING for the specific platform?

      Answer is simple: no. Anybody that claims otherwise does not know what he is talking about.

    50. Re:Where to go ? by SoTuA · · Score: 1
      Sorry, sarcasm doesn't translate well

      Yeah, and in writing it is even easier to miss...

      and we are on slashdot after all

      Well said ;)

    51. Re:Where to go ? by ahdeoz · · Score: 1

      a C compiler is available on more platforms than the (any) JRE. That's why PHP is more platform independent than Java.

    52. Re:Where to go ? by tepples · · Score: 1

      a C compiler is available on more platforms than the (any) JRE. That's why PHP is more platform independent

      If PHP calls any function not in the ISO C standard library (such as many functions defined by POSIX), then at least one C compiler toolchain does not link it. Has PHP been tested on all platforms that have a JRE?

    53. Re:Where to go ? by tepples · · Score: 1

      Java is hardly "free as in speech". It's a more open standard than many of its contemporaries, sure, but ultimately it's still Sun's to do with as it pleases.

      Likewise, x86 is hardly "free as in speech". It's a more open standard than many of its contemporaries, sure, but ultimately it's still Intel's to do with as it pleases.

  10. Get a fucking grip by Timesprout · · Score: 2, Insightful

    Some muppet posts a blog and immediately hundreds of millions of dollars investment and countless man hours of work on a mature, strongly adopted platform become irrevelevant. This is pure flamebait.

    The only thing this indicates to me is that Grid/LAMP is going to struggle to gain acceptance in the enterprise because it proponents are idiots.

    --
    Do not try to read the dupe, thats impossible. Instead, only try to realize the truth
    What truth?
    There is no dupe
    1. Re:Get a fucking grip by timbloid · · Score: 1

      I'm glad I don't have mod points, as I'd have a hard choice deciding between Funny and Insightful ;)

    2. Re:Get a fucking grip by Anonymous Coward · · Score: 0

      Mod grandparent post +1.5 Funsightful!

    3. Re:Get a fucking grip by Anonymous Coward · · Score: 1, Funny

      Welcome to Slashdot, were a sad teenager with a laptop can register a SourceForge project and declare that he's going to take over the world within 12 months, and the mindless idiots which infest this place eat it up. I wouldn't be surprised if some fanboy hasn't already rushed off to draft a memo to his boss on why they need to dump their J2EE platform right now in favour of Grid/LAMP. He read it on Slashdot, it must be true. Look, it even has a SourceForge project page!

      No one needs to do the hard work any more, oh now. Just come up with any old idea and the world is yours. The implementation is a mere derail.

      I blame Gentoo myself. It's turned a bunch of clueless but previously harmless idiots into a bunch of clueless but deluded "hackers" who think that copying someone elses CFLAGS from a forum post makes them a compiler engineer and Open Source Guru. Bah.

    4. Re:Get a fucking grip by jokumuu · · Score: 1
      In most cases today it seems that the actual technical merits of some systems have low bearing, instead you go with someone's opinnion. For that you need thing called marketing...

      Regadless how good something new is, people are not going to abandon it as said above. (This is not meant as comment on the relative merits of the two systems)

    5. Re:Get a fucking grip by Anonymous Coward · · Score: 0

      Ha ha! Class!!!

      I'm not a lover of J2EE but I think you've hit the nail squarely on the head.

    6. Re:Get a fucking grip by BJH · · Score: 1

      And thus flamefests breed new flamefests.

      Please don't bring the Gentoo riceboys into it - next thing you know, we'll have the NRA gun-nuts in here with us.

    7. Re:Get a fucking grip by Anonymous Coward · · Score: 1, Funny

      The Gentoy ricers are nice squishy targets and I'm in a bad mood. I need to draw them out of the bushes.

      For you, look on the bright side. It could have been, I could have mentioned Unbuntu, another prime breeding ground for lame little kids with delusions of grandiur.

      Oh, whoops.

    8. Re:Get a fucking grip by ceeam · · Score: 1
      The only thing this indicates to me is that Grid/LAMP is going to struggle to gain acceptance in the enterprise because it proponents are idiots.

      Generalization - a sure sign of an intellectual. Or not.

    9. Re:Get a fucking grip by vr · · Score: 1

      Some muppet posts a blog and immediately hundreds of millions of dollars investment and countless man hours of work on a mature, strongly adopted platform become irrevelevant. This is pure flamebait.

      I agree. I've previously worked with J2EE, and when I recently moved to LAMP my impression was that J2EE is somewhat more mature. But there's lot of crappy J2EE software out there, so it's important to choose the right stuff, or you'll end up banging your head into the wall and not getting any work done.

      Anything Oracle should be avoided like the plague (especially the Oracle Portal Server), while Eclipse, XDoclet, JBoss and the latest incarnations of the IBM WebSphere Application Server are good choices.

  11. Still no TPC by dras · · Score: 5, Interesting

    For the majority of enterprise projects I've worked on, we wouldn't event consider a platform that didn't perform Two Phase Commits (MySQL) nor supported distributed transactions. This stuff still has a long way to go before it's to be taken seriously.

    1. Re:Still no TPC by Anonymous Coward · · Score: 0

      not to mention Views, Triggers, Stored Procedures, Referential Integrity, etc., etc.

    2. Re:Still no TPC by dras · · Score: 1

      Heh, make that 2PC. But while we're onto TPC figures...

    3. Re:Still no TPC by Anonymous Coward · · Score: 0

      What really really _really_ got me with MySQL 4.1 was this.

      There I was reading the MySQL online docs in teh CREATE VIEW section. So I open the mysql 4.1 command line client and CREATE VIEW..... is giving syntax errors. Back to the docs I go and yes, there it is, a CREATE VIEW example. So I try it again and still get syntax errors.

      Confused (I've created views in Oracle for years and I know what the syntax should be) I go back and read the introduction. There it says that 4.0/4.1 are the recommended production versions of MySQL but wait, WHAT THE HELL IS THAT???? Views are not supported until version 5.0 which is currently alpha and NOT recommended for production?!?!?!? WTF?!?!?! How can MySQL expect to compete for Enterprise level stuff if you can't even create fscking views.

      That's it - I'm going back to PostgreSQL.

      --
      Annoyed

    4. Re:Still no TPC by Anonymous Coward · · Score: 0

      not to mention Triggers, Stored Procedures, Referential Integrity, etc., etc.

    5. Re:Still no TPC by GreyWolf3000 · · Score: 2, Informative

      Clustering support has recently been added to MySQL.

      --
      Slashdot: Where people pretend to be twice as smart as they really are by behaving like children.
    6. Re:Still no TPC by bill_mcgonigle · · Score: 1

      That's it - I'm going back to PostgreSQL.

      What on Earth ever possessed you to switch from PostgreSQL to MySQL?

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
  12. I haven't RTFA, but... by Zangief · · Score: 2, Insightful

    Can you use Postgres instead of MySQL in LAMP, without extreme pain?
    --
    Wiki de Ciencia Ficcion y Fantasia

    1. Re:I haven't RTFA, but... by dave420 · · Score: 3, Funny
      No, 'cos then you have LAPP.

      ba-DING.

    2. Re:I haven't RTFA, but... by aled · · Score: 1

      Better yet: could one use Firebird, Oracle, Informix, DB/2, Derby, MS SQL, Ingres, etc without extreme pain?

      --

      "I think this line is mostly filler"
    3. Re:I haven't RTFA, but... by sverrehu · · Score: 1

      You can use Linux, Tomcat, PostgreSQL and Java with no pain, except for the pronounciation of the acronym.

    4. Re:I haven't RTFA, but... by NickeB · · Score: 3, Funny

      Which is the swedish word for patch... It's a sign I tell you!

    5. Re:I haven't RTFA, but... by buro9 · · Score: 0, Redundant
      Can you use Postgres instead of MySQL in LAMP, without extreme pain?

      Yes, but then it would be LAPP, and that doesn't sound as good in meetings... you can't use puns about the light coming on, illumination, brilliance, etc then... or dazzle the CEO with tech-babble along the lines of "LAMP outperforms J2EE because it has more Lumens".

    6. Re:I haven't RTFA, but... by Anonymous Coward · · Score: 0
      It's a sliding scale:

      1. MS SQL: Death preferable, no release
      2. Informix: You'll eventually manage to commit suicide through an elaborate plan involving the manuals.
      3. DB/2: You'll eventually kill the person who made you use it to obtain release.
      4. Oracle: Extreme pain but many Oracle DBA's escape and hide amongst the programmers, bringing anguish and torment to others as payback.
      5. Ingres: If you've had a heart attack you'll know the feeling you get in your left arm. Like that.
      6. Derby: I think my arms gone to sleep. Ooh, pins and needles.
      7. Firebird: That tickles.
    7. Re:I haven't RTFA, but... by dave420 · · Score: 1

      they're watching us right now! run!

    8. Re:I haven't RTFA, but... by ChaosMt · · Score: 1

      Heck ya. I do so all the time. I don't favor MySql except for quick and sloppy stuff. Heck, I do OpenBSD, Apache 1, PostGresql, php/perl. You want extreme pain? Trying doing any thing simple with oracle. Never try and do anything simple with oracle - NEVER.
      However, the "extreme pain" your are probably reffering to is most of the free server software we all install is mainly for LAMP. Using another db is probably the least tested item. In addition to so MANY of these projects are haphazard in documentation and are only mostly portable. So, you end up becoming a co-developer instead of simple user. That is painful, but it's not the fault of the db so much as the cost of free software.

    9. Re:I haven't RTFA, but... by aled · · Score: 1

      That's what I mean.

      --

      "I think this line is mostly filler"
    10. Re:I haven't RTFA, but... by ceeam · · Score: 1

      I tend to use FirebirdSQL these days. I've used it (IB in fact) before w/ standalone apps and was reasonably happy. But it was some time ago. Then when PHP/MySQL schism hit I tried it w/ PHP and to my amusement it is as fast as MySQL if not faster. Plus - you have transactions and stuff, minus - some syntactic peculiarities (no "SELECT" without "FROM" for example), and autoinc->explicit_generators issue. Otherwise - it rocks! Now I can hardly see a reason to go with MySQL instead of FB. Oh! And if you want to use it elsewhere, not from the web server only, there's no licensing bullshit about that. Nice. Don't forget to try IBExpert for "post-CASE" DB management.

    11. Re:I haven't RTFA, but... by Anonymous Coward · · Score: 0
    12. Re:I haven't RTFA, but... by Ingolfke · · Score: 1

      Can you use Postgres ... without extreme pain?

      Since this post is clearly just a breeding ground for flamewars... the answer is NO.

    13. Re:I haven't RTFA, but... by BabyDave · · Score: 1

      And then you could replace Linux with FreeBSD, and run FAPP!

    14. Re:I haven't RTFA, but... by mlk · · Score: 1

      But you can put "Lap dancing club" down as "LAPP Training".

      --
      Wow, I should not post when knackered.
    15. Re:I haven't RTFA, but... by Anonymous Coward · · Score: 0

      How do you say patchdance in Swedish?

    16. Re:I haven't RTFA, but... by Craig+Ringer · · Score: 1

      I think both have their place - as in the right circumstances do Firebird, SqLite, ASE, Oracle, DB2 and who knows maybe Ingres. (must play with that - they have Python bindings ... mmm).

      You can use PostgreSQL on *NIX (incl Linux) with Apache and Perl/PHP/Python/Java/C# if you want.

  13. Do not equate JAva to J2EE by Trinition · · Score: 4, Interesting

    Not to start another PHP vs. Java flame war, but it looks like LAMP is starting to grow up, and that it is much better suited for next generation applications than J2EE

    (emphasis mine)

    Remember, folks, Java is more than just J2EE and J2EE is only a part of Java. There are many enterprise applications written without the cancer that is J2EE. There a great number of alternative frameworks for building enterprise applications.

    Personally, I feel that J2EE justifies itself because the bloat of a J2EE server means you have to have multiple instances to support an equivalent load a non-J2EE solution could handle on a single server.

    1. Re:Do not equate JAva to J2EE by dras · · Score: 1

      And consider all the lightweight containers that are moving into that middle ground. For example Spring with hibernate, OpenJMS, Quartz, and a mass of open source options is very simple to use (once you've sorted out all your options) without the J2EE baggage. And using Eclipse to pump out code greatly reduces the code to deployment cycle, as fast as with any scripting language.

    2. Re:Do not equate JAva to J2EE by CountBrass · · Score: 3, Insightful

      Personally I think you're wrong. J2EE is great if you need the features it supports: JMS, distributed transactions, database connection pooling, jsp/servlets etc etc.

      Now if you'd said "EJB", which is only a part of J2EE: and by far its worst part, then I'd have agreed with you. EJB is the epitome of what happens when something is designed by committee.

      --
      Bad analogies are like waxing a monkey with a rainbow.
    3. Re:Do not equate JAva to J2EE by borud · · Score: 1
      Remember, folks, Java is more than just J2EE and J2EE is only a part of Java.

      Very true.

      What scares me a bit about parts of the Java community is that they seem to think that you can't realize business applications without basing the architecture around some application server.

      Also the Java community is infested with all the wankers who worry about what is fashionable. For instance every decade has its own flavor of MDA, and it is amazing to see that in each incarnation this crowd fancies itself special "we're on the right track this time!"

      It would be a shame if these wankers should represent Java. Just as much as if the more vocal participants in the PHP community should represent PHP. -Bjørn

    4. Re:Do not equate JAva to J2EE by orasio · · Score: 1

      The issue here is that when you develop with Tomcat, for example, you have an easily deployable architecture, and not too much overhead, with scalability from the start.
      It's ok to do standalone java stuff, but it's ore trouble than it's worth.
      When I want to make a new tomcat project, it's a snap, to reuse lots of code, and to use a web client, and managing the libraries, and deploying.
      Stand alone is nice, but more complex.

    5. Re:Do not equate JAva to J2EE by roman_mir · · Score: 1

      I used J2EE in most of the apps, but I also dealt without it when needed, and for sure, all of the features on your list are sinonymous with what J2EE idea packages, but all of those parts do exist on their own as stand-alone features.

    6. Re:Do not equate JAva to J2EE by cheeser · · Score: 1

      Please remember that J2EE != EJB. There are lot of technologies underneath the J2EE umbrella that are very nice.

      --

      --
      http://cheeser.blog-city.com

    7. Re:Do not equate JAva to J2EE by CountBrass · · Score: 1

      Not in Java they aren't. They are by definition part of J2EE: although a J2EE server doesn't have to implement the full spec' (eg Tomcat) which may be causing your confusion?

      --
      Bad analogies are like waxing a monkey with a rainbow.
  14. Re:J2EE? by aled · · Score: 1

    Works in that you can build slashdot on it OR in the sense of building enterprise applications?

    --

    "I think this line is mostly filler"
  15. Java versus PHP? by Rollie+Hawk · · Score: 1

    What in the hell do these two have to do with each other?

    --
    Before any liberals are tempted to mod up one of my comments, a word of warning: I'm actually making fun of you.
    1. Re:Java versus PHP? by dave420 · · Score: 1

      In case you HAVE been on mars for the last 6 years, two programming languages.

    2. Re:Java versus PHP? by Rollie+Hawk · · Score: 1

      Thanks for stating the obvious. I just don't see where they can really be compared in their application.

      --
      Before any liberals are tempted to mod up one of my comments, a word of warning: I'm actually making fun of you.
    3. Re:Java versus PHP? by dave420 · · Score: 1

      Because they're frequently used for similar applications? Are you trying to be sarcastic here? :-P

  16. The War on Flame by Anonymous Coward · · Score: 0

    are we going to win this one too? Just like we have with the War on Terrorism, War on Drugs, etc.

  17. Slashdotted. by edooper · · Score: 2, Informative
  18. sorry, dont remember my login by Anonymous Coward · · Score: 1, Informative

    first: i'm not a coward... ;)
    I'm miojo (at) javafree.com.br

    second: Is this blog hosted at a LAMP suite? Because I'm not getting the site openned here in my browser... ;)

    where is the scalability ?

    BTW, i'm a Java/J2EE programmer... ;)

    1. Re:sorry, dont remember my login by Anonymous Coward · · Score: 0

      Is this blog hosted at a LAMP suite?

      No, it is hosted on one of the hundreds of widely used Java based, blog/forum/wiki software packages.

  19. RTFA by aled · · Score: 2, Funny

    "Of course, calling its platform an application server is something of a marketing ploy since, as Peter has explained, an application server is the last thing you need. What ActiveGrid is really providing is a highly tuned "text pump" to occupy the fabric/bus space in a transaction-intensive enterprise data center."

    --

    "I think this line is mostly filler"
  20. Translation? by Jacques+Chester · · Score: 2, Funny

    I tried every online translator I could, however the article still comes out as absolute gibberish.

    What with the concurrent text pump synergies, next languages, impedance mismatches and grid quantum antipolarity trilithium subspace continuums, I got a bit lost.

    Anyone understand what they're peddling?

    --

    Classical Liberalism: All your base are belong to you.

    1. Re:Translation? by aled · · Score: 1

      I understud the problem with trilithium subspace continuums after watching 213 episodes of star trek. The rest is a mistery to me but seems to be related to trilithium causing a subspace disruption in the computer core grid.

      --

      "I think this line is mostly filler"
    2. Re:Translation? by Jacques+Chester · · Score: 1, Funny

      I knew it! Bloody proprietary Enterprise-class designs!

      --

      Classical Liberalism: All your base are belong to you.

    3. Re:Translation? by aled · · Score: 1

      There's a theorical probability of solving the problem by shuting down energy levels and doing a level 3 system check on all computer modules. Or like the old 21st century enginers used to call it a 'reboot'.

      --

      "I think this line is mostly filler"
  21. LAMP may be fine for web-based applications... by altgrr · · Score: 5, Insightful

    ...but doesn't it seem a little silly to base computational applications on what is essentially a glorified webserver? Sure, use LAMP for your shopping cart, but enterprise applications are more than just shopping carts.

    "There is no impedance mismatch, everything talks SOAP/HTTP" - well, yes, that's great, but you shouldn't be talking SOAP/HTTP internally. There are faster means of communication, so use them.

    "Apparently what is needed is a language/environment that is loosely typed in order to encapsulate XML well and that can efficiently process text" - only on input and output. In intermediary stages, you should be using a much more efficient format. If you're doing something clever, it's going to involve much more than just plain old text.

    "J2EE and .NET applications were never designed with grids in mind" - well, I can't speak for .NET, but J2EE is designed for clustering and distribution. Have you seen EJBs? EJBs are designed for interaction across computers.

    RTFA and you'll see that LAMP is being pushed for "text-pumping". Why aren't they saying it's any good for anything else? Because it most likely isn't.

    --


    Like car accidents, most hardware problems are due to driver error.
    1. Re:LAMP may be fine for web-based applications... by CountBrass · · Score: 1
      EJBs are designed for interaction across computers.

      Funny, I thought EJBs were designed to strip Java of it's best bits: inheritance and threads and bloat the development process so that it was impossible to get anything done without using an expensive, vendor provided, development tool.

      --
      Bad analogies are like waxing a monkey with a rainbow.
    2. Re:LAMP may be fine for web-based applications... by master_p · · Score: 1

      A small clarification.

      EJBs are not for clustering. If you put an EJB in some application server, all other servers will need to talk to that specific server.

      EJBs are also not for distributed data management. The J2EE documentation says that EJBs should be used when the number of EJB objects is small. It is no good when one needs to access a database via a set of Java objects. In other words, one should not make EJBs out of database recordsets.

      That is why solutions like Hibernate have been developed.

    3. Re:LAMP may be fine for web-based applications... by altgrr · · Score: 1
      I thought EJBs were designed to strip Java of it's best bits: inheritance and threads and bloat the development process


      No, not at all. EJBs don't strip Java of threads; they make it easier to write them correctly. Now, I'll admit that, for a decent programmer, it sticks a few hurdles in your way.

      That said, it does make it easier in many respects: a thread is created when something new comes into your system - either by JMS or by a remote call. If you need to do something on a regular basis, use a scheduler for it.

      Now, I've had reason to need a thread outside of the means J2EE provides, and it is a pain. I'd sooner have the distributability, the nice architecture, and the ability to quickly write applications that can readily be scaled out of the box, than the ability to grab hold of a thread easily.
      --


      Like car accidents, most hardware problems are due to driver error.
    4. Re:LAMP may be fine for web-based applications... by altgrr · · Score: 1

      EJBs are not for clustering

      Yes they are. Session beans, entity beans and message-driven beans all support clustering. Deploy them on more than one server (JBoss does this, at least), and they'll work in clustered mode, with requests distributed between them using one of various strategies.

      EJBs are also not for distributed data management

      Remember that clustering and distribution are two different things. If you're accessing the same table from many different locations, you may get problems because you're going to have to use Commit Option B, which checks the data in the local entity cache is valid before it does a read.

      In other words, one should not make EJBs out of database recordsets

      Too flaming right you shouldn't! Making database recordsets out of EJBs is another matter entirely. Making EJBs out of database recordsets implies that someone else has put the data there first; if that's the case, what happens when they change their data format? It's part of good system design that you just wouldn't do something like that.

      --


      Like car accidents, most hardware problems are due to driver error.
    5. Re:LAMP may be fine for web-based applications... by CountBrass · · Score: 1
      No, not at all. EJBs don't strip Java of threads; they make it easier to write them correctly.

      Programmtic threading is specifically disallowed by the EJB spec: your EJB will not deploy if it contains any thread management: how is that not stripping threads out of Java?

      --
      Bad analogies are like waxing a monkey with a rainbow.
    6. Re:LAMP may be fine for web-based applications... by altgrr · · Score: 1

      Programmtic threading is specifically disallowed by the EJB spec: your EJB will not deploy if it contains any thread management: how is that not stripping threads out of Java?

      Your code triggers the creation of threads. One part of your application sticks a message on a JMS queue; a thread is fired up to handle it. A client logs in and uses a session bean; a thread is fired up to handle it.

      The threads are all there, you're just not allowed to touch them. Which is what J2EE is about: you write the business logic; the J2EE server manages it.

      Now, I'm not saying that's necessarily a good thing - certainly not if you're an experienced programmer and you want to have control over threads - but it does mean you can't get it wrong.

      --


      Like car accidents, most hardware problems are due to driver error.
  22. Scripting languages suck by Anonymous Coward · · Score: 2, Insightful
    Can any fan of the Perl, PHP, or Python explain why they are better than java or C# for LARGE applications? Strict type-checking is extremely useful, and I believe essential, for large applications. With strict type-checking and OOPS, the compiler does a lot of the work to ensure that the correct objects are passed to functions and that they are initialized, etc.

    But with any scripting language, you have to run the application to catch even trivial bugs like misspelled methods and incorrect argument types.

    I'm sure scripting languages have their place, but I've NEVER written a large script, without eventually wishing that I'd originally used a strict language. Scripts are great for fast turnaround, but only if you don't mind chasing trivial bugs that a compiler should have caught. I want a language that's tighter than a straightjacket.

    1. Re:Scripting languages suck by /ASCII · · Score: 1

      To each his own. Some people prefer dynamically typed langages, you know. Not just for developing websites either.

      --
      Try out fish, the friendly interactive shell.
    2. Re:Scripting languages suck by Anonymous Coward · · Score: 0

      >> Can any fan of the Perl, PHP, or Python explain why they are better than java or C# for LARGE applications?

      I suspect not. Many of the LAMP proponents grew up hacking shell scripts rather than doing real software engineering.

      If you can't see why strong typing isn't a good idea then stick to writing shopping carts and let the real developers write enterprise applications.

    3. Re:Scripting languages suck by Anonymous Coward · · Score: 0

      Yes, I've seen more banking, security trading, bioinformatics and other kinds of internal corporate "actual work" done in COBOL, RPG, Perl and SQL than in Java - although there may be more lines of Java, they weren't doing much and were more likely to be used on projects that DOA'd despite whatever dev time/money was put behind them.

      They (other languages) were better back in the day when people needed to get shit done, now we have this Java/OO perpetual motion machine - now projects are bigger because of Java and OO not because they are solving more complex or bigger problems or doing so more effectively.

      In the past, people were willing to develop and entertain using new languages (have any languages surpassed APL or SNOBOL in the features they innovated or have those features become irrelevant?) and systems, now corporations and "experts" have too much invested in Java/OO to let it go and move on to bigger and better things. Java was a mistake, it wasn't for "Enterprise" anything Oak was for fucking set-top boxes and wasn't as good as what else was there at the time. Kaleida (Script-X), etc.

      Even Java people are saying let's put a bullet in EJB 3.0 and move on. Gosling's gray goo of Java standards, frameworks, toolkits, libraries and api's are miring down efforts to leap to the next level. Unfortunately for us, MS is going to patent everything about SOA before people realize it was where we should have been 4 years ago. The middleware vendors are already shitting themselves just thinking about what is going to happen when MS rolls out Indigo and so they (BEA, IBM, etc) are pretending that they are on the SOA bandwagon already. STAK's fate comes to mind for BEA...

      I think erlang represents the best of SOA concepts without the thick chocolaty coating of corporate WS-* XML-based and therefore patentable "standards".

    4. Re:Scripting languages suck by musicmaker · · Score: 1

      Please do not confuse Perl and PHP with Python. The first two are scripting languages, the third is a programming language. Python was designed as a strongly dynamically typed language from the ground up with good OOP features. I have used Python for some serious distributed projects, and it is far far better than Java. You want RAD, Java dev time approaches C++ once you throw in J2EE. I've seen it first hand. Python is a very very powerfull language that is fast and effective.

      --
      Everyone is living in a personal delusion, just some are more delusional than others.
    5. Re:Scripting languages suck by namekuseijin · · Score: 1

      Can any fan of the Perl, PHP, or Python explain why they are better than java or C# for LARGE applications?

      Allow me...

      Strict type-checking is extremely useful, and I believe essential, for large applications. With strict type-checking and OOPS, the compiler does a lot of the work to ensure that the correct objects are passed to functions and that they are initialized, etc.

      You don't tell. Well, first of all, not only the compiler does a lot of work to ensure corret type checking: you have to do that yourself too! You can go completely bananas of so much type declarations for anything and everything you want to do. It's tons of variable declarations and then boxing and unboxing via typecasts.

      Ever realized you're doing a lot of low-level bookkeeping yourself so that the compiler can correctly work? One of the very selling points for dynamically/latent typed languages is exactly that you leave that sort of low-level stuff to the run-time and is able to be more productive by actually focusing on the system, rather than stupid technical details.

      Yeah, there's a performance penalty for leaving type checking to the runtime, but there's also a lot of productivity gains. So, it's up to you ( or your boss ): what is more important, developer time or runtime performance.

      Sadly, it's one of those things like the CPU vs Memory penalties.

      But with any scripting language, you have to run the application to catch even trivial bugs like misspelled methods and incorrect argument types.

      The testing phase is inevitable in the development cycle. Here i am at work, with my C# compiler from within VS.NET saying everything's ok. Running it says it's not. Oh well...

      Test, test, test.

      I'm sure scripting languages have their place, but I've NEVER written a large script, without eventually wishing that I'd originally used a strict language.

      You should never write a large script. That's just plain wrong. Leave large scripts to the likes of automated scripting-writing scripts like automake or autoconf.

      Large scripts, with global variables sprinkled all around is a thing from the distant past, from whence tools like Perl evolved. Today "scripting" languages are full-fledged general-purpose programming languages, supporting most modern software engineering paradigms, patterns and best practices . You should use all you (hopefully) learned about software enginnering, like modularization, OOP, AOP and anything in between and apply that to the (rapid!) development of high-level systems with such wonderful tools.

      I want a language that's tighter than a straightjacket.

      Surely, it seems creative, flexible languages like Python or Ruby won't ever please you with that way of thinking.

      --
      I don't feel like it...
    6. Re:Scripting languages suck by Anonymous Coward · · Score: 0

      Others have already beat me to the punch, but the main point is that being Dynamically Typed and Strongly Typed is mutually exclusive. Python is both.

    7. Re:Scripting languages suck by tiptone · · Score: 1

      couldn't have said it better myself. if i hadn't used up all my mod points this weekend you'd be getting some.

      --
      Please don't read my sig.
    8. Re:Scripting languages suck by namekuseijin · · Score: 1

      heh, there sure are a lot of Java folks roaming around here.

      How can one explain the parent post dissing dynamically typed languages being "Insightful" no matter how reasonable and objective replies about good reasons to use "scripting" languages are.

      They have python-envy. That's why they created Groovy, a java-alike with Java syntax but typeless, rather than giving Jython a run for its money.

      For someone used with just a hammer, everything begins to look like a nail...

      --
      I don't feel like it...
    9. Re:Scripting languages suck by nagora · · Score: 1
      the compiler does a lot of the work to ensure that the correct objects are passed to functions

      I've never seen such a concise explanation of why Java, C++, C# etc. are such failures as OO languages. You pass the function to the object, man! The other way round and you're just kidding yourself that you have objects.

      TWW

      --
      "Encyclopedia" is to "Wikipedia" what "Library" is to "Some people at a bus stop"
    10. Re:Scripting languages suck by Anonymous Coward · · Score: 0

      Oh please.

      Python is a half-baked language with a still incomplete object model and a lot og arbitrary design choices. It is the "Java" of open source. It is much nicer than Perl and PHP, but that's not saying much.

      Saying that it's a programming language and the others are not doesn't make sense. I consider them all programming languages.

      PS: If you want to see what Python will look like in another 5-10 years, look at Ruby. No, Ruby isn't the "best" either but further along. Probably the best of the agile languages. It dreams of being Smalltalk.

    11. Re:Scripting languages suck by Anonymous Coward · · Score: 1, Insightful

      Can any fan of the Perl, PHP, or Python explain why they are better than java or C# for LARGE applications?

      Sure, these dynamic programming languages don't get in the way of programmers who know what they are doing and practice test-driven development.

      That's the point you're missing.. unit tests. While you're trying to get your app to compile and using casts to get objects out of your iterators, I'm writing the test, writing the code, and I get more done in less time. And yes, I *do* run the application to find bugs. Via running the unit tests and other tests (integration tests). Don't pretend like *you* don't have to do that too.

      It's pretty easy: if you practice TDD with 100% test coverage, and your team is small, stable and smart, you can do better with dynamic languages like Ruby (the others are okay too).

      Otherwise stick to the Java and the C#. But don't be surprised if you have a competitor doing it the other way who beats you to market with a better product.

    12. Re:Scripting languages suck by Anonymous Coward · · Score: 0
      Hell, Java is a scripting language:
      • JIT compilation,
      • compiles to p-code,
      • has sucky performance (at least you got that right, but Java seems especially bad).

      The only difference between Java and a true scripting language is that Java is viral: once you install a single component in Java, you must replace your entire system with Java parts to make the damn thing work at all.

    13. Re:Scripting languages suck by NoOneInParticular · · Score: 1

      Wow! Now that's a perceptive comment. I'll have to think about this a bit more, but I think you're right.

  23. I don't mean to start a Flame War... by Galapas · · Score: 1, Funny

    but Emacs kicks the crap out of vi...

    -G

    1. Re:I don't mean to start a Flame War... by Anonymous Coward · · Score: 0

      You know, if you posted Vi kicks the crap out of Emacs, you would of been moded up. VI users are simple minded fools that have to mode away critisem. Emacs users just know they rock.

  24. Sigh... by LarsWestergren · · Score: 4, Insightful

    Ok, I had already spent a modpoint in this topic, but I realized it is better to speak up to defend your position than to stand on the sides and give out points to "your" team.

    Article is Slashdotted, so I can't comment on the content, but just to reply to some of the posts that will defenitely come up, because they ALWAYS come up when Java is discussed-

    EJB are bloated etc:
    J2EE is does NOT equal Enterprise Javabeans. J2EE contains classes for lots of things. XML processing, messages, web servers, database connectivity, etc. You don't have to use EJB. Lots of Java developers don't like EJB because they are too cumbersome, and there are plenty of alternatives. Check out for instance O'Reillys recent book Better, Faster, Lighter Java.

    Java is slow:
    Startup time for the JVM is still slow yes. This rarely matters for a web/application server. When it comes to running, it is plenty enough.

    It isn't open source:
    So what. It's close enough.

    Ok, that over with, was this darn topic necessary? I like both LAMP and Java. They have their uses, why did the poster and the article have to turn this into a confrontation?

    --

    Being bitter is drinking poison and hoping someone else will die

    1. Re:Sigh... by mwvdlee · · Score: 1

      About the "Open Source" thing; Is the C/C++ standard really open source? Yes, there are many open source inplementations and there are many incompatible implementations and there are forks. Don't get me wrong, C/C++ is a pretty damn good language, but it's not as portable as it was meant to be.

      IMHO I'm pretty happy there is only one Java standard controlled by Sun. If you don't agree then just think of what MS's J++ could have done to the Java world if Sun didn't have this control.

      --
      Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
    2. Re:Sigh... by m50d · · Score: 1
      EJB are bloated etc:
      J2EE is does NOT equal Enterprise Javabeans. J2EE contains classes for lots of things. XML processing, messages, web servers, database connectivity, etc. You don't have to use EJB. Lots of Java developers don't like EJB because they are too cumbersome, and there are plenty of alternatives. Check out for instance O'Reillys recent book Better, Faster, Lighter Java.


      However, java itself is bloated. The freaking runtime is 20mb. If you want to be able to develop in it, don't expect much change out of 100mb. And that's without documentation, and compressed. Installed compiler and documentation, you're pushing 200mb. I can get a whole operating system, with full office suite, video playback, email, usenet, instant messaging, the works, in less than that, here.


      Java is slow:
      Startup time for the JVM is still slow yes. This rarely matters for a web/application server. When it comes to running, it is plenty enough.

      Most of the running stuff is slow too, especially with gui. You will say this is because of swing. This is true. However, swing is touted as a *main advantage of java*, because it means the uis are consistent. So either java is hopelessly slow for anything that needs a gui, or it's just as inconsistent as c or anything else wrt guis and all those megabytes of runtime and compiler are not helpful libraries but just useless bloat. Take your pick.


      It isn't open source:
      So what. It's close enough.

      Not for all of us. Some people are devoted debian users. Even for those of us who aren't, I personally think it's unreasonable to expect me to use a language that I am not allowed to distribute the *runtime* for, yet alone the compiler. Yes, I'm allowed to distribute a jre with a java application, but this is a special exception in the license which, to my eyes, means the license is very wrong.

      --
      I am trolling
    3. Re:Sigh... by labratuk · · Score: 1

      It isn't open source: So what. It's close enough.

      Worst argument ever.

      --
      Malike Bamiyi wanted my assistance.
  25. J2EE != EJB by Anonymous Coward · · Score: 0

    Do you need all those EJBs? What for? In some environments it makes sense to use EJBs but in most Servlet Container + POJOs is a better and simpler way to go, IMO.

    Consider replacing your EJBs with POJOs. Should not be a difficult task.

    1. Re:J2EE != EJB by unoengborg · · Score: 1

      It all depends on what you are doing. The main advantage of EJB as I see it is declarative security on a per method basis and transaction management that is not all that easy to replace and maintain.

      If you don't need all that, and that is often true if you are working with web stuff, you should use servlets and POJOs.

      However, J2EE is often used for ERP purposes and here the demands are quite different, at least for the backends. You have to remember that in these type of system servlet is considered to be user interface components and as such your statment applies as the heavy lifting is all done in the background with EJBs

      --
      God is REAL! Unless explicitly declared INTEGER
    2. Re:J2EE != EJB by Anonymous Coward · · Score: 0

      "The main advantage of EJB as I see it is declarative security on a per method basis and transaction management that is not all that easy to replace and maintain."

      These two features sound good in theory but are useless in practice, in my experience. Declarative security quite often is not flexible enough for a real application and deployment time transaction management changes is a very good way to screw yourself up.

      Servlet container (e.g. Apache Tomcat is a good one) + POJOs is all you need, in 90% of the cases.

    3. Re:J2EE != EJB by GuyWithLag · · Score: 2, Insightful

      The main advantage of EJB as I see it is declarative security on a per method basis ...

      Yes, and when your security needs are more complex than the simplistic EJB model, you have to either use no declarative security (and write your own) or to apply ugly hacks around the deficiencies...

  26. More marketing hype by standards · · Score: 2

    Check out this blog entry in Loosely Coupled about ActiveGrid's new open source Grid Application Server based on the LAMP (Linux, Apache, MySQL, PHP/Python/Perl) stack.

    I love marketing hype like this.

    One sure sign of marketing hype is to quote a venture capitalist on technology. That's why we all don't own a Segway, despite its claimed "future".

    Second of all, a technical paper shouldn't be based around a press release that quotes the same venture capitalist. Not too many technologists will take that seriously.

    Next, don't bring the NetDynamics CTO near me. Maybe he's a good guy and all, but in my experience, NetDynamics was one fucked up product. And this was before AND after Sun gobbled them up. It was like the Marketeers and Experimentationalists got into it, forgot that it was supposed to be an enterprise product, and screwed it to hell.

    Finally, a combination of Perl, PHP, and Python for a complicated enterprise app isn't going to win any awards - damn, how many specialists does one need?

    Finally, I'm not going to be running my payroll on a core of MySQL, PHP, Python, and Perl. And which version of Apache? 1.3 or 2.0? Perl 6? Why isn't ksh in there?

    I love people that seamingly have ZERO large, enterprise-class application experience telling those who do how to do it.

    1. Re:More marketing hype by odyrithm · · Score: 1

      Finally, I'm not going to be running my payroll on a core of MySQL, PHP, Python, and Perl.

      Why do I smell a troll?

      --
      moo
    2. Re:More marketing hype by Anonymous Coward · · Score: 0

      I love people that seamingly have ZERO large, enterprise-class application experience telling those who do how to do it.
      Ehem, that's "seemingly".

      Secondly, what the heck is an "enterprise-class application"? Somebody answer me in plain English, please... no marketingspeak mumbo jumbo.

    3. Re:More marketing hype by standards · · Score: 1

      An enterprise-class application is:

      A software program, or collection of software programs, that is is (1) specific to the business of the organization, and (2) is critical to the operation of a business or organiztion, and (3) which touches many aspects of the organization.

      For example, an insurance company may have an application where it tracks all of its policies. Without that system up and running, the company may not be able to perform ANY business functions (like adjustment, answering customer questions, filing a claim, etc).

      Another example: an aerospace company may have a system where it houses all of it's technical drawings. Engineering and manufacturaing may not be able to do their job if the system is down. (can't make a part without a drawing, can't look up a tolerance, can't see how part A and part B are related).

      Another example: a hospital may keep all of it's patient's medical records on an on-line system. That hosital may not be able to operate without that system (which patient is at Radiology at 10 AM, and what needs to be done?)

    4. Re:More marketing hype by standards · · Score: 1

      Why do I smell a troll?

      Because you want to smell troll.

      Hey, I use Perl and MySQL under Apache 1.3 every day. I'm not being troll - the simple fact is that Perl and MySQL are great for some things, and other systems are great at some other things.

      Can you run payroll for a 20,000 person operation using Python, PHP, Perl and MySQL? Yes. Do people use Perl, PHP, Python, and MySQL at the core of a payroll system in a 20,000 person organization? Not that I know of (give me examples, please!).

      Is Perl, PHP, Python, and MySQL the BEST solution for the core of a payroll system? I don't know. Am I going to bet my career on it? No.

    5. Re:More marketing hype by standards · · Score: 1

      Correction for the grammar weenies: I mistakenly used the contraction "it's" in place of the possesive "its".

    6. Re:More marketing hype by odyrithm · · Score: 0, Troll

      Perl, PHP and Python are separate languages you filthy animal! jesus christ your irritating.

      --
      moo
    7. Re:More marketing hype by Anonymous Coward · · Score: 0

      Finally, I'm not going to be running my payroll on a core of MySQL, PHP, Python, and Perl.

      Neither would the last place I worked, they used a team of 3 Mainframe/DB2 guys to write the real work part, one perl programmer to write the data movement/ETL part and then a team of 12 java "developers" to write a lame, half-baked same-crap-I've-seen-from-Java-"Enterprise-stuff-a- hundred-times-before web based reporting and "dashboard" frontend (that never seems to work right) for it.

    8. Re:More marketing hype by easter1916 · · Score: 1

      Finish your sentences!!! His irritating WHAT? Or did you mean "you're irritating"?

    9. Re:More marketing hype by Anonymous Coward · · Score: 0

      No, but I use postgresql and ruby, and of course its not on linux either. The only part of LAMP we have is apache. You can most certainly build enterprise apps using postgresql and a scripting language, but I would pass on mysql.

  27. Apples and Oranges by daBass · · Score: 1

    While I like Java, I have never been the greatest fan of J2EE for web applications, it's just over engineered.

    But J2EE does more than just web apps. It's strength is being a business application server with Swing GUI front-end, the only competition in that field is .NET, and we know what platforms, or rather platform, that is supported on. The added bonus in that case is that it is dead easy to create a web application accessing the same systems. Try that with LAMP!

    A fairer comparison would be LAMP and JSP/JDBC pure web apps. In which case in terms of number of instalations LAMP will always win because JSP doesn't play well in the $6.95/month massive multihosting game. But for business users, this is a moot point.

  28. Plone. Zope. Python. by hummassa · · Score: 1

    There you have it. Enjoy.

    --
    It's better to be the foot on the boot than the face on the pavement. ~~ tkx Kadin2048
    1. Re:Plone. Zope. Python. by jswhiting · · Score: 1

      you missed the well documented requirement. try doing anything with Zope that doesn't only use the prebuilt components, and the magic zope genie just evaporated and went back into his bottle. when zope comes out with some actual explanations and documentation of how to do anything actually important with it, I'll consider it again, until then I might as well just DIY with mod_python and some template like psp, cheetah or otherwise.

  29. Use Lisp by RAMMS+EIN · · Score: 4, Interesting

    Use Lisp. Seriously. It's one of the oldest languages out there, but it has features that other languages can only dream of (in fact, when other languages improve, they almost invariably get closer to Lisp).

    The language is well-documented. Implementations range from simple interpreters to complex, optimizing compilers (they are on par with C, and sometimes outperform it). It has packages for many purposes, enough to implement Yahoo! Store at any rate.

    People complain about the parentheses (some say LISP is short for Lots of Irritating Superfluous Parentheses). That's a valid point. In C syntax, at least there's variation. Besides parentheses there are curly braces, straight brackets, commas, semicolons, etc. Seriously, the parentheses make for a very simple and consistent syntax.

    Lisp allows you to program in whichever paradigm suits you best (pick the right one for the task at hand). Functional, object oriented, imperative, it's all there. It's macro system is so powerful it lets you basically generate programs, rather than writing them. Add garbage collection, higher order functions, dynamic typing (although static typing can be used for performance), arbitrary precision arithmetic (integers are not limited to 32 bits), multiple inheritance, and tail call optimization (recursion in constant space), and you have a language that blows all others out of the water.

    Why does nobody use it? Fear, uncertainty and doubt. People think it died with AI. People think its old, so it won't be up to modern tasks. People can't get over the parentheses. The boss won't approve it. Nobody else uses it, so it's hard to get support. Any number of reasons.

    --
    Please correct me if I got my facts wrong.
    1. Re:Use Lisp by Anonymous Coward · · Score: 5, Insightful

      Why does nobody use it? Fear, uncertainty and doubt. [...] People can't get over the parentheses. The boss won't approve it. Nobody else uses it, so it's hard to get support.

      You know, I think those were all pretty valid reasons. ;-)

    2. Re:Use Lisp by PaschalNee · · Score: 1

      Why does nobody use it?
      ITASoftware the people behind Orbitz (the 2nd/3rd largest online travel agency depending on who you ask) and a host of Airline web sites (Northwest at a minimum) use lisp. But apart from them I am aware of no big players.

    3. Re:Use Lisp by namekuseijin · · Score: 3, Interesting

      I agree.

      Don't know why the hell people modded this funny. It is very serious. But then again, most of the code-monkeys enterprises like to hire for quick hacks for low salaries wouldn't ever be able to use nor understand Lisp.

      Of course, VB lusers can laugh at Lisp, since they don't understand it, but some very large companies use Lisp as the base for their systems, like Intercontinental Airlines (using C++ like assembly for critical sections) and Yahoo.

      --
      I don't feel like it...
    4. Re:Use Lisp by hey! · · Score: 3, Insightful

      Lisp needs an application server like Zope. Zope has driven many to learn Python so they can create Zope products.

      --
      Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
    5. Re:Use Lisp by GoofyBoy · · Score: 1

      > some very large companies use Lisp as the base for their systems,

      Some very large companies use VB too.

      --
      The surprise isn't how often we make bad choices; the surprise is how seldom they defeat us.
    6. Re:Use Lisp by turgid · · Score: 1, Flamebait
      Why does nobody use it?

      emacs?

      /me ducks.

    7. Re:Use Lisp by namekuseijin · · Score: 1

      Some very large companies use VB too.

      But then again, most of the code-monkeys enterprises like to hire for quick hacks for low salaries

      Why i'm not surprised?

      --
      I don't feel like it...
    8. Re:Use Lisp by TheLink · · Score: 1

      "Why does nobody use it?"

      I don't know about the others, but I don't use it coz it's too much work/too hard.

      I actually tried to learn LISP (tried CLISP, cmucl). But I found it's just about as hard as java in getting things done - so many more things to build from scratch (I use CPAN, and perl - usually in that order ;) ). So I figured I might as well learn something else - I'm obviously not good enough a programmer for LISP.

      I'm far from the best, brightest and most hardworking programmer in the world. So I resort to prefab stuff made by better programmers. e.g. CPAN.

      I had problems like finding the equivalent of a popular standard JDBC/DBI for Lisp with "drivers" for the popular DBs.

      Even far newer languages like Python and Ruby have tons of common useful libraries freely available for people to use, after such a short space of time too.

      With PHP you know you should use PEAR DB. With Java - it's JDBC. With Perl it's DBI. With Lisp?

      If LISP is so powerful and LISP programmers want LISP to be more popular then why don't one or a few LISP wizards whip up 10% of CPAN in a week and make it free?

      Why should every LISP programmer have to rewrite commonly used stuff from scratch? That's a big source of bugs, and a drain to already meagre programmer resources.

      If LISP were that powerful, LISP programmers should have "spare cycles" to write tons of good and free stuff right?

      Perl programmers seem to have plenty of "spare cycles" to write stuff like ACME::Bleach, Mason.

      Same for Python programmers - stuff like spambayes, zope etc, just keep pouring out.

      Or maybe LISP isn't so powerful and easy after all? In which case, thanks but no thanks.

      --
    9. Re:Use Lisp by heathm · · Score: 2, Informative

      Not only has Zope driven people to Python, it has also driven many of us to contemplate suicide... but that is beside the point.

    10. Re:Use Lisp by CatOne · · Score: 1

      LOL. Where are the Lisp bindings for MySQL?

    11. Re:Use Lisp by Javamonkey · · Score: 1

      > LOL. Where are the Lisp bindings for MySQL?

      http://clsql.b9.com

      -Peter

    12. Re:Use Lisp by Anonymous Coward · · Score: 0

      I agree.

      Java is the new COBOL the language for avearge programmers, LISP has always been for the extraordinary programmer. Just keep it to yourself, because lisp is my secret weapon, and the fewer that know about it the better.

    13. Re:Use Lisp by harikiri · · Score: 1

      When I get into my evil mindset (usually after a long and frustrating day), I'm tempted to learn (I have a book on Lisp around here somewhere...) one of those rarer languages (ie, lisp, Eiffel, o'caml) , and replace certain mission critical scripts with ones written in them.

      --
      Man watching 6 MSCE's around a sun box, looks alot like the opening scene's of 2001:space odyssey...
    14. Re:Use Lisp by DFossmeister · · Score: 1

      Gee, most of that sounds suspiciously like both Perl and PHP. And my boss approves of both of those, and Yahoo has standardized on PHP for new development now.

      --
      No Not Again! Its whats for dinner.
    15. Re:Use Lisp by Rhinobird · · Score: 1

      Lisp needs an application server like Zope

      Isn't there an EMACS plugin for this?

      --
      If Mr. Edison had thought smarter he wouldn't sweat as much. --Nikola Tesla
  30. LAMP by slittle · · Score: 5, Insightful

    Substitute Postgres or whatever to taste, but that just fucks up a perfectly good acronym, so we'll pretend MySQL is a placeholder for $REAL_DATABASE of your choice.

    --
    Opportunity knocks. Karma hunts you down.
    1. Re:LAMP by dmorin · · Score: 1
      Substitute Postgres or whatever to taste, but that just fucks up a perfectly good acronym, so we'll pretend MySQL is a placeholder for $REAL_DATABASE of your choice.

      Correct me if I'm wrong, but doesn't PHP go so far as to hardcode some MySql stuff right into the API? We're a Java shop, and one of the non-Java guys whipped up a PHP app pointing to his own MySQL database. Since we used Postgres, I asked him to change it. Turned into a big nightmare as he had specifically used some mysql_ something or other calls that PHP had, and to get postgres support he would have to compile it in separately??

    2. Re:LAMP by v01d · · Score: 3, Informative

      You're right: PHP doesn't natively support database abstraction. Every database you want to support has it's own set of functions and must be specifically compiled in. There is a PEAR class that provides an abstraction layer though...

    3. Re:LAMP by Anonymous Coward · · Score: 0

      I am not a Php developer so take what I say with a grain of salt. Perhaps a real one could comment after reading this?

      I have looked at it and yes there is also a postgresql api as well as an oracle and ms-sql verision.

      However they are different and do require recoding. Php supports odbc on Windows and Unixodbc for Linux. Your developers should use the ODBC api since it will make migrating to other databases much easier. However I do not know how powerfull it is because I have not written much code with it.

      I do not like to use hardcoded proprietary api's in my apps at all for obvious reasons. Its poor programing and it makes your apps unflexible and unupgradable.

      I would recommend Java for the real stuff at work. Its much more secure and enterprise ready. But use ODBC or some api that any database could use and it wont be a nightmare.

    4. Re:LAMP by autechre · · Score: 1

      If you've compiled PHP yourself, it has many modules for supporting various things, including different databases. If you've only compiled in MySQL support, it won't support PostgreSQL unless you've also compiled that module.

      If you're fortunate enough to be using, say, Debian, you can just apt-get install the appropriate module, watch dpkg update your configuration, and restart Apache :)

      That said, the code will likely still require some changes. I've used the PHP MySQL and PostgreSQL functions quite a bit, and the way they work can definitely produce differences in the code. If you're moving from PostgreSQL to MySQL (why!?), you may also have to deal with the limitations of MySQL's query syntax, which may require more code on the PHP side, etc.

      --
      WMBC freeform/independent online radio.
    5. Re:LAMP by TheLink · · Score: 1

      He should use PEAR DB or whatever you call the PHP equivalent of JDBC.

      It's a sign that the PHP devs didn't learn from other ppls mistakes. A bad sign (amongst many others indicating similar braindeadness - global track vars, addslashes etc).

      They should have come out with something like PEAR DB from the start.

      --
    6. Re:LAMP by runderwo · · Score: 1
      He's referring to the lack of a database abstraction layer like DBI for Perl, the point of which would be to prevent having to recode anything to switch to another RDBMS. ODBC is a bad suggestion because its performance sucks and there are many advanced features which it is too generic to expose.

      A better suggestion would be to use the community written database abstraction classes for PHP. (I wrote one of these myself, disgusted with the PHP database APIs.)

    7. Re:LAMP by lphuberdeau · · Score: 1

      Actually, there is a native extension that does database abstraction. There is also an other one coming up for PHP 5 (probably 5.1) called PDO.

      --
      Qui ne va pas à la chasse n'a pas de gibier
      PHP Queb
  31. he said quality servers (nt) by muyuubyou · · Score: 1

    (nt stands for no-text)

    1. Re:he said quality servers (nt) by puddpunk · · Score: 3, Informative

      Tomcat is the reference implementation for Sun's Servlet specifications (the last 3 versions running).

      Tomcat is an enterprise level, quality implementation of the servlet specification. We use it at work backending to a postgresql database and the traffic loads (and system loads of complex financial analysis) are high but Tomcat has been able to handle anything we through at it.

      So with a bit of clue learning to write xml config files you have a fast, efficient, standard-adhesive and supported servlet container for a price that can't be beat.

      FACT: Tomcat is a quality server :P

    2. Re:he said quality servers (nt) by rhendershot · · Score: 1

      http://wwws.sun.com/software/products/appsrvr_pe/f aqs.html#2

      "Java System Application Server Platform Edition 8 is free to use for development, deployment, and redistribution"

    3. Re:he said quality servers (nt) by muyuubyou · · Score: 1

      That depends. It's a quality server compared to other tech, but considering how easily it's outperformed by the competition, you have to call it substandard. That's also a fact.

    4. Re:he said quality servers (nt) by Anonymous Coward · · Score: 0

      It was a fact. The Tomcat5 series has matched and sometimes surpassed the 'fast' servlet containers like Resin in benchmarks, and is no longer the pig that tomcat 4 was (I believe there was a major rewrite from 4 to 5).

  32. Re:I just got myself some new asbestos underwear by Anonymous Coward · · Score: 0

    I just got myself some new asbestos underwear. Of course LAMP is better suited for next-generation applications than Java.

    And your karma whoring panties I see.

  33. Re:I just got myself some new asbestos underwear by iBod · · Score: 4, Insightful
    Of course LAMP is better suited for next-generation applications than Java.

    Why "of course"?

    Am I alone in wondering exactly what a "next-generation application" is anyway?

    What qualities or requirements define a "next-generation application", other than it not having been developed yet?

    Anyhow, it was my take on the article that the use of 'P' languages was incidental, it was the grid concept and the horizontal scaling. The 'P' languages just happen to be part of a readily available set of tools for implementing this idea.

  34. Flamewar by pigeon · · Score: 4, Funny

    "Not to start a flamewar, but you java developpers are a foul smelling, foul tasting bunch!"

    1. Re:Flamewar by Tim+C · · Score: 1

      So we're less likely to get eaten? Suits me!

    2. Re:Flamewar by PetoskeyGuy · · Score: 1

      "Not to start a flamewar, but you java developpers are a foul smelling, foul tasting bunch!"

      Yes, but I hear if you lick there secretions on their back you can get an amazing buzz going. Anyone out there actually done this?

    3. Re:Flamewar by Anonymous Coward · · Score: 0

      I agree. .NET and C# are the ticket. Every java site I go to seems like it is very slow and always having problems (ie, errors all over the place) and pages always seem to deadlock.

  35. Forced into and OO "paradigm"? by TheConfusedOne · · Score: 3, Insightful

    Ummm, last time I saw that I called it development.

    The reason for using an OO language is to get you to work with objects and encapsulation. There's a really good reason to do any large enterprise level application using objects. That is that the app is being designed to last longer than one year. That means that during it's life back-end systems are going to change, customer requirements are going to change, and new requirements are going to be introduced.

    If you haven't properly separated out all of the portions of your code then when they come back and say "can you give us these two functions running on PDA's?" you're gonna be SOL.

    (I spent a year building a system and they promised to transition one of the back-end systems to a whole new platform by the end of the job. They never succeeded but we developed against the old system and the new so it didn't slow us down one bit. THAT'S why you take the time to do OO work.)

    --
    --- I wish I could hear the soundtrack to my life. That way I'd know when to duck.
    1. Re:Forced into and OO "paradigm"? by RAMMS+EIN · · Score: 1

      It's not that OO is bad. Encapsulation is good. Separating interface from implementation is good. What's bad is being forced into it. OO is not the best fit for every task. In Lisp, about 20% of code tends to be OO. In Java, you have no choice; everything has to be in an object, and every object is an instance of a class.

      If you want something not object oriented in Java, you need to first make a class, then escape from the class by declaring a static method. All that is syntactic salt that just gets in the way of getting work done.

      --
      Please correct me if I got my facts wrong.
    2. Re:Forced into and OO "paradigm"? by Anonymous Coward · · Score: 0

      We use a OO core for logic (C++) and hook procedural content handlers (C) from there. This is the only way we could achieve the functionality and performance tradeoffs we were looking for. Writing a new handler is trivial, using OOP would make the overall application more difficult to maintain; it's not always the answer.

      When all you have is a hammer...

    3. Re:Forced into and OO "paradigm"? by jellomizer · · Score: 1

      There's a really good reason to do any large enterprise level application using objects.

      True, but what most Enterprises want are small light applications. You assume that every application will be ported to a PDA or to some other device. But with these things being Web Based It is just as easy to keep it on the main server and access it thew the web which many PDA, Cellphones have access to. PHP, Perl and especially Python have a good OO base to them and they can be written with OO and in often less time then for Java or C. Saving you extra Boring Programming Time, saving your customer money in development time. Java is nice for the truly Enterprise level application. But most customers want Quick To produce and simple to maintain. Most of them are not looking for a huge library set which they can use over and over again. They want a small program to do one thing and do it well.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    4. Re:Forced into and OO "paradigm"? by m50d · · Score: 1

      OO is appropriate for many cases, but nowhere near all of them. Anyone who says otherwise is a zealot. Take a look at the java hello world some time. It is EIGHT LINES. You have to crate a new class and reimpliment the main method just to be able to print text. Compare that to python, where a hello world is simply "print "Hello, World!\n"". That's why I don't like java.

      --
      I am trolling
    5. Re:Forced into and OO "paradigm"? by Shawarma · · Score: 1

      It REALLY pisses me off every time someone says that the only way you can have modularized code is in the OO paradigm. Modularization and OO have NOTHING to do with each other. Putting stuff into modules instead of a huge monolith is _good_ _coding_ _practice_. And it's good coding practice no matter which programming paradigm you're using.

      I doubt that very many would argue that monolithic spaghetti code is a good thing, because it very seldomly is.

      The OO zealots have invented a new word for modularization ("encapsulation") and then they believe they've invented it and now own it. There's nothing new about it and there's nothing OO about it.

      Go read a book or something. Get wiser. Lose the OO hype.

      --
      Parse error: parse error, unexpected T_ELSEIF in /var/www/slashdot.org/comments.php
    6. Re:Forced into and OO "paradigm"? by SoTuA · · Score: 1
      OO is appropriate for many cases, but nowhere near all of them.

      Of course. There is no silver bullet in Software Engineering.

      Take a look at the java hello world some time. It is EIGHT LINES. You have to crate a new class and reimpliment the main method just to be able to print text. Compare that to python, where a hello world is simply "print "Hello, World!\n"". That's why I don't like java.

      You don't like a language because you have to write eight lines for hello world? Hmmm, sounds like a serious metric to me!

      Me, I'd never choose Java for HelloWorld. "echo Hello World" will do just fine, or "perl -e 'print "Hello World\n";'. The thing is, I don't get paid for writing software that writes Hello World. I get paid for writing software that does useful things. And for doing useful things, Java is damn good.

    7. Re:Forced into and OO "paradigm"? by Doctor+Faustus · · Score: 1

      In Java, you have no choice; everything has to be in an object, and every object is an instance of a class.

      Well, not exactly. You just have to scatter "static" everywhere. If they were serious about it, your startup code would be in the constructor of a class inherited from "Application".

      Personally, unless I'm working on something really big, I like to use a handful of objects where they happen to be convenient, in code that's otherwise procedural. In particular, I want the top-level control flow to be procedural. Java will allow that, but it makes it kind-of ugly.

    8. Re:Forced into and OO "paradigm"? by m50d · · Score: 1
      You don't like a language because you have to write eight lines for hello world? Hmmm, sounds like a serious metric to me!

      Well, it's not the best measure, but it's an indication of how useless the language is for doing anything other than OO. A language with support for OO is good, but a language which only supports OO is not so good. Historically languages designed around a specific paradigm (Haskell and Lisp for example) have usually been pretty specialised and used only within a small area, not for general purpose programming. Until it has better support for non-oo programming, java should be the same, a niche language for certain types of programs. It's used far more than it should be, probably because of the "name appeal". I would only use java for a project where I knew almost everything would be OO, and I can't imagine a big project where that is the case.

      --
      I am trolling
  36. Let's settle this once and for all... by lauterm · · Score: 1

    Why don't we have the good guys here at /. find some enterprising J2EE coders to redo /. as a J2EE application. If it takes more servers to run the J2EE app then LAMP wins. If it takes less servers to run the new /. then J2EE wins. End of discussion.

    1. Re:Let's settle this once and for all... by LarsWestergren · · Score: 1

      Intriguing thought, but not that simple. There are other things than number of servers needed that could come into consideration for the "best" solution. For instance:

      -How long did it take to develop (assuming you could somehow find programmers with equal level of competence)?

      -Is it bugfree? Does it render HTML correctly? (Current Slashdot is defenitely NOT, but the Java programmers would have an advantage as they get a clean start.)

      -How easy is it to extend the functionality?

      -How easy is it to change server platform? Client? Database?

      --

      Being bitter is drinking poison and hoping someone else will die

    2. Re:Let's settle this once and for all... by Anonymous Coward · · Score: 0

      Well, the folks at jboss sorta did that when they took nuke and ported it to java/j2ee. Unfortunately the gained performance was more due to general cleanup of bad design than anything else ... but /. isn't like that is it ? :-)

  37. Re:I just got myself some new asbestos underwear by lottameez · · Score: 1

    There are all sorts of "flawed" technologies that win in the marketplace over aesthetically superior rivals.

    The question would be:

    Is the PHP solution such a sufficient improvement that IT shops world wide will throw away millions of hours of J2EE training, development, and maintenance in order to satisfy the purists?

    I seriously doubt it. How many more ways do you need to solve the same problem?

    --
    Yeah? Well I think you're overrated too.
  38. Laughing all the way! by tod_miller · · Score: 4, Insightful

    I didn't even know there was a PHP and Java flamewar going on! Where do I enlist?

    No seriously, it is like comparing apples and oranges. PHP and the wonderous LAMP stack (I have just heard about it, so that is the first stumbling block for its adoption! many companies like to be fast followers) might be able to do what Java does if you look at output, it might even be quick, but that has nothing to do with the costs and development and staffing that real people with real money care about.

    Java has a huge demand in industry that is being met with huge interest in terms of capable candidates which is proven by the number of successful and *bearing in mind this isn't a flamewar!* well written open source project out there.

    The level of Java competency in the industry is growing enormously as a result, which is a good thing. PHP is also good, and I like PHP, lets not get things mixed up here.

    [snip = list of reasons why people choose java, which was boring even me]

    Also J2EE is *the* platform for applications running for thousands of users, on machines with 90+ GB of ram, and 24 processors just to handle the data requirements.

    Oracle love J2EE. Oracle is a fairly decent enterprise (not just performance, but support and board level confidence) db to say the least.

    Now, LAMP might be lovely, but why even pitch it against anything, dear LAMP community, just be, don't try and compare it against anything.

    FUD et al.

    PS: erm, nerr nerr? u sux0r? pwned? I am loosing my touch at this internet name calling gaff, time to retire.

    --
    #hostfile 0.0.0.0 primidi.com 0.0.0.0 www.primidi.com 0.0.0.0 radio.weblogs.com
  39. Ruby on Rails, and Trails by martinde · · Score: 5, Interesting

    This month's meeting at my local Java user's group there was an impressive demo on Ruby on Rails. The presenter built a blogging application live in front of the group, literally in 10 minutes or so. Prior to this demo I had pretty much written Ruby off "just another alternative to perl or python" but I have to say that Rails looks really impressive, enough so that I'm taking a closer look at Ruby.

    One of the guys in our user's group, Chris Nelson, is building a similar framework for Java - called Trails. He also built a blogging application live during the meeting. It took him a bit longer - perhaps 15-20 minutes. It was impressive as well, although I will say that for Trails you need to know a fair amount about Hibernate and Tapestry. Realize that he's been working on this only for a few months and suddenly you see that this work is very impressive too.

    Anyone interested in developing web apps might want to check these projects out - very impressive stuff!

    1. Re:Ruby on Rails, and Trails by jshriverWVU · · Score: 1
      Sounds interesting, but even this represents one reason I'm leaning away from the CS field.

      Everything is supposed to be easier now adays, but it just seems like overkill to me. You can't just sit down with a C compiler and pump out a program. You have to learn this app server, then this language (say Java) for use in the server, then you have to learn a myriad of frameworks, then to "make it easier" there's another layer.. guessing something like Rails/Trails/Hibernate/Tapesty/fill-in-the-blank.

      Am I alone in thinking that all of this just makes it even harder as a programmer? Seems we no longer have time to learn good coding practices or better algorithm designs. To be marketable anymore you have to dedicate all your time learning the latest and greatest language/app server/framework/whatever. Then it ends up being outdated in 6 months anyway.

      Honestly not meant to be a flame, I'm just confused and frustrated.

    2. Re:Ruby on Rails, and Trails by jshriverWVU · · Score: 1
      On a more friendly note :)...
      On the Rub on Rails website I did see an OS X video walkthrough on how to do the blog. It was pretty nice, and quick. Guess once you learn all of the pieces, it can be quick.

    3. Re:Ruby on Rails, and Trails by martinde · · Score: 1

      [snip]

      > Everything is supposed to be easier now adays, but it just seems like overkill to me. You can't just sit down with a C compiler and pump out a program.

      Sure you can. But if you want to develop a web application using only a C compiler, you're in for big learning curve and you'll be writing a whole bunch of code! You'll have to write your own webserver and DB for starters. (Well, I guess if you add ftp to your toolbox you can get apache and mysql, but something tells me you'll need more than that to build those systems!)

      Your comment makes me think of all of the people who compain about "code bloat nowadays", and arguments like them. I started programming on a 4k Vic 20, and yes I could do a whole lot of stuff in 4k. (I still program on PIC processors from time to time, and you can do a lot in those in 128 bytes!)

      On the other hand, people's expectations of what software is supposed to do has changed dramatically. They want it to be easy to use, pretty, GUIed, webified, internationalized, etc. "Back in the day" no software could do all of that!

      > Am I alone in thinking that all of this just makes it even harder as a programmer?

      If you really want to answer that question, try the experiment. A blog is a good toy application, try building a blog in various frameworks and technologies and see what works for you and what doesn't.

      As far as not having time to learn good coding practices or algorithms, I don't agree with you there. I know a fair number of excellent developers, and they are always learning and applying best practices. It's what separates the good developers from the others if you ask me, not how many frameworks they know. Another important attribute is knowing how to select the right tool for the right job... There are a lot of choices out there so you really have to do the research and talk to other developers who have walked the walk...

    4. Re:Ruby on Rails, and Trails by jshriverWVU · · Score: 1
      >Sure you can. But if you want to develop a web >application using only a C compiler, you're in for >big learning curve and you'll be writing a whole >bunch of code! You'll have to write your own >webserver and DB for starters. (Well, I guess if you >add ftp to your toolbox you can get apache and >mysql, but something tells me you'll need more than >that to build those systems!)

      heh, aye. I didnt really express myself well. I just meant, it seems just 5 or so years ago you could know C and stdio and you could create anything really. Perhaps my problem is that it takes me longer to keep up to date on everything going around, when compared to just doing what needs done with what i already know. There has to be a balance of sorts.

      When I first read the topic for the main post, the first thing that popped in mind was "why try to use perl/python/PHP (especially PHP) for a parallelized project. Just do it in C/C++ and use PVM/etc. While something like PVM is still a new layer, that's just 1 layer and not App Server/Language +enhancements for that server and whatever frameworks are needed, etc, etc.

      >..."Back in the day" no software could do all of >that!

      True, and I agree that you made a good point.

      >Another important attribute is knowing how to >select the right tool for the right job... There >are a lot of choices out there so you really have >to do the research and talk to other developers >who have walked the walk...

      Also agree, I like both Java/Perl/PHP/ and various languages for their strengths. Though as you mentioned (when looking for the best tool) it does get a bit daunting when you have to go up even more layers of abstraction beyond (what language to use). Picking which language doesn't seem that hard, but when you have 10k's of libraries, packages, frameworks, etc Noone can know them all, that's where the real bloat is in my view.

      IT would be nice to have something kinda like CPAN but for all major languags. That way when a new project begins you can benefit by using a framework, but if you can't find it to begin with it's like not seeing the forest for the trees.

      Thanks for your reply, this has been a big obstacle for me the past year or so. So I'm trying to figure out how people actually do it. Especially in this rapidlg changing world, where you *do kinda* have to know a lot to be marketable. Anyone can sit down over a couple days or weeks and learn .Net. But to really be marketable it seems you need to know .Net, J2EE, EJB, insert-whatever. Just so much, so little time. *brain overload*

      Thanks again! :)

    5. Re:Ruby on Rails, and Trails by mortonda · · Score: 1

      Funny, I was just getting started on making a similar project on php, maybe called phpTrails.

      Anyway, the idea behind the rails concept is basically to have a framework that takes care of commonly used stuff, such as sessions, MVC structure, error reporting combined with an easy build sequence. No XML files to write, or jar files to create.

      Just write a controller class and method, and write a html template for it to view with. Done!

    6. Re:Ruby on Rails, and Trails by Headius · · Score: 1

      Interesting that you mention Trails, since Rails is so named because it fills a similar gap as Java's Struts (Rails...Struts...get it?). Struts, naturally, is pretty godawful now, and shows its age. Rails took the good ideas from Struts, added a few of its own and a beautiful language, and there you have it. I hope Trails can do something similar (Groovy anyone?)

    7. Re:Ruby on Rails, and Trails by Ian+Bicking · · Score: 1
      Someone just recently started implementing a Rails-like system in Python: http://st0rm.hopto.org/subway.zip (only suitable for people who want to help its development; it's like 4 days old at this point).

      I wrote about Rails a couple days ago on my blog; I think it shows off the difference between a dynamic language and a static language (Java) pretty well. I have a hard time imagining Java maintaining Rails' simplicity, and I think the Rails model starts looking a little silly if it's not simple; it would be rapid application development without the rapid.

    8. Re:Ruby on Rails, and Trails by Anonymous Coward · · Score: 0

      Why would someone write another rails-like system when you already have rails??

    9. Re:Ruby on Rails, and Trails by Anonymous Coward · · Score: 0

      Well, the goal is to achieve your business needs with as little work as possible. Sometimes you just *can't* open up vi and write a program in C (just like you can't build a boeing 777 the same way you build a kite).

      Java and Hibernate and all that stuff makes doing stuff *hard*. I.e., you have to a bunch of stuff that you just don't need to.

      Rails is an alternative that lets you achieve the same ends through much simpler means. You can't just lump all this stuff together. It's kinda like the way well-written Lisp programs are written: very tight but all "custom" domain-specific code.

      And yeah, you have to learn some stuff. When you have a nicely-written system full of custom stuff, you have to learn it.. but once you do, you can achieve your objectives faster.

    10. Re:Ruby on Rails, and Trails by Ian+Bicking · · Score: 1

      Because they like don't like Ruby that much (at least compared to some other language)? In the case of Subway, he's putting together pieces that already exist in Python, so it's only a partial reimplementation.

    11. Re:Ruby on Rails, and Trails by bill_mcgonigle · · Score: 1

      Seems we no longer have time to learn good coding practices or better algorithm designs. To be marketable anymore you have to dedicate all your time learning the latest and greatest language/app server/framework/whatever.

      Not all of CS is application development. If you want to work on algorithms, get a PhD and then either a professorship or a nice job at a big company that's doing research (e.g. IBM) or providing high-speed solutions (e.g. a codec company). If you're good you can be a consultant and make good dollars contracting for those companies when they need a particular solution. Even if you are extremely good the good old boys who run these shops won't be interested if you don't have a PhD.

      So, if you're set on being done in 4 years, you're probably right, but that's not your only option.

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
    12. Re:Ruby on Rails, and Trails by Anonymous Coward · · Score: 0

      Parrot aims to make CPAN and other libraries available to all scripting languages. .net supports the same (libraries on different languages used from any of them).

  40. Rapid prototyping overrated by daBass · · Score: 2, Insightful

    You can prototype - or simply develop - most things as quick in Java as in any "P" language; the only exception I can think of being a GUI interface, in that respect Tk kicks Swing's butt. Personaly I don't like the Ps much, I prefer the T - as in Tcl - for scripting. That language kicks any Ps ass when it comes to design, though it can't win on available libraries. (which I never missed yet, all the important ones are there if you know where to look)

    Besides, rapid prototyping is overrated for all but impressing your manager or client. If you need to protoype you clearly do not understand the problem at hand and if you do prototype for the above given reason, you manager will make you use the prototype as base for production development. This means you spend the same amount of time as if you'd started properly straight away (and told him/her and their required demos to get lost for a few weeks) but end up with an inferior product because you are contantly hacking around the shortcuts you took to make that rapid prototype.

    The two are just very different beasts and there is a clear case when a proper OO language with clear contracts and inheritence is the best tool for the job. Unfortunately, web apps aren't the best example of such a case and that makes this comparison flawed, not the language in question itself!

    1. Re:Rapid prototyping overrated by iBod · · Score: 1

      Absolutely agree about the questional value of prototyping.

      I think some developers use it as an excuse for not designing. They just pour forth code in a sort of 'stream of consciousness' changing this and that along the way. Good implementation doesn't matter, because it's only a 'prototype', right?

      Unfortunately, as you said, the results of this endevour will likely form the basis of the actual application (managers can't stand to see all that coding time thrown away).

      Seen it many times.

    2. Re:Rapid prototyping overrated by pohl · · Score: 1

      Yes, and the rapid prototyping fever is particularly troubling in the context of a write-only language like perl. (I do love perl; don't get me wrong.) The true test of your system is not how quickly you can make it stand up, but by how well it can be maintained by someone who did not write it. Optimizing for the prototyping phase is is like making sure that the first iteration of your loop runs in a nanosecond while ignoring the cost of every other iteration.

      --

      The "cue the foo posts in 3, 2, 1..." posts will commence with no subsequent foo posts in 3, 2, 1...

  41. Learn about next generation flame wars... by Ingolfke · · Score: 1

    beowulf vs. ActiveGrids... fanboys, take your corners.

  42. Whoa there cowboy.. you don't understand. by sporty · · Score: 4, Insightful
    Linux, Apache, MySQL, PHP/Python/Perl

    J2EE is not about the OS, server or database. It's a specification. JBoss (JBass.. heh), Geronimo, Welogic and many others are implementations of it. Some are certified, some are not, like Resin.


    You can run it on many os's, including linux. Apache is making one of the J2EE servers. I'm not sure where databases came into all of this, since it's fairly independent. I.e. w/ jboss, there are data mappings for all of these servers, if you decide to use EJB, which is part of the spec, but not a requirement to use. The last thing is the big ol' P.


    J2EE is a set of technology specs. Things like XML manipulations (JAXB, JAXM), communication "stuff", like SOAP, JMS and JMX, database abstractions, like EJB using JDO, CMP, BMP.. "web stuff", though you can do your own protocols, with the servlet spec. Last I checked, the closes to a spec I've seen is p5ee, which had an interesting run. You had options of what to use, maybe too many, in p5ee, but that was about it. It would have been nice to see a tight binding between everything.

    Anyway.. the LAM in LAMP is irrelivant in this article. I can use Linux, Apache and MySQL with J2EE if I so desired.

    --

    -
    ping -f 255.255.255.255 # if only

    1. Re:Whoa there cowboy.. you don't understand. by Anonymous Coward · · Score: 0

      PHP/Python/Perl only require a BSF plug in, and they can be used too in a J2EE env.

  43. GAS LAMP by suso · · Score: 4, Funny

    Grid Application Server based on the LAMP

    So does that make it a GAS LAMP?

    *ta dit boom*

  44. Erm, back to basics folks... EE and strings? by tod_miller · · Score: 4, Insightful

    So let's look at the requirements for today's corporate applications ... Given these requirements, Java does not fare very well. Apparently what is needed is a language/environment that is loosely typed in order to encapsulate XML well and that can efficiently process text. It should be very well suited for specifying control flow. And it should be a thin veneer over the operating system.

    So we came from string programming roots, we developed OOP and AOP, and now... now we go back to string programming because of xml parsing?

    I find this a worrying trend, you have to understand, an application is state, and behaviour.

    This is trying to tie an application into a 'thin veneer' over an operating system, which seems a bit worrying for an app that will cost a few million to develop in the right circles.

    Be reducing all the benefits of OOP (huge and varied, numerous and wonderful) we seek to define our crowining enterprise applications with an approach from the 70's that would pioneer the use of string processing programming constructs over highly developed and structured powerful programming tools.

    The program isn't the code, it isn't the data, it is the design, the behaviour, the organisation, the people understanding it. All of this becomes very alien to us when we go this route.

    Humanising code is key to developing the kind of applications this company has now touted.

    What is looselycoupled? Anyone read it regularly? is it a valid news source? Is this some free advertising for a fad?

    I am almost tempted to read more about the LAMP, but I just have a knowing feeling it will be another 'cure all' product.

    Yep, tick tick, oops, missed one, back to step 1.

    --
    #hostfile 0.0.0.0 primidi.com 0.0.0.0 www.primidi.com 0.0.0.0 radio.weblogs.com
    1. Re:Erm, back to basics folks... EE and strings? by horza · · Score: 1

      Be reducing all the benefits of OOP (huge and varied, numerous and wonderful)

      After being over-exposed to OOP (clunky, temptation to make everything an object, multiple inheritence obscuring what the code is supposed to do), people are trying to find a balance between when OOP should and shouldn't be used.

      we seek to define our crowining enterprise applications with an approach from the 70's that would pioneer the use of string processing programming constructs over highly developed and structured powerful programming tools.

      A lot of people reading Slashdot are in the web industry, which is primarily text processing (though we can think up fancy names such as data mining, content management systems, etc).Don't think you've discovered anything no-one else has, the chances are they've all tried these "powerful programming tools" and discarded them as unproductive for them.

      The program isn't the code, it isn't the data, it is the design, the behaviour, the organisation, the people understanding it. All of this becomes very alien to us when we go this route.

      Complete BS. You do a func spec then a tech spec. After this the implementation is down to the project manager and the developer. With the right specs the system will behave identically, no matter what language it is written in. Whether C, Java, C#, Lisp or Whitespace. The main difference is in the time-to-market and the maintenance costs (usually inversely proportional to each other).

      In my experience Java takes a long time to develop, but when done you can just throw more and more hardware at it. LAMP is an order of magnitude quicker to develop but when hitting hardware limitations you need more lateral thinking to overcome these.

      Phillip.

    2. Re:Erm, back to basics folks... EE and strings? by tod_miller · · Score: 1

      After being over-exposed to OOP (clunky, temptation to make everything an object, multiple inheritence obscuring what the code is supposed to do), people are trying to find a balance between when OOP should and shouldn't be used.

      Java has no multiple inheritance.

      Everything except for for primitives are Objects, and unless you writ your own VM you have to make everything objects... Oh I see, you cannot grasp good design in OO? I suggest you get good at design, then your worries will fade.

      A lot of people reading Slashdot are in the web industry, which is primarily text processing (though we can think up fancy names such as data mining, content management systems, etc).Don't think you've discovered anything no-one else has, the chances are they've all tried these "powerful programming tools" and discarded them as unproductive for them.

      The web industry has nothing to do with text processing. If you are talking about something to do with 'streaming text content over http' then that hardly comprises the industry of web development.

      Web development spans many niches, from web design to web engineering.

      The whole point is, the string programming methods of web development that plagued us in ASP and to some degree in vanilla jsp, are gone, if you have been in web development for at least 5/6 years you will remember the very bad old days.

      I personally don't want to go back to PERL/CGI (works for amazon though!) programming, but newer systems such as banking are complex enough that this 'text processing' isn't an issue, and we also have removed 'text processing' with elegant new systems such as Java Server Faces. Even struts and a tomcat instance will get you far.

      Data Mining: data processing using sophisticated data search capabilities and statistical algorithms to discover patterns and correlations in large preexisting databases; a way to discover new meaning in data [thanks dictionary.com]

      Content management, well, since I am more than a little knowledgable on what CMsystems are [1 thesis and 1 cms], or, what they are not, I can say they are not to do with web development.

      Some CMS are developed with web interfaces, yes.

      The following kills me, it really does:

      [me-grandparent]The program isn't the code, it isn't the data, it is the design, the behaviour, the organisation, the people understanding it. All of this becomes very alien to us when we go this route.[/me]

      Complete BS. You do a func spec then a tech spec. After this the implementation is down to the project manager and the developer. With the right specs the system will behave identically, no matter what language it is written in. Whether C, Java, C#, Lisp or Whitespace. The main difference is in the time-to-market and the maintenance costs (usually inversely proportional to each other).

      I see the game, you take what I say, call it bullshit, then say it again will more words, as if written for an idiot. Well done, you win!

      In my experience Java takes a long time to develop, but when done you can just throw more and more hardware at it. LAMP is an order of magnitude quicker to develop but when hitting hardware limitations you need more lateral thinking to overcome these.

      I think you got them crossed. LAMP is based on scalable [grid] hardware, and Java is based on scalable development, not the way you just said.

      Java allows you to translate development in very quick time. Of course, for specific functions there are frameworks to model you application around, that make complex applications easier to develop over and over again.

      LAMP is based on PHP, hands up who wrote two PHP driven websites, admittedly without using templating *hand shoots up* right, so I am not a PHP expert, if you can discount 18 months experience, but I am a Java expert, not necessarily a development expert, I know enough to know I can go further!

      [unless you c

      --
      #hostfile 0.0.0.0 primidi.com 0.0.0.0 www.primidi.com 0.0.0.0 radio.weblogs.com
  45. SOAP and Grid by steve_l · · Score: 1

    If you look at the Global Grid Forum you will see that a derivative of SOAP (first OGSA, now WS-RF) is used as the underpinnings of the proposed Grid architecture.

    Just because it is being pushed there and in OASIS does not mean that is is the right approach. Nor is EJB, IMO. EJB is designed to do distributed transactions against something that may or may not be a relational database. Grid stuff is very often computation against a large datastore; potentially chained stuff. It is not classic three tier J2EE.

    It seems to me we need something like network pipes, where you can construct pipelines of computation and have the resource manager place parts of the pipe on the right machines. There is some work in the OGSA-DAI working group looking at this.

  46. Re:I just got myself some new asbestos underwear by Sanity · · Score: 3, Interesting
    Java is comparatively heavy,
    Compared to what? Evidence?
    forces you into an object-oriented paradigm
    You can put your entire applcation in one class and pretend it isn't OO if you want.
    has static typing
    Oh what a terrible terrible thing!
    and doesn't lend itself well for rapid prototyping and development.
    Bullshit. It is just as suitable for rapid prototyping as anything else if you know how to use it.
  47. Re:I just got myself some new asbestos underwear by RAMMS+EIN · · Score: 1

    If you look at what currently goes on in development land, you see that there is always a race against the competition. Whoever gets the feature first takes the cake. Requirements are changing rapidly, and it all needs to be ready yesterday. I interpret "next-generation applications" as meaning applications that fit these circumstances.

    Seen in that light, the Ps have a distinct advantage over Java. Programs are often more concise, shortening development. The Ps are more flexible than Java's stringent object-oriented model, making it easier to adapt to changing requirements. This makes them a better fit for next-generation requirements.

    --
    Please correct me if I got my facts wrong.
  48. Maybe its designed to sell more servers by steve_l · · Score: 1

    A lot of J2EE is about scalability, not efficiency.

    Which means that it can scale up by throwing more hardware at the problem, but the amount of hardware you need for any particular task is higher than with other solutions.

    Which is what you expect when you let hardware vendors (Sun, IBM) design the spec.

    Also you may find that it will take a lot of effort to get your EJB solution working, at which point you pull in consultants. Like IBM.

    The good news: Apache Geronimon. Free, documented. 'nuff said.

    1. Re:Maybe its designed to sell more servers by pebs · · Score: 1

      The good news: Apache Geronimon. Free, documented. 'nuff said.

      More good news: Spring framework, Hibernate, iBatis..

      --
      #!/
    2. Re:Maybe its designed to sell more servers by dnoyeb · · Score: 1

      Yes but this is also in line with the object oriented philosophy. Sure you can write it to run faster sequentially, but its much easier to manage if its OO.

      J2EE is about manageability too.

  49. Re:I just got myself some new asbestos underwear by Tim+C · · Score: 1

    Java is comparatively heavy, forces you into an object-oriented paradigm, has static typing, and doesn't lend itself well for rapid prototyping and development.

    Leaving asside the arguments about OO and static typing, you're going to have to explain what you mean by that last assertion, as I could've sworn that I've been doing just that for the last 5.5 years.

  50. Re:I just got myself some new asbestos underwear by CountBrass · · Score: 1
    All this is obvious to people who have actually studied these languages and evaluated them in an open-minded way. Only people who don't really know anything besides Java and those who have been brainwashed by the hype machine that think otherwise.

    Ah yes, the standard "if you don't agree with me you don't know what you're talking about" argument. Try pulling your head of your arse.

    You want to knock together a simple web site (eg Slashdot or a simple eCommerce site) then go for your "Ps". If you want to do anything more sophisticated then you would be insane to use PHP or Perl.

    And, of course, if you don't agree with me then you must be wrong :-P

    --
    Bad analogies are like waxing a monkey with a rainbow.
  51. Quite the reverse by kahei · · Score: 2, Funny


    He's saying: use a suite of highly-optimized tools (the various LAMP components, most of which are fast and all of which can be replaced with alternatives as necessary) rather than throw more hardware at an inherently slow platform (Java).

    It's all pretty much a matter of what you were brought up with. On the other hand, I'm working for a household-name client now that's banned Java across the board because they got sick of the 'buy more chips' solution to performance problems. Acceptable platforms: LAMP and .NET.

    --
    Whence? Hence. Whither? Thither.
    1. Re:Quite the reverse by Anonymous Coward · · Score: 0
      ...an inherently slow platform (Java). I'm working for a ... client now that's banned Java

      Translation: guy writes slow code, can't figure out how to use a profiler, blames programming language to save face.

      See, Mr. Customer, it isn't my fault, I'm supercool, the programming language is inherently slow...

      Film at 11.

    2. Re:Quite the reverse by mwvdlee · · Score: 1

      I also used to think Java was inherently slow until I actually studied the matter, now I think Java can be faster than common languages. I used to think no interpreted language could be faster than a compiled language but the opposite seems true.

      The reason? Java can optimize itself at runtime. In it's simplest form the Java runtime can (re)compile (multiple versions of) method if it notices some types of calls are used more than others.

      This is not so much java-specific as much as it is byte-code interpreter related but Java does implement that paradigm.

      But don't take my word for it; most modern tests will show Java performs very well in comparison to other languages, sometimes slower and sometimes faster. .NET has already followed suit and I guess it's just a matter of time before these byte-code interpretters will surpass the speed of C/C++ on all but the most low-level applications.

      --
      Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
    3. Re:Quite the reverse by Anonymous Coward · · Score: 0

      It's all pretty much a matter of what you were brought up with. On the other hand, I'm working for a household-name client now that's banned Java across the board because they got sick of the 'buy more chips' solution to performance problems. Acceptable platforms: LAMP and .NET.

      I think they are in for a major disappointment when they discover that the problem was not the platform but the programmers.

    4. Re:Quite the reverse by Gr8Apes · · Score: 1

      On the other hand, I'm working for a household-name client now that's banned Java across the board because they got sick of the 'buy more chips' solution to performance problems. Acceptable platforms: LAMP and .NET

      That just cracks me up. Must not be a large-scale operation. Seriously, my shop, another household name that's huge, used to run a Perl based site. They switched to Java, with better results and less hardware. Scalability really isn't an issue, at least not from the front-end. DB... well, that's another question.

      As for .NET, I know that Ebay converted to it, and their site has blown chunks ever since. Connections sporadically time out, things are lost, direct links are sometimes broken. I wish they'd stayed with whatever they were running.

      --
      The cesspool just got a check and balance.
    5. Re:Quite the reverse by nickos · · Score: 1

      "I guess it's just a matter of time before these byte-code interpretters will surpass the speed of C/C++"

      I'm sorry, but if an interpreter is simply interpreting bytecode it can never be as fast as native compiled code. An "interpreter" that reads bytecode and compiles it prior ro execution may be as fast but then it's not really an interpreter any more is it?

    6. Re:Quite the reverse by Meostro · · Score: 1
      I also used to think Java was inherently slow until I actually studied the matter
      If you've studied the matter, you will realize that Java has built-in "features" that will make it inherently slower than C/C++. Any optimization / recompilation you do with Java can be done with C code also. The only difference is that with your C code, you don't have to do bounds checking (and a few other items I don't recall) that Java REQUIRES in its spec.

      The recompilation done in Java is no different than profiling in C or any other language, the only advantage Java has at this point is that it's automatic. Profile-guided optimization is available in recent versions of MSVC, that's essentially the same thing, and it will compile to executable code directly and won't need to be interpreted before execution
    7. Re:Quite the reverse by Cederic · · Score: 1


      The point of the original poster being that the optimisation/recompilation done with Java is done on-the-fly during execution, and thus matching the data being processed.

      This is not something done in a statically compiled C/C++ program. Profile-guided optimisation in MSVC may help, but again, you don't necessarily have access to your full data set at compile-time and so you wont necessarily benefit from the full optimisation possible.

      As for bounds checking, one reason I like Java is that it does it for me. If it didn't I'd have to do it myself - so it's going to happen anyway, so no speed differential there. Sure you can choose _when_ you bounds check in C/C++, but unfortunately some people optimise out the checking entirely, leading to those lovely buffer overflows that cause so many bugs..

      I'm not trying to argue that Java is quicker than C/C++ - the cost of the hardware for either is considerably less than the development costs saved by going with a Java solution. Working in an Enterprise environment total cost matters, and hardware is just a small percentage of that cost.

      To get back on topic, that makes LAMP laughable as an alternative to J2EE. Sure, you have a nice horizontally scalable architecture - but that's buying extra hardware to run quicker. And that's different to a clustered J2EE solution precisely how..? LAMP may well be a good solution, and make it LAOJ (Oracle and Java) and it's quite likely to be entering the Enterprise market pretty darn soon (as all four of those elements are already in common use; grid enabling them being the next logical step). But don't sell it to me as a J2EE killer - sell it to me on a total cost basis, and don't forget to include the cost of training, of maintenance, of licenses, of up-front development, of operational support, indeed, of hardware.

      ~Cederic

    8. Re:Quite the reverse by Doctor+Memory · · Score: 1

      The recompilation done in Java is no different than profiling in C or any other language

      Actually, it is. A good JVM will actually keep different versions of the same method (optimized for different combinations of inputs) around. Profiling a C program will permit you to optimize it for only one type of usage. And should usage patterns change (slashdotting, anyone?), you'd have to pull the code, re-optimize and re-deploy (hopefully re-testing as well). Not necessary with the JVM.

      --
      Just junk food for thought...
    9. Re:Quite the reverse by mwvdlee · · Score: 1

      A reply to both replies here.

      C/C++ cannot recompile unless either the compiler does byte-code (MS's C++ implementation for .NET) or the programmer builds it, requiring non-portable assembler code and still you would need to do something very similar to byte-code interpreting.

      Profiling is indeed VERY different from recompilation at runtime. Profiling is based on the specific situations during profiling. Runtime recompilation can optimize for the specific use at that particular moment in time. Runtime recompilation can choose to spawn multiple versions of the same method or cache the return values of static methods for instance but only when it would make the code faster.

      As for the bound checks; a good compiler (which Java is) will remove these bound checks if at all possible. Besides; you SHOULD do bounds checking whenever you're not 100% certain these bounds will not be crossed. I guess you also think a garbage collector is a bad features then, you know, the thing that stops your memory from leaking and waits to destroy objects until the CPU has time to spare?

      Either way, don't trust me, just take a look at some of the many statistics or explainations and you will see for yourself.

      For the record; I used to be a C/C++ zealot myself but please remember; this has nothing to do with C/C++ or Java, it's about byte-code interpreting; Java can be statically compiled and C/C++ can be byte-code interpreted if you want. My point is that the byte-code interpretation (which Java uses and C/C++ can use (and already does; C++ for .NET)) can be faster than statically compiled native code.

      --
      Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
    10. Re:Quite the reverse by ckaminski · · Score: 1

      The tradeoff, when running with large datasets, is a cost in memory. The increased swapping eats any performance benefit from improved run-time optimization.

    11. Re:Quite the reverse by jovlinger · · Score: 1

      well, yes.

      That's the point, isn't it?

      Interpreters can be smarter than the raw hardware. Slower in the straight line, perhaps, but overtake you in the corners. See PyPy, HP's dynamo, Sun's HotSpot, and Ungar's self.

    12. Re:Quite the reverse by mwvdlee · · Score: 1

      So for the price of about 64 additional MB (I've never seen the JRE take more memory), you've got better performance?

      --
      Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
    13. Re:Quite the reverse by ahdeoz · · Score: 1

      JVM runtime optimization is always at the very low level. We're talking something akin to building jumps in assembly into you loops. It doesn't really ever get close to anything adaptive. It just shortcuts some of java's low level shortcomings if it sees a pattern. I don't think it even goes to the level of choosing a different sort algorithm or converting a string to a stringbuffer. What it does is build a table of common executions so it doesn't have to look them up from the complete program stack. A hotspotting JVM isn't an omniscient, understanding, precognitive artificial intelligence that can turn bad code into good code. It unrolls loops and inlines functions, and not necessarily always correctly.

  52. /me modding parent -1 flamebait! by Sindri · · Score: 0, Offtopic

    Slashdot realy does need some way of letting readers give a measurable opinion on the stories. This way I could set my slashdot account to ignore crap like this.

    This story is just a link to the submitters blog rant (no I didn't RTFA).

  53. Top reason why this debate is pointless by kahei · · Score: 1


    Nobody knows _just_ C++. Nobody knows _just_ Ruby or _just_ LISP or (barring a few teens just starting out) _just_ PHP or Perl.

    But there is a huge population (I know because I interview them) that knows _just_ Java and often _just_ J2EE. Their entire skillset is invested there. The only response they can reasonably have to other languages / frameworks is 'no, it would be better to use Java'. What else are they going to say?

    They aren't going to shop around and maybe pause for a year or two to get a general background in programming, they're going to use Java, plain and simple. It's common sense.

    Welcome to the marketplace -- standardization brings some efficiency at the cost of some flexibility.

    Disclaimers: there are of course many good programmers who do use Java as one tool among many. However, the vast horde of Java-only people, good and bad, who were trained a few years ago is going to have a big effect for a long time.

    --
    Whence? Hence. Whither? Thither.
    1. Re:Top reason why this debate is pointless by Anonymous Coward · · Score: 0

      Thank you, everyone who I know who is not a "Java-Only" programmer sees this. Unfortunately, Indians are the majority of the Java-Only crowd in my experience in the Bay Area.

    2. Re:Top reason why this debate is pointless by Anonymous Coward · · Score: 0
      But there is a huge population (I know because I interview them) that knows _just_ Java and often _just_ J2EE. Their entire skillset is invested there. The only response they can reasonably have to other languages / frameworks is 'no, it would be better to use Java'. What else are they going to say?

      That explains the noise on this topic: barking Java/J2EE dogs who are afraid something new will invade their turf and render them totally obsolete. Thanks for the insight.
  54. J2EE is even less than part of Java by Sindri · · Score: 1

    J2EE is not a part of Java it's just að collection of standardized APIs and programs for Java.

    1. Re:J2EE is even less than part of Java by borud · · Score: 1
      wrong, J2EE is a part of Java.

      Java isn't just the language or just the JVM, it also encompasses a rather large collection of APIs, without which Java would not be very useful. for instance it would be foolish to argue that the collection classes are not part of Java. or that the servlet API is not part of Java. or that the JDBC interface is not part of Java.

      this is the very strength of Java. this is what sets Java apart from, for instance, C++. in C++ you have some containers and algorithms as part of the standard library -- and that's it. you have practically no standard infrastructural APIs to speak of. and even if you did, C++'s old fashioned heritage makes it nearly impossible to base anything on anything but source (and even then, you often have issues if various components were intended for different compilers).

    2. Re:J2EE is even less than part of Java by Sindri · · Score: 1

      No its not! I have writen many Java programs that dont use any J2EE. QED

  55. MySQL isn't suitable by Anonymous Coward · · Score: 2, Informative

    MySQL isn't suitable for 'enterprise' - you'd really need PostgreSQL. I tried for years to use MySQL in that manner before giving up and trying PostgreSQL. Wish I had done so earlier.

    1. Re:MySQL isn't suitable by the+eric+conspiracy · · Score: 1

      Postgres isn't suitable for Enterprise either until there are real clustering and fail over options.

      PHP isn't suitable for enterprises either. To begin with you can't find good PHP programmers. I know, I've tried recruiting them, while there is a good supply of experience J2EE guys.

      Then there are the tools for PHP. Yuck.

  56. Re:I just got myself some new asbestos underwear by iBod · · Score: 1

    I've always found that proper use of OO makes things easier to change and adapt.

    It's the 'proper use' bit that's tricky. It requires a bit of design and planning rather than just cranking up the editor and coding to the metal.

  57. Finally! by Anonymous Coward · · Score: 3, Funny

    Finally, a break from the Sun tax. Yeah, you know the one -- the one that makes you pour hundreds and hundreds of wasted man-hours into using poorly written programs with little or no documentation. What can you expect from crappy code written by scientists and corporations? I'll happily use code written by hobbyists any day, no matter what News for Nerds declares. Honestly, I know most of you agree with me!

    1. Re:Finally! by Anonymous Coward · · Score: 0

      This is why people hate sun:
      It claims that only sun has the true experts and scientists and everybody else is amaetur hippies.

      This is a direct insult not only on many talented developers but also to the logic of the world. If SUN had really great products it woudln't need this lame way to promote them.

      Oh and on linux vs solaris? Linux has much more developers than all other proprietary OSes together. Many of these are paid to do kernel hacking, while others (administrators, academics, etc) have free time to contribute.

      But, oh, yes. I forgot. SUN machines are big endian. Silly me! 1000 times better than everything else.

  58. Mason rather than PHP by grey1 · · Score: 2, Informative

    Forget about clunky PHP, try Mason instead. And use whichever db makes sense for you - for us it's often Oracle but then we've got the DBAs and experience to make use of it (oh and the licences...).

    And sometimes Java (even J2EE) makes more sense than working in Perl. Which is why we do that too.

    Choose the kit of parts that suits your application needs and the skills of your developers. And think about avoiding lock-in to a closed-source vendor. That has always seemed like a big risk for a project.

    --
    "we demand rigidly defined areas of doubt and uncertainty!"
    1. Re:Mason rather than PHP by Prowl · · Score: 2, Interesting

      Agreed.

      We started using Mason here and have just not looked back. It has so many useful features built-in for site maintenance, and to top it all it allows me to embed Perl. We put all our application logic in Perl modules, then wrap the site around it using Mason.

      In fact I hereby propose a new meaning for LAMP:
      Linux
      Apache
      Mason
      Postgres

      --
      That man tried to kill mah Daddy
  59. Silly by tkrotchko · · Score: 1

    "They are there to prevent trolls from stretching the width of the page by inserting silly long strings of text that lack breaks."

    Since they're just URL links anyway, they could just wrap it anyway, since its a link.

    Even "Microsoft Outlook" has figured out how to handle that.

    --
    You were mistaken. Which is odd, since memory shouldn't be a problem for you
  60. Parent rewritten with some HTML code by Anonymous Coward · · Score: 0

    The above poster doesn't know anything about html, so his/hers post is unreadable garbage, here's his/hers post with couple of html tags:

    Originally written by giuntag (833437):
    • FACT 1: J2EE is overengineered for everything, and darn too complex to learn. I'm not talking solely about EJB, just take a look at all the frameworks springing up every year, JSP, JSF, STRUTS, more than you can poke an acronym at. If anything, the emerging terns is: all the frameworks are solving the wrong problem.
    • FACT 2: JVM might be getting faster with JIT and all, but Java AS suck RAM big time (and CPU too). BEA advises customers to use open-source technology (Apache) to server static content, cuz' it would kill the server. And their product costs $$$, while Apache is free.
    • FACT 3: PHP+Apache+(insert favorite DB) is no toy at all. PHP actually is running the internet far more than java has ever been. It would me a mistake to ignore scripting languages on the premises that MySQL does not support transactions/stored procedures / whatever.
    • HINT 1: J2EE only has it place in big enterprises that are willing to get it becuase the big bucks it costs come with some big name company that offers support. Big enterproses still are unwilling to bet the house on 'get-it-from-newsgroups-on-google' tech support.
    • HINT 2: the same big companies are very much likely to use Oracle, Sybase or DB2 for the DB back-end. But if they do, they already paid for the possibility to write all the business logic inside the DB, and have it running better and faster than in the applicatio-tier.
    • HINT 3: even in enterprise contexts, the largest part of the majority of apps is pretty stupid form entry and validation. The presentation logic changes much faster than the data. And scripting languages are faster to write presentation logic than JAVA or dotNot.
    • HINT 4: horizontal scaling is gonna be big. Real DB and PHP gurus know it can beat AS clustering anytime. OK, just my 2cents of flaming...

    You'd think that a person who wants to flame "news" item about a subject like this would understand a bit of easy mark-up language.

    1. Re:Parent rewritten with some HTML code by giuntag · · Score: 0

      notimetotypeineasymarkuplanguagebeforetwohundredco mmentsgetposted,sorry:)

    2. Re:Parent rewritten with some HTML code by altgrr · · Score: 4, Insightful

      J2EE is overengineered for everything, and darn too complex to learn.

      It took me one week as part of a work placement in a summer holiday to learn all about EJBs. Either it can't be that hard, or I'm a genius. ;)

      Oh, and I think it's a little contradictory to argue this line, then argue along the lines of just doing some no-brainer form-filling with the application server.

      J2EE is about more than just shopping carts, and thus it WILL take longer to learn than a system that's suited to running an online shopping cart.

      Java AS suck RAM big time (and CPU too). BEA advises customers to use open-source technology (Apache) to server static content, cuz' it would kill the server.

      That's because application servers are not web servers. Sledgehammer and nut spring to mind.

      PHP actually is running the internet far more than java has ever been

      See above. Java is about running applications that just so happen to have a web front-end. PHP is about hosting websites that just so happen to have some application logic behind them.

      J2EE only has it place in big enterprises that are willing to get it becuase the big bucks it costs come with some big name company that offers support.

      "the big bucks it costs" - *COUGH*

      even in enterprise contexts, the largest part of the majority of apps is pretty stupid form entry and validation

      If that's the case, you don't need a big server cluster to manage it...

      --


      Like car accidents, most hardware problems are due to driver error.
    3. Re:Parent rewritten with some HTML code by giuntag · · Score: 0
      First of all, thanks for turning my bunch of chars into something readable. I had been writing it in a haste with 5 people shouting at me to go to lunch. And sorry for this lame excuse, tooo.

      Now, for some more content:
      • JBOSS: it might be free and open and be the coolest app of the year too, my boss will prefer buying BEA anyday just coz it has a big ENTERPRISE sticker on the box. I can imagine there are some more savvy IT managers somewhere in the world, I have still to meet them (in large organizations at last)
      • (PS. Hire me any day )
      • app server are not webservers True, and still the apps being served are not based on CORBA, COM or web-services offereted to fat clients: the apps are served as HTML. And in html images are used quite a lot...
      • About J2EE being used for for stuff more complicated than shopping carts: altough this us very true in theory, in practice most web apps I have seen end up being shopping-cart-like.
      • Rationale: There might be a lot of business logic involved in the app, but the front-end always ends up looking like win XP: overly simple, with a small number of large, coloured buttons. I tend to blame it on http and its request-response paradigm rather than the language used to code the BL: there is e.g. still no standard way to have a drop down box reload its values from the server when an event happens in the UI. And user input validation still has to be done twice, both in JS client-side (to be kind to users) and in JAVA/PHP/SQL server-side (to be tough to tampererers)
        I could rephrase that as: the impedance mismatch exists, and it is between web frontends and java.
        • presentation logic changes faster than business logic: a typeless, 'sloppy' language is usually faster to use for accomodating changing requirements
        • html presentation logic is all about cobbling togerther a bunch of strings: a functional language with strong regexp capabilities is more suited than one where all Strings are objects
        • most Java frameworks I have seen tend to subvert the HTTP paradigm in order to accomodate basic stuff such as auth, session, persistence. But in the end they tend to get MORE complicated to use than the problems they were aiming for in the first place: subtle bugs pop-in because there are too many layers involved, becuase the developer, coding in an event-driven paradigm, did not think about the user hitting the F5 or BACK button and so on.
        • All in all: despite the original blog postings being at least 75% marketroid speak, I am pretty convinced that app servers are mostly used today as
        • sledgehammmers for nut cracking. And I am willing to give some credit to people that present something new.

          Off to install Zope...
  61. Re:Why is GNU not included in the name? by latroM · · Score: 0, Offtopic

    Why do you mod facts to trolls?

  62. Spelling checker considered harmful by mean+pun · · Score: 0, Flamebait
    The implementation is a mere derail.

    Ouch. Think of the insights we would miss if Slashdot would have a spelling checker...

    1. Re:Spelling checker considered harmful by Anonymous Coward · · Score: 0

      That wasn't a typo, it was a mental slip. I had images of a trainload of Gentoy users derailing at 100Mph whilst travalling over a bridge.

    2. Re:Spelling checker considered harmful by CProgrammer98 · · Score: 1
      except derail is a valid word so a spellchecker would be no help!

      --
      And the people shall be oppressed, every one by another, and every one by his neighbour Isaiah 3:5
  63. Re:I just got myself some new asbestos underwear by a24061 · · Score: 1
    Ah yes, the standard "if you don't agree with me you don't know what you're talking about" argument. Try pulling your head of your arse.

    That's a bit unfair. The previous poster said "Only people who don't really know anything besides Java", not "all people who use mainly Java".

    I think it's fair to say that knowing only thing in a category (e.g. one programming language) significantly reduces a person's competence to make comparisons in that field (e.g. between languages).

  64. Re:Not to start a flame war, but... by Anonymous Coward · · Score: 0

    Not to start another emacs vs. vi flamewar, but it looks like emacs is starting to grow up, and that it is much better suited for next generation application-development than vi.

  65. Re:I just got myself some new asbestos underwear by kfg · · Score: 1

    Am I alone in wondering exactly what a "next-generation application" is anyway?

    Oh dear, I knew this question was going to come up, but I didn't expect it so soon.

    Ummmmm, ok, look, when two applications love each other very much. . .

    KFG

  66. Bonjovi by MarkEst1973 · · Score: 1

    And you know PHP is on its way out when you have experts in the field writing MVC frameworks in Java like Bonjovi.

  67. LAMP reduex by tacocat · · Score: 1, Insightful
    Linux
    Apache
    Mason:HTML
    Postgresql

    That's how I like my fire. Much more capable than MySQL or PHP.

    So who do people compare LAMP to J2EE? Because they are both application development approaches that are crawling with cheap plentiful labor. Any dweeb can set up LAMP with a minimal understanding of reliability, security, or fundamental concepts. Please do not construe this as a statement that all LAMP developers are dweebs. But the entry barrier is low.

    Similarly the entry barrier to J2EE can be artificially low because all you need is a certificate to wave around and some PHB will hire you. My work has hired a series of J2EE developer contract houses and they are without question the dumbest bunch of assholes I've ever worked with in my life. They are fundamentally clueless on how to write good code, but they are just so cheap!

    The entry barrier to Mason and Postgresql are much higher. Not because they suck, but because of what they can do and what they can't do. Once you get started it's pretty amazing what you can do.

    It's the higher entry barrier that helps insure that the developers you do get are better qualified in terms of fundamentals, security, and reliability.

    Oh yeah, PHP and J2EE are different beasts. You would be better off comparing J2EE and mod_perl variants for a more similar architecture.

    1. Re:LAMP reduex by Anonymous Coward · · Score: 0
      Similarly the entry barrier to J2EE can be artificially low because all you need is a certificate to wave around and some PHB will hire you.
      Uh, that certificate ain't easy to get...
      The entry barrier to Mason and Postgresql are much higher.
      Huh? The entry barrier to Postgresql is higher than for...J2EE? BTW, you can use Postgresql with J2EE. And Mason is based on Perl, nothing special there.
      It's the higher entry barrier that helps insure that the developers you do get are better qualified in terms of fundamentals, security, and reliability.
      Heh, by that argument employers should be looking for people who program in APL! :)
      You would be better off comparing J2EE and mod_perl variants for a more similar architecture.
      Well, by that statement you clearly have no idea what J2EE is all about. It's not just servlets and JSP. That is just one part of it. Read the J2EE specs to see what's involved.
    2. Re:LAMP reduex by tacocat · · Score: 1

      Obviously you are one of those Java People.

      Certificates only indicate that you MAY have the capability to meet the requirements requested in the certification process. But it is not gaurantee of future quality. I worked in Quality Assurance for 10 years. I know the value of a Certificate. It's merely an indication of demonstrated capability against a predefined set of requirements.

      Postgresql has a higher entry barrier than MySQL

      I have a very good idea what J2EE is all about, but to compare it to PHP is even less accurate than trying to compare it to Perl

    3. Re:LAMP reduex by Anonymous Coward · · Score: 0
      Obviously you are one of those Java People.
      What is that supposed to mean? Please deal with facts and arguments with some substance. Statements such as that just cause you to not be taken seriously.
      Certificates only indicate that you MAY have the capability to meet the requirements requested in the certification process. But it is not gaurantee of future quality. I worked in Quality Assurance for 10 years. I know the value of a Certificate. It's merely an indication of demonstrated capability against a predefined set of requirements.
      Huh? All that was stated was that a certification in Java is not easy to get, i.e. the entry barrier is fairly high. Nothing was claimed about the future quality of every person who has that certification. And, by the way, not everyone who works in J2EE has a certificate. Maybe that's the way it is where you work, but your experience is not universal. Where I work, no one, including me, has Java certification yet we are able to work in J2EE just fine.
      I have a very good idea what J2EE is all about
      Then why did you compare it to mod_perl? So far you have yet to demonstrate any understanding of what J2EE is.
    4. Re:LAMP reduex by angel'o'sphere · · Score: 1

      The correct comparision would likely be:
      Linux vs. BeOS, Windows, MacOS X, Solaris
      Apache vs. Roxen, Jakarta Tomcat, Jetty, Jo
      MySQL vs. Postgres, Oracle, DB2
      PHP/Python/Perl vs. Java

      Basically ... no J2EE in those comparisions above ... they are all on a different level.

      Probably you want to compare this: LAMP vs. LJMJ where apache is replaced by a Java Web server and Python/PHP/PERL by a JavaByteCode compiled language?

      While J2EE is used in web development, its main purpose is data applications, not Web. J2EE is a set of over 10 standards, Web is only *1* of them.

      angel'o'sphere

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  68. You're missing the point by TheConfusedOne · · Score: 2, Insightful

    The "light" part of the application is the user interface. That should always be as light as possible.

    The "heavy" part of the application is what does all of the back-end work. Database manipulation, messaging, legacy-system communication and integration, calculations, life cycle management, etc.

    The fact is that customers hardly ever know what they want when you start developing. Development is a continuous feedback cycle where you show some, get new requirements, and show some more.

    So, maybe you save a week or two of development time using one of the P's instead of good OO design and Java. What happens when they come back a month later and say can you hook in system X to this? What happens when the small system unexpectedly takes off and they need to add in 150+ more concurrent users?

    Strong design should not be looked at as an extra expense. Strong design should be looked at as future proofing.

    --
    --- I wish I could hear the soundtrack to my life. That way I'd know when to duck.
    1. Re:You're missing the point by jellomizer · · Score: 1

      What happens when they come back a month later and say can you hook in system X to this? What happens when the small system unexpectedly takes off and they need to add in 150+ more concurrent users?

      You point to the specs of the origional program and you charge them to make the fixes. And you get to eat for an other couple week. VS. Spending all this time on a strong OO Model which there is a change the customer will not come back and ask for more features (Which does happen too) And will not come back to you for more work becuse Indea is cheaper. Also the what happen if 150 users start using your system. Well you should be lucky that you are using a faster language than Java because Java is slow compared to some of the others, and if you get a faster computer or a computer that can take load better then you are all set. It is cheaper to buy a computer that is twice as fast then to make your program 10% faster for most large application.

      OO Design doesn't guarentee that your program will be scailable or easy to update. I have seen procedure based programs that are much easier to update and scale then some OO Ones. There were some programs I had to go and De OO just to make it so I can make the program scale better, Because the OO Design of the program was to ridged and inflexible. OO if done right can help but also good non-OO disign will make it work as well.

      I don't disagree with you about how usefull a good OO Model is. But unfortunatly it is not what the customers want. It is just the same as they go Why should I spend all this money for a Sun Workstation where I can get the work done on my windows box for a smaller price. You can talk about Lower TCO until you are blue in the face but they will still go with the upfront cost. Most customers can deal with paying 3 times as much to do upgrades to the origional project over the next 3 years then it will to make a good program with proper OO and everything else.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
  69. Spring Framework by Myolp · · Score: 1

    I was in a similar position a couple of months ago. Then I found Spring Framework. A very nice middleware/framework for J2EE servers. It doesn't use EJB at all and is much cleaner and easier to use. It still requires a J2EE container, but since it doesn't use any EJB it is much faster. Very impressive and saved me when I had two weeks to delivery.

    And yes, its free (as in beer).

  70. Lisp vs. C by namekuseijin · · Score: 4, Insightful

    ah, the eternal dynamic/productive/high-level/slow vs static/unproductive/low-level/fast debacle.

    Nice to see the Lisp vs C flame still going strong these days... :)

    Nice to see too both have many intelectual descendents which are very good on their own.

    And finally, nice to see that both sides of the same coin have seen such widespread adoption to this day, proof that more than one way of thinking is a good thing.

    --
    I don't feel like it...
    1. Re:Lisp vs. C by smittyoneeach · · Score: 2, Insightful

      Uhhh, I think LAMP and J2EE are both flavors of OO/procedural. All of the tools involved are based on C, directly or otherwise.
      Help me understand where the functional paradigm of Lisp enters either side...

      --
      Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
    2. Re:Lisp vs. C by namekuseijin · · Score: 1

      It's in the P part of LAMP.

      And no, it is not the functional paradigm of Lisp, it's the dynamic/static typing showdown thing over and over, Lisp (or Perl/Python) representing dynamic typing and high productivity and low performance (though no more with Lisp) and C (Java/C#) representing static, fast and low level programming paradigm.

      I thought the original post was clear enough.

      --
      I don't feel like it...
    3. Re:Lisp vs. C by Anonymous Coward · · Score: 0

      Oh, maybe, but the water is sufficiently muddy that an argument could be made if I, too, felt like it. ;)

  71. Justification for J2EE by Anonymous Coward · · Score: 0
    The problem with J2EE is you can't really understand the point of it all until you've tried to build a similar system yourself.

    We're working on a sortof big (for us) management platform. We looked at J2EE and said "Ugh, too complicated". In order to make things flexible and modular we ended up implementing a lot of the J2EE stuff ourselves (name service, home/remote bindings, deployment descriptors). Now I look back at J2EE and say "Ok, so that's what all that stuff is for". (To be honest, I'm not sure from a project-success point of view we made a mistake, since we didn't have any J2EE expertice in house, and weren't going to get any more warm bodies).

    It's sort like Corba, or History. Those who don't understand it are doomed to repeat it.

    -- ac at work

  72. Developing distributed apps is very hard with J2EE by master_p · · Score: 1, Interesting

    I've recently been involved with developing J2EE applications for our company's intranet. Well, it is very difficult to develop distributed web-based applications, simply because there are hundreds of details to take of.

    For application servers alone, one has to know the peculiarities of each application server, its custom settings, its XML schemas and option files, its architecture, what databases it supports, how it supports each database, what other persistence options there are, its directories structure, and many other minute but critical details.

    For J2EE, one has to know which framework to use, the logic behind each framework, how the framework connects to the database, how the framework is used by the application server and how compatible the two are, how the application server's persistency capabilities can work with the framework, each framework's options and configuration XML schemas, files and location of files, and many other things.

    Then, for the client part (i.e. the web page), you have to know all the tag libraries and tags, the parameters of each tag, the syntax of each tag, the attributes, the attributes' value types and ranges, the details of its usage (when you need to use its one) etc.

    And if you are gonna use a workflow engine with all that, you need to know how the workflow engine works, what persistence options the workflow engine has, the API, how to manage users (relative to the security of the application server, of the back-end databases, of the framework, of the HTTP connection and of Java), how to manage logons, how compatible the workflow is with the workflow patterns, if the workflow can run under the application server etc...

    And beyond all that, one has to know the details of the databases: if and how transactions are supported, if and how row locking is supported, if automatically generated ids are supported, if there are blobs, if there is text search into blobs, how the database separates different instances (either by user or by db name), all the differents between the SQL of one to the other, etc.

    Then there is the peculiarities of each IDE, the options available, the Java libraries to use etc.

    Well, THATS A LOT OF STUFF.

    It is a domain which is far larger than that of desktop applications, even with the same functionality. With desktop apps, all I need is how to know is the language, a few protocols like HTTP and maybe the database details. But with J2EE, the knowledge domain is far larger and much more discontinuous: there are too many details that are totally different between themselves, so it is too difficult for the individual to handle by him/herself.

    The difficulty of developing J2EE applications comes from the fact that J2EE is actually no application model, but rather a set of classes to assist towards building web/distributed apps. That is why there are so many frameworks out there (I've counted at least 31).

    Does LAMP solve all of this?

    Ultimately, the programmer shouldn't have to worry about all that stuff. After all, a web application is just like any other application: there is the view (the HTML client), the model (the database) and the controllers (the business logic). In my opinion, J2EE shouldn't have moved away from the classic MVC pattern.

    If LAMP development is easier than J2EE, that it might worth a try.

  73. stack? by period3 · · Score: 1
    Grid Application Server based on the LAMP (Linux, Apache, MySQL, PHP/Python/Perl) stack

    Sorry, but how is that a stack? It is neither a stack in the programmatic sense (LIFO), nor a layered 'stack' of protocols (TCP/IP).

    I have not heard a multi-tiered architecture referred to as a 'stack' before - is this usage common, or is the poster pulling words out of his ass?
    1. Re:stack? by easter1916 · · Score: 1

      It's true, I've noticed this too. It's become trendy lately to describe a bunch of applications thrown together as a "stack". It's annoying.

  74. Re:Mojavi by Anonymous Coward · · Score: 0

    MVC is a pattern, not a framework. You can speak of UI framework using MVC or PAC or whatever pattern.

    And no -- Java/J2EE is not on its way out. Beans? Maybe. But I really did not hear _any_ experts in the enterprise world bitching about Java and J2EE itself. Surely, no one of them ever mentioned using Python or PHP or anything like that to develop a serious system.

  75. Maybe it depends on who you talk for .. by RedLaggedTeut · · Score: 1

    which seems a bit worrying for an app that will cost a few million to develop

    Which is exactly the point. If you need to spend millions to develop a product which to your customer does little more than the "cheap" product ("Which color do you want the database to be? Pink!"), then there is no need for time consuming layers over layers of J2EE apps.

    Some information-providing thing like a forum does not need distributed transactions. I bet most of these distributed systems also fall over when actually put under stress and unusual input, just like their PHP cousins.

    Of course it would be nice if PHP grew up a bit, but people who use it don't feel the need yet.

    It's fine if you can throw millions of $ at your enterprise level solution, you will lock out competition, need more and more specialized programmers and will choose to ignore the crowd of LAMP users.

    This stuff costs money and nerves, and if your customer can pay it more power to you ;-)

    --
    I'm still trying to figure out what people mean by 'social skills' here.
    1. Re:Maybe it depends on who you talk for .. by tod_miller · · Score: 1

      J2EE and hardware costs about 1% of the TOC of an application. The cost are the rooms of people administrating, developing and testing the apps, and the phone book full of contractors pulled in to help out.

      I can imagine a LAMP contractor would be in short supply, yet an Oracle DBA, Java guru, J2EE guy would be already emplyed in your department happily running along listening to his free ipod or something new-geeky.

      Welcome to the real world. Something costing 0 doesn't costs much less than comething costing 50k in development terms.

      Commodity OS's on the desktop that people use outlook on however, can be replaced with nice linux boxes and thunderbird for no real cost overheads - because your guys should be up on all that anyway.

      So OS in its place. Development of enterprise critical applications in thier.

      I am sorry, as much of an OS touter, I say J2EE on solaris is the current app, now, they muddied the water with this grid nonesense, I will have to see... but for now it is a weak towing of the line.

      --
      #hostfile 0.0.0.0 primidi.com 0.0.0.0 www.primidi.com 0.0.0.0 radio.weblogs.com
    2. Re:Maybe it depends on who you talk for .. by tod_miller · · Score: 1

      If you need to spend millions to develop a product which to your customer does little more than the "cheap" product

      Sorry I meant proprietary solutions for large organisations.

      I think the level of software commodotisation will mean that a generic griddable-hybernate data CRUD solution with pluggable 'logic' blocks might become the status quo in the future, hang on, wasn't that the jist of J2EE? :-) Who knows! :-)

      --
      #hostfile 0.0.0.0 primidi.com 0.0.0.0 www.primidi.com 0.0.0.0 radio.weblogs.com
  76. I used to use LAMP now I prefer WebObjects by jimijon · · Score: 0

    I used to be a LAMP developer but now that I have done a very nice hosted application in WebObjects I really don't want to go back to LAMP. Until you have tried WebObjects you will not understand the beauty and productivity that is WebObjects. And, it is very cheap too! The more I read about how JAVA is trying to fix J2EE etc., with Hibernate, Struts, etc., the more it is trying to be like WebObjects. Give WebObjects a try and you too will go eureka!

    --
    Mind | Body | Spirit | Cash
  77. Two things. by xutopia · · Score: 0

    1) MySQL sucks as database. Sure it is fast but Postgresql will provide way more flexibility and power.

    2) PHP is horrible for anything large scale. It is hard to maintain code almost all the time. Java tends to be easier for that.

  78. Re:It is just as suitable for rapid prototyping.. by RedLaggedTeut · · Score: 1

    It is just as suitable for rapid prototyping as anything else if you know how to use it.

    May I suggest that it is not just as suitable if you have to prototype something that has to work with someone elses code and framework?

    --
    I'm still trying to figure out what people mean by 'social skills' here.
  79. PHP vs. Java by betelgeuse68 · · Score: 1

    Who cares... go learn some business, in the long term these debates are pointless. Companies use whatever their situation and the market dictates (vendor support, availability of personnel and other resources) to get business done. Businesses could care less about the minutiae of the respective language grammars and your ability to induct whatever semantics they afford. Hey, that's life, get used to it.

  80. Re:MOD PARENT DOWN by Anonymous Coward · · Score: 0

    nope, those are optional components, GNU isn't.

  81. Just say no to "LAMP" by huntse · · Score: 2, Insightful

    "LAMP" is marketing-speak and not a platform, and anyone posting to /. should know better. What are they really talking about? Linux (well, you could just as easily use BSD) Apache (well you could use another free webserver or an appserver like Zope) Mysql (well you could use Postgres) Php/Perl/Python (well PHP is just plain awful and there are other alternatives anyway). Firstly, mysql may be fine for small applications, but is pretty rotten as databases go. When I have used it in the past it really begins to suffer from lock starvation as you scale to more and more read and write contention. As free databases go, postgres has been superior in my experience. Really what people mean when they talk about "Lamp" is "open source n-tier architecture" or "open-source middleware with a database".

    1. Re:Just say no to "LAMP" by Tailhook · · Score: 1

      "LAMP" is marketing-speak and not a platform

      Wasn't lost on me. How could it be with a gem like this:

      What ActiveGrid is really providing is a highly tuned "text pump" to occupy the fabric/bus space in a transaction-intensive enterprise data center.

      Developing increasing impact systems for next-generation datacenter reoriented bus systems; at the same time reducing the SQL coupling through fabric abstraction! Separation of transaction distribution provides scalable impedance mismatch harmonics.

      Yadda yadda yadda

      --
      Maw! Fire up the karma burner!
  82. Re:I just got myself some new asbestos underwear by Anonymous Coward · · Score: 0

    Not to say that Java is all bad and the Ps are all perfect, but Java is a flawed language, and people are slowly waking up to this.

    What, exaxctly is flawed with Java? Is it becuse Sun will not "Open Source" it? Is it becuse it only supports single-parent inheritance? Why is it flawed?
    Having been in the corporate software development world for a good many years now, I have seen many languages come and go. When I think of all of the fads (i.e. PowerBuilder, Focus, ADA, etc.); Java seems to be one of the few which will stand the test of time (i.e. COBOL, Fortran, and RPG).
    Also: What other language can give a software developer such a wide and diverse spectrum of development? Smart cards, cell phones, PDAs, Video Games, Business Applications -- using Linux, Unix, Windows, Mainframe, Midrange, etc. etc.

  83. PHP vs Java in general question. by jshriverWVU · · Score: 1
    I love both languages and see their pro's and con's. Though I'm a little confused over this post.
    It's to create a framework of sorts for creating parallelized code right? I love PHP, but despite the myriad of bindings for it, it's still something you code in a script that executes on the fly via Apache right? Or more specifically, you can't do this from
    $bash>php myscript.php
    and run an application. If so then how can you fit running parallized (albeit computation heavy) applications via Apache or any httpd?

    Have a script call another script on a different node running apache?

    1. Re:PHP vs Java in general question. by Anonymous Coward · · Score: 0

      It's mainly the on-the-fly Apache model, but PHP has included a CLI interpreter for a while (initially so you could use it for shell scripting). People have expanded on that to let you write whole GUI programs, via GTK bindings. It's not mature, but it's possible. See http://gtk.php.net/

  84. Re:I just got myself some new asbestos underwear by boodaman · · Score: 2, Informative

    Java is flawed? How, exactly? You do mean "flawed" as in "broken", right? Or do you mean "flawed" as in "doesn't handle every possible thing that might ever need to be handled, now and forever"?

    I do know one thing...the systems my company develops and sells could never be written in a "P" language. We tried perl and PHP and both failed miserably. Java works quite well, however. So from our perspective, Java is not flawed.

  85. humm by Ambient_Developer · · Score: 1

    Everyone here should check out what we are doing with java right now (interesting)! http://www.ambientengine.info

  86. I'm being responsible... by AusG4 · · Score: 1

    I'm being responsible... I refuse to comment on this story.

    The story may have some merit, it may not.

    However, I simply refuse to enter into a conversation that has clearly, despite the ignorant "I don't want to start a flame war" prefix, turned into a flamewar.

    Everyone, be responsible. Move on... nothing to see here.

    --
    bash-3.00$ uname -a
    SunOS panda 5.10 Generic sun4u sparc SUNW,Ultra-2
  87. Re:Use Lisp [OT] by BalloonMan · · Score: 1

    Why, oh why, do I want to step into this? I dunno, it's Monday and I'm cranky, and I've used a few different languages, including LISP, in my time. Forgive me.

    when other languages improve, they almost invariably get closer to Lisp

    Except in one crucial (and rather obvious) regard: they never adapt the lexical model of LISP. It was an experiment that people have learned from. It is sad that it has taken this long for the power of dynamic languages to re-emerge in popular languages like Perl, Python, and Ruby, but better late than never.

    ...(some say LISP is short for Lots of Irritating Superfluous Parentheses). That's a valid point. In C syntax, at least there's variation. Besides parentheses there are curly braces, straight brackets, commas, semicolons, etc. Seriously, the parentheses make for a very simple and consistent syntax.

    To me, this sounds like someone trying to justify using binary numbers instead of base ten. I mean, why confuse things with ten arbitrary symbols when two are clearly sufficient? Why not go to base one and shave off another superfluous symbol?

    An overly "simple and consistent" syntax does not yield a rich expressive environment for human brains. I do respect LISP as a language, but I'll be damned if I can reliably tell the difference between a string of 8 parentheses and a string of 9 without interactive editor support, and that seriously hampers code legibility. LISP also fails its readers by imposing prefix notation for every operation. If that's how we taught math from the first grade on up, and if talked like Yoda we all did, that would be great. The language should be adapted to my mind's kinks, not vice versa.

  88. And you should talk about being sound engineer... by Anonymous Coward · · Score: 0

    Excuse me, but wanting to start a flamewar right under all you XML hacks, where do you come off with the remarks that Spring is the savior of Java. Actually where is any java in your XML engine. You aren't half as good of a software engineer as some of these LAMP guys you sorry XML Jockey.

    For goodness sacks would you XML weenies get your head out and realize that XML is just a way of doing spaghetti code!! Since it is highly structured in it's format you confuse that with highly structure in purpose or function. GET REAL.

    EJB's and J2EE is a very good spec that is matured, and is being improved so that lame idiots can even use it at some level. But the more XML you add the more inconsistent your server become.

    All you XML weenies can say is, "look it's decoupled". BS!! it is tightly coupled you are just too blind to see. If I want to add a feature or a function or a new algorithm you can't do it with XML, in java I could. Just because you don't have to recompile doesn't mean the it's decoupled. Actually if you don't write your XML correctly you will never know until you try and run the system. How much of a Kludge is that. VS. I write Java compile find a syntax error and fix, recompile cleanly, jar and deploy. There is a 99% chance my code will work, unless some XML jockey screwed up the tag .

    Now having some history with PHP and JSP, as soon as PHP can perform at a level equal to basic running on a TRS-80 then I will think it's an up and coming contender to, well, Visual Basic, and a few years later maybe it will catch up to Java. But for all you lamers...I mean Lampers (or is it Lampoons?), maybe you should learn how to program then you might understand a little more about Java. But please stop thinking just because you can write a system in 30 minutes that you are some hot shot. You systems don't scale, and you can't maintain them. Lord help you if there is a bug in your code, cause then you'll have to actually use some analytical analysis to understand the issues. (I'm sorry were those too big of words?) How about this, go to college, get a degree, listen to the instructor and don't cheat by using the internet to find some nice expert to do your homework.

  89. NetDynamics? by Anonymous Coward · · Score: 0

    I had to work with that tool once upon a time. Nightmare. Anyone remember spider classes?

  90. MySQL? by oliverthered · · Score: 1

    Not to troll, by why MySQL? and not postgres, is there still anything that mysql does better than postgres?
    Have they added support for:
    more than one concurrent connection.
    ANSIish sql syntax.
    triggers.
    object orientated data.
    etc...
    to MySQL yet?

    If so how long ago, and woudln't it be better to use a more thourerly tested database server like, umm... postgress?

    --
    thank God the internet isn't a human right.
    1. Re:MySQL? by notbob · · Score: 0

      Someone actually likes PostGres? I'm sorry... my sympathy goes with you.

      I've had to use:
      * Oracle
      * SQL Server 2k
      * PostgreSQL
      * MySQL

      All in production environments, and anything less then enterprise MySQL is by far the best, and certainly has the best command line interface of them all.

      MySQL is still king of the free databases. PostgreSQL is coolish and all but a pain to work with and just feels plain sloppy, MySQL is cutting edge and moving to better things all the time, are there any PostgreSQL developers still alive?

    2. Re:MySQL? by oliverthered · · Score: 1

      1: How is MYSql cutting edge? SQLLight is probably more cutting edge than MYSql, but even then I can still run M$ Access 97 in a ram disk using wine.

      2: I've never have problems with PostgreSQL, and the command line is at least as good as Oracle, though you were probably using toad for oracle, and than isn't oracle or command line. Try PGAdmin, it goes along the same lines as Toad.

      SQL Server is quite easy to maintain but I've had it blow more chunks than a monkey in a chocolate factory, and most SQL server installs I'e seen have been done by a less than professional DBAdmin? (like they've still left dates returning in US format, even though I live in the uk and some idiot's actually written code expecting us format).
      SQL Server is also a pain with replication and trasaction logs, and it doesn't (or at least didn't ) support sequences so you were forced to write your own table, or use the monstrosity that is autonumber.

      PostgreSQL may not be quite so feature rich (have you every used natural language query with SQL server?), but it's getting there pgpsql's ok too.

      All in all the only time I've had a problem with postgreSQL was the first couple of times I installed it and it didn't have pgpsql switch on, and when it started comming with TCP disabled by default, and I had to go and setup some default permissions.

      oh, Oracle pre 9 was a nightmare too, no support for inner joins except via where, outerjoins used that weird + syntax and that just the start of the mess.

      I don't know what kind of work you do, but I expect it's low scale web development work because from my perspective MYSQL is sloopy and it's lack of ANSI SQL is a pain.

      I've used Oracle 8, Oracle 9, SQL Server 97, and 2000 (and the one before 97 for a while), Access 95 and 2000 and reverse engenireed the db format, SQLLite, infomix, itrabase, MySQL, Lotus notes (if that counts) and more weird ODBC connection that you could imagine.

      Personally if you said write something using MySQL I would tell you that your requirements and specification wouldn't support continued growth and development and download PostgreSQL.

      --
      thank God the internet isn't a human right.
    3. Re:MySQL? by notbob · · Score: 0

      MySQL is under constant development and I've used oracle's garbage command line interfaces. MySQL is very clean on the command line and perfectly usable for daily usage, PostgreSQL felt old and kludgey kinda like Oracle. Simple tasks were made difficult.

      Oracle is stable, Oracle is pricey & bloated for 98% of the apps out there.

      MySQL requires due diligence to make sure you don't do dumb things like violate the invisible constraints but thats a requirement of developers not being morons. However it makes backups and reloading tables a breeze, admin is easy as pie. Speed is great.

    4. Re:MySQL? by oliverthered · · Score: 1

      ----postgres---
      <i>
      bash-2.05b# psql
      Welcome to psql 7.4.6, the PostgreSQL interactive terminal.

      Type: \copyright for distribution terms
      \h for help with SQL commands
      \? for help on internal slash commands
      \g or terminate with semicolon to execute query
      \q to quit

      root=# \h
      Available help:
      ABORT CREATE LANGUAGE DROP TYPE
      ALTER AGGREGATE CREATE OPERATOR CLASS DROP USER
      ALTER CONVERSION CREATE OPERATOR DROP VIEW
      ALTER DATABASE CREATE RULE END
      ALTER DOMAIN CREATE SCHEMA EXECUTE
      ALTER FUNCTION CREATE SEQUENCE EXPLAIN
      ALTER GROUP CREATE TABLE FETCH
      ALTER LANGUAGE CREATE TABLE AS GRANT
      ALTER OPERATOR CLASS CREATE TRIGGER INSERT
      ALTER SCHEMA CREATE TYPE LISTEN
      ALTER SEQUENCE CREATE USER LOAD
      ALTER TABLE CREATE VIEW LOCK
      ALTER TRIGGER DEALLOCATE MOVE
      ALTER USER DECLARE NOTIFY
      ANALYZE DELETE PREPARE
      BEGIN DROP AGGREGATE REINDEX
      CHECKPOINT DROP CAST RESET
      CLOSE DROP CONVERSION REVOKE
      CLUSTER DROP DATABASE ROLLBACK
      COMMENT DROP DOMAIN SELECT
      COMMIT DROP FUNCTION SELECT INTO
      COPY DROP GROUP SET
      CREATE AGGREGATE DROP INDEX SET CONSTRAINTS
      CREATE CAST DROP LANGUAGE SET SESSION AUTHORIZATION
      CREATE CONSTRAINT TRIGGER DROP OPERATOR CLASS SET TRANSACTION
      CREATE CONVERSION DROP OPERATOR SHOW
      CREATE DATABASE DROP RULE START TRANSACTION
      CREATE DOMAIN DROP SCHEMA TRUNCATE
      CREATE FUNCTION DROP SEQUENCE UNLISTEN
      CREATE GROUP DROP TABLE UPDATE
      CREATE INDEX DROP TRIGGER VACUUM
      </i>

      Like it's reall easy to use postgres from the command line, just type in SQL.

      --mysql ---
      <i>
      bash-2.05b# mysql
      Welcome to the MySQL monitor. Commands end with ; or \g.
      Your MySQL connection id is 2 to server version: 4.0.20

      Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

      mysql> \h

      For the complete MySQL Manual online visit:
      http://www.mysql.com/documentation

      For info on technical support from MySQL developers visit:
      http://www.mysql.com/support

      For info on MySQL books, utilities, consultants, etc. visit:
      http://www.mysql.com/portal

      List of all MySQL commands:
      (Commands must appear first on line and end with ';')

      help (\h) Display this help.
      ? (\?) Synonym for `help'.
      clear (\c) Clear command.
      connect (\r) Reconnect to the server. Optional arguments are db and host.
      edit (\e) Edit command with $EDITOR.
      ego (\G) Send command to mysql server, display result vertically.
      exit (\q) Exit mysql. Same as quit.
      go (\g) Send command to mysql server.
      nopager (\n) Disable pager, print to stdout.
      notee (\t) Don't write into outfile.
      pager (\P) Set PAGER [to_pager]. Print the query results via PAGER.
      print (\p) Print current command.
      prompt (\R) Change your mysql prompt.
      quit (\q) Quit mysql.
      rehash (\#) Rebuild completion hash.
      source (\.) Execute a SQL script file. Takes a file name as an argument.
      status (\s) Get status information from the server.
      system (\!) Execute a system shell command.
      tee (\T) Set outfile [to_outfile]. Append everything into given outfile.
      use (\u) Use another database. Takes database name as argument.

      Connection id: 2 (Can be used with mysqladmin kill)
      </i>

      Umm.... what next.... umm....

      Are you sure you've used postgres?

      --
      thank God the internet isn't a human right.
  91. Whats wrong with Emacs? by Billly+Gates · · Score: 0, Troll

    Supports everything I need but comes with a shitty editor.

    1. Re:Whats wrong with Emacs? by betelgeuse68 · · Score: 1

      There's nothing wrong with EMACS. It works fine with dumb terminals and over a serial line and its interface was designed as such... you obviously don't know much about EMACS.

  92. LAMPX by oliverthered · · Score: 1

    Call it LAMPX and I'll help start the port.
    X because all data streams are in XML and XSLT is used to transform data streams.

    --
    thank God the internet isn't a human right.
  93. Re:And you should talk about being sound engineer. by JavaSavant · · Score: 2, Insightful

    Lots of flames here, but through the burning embers I just want to point out that using Hibernate and Spring is not supposed to be an excuse to use XML - it just so happens that XML is the glue that these packages use to do their work. I personally could care less if it were a binary format or a CSV file. Love it or hate it, .net uses a lot of XML metadata as well. Arguably in the Java community, XML probably gets a worse wrap simply because it doesn't have the tools that .net does to obsfucate the XML glue from the developer as they desire. XDoclet and AOP is a step in the right direction. I can definitely empathize with your complaints about XML from a Java background. But I think when looking at Spring, Hibernate, Struts, or any Java tool that uses XML metadata for configuration/persistence of application state - that unless you are looking to do some serious hacking of the package that would require that you denature the glue it uses, blissful ignorance is probably beneficial. The aforementioned packages work as advertised by their development teams - even if they do use XML.

  94. A module isn't always a module by TheConfusedOne · · Score: 1

    The fact that you can take ANY code snippet and put it into a "module" doesn't really get you anything.

    You can create a Perl "module" that is simply one piece of code you call a ton of times. You can do the same with JavaScript too.

    You can also really create a perl Module that can be invoked and used by bunches of other Perl code. The reason for the stricter Module is that it has rules for being incoporated into Perl and should provide strict type-checking, input validation, and error handling.

    This is where the real Module idea comes in. It's not OO "hype" it's as you said good coding practice. It also means that you have to think of a module as a Module and have public, protected, and private sections in it and do real checking and error handling.

    Yeah it's more work, but it makes it work.

    --
    --- I wish I could hear the soundtrack to my life. That way I'd know when to duck.
    1. Re:A module isn't always a module by Shawarma · · Score: 1

      It took me about this long to figure out, what you were trying to tell me and I'm still not totally sure..

      If what you're saying is that you want something where you can differentiate between something you refer to as "public", "protected" and "private" stuff, then yes, you're probably stuck with Java.

      If however, you're willing to compromise and get the EXACT same thing but you have to call it e.g. "static" instead of "private", you might find that other languages and paradigms support this as well. Any non-braindead langauge (and even Java) support some degree of scoping.

      Open yOOr eyes, man.

      --
      Parse error: parse error, unexpected T_ELSEIF in /var/www/slashdot.org/comments.php
  95. Just tools, use them accordingly by AwesomeJT · · Score: 5, Interesting
    I use all of the above technologies, depending on the needs and what I am trying to do.

    For large scale projects, I use Java. It is great Object oriented language that I can use to the fullest extent. I can get very close to that MVC pattern that is soo useful in large-scale projects. I don't use EJBs -- not needed them yet. I use the JMS, WebServices, JSP/Servlets, etc. We connect to a real database (DB2). J2EE offers a completely different scale with work with. You can do everything from simple web applications to clustered app servers at several levels.

    For smaller stuff, I like LAMP fairly well. It is simple and easy to get started, although not great for larger projects (code reuse, management, scaleability). MySQL, again, nice and fast for small stuff. I perfer PostgreSQL because of the power and flexibility. I'm trying to move more towards PostgreSQL especially after recent changes in licensing with MySQL. For these projects in general, I like PHP over Perl for webpages. Perl is still great for admin tools on the console or for confusing the heck out of folks not familiar with your code. PHP is simple and made for website based applications. Again, I'm not going down that path if I know it will grow into a huge project.

    The deal is, they are tools. The both have their strengths and weaknesses. Evaluate your needs, and choose the best tool for the job. I use both and love both -- but choose wisely.

    --
    SPAM solution made easy: 1 spammer, 5 cords of rope, 5 hourses, and fireworks. Be creative.
  96. Re:And you should talk about being sound engineer. by Anonymous Coward · · Score: 0

    blah, blah, blah! Don't you proof-read before posting?

  97. Free? by flu1d · · Score: 1

    I want a decent middle ware, that is cross platform, fast, and well documented, free as in beer (and preferably as in speech also).

    That's Java.


    You're right! its so nice that if I need to add any feature to the JRE that all I have to do is pull up the source code and start changing what I want. No... wait...

    1. Re:Free? by Doctor+Memory · · Score: 2, Informative

      He said free as in beer. JREs for all major platforms are available for the downloading (either from Sun or the OS vendor).

      OTOH, if you really want to add features to the JRE, there's no stopping you from extracting a class from rt.jar and replacing it with one you wrote. If you're really clever, you can even get a bytecode editor, change the name of the original class, then writing a new class with the original name that extends the original class, and only adds the new features you want...

      --
      Just junk food for thought...
    2. Re:Free? by coyote-san · · Score: 2, Informative

      I'm struggling to think of any reason why you would want to modify the JRE. That's comparable to hacking the gcc compiler or C library to add a new feature. It might solve a local problem, but will introduce numerous global ones.

      JNI is more than adequate if you only need to access external libraries.

      Language extensions could be handled by the C/C++ model - write a tool that compiles your "j++" code into standard java and then compile that.

      --
      For every complex problem there is an answer that is clear, simple, and wrong. -- H L Mencken
    3. Re:Free? by flu1d · · Score: 1

      My mistake on the Free part (Monday and reading dont realy work well) RTFP to me :)

    4. Re:Free? by flu1d · · Score: 1

      Mostley bug fixes and backwards compatibility issues that either Sun is moving slowly on or has no intentions to do.

    5. Re:Free? by ChristTrekker · · Score: 1
      JREs for all major platforms are available

      But some of us use minor platforms. It would be great if Java was open source. I know that projects like Kaffe are trying to produce a clean-room implementation of Java, but they have a way to go.

    6. Re:Free? by the-build-chicken · · Score: 1


      actually, you can do that quite easily...check out the technology that aspectj was built on. AspectJ is a prime example of needed to extend that basic language functionality while adhering to the bytecode contract. Anyone who thinks they need to extend the interpreter (and change the byte code contract) has no idea what java is for...without a set byte code contract, you have no standard cross platform VM.

      Go read the developer docs over at AspectJ, I forget the name (can anyone help me out?) of the framework it was build on, but it allows you to completely rework the java language introducing your own objects and syntax...and I'm guessing if you can pull off something as complex as AspectJ with it without needing to change the byte code format, then it'll probably handle whatever changes you need to make.

      Unless of course, your objection is about the 'ability' to change rather than the 'need' to change...which is kind of like two kids arguing that if they happened to have an ice cream, who would get to eat it...kind of a redundant point IMHO.

    7. Re:Free? by Doctor+Memory · · Score: 1

      Yes, as a fellow minor platform user myself, I've often wished I could just grab the source and build it myself. It's possible to run Java apps on my system, but they run in Linux compatability mode, which means the classpath is all wacky (paths all relative to root of emulated Linux system, not to real root, etc.)

      --
      Just junk food for thought...
    8. Re:Free? by ChristTrekker · · Score: 1

      Exactly. I was thinking of NetBSD myself, and I am even on minority hardware, so I don't even have the Linux emulation option. I'm hopeful for Kaffe, but I'm not holding my breath.

  98. Re:Developing distributed apps is very hard with J by TheLink · · Score: 2, Interesting

    Java is useful if you intend to treat most developers like lego blocks.

    Example scenario: you have one main guru programmer who writes the program in Human Language (e.g. English). And you have the other much cheaper developers (in-house or off-shore) who compile that to Java. After that the guru programmer(s) can move on to other stuff whilst the interchangeable and cheap programmers maintain it.

    You appear to NEED a fair sized team for lots of Java stuff, which if done in some other language can be done by just one to three people. This can be considered a minus or a plus. Coz in many organizations if you are a Boss of 20 people, you outrank a Boss of 3 people (and probably get paid more too) - which is why MS has its uses ;).

    I find Java stuff to have a lot of "make-work" stuff. You need all these layers and layers of stuff because you have all these layers and layers of other stuff. And often these layers and layers of stuff _don't_help_very_much_ - diminishing returns. Sure it is more "organized", but now you have to change 3 different files to make one change, or something like that (e.g. code, data, metadata) .

    Whereas the LAMP style stuff is relatively simple - O/S, Webserver, Database, Programming Language. So what if it isn't N-Tier, or have "Enterprise Java Beans" or have built-in caching or some other buzzword, very often you don't need that stuff - you run out of bandwidth, or hit some other limit first. If you keep things simple you can often easily scale the webservers (and appservers) horizontally (keep adding them). So the bottleneck is usually the DB, and there are many known solutions for that.

    You probably end up with similar scaling limits with a Java solution anyway (except the Java solution typically has more layers, complexity and work).

    The disadvantage of the LAMP stuff is while you only need a very small team (of one sometimes), since after all the guru programmer codes most of it; the problem is if the guru programmer gets bored or wants to do something else, you have a problem - who's there to maintain it? The "lego brick" programmers may not be able to handle the job. So you need to get another guru programmer who costs as much and is just as likely to get bored.

    The lego brick Java programmers don't seem to get bored maybe because they get the feeling of satisfaction coz they are definitely doing lots of work and achieving a "lot" - (remember there are lots of layers to glue together- N-tier ;) ). Or they don't care - it's just a job after all - that's what they got the java certification for.

    Last but not least of all - it may not even matter at all whether you go LAMP or J2EE.

    Coz amongst the most important bunch on the team are the graphic design/art people. It doesn't matter to the client or PHB how cruddy the architecture is - if the software _looks_ great, you are more than 50% done. It doesn't matter if your architecture handles up to 1000 transactions a second on an el-cheapo dell server, and scales very well. If the widgets look ugly you're unlikely to win the project.

    After all not many can tell whether a software/system architecture is ugly or not. Whereas very many can agree and tell you immediately that a widget/icon/colour/layout is ugly. And that includes the people in charge of approving stuff.

    --
  99. MySQL no place? It has many places... by tizzyD · · Score: 3, Insightful

    Just like you don't use Oracle to handle a simple little db holding some responses to a recent questionnaire or for a quick little conference, I would not use MySQL for a big data warehouse or SAP deployment. Silly db admins have gotten it into their head that DBs at all levels should be compared equally. That is simply not true. Use what's appropriate where it's appropriate. Don't use C for a quick data analysis tool (try Excel first), and don't develop full enterprise apps using cobbled together MS-Office solutions.

    --
    ...tizzyd
  100. Use what is best for what you need by Anonymous Coward · · Score: 0

    I work for a small (lt 1500 employees) non-tech (real estate management) company. They needed a developer to build a web-based front-end to a database. Small, fast, and _now_ were the requirements. I used PHP.

    I used to work for a slightly larger (gt 5000) researh firm. They needed a cross-department application to handle account transactions on a large cluster. Robust, maintainable, and within the next year or so were the requirement. I worked on a team to build a Java-based solution.

    Bottom line: use what's best for the job at hand. There's no use tying yourself to a particular platform or a particular method. I may be young at this, but I think I've learned by now that good development practices carry over no matter what OS, webserver, database, or language you are using.

    Use what you need to get the job done. There's enough religion in the world. We don't need it in IT.

  101. Scalability by orasio · · Score: 1

    While it's nice to have a single server solution, a scalable two-server solution that performed just as slow as the first, is a more sensible choice, because you can always add more hardware when you need it, with no re-programming and little re-configuring.
    Remember, hardware is cheap, labor is not, even where I live, with 4$/hour IT people.

  102. just so nobody gets confused by Craig+Ringer · · Score: 1

    Python is a dynamically typed, strongly typed language. This in contrast to C, a weakly typed statically typed language, or Java, a strongly typed statically typed PITA^Wlanguage.

  103. PHP dabase APIs by lamber45 · · Score: 1
    It's true that, unlike in Java (JDBC) or Perl (DBI), the most-common idiom for database development in PHP uses database-specific function-calls. However, porting an application to a different database often requires rewriting code anyway, and a lot of the functions are so similar that one could make the change with search-and-replace; look at these pages in the PHP documentation:
  104. That's cute, kid... by Anonymous Coward · · Score: 0

    ...now, go write yourself another LAMP blog tool. I have work to do.

  105. tests and static checkers by Craig+Ringer · · Score: 1

    The general argument is that external static checkers can do a better job than the compiler, and can be implemented for any language - including Python. The other part is test-driven development - your unit tests will catch faults the compiler won't, and relying on the compiler to catch your errors for you may well be unsafe because it only catches a small class of errors.

    Myself, I think that's reasonable, but there's also value in static typing. Python looks like it'll be getting optional type checks for function calls eventually, and I'll definitely like that.

    The main large, successful Python code base that comes to mind is Zope/Plone. It certainly works :-)

    As for Perl and PHP, I frankly think both are a different class. Python is a real language, though it can and often is used for scripting. PHP is a web scripting language, and does its job well - but IMO not much else. PHP5 looks a bit more like a real language, but not enough for me. As for Perl ... people write large tools / apps in Perl. Whether this as such works is something I don't care to argue.

    I do think Python has real validity for large projects. Even if you prefer to implement in C# or Java, Python can let you prototype and redesign it much faster. Once you have your prototype ready, you can code it up in C# or Java with much less pain caused by unexpected changes, refactoring, etc. In fact, with Jython you can even have a runnable app that's half written in Java and half in Python. The same may soon be true in C# with IronPython.

    By choice, that's how I'd go. Prototype in Python, and as/if/when necessary translate to C#/Java.

    I've used Python for a number of "large scripts" - small applications - and found it to work very well. Perl, on the other hand, has made me regret everything I've ever written in it, and PHP hasn't been all that much better. With Python I've had excellent results using tests and static checking.

    1. Re:tests and static checkers by Tassach · · Score: 1

      My only experience working with a non-trivial Python-based application was GNU Mailman, which is (IMHO) a bloated monstrosity. Now, I'll be the first to admit that you can't judge the merits of a language based on one application -- particuarly if that application is poorly engineered to start with. However, having seen Mailman in action, sucking up over 300M of RAM and spawning a half-dozen instances of the virtual machine in the course of processing a small low-volume mailing list, I'm very reluctant to start using Python for my own projects.

      --
      Why is it that the proponents of "one nation under God" are so eager to get rid of "liberty and justice for all"?
    2. Re:tests and static checkers by Craig+Ringer · · Score: 1

      Yeah, mailman is 'interesting'.

      A better example might be Zope. Memory hungry - yes. Slow - yeah, a bit. Absurdly powerful, also yes.

      Personally, I think language choice depends a lot on the project. I've used C++ for some projects, Python for others. So far, I'm finding I get massively more done with Python (which I'm admittedly more experienced with), and write code that's less buggy and easier to maintain. In general, I've had no performance issues, and when I do they've been pretty easy to optimize away with a quick profiler run.

      Of course, YYMV.

  106. Re:I just got myself some new asbestos underwear by metlin · · Score: 1

    Arghhh!

    -h-e-l-p-

    What if the applications are gay, though?

  107. Static type checking by Craig+Ringer · · Score: 1

    Agreed - I've found static type checking more of a frustrating hinderance than a help in C++. I can't speak for C#, which is still on my to-learn list, or Java, which I've learned just enough of to know I don't want to use it in most of my apps.

    To my mind, static type checking encourages the dangerous assuption that 'if it compiles it'll work'. Compilers only do a tiny subset of the static checking they could, and do so in a very myopic way. I favour the use of a full-fledged static checker that can view the entire codebase, and a good set of tests instead.

    That's not to say that static typing done right (which C# may well be) isn't useful, it's just to me it's only a half measure that I can live without. I'll be writing my tests no matter what language I use.

    To the OP of this subthread: I think you'll find that good Python programmers are in many cases far more pedantic than C++ or maybe (again, I lack the experience to know) C# programmers. Of course, Python does give you more rope to hang yourself with if you feel the need - but then in a way so does C++, given the pain of refactoring a bad design.

  108. I wish you luck by SmallFurryCreature · · Score: 1
    There are two kind of projects for developers. Small budget limited web sites and gigantic mission critical database applications.

    I worked on both. Or rather I was somewhat involved in 2 mission critical application including full databases and a whole lot of small internal and external websites.

    So far the money/fun/job security/supply of work have all been better for the small tiny jobs.

    I am getting sick and tired of every idiot like you who thinks IT is always the big jobs. The people on the ground, you the sales people and other office grinders who you are there to support are often best served with small websites that help them do 1 task a lot faster.

    Recently I have worked on several jobs that reduced several man years for departments at a cost of a week of my salery. You couldn't even buy a database license for that.

    Not everything requires transactions. In fact I have been able to upgrade the speed on many a mission critical app by simply switching off unneeded safe guards. Transactions are only needed if it can fail. If it can't or it doens't matter then don't bother.

    Many internal apps are nothing more then getting pieces of data out of several sources, combining them and displaying them. Exactly wich part requires transactions?

    If you never worked in a business were they had two systems wich didn't talk to each other yet data from both was needed for daily business needs then you either work in heaven or you never bothered about the real business needs of your employer. I see them a lot. You got on your resume "developed large account system for X" I got on my resume "saved company X 3 fulltime salaries in 1 week". Sad thing? You are probably easier employed then me. IT likes big spending.

    --

    MMO Quests are like orgasms:

    You may solo them, I prefer them in a group.

  109. Just read the sig by SmallFurryCreature · · Score: 1

    and you know you are wrong :)

    --

    MMO Quests are like orgasms:

    You may solo them, I prefer them in a group.

  110. Python and IronPython by Craig+Ringer · · Score: 1

    Personally, I'm placing my hopes on Python and IronPython. Python, because while a very far from perfect language it's heading in the right direction - OOP without the overly formalised pain, flexible enough to use functional ideas too, etc.

    IronPython should be interesting because it should make it easier to use the entire .NET library base from Python, integrate Python even more easily into larger projects, and make Python even more able to call out to other languages to accomplish things better done in them (such as R for stats, or Haskell for hardcore functional code).

    I, too, have seen more real "enterpreise" work actually get done with older languages - in my case a really scary 1983 4GL called Plain English - than with most "modern" languages.

  111. Common Lisp is faster than Java by Anonymous Coward · · Score: 0

    But it's really "the eternal dynamic/productive/high-level/faster (LISP) vs static/unproductive/low-level/slower (Java) debacle."

    References: Lisp as an Alternative to Java[HTML] or Lisp as an Alternative to Java[PDF]

    1. Re:Common Lisp is faster than Java by namekuseijin · · Score: 1

      I was aware of that paper.

      But i was talking about Lisp of old, as opposed to C.

      Still, i don't think it's fair to compare ahead-of-time compiled Lisp performance with JITted Java code. Yep, despite all the hype about JIT and optimizing compilers in theory able to produce faster code on-the-fly than any traditional compiler, the fact is that for that to work you should discount the time taken for the compilation of methods, which is then already compiled to native code and used thereupon. Problem is: Java has such a huge framework of classes that you're most likely always seeing new ones being compiled at any given time. Not to mention memory taken...

      I'm afraid JITted code to be as fast as traditional compiled code is just an urban legend propagated by some large companies to make PHBs happy...

      --
      I don't feel like it...
  112. XDoclet, hibernate and jboss by coyote-san · · Score: 1

    Don't forget XDoclet. Add a few comments and a few templates and your POJO will create its own access layer. This could be anything from a simple DAO to a EJB.

    Something else that's been overlooked - hibernate is not only compatible with jboss, it's actually funded by it now. The idea is that hibernate handles local storage and jboss wraps it with an EJB layer. If you're small enough to run everything locally you should be able to use XDoclet to create trivial "pass-through" EJB classes. It's then a trivial matter to switch to JBoss as your needs grow.

    --
    For every complex problem there is an answer that is clear, simple, and wrong. -- H L Mencken
  113. Mod Rodney King post above down: by Anonymous Coward · · Score: 0
    Mod down the "Why can't we just get along." Rodney King post above:

    Anyone with experience realizes that, if you use J2EE, you're too busy to learn anything else, especially all of LAMP. Nobody uses both and STILL knows them both.

    1. Re:Mod Rodney King post above down: by AwesomeJT · · Score: 1
      Anyone with experience realizes that, if you use J2EE, you're too busy to learn anything else, especially all of LAMP. Nobody uses both and STILL knows them both.
      Gosh, you make it sound like LAMP and/or J2EE is somehow difficult to use/learn. I have not found this to be the case. Of course, I've been doing LAMP for at least 6 years and J2EE for 4 years. And, I consider myself always learning, but this is with any language/tool. I see a language as a tool -- just a tool. If you put too much stock in the favorite language of the day, then you'll be out of a job tomorrow. Instead, learn programming theory, patterns, OO concepts, and then pick up languages as you go. I originally started with dBase, VB, and Delphi -- I haven't touched any of them in years. My current toolbox is filled with Java (and related technologies), LAMP, and standard web stuff (HTML, CSS, XML, etc).

      Not only do I have enough time to know enough about both to know when to use them, but I also have time to post on slashdot!

      Help to modders: -1 reply to flame, +1 for interesting = net 0

      --
      SPAM solution made easy: 1 spammer, 5 cords of rope, 5 hourses, and fireworks. Be creative.
  114. Re:And you should talk about being sound engineer. by Anonymous Coward · · Score: 0

    If I want to add a feature or a function or a new algorithm you can't do it with XML, in java I could.

    Do you even know what you're talking about?

  115. OO "paradigm"s: road kill for rule-based systems by Anonymous Coward · · Score: 0
    If you haven't properly separated out all of the portions of your code then when they come back and say "can you give us these two functions running on PDA's?" you're gonna be SOL.

    (I spent a year building a system and they promised to transition one of the back-end systems to a whole new platform by the end of the job. They never succeeded but we developed against the old system and the new so it didn't slow us down one bit. THAT'S why you take the time to do OO work.)
    What happens when your object hierarchy must be drastically changed, e.g., departments or companies merge? Your brittle OO implementation must be replaced and, in the worst case, both companies must develop a new (third) OO implementation.

    Had you used a logical rule-based system, not only would there be no RDBMS impedance mismatch, but the changes could be implemented by merely resolving the rule sets of the two systems.

  116. Just hit the books. by hummassa · · Score: 1

    really. I don't have the uris now, but google plone developer book...

    --
    It's better to be the foot on the boot than the face on the pavement. ~~ tkx Kadin2048
    1. Re:Just hit the books. by Anonymous Coward · · Score: 0
  117. Silly-Tiny URL. by Anonymous Coward · · Score: 0

    They could do that or do what Tiny URL does internally.

    BTW The URL: tag does insert spaces.

  118. Where the hell is PostgreSQL?!?! by jbwiv · · Score: 1

    Guys,

    I thought we had all finally agreed that LAMP=Linux+Apache+MySql+Python/Perl/PHP/ PostgreSQL !?!?!

    It's extremenly frustrating that PostgreSQL is continually left out of technologies such as this. It's a mature, stable alternative and is (IMHO) the best open source database option out there.

    MySQL only beats it in the marketing department. Judging by the results (and those on the part of a certain Redmond company), perhaps marketing is more important than a quality product anyway.

    sigh...

  119. Use Smalltalk by Anonymous Coward · · Score: 0

    I use Seaside with VisualWorks Smalltalk

    You'll note their website is a smalltalk web server.

    "Why does nobody use it? Fear, uncertainty and doubt. People think it died with AI. People think its old, so it won't be up to modern tasks. People can't get over the parentheses. The boss won't approve it. Nobody else uses it, so it's hard to get support. Any number of reasons."

    The intelligence community uses Lisp.

  120. Re:I just got myself some new asbestos underwear by kfg · · Score: 1

    What if the applications are gay, though?

    Infiltrate, recruit and employ surrogates, of course. Not that I'd trust a gay application in my box, they probably have a viruses.

    (Do I *really* have to use extreme sarcasm tags on the above?)

    Ok, to take your initial question somewhat seriously (although I refuse to refrain from being sardonic), a "next generation" application is the next piece of crap we're going to write that we'll tout as being the saviour of mankind (and probably the dolphins as well), to replace that last piece of crap we wrote and touted as being the saviour of mankind (and the dolphins, of course), but will now tout as being a tool of the devil that will only bring pain and sorrow to cute kittens if you refuse to upgrade.

    KFG

  121. No, its not close enough. by Anonymous Coward · · Score: 0

    If java were "close enough" to open source I would be able to use it. But, since its locked up with an abnoxious license, there is no freebsd/amd64 jdk. C, C++, python, perl, ruby, php, ocaml and more are readily available to me, but java is not. I can use IBMs jikes compiler to compile java, but I have nowhere to run it. Hooray for java's wonderful portability.

  122. Re:I just got myself some new asbestos underwear by ph1ll · · Score: 2, Insightful
    Java ... forces you into an object-oriented paradigm, has static typing, and doesn't lend itself well for rapid prototyping and development.

    And these are bad things?

    • OO is generally considered a good thing.
    • type safety is generally considered a good thing
    • Rapid prototypes rarely get thrown away. Generally, if management like what they see they say "continue building".

    I do agree with you, however, that PERL (the only P language I have experience with) is great for quick applications. But there is no way on G-d's Earth I would use it for enterprise (50 000+ LoC) worthy applications. I'll stick with Java.

    But that's just my opinion...

    --
    --- "We've always been at war with Eastasia."
  123. "Application Servers(AS)" is a Marketing Ploy... by Anonymous Coward · · Score: 0
    targeted at managers uneducated in the technical aspects of the WWW. It seems there is an infinite pool of ignorant IT managers willing to buy yet another unnecessary layer of technology.

    The author of the article speaks of how applications servers "solve the big corporate impedance mismatch and arbitrate connections to overwhelmed back-end resources".
    I have news for him:

    • the "impedance mismatch" lies much deeper in infrastructure than at the server level,
    • application servers are an unnecessary invention necessity, and arose from companies (e.g., Cold Fusion, IBM, Sybase) who failed to successfully market web servers and development languages against LAMP and IIS and who needed a new marketing gimmick.

    Those companies relabelled their products as "Application Servers" and went on to sell their products to that deep pool of IT fools to which I refer above.
  124. The problem with rails... by Anonymous Coward · · Score: 0

    Is the performance. Admittedly, its still very young, but its really slow, and is quite a memory hog. Maybe when they make some attempts at cleaning up the code and making it more effecient it will be good, but right now its not useful. What good is making a web app quickly if it can't be used because its so slow and bloated?

    1. Re:The problem with rails... by Ian+Bicking · · Score: 1

      Were you running it under CGI? That's not how it's meant to be deployed, that's just a convenient way to get started; mod_ruby would be appropriate for deployment. I haven't used it, but my experience with Python web programming has shown little in the way of performance problems, and Python and Ruby have similar performance.

    2. Re:The problem with rails... by Anonymous Coward · · Score: 0

      No, I run it under mod_ruby. My comparison for speed and memory usage is against plain old mod_ruby with code written from scratch, instead of using the rails framework. Its not that ruby is slow, its just the rails framework is a big, slow, monolithic heap of code. A couple of people in IRC "think" that "maybe" using fcgi instead of mod_ruby will make it use a little less RAM, but I haven't tried yet, I am sticking with my own ruby classes for now.

  125. Point me to a fast Zope site by SuperKendall · · Score: 2, Interesting

    All of those are nice, but when I was looking around at solutions for a kind of document management solution, I found all of the Zope sites I tried were kind of sluggish. If your main goal is to satisfy customers then response time has got to be a factor.

    Java has everything you listed, and multiple frameworks to boot - if your J2EE people are so far behind, perhaps they should just be writing servlets, or using Tapestry or Spring or IDE's that help you put together standard J2EE components more quickly.

    Plenty of people in the Java worls are doing just fine with Agile development practices, thanks - Zope has no exclusivity there.

    In the end for my own project I'm using Nukes on JBoss.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  126. Tastes great! by SuperKendall · · Score: 1

    Less smelling!

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  127. J2EE is Enterprise Grade Software - LAMP is not by Listen+Up · · Score: 1

    J2EE is what our nationwide corporation runs for all of its back-end and front-end enterprise applications. J2EE is highly robust, scalable, and reliable platform that has the extremely valuable benefit of allowing a multitude of different clients and systems to interact without a hitch. LAMP is meant for cute personal websites. The person who posted this article doesn't have a damn clue what he is talking about at all.

  128. The eternal response by SuperKendall · · Score: 1

    But Emacs has a VI emulator and is therefore a superset. :-)

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  129. Use Lisp [OT]-Math order. by Anonymous Coward · · Score: 1, Interesting

    "LISP also fails its readers by imposing prefix notation for every operation. If that's how we taught math from the first grade on up, and if talked like Yoda we all did, that would be great."

    We do. You just don't recognize it.

    You're given operand, operand, operator.

    The stacking form in which grade school examples are given doesn't make this obvious, but that's the way the eyes and brain do it.

    1. Re:Use Lisp [OT]-Math order. by Anonymous Coward · · Score: 0

      You're given operand, operand, operator.

      I believe what you're describing here is postfix notation (or reverse-polish-notation). What the parent was referring to was prefix notation which would be of the type:

      operator, operand, operand.

      As an aside, prefix notation and parentheses are two of the keys of why Lisp is so powerful and why other languages will only duplicate some of the power, but never reach the full potential ... unless they morph into Lisp.

  130. Interesting Open Source platform beyond LAMP by randall_burns · · Score: 1

    Rails is another interesting Open Source database development platform-but it isn't strictly "LAMP"(uses Ruby instead of Perl/Python/PHP-though I suspect we'll see a Python version soon).
    My favorite line in the article:
    "J2EE as a fear-driven technology choice made by higher powers"

  131. None of that matters by Anonymous Coward · · Score: 1, Interesting

    Zope is too slow to be useful, it REQUIRES you to run an http accelerator in front of it to be even mildly useful. But even then, every dynamic page still has to be requested from zope, which is insanely slow. Using squid and zope makes an iffy, not quite right solution, requiring stupid hacks to get zope to see the IP correctly, and ends up still being slower than just plain old apache+php, nevermind something fast like resin.

  132. WebObjects Cocoa::Apple should re-release by tyrione · · Score: 2

    Seeing all this about this kicks ass over this rhetoric it is too bad Apple decided to curtail the original WebObjects into Java and not provide WebObjects ObjC and the full-power of EOF and all the extensive frameworks.

    Hopefully, they'll release it and rejuvenate their Enteprise presence, but who knows.

  133. What? by daem0n1x · · Score: 1

    This is a joke, right?
    But it's not even the 1st of April!

  134. Oh please, enlighten us by michael.teter · · Score: 1

    What important stuff does it lack?

    And you assume that all database needs in the enterprise are the same?

    Sure there are situations where MySQL isn't the best (in the enterprise), but there are many situations (in the same enterprise) where MySQL would excel.

    You know, I was about to continue my arguments, but I've just hopped over to your blog. I can see I would be talking to a wall. You have your opinions formed, and they're as solid as fact I'm sure.

    --
    /Not for internal use/
    1. Re:Oh please, enlighten us by drew · · Score: 1

      well, for one thing, it lacks basic data integrity.

      while it's a bit of an exageration to say that MySQL has no place in the enterprise, i would say that it certainly has no place storing data that you would not mind losing or cannot easily restore from backup.

      not many enterprises have a lot of data like that.

      --
      If I don't put anything here, will anyone recognize me anymore?
    2. Re:Oh please, enlighten us by michael.teter · · Score: 1

      It is fully transactional when using InnoDB storage.

      You can choose the storage method (InnoDB, BDB) per table, so you can choose the ultimate performance (BDB) in cases where you don't need transactions (like for lookup-only tables).

      Backups require very little effort. Simply read lock the table and copy the table file, or you can use a live backup command.

      Most reports of lacking features or non-enterprise-readiness are simply a lack of education on the part of the speaker. A quick trip to the MySQL.com site will resolve those questions.

      Now I personally like PostgreSQL, but MySQL is indeed good, and enterprise-ready. Don't take my word for it... http://www.mysql.com/it-resources/case-studies/

      --
      /Not for internal use/
    3. Re:Oh please, enlighten us by drew · · Score: 1

      I wasn't speaking of transactional integrity, or even relational integrity (which many other people have mentioned), but pure data integrity.

      My experience with MySQL was that it would frequently (*) corrupt it's data files, requiring the corrupted data files to be deleted. From there, the table either had to be recreated (empty) or restored from a backup (**). We typically just truncated the table and started over- in our deployment, MySQL was used purely for its speed, and all critical data was aggregated from the MySQL servers onto one of two Oracle databases, so losing a MySQL database meant almost nothing (other than that the server would hang on queries until the corrupted file was deleted, which significantly increased our average response time).

      (*) on average about once a week accross a deployment of about 16 MySQL servers, or about once every 3-4 months per server.

      (**) regardless of how little effort backups require, you should never have to plan on using them. They should be there to protect against an unlikely situation that you hope never happens, not something that inevitably happens a couple times a month.

      --
      If I don't put anything here, will anyone recognize me anymore?
    4. Re:Oh please, enlighten us by IO+ERROR · · Score: 1

      My comment was indeed somewhat of an exaggeration. Though your comment is quite curious; I don't have any comments about MySQL on my blog, which, by the way, is MySQL driven. But not for long. :) I think all the people who replied to my original post have well discussed the shortcomings with MySQL, so I won't repeat them again. Keep in mind I use it myself, but I'm not going to put my company's 25,000,000 customer database into MySQL.

      --
      How am I supposed to fit a pithy, relevant quote into 120 characters?
  135. LAMP Portal? by fricker · · Score: 1

    Is there any LAMP implementation of a Portal? I am convinced that standardized reusable portlets will eventually replace desktop applications. I might support a LAMP platform if there was a freely available solution that included a Portal component that supported WSRP (Web Services for Remote Portlets) and something similar to JSR 168, the Java portlet standard.

  136. Insensitive Clods by LordMyren · · Score: 1

    look you insensitive clods, j2ee takes a special place of reviling and hatred in the heart of the true denziens of the linux underworld for a simple reason.

    j2ee is lock in. its opting for a dark evil-you-know, its embracing a chosen path. once you start adding frameworks, your down the path of adding even more frameworks and theres no where to march but onwards.

    in general, the best hope for the rebellion is on loosely coupled. in the context of the web, with the constant promise of agents and what not, loose coupling and late bindings are the only thing that make sense. static types are so 1988. the LAMP "architecture", by nature of being so apache-centric, is slightly less bound, even if the underlying code is single purpose hackery.

    activegrid promises one of the integral elements of what is truly needed: a transactional grid system to fabric different apps. conventional databases are overly limited, what active grid is promising is a more persistent active-object oriented approach.

    we need a coordination language which bridges the loosely-coupled/static type boundary. which bridges the language barrier.

    codehaus has a couple Active[SubName] projects of interest. Some really amazing work at integrating and coallescing a real coordination language, but very java specific for the most part. i have a big fetish for ActiveSpaces and its SEDA approach. ultimately the java specific killed the prospects for me (performance suspicions), otherwise its very beautiful.

    it amazes me just how short-sighted and short-reaching all these comments are. way for the poster to turn a very foresighted richly influenced piece of technology into a petty bickering flamewar. insensitive clod.

    well, there goes my moderation... :)

    as always,
    myren

  137. Re:Use Lisp [OT] by Anonymous Coward · · Score: 1, Interesting

    they never adapt the lexical model of LISP

    Ever heard of something called XML?

    As Tim Bray points out, "XML does a lousy job of what Lisp S-expressions could do decades ago."

    Value judgements aside, we can at least all agree that it's trivial to interconvert lexically between a LISP expression and an XML expression.

    Further discussion on the C2 Wiki.

  138. Don't forget postgresql. by dmoon · · Score: 1

    I'm using LAPP (Linux + Apache + PHP + Postgresql) for http://www.coku.com/ ,
    may be I should also add memcached http://www.danga.com/memcached/.

    D Moon

    --
    I'm a farmer in silicon valley. My labtop is my hoe.
  139. In other words... by officepotato · · Score: 1

    "Lets compare a hypothetical wrecked Porsche to a working Hyundai?"

  140. What does THAT solve? by Anonymous Coward · · Score: 0

    I have nothing against LISP, being one of its early implementors back in the 1970s.

    Many languages, for example XML, are lexically and conceptually derivative of LISP. It's a very versatile framework for exploring language design, precisely because its own footprint is so small.

    But by the same token (sorry, no pun intended) there is essentially nothing to motivate the use of LISP in an application context. LISP itself is the barest of frameworks. Saying that you're going to deliver a solution in LISP is tantamount to saying that you plan to write it from scratch.

    Better to say, "I'm going to implement it in Common Lisp + CLOS". Then at least you'd be starting with an object system and a packaging mechanism. Sort of like Java without any defined packages. That still sounds somehow a bit pathetic.

    That raises an important question. Why haven't LISP or SmallTalk attracted a greater range of capabilities, given that frameworks such as the above have been around for so long? Why aren't they at least comparable to Java in terms of deployment? After all, they're all equally expressive and equally portable in a fundamental sense.

    I can only speculate that the reason has something to do with the stability of the abstractions stacked above the language itself. That's what makes Java different, and that arguably is why Sun has committed to guide its development via the Java Community Process rather than leaving it wide open.

  141. Why not use Jython? or Groovy? by SuperKendall · · Score: 1

    I hate Java, please please please build a J2EE like container for python or ruby make sure it has everything I have listed above.

    Couldn't you use Jython or even possibly Groovy within a container to get what you want?

    In another post I read about something called "Ruby On Rails" which might be something like what you are looking for (though I doubt it offers the complete package Java has at the moment as you noted).

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
    1. Re:Why not use Jython? or Groovy? by killjoe · · Score: 1

      You can't write beans in jython or groovy. Perhaps you could write some objects in those and then call them from session beans or something.

      Ruby on rails offers almost none of what I listed. It's a neat project for rapidly building web sites though.

      --
      evil is as evil does
    2. Re:Why not use Jython? or Groovy? by bwt · · Score: 2, Interesting

      True for jython, false for groovy. Read about groovy beans.

      Among python, perl, and PHP, only python has superior language syntax to Java, and groovy leapfrogs python. Groovy's syntax is probably second only to ruby in term of OO purity and clarity. Perl's CPAN libraries are the only one competitive with Java's libraries (and java wins narrowly even over perl). When you give groovy syntax to java, you will have an absolutley lethal combination.

      Goovy's benefits from complete bytecode equivalence to Java cannot be overstated. Groovy simply reuses the entire java class library set.

      One other major innovation is the hierarchical syntax using closures that makes it superior to everything else for processing markup like HTML and XML. Java was strong on XML to begin with, with groovy it becomes dominant.

      The only big problem with groovy now is that it isn't quite ready. I expect that in a year it will begin to be a compelling solution, especially when combined with the lightweight, containers and frameworks (things like Spring and Hibernate) that emphasize Aspect Oriented Programming, Inversion of Control, and heavy use of XML configuration.

    3. Re:Why not use Jython? or Groovy? by killjoe · · Score: 2, Interesting

      I should have been more specific I should have said you can't build EJB beans with groovy. I would love be wrong though.

      "Among python, perl, and PHP, only python has superior language syntax to Java"

      Here is an example from the apache merlin web site

      "ReferenceDescriptor reference =
      new ReferenceDescriptor( Widget.class.getName() );
      ComponentModel model = (ComponentModel) m_model.getModel( reference );
      model.commission();

      Widget widget = (Widget) model.resolve();"

      Notice how you have to type everything three times. Just reading that makes me angry.

      --
      evil is as evil does
    4. Re:Why not use Jython? or Groovy? by bwt · · Score: 1
      Groovy is simply another syntax for manipulating bytecode classes. You can build EJB beans in whatever mix of Java and groovy that you like. Groovy can extend (subclass) existing blah.class files and then compile the result back to a subblah.class file. At the bytecode level, bytecode produced by compiling java is interchangeable (to the JVM) from bytecode produced by compiling groovy. This means java or groovy can use bytecode procuded from java or groovy or existing bytecode.

      Java is strongly typed and reference based. There is no way to avoid declaring the type of a reference and naming the type of object during instantiation in such a language. Groovy is weakly typed, so you can just say:
      reference = new ReferenceDescripor(Widget.class)
      You're also showing a couple of casts going on (ComponentModel and Widget), probably as a result of inheritance or interfaces. I don't know why they've chosen to design at this level of abstraction. If there is a compelling reason to do so, you would have just ruled out PHP. Perl can do it, but you're going to be using a lot of funny symbols and @ISA attributes and your code wouldn't be as readable. Python would be clean, but that's what I said.

      In groovy, this would be much shorter and cleaner.
    5. Re:Why not use Jython? or Groovy? by MadWilli · · Score: 1

      Perhaps you should just link to the rubyonrails site instead of claiming what it does/doesn't provide.

      Ruby on Rails provides an amazing object-relation mapping for SQL databases called ActiveRecord. It uses ERb inside of ActionPack to provide JSP-like templating.

      If you want a MVC development stack, RoR provides it. If you want distributed objects, message passing, etc just look at other standard and non-standard ruby libraries.

      The most beautiful part of Ruby on Rails is that it doesn't required 100k lines of XML to configure it like Groovy and other similar frameworks.

    6. Re:Why not use Jython? or Groovy? by killjoe · · Score: 1

      I will have to take a hard look at groovy. Do you know of anyplace where there is an example of an CMP bean or a session bean written in groovy or even jython? I really like all the things the j2ee container gives you but like I said I just can't stand java.

      --
      evil is as evil does
    7. Re:Why not use Jython? or Groovy? by Anonymous Coward · · Score: 0

      Auugh. You have interesting comments on many technologies, but I just cannot let your comment on strong typing stand unchallenged. The need to type everything three times in Java is not necessary. The compiler already knows the type of the expression it is assigning to the variable. It's called type inference, it was developed in the seventies, has been a part of just about every academic language since the 1980's, been taught to lots of university students since the 1990's, and is making its way to the next C++ standard.

      Guy L. Steele certainly was aware of type inference, but he chose to require the annoying repetition for the sake of being more compatible with traditional C syntax. It's just another wart in the language, and it doesn't do anyone any good to pretend otherwise.

      Sorry, that was harshly worded. I'm sure there are still many people who simply don't know that you don't need to declare variable types in a strongly typed language.

    8. Re:Why not use Jython? or Groovy? by tonejava · · Score: 1

      EJB's are currently undergoing a major overhaul - obviously your message to Sun direct or indirect has gotten through although I'm sure there are many developers with the same problem.

      Sure a future change won't help you now but it can keep your options open.

      In the meantime look at Hibernate, I was sceptical at first moving from EJB's to Hibernate but now I don't regret it. It takes a bit to actually pick up but you quickly accelerate through the examples.

      We now use a Session Bean facade on top of Hibernate and the speed has improved dramatically - using Java is all about getting to know the right design patterns!

  142. Re:I just got myself some new asbestos underwear by Anonymous Coward · · Score: 0

    Java people are scary... kinda like ipod owners. Ofcourse, most java developers are probably ipod owners... Dot com all day long. I'm sure glad I haven't wasted too much personal time puking up java.

  143. Example spring + hibernate site by wurp · · Score: 1

    I wrote the site in my sig; it's all Apache + Tomcat + Spring + Hibernate + MySql.

  144. anything by Anonymous Coward · · Score: 0

    Anything based on mysql is a joke.

  145. Yeap. I agree. by AwesomeJT · · Score: 0
    I'm moving to PostgreSQL with as much as I can. I have always found the support for true ANSI SQL Standard to be superior in PostgreSQL.

    I still must use MySQL because a few OS projects have not implemented support for it yet, but they are slowly moving towards this.

    Not everything can be accomplished with a sub-query -- sometimes a join or union is needed.

    --
    SPAM solution made easy: 1 spammer, 5 cords of rope, 5 hourses, and fireworks. Be creative.
  146. Crap by lux55 · · Score: 1

    Now that the blog post is back up from being /.ed, I've had a chance to read it. My $.02: What a load of rhetorical crap. Not to be a troll or anything, but what the hell is "a highly tuned 'text pump' to occupy the fabric/bus space in a transaction-intensive enterprise data center"?! Now perhaps their software is the shiznit or whatever kids say these days, but based on that post, and based on the thin content on their site (I didn't bother with the white paper -- I hate loading PDFs unnecessarily), it sounds like a lot of buzz over mostly nothing.

    If someone has to announce that what they've done is revolutionary, it's not.

  147. What did you use? by onlyjoking · · Score: 1

    So far the money/fun/job security/supply of work have all been better for the small tiny jobs.

    So, what did you use? Perl/PHP with MySQL? I'm curious. I work only with small companies and the work is more enjoyable than I imagine it would be within a large-scale project. Perl and MySQL seem to fit my clients' needs, though PHP has become an unavoidable add-on recently :-(

  148. Is it insecurity ? by oDelicious · · Score: 1

    PHP vs. Java flame
    Whenever I read that kind of thread I wonder if all the energy spent by /.ters in defending such and such languages doesn't come down to a fair bit of insecurity most of the time. At the end of the day, as a developer, the technologies listed on your resume are one of your best assets for job/money/quality career.
    Reading someone hammering the languages you've spent month or years on is like reading somone saying that your experience is worth nothing! Therefore you want to reply and defend it.
    The whole point is that those arguements could be most interesting but they seem to be tainted most of the time.

    --
    .kill b honi soit qui mal y pense
  149. "Not to start?!?" by rdean400 · · Score: 1

    How can a statement that says J2EE is irrelevent be considered anything but the deliberate start of a flame war?

  150. Re:Developing distributed apps is very hard with J by The+AtomicPunk · · Score: 2, Funny

    Whatever drug you're on, send me some.

  151. Re:Developing distributed apps is very hard with J by rdean400 · · Score: 1

    Sorry, but that's just not true, at least not in the sense of headcount based on Java vs. LAMP as the only factor.

    In most cases I've been around, the language choice is largely irrelevent (the grandparent's post about all the little nitpicky details it claims you need to learn is interesting, but ultimately just plain wrong). How the project is managed is the big factor...are the requirements and designs constantly being modified, or are they clear and relatively static? A competent Java programmer and a competent PHP programmer can whip the same application out in about the same amount of time if they both use the standard tools supplied with the language and any well-known frameworks that make sense for the app.

  152. LAMP Grid Application Server, No More J2EE by Anonymous Coward · · Score: 0

    I can't stop laughing. Enough said

  153. Don't ya hate it when.... by Anonymous Coward · · Score: 0

    it's so obvious that the slashdot post is paid for? Don't ya love it when.... Response to that post ends up slamming the product?

  154. Fact: Oracle AS is repackaged Tomcat by kupci · · Score: 1
    Can't find a reference with Googling, but a friend of mine writing payment software, that runs on all the app servers, was stunned to see that oracle is basically Tomcat, for a higher price. Fancy that. So hope you aren't comparing Oracle to itself.

    Actually WebSphere is darned impressive as far as scalability goes. It even runs on the mainframe, one place supports 2million hits/day. Not bad.

  155. 20 Million Indian Code Monkeys by Anonymous Coward · · Score: 0
    Java has a huge demand in industry that is being met with huge interest in terms of capable candidates which is proven by the number of successful and *bearing in mind this isn't a flamewar!* well written open source project out there.
    Translation:

    "There are 20 million Indian code monkeys whom we've trained only in J2EE, Java and EJB: if you want to outsource to India for $5/hour, you'd better be ready to get the results in Java."

  156. " J" is the correct term... by Anonymous Coward · · Score: 0
    Java is like a joint - the more you smoke, the more you need. And you'll never understand what you see happening. J layers layer upon layer upon layer of code built on a foundation of other unknown layers, with thousands of objects of questionable origin. Issue a method call to update an object and you might inadvertently be sending a signal to a cell phone in Paris that sets off God knows what.

    Need to incorporate the accounts-payable system of a newly-acquired firm? No problem, smoke a little "J" and then rewrite the 600-or-so accounts-payable objects. Now that's really smokin'. And true job security.

  157. Re:MySQL no place? It has many places... by Anonymous Coward · · Score: 0

    Just like you don't use Oracle to handle a simple little db holding some responses to a recent questionnaire or for a quick little conference, I would not use MySQL for a big data warehouse or SAP deployment.

    Sure you do, if you work at a company that has an enterprise license for Oracle (or MS SQL Server), one or two servers for small relatively trivial databases like this, and that you realize that the app could grow beyond single/n5 users, or have a lot of combined knowledge and code regarding Oracle (triggers, esp. instead of triggers, are kind of nice).

    C for data analysis? How about awk?

  158. C'mon mods! by RAMMS+EIN · · Score: 1

    C'mon mods! That was insightful. Emacs is a very popular app, and it's mostly written in Lisp.

    --
    Please correct me if I got my facts wrong.
    1. Re:C'mon mods! by turgid · · Score: 1

      Don't worry, it's just my secret entourage of mod-bombers. :-)

  159. winning the mindspace by Anonymous Coward · · Score: 0

    ActiveGrid appears not yet ready to be acceptable for IT departments. But this is still a welcome development. Other enterprise technologies (.NET and J2EE) have their benefits and disadvantages, but an open source based middleware technology helps.

    But $3M funding (http://www.activegrid.com/news/pressrelease-11170 4.php) is not sufficient to compete with .NET and J2EE and win the mindspace of "mainstream" developers (of business applications), IT departments, CEOs and other decision makers. Decision makers want their jobs safe and they always choose what they perceive to be "safe" technologies (safe for their jobs). It is perhaps understandable, but what is required is to win some mindspace. How to achieve that? It cannot be after 10 years, but may be, in 2 years.

    1. Re:winning the mindspace by j2wnl · · Score: 1

      Agree, is still immature. BUT also IBM is investing in this architecture. The big difference is that they replaced php with java/jsp and mysql with db2. read more here: http://www-128.ibm.com/developerworks/grid/newto/i ndex.html

  160. News at 11 by bill_mcgonigle · · Score: 1

    Have you ever seen ads for the 11-O'Clock news? A sure fire way to eat more and lose weight, something you have in your home that will kill your kids, and you're getting cancer from something in your town. Stay tuned 'till 11:25 for more details.

    It's only done because it works. Keeping the pageview count low on these stories is the only way to stop them. Skip the next one.

    --
    My God, it's Full of Source!
    OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
  161. Yahoo! Store by bill_mcgonigle · · Score: 1

    Lisp needs an application server like Zope. Zope has driven many to learn Python so they can create Zope products.

    The Yahoo! Store was written in Lisp and they credited their time-to-market to being able to do it in Lisp. Who knows what they used for a web environment?

    For some reason Yahoo is moving to python, IIRC.

    --
    My God, it's Full of Source!
    OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
  162. ColdFusion meets your requirements by arete · · Score: 1

    It uses a markup language, runs on top of Java, and supports a whole mess of nice automatic stuff to boot.

    Of course, it's not free. But it is pretty nice.

    --
    Looking for freelance Actionscript (Flash/Flex) or ColdFusion work and/or freelance developers. Email me, put Slashdot
  163. Shouldn't it be LAMPPP? by MMHere · · Score: 1

    Shouldn't the acronym in use for this stack be LAMPPP ?

  164. Next generation web applications by Anonymous Coward · · Score: 0

    Here's two...

    http://del.icio.us/ (probably Perl, probably MySQL)
    http://flickr.com/ (PHP / MySQL)

  165. crock by Anonymous Coward · · Score: 0

    what a rubbish post. has slashdot turned into a kiddies flamebait board or what? Sheesh, grow up script kiddies, and wake up to the fact your stupid embedded scripting languages will never make the grade in serious enterprise applications. If otherwise you are seriously deluding yourselves.

  166. My LAMP interpretation by Anonymous Coward · · Score: 0

    Linux

    Apache

    Mod_perl

    PostgreSQL

    Flame away, but MySQL only barely qualifies as a database in my opinion. Now that they finally have transactions, the little bit of speed advantage they had over PostgreSQL on very large tables (> hundreds of thousands of tuples) has probably been lost. I hope someone reruns the benchmarks.

  167. No More J2EE?! by jon855 · · Score: 1

    This is just pure BULL... LAMP might be good but we can;t just say that it'll take over J2EE in that aspect, it might but let's be realistic here. And hell I'm taking Programming for IT right now and they're using J2SE, i know it ain't the J2EE but I can relate, if it's gonna take over then why is the college not teaching LAMP?! Oh so insightful, I believe that J2EE will be around for much more longer time, since it has a lot more support from communities and it does WORK... BTW, I don't know much about LAMP tho, just read a bit and it doesn;t seem like anything worthy for the hype to be all this bad.

    --
    May /. rule the /.ing realm
  168. Remember who writes these articles by Anonymous Coward · · Score: 0

    I don't want to start a flamewar but...

    The heat against Java on Slashdot never dies. It makes me wonder. Java is the technology that is used by far in more enterprise environments than any other web application development framework. .NET doesn't come close in popularity. Python? I work for one of the biggest enterprise environments in the world (General Motors) and most people here, if asked, would tell you 'Python' is a snake. PHP? I'd lose my job if I wrote even one web application here in PHP. Why bother? If you absolutely must code in some messed up mixture of HTML and some C-clone use JSP (a subset of J2EE), it does all PHP does plus more. MySQL? If you want something free use Postgre, if you have money Oracle is the way to go. If you want explanations on this just write a complex nested query in MySQL and then do it in Oracle, you'll see what I mean.

    Is it because Slashdot authors are truely concerned and support only 'Free' (as in speech) technologies and don't want the 'evil' that is Java taking over the market? Possibly. There sure are a lot of ads for proprietary software on the site, though.

    Alas, look into the Address Bar and one can see:
    http://linux.slashdot.org/comments.pl?

    They wrote this thing in PERL?! Honestly consider the fact, that the people from Slashdot haven't written a line code in a 'real' enterprise framework in their life. The result? Someone who thinks 'PHP' and 'J2EE' are equivalent technologies. ... no offense or anything (seriously). We don't want to start a flamewar. (no seriously)