InfoQ Homepage Programming Content on InfoQ
-
How I Contributed as a Tester to a Machine Learning System: Opportunities, Challenges and Learnings
Have you ever wondered about systems based on machine learning? In those cases, testing takes a backseat. And even if testing is done, it’s done mostly by developers themselves. A tester’s role is not clearly portrayed. Testers usually struggle to understand ML-based systems and explore what contributions they can make. This is a journey of assuring quality of ML-based systems as a tester.
-
Building Functional .NET Applications: a Guide for Choosing between F# vs C#
C# and F# are languages, each with growing user bases, that approach functional programming in fundamentally different ways. C# relies on object-oriented, imperative principles, and F# relies on functional principles. Some developers are using F# as a complement to C#, rather than relying on the functional capabilities that exist natively in C#.
-
PHP 8 - Arrays, Variables, Operators, Exception Handling and More
In this article, we discuss new features brought by PHP 8 related to arrays, variables, operators, and exception handling. We also discussed some trait-, class-, and function-related features. This article concludes the PHP 8 article series.
-
Hard-Won Lessons from the Trenches: Failure Modes of Platform Engineering — and How to Avoid Them
Platform Engineering is a hot topic with many orgs hoping to reap the benefits. However, it is easy to go astray. This article reviews the common pitfalls of building a platform and how to avoid them.
-
Article Series: Developing Apache Kafka applications on Kubernetes
Apache Kafka has integrations with most of the languages used these days, but in this article series, we cover its integration with Java. In this series, we also discuss how to provision, configure and secure an Apache Kafka cluster on a Kubernetes cluster.
-
Designing for Concurrency: the Hilbert’s Hotel Problem in Go
In this article, we want to show how achieving concurrency is the result of an appropriate design. A concurrent solution may turn out to be more elegant and easier to reason about than an equivalent sequential algorithm. To illustrate these concepts we use, as an example, the Hilbert’s Hotel mathematical problem.
-
If Twitter Doesn’t Have a Staging Environment, Should Anyone?
With Twitter revealing they do not have a staging environment, how important is staging to delivering quality? When so many tasks are shifting to the developer these days and no one best developer approach fits all, how do dev teams determine the best developer methodology for them and their company?
-
Your Tech Stack Doesn’t Do What Everyone Needs It To. What Next?
Stack extensibility is an essential trait of well-designed IT ecosystems. Low-code BPA (Business Process Automation) has advantages that puts it at the forefront of approaches to stack extensibility. Learn how low-code software increases process resiliency by empowering business teams with an easy-to-use, easy-to-understand and, most of all, IT-sanctioned set of tools.
-
Accessing .NET gRPC Endpoints from Anywhere via JSON Transcoding
JSON transcoding is a feature that has been added to gRPC in .NET 7. It allows gRPC endpoints to be accessible via a REST API, and it's much easier to set up than any alternative technology available at the time of writing, such as gRPC-Gateway and gRPC-Web.
-
Article Series: PHP 8.x
PHP continues to be one of the most widely used scripting languages on the web with 77.3% of all the websites whose server-side programming language is known using it according to w3tech. PHP 8 brings many new features and other improvements, which we shall explore in this article series.
-
How to Use Your Existing Software Development Process Data to Find More Bugs in Less Time
This article presents better solutions that employ data from the system under test and the tests themselves to optimize testing efforts. This allows teams to find more bugs (by making sure that bug-dense areas are tested) in less time (by reducing the executions of tests that are very unlikely to detect bugs).
-
Software Testing, Artificial Intelligence and Machine Learning Trends in 2023
Technology has taken significant leaps within the last few years, introducing advancements that have taken us further into the digital age, impacting the software testing industry, and we're seeing advances in machine learning, artificial intelligence, and the neural networks making them possible. These new technologies will change how software is developed and tested like never before.