BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Programming Content on InfoQ

  • Exploring Architectural Concepts Building a Card Game

    One of the things I missed during the pandemic were my friends, the possibility to meet them, discuss with them and, why not, play cards with them. So I decided to implement an app to play Scopone with my friends and, at the same time, test “in the code” some architectural concepts which had been intriguing me for some time.

  • Improving Your Estimation Skills by Playing a Planning Game

    Underestimation is still the rule, rather than the exception. One bias especially relevant to the estimation process is the planning fallacy. This article explores the planning fallacy and how we are vulnerable to it. It explains how you can reduce your vulnerability to this fallacy through playing a planning game that has been specifically devised to help mitigate it.

  • Designing Secure Tenant Isolation in Python for Serverless Apps

    Software as a Service (SaaS) has become a very common way to deliver software today. While providing the benefits of easy access to users without the overhead of having to manage the operations themselves, this flips the paradigm and places the responsibility on software providers for maintaining ironclad SLAs, as well as all of the security and data privacy requirements.

  • Native Java in the Real World

    Microservices on Kubernetes are the native Java sweet spot: they have the most significant framework and Java runtime overhead. Native Java needs more effort to build, debug, test, deploy & profile. The application framework should fully support native Java in production. Native Java adoption can be incremental. But a native Java application only works if all its libraries support native Java.

  • Sustaining Fast Flow with Socio-Technical Thinking

    To sustain a fast flow of changes over long periods of time, organizations address both the social and technical, socio-technical, aspects of reducing complexity. Examples are incentivising good technical practices to keep code maintainable, architecting systems to minimize dependencies and maximize team motivation, and leveraging platforms to preclude whole categories of infrastructure blockers.

  • Kubernetes Native Java with Quarkus

    Quarkus is an industry leader in startup time and memory utilization for native and JVM-based Java applications. This reduces cloud costs. Kubernetes is a first-class deployment platform in Quarkus with support for its primitives and features. Developers can use their Java knowledge of APIs like Jakarta EE, MicroProfile, Spring, etc. Applications can be imperative or reactive - or both!

  • Revolutionizing Java with GraalVM Native Image

    GraalVM Native Image is an ahead-of-time compiler that generates native Java executables. These executables start very fast and use less CPU and memory. This makes Java in the cloud cheaper. GraalVM can even achieve peak throughput on par with the JVM. Many Java frameworks already support GraalVM, such as Spring Boot, Micronaut, Quarkus, Gluon, etc.

  • Two Must-Have Tools for Jakarta EE Developers

    The wildfly-jar-maven-plugin and the brand new wildfly-datasources-preview-galleon-pack from the WildFly project are worthy of your attention. These tools add on-the-fly generation of an Uber JAR including configuration for containerization and datasources, and make it a pleasure to write applications for Jakarta EE and WildFly.

  • A Standardized, Specification-Driven API Lifecycle

    At QCon Plus last November, Kin Lane, Chief Evangelist with Postman, and the Open Technologies Team lead presented on API specifications. API specifications are essential to him and at Postman. So he wanted to share a bit of how they see API specifications impacting how they produce and consume APIs.

  • Ballerina for Full-Stack Developers: a Guide to Creating Backend APIs

    This article explores Ballerina’s intuitive syntax for writing REST APIs. We also discuss authentication, authorization, OpenAPI tool, observability, SQL/NoSQL client libraries, and key language features. At the end of this article, you will have a good understanding of why Ballerina is a prominent candidate for writing your next backend API.

  • Level up Your Java Performance with TornadoVM

    GPUs, FPGAs, or multi-core CPUs are present in almost every computing system today. These devices help increase performance and run more efficient workloads, but most frameworks are built on C or C++ only. At QCon Plus, Juan Fumero spoke about TornadoVM, a high-performance computing platform for the JVM, allowing to offload, at runtime, Java code to run on heterogeneous hardware accelerators.

  • From Couch to Continuous Documentation: Incorporating Documentation into the Development Workflow

    As software teams and projects grow, they suffer from knowledge management pains related to their code - lengthy onboarding, limiting knowledge silos, complex code, and risk of attrition. Creating Walkthrough Documentation while practicing Continuous Documentation can address most of the problems that relate to code-related knowledge sharing and management.

BT