forex trading logo

Who Should Attend?

 

    •   Web programmers
       and Designers
   •   Architects
   •   Senior Developers
   •   Project Managers
   •   User Interface
       Architects
   •   Mobile Application
       Developers
   •   Strategic Decision-
       Makers
   •   Web Consultants

Sponsorship Opportunities

The Open Web Developer Summit delivers the #1 i-technology educational and networking opportunity of the year.

Contact US

Web Articles
Why Do 'Cool Kids' Choose Ruby or PHP to Build Websites Instead of Java? PDF Print E-mail
Written by Administrator   
Thursday, 11 February 2010 23:12

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.

The other reason that I ponder this question is that  the power of Java is a perfect fit for the areas where websites may need more than markups or scripting, such as middleware logic. PHP and Ruby etc are cool for building pages, but they are not ideal candidates for building middleware logic. Given that Java covers the "high end" of the spectrum well (where sophisticated processing is needed), wouldn't it be great to use Java all the way?

Is it Java as a programming language too difficult to use, comparing with those scripting oriented interpreted languages? Yes, this maybe the reason. But there are 5 million Java developers out there already, and millions of developers make a living by write server side Java code. A lot of websites are built by these Java developers, and somehow they choose to use PHP or Ruby instead. Why? It is even more puzzling that I have seen quite a few Enterprise Java people decided against Java - when they decided to build their web 2.0 site, they went for PHP even though they have to learn PHP.

Is it the lack of tooling? I think there are more tools for Java than, say,  Ruby.

Is it the lack of  frameworks? I bet there are more Java frameworks than the population in China.

OK, a lot of websites are fairly simple, mainly composed of markup pages, scripts and some lightweight logic on the server side, where PHP and Ruby are good for. Java maybe an overkill for such websites. But there are a lot of websites that are much more sophisticated than "lightweight" logic on the server side. For example, FaceBook was relatively simple initially, but now with FaceBook API and Platform, its complexity is growing. Why not use Java for such websites?

So what is missing from the Java world? What is the ideal architecture to build a website using Java?

  • Option 1: JSP/Servlet with a Java Servlet engine (or even an application server): This is the dominant architecture for Enterprise web applications. But it clearly has not been appealing for building websites in comparison to PHP or Ruby;
  • Option 2: JavaServer Faces: JSF is the new kid on the block. Is it going to make building websites easier? Probably not. It is designed for simplifying building form-based applications.
  • Option 3: Using a Java based content management system (CMS)? I have come across many CMS systems over the last few years, and haven't been impressed by anyone of them.

So what is the ideal architecture for building a highly scalable, sophisticated (potentially. Your site will become sophisticated if your site is very successful), easy to build and easy to maintain website, while using Java?

 
Is Android a fork? PDF Print E-mail
Written by Administrator   
Thursday, 11 February 2010 23:09

First let me differentiate the Java Programming Language from the Java Platform. The Java Programming Language is a programming language syntax. The Java Platform includes the Java Language, but it’s much more than that. The Java Platform is a three-legged stool consisting of the core Java APIs (packages, frameworks, and libraries), the Java bytecode (the compiled, executable format), and the Java Virtual Machine (the runtime system that executes bytecode). Note that the language syntax is actually the least important aspect of the Java Platform. Other language syntaxes (e.g., Groovy, JRuby, JPython) can be used to write Java bytecode applications that execute in the JVM.

In order to qualify as a Java-compatible platform, a platform must implement all three of these legs as required by the Java SE or Java ME specifications. (I'm leaving Java EE out of this because it’s not germane to this discussion.) If a software distribution does not depend on or implement all three legs of the stool (APIs, bytecode, and virtual machine) then it’s not a Java Platform – it’s a fork. 

Android uses the Java programming language and some of the Java ME and SE APIs, but it uses a different executable format (i.e., not bytecode) and a different virtual machine (i.e., not a JVM). You cannot take Java bytecode generated using a Java ME or Java SE environment and execute it on Android. Therefore it is a fork. That is not a value statement; it’s a fact. Perhaps "fork" is an overloaded term these days. If there is a better word for implementing some, but not all, of the required parts of a software platform – any platform - then please tell me.

 
A New Weapon in Developing Rich Client Applications PDF Print E-mail
Written by Administrator   
Thursday, 11 February 2010 23:02

JavaFX is a scripting language that provides more powerful client applications in term of features for the user interface experience as well as being incorporated with server platform technology such as RMI, Web Services, and EJB. Its ability to reuse all Java libraries opens an opportunity for JavaFX to create flexibility and ease the integration and reuse of existing Java applications.

 EJB (Enterprise Java Bean) is one of the technologies in the Java EE platform that currently most of the business application geared for deriving the logical business process. The new version of EJB technology (EJB 3.0) makes developing a EJB component easier since EJB 3.0, rather than the developer, does more work on the container.

This Year AJAXWorld Is Sponsored by More Than 60 Leading Rich Web Technology Companies
AJAXWorld Conference & Expo this year was sponsored by the world's leading rich web technology providers including: 3Tera, Addison-Wesley, Adobe, Apress, Backbase, Bindows, Conference Guru, Cynergy Systems, Dynamic Toolbar, Extension Media, Farata Systems, Flash Goddess, FrogLogic, GoingToMeet.com, Google, Helmi Technologies, IBM, ICEsoft, ILOG, IT Mill, Ittoolbox, JackBe, JetBrains, Kaazing, Krugle, Laszlo Systems, Lightstreamer, Manning Publications, Methods & Tools, Microsoft, Nexaweb, OpenSpot, OpSource, Oracle, Parasoft, Passport Corporation, PushToTest, Quasar Technologies, Rearden Commerce, Servoy, SmartClient / Isomorphic Software, SnapLogic, Sun Microsystems, TechTracker Media, Tele Atlas, The Thomson Corporation, ThinWire, TIBCO Software, TileStack, Universal Mind, Vertex Logic, Web Spiders, and Webtide.

Last Updated on Thursday, 11 February 2010 23:06
 




Copyright 2010