Looking up a hash table library for caching in the 3scale Istio adapter

Looking up a hash table library for caching in the 3scale Istio adapter

You have probably already heard about the service mesh concept and one of its leading implementations, Istio. In the 3scale engineering team at Red Hat, we are working on a component to extend the functionality of Istio (and Red Hat’s distribution, Maistra) by integrating some API Management features via the 3scale platform. In this article, I’ll describe this work and some of the decisions made along the way.

Continue reading “Looking up a hash table library for caching in the 3scale Istio adapter”

Share
Red Hat Enterprise Linux 8 developer cheat sheet

Red Hat Enterprise Linux 8 developer cheat sheet

With the release of Red Hat Enterprise Linux 8, I’m pleased to introduce our new RHEL 8 cheat sheet for developers. This version has been updated from the beta version to reflect the final updates in RHEL 8. This document is intended for those of you who are:

  1. Already familiar with Red Hat Enterprise Linux, but you want a quick reference for new RHEL 8 commands.
  2. New to Red Hat Enterprise Linux and want to start exploring RHEL 8.

Here’s a sample of some of the common module commands you’ll find in this cheat sheet. 

Continue reading “Red Hat Enterprise Linux 8 developer cheat sheet”

Share
Red Hat Enterprise Linux 8 now generally available

Red Hat Enterprise Linux 8 now generally available

I think Red Hat Enterprise Linux 8 is the most developer-friendly Red Hat Enterprise Linux that we’ve delivered, and I hope you agree. Let’s get down to business, or rather coding, so you can see for yourself. You can read the Red Hat corporate press release.

For this article, I’ll quickly recap Red Hat Enterprise Linux 8 features (architecture, containers), introduce the very new and cool Red Hat Universal Base Image (UBI), and provide a handy list of developer resources to get you started on Red Hat Enterprise Linux 8.

TL;DR

Download RHEL 8 now

Download RHEL 8 image

Continue reading “Red Hat Enterprise Linux 8 now generally available”

Share
How C array sizes become part of the binary interface of a library

How C array sizes become part of the binary interface of a library

Most C compilers allow accessing an array declared extern, which has indeterminate bounds, like this:

extern int external_array[];

int
array_get (long int index)
{
  return external_array[index];
}

The definition of external_array could reside in a different translation unit and look like this:

int external_array[3] = { 1, 2, 3 };

The question is what happens if this separate definition is changed to this:

int external_array[4] = { 1, 2, 3, 4 };

Or this:

int external_array[2] = { 1, 2 };

Does either change preserve the binary interface (assuming that there is a mechanism that allows the application to determine the size of the array at run time)?

Curiously, the answer is that on many architectures, increasing the array size breaks binary interface (ABI) compatibility. Decreasing the array size may also cause compatibility problems. We’ll look more closely at ABI compatibility in this article and explain how to avoid problems.

Continue reading “How C array sizes become part of the binary interface of a library”

Share
Announcing odo: Developer-focused CLI for Red Hat OpenShift

Announcing odo: Developer-focused CLI for Red Hat OpenShift

Following the first announcement of odo earlier in the year, we are pleased to announce the beta release of odo, an official project hosted on the OpenShift GitHub repository. After months of hard work, the beta release indicates that the API is stable and that functionality going forward will not change.

OpenShift Do (odo, for short) is a fast and straightforward CLI for developers who write, build, and iterate constantly on their source code. Instead of using more-refined tools such as oc, odo focuses on the iterative inner-loop cycle of coding (iterating on code changes prior to committing to Git) rather than the management of each application deployed to OpenShift. This article provides an overview of odo’s functionality.

Continue reading “Announcing odo: Developer-focused CLI for Red Hat OpenShift”

Share
Easing application development on Red Hat OpenShift with odo

Easing application development on Red Hat OpenShift with odo

Have you ever developed applications on a platform like Red Hat OpenShift?

I’m a Java developer with more than 15 years of coding experience, and although I’ve been working with OpenShift for more than three years now, I haven’t found it especially easy to use as a day-to-day development platform. Why? There are many reasons, but the key ones involve complexity and speed. In this article, I’ll explain further and provide an introduction to the odo command-line tool.

Continue reading “Easing application development on Red Hat OpenShift with odo”

Share
Get started with Jenkins CI/CD in Red Hat OpenShift 4

Get started with Jenkins CI/CD in Red Hat OpenShift 4

Automation is what we (developers) do. We automate ticket sales and automobiles and streaming music services and everything you can possibly tie into an analog-to-digital converter. But, have we taken the time to automate our processes?

In this article, I’ll show how to build an automated integration and continuous delivery pipeline using Jenkins CI/CD and Red Hat OpenShift 4. I will not dive into a lot of details—and there are a lot of details—but we’ll get a good overview. The details will be explained later in this series of blog posts.

Continue reading “Get started with Jenkins CI/CD in Red Hat OpenShift 4”

Share