InfoQ Homepage Development Content on InfoQ
-
Creating Events from Databases Using Change Data Capture: Gunnar Morling at MicroXchg Berlin
When you store data in a database, you often also want to put the same data in a cache and a search engine. The challenge is how to keep all data in sync without distributed transactions and dual writes. One way is to use a change data capture (CDC) tool that captures all changes made. In a presentation at MicroXchg Berlin, Gunnar Morling described Debezium, an implementation of CDC using Kafka.
-
Emotion 10: CSS-in-JS with Flexible Scoped and Global Styling, and Server-Side Rendering
Emotion 10.0, a CSS-in-JS library, is a massive, long-awaited release with new features, improvements and bug fixes. Components can now be styled with the CSS property in a larger set of contexts, with a more natural syntax allowing access to the theme properties. A new Global component enables dynamic global styling. Those changes in turn made possible zero-configuration server-side rendering.
-
Convolutional Neural Network Deep Learning Techniques for Crowd Counting
Deep learning techniques like Convolutional Neural Networks (CNNs) are a better choice for crowd-counting use cases, compared to traditional detection or regression based models. Ganes Kesari, co-founder and head of analytics at Gramener, spoke last week at the AnacondaCon 2019 Conference on how to count things using artificial intelligence (AI) models.
-
F# 4.6 Released with Anonymous Records, Improved Performance
The most significant change in F# 4.6, now available with .NET Core 2.2, is the introduction of anonymous record types, which simplify the use of records in a number of contexts. Additionally, the F# compiler chain in Visual Studio 2019 has improved performance for medium-to-large size projects in several areas.
-
Migrating a Retail Monolith to Microservices: Sebastian Gauder at MicroXchg Berlin
In his presentation at MicroXchg in Berlin, Sebastian Gauder described how he and his teams migrated an existing food retail monolith at REWE, a large German company, into several business domains with 270 microservices, while increasing the number of teams from two up to 48. He also discussed the different design goals and rules they setup to make this possible.
-
ART Cloud Profiling to Improve Android App Performance
First introduced in Android Pie, ART optimizing profiles are a feature that leverages data sent to Play Cloud to optimize an app startup time on install or update. Data disclosed by Google show apps start 15% faster on average, with special cases reaching a 30% improvement.
-
Uber Releases Kraken: An Open Source P2P Docker Registry
Uber has released Kraken, an open source, peer-to-peer (P2P) Docker registry. Kraken is a highly available and scalable Docker registry tailored to meet the needs of enterprises and hybrid cloud environments.
-
Fastly Open-Sources Lucet, Its WebAssembly Compiler and Runtime
The Fastly edge cloud platform recently open-sourced Lucet, its native WebAssembly compiler and runtime. Lucet enables edge developers to build custom solutions for the edge at scale without limitations imposed by vendors, programming languages, or application programming interfaces (API).
-
Nullable Reference Types in F# 5
The introduction of nullable reference types in C# represents the biggest change to how .NET developers write code since async/await. Once it goes live, countless libraries will have to be updated with nullable annotations in order for this feature to work correctly. And to ensure interoperability, F# will need to respond in kind.
-
NSA Ghidra, a Reverse Engineering Tool, Runs on Java 11
Ghidra is a reverse-engineering tool written in Java, to help application security engineers understand application flow. It automates decompilation and analysis across many system architectures.
-
Mozilla Announces WASI Initiative to Run Web Assembly on All Devices, Computers, Operating Systems
Mozilla recently announced a new standardization effort aiming at running the same WebAssembly code across all devices, machines and operating systems. The new standard, WebAssembly System Interface (WASI), defines a single conceptual operating system interface, which can be implemented by multiple, actual operating systems. Mozilla and Fastly are already shipping prototypal WASI implementations.
-
Wildfly 16: Improvements to Messaging and Clustering
Continuing with its quarterly delivery model, Wildfly 16 was released last month, closing or resolving almost 200 issues, feature requests, and bugs. Included in this release was Galleon, a provisioning tool for constructing custom-tailored Wildfly servers, compatibility with JDK12, as well as several enhancements to messaging, and clustering support.
-
C# Futures: Deferred Error Handling
When writing robust software, there is often a need to perform a series of retriable operations. In order to make the system robust, each operation in the series can be coded so it is independent of the status of the previous operation. Before the deferred error handling proposal, this could be tedious to code.
-
Microsoft Expands the Availability of Its Cognitive Services: Anomaly Detector and Custom Vision
Microsoft recently announced the public preview of Anomaly Detector and general availability of Custom Vision. With both services, Microsoft further expands its Cognitive Services offering for its customers.
-
Effectively Using Jira with an Overarching Vision
Dzmitry Hryb of Atlassian partner DevInit has recently published an article responding to a TechCrunch story that claimed using Jira's issue-centric model could result in a myopia, which misses the "macro-vision." Recent writing by architect Eltjo R. Poort and DevOps lead Matt Saunders also offers patterns for using Jira with other best-fit tools to capture vision and architectural direction.