A Commenters’ Debate on Java

There is “A Defense of Java” post over on DZone, which is an interesting enough post itself, by a guy from AppDynamics. What verges into very cool reading is the comment section (which made it DZone’s #1 commented article on Monday). There is a strong debate about the future of Java, other languages like Python and Node.js, and how major enterprises are building apps for high-traffic sites.

Intro to Microservices

An increasingly common buzzword in cloud computing is microservices. Like a lot of things associated with cloud technologies, a precise definition is difficult to find — and it can mean a lot of things to a lot of different people, depending on the context. Since this is a blog devoted to middleware issues, I want to define microservices within the context of that middle layer in computing, for application development.

A Definition

Microservices is an architectural approach for a software system. Meaning, it defines how individual services fit together and how those services are constructed (like, general constraints or best practices). What sets microservices apart from other architectural approaches is that it treats each service as a discrete and independent part of the architecture. That means that services themselves (within that system) have very clear definitions:

Continue reading “Intro to Microservices”

Choosing a Java EE Application Platform, Pt. 2: Technical Considerations

Part 1 looks at a handful of business considerations that you need to account for when you’re looking at Java EE application platforms — but that is only a part of selecting anything for your IT environment. In addition to treating an IT decision as a capital asset, your planning has to include technical factors: current and future development models, different types of applications, even rapid data processing.

Success today depends on achieving high levels of agility and flexibility. Major technology trends like mobile, the Internet of Things, and big data rely on lightweight, iterative environments like virtualization, cloud, and containers. This is  forcing organizations to rethink their  application development and deployment processes, application architecture designs, and choice of technologies used to build and run applications.

Continue reading “Choosing a Java EE Application Platform, Pt. 2: Technical Considerations”

Choosing a Java EE Application Platform, Pt. 1: Business Considerations

Historically, choosing a Java EE application platform was like any major capital planning — it was driven by a clear business logic:

  • Support for your current platform was expiring.
  • You had to standardize your systems.
  • You needed to accommodate a legacy system.
  • You needed to reduce costs.
  • You needed to take advantage of a specific advancement in Java technology.

Those are still primary factors, but there are a lot of additional factors to consider for something as foundational as an application platform. Part one of this series covers the business questions; part 2 will be out later this week to look at some of the technical considerations. [UPDATE: Part 2 is now live.]

Business considerations have a significant role in IT decision-making because your partnerships and budget commitments directly impact your company’s development agility, ability to adopt new technologies, and internal and external design decisions. When you start weighing your options, aside from transaction costs, there are a handful of questions you must ask to make sure that you maintain business agility.

Continue reading “Choosing a Java EE Application Platform, Pt. 1: Business Considerations”

Event-driven computing with Red Hat JBoss Data Grid

The convergence of Mobile, Social, Big Data, and Cloud has placed increasing demands on today’s applications to react instantaneously to changes in data at a large scale. A delay of a few seconds can mean the difference between engaging or losing a customer for a retailer, increased liquidity or fraud risk for a financial institution, or escalation of an adverse occurrence in a manufacturing process or IoT network.

Continue reading “Event-driven computing with Red Hat JBoss Data Grid”

JBoss EAP – Spearheading OSS adoption

There are a few Open Source technologies and products that have spearheaded the drive of Open Source  into the enterprise and managed to overcome historical objections  – Linux, Apache Web Server, MySQL, Postgres, WordPress, Hadoop, to name some of the better known technologies. Those technologies paved the way for the open source revolution of the last decade; every enterprise vendor and every organization has adopted open source to some degree. Open Source has won; get over it.

Continue reading “JBoss EAP – Spearheading OSS adoption”