In my previous article, Run Red Hat Enterprise Linux 8 in a container on RHEL 7, I showed how to start developing with the latest versions of languages, databases, and web servers available with Red Hat Enterprise Linux 8, even if you are still running RHEL 7. In this article, I’ll build on that base to show how to get started with Node using the current RHEL 8 application stream versions of Node.js and Redis 5.
Continue reading “Develop with Node.js in a container on Red Hat Enterprise Linux”
Java EE is a fantastic project. However, it was created in 1999, under the name of J2EE, and is 20 years old, which means it also faces challenges in keeping pace with enterprise demands.
Now, Java EE has a new home and a new brand. The project was migrated from Oracle to the Eclipse Foundation, and it is called Jakarta EE, under the Eclipse Enterprise for Java (EE4J) project. The Eclipse Foundation released Jakarta EE 8 on September 10, and in this article, we’ll look at what that means for enterprise Java.
Continue reading “Jakarta EE 8: The new era of Java EE explained”
In my previous article, Run Red Hat Enterprise Linux 8 in a container on RHEL 7, I showed how to start developing with the latest versions of languages, databases, and web servers available with Red Hat Enterprise Linux 8 even if you are still running RHEL 7. In this article, I’ll build on that base to show how to get started with the Flask microframework using the current RHEL 8 application stream version of Python 3.
From my perspective, using Red Hat Enterprise Linux 8 application streams in containers is preferable to using software collections on RHEL 7. While you need to get comfortable with containers, all of the software installs in the locations you’d expect. There is no need to use
scl commands to manage the selected software versions. Instead, each container gets an isolated user space. You don’t have to worry about conflicting versions.
Continue reading “Develop with Flask and Python 3 in a container on Red Hat Enterprise Linux”
I often find myself in a situation when I want to know where a function returns. There’s no need to know the return value, as this may be the same for multiple code paths (e.g.,
nullptr if something went wrong). It is embarrassing, but I sometimes have put
fprintf(stderr, "T1"); in my code just to follow which path the execution took. Needless to say, this behavior requires manual editing and recompilation and should be avoided if possible.
Here’s a way to elegantly debug where a function returns using
lldb from the command line.
Continue reading “How to debug where a function returns using LLDB from the command line”
The Java platform has become one of the most widely used platforms, with a huge ecosystem in the world of technology. Java lets developers create applications for several platforms, such as Windows, Linux, embedded systems, and mobile.
Java also has received criticisms, such as: Java is fat; Java takes a lot of memory; Java is verbose. But, Java was created to solve big problems, not small problems. Of course, you can also solve small problems with Java, but you see the real benefit of Java when you have a big problem, especially when creating solutions for enterprise environments. In this article, we’ll take a closer look at the current Java ecosystem.
Continue reading “Why Java is so hot right now”
The summer 2019 C++ meeting was in Cologne, Germany, 10 years since our last meeting in Germany. As usual, Red Hat sent three of us to the meeting: I attended in the Core language working group (CWG), Jonathan Wakely in Library (LWG), and Thomas Rodgers in SG1 (parallelism and concurrency).
Continue reading Report from July 2019 ISO C++ Meeting (Core Language)
I recently wrote articles on deploying an Express.js application to OpenShift, how to debug your Node.js application on OpenShift with Chrome Dev Tools and a short series on deploying modern web applications to OpenShift. All of those articles used a node module called Nodeshift, but I did a Jedi, hand-wavy thing when talking about it. This next series of articles takes a deeper look at what Nodeshift is and how it is used to ease the deployment of Node.js apps to OpenShift during development.
Continue reading “Easily deploy Node.js applications to Red Hat OpenShift using Nodeshift”
Red Hat Application Runtimes recently added extended support for the Spring Boot 2.1.6 runtime for Red Hat customers building Spring apps. Red Hat Application Runtimes provides application developers with a variety of application runtimes running on the Red Hat OpenShift Container Platform.
Introduction to Spring Boot
Spring Boot lets you create opinionated Spring-based standalone applications. The Spring Boot runtime also integrates with the OpenShift platform, allowing your services to externalize their configuration, implement health checks, provide resiliency and failover, and much more.
Continue reading “Extending support for Spring Boot 2.1.6 and Spring Reactive”
Kogito is cloud-native development, deployment, and execution platform for building intelligent applications, backed by battle-tested capabilities. It originates from well-known open source projects, such as Drools and jBPM. Key characteristics of Kogito include:
Continue reading Create your first application with Kogito
The Quarkus project is becoming quite popular among developers. Quarkus provides a fast-dev environment, and it has already a set of libraries, standards, and frameworks that are made available through extensions like RestEasy, Panache, SmallRye, Keycloak, and Kafka. Additionally, you can start using Kogito today to create intelligent Quarkus applications.
Continue reading “Kogito for Quarkus intelligent applications”