InfoQ Homepage Articles
-
Enhance Your Testing Strategy with Mind Map-Driven Testing
Mind map-driven testing can enable testers to focus on test idea generation, it exposes you to your thinking and enables you to brainstorm and organize your ideas effectively. This article shares ideas and knowledge about mind maps and shows how they can be used as lean documents to plan, organize, record, present, and report on testing.
-
How to Spread Technical Practices Like TDD in an Organization
One of the success factors for Agile and DevOps is developers changing the way they work and adopting practices like Test-Driven Development (TDD). It’s not something that just happens by itself, and many of the “usual” ways of introducing change fail for TDD. This article outlines some of the things that actually do work and explains “Samman,” which is a coaching method used with developers.
-
Quick and Seamless Release Management for Java Projects with JReleaser
Andres Almiray's quest to learn Go led him to discover GoReleaser and its multiple benefits to managing Go projects. Inspired by a conversation with Max Andersen about the manner in which JBang manages releases on multiple platforms, Almiray embarked on a journey to build a flexible release tool for the Java ecosystem. InfoQ spoke to Almiray for a detailed view of JReleaser.
-
Inclusion Has to Be Continuous
To create a truly diverse culture, we need to have inclusion throughout the whole lifecycle of an employee’s career journey. Leaders need to foster a psychologically safe inclusive environment to allow diversity and diversity of thought to exist. They need to grow people to move them out and continuously get new people in to shake things up, to maintain diversity and inclusion.
-
Accelerating Deep Learning on the JVM with Apache Spark and NVIDIA GPUs
In this article, authors discuss how to use the combination of Deep Java Learning (DJL), Apache Spark v3, and NVIDIA GPU computing to simplify deep learning pipelines while improving performance and reducing costs. They also show the performance comparison of this solution with GPU vs CPU hardware, using Amazon EMR and NVIDIA RAPIDS Accelerator.
-
Reawakening Agile with OKRs?
Corporate agile often represents an improvement over what went before but falls short on delivering the high performance management wants and quality engineering environment developers dream of. The backlog becomes tyranny. Could OKRs - objectives and key results - reawaken the radical side of agile? Or do OKRs represent a return to command and control?
-
Using the Plan-Do-Check-Act Framework to Produce Performant and Highly Available Systems
The PDCA (plan-do-check-act) framework can be used to outline the performance, availability, and monitoring to enable teams to ensure performant and highly available applications. These include infrastructure design and setup, application architecture and design, coding, performance testing, and application monitoring.
-
Building Reliable Software Systems with Chaos Engineering
Advances in large-scale, distributed software systems are changing the game for software engineering. As an industry, we are quick to adopt practices that improve flexibility and improve feature velocity. If we can move quickly, can we do so without breaking things? Chaos Engineering practices can be used to navigate complexity and build more reliable systems.
-
Cameron Purdy Explains Ecstasy - a New Cloud Native Environment
In this interview, Cameron Purdy discusses Ecstasy - a new Cloud Native programming system and runtime. It is designed to be highly scalable and able to achieve very high density in Cloud environments. The project is taking shape but not at the release stage yet.
-
Virtual Group Coaching: How to Improve Group Relationships in Remote Work Settings
Due to the pandemic, many software development teams will work remotely longer or permanently or work in blended venues such as some team members working in an office, some working from home, some working from other venues. Virtual coaching can help to improve group interaction or social dynamics in virtual settings where people work together remotely as a group or team.
-
Shifting to Continuous Documentation as a New Approach for Code Knowledge
Documentation is an important part of code development. However, documentation quickly becomes stale as code changes. Continuous documentation focuses on three principles: continuously verifying documents, documenting when it is most needed, and coupling the documentation to the code.
-
Software Engineering at Google: Practices, Tools, Values, and Culture
The book Software Engineering at Google provides insights into the practices and tools used at Google to develop and maintain software with respect to time, scale, and the tradeoffs that all engineers make in development. It also explores the engineering values and the culture that’s based on them, emphasizing the main differences between programming and software engineering.