InfoQ Homepage Programming Content on InfoQ
-
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 2021 - Second Edition: Next Generation Microservices Development
Get up to speed on the adoption of service mesh. Learn how to deploy service mesh solutions in heterogeneous infrastructures and application/service connectivity.
-
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.
-
Consistency, Coupling, and Complexity at the Edge
Successful use of a microservices architecture requires maintaining a clear separation of concerns in the various layers and by employing design principles best suited to each layer. While RESTful API design has become the standard for microservices, it can cause problems at the UI layer. Alternatives such as the Backend-for-Frontend pattern using GraphQL can provide better separation of concerns.
-
AI, ML and Data Engineering InfoQ Trends Report - August 2021
How AI, ML and Data Engineering are evolving in 2021 as seen by the InfoQ editorial team. Topics discussed include deep learning, edge deployment of machine learning algorithms, commercial robot platforms, GPU and CUDA programming, natural language processing and GPT-3, MLOps, and AutoML.