2007 West
GOLD SPONSORS:
Active Endpoints
Your SOA Needs BPEL for Orchestration
BEA
Virtualized SOA: Adaptive Infrastructure for Demanding Applications
Nexaweb
Overcoming Bandwidth Challenges with Nexaweb
TIBCO
What is Service Virtualization?
SILVER SPONSORS:
WSO2
Using Web Services Technologies and FOSS Solutions
Click For 2007 East
Event Webcasts

2008 East
PLATINUM SPONSORS:
Appcelerator
Think Fast: Accelerate AJAX Development with Appcelerator
GOLD SPONSORS:
DreamFace Interactive
The Ultimate Framework for Creating Personalized Web 2.0 Mashups
ICEsoft
AJAX and Social Computing for the Enterprise
Kaazing
Enterprise Comet: Real–Time, Real–Time, or Real–Time Web 2.0?
Nexaweb
Now Playing: Desktop Apps in the Browser!
Sun
jMaki as an AJAX Mashup Framework
POWER PANELS:
The Business Value
of RIAs
What Lies Beyond AJAX?
KEYNOTES:
Douglas Crockford
Can We Fix the Web?
Anthony Franco
2008: The Year of the RIA
Click For 2007 Event Webcasts
Additions to My Computer Book Shelf
Many young programmers don't read books anymore.
TOP THREE LINKS YOU MUST CLICK ON
Why Do 'Cool Kids' Choose Ruby or PHP to Build Websites Instead of Java?
Here is a question that I have been pondering on and off for quite a while: Why do 'cool kids' choose Ruby or PHP to build websites instead of Java? I have to admit that I do not have an answer. Why do I even care? Because I am a Java developer. Like many Java developers, I get along with Java well. Not only the language itself, but the development environments (Eclipse for example), step-by-step debugging helper, wide availability of libraries and code snippets, and the readily accessible information on almost any technical question I may have on Java via Google. Last but not least, I go to JavaOne and see 10,000 people that talk and walk just like me.
Reader Feedback : Page 1 of 8

tahank you

thanksss

thankss

veryy good

thanks

You know it if you really think about it.

Because Java plays as iut is FLOSS and it is not. So we go LAMP and say F)/= off!

And yeah, I just had Java this semester and it is true: Java SUCKS!

Next semester guess what I am taking? Python!

Long live LAMP (as in PHP right now, and PHP/Python by next year)

Stop writing crappy articles and DO Y OUR JOB! Go program some app in Java and see if anyone uses it.. And I'll gte my Google Apps account and make a Hello World over there and send you a link!

Peace That's why!

There were 7 pages of responses above, so, I confess to only reading a couple, so, forgive me if I repeat too many points that were hashed through already.....

The question posed is why do 'cool kids' (or anyone really) choose something like PHP or Ruby rather than Java. I saw a lot of answers above that are certainly correct -- it's really a bunch of reasons of course, but I think I have a handle on the main factors, which might be a little different than the "java is too complex" crowd:

1. The primary reason is that PHP & Ruby (and others) do a great job for most web efforts, and Java does as well. The question could have easily been posed by a Ruby guy about PHP, or a PHP guy about Perl, or a Perl guy about Java. The fact is, all of them are mature enough & powerful enough to handle most web tasks (and especially intranet tasks where Internet-level scalability & redundancy are not an issue). Cop-out answer, but still true....

2. That leads to why anyone ever even used Ruby or PHP,being fairly new, when Java was there already. One reason is because of Perl. I gave thanks to all the Gods when, back in the Mosaic days, I ditched hand-coded C cgi's for Perl. Everyone used Perl for web. It was far & away the most used web dev language. Perl is, however, syntactically pretty difficult, and it requires a good amount of discipline to code good web apps with 100-table databases and scores of pages. Enter PHP, which is extremely Perl like, but has the advantage of being a "templating" language as well --- easy transition for Perl folks. RoR adds it's ORM, MVC, etc., but the author credits Perl as his primary influence. All 3 are interpreted, etc. One other point on this - Perl is highly unixified as far as it's community, while you had a lot of Windows folks coming in, and PHP filled that void a bit better (I've been doing Perl for years & I'm still unclear if I want cygwin Perl, ActiveState, etc. on Windows...wtf?).

2++. As for the other reason why people didn't flock to Java, I saw some posts hitting on this a bit... Basically, Java came out with huge hype, but it was pointed at applets, it was full of bugs, I couldn't even get a couple of Gosling's examples in his book to compile. That tainted Java with a huge section of early webdev types. Sun tries again, this time pointed more at the server & then the enterprise, with (as people said), hundreds of acronyms, excessively confusing & changing naming strategies (it's Java 6 update 5, or it's 1.4.2, it's SDK or JDK or JRE or J2EE, etc.). They never marketed back towards the programmers working with the interpreted languages (which, fyi, are often easily as complex as any compiled language - some are far more, with heavy reflection & dynamic coding, etc., so "script kiddies" is not applicable to the entire non-java side of the house).

Obviously not ALL the reasons, but I think those 3 are the bulk of the reason. That said, I'll have to disagree with a lot of the folks that have been calling the java dev environments too complex, too bloated, etc. I think we're actually at the crossroads point where the two camps are meeting up, driven by ajax/comet & the push for rich clients. I've just spent the last 2 weeks evaluating various javascript toolkit libraries, server-side solutions, MVC frameworks, flash/dhtml hybrids like Haxe or Laszlo, etc. Aside from a couple of hundred no longer under development, there are some great choices from the "scripting side". I've also begun looking at the Java side (which of course usually converts to JS/DHTML, but I mean java as in coding it on the server). I have to say, I'm impressed. Netbeans and WaveMaker both have pretty nice drag-n-drop wysiwyg-type web dev environments in their IDEs. I've always coded by hand, but in less than a day I cranked out some decent examples...I think it's certainly on par with anything from the interpreted/scripting camp as far as rapid-dev goes (assuming a website with at least a few pages, DB, some UI glitter).

This is a long post... I wonder if it will accept it....3 .. 2 .. 1.. go

Dylan

> Because they've been dooped into thinking you have to > compile Java servlets and beans to use Java or that you > need Struts or Hibernate of JSF. You don't. You can just > do everything in JSP if you want a quick and dirty PHP or > Ruby like Java experience.

Who have folks been "duped" by? That seems pretty absurd to me.

I'd guess, though, if anybody's been doing any "duping" it's software developers who create Java frameworks and try to pass them off as necessary and also book publishers who want to sell you books on those frameworks.

I'm no fan of the "one language to rule them all" mentality that a lot of folks seems to embrace in favor of supporting their language of choice. I agree with Chad Fowler/ Dave Thomas' assertions about learning a new language "every year*" because that keeps one engaged in learning and developing what really SHOULD matter: one's brain.

* (I'm not smart or disciplined enough to learn a new language every year, so I've decided that "every 2-3 years" is good 'nuff for me.)

I started with PHP and Perl, later spent some time learning (some) Java, and now I'm all into Ruby (and Rails).

PHP was awesome, and opened up the world of web development for me. After a while, I thought "maybe I should learn Java" so I gave it a crack and read and re-read Bruce Eckel's "Thinking in Java." I tried to wade through the acronym soup that Java Web Application Development seemed to be, but in the end my experience with Java was that it flat-out hurt my brain.

When I encountered Ruby (and Rails) it "just made sense" to me, and it continues to make sense to me. I recently worked on some PHP code for a friend, and I found it tedious and a bit irritating to work with. I'd bet that if I spent time re-learning OO PHP and used some of the cool "new" stuff (like the Cake framework, etc.), though that I'd probably dig it too.

Java flat-out hurts my brain, i think largely because of its verbosity. I don't really like to look at code that makes me work hard to understand it. Yes, there are tons of things that would be better to do in it vs. an interpreted language, but Ruby allows me to do the voodoo I wanna do with syntax that makes more sense to me.

I don't see the point in being "religious" about what language one uses. One should pick a tool for them that works and enables them to Get Stuff Done. For most of the nails I need to pound, a red hammer works just as well as a green one.

I've worked with the spectrum of languages and environments, from mainframe Cobol, to client/server with Powerbuilder, to web with Java/JSP. The style has progressed from a monolithic 5000 line cobol program (easy to maintain) to 5000 several-line code snippets or settings in various places like taglibs and xml descriptors (a nightmare as the app grows). The mindset that goes along with Java and the way it is presented by Sun is "let's take a simple problem and give it the most complex solution possible". Case in point: JSTL. Why learn another (useless and cryptic) language when we can use java snippets and we ALL know Java already! We're already using Java, Javascript, HTML, SQL, and a framework like Struts in any given project, so why add another when its not necessary? That's the stupidity that turns people away from Java.

Same reason why JavaScript never went away despite major forces trying to ruin its USABILITY and UNIVERSAL appeal with annoying proprietary formats like VBScript, Jscript, .NET, applets, JSP/JSF/Faces, Flash, etc. The people decided that JS is still the most user friendly dynamic web standard on the browser client - and the browser is still what the web user sees first, not middleware logic - and turned out PHP/Ruby are the most efficient glue-code to put together dynamic JS for web app UI. Look at the popularity of REST, Ajax, and SOAP - the web trend is toward efficiency, not complexity. Now if the Java community can come up with a way to make 90% of the ISPs to host Java enabled sites for as cheap and simple as LAMP packages, and convince Google and others to release their APIs in Java only instead of JavaScript, maybe, just maybe, more people will learn Java.

Oooh oooh oooh can I answer this one (hand in the air like the annoying 5th grader who answers every question)! Where to start. Okay, first and foremost if you get hosting from a "normal" web host PHP comes bundled in. PHP is free, fast, and well documented, so why do I have to go looking for alternatives? Finally, by the time you figure out what a WAR file is you could have read War And Peace. Now if you don't mind, I'm going back to hang out with the cool kids.

Doing what everybody is doing is the best way for a failure.

Java lacks a dynamism. That's what Ruby has. To build website you don't need miriad of frameworks, you need something simple. Java doesn't provide that. Java is very constraining environment. And most of those milions of Java developers are very bad software developers. Their software simply sucks - just look around.

Trackback Added: Choosing Ruby or PHP over Java?; In a recent article on CRM Developers Journal, Coach Wei asks: Why Do ‘Cool Kids’ Choose Ruby or PHP to Build Websites Instead of Java?
— Here is a question that I have been pondering on and off for quite a while: Why do ‘cool kids...

@lifewithryan - Agree with your comment. You're right about the OO part and its only partially true. I was referring to the part where Ruby/PHP code atleast to me just seems much easier to read and copy from the web (monkey see monkey do) when I'm building sites than doing the same with Java/J2EE.


Feedback Pages:

Pages: 1 2 3 4 5 6 7 8


FEATURED WHITE PAPERS
YOUR FEEDBACK
Ubuntu Here We Come! - Java Finally To Become 100% Open Source
Reader wrote: Since November 206, wow! that is a long process.
What's the Fastest Way to Get Data to AJAX, Flex, Silverlight, and JavaFX?
Gordon Snipes wrote: > Spring handles my IOC and AOP, and Hibernate > is responsible for my persistence. No more, no less. Both good choices!
Application Virtualization
Gabe wrote: Get it done Bob!
HP Tipped To Buy EDS To Level Playing Field with IBM
Adam Hartung wrote: Merging the lousy performing EDS with the weak HP services unit does not bode for better health. The leaders are Infosys, TCS, Cognizant and WiPro. HP needs to innovate and better develop its global delivery model - not try to see if it can "fix" the badly...
A Practical Solution For Deployment Of JSP
an wrote: A Practical Solution For Deployment Of JSP link of source code http://photos.sys-con.com /story/res/36270/source_z ip.html Download link : File Not Found
SUBSCRIBE TO THE WORLD'S MOST POWERFUL NEWSLETTERS
SYS-CON FEATURED WHITEPAPERS

BREAKING JAVA NEWS
Five Sun Microsystems Women Honored with Prestigious Awards
Sun Microsystems, Inc. (NASDAQ:JAVA) today announced that five Sun women have been awar
JavaOne 2008: A Developer's Perspective
This is my third JavaOne. Many topics were discussed, friendships were made, new partnerships were s
3rd International Virtualization Conference & Expo: Themes & Topics
From Application Virtualization to Xen, a round-up of the virtualization themes & topics being discu
A Lightweight Approach to SOA and BPM in Java Using jBPM
SOA is mostly associated with technologies such as BPEL, SCA and Web Services. But does SOA really i
Case Study: Java and the Mac
This is the story of a Mac application developer (okay - it's about two of them) who set out on a qu
eApps Hosting Now Offers the GlassFish Java Application Server in VPS Hosting Plans
eApps Hosting announced that the GlassFish Open Source Application Server for Java EE 5, from the Gl
The 4 Core Principles of Agile Programming
One of the things I really enjoy at the moment is the recognition and adoption of agile programming
JavaOne 2008: Sun Talks Up its Late-to-the-Party AIR-Silverlight Rival
At Java One this week Sun has been selling its year -old-but-still-upcoming - and definitely late-to-
JavaOne 2008: Uncommon Java Bugs
Any large Java source base can have insidious and subtle bugs. Every experienced Java programmer kno
JavaOne 2008: Sun Adds Comprehensive Video Capabilities to JavaFX
Sun Microsystems announced it has entered into a multi-year agreement with On2 Technologies to add c
JavaOne Archives - Dvorak Comments on AMD Intel Lawsuit on SYS-CON.TV
Conference in San Francisco. Dvorak held forth on a number of topics, including the new AMD/Intel la
JavaOne 2008: A Day One Report From the Sessions
My first technical session was about Java SE presented by Danny Coward from Sun. It was about the cu
Borland Finally Dumps CodeGear Tools Division
It's only taken Borland two years but it's finally dumped its CodeGear tools division, responsible f
JavaOne 2008: Sun Challenges Linux
Sun's mule train has finally pulled into Indiana after three years on the road. Indiana is the Linux
JavaOne 2008: Chris Keene's Prescription for Curing the Java Flu
At WaveMaker, we have hitched our wagon to Java so I hope very much that JavaOne is showing us the g
Virtualization Journal Attracts JavaOne Attendees to SYS-CON Media Booth
Virtualization Journal now reaches more than 60,000 online readers with monthly digital editions and
MySQL Backs Off Closed Source Plan
MySQL has backed off a plan to charge for some encryption and compression backup widgetry in the nex
Premiere Global Opens New Markets With FioranoMQ
Fiorano Software announced that Premiere Global Services, a global provider of on-demand business pr
db4o Open Source Object-Oriented Database Supports LINQ
db4objects has announced that its db4o object database is now optimized for Microsoft's LINQ. With t
Real-Time Kaazing Solution and Sun's Glassfish Forge RIA Alliance
Kaazing Corporation and Sun Microsystems announced an alliance to deliver the scalable and advanced
Microsoft To Keynote 4th International Virtualization Conference & Expo
Mike Neil is general manager for virtualization strategy in the Windows Server Division at Microsoft
ADS BY GOOGLE