Facilitating the spread of knowledge and innovation in professional software development



Choose your language

InfoQ Homepage Programming Content on InfoQ

  • Takeoff: What Software Development Can Learn from Aviation

    A lot of professions have been around way longer than software development and have developed "best practices" to handle typical problems and challenges. Software developers can benefit from taking a closer look at aircraft maintenance or a pilot’s processes to learn from them, optimize our processes. and last but not least, try to reduce some of the stress that we experience over and over again.

  • Present and Future of Xamarin Community Toolkit: Q&A with Gerald Versluis

    Xamarin.Forms is evolving into .NET MAUI, the Xamarin Community Toolkit is also preparing for the transition. In this Q&A, InfoQ decided to interview Gerald Versluis. He is a software engineer at Microsoft from the Netherlands. In this interview, we will talk about Xamarin Community Toolkit, MAUI transition, and their future roadmap.

  • The Fundamentals of Testing with Persistence Layers

    Mocking out dependencies such as databases and other persistence layers leads to ineffective tests. Unfortunately, our industry is also focused on function-level testing to the exclusion of all else, so few are trained on how to write any other type of test. This article seeks to correct the issue by reintroducing the concept of testing with databases.

  • Is Artificial Intelligence Taking over DevOps?

    AI tools are slowly replacing the role of the developer – just as DevOps did before – and will eventually supplant DevOps entirely. Assessing whether that prediction is true is tricky. In this article, we’ll look at what AI promises for the development process, assess whether it can really ever take over from human developers, and what DevOps is likely to look like in a decades’ time.

  • A Lightweight, Safe, Portable, and High-Performance Runtime for Dapr

    Dapr (Distributed Application Runtime) has quickly become a very popular open-source framework for building microservices. It provides building blocks and pre-packaged services that are commonly used in distributed applications, such as service invocation, state management, message queues, resource bindings and triggers, mTLS secure connections, and service monitoring.

  • Gamification: a Strategy for Enterprises to Enable Digital Product Practices

    To embrace the changing needs of consumers, organizations are exploring new ways to ideate, collaborate and create products, some of them being embracing co-creation models, investment in long-term value, and fostering collective wisdom through gamification. This article shows how gamification helps to create perspective around product practices and bring us closer to next-generation products.

  • Service Mesh Ultimate Guide - Second Edition: Next Generation Microservices Development

    This second edition of Service Mesh Ultimate Guide article covers the latest developments in service mesh technologies like multi-cloud, multi-cluster, and multi-tenant models, service mesh extensions, and the operational aspects of productionizing service mesh.

  • Why and How to Upgrade to Java 16 or 17

    Java 17, the next Long Term Support (LTS) release, will be released on September 14, 2021. Unfortunately, many applications are still running on versions of Java before Java 11, the latest LTS. This article explains why you should upgrade your applications and how to do so relatively quickly. Practical examples are provided on what might break in your application and how to resolve it.

  • Kotlin at Ten. Interview with JetBrains’ Roman Elizarov

    JetBrains unveiled Kotlin in July 2011, aiming to create a modern, general-purpose programming language running on the JVM as well as on the Web. Kotlin has quickly seen huge adoption, especially for Android app development. InfoQ has taken the chance to speak with Kotlin project lead at JetBrains Roman Elizarov to learn more about the origins of the language and its future.

  • Adoption of Cloud Native Architecture, Part 3: Service Orchestration and Service Mesh

    This part 3 article in Cloud Native Architecture Adoption series, explores service interaction in a microservices based architecture, typical challenges we experience in distributed systems without proper governance, and how patterns like service orchestration and service mesh can help address those challenges.

  • Bootstrapping the Authentication Layer and Server with Auth0.js and Hasura

    When you're trying to prototype an MVP for your app and want to start iterating quickly, the upfront cost of setting up authentication can be a massive roadblock. The authentication layer requires significant work, and you must always be on the lookout for security vulnerabilities.

  • Is Developing Games for CTV Really That Hard?

    Developing a game for the CTV market is nowhere as difficult as some believe. While Roku may be the most difficult to start off with, it has potential, and Apple TV, Android and Amazon Fire TV all represent decent platforms for developers to hone their craft. Studios who dive into the field now will find that they may be able to set the standards of this rapidly evolving video gaming horizon.