InfoQ Homepage Architecture & Design Content on InfoQ
-
Migrating Monoliths to Microservices with Decomposition and Incremental Changes
Microservices migrations are not a trivial change. You have to think carefully about whether or they're right for you. Maybe a monolith would be enough for your context and business needs. In this article, Sam Newman shares some decomposition and incremental changes patterns that can help you to evaluate and migrate to a microservices architecture.
-
How DSLs Withstand the Test of Time
Domain-specific languages let domain experts participate in the software development process. Few DSLs however withstand the test of time. Key success factors for longstanding DSLs seem to be user-centered design and adhering to the open–closed principle. Markdown, TeX, and CSS, have remained popular and relevant for two decades, even as their original target audience evolved.
-
Virtual Panel: the MicroProfile Influence on Microservices Frameworks
In mid-2016, the MicroProfile initiative was created as a collaboration of vendors to deliver microservices for enterprise Java. InfoQ recently asked the opinion of expert practitioners on how MicroProfile has influenced how developers today are building microservices-based applications, the emergence of new microservices frameworks and reverting back to monolith-based applications development.
-
Low-Code Platforms and the Rise of the Community Developer: Lots of Solutions, or Lots of Problems?
Low-code platforms are the hottest enterprise software category right now. With the current level of investment, it is hard to imagine a future that doesn’t feature lots of bespoke business apps being built by non-IT staff for use by their teams. Visibility of low code solutions is the key to managing risk.
-
AI No Silver Bullet for Cloud Security, But Here’s How It Can Help
In this article, the author looks at the real role of artificial intelligence in cloud security – the hype, the reality, and how we can resolve the gap between them. He encourages the reader to focus on making cloud security platforms that allow humans to provide truly intelligent threat responses, rather than relying on the machines to do it for us.
-
The Brain is Neither a Neural Network Nor a Computer: Book Review of The Biological Mind
Underlying much of artificial intelligence research is the idea that the essence of an individual resides in the brain. This is contrary to neuroscience which has discovered that a brain cannot work independently from the body and its environment. Understanding this enables us see what is reasonable to expect from artificial intelligence, as well as technology designed to improve human life.
-
Enhanced Streams Processing with Kotlin’s Sequence Interface
Data structures are an intrinsic part of every programming language, yet Java’s Stream interface lacks vital operations and its complex approach to extensibility gave rise to alternative libraries such as jOOλ and Guava. This article provides an alternative approach that can be easily integrated in any Java project using Kotlin's Sequence interface.
-
Performance Analysis for Arm vs x86 CPUs in the Cloud
In this article, the author uses AWS’s Arm (Graviton2) and x86_64 (Intel) EC2 instances to evaluate computational performance across different software runtimes, including Docker, Node.js, and WebAssembly. Our conclusion is that Arm is more cost effective in the cloud, especially with lightweight runtimes that are close to the underlying operating system.
-
The Kollected Kode Vicious Review and Author Q&A
Addison Wesley Professional The Kollected Kode Vicious by George V. Neville-Neil aims to provide thoughtful and pragmatic insight into programming to both experienced and younger software professionals on a variety of different topics related to programming. InfoQ has taken the chance to speak with author Neville-Neil about his book.
-
Donkey: a Highly-Performant HTTP Stack for Clojure
Donkey is the product of the quest for a highly performant Clojure HTTP stack aimed to scale at the rapid pace of growth we have been experiencing at AppsFlyer, and save us computing costs. In this article, we’ll briefly outline the use-case for a library like Donkey and present our benchmarks. Finally, we will discuss Clojure and immutability, and some of our design decisions.
-
Writing Firebase Apps on Windows, Mac, and Linux Using Electron
Electron-Firebase provides a quickstart framework for building cloud-connected applications on Windows, macOS, and Linux. By integrating Electron and Firebase, just a few configuration settings allow you to include a complete authentication workflow into your app using email/password, phone number, Google, Facebook, or many other identity providers.
-
Go Language at 13 Years: Ecosystem, Evolution, and Future in Conversation with Steve Francia
Go was started more than a decade ago in the Engineering department at Google. It was designed with the purpose of providing an easy-to-learn programming language that would allow to develop Google's systems at the next level. In the past decade, the language became more and more stable, currently being used for implementing some of the most popular tools on the web (Kubernetes, Terraform etc.).