Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage Agile Content on InfoQ

  • Curiosity and Self-Awareness are Must-Haves for Handling Conflict

    When you're in a team, collaborating with others, it's crucial to embrace diverse opinions and dissent; you need to have good conflicts. Conflicts have bad reputations, but with curiosity you can harvest more positive outcomes and build trust and psychological safety. Self-awareness of your emotions and reactions can help prevent saying or doing something that you might regret later.

  • Applying Test-Driven Development in the Cloud

    In the cloud, application development can be treated end-to-end with its accompanying infrastructure. This makes it possible to use test-driven development (TDD) and refactoring on the full application, which can bring down maintenance costs.

  • What Software Developers Can Do to Learn Effectively

    Software developers are constantly learning new languages, frameworks, tools, and techniques. It can be challenging to decide which topic to learn, estimate our competence level, prevent becoming overwhelmed, and keep our learning effective. For better learning, break it down into realistically sized phases, and repeat the same topic several times to really get to experience it properly.

  • Is ChatGPT Fit for Every Purpose: Alan Turing Ethics Fellow Presents Checklist in Devoxx UK Keynote

    During her keynote at Devoxx UK, Mhairi Aitken talked about the limitations of AI when grappling with the complexities of human language. Further, she provided checklist developers use to inspect the AI Foundations before building on top of them. She urged us to be guided by ethical and social considerations when building on AI, as a general-purpose AI model may not be fit for every purpose.

  • How Airbnb Improved its CI Pipeline for iOS Using AWS and Terraform

    AirBnb has historically managed its own fleet of Macs to run its iOS continuous integration pipeline. Thanks to AWS providing support for Macs, AirBnb engineers could migrate their iOS CI infrastructure to AWS to increase flexibility, consistency, and efficiency.

  • Adopting Artificial Intelligence: Things Leaders Need to Know

    Artificial intelligence (AI) can help companies identify new opportunities and products, and stay ahead of the competition. Senior software managers should understand the basics of how this new technology works, why agility is important in developing AI products, and how to hire or train people for new roles.

  • Java News Roundup: JDK 21 Updates, Spring Data 2023.0, JobRunr 6.2, Micronaut 4.0 Milestones

    This week's Java roundup for May 8th, 2023, features news from OpenJDK, JDK 21, GraalVM Native Build Tools 0.9.22, Spring Framework, Spring Data and Spring Shell releases, Micronaut 4.0-M3, Quarkus 3.0.3, Eclipse Vert.x releases, Micrometer Metrics and Tracing releases, Groovy 4.0.12, Tomcat releases, Maven 3.9.2, Piranha 23.5.0, Reactor 2022.0.7, JobRunr 6.2, JDKMon releases and Devoxx UK.

  • How to Improve Testing by Using a Gentle Nudge

    Nudging gives us opportunities to positively influence our behavior. Its principles can be applied in testing to increase attention or to enhance the product's quality. Nudging makes use of our biases. This term may cause concern for testers as it poses a risk to delivering useful software. However, scientists have also recognized its potential to positively influence our behavior.

  • How Open-Source Maintainers Can Deal with Toxic Behavior

    Three toxic behaviors that open-source maintainers experience are entitlement, people venting their frustration, and outright attacks. Growing a thick skin and ignoring the behavior can lead to a negative spiral of angriness and sadness. Instead, we should call out the behavior and remind people that open source means collaboration and cooperation.

  • Amazon CodeCatalyst Moves to GA with Amazon CodeWhisperer Support

    Amazon moved CodeCatalyst into full general availability with a number of new features. CodeCatalyst provides templates to streamline creating the project's infrastructure, CI/CD pipelines, development environments, and issue management system. New features with the GA release include better support for GitHub repos, integration with Amazon CodeWhisperer, and support for AWS Graviton processors.

  • Google Cloud Deploy Adds Canary and Parallel Deployment Support

    Google Cloud has released canary and parallel deployment support for Google Cloud Deploy. Both features work for Google Kubernetes Engine, Cloud Run, and Anthos. The features can be combined together for more advanced rollout strategies.

  • Late Architecture with Functional Programming

    Many approaches to software architecture assume that the architecture is planned at the beginning. Unfortunately, architecture planned in this way is hard to change later. Functional programming can help achieve loose coupling to the point that advance planning can be kept to a minimum, and architectural decisions can be changed later.

  • Spotify Reveals Metrics for Success of Developer Portal Backstage

    Music streaming giant Spotify has recently shared how it measures the return on investment (ROI) of Backstage, its open platform for building developer portals. Hgh-frequency Backstage users deploy software more often and in less time, with higher perceived productivity, and employees using it also stay longer with the company.

  • What Engineers and Companies Can Do to Increase Social Impact

    Engineers in the tech industry have the means for social impact through their network, skills, and experience. Companies can create impact by making business practices socially-minded. Inclusive training considers the circumstances and backgrounds of individuals, with minimum entry barriers to ensure broad participation, including ethnicity, gender, neurodiversity, and socio-economic background.

  • Real-Time Messaging Architecture at Slack

    Slack recently described how it sends millions of messages daily in real-time across the globe. The company provides a comprehensive insight into its architecture, designed to manage real-time messages at scale. It highlights the unique challenges posed by delivering real-time messages across different time zones and regions and how Slack's engineers designed the infrastructure to handle them.