The challenges of building applications that need to handle the massive volumes and countless sources of time-stamped data produced by sensors, applications, and infrastructure are myriad. Because of the uniquely critical need for efficient communication among dev team members working with what is known as "time series" data is critical, distributed teams especially challenged.
Enter time series database provider InfluxData, which recently announced a solution to this challenge, at least within the InfluxDB Cloud. The new InfluxDB Notebooks allows developers to discuss time series data analyses and trends inside the platform, so team members don't have to use third-party messaging apps, which can slow them down significantly. This new capability allows users to create what the company calls "a durable artifact" that shows teams how time series data is analyzed to solve business problems.
"Development teams are more distributed than ever, but until now, they haven’t had the tools they need to seamlessly communicate around time series data," said Russ Savage, director of product management at InfluxData, in a statement. "To solve this problem, we’ve reimagined InfluxDB as a way to collaborate around data, not just store it. This new approach will dramatically save time for developers, so they can focus on building software."
InfluxData provides a time series database platform aimed at developers building Internet of Things (IoT), analytics, and monitoring software. The company's new InfluxDB Notebooks adds a number of capabilities to the platform, including
- Design time series data pipelines with dynamic data, live code, and real-time visualizations — all with inline explanatory notes. This capabilities allows dev team members to show their work and sharing it with others.
- The ability to share incident investigations to explain root causes following service outages, and to build "runbooks" to avoid future outages.
- The ability to document how Internet of Things sensor data has been collected, normalized, enriched, and "downsampled" to facilitate preventive maintenance and forecast device obsolescence.
The company says it plans to add another new capability to its platform: InfluxDB Annotations, which will make it possible to add notes directly on dashboard cells to more quickly highlight and explain the meaning of anomalies in time series data, and to coordinate troubleshooting efforts. It will be used to capture context and share details about ongoing investigations into outlier data points that are underway.
This capability will save teams time "by eliminating the need for multiple people to repeat the same investigation," the company says. Both features are designed to support "better collaboration workflows between developers, SREs, and every stakeholder involved in time series collection, enrichment, and analysis."
Where InfluxDB Notebooks allows teams to "weave together computational information" such as code, data, and statistics with narrative and graphs, InfluxDB Annotations will help developers "share contextual clues" so they can quickly determine the root cause of incidents and restore services faster.
Posted by John K. Waters on April 29, 2021 at 9:54 AM0 comments
An epic battle between titans splashed across news banners and came to a history-making end last week. No, I'm not talking about Godzilla vs. Kong, but the decade-long legal clash between Google and Oracle over software copyright and fair use. (I know… I know… but the comparison was just lying there.)
As I reported earlier, the Supreme Court of the United States (SCOTUS) ruled last Monday that Google did not commit copyright infringement when it used 37 Java APIs in its Android mobile operating system without Oracle's permission. There was a lot of money on the line--Oracle wanted an $8.8 billion piece of Google's Android business and $475 million in lost potential licensing revenue--but there was more at stake here than an obscene amount of cash.
Bill Frankel, shareholder at Chicago-based IP law firm Brinks Gilson & Lione and chair of their copyright group, boiled the issues down for me in an email:
"This is the first time in 25 years that the Court has taken up a fair use case," Frankel wrote. "In so doing, the Court found the nature of the declaring code different than other types of code because the user interface provides a way for programmers to access prewritten computer code, and that the nature of the use favored a fair use finding. As for the purpose and character of the use, the Court found that Google’s limited copying was transformative because it allowed for the creative development of new software programs. As for the amount and substantiality of the portions of material used, the Court found that the lines of code taken constituted only 0.4 percent of the entire API at issue and because the amount of copying was tethered to a valid and transformative use. Lastly, as for the effect on the market, the Court held that Android was not a market substitute of Java SE – a point also strongly challenged by the dissent."
I talked with Frankel over Zoom about the consequences of this decision. By not expressly acknowledging the copyrightability of declaring code in API’s, he told me, the high court created a distinction between computer code that is unquestionably copyrightable and code that is “further from the core of copyright” because it facilitates interoperability.
"This approach seems to blur the line between copyrightable and uncopyrightable code on the one hand, and between copyrightability and fair use on the other," Frankel said. "Tech companies may be less incentivized now to innovate and develop APIs, knowing that bigger companies can appropriate their content rather than pay for it (like Google did with Java SE). On the other hand, tech companies may still be able to license their APIs because their copyright status is not fully resolved."
The Court’s fair use analysis actually harkens back to the Google Books decision of the Second Circuit, which equated the public benefit of digitizing books for greater access as being transformative and a fair use of copyrighted material, Frankel pointed out. Google’s use of the Java APIs to create a new Android platform was “use consistent with that creative progress that is the basic constitutional objective of copyright itself," the majority opinion held.
"Regardless of the balancing of the relevant factors, it undoubtedly will alarm content providers to see the Supreme Court holding another instance of verbatim copying to be 'fair use' under the copyright law," Frankel said.
In his email, Frankel concluded: "The decision in this case creates some unsettling precedent for API software developers concerned about software copyrightability and for content providers concerned about defending against fair use arguments. However, from a policy standpoint, there is some logic to not making software developers reinvent the wheel and spend money to create identical functionality using different forms of expression."
I sent a copy of Frankel's conclusion to virtually all the Java mavens in my contact list, and almost everyone declined to comment, which I think might be seen as a testament to the reach of these two tech titans (not to mention something of a "no comment" record for me). But David Blevins, CEO and founder of Tomitribe, responded almost immediately. "I strongly disagree with the attorney you spoke with and do not see this as setting a precedent but upholding a critical precedent upon which our industry is built. Overturning it after several decades would have had a catastrophic impact."
Tomitribe was created by several founding members of the Apache TomEE community. TomEE is the enterprise Java edition of Apache Tomcat that combines Apache OpenEJB, Apache OpenWebBeans, Apache OpenJPA, Apache MyFaces and others. The company's mission is to "unite businesses using TomEE with responsible and sustainable open source."
I spoke with Blevins over Zoom. He offered both a legal and an ethical perspective on the issues addressed by the high court.
"When people in our industry think about this topic, I suspect they're underestimating the breadth and depth of API fair use," he said. "This idea can be traced back to things like light sockets. The reason you didn't have to pay anybody when you made a light bulb to screw into a standard socket is because interfaces were considered fair use, and we needed them to be considered fair use for the industrial revolution to happen. Today, our entire IT industry is built upon that concept. We take it for granted to the degree that we don't truly appreciate the complexities we're not dealing with. If the court had decided that interfaces are now copyrightable to the extent that was being argued, it would have changed our industry dramatically."
One change a different decision would have caused, Blevins suggested, was a proliferation of copyright trolling. "We would suddenly have a portion of the industry that is now subject to copyright in a way that wasn't important before," he said. You always owned the copyright on your interfaces, but it just didn't matter because of fair use. Without that, just as we have patent trolling now, we'd have interface copyright trolling in our industry. We would see acquisitions for the purpose of suing for API copyright infringement. It would be the next booming field."
But Blevins isn't letting Google off the hook completely.
"I have a particular perspective on this because of my open-source nature," he said. "Which is why I have to say, if you build something of enormous value, and someone else leverages that thing to critical levels, in the open-source world, the one using it has an ethical responsibility to either contribute to the thing or to you, so you can continue developing the thing they're leveraging. Which is a long way of saying, just because Oracle chose to eventually argue interface copyright infringement, that doesn't mean they didn't have a right to say, hey, we have a relationship. Maybe you could be helping instead of hurting."
I also wondered why Blevins was the only one to get back to me on this stuff. "I understand that a lot of people might not want to poke the bear—or bears, in this case," he said. "But I'm from the Apache community, and we're not particularly afraid of taking a stand, especially around law pertaining to software. Apache is very much a community that will stand up for the right thing, regardless. And we need that in this industry."
"And just to be clear," he added, "I don't have a problem with Oracle seeking action against Google, per se, as long as the industry isn't damaged in the process of those two giants fighting. And a different decision would have done a lot of damage."
I other words, when King Kong goes toe-to-toe with Godzilla, nobody wins.
Posted by John K. Waters on April 15, 2021 at 3:53 PM0 comments
Java developers got a preview today of the soon-to-be-released Microsoft build of OpenJDK, a Long-Term Support (LTS) distribution of Redmond's version of the ubiquitous open-source Java dev kit. This preview release includes binaries based on OpenJDK 11 for x64 platforms covering the three major operating systems: macOS, Linux, and Windows.
The Microsoft build of OpenJDK binaries for Java 11 are based on OpenJDK source code, the company says, following the same build scripts used by the Eclipse Adoptium project and tested against the Eclipse Adoptium Quality Assurance suite (including OpenJDK project tests. The binaries for Java 11 have passed the Java Technical Compatibility Kit (TCK) for Java 11, which is used to verify compatibility with the Java 11 specification.
This build is free, of course, and designed to be a simple drop-in replacement for any OpenJDK distribution available in the Java ecosystem.
Microsoft is also publishing an early access release for Java 16 for Windows on ARM, the company says, based on the latest OpenJDK 16+36 release.
"Java is one of the most important programming languages used today," wrote Java Champ Bruno Borges, principal product manager for Microsoft's Java group, in a blog post. "Developers use Java to build everything from critical enterprise applications to hobby robots. At Microsoft, we’ve seen increasing growth in customer use of Java across our cloud services and development tools. We’re continually working to broaden and deepen our Java support for customers and developers."
As my colleague, David Ramel, pointed out in his report in our sister publication Visual Studio Magazine, "Microsoft jumped on the Java bandwagon in a big way back in 2019 by forming the Java Engineering Group in its Developer Division and acquiring jClarity to optimize Java workloads in its Azure cloud platform (despite the similarities between Java and Microsoft's own C#). "Last year, it ported OpenJDK for Windows 10 on Arm (AArch64)-based devices."
(We also covered Microsoft's assimilation into the OpenJDK ecosystem on ADTmag.)
Scott Sellers, CEO of open-source Java platform provider Azul Systems, sees the release as further evidence of a strong Java ecosystem.
“We believe that a thriving OpenJDK community is key to Java’s continued success," Sellers told me in an email, "and we welcome Microsoft to the impressive list of those offering builds of OpenJDK. This is great news for OpenJDK and Java in general, and further fuels the momentum as enterprises and developers move off proprietary Java offerings to OpenJDK distributions. We look forward to our ongoing collaboration with Microsoft in support of Azure’s Java users and of the Java user community as a whole."
Along with the upcoming Eclipse Adoptium builds of OpenJDK, the community of ongoing OpenJDK distributions currently includes Azul’s Zulu builds of OpenJDK, the Red Hat builds of OpenJDK, Amazon’s Corretto builds of OpenJDK, SAP’s SAPMachine builds of OpenJDK, Alibaba’s Dragonwell builds of OpenJDK, and BellSoft’s Liberica builds of OpenJDK. (Eclipse Adoptium is a continuation of the AdoptOpenJDK project.)
"Our contributions to OpenJDK started small as we learned about the process and how to participate in a meaningful way," Borges wrote. "Over the past 18 months, we contributed more than 50 patches covering areas such as macOS packaging, build and infrastructure, GC fixes, and enhancements for Windows."
In fact, Java has become an essential technology at Microsoft, which once viewed Java's creator, Sun Microsystems, as a mortal enemy, and open-source in general as a danger to the industry. Microsoft currently deploys more than 500,000 Java Virtual Machines (JVMs) internally, the company says, excluding all Azure services and customer workloads with needs that go from back-end microservices to Big Data systems, message brokers, event streaming services, and gaming servers, the company says. More than 140,000 of these JVMs are already based on the Microsoft Build of OpenJDK.
Later this year, the Microsoft Build of OpenJDK will become the default distribution for Java 11 across Azure-managed services, Microsoft said in a statement. "Customers won’t have to perform any maintenance tasks, as the transition will be smooth and transparent through application deployments," the company says. "For all other Azure services, customers can bring their JDK of choice including Microsoft Build of OpenJDK. We will provide more updates on that in the coming months."
Posted by John K. Waters on April 6, 2021 at 6:22 PM0 comments
VMware unveiled a new distributed, multi-cloud platform this week designed to help its customers simplify the adoption and operation of multi-cloud environments.
The pitch for the new VMware Cloud is aimed at both software developers and IT operators. The platform is designed to boost the productivity of devs by enabling them to build and deploy to any cloud. The platform also gives IT the ability to modernize infrastructure and operations with better economics and less risk.
VMware Cloud brings its customers what the company calls "a more integrated experience," via the new Cloud Console, a single monitoring and management environment for VMware Cloud infrastructure, regardless of where it’s deployed; the App Navigator, a new tool for assessing and prioritizing application transformation initiatives across an application estate based on the value of each app; and VMware Cloud Universal , a flexible subscription that simplifies the purchase and consumption of VMware multi-cloud infrastructure and management services.
VMware has been heading for some version of this offering for years—20 of them, more or less. The company justifiably claims some huge numbers: 300,000 organizations have built and run more than 85 million workloads on VMware, and more than 5 million developers have built apps on its technology.
“We are on the cusp of the next evolution of cloud and apps," said VMware COO Raghu Raghuram, in a statement. "Architectures are becoming distributed and increasingly multi-cloud, while modern applications will soon outnumber traditional apps. The challenge for any CIO is to take advantage of this new innovation without introducing more complexity and risk."
VMware Cloud is the solution for this challenge, Raghuram said. It's the only cloud solution that customers can use today in the datacenter and on any cloud to "accelerate their modernization journey with speed, simplicity, and better security."
The company's pitch for the new platform aside, Raghuram offered a great observation about the impact of the quarantine on demand for these kinds of cloud from the enterprise in a blog post.
"Today we see incredible demand for digital-first services," he wrote, "from telemedicine to distance learning to touchless systems in retail and financial services. Nearly three-fourths of businesses we surveyed are expanding their investment in new services that engage customers or support what is now a long-term remote workforce with the tools to be productive. It’s one of the reasons why we see cloud adoption accelerating faster than ever, with cloud deployments expected to grow by 26%. And even more interesting, why businesses are investing so heavily in app modernization. In fact, of the organizations we’ve studied this year, 90% of executives are prioritizing migration and modernization of their legacy apps. The message is clear: the apps and services powering businesses today simply must evolve to meet the needs of the business in the future."
And there's an opportunity here for developers.
"We see a model for cloud that is both increasingly distributed and diverse – with apps deployed across a range of public clouds, within the data center and at the edge – but unified with centralized management and operations, centralized governance and security," he wrote. "This distributed multi-cloud model delivers the flexibility to build and run any application in the best environment, and access to the vast array of innovation from cloud providers, along with a unified model for security and operations at the level every enterprise demands."
That model, Raghuram said, is at the heart of the VMware Cloud platform.
Posted by John K. Waters on March 31, 2021 at 3:59 PM0 comments
The Eclipse Foundation this week announced the formation of the Eclipse Adoptium Working Group, a collaboration of vendors supporting the efforts of the Eclipse Adoptium Project, formerly known as AdoptOpenJDK.
AdoptOpenJDK is an open, community-led initiative formed to provide free, pre-built binaries of the reference implementation of the Java platform from OpenJDK. Since it was founded in 2017 by Martijn Verburg, a leader of the London Java Community, AdoptOpenJDK has seen more than 240 million downloads.
The Eclipse Adoptium Project is the continuation of the original AdoptOpenJDK mission, explained Mike Milinkovich, executive director of the Eclipse Foundation, and the working group was created in collaboration with the AdoptOpenJDK Technical Steering Committee.
"AdoptOpenJDK is about providing enterprises with high-quality Java runtimes, without requiring them to enter into a long-term support contracts with Oracle or one of the other vendors playing in that space," Milinkovich told me. "And Adoptium is a multi-vendor, vendor-neutral effort to reduce the costs for getting Java runtimes."
The Adoptium Working Group was created to provide the Java ecosystem with fully compatible distributions of Java runtimes based on OpenJDK source code—not a fork of OpenJDK, Milinkovich emphasized. "The intent here is for the community to pool its resources to build open JDK source code and deliver high-quality runtimes," he said.
The new working group has the support of Oracle, Milinkovich said. "We negotiated an agreement with them to get access to the TCKs, so that we know every runtime we deliver from Adoptium is going to be fully certified is 100% Java SE compliant," he said.
The Foundation emphasized this cooperation in its announcement: "This new open source working group was only possible through the successful negotiation of the OpenJDK Community TCK License Agreement (OCTLA) with Oracle, the steward of OpenJDK, the Java Community Process, and the Java compatibility brand. Under the terms of this agreement, Adoptium will run compatibility tests to ensure conformance to the Java specification."
Adoptium was founded by individual Java developers and a list of vendors that includes Alibaba Cloud, Huawei, IBM, iJUG, Karakun AG, Microsoft, New Relic, and Red Hat. The working group "complements the Eclipse Adoptium project" and will "provide the infrastructure, marketing, community building, and developer advocacy work needed to continue to ensure timely releases to the community and further the adoption of Eclipse Adoptium"
AdoptOpenJDK was popular and well established when its Technical Steering Committee decided it needed the Eclipse umbrella. "In every open source project’s life comes a time to take the necessary steps to enshrine its independence and longevity in a proven cultural and legal framework," Verburg wrote in a blog post announced the move last June. "A project of AdoptOpenJDK’s size and scale also needs an awful lot of logistical support, and the cracks in some places are starting to show!"
"Joining the Eclipse Foundation allows AdoptOpenJDK to continue to grow and to focus on our mission," he added.
"What the Eclipse Foundation brings to AdoptOpenJDK is a well-regarded, vendor-neutral governance model, and a well-documented development process," Milinkovich said. "Our IT staff is going to be doing a lot of work on the additional infrastructure required. There's quite a large-scale of infrastructure needed for doing the builds. We also have to provide the private infrastructure for doing the TCK tests. Oracle's TCK's are proprietary, so we can't do them out in the open, like we do most things. And then there's the additional test suite for quality testing that has to be supported in our infrastructure. The working group will be sharing the cost of creating that infrastructure, as well as doing a little developer advocacy, building some websites, etc. But we really are leveraging the good work that was done at adopt OpenJDK over the last couple of years."
Posted by John K. Waters on March 24, 2021 at 3:54 PM0 comments
Programming language rankings get regular headlines, and they should, at least from trend trackers like us. Among my favorite is the RedMonk quarterly, published this week. I like the methodology of their system, which extracts data from GitHub and Stack Overflow and combines them for "a ranking that attempts to reflect both code (GitHub) and discussion (Stack Overflow) traction."
In other words, it correlates what the cool kids are talking about with actual language usage "in an effort to extract insights into potential future adoption trends." It's a mix that makes it meaningful.
The latest ranking was posted by veteran industry analyst Stephen O'Grady on his RedMonk blog. "GitHub and Stack Overflow are used here, first, because of their size, and second, because of their public exposure of the data necessary for the analysis," he wrote.
There's quite a lot of change afoot in the programming world, the analysts found, but constant has been the rise of Python, which has maintained its top ranking ahead of Java. "Java was extremely hot on Python's heels – and was in fact closer to the number one ranking than to PHP behind it – but Python's ability to defend its new high ranking is notable," O'Grady wrote.
Half of the Top 20 languages experienced "a degree of movement," O'Grady added, "which is very unusual. It's difficult to attribute this definitively to any higher level macro trends, but the data is consistent with an industry that picked the pace back up in the last two quarters of the year after the initial chaos of lockdowns and so on gave way to livable if extremely suboptimal new routines."
Th RedMonk report surrounds a cool plotting of the language rankings with detailed analysis of key trends over the past quarter. As far as I'm concerned, it's a must read.
Posted by John K. Waters on March 4, 2021 at 3:54 PM0 comments
Foojay.io, the community site for developers who use, target, and run their applications on top of Java and OpenJDK, today announced the companies who will make up its advisory board. The roster includes Azul, Datadog, DataStax, JFrog, Payara, and Snyk. This board will guide the direction, content and oversight of the site, with a focus on growing the community and meeting its mission to provide free information for everyday Java developers.
In case you missed it (which I must confess, I did), Foojay is a nascent-but-evolving-at-warp-speed Java information consolidation site for everyone from hard-core, in-the-trenches Java jocks to the Java curious. And it is a thing of beauty. It organizes information from multiple sources into logical categories and delivers the warts-and-all info you won't see on the vendors' sites.
The site has articles, definitions (via the adorably named "Foojaypedia"), an events calendar, a Java Version Almanac that goes back to the Java 1 released in 1996, and up to Java 16. It lists OpenJDK vendors and distributions. There's a "What's New in OpenJDK/OpenJDK Update Release Details" section, and a section called "OpenJDK Command Line Arguments," with info on all the JVM command line arguments from Java 6 onwards. And the "Foojay Today" section publishes blog posts.
Running the project is the inimitable (and unpronounceable) Geertjan Wielenga, senior director of Open Source Projects at Azul and author of the must-read book Developer, Advocate! He talked with me about the project, which was started in April of last year, and has grown rapidly beyond early expectations. He said he thinks of it as a Java dashboard curating all the latest information for developers using Java daily,
"Back when I worked at Sun Microsystems," Wielenga told me, "you could go to Java.net and find blogs, opinion polls, and information about Java on a common community platform. And it was easy, because there was only one JDK and there were new releases only every year or so. And there was only one vendor. Since then, you could say Java has diversified, or you could say it has fragmented, but either way, we now need a layer on top of all these different OpenJDK vendors, distributions, releases, and various disparate Java communities, so that somebody starting from scratch has a place to go, and so does someone wanting a launching pad for being productive in a safe place."
The ultimate goal is to create a community like Java.net, Wielenga said.
"Foojay is an example of the strength and longevity of the Java community that is greater than any single company," said Stephen Chin, VP of Developer Relations at JFrog, in a statement. "It is composed of active, passionate, and caring individuals who want to share their expertise and help mentor the next generation of developers. We're excited to be part of the conversation and help the community leverage modern CI/CD and cloud-native technologies for our beloved Java."
Posted by John K. Waters on February 4, 2021 at 3:59 PM0 comments
The Eclipse Foundation's move to Europe continues apace with the formal establishment last week of the Eclipse Foundation AIBL, its new international non-profit association in Brussels, Belgium. The new European entity launches with the support of founding members Bosch, Daimler TSS, IBM, and SAP, the Foundation said in an announcement.
The Eclipse Foundation is one of the world's leading open-source software foundations, steward of the Eclipse IDE, enterprise Java, and the Eclipse MicroProfile, and the heart of a global ecosystem of developers, companies, and public sector entities. By moving its legal residence from the United States to Belgium, the Foundation has created "a global institution that builds on its existing membership base, active developer community, and strong institutional relationships to enable collaboration and the free flow of open source software innovation throughout the entire world," the announcement reads.
I talked with the Foundation's executive director, Mike Milinkovich, who has led the organization since its founding nearly 17 years ago, about the move last year. This seemed like another milestone moment to catch up, and he reminded me that "this is a proh-sess, not an event." (Canadians.)
"This is going to end up being a couple of years from the time we started to the time we're done" he said, "before we can say that we've fully completed the transition and emerged on the other side with our organization as it's going to be in the long term."
When Milinkovich talks about "the transition," he's not talking about shipping office furniture, of course. The move of the Eclipse.org Foundation, Inc., from a Delaware-based 501 C (6) non-profit organization to a Belgium-based 501 C (6) non-profit (also recognized by U.S. laws) involves some heavy lifting on the software side, and a couple of moving vans worth of membership agreements; working group documentation; intellectual property, trust policy, and trademark guidelines; and now, with Jakarta EE, platform specifications. Nevermind remapping of the Foundation's bylaws from the U.S. to a different legal framework.
"It's going to end up being a couple of years from the time we started to the time we come out on the other side, fully completed," he said.
The story of how the Eclipse Foundation got here stems from the organization's discovery of an already large European footprint.
"It started in October 2019, when, during a Foundation strategy session held in conjunction with the EclipseCon Europe event just outside Stuttgart, Germany," Milinkovich explained. "We were doing strategy setting for the following year, and one our European based directors said that we seemed to be doing really well in Europe, and wondered if we could do an analysis of where we were Europe. And so we started crunching some numbers and we found out that 70% of our paying members and 70% of our developers were based in Europe. We had, gradually over time, become a very Euro-centric organization; in terms of the number of employees, projects, and developers we had over there, we actually already were the largest open-source foundation in Europe. Seeing the numbers in black-and-white really brought it all home."
"And if we didn't do something," he added, "someone else would."
The move has been "remarkably smooth so far," Milinkovich said. To keep track of the Foundation's progress, be sure to subscribe to the organization's blog.
And while you're at it, keep reading this one.
Posted by John K. Waters on January 21, 2021 at 4:00 PM0 comments
One of the biggest events in the Java universe last year was the official release of the Eclipse Jakarta EE 9 Platform, Web Profile specifications, and related TCKs. It moved enterprise Java fully from the javax.* namespace to the jakarta.* namespace. That's about all it did, actually, but it was an extremely consequential change.
I talked with lots of people about the latest shift in the evolution of enterprise Java, and one of the guys I was most excited to connect with on this topic was Bruno Souza, founder and leader of the Brazil-based SouJava, the largest Java User Group (JUG) in the world. Souza was one of the initiators of the Apache Harmony project to create a non-proprietary Java virtual machine, he serves on the Executive Committee of the Java Community Process (JCP), and he's on the board of advisors at Java-based Platform-as-a-Service (PaaS) provider Jelastic.
"I was very excited about Jakarta EE, and we [at SouJava] were onboard from the very beginning," Souza told me. "I think it was a very courageous move for Oracle to get all this awesome and extremely valuable IP and donate it to the Eclipse Foundation.… [When] you have this big player that does everything, it's very hard for anyone to come in and help. Oracle was this big guy doing everything, and so, everyone was just kind of doing small things around design… The only way to get a Java EE [community] that was more open and participatory was for Oracle to reduce its participation. And they did it!"
Souza offered kudos to the Eclipse Foundation and its executive director, Mike Milinkovich, even though Oracle refused to give up the javax.* namespace, forcing the foundation to adopt jakarta.*, and he believes the change will be better for the enterprise Java community in the long run. Souza was also on the side of the slow move, he said, and not a supporter of the so-called Big Bang, the plan for a complete change-over from javax.* to jakarta.*, which the foundation did employ.
"Mike was a superb negotiator in all this," he said, "I don't think people realize what a huge thing this was…. The Java trademark is very valuable and it impacts a lot of different things, so I do understand [Oracle's position]…. And I wasn't a fan of the Big Bang, but honestly, I got convinced, and when the decision was made, I got behind it. Instead of us having this process that's going to take years and years and years, let's do it once, 'ripping off the band aid,' so everyone can get mad this one time, and we move on from there."
The release of Jakarta EE 9 might not seem like a big deal, Souza said, because it was primarily a shift of name spaces with very little in the way of upgrades. But now that that herculean task is complete, the community has the ability to innovate free of potential constraints from a dominant commercial player.
"My expectation is that now people will feel that this change was slow," he said, "but if you look at the long history of Java EE, it's relatively fast, and the process is going to get a lot faster…. And I think people want an ecosystem they can trust."
I asked Souza about what seems to be the background role played by the JCP in this exceedingly consequential change in the Java world.
"The JCP is the standards organization, and the truth is, innovation does not happen within the JCP," he said. "Innovation has always happened outside the JCP, in the field, where you can experiment, go as fast as you want, and break things. The standards process is not the place to innovate. But I will say that the JCP was very clear and very much at peace with that idea. And the elephant in the room is that the JCP is an Oracle entity. It's very open, and we've made it even more open in the last few years. And at the same time I think that there's always a barrier to how open you can be when you're inside a company. With Jakarta EE, we broke from this barrier and now we have an independent organization, which Oracle and IBM and others are part of, that can run a standards process. So, I don't see the JCP as reducing in size, but Java as growing."
You can hear the rest of my conversation with Bruno Souza, in which he reflects on the future of Java, on The WatersWorks Podcast. It's available on Apple Podcasts, Spotify, and most other providers.
Posted by John K. Waters on January 7, 2021 at 4:00 PM0 comments