A Tentative Comparison of Fault Tolerance Libraries on the JVM

If you're implementing microservices or not, the chances are that you're calling HTTP endpoints. With HTTP calls, a lot of things can go wrong. Experienced developers plan for this and design beyond just the happy path. In general, fault tolerance encompasses the following features:

  • Retry
  • Timeout
  • Circuit Breaker
  • Fallback
  • Rate Limiter to avoid server-side 429 responses
  • Bulkhead: Rate Limiter limits the number of calls in a determined timeframe, while Bulkhead limits the number of concurrent calls

A couple of libraries implement these features on the JVM. In this post, we will look at Microprofile Fault Tolerance, Failsafe, and Resilience4J.

Building a Metadata Driven UI

Description

Metadata-driven UI is especially useful in project teams with a high back-end or DBA competence rather than UI.

In general, it provides an element alignment by invocation of a single endpoint which provides all data required like cardinality, language, font size, and the font itself.

JSON Values and the Joy of Scala

One of the most important aspects of functional programming is immutable data structures, better known as values. Updating these structures using the copy-on-write approach is very inefficient, and this is the reason why persistent data structures were created. 

On the other hand, JSON is a lightweight, text-based, language-independent data interchange format. It's become so popular due to its simplicity. There are a lot of libraries out there to work with JSON in the JVM ecosystem; however, none of them use persistent data structures.

Loveland Public Library to Host Free Beginners WordPress Class Online May 22, 2019

image credit: Janko Ferlic

Public libraries are one of the few remaining community centers where people freely pass on valuable skills to neighbors young and old. In addition to offering free access to books, computers, and the internet, libraries often host educational classes as a public service, with an emphasis on teaching fundamental skills for navigating the digital world.

Many people who are on fixed incomes or living paycheck to paycheck cannot afford to have internet service at home. For them, the library is a gateway to online communication, job hunting, and learning new skills.

Over the past five years, using WordPress has become one of those important skills, as the software is now used by 33% of the top 10 million websites, across nearly every major industry.

Packed into a full schedule of toddler story time, book chats, and knitting groups, the public library in Loveland, Colorado, is hosting a free workshop called Getting Started with a WordPress Website on May 22, 2019, from 9:00 AM – 10:30 AM MDT. Participants will learn the history and terminology of WordPress, along with the step-by-step basics of creating a website. Topics include posts vs pages, using media, installing a theme, and using plugins.

Participants who cannot attend in person at the library can register online for a free ticket on Facebook or through Eventbrite. Those participating remotely will need to install the Adobe Connect meeting browser plugin and will be able to listen to the lecture through the digital classroom and ask questions via chat.

Another class will be hosted July 2, 2019, for those who are unable to attend the May workshop.

Loveland Public Library is one of many libraries that host free WordPress classes. Skokie Public Library in Skokie, Illinois, will be hosting a Build a Website with WordPress.com workshop on Friday, May 24, and the Denver Public Library offers similar courses for WordPress.com in various locations. The New York Public Library plans to offer a Blogging for Beginners course at its Woodland Heights location on October 3, 2019. These are just a small sampling of the educational opportunities offered in this format. If you know someone who wants to get started with WordPress, local libraries are a good resource for finding a free, in-person class.

Creating and Manipulating PDFs with pdfrw

Patrick Maupin created a package he called pdfrw and released it back in 2012. The pdfrw package is a pure-Python library that you can use to read and write PDF files. At the time of writing, pdfrw was at version 0.4. With that version, it supports subsetting, merging, rotating and modifying data in PDFs. The pdfrw package has been used by the rst2pdf package (see chapter 18) since 2010 because pdfrw can “faithfully reproduce vector formats without rasterization.” You can also use pdfrw in conjunction with ReportLab to re-use potions of existing PDFs in new PDFs that you create with ReportLab.

In this article, we will learn how to do the following: