|By Rick Hightower||
|May 5, 2006 11:00 AM EDT||
Robert F. Kennedy once said, "There is a Chinese curse which says, 'May he live in interesting times.'" The enterprise Java space is "interesting."
Not too long ago, folks like Bruce Tate, Gavin King, and Rod Johnson were pushing lightweight frameworks such as Spring and Hibernate, and there is still a lot of true innovation going on with AspectJ, Spring, Hibernate, WebWork, JBoss (method invocation handlers), and more. This lightweight POJO revolution shook the enterprise Java world.
Having endured building applications with EJB 2.x and Struts, using Spring and Hibernate was like a breath of fresh air. Development was easier and less time was spent working around the limitations of the platform.
J2EE has good ideas, which inspired a lot of additional ideas. This evolution led to innovative and productive practices outside of the JCP.
The JCP has had some very good JSRs, but you have to admit there have been some real stinkers.
EJB in general, except as a learning experience, is generally viewed as a failure. The real problem was not just EJB but the misapplications of EJB. This was widespread as it was promoted with the J2EE Blueprint, not to mention the misapplication of JTA, and more features of J2EE. Not to say that applications can't benefit from JTA and EJB, it's just that many, many Web applications don't need them.
EJB 3.0 is much better than EJB 2.x. If you compare EJB3 to an older version of EJB, EJB3 is a boon; however, if you compare EJB3 to Spring and Hibernate, it stinks.
The related OR (Object Relation) Persistent API does not have a criteria API specified; any persistent API that does not define a criteria API is not finished.
The AOP support in EJB3 is broken. EJB3 has a method interceptor, but no pointcuts. In addition, the method interceptors are declared and imported with class-level annotations. This effectively tightly couples the class to the method interceptors that decorate it (Can you smell the bad odor?).
Rod Johnson mentioned thess same problems about EJB3 Method Interceptors at a recent Java enterprise conference (in his talk "Are We There Yet") and went on to mention many limitations on the @Resource style of DI, the absence of FactoryBeans, post processors, Constructor Injection, lists/maps, and a lot of the features Spring developers know and love are just missing. The EJB3 JSR members did not look at any of the prior art in this space and created their own limited version of what was already available.
I've heard some call EJB3 a dumbed-down version of what is available by using Spring and Hibernate. "EJB3 is Spring and Hibernate's stupid cousin" is frequently echoed.
After three years of deliberation, the JCPs delivered EJB3, which is inferior to de facto standards. Many parts of EJB3 are a big step backward from Spring, and, to many, EJB3 is broken. As Bruce Tate says about EJB3: "Don't make me eat the elephant again."
It's not just the persistent API and the AOP support that's broken in EJB3, it's also the random use of annotations, another misguided effort. The idea of annotations is good. The implementation of the annotations ruins some of the principles of the POJO model; namely, it ties your Java classes through a compile-time dependency to the standard API you're using and to any value-add annotations the vendor supports. Now why would vendors like this approach? Hmmm...I wonder. (Hint: Follow the money!)
In that question lies the real problem with the JCP. The JCP is heavily influenced by vendors that have "business need(s) or corporate agenda(s)." Parts of the enterprise Java community is innovative, parts stink, but there are many parts.
Strangely enough, RoR, which is currently being championed by Bruce Tate among others, is a safe haven for Java developers who are sick of vendor-driven APIs. In short, vendor-centric JSRs, Struts, and EJB have driven many a developer, who just wanted to get things done, to RoR.
My feelings on RoR is, been there done that, no thanks. Don't get me wrong, RoR has a lot of good ideas, but bad tool support. For me and many other Java developers, scripting languages are a step backward for large apps.
Geert Bevin, the creator of Rife, sums up my thoughts on the subject nicely in a recent e-mail he sent: "RoR is one of the best things that could happen to the Java community because at least alternative approaches and meta programming are now getting the credibility they deserve. Technologically, though, I think that RoR is nothing special." An issue with Java is a wealth of riches, so much wealth that you can get lost. Conversely, RoR seems like a one-trick pony. Choice is a blessing and a curse.
There are good Java competitors to RoR, such as Rife and Seam (and many others). The way the Java competitors of RoR do things is better than RoR, and it's Java so you get code completion, refactoring support, debugging, and more. Java can attack the space that RoR addresses quite well, in fact, much better than RoR. As Gavin King recently wrote me: "...Seam is (not) exactly focused on the same kinds of problems that RoR is targeted at, but I would say that it does compete very nicely in that space."
The reality is, we need more independent voices in the JCP. To be successful, it has to become less vendor-driven.
At least we now have independent folks on the JCP like Hani Suleiman. Hani is a self-proclaimed independent voice of the JCP. Hani, a very popular blogger, petitioned Java developers to vote him into the JCP Executive Committee for J2SE/J2EE.
"If you're a JCP member, vote for me...! ... I'm the only nominee who is motivated purely by improving Java. Everyone else is there out of some business need or corporate agenda. Stick it to the man!" -Hani Suleiman
Of course, many of us are very happy to have such an independent voice, an independent developer who doesn't have any vested interest in any of the JSRs. But wait...
Hani also did an interview in which he states: "I am the CTO of Formicary, which ... (has a) portal product, Epix (a JSR-168 based Portlet Portal), and alongside all that I also work for IronFlare, which makes the Orion application server, and through that I represent them on a number of expert groups and that is the real work that I do."
Hani works for companies that produce a portal server and an application server that support EJB. IronFlare was contracted by Oracle to develop their J2EE application server (the second one, the good one). Hani is a vendor. If you read Hani's blog, he frequently speaks out against AOP, POJOs, and lightweight frameworks, not to mention bashing competitors like JBoss, etc. It also appears there has never been an EJB he didn't like. And, this is our "independent voice." Strange times indeed!
The question to Hani, which echos a popular U.S. TV commercial: "But sir, aren't you the man?"
Even so, many feel that Hani will defend the common developer against vendor's interests and that he will bring a new perspective to the JCP, while ignoring that Hani, pleasant chap though he is, is hardly an independent voice and often lashes out against innovation while supporting a broken specification like EJB. One thing for certain, Hani never pulls his punches.
Hani recently told me: "The JCP isn't really a technical body; it's a lot more about process and IP issues." So a big part of the JCP's work is about protecting the individual vendor's IP issues. Where is the focus on making developer's productive like RoR's focus? By and large, RoR does not beat out the Java community in tools and ideas, but on their focus on developer productivity. Contrast this to the JCP's focus on vendor profits. We need to focus.
We do live in interesting times in the Enterprise Java space. We have RoR-inspired frameworks and vendor-driven JSRs. We have Bruce Tate, a former promoter of lightweight Java frameworks, become an advocate for RoR. We have Hani, one of the chief opponents of lightweight POJO-based frameworks, get elected to the JCP Executive Committee.
On the other hand, we have great frameworks and ideas such as POJOs, domain-driven design, Spring, Hibernate, Rife continuations, Rife meta programming, JSF, Facelets, Seam, and AspectJ. It is time to promote true innovation wherever we find it: JCP or innovative projects. Avoid standard APIs and frameworks that don't make sense.
|Rick Hightower's Sleepless Night in Tucson 05/15/06 08:07:37 PM EDT|
Trackback Added: Updated3: Interesting Times in the Java Enterprise: How did Hani get elected?; It is JavaOne time. It is time to see Hani dance. Yeah!
|Rick Hightower 05/10/06 09:39:19 PM EDT|
I look forward to your feedback.
|SYS-CON Italy News Desk 05/05/06 11:17:09 AM EDT|
Robert F. Kennedy once said, 'There is a Chinese curse which says, 'May he live in interesting times.'' The enterprise Java space is 'interesting.' Not too long ago, folks like Bruce Tate, Gavin King, and Rod Johnson were pushing lightweight frameworks such as Spring and Hibernate, and there is still a lot of true innovation going on with AspectJ, Spring, Hibernate, WebWork, JBoss (method invocation handlers), and more. This lightweight POJO revolution shook the enterprise Java world.
SYS-CON Events announced today that CA Technologies has been named “Platinum Sponsor” of SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY, and the 21st International Cloud Expo®, which will take place October 31-November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. CA Technologies helps customers succeed in a future where every business – from apparel to energy – is being rewritten by software. From ...
Mar. 29, 2017 02:30 PM EDT Reads: 2,265
SYS-CON Events announced today that Technologic Systems Inc., an embedded systems solutions company, will exhibit at SYS-CON's @ThingsExpo, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Technologic Systems is an embedded systems company with headquarters in Fountain Hills, Arizona. They have been in business for 32 years, helping more than 8,000 OEM customers and building over a hundred COTS products that have never been discontinued. Technologic Systems’ pr...
Mar. 29, 2017 02:30 PM EDT Reads: 3,798
SYS-CON Events announced today that Auditwerx will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Auditwerx specializes in SOC 1, SOC 2, and SOC 3 attestation services throughout the U.S. and Canada. As a division of Carr, Riggs & Ingram (CRI), one of the top 20 largest CPA firms nationally, you can expect the resources, skills, and experience of a much larger firm combined with the accessibility and attent...
Mar. 29, 2017 02:30 PM EDT Reads: 652
SYS-CON Events announced today that HTBase will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. HTBase (Gartner 2016 Cool Vendor) delivers a Composable IT infrastructure solution architected for agility and increased efficiency. It turns compute, storage, and fabric into fluid pools of resources that are easily composed and re-composed to meet each application’s needs. With HTBase, companies can quickly prov...
Mar. 29, 2017 02:15 PM EDT Reads: 3,242
SYS-CON Events announced today that Loom Systems will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Founded in 2015, Loom Systems delivers an advanced AI solution to predict and prevent problems in the digital business. Loom stands alone in the industry as an AI analysis platform requiring no prior math knowledge from operators, leveraging the existing staff to succeed in the digital era. With offices in S...
Mar. 29, 2017 01:30 PM EDT Reads: 1,734
Buzzword alert: Microservices and IoT at a DevOps conference? What could possibly go wrong? In this Power Panel at DevOps Summit, moderated by Jason Bloomberg, the leading expert on architecting agility for the enterprise and president of Intellyx, panelists peeled away the buzz and discuss the important architectural principles behind implementing IoT solutions for the enterprise. As remote IoT devices and sensors become increasingly intelligent, they become part of our distributed cloud enviro...
Mar. 29, 2017 12:15 PM EDT Reads: 7,892
SYS-CON Events announced today that T-Mobile will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. As America's Un-carrier, T-Mobile US, Inc., is redefining the way consumers and businesses buy wireless services through leading product and service innovation. The Company's advanced nationwide 4G LTE network delivers outstanding wireless experiences to 67.4 million customers who are unwilling to compromise on ...
Mar. 29, 2017 11:45 AM EDT Reads: 2,571
SYS-CON Events announced today that Infranics will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Since 2000, Infranics has developed SysMaster Suite, which is required for the stable and efficient management of ICT infrastructure. The ICT management solution developed and provided by Infranics continues to add intelligence to the ICT infrastructure through the IMC (Infra Management Cycle) based on mathemat...
Mar. 29, 2017 11:00 AM EDT Reads: 3,430
SYS-CON Events announced today that Interoute, owner-operator of one of Europe's largest networks and a global cloud services platform, has been named “Bronze Sponsor” of SYS-CON's 20th Cloud Expo, which will take place on June 6-8, 2017 at the Javits Center in New York, New York. Interoute is the owner-operator of one of Europe's largest networks and a global cloud services platform which encompasses 12 data centers, 14 virtual data centers and 31 colocation centers, with connections to 195 add...
Mar. 29, 2017 10:15 AM EDT Reads: 1,716
SYS-CON Events announced today that Cloudistics, an on-premises cloud computing company, has been named “Bronze Sponsor” of SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Cloudistics delivers a complete public cloud experience with composable on-premises infrastructures to medium and large enterprises. Its software-defined technology natively converges network, storage, compute, virtualization, and management into a ...
Mar. 29, 2017 10:00 AM EDT Reads: 2,340
In his session at @ThingsExpo, Eric Lachapelle, CEO of the Professional Evaluation and Certification Board (PECB), will provide an overview of various initiatives to certifiy the security of connected devices and future trends in ensuring public trust of IoT. Eric Lachapelle is the Chief Executive Officer of the Professional Evaluation and Certification Board (PECB), an international certification body. His role is to help companies and individuals to achieve professional, accredited and worldw...
Mar. 29, 2017 08:45 AM EDT Reads: 940
In his General Session at 16th Cloud Expo, David Shacochis, host of The Hybrid IT Files podcast and Vice President at CenturyLink, investigated three key trends of the “gigabit economy" though the story of a Fortune 500 communications company in transformation. Narrating how multi-modal hybrid IT, service automation, and agile delivery all intersect, he will cover the role of storytelling and empathy in achieving strategic alignment between the enterprise and its information technology.
Mar. 29, 2017 08:00 AM EDT Reads: 7,543
Microservices are a very exciting architectural approach that many organizations are looking to as a way to accelerate innovation. Microservices promise to allow teams to move away from monolithic "ball of mud" systems, but the reality is that, in the vast majority of organizations, different projects and technologies will continue to be developed at different speeds. How to handle the dependencies between these disparate systems with different iteration cycles? Consider the "canoncial problem" ...
Mar. 29, 2017 06:00 AM EDT Reads: 9,074
The Internet of Things is clearly many things: data collection and analytics, wearables, Smart Grids and Smart Cities, the Industrial Internet, and more. Cool platforms like Arduino, Raspberry Pi, Intel's Galileo and Edison, and a diverse world of sensors are making the IoT a great toy box for developers in all these areas. In this Power Panel at @ThingsExpo, moderated by Conference Chair Roger Strukhoff, panelists discussed what things are the most important, which will have the most profound e...
Mar. 29, 2017 04:00 AM EDT Reads: 15,125
Keeping pace with advancements in software delivery processes and tooling is taxing even for the most proficient organizations. Point tools, platforms, open source and the increasing adoption of private and public cloud services requires strong engineering rigor - all in the face of developer demands to use the tools of choice. As Agile has settled in as a mainstream practice, now DevOps has emerged as the next wave to improve software delivery speed and output. To make DevOps work, organization...
Mar. 29, 2017 03:45 AM EDT Reads: 2,175
My team embarked on building a data lake for our sales and marketing data to better understand customer journeys. This required building a hybrid data pipeline to connect our cloud CRM with the new Hadoop Data Lake. One challenge is that IT was not in a position to provide support until we proved value and marketing did not have the experience, so we embarked on the journey ourselves within the product marketing team for our line of business within Progress. In his session at @BigDataExpo, Sum...
Mar. 29, 2017 03:30 AM EDT Reads: 3,262
Web Real-Time Communication APIs have quickly revolutionized what browsers are capable of. In addition to video and audio streams, we can now bi-directionally send arbitrary data over WebRTC's PeerConnection Data Channels. With the advent of Progressive Web Apps and new hardware APIs such as WebBluetooh and WebUSB, we can finally enable users to stitch together the Internet of Things directly from their browsers while communicating privately and securely in a decentralized way.
Mar. 29, 2017 03:00 AM EDT Reads: 6,104
DevOps is often described as a combination of technology and culture. Without both, DevOps isn't complete. However, applying the culture to outdated technology is a recipe for disaster; as response times grow and connections between teams are delayed by technology, the culture will die. A Nutanix Enterprise Cloud has many benefits that provide the needed base for a true DevOps paradigm.
Mar. 29, 2017 01:15 AM EDT Reads: 2,535
What sort of WebRTC based applications can we expect to see over the next year and beyond? One way to predict development trends is to see what sorts of applications startups are building. In his session at @ThingsExpo, Arin Sime, founder of WebRTC.ventures, will discuss the current and likely future trends in WebRTC application development based on real requests for custom applications from real customers, as well as other public sources of information,
Mar. 29, 2017 01:00 AM EDT Reads: 1,141
In his General Session at 17th Cloud Expo, Bruce Swann, Senior Product Marketing Manager for Adobe Campaign, explored the key ingredients of cross-channel marketing in a digital world. Learn how the Adobe Marketing Cloud can help marketers embrace opportunities for personalized, relevant and real-time customer engagement across offline (direct mail, point of sale, call center) and digital (email, website, SMS, mobile apps, social networks, connected objects).
Mar. 28, 2017 11:15 PM EDT Reads: 3,537