# stream

Published articles for stream.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Aniimo Launches on GeForce NOW Alongside a 007 First Light Update

DevFeed: [Aniimo Launches on GeForce NOW Alongside a 007 First Light Update](<https://devfeed.tech/articles/cute-critters-come-to-the-cloud-aniimo-launches-on-geforce-now-41301.md>)

Original publisher: [Read original article](<https://blogs.nvidia.com/blog/geforce-now-thursday-aniimo/>)

Author: GeForce NOW Community

Published: 2026-09-17T13:00:55Z

Content type: news

Language: en

Sources: [NVIDIA Blog](<https://devfeed.tech/sources/nvidia-blog.md>)

Topics: [GeForce](<https://devfeed.tech/topics/geforce.md>), [Cloud](<https://devfeed.tech/topics/cloud.md>), [Streaming](<https://devfeed.tech/topics/streaming.md>), [Steam Deck](<https://devfeed.tech/topics/steam-deck.md>), [Firefox](<https://devfeed.tech/topics/firefox.md>), [Nvidia](<https://devfeed.tech/topics/nvidia.md>)

Tags: [cloud-gaming](<https://devfeed.tech/tags/cloud-gaming.md>), [devices](<https://devfeed.tech/tags/devices.md>), [firefox](<https://devfeed.tech/tags/firefox.md>), [gaming](<https://devfeed.tech/tags/gaming.md>), [geforce-now](<https://devfeed.tech/tags/geforce-now.md>), [launches](<https://devfeed.tech/tags/launches.md>), [steam-deck](<https://devfeed.tech/tags/steam-deck.md>), [stream](<https://devfeed.tech/tags/stream.md>), [super-resolution](<https://devfeed.tech/tags/super-resolution.md>), [update](<https://devfeed.tech/tags/update.md>)

### AI overview

NVIDIA highlights Aniimo's launch on GeForce NOW, support for streaming across devices including Steam Deck and Firefox, and updates and promotions for 007 First Light. The article also mentions other new titles joining the cloud service.

### Source excerpt

A new creature-catching adventure is ready to stream from the cloud this week. Pawprint Studio's Aniimo arrives on GeForce NOW at launch, inviting gamers to explore the vibrant continent of Idyll across supported devices. Also this week, 007 First Light receives a path-tracing update on GeForce NOW, alongside a smashing limited-time Deluxe Edition sale on [...]

## MCP went stateless: What changed in the 2026-07-28 spec

DevFeed: [MCP went stateless: What changed in the 2026-07-28 spec](<https://devfeed.tech/articles/mcp-went-stateless-what-changed-in-the-2026-07-28-spec-31436.md>)

Original publisher: [Read original article](<https://workos.com/blog/mcp-stateless-spec-2026-07-28>)

Author: WorkOS

Published: 2026-09-16T00:00:00Z

Content type: article

Language: en

Sources: [WorkOS Blog](<https://devfeed.tech/sources/workos-blog.md>)

Topics: [Model Context Protocol](<https://devfeed.tech/topics/model-context-protocol.md>), [migration](<https://devfeed.tech/topics/migration.md>), [HTTP](<https://devfeed.tech/topics/http.md>), [servers](<https://devfeed.tech/topics/servers.md>), [client](<https://devfeed.tech/topics/client.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [client](<https://devfeed.tech/tags/client.md>), [http](<https://devfeed.tech/tags/http.md>), [load-balancer](<https://devfeed.tech/tags/load-balancer.md>), [mcp](<https://devfeed.tech/tags/mcp.md>), [replacement](<https://devfeed.tech/tags/replacement.md>), [request](<https://devfeed.tech/tags/request.md>), [routing](<https://devfeed.tech/tags/routing.md>), [server](<https://devfeed.tech/tags/server.md>), [servers](<https://devfeed.tech/tags/servers.md>), [sessions](<https://devfeed.tech/tags/sessions.md>), [stateless](<https://devfeed.tech/tags/stateless.md>), [stream](<https://devfeed.tech/tags/stream.md>)

### AI overview

The 2026-07-28 MCP specification removes protocol-level sessions, the initialize handshake, and stream resumability, making the protocol behave more like an ordinary HTTP API. Most migrations are mechanical, but lost stream requests can cause reliability regressions or duplicated side effects when retried, so side-effecting tools need application-level idempotency keys. The elicitation change also requires architectural rework.

### Source excerpt

Sessions, the initialize handshake, and stream resumability are all gone. Here is what replaced them, and what breaks if you ignore it.

## GHarchive data has become unreliable for measuring GitHub activity

DevFeed: [GHarchive data has become unreliable for measuring GitHub activity](<https://devfeed.tech/articles/how-much-should-you-trust-your-oss-data-34319.md>)

Original publisher: [Read original article](<http://opensource.googleblog.com/2026/09/how-much-should-you-trust-your-oss-data.html>)

Author: KD (noreply@blogger.com)

Published: 2026-09-03T16:00:00Z

Content type: opinion

Language: en

Sources: [Google Open Source Blog](<https://devfeed.tech/sources/google-open-source-blog.md>)

Topics: [data](<https://devfeed.tech/topics/data.md>), [datasets](<https://devfeed.tech/topics/datasets.md>), [GitHub](<https://devfeed.tech/topics/github.md>), [Crawler](<https://devfeed.tech/topics/crawler.md>), [GitHub API](<https://devfeed.tech/topics/github-api.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>), [GraphQL](<https://devfeed.tech/topics/graphql.md>)

Tags: [collect](<https://devfeed.tech/tags/collect.md>), [data](<https://devfeed.tech/tags/data.md>), [dataset](<https://devfeed.tech/tags/dataset.md>), [datasets](<https://devfeed.tech/tags/datasets.md>), [github](<https://devfeed.tech/tags/github.md>), [google](<https://devfeed.tech/tags/google.md>), [google-open-source](<https://devfeed.tech/tags/google-open-source.md>), [graphql](<https://devfeed.tech/tags/graphql.md>), [open-data-sets](<https://devfeed.tech/tags/open-data-sets.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [oss](<https://devfeed.tech/tags/oss.md>), [pipeline](<https://devfeed.tech/tags/pipeline.md>), [pull-requests](<https://devfeed.tech/tags/pull-requests.md>), [retention](<https://devfeed.tech/tags/retention.md>), [stream](<https://devfeed.tech/tags/stream.md>), [volume](<https://devfeed.tech/tags/volume.md>)

### AI overview

This article examines the reliability of open source data, focusing on GHarchive's coverage of GitHub events. It argues that GHarchive should not be used for real-time or volume-based metrics because event retention has declined and some activity is omitted by the GitHub Event stream and API limitations.

### Source excerpt

by Sophia Vargas, Google Open Source & Andrew Nesbitt, Ecosyste.ms Every second, open source contribution quietly shapes the software we rely on, and yet our view of this open ecosystem is surprisingly opaque. Open source development is performed in public spaces -- we can see the commits, issues and comments, the APIs and endpoints are free to use -- the logs are just sitting there, so why can't we just collect all of the data? ...Said every researcher, everywhere. However in most cases of open source related data, we are only looking at part of the whole. Why am I writing this post? Because many of us (including many business decision-makers) are too comfortable with unsubstantiated data. We've gotten used to it. Our models assume that it's smelly and we adjust the logic and weights to compromise. When it comes to open source, our confidence is even lower, even though our resulting decisions can directly impact individuals whom we collectively depend on. Let's consider one of my favorite datasets: GHarchive. Started as a hobby project in 2011, this crawler has amassed more than 15 years of event data from GitHub. While this source provides a historical record of open source development on GitHub, as a real-time or comprehensive source of metrics, it's unreliable and should not be a source for volume-based metrics. In 2025, GHarchive captured 14% fewer events than in 2024, despite steady growth in platform adoption. Since 2025, we estimate that data retention in GHarchive has fallen to ~50% and in 2026 it may be as low as 20% for some event types (see figure below). Prior to 2025, you could make the general assumption that the majority of events would be represented in this pipeline. Since 2025, we must now assume we may be missing at least half of events and possibly more -- not to mention all of the additional activity that's left out of the event API (see GitHub's GraphQL API.) The crawler logic behind this dataset is simple: give me all the events from the GitHub Ev

## iPhone Screenshots on Linux, on a Stream Deck Button

DevFeed: [iPhone Screenshots on Linux, on a Stream Deck Button](<https://devfeed.tech/articles/iphone-screenshots-on-linux-on-a-stream-deck-button-25177.md>)

Original publisher: [Read original article](<https://www.ivanmorgillo.com/2026/06/22/iphone-screenshots-on-linux-stream-deck/>)

Author: Ivan Morgillo

Published: 2026-06-22T09:30:00Z

Content type: tutorial

Language: en

Sources: [Ivan Morgillo](<https://devfeed.tech/sources/ivan-morgillo.md>)

Topics: [iphone](<https://devfeed.tech/topics/iphone.md>), [iOS](<https://devfeed.tech/topics/ios.md>), [Linux](<https://devfeed.tech/topics/linux.md>), [systemd](<https://devfeed.tech/topics/systemd.md>)

Tags: [capture](<https://devfeed.tech/tags/capture.md>), [command](<https://devfeed.tech/tags/command.md>), [ios](<https://devfeed.tech/tags/ios.md>), [iphone](<https://devfeed.tech/tags/iphone.md>), [linux](<https://devfeed.tech/tags/linux.md>), [root](<https://devfeed.tech/tags/root.md>), [screenshots](<https://devfeed.tech/tags/screenshots.md>), [stream](<https://devfeed.tech/tags/stream.md>), [systemd](<https://devfeed.tech/tags/systemd.md>)

### AI overview

A tutorial on capturing iPhone screenshots directly to the Linux clipboard with a Stream Deck button. On iOS 17 and later, it uses pymobiledevice3, Developer Mode, a mounted Developer Disk Image, and a root-run systemd tunnel service instead of the classic idevicescreenshot workflow.

### Source excerpt

How I screenshot my iPhone straight to the Linux clipboard with one Stream Deck button -- iOS 17+ needs pymobiledevice3 and a root tunnel, not the classic idevicescreenshot. No Mac required.

## Waiting for PostgreSQL 19 - json format for COPY TO

DevFeed: [Waiting for PostgreSQL 19 - json format for COPY TO](<https://devfeed.tech/articles/waiting-for-postgresql-19-json-format-for-copy-to-33684.md>)

Original publisher: [Read original article](<https://www.depesz.com/2026/03/29/waiting-for-postgresql-19-json-format-for-copy-to/>)

Author: depesz

Published: 2026-03-29T12:34:22Z

Content type: article

Language: en

Sources: [select \* from depesz;](<https://devfeed.tech/sources/select-from-depesz.md>)

Topics: [PostgreSQL](<https://devfeed.tech/topics/postgresql.md>), [JSON](<https://devfeed.tech/topics/json.md>), [export](<https://devfeed.tech/topics/export.md>), [data](<https://devfeed.tech/topics/data.md>), [Query (disambiguation)](<https://devfeed.tech/topics/query.md>), [interoperability](<https://devfeed.tech/topics/interoperability.md>)

Tags: [command](<https://devfeed.tech/tags/command.md>), [copy](<https://devfeed.tech/tags/copy.md>), [data](<https://devfeed.tech/tags/data.md>), [developers](<https://devfeed.tech/tags/developers.md>), [export](<https://devfeed.tech/tags/export.md>), [json](<https://devfeed.tech/tags/json.md>), [pg19](<https://devfeed.tech/tags/pg19.md>), [postgresql](<https://devfeed.tech/tags/postgresql.md>), [query](<https://devfeed.tech/tags/query.md>), [stream](<https://devfeed.tech/tags/stream.md>), [uncategorized](<https://devfeed.tech/tags/uncategorized.md>), [waiting](<https://devfeed.tech/tags/waiting.md>)

### AI overview

The article discusses a PostgreSQL 19 patch adding a JSON format option to COPY TO. It allows table data or query results to be exported as a stream of JSON objects, one object per line, with an option to wrap the output in an array.

### Source excerpt

On 20th of March 2026, Andrew Dunstan committed patch: json format for COPY TO This introduces the JSON format option for the COPY TO command, allowing users to export query results or table data directly as a stream of JSON objects (one per line, NDJSON style). The JSON format is currently supported only ... Continue reading "Waiting for PostgreSQL 19 - json format for COPY TO"

## Behind the build: 2025's BFCM globe in a pinball machine 🌎🕹

DevFeed: [Behind the build: 2025's BFCM globe in a pinball machine 🌎🕹](<https://devfeed.tech/articles/behind-the-build-2025-s-bfcm-globe-in-a-pinball-machine-1276.md>)

Original publisher: [Read original article](<https://shopify.engineering/2025-bfcm-live-globe>)

Author: Shopify Engineering

Published: 2025-12-03T14:28:24Z

Content type: article

Language: en

Sources: [Shopify Engineering](<https://devfeed.tech/sources/shopify-engineering.md>), [Shopify Engineering - Shopify Engineering](<https://devfeed.tech/sources/shopify-engineering-shopify-engineering.md>)

Topics: [Shopify](<https://devfeed.tech/topics/shopify.md>), [Three.js](<https://devfeed.tech/topics/threejs.md>), [real-time](<https://devfeed.tech/topics/real-time.md>), [React](<https://devfeed.tech/topics/react.md>), [browser](<https://devfeed.tech/topics/browser.md>), [Three.js shaders](<https://devfeed.tech/topics/three-js-shaders.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [3d](<https://devfeed.tech/tags/3d.md>), [browser](<https://devfeed.tech/tags/browser.md>), [js](<https://devfeed.tech/tags/js.md>), [performance](<https://devfeed.tech/tags/performance.md>), [physics](<https://devfeed.tech/tags/physics.md>), [pixel](<https://devfeed.tech/tags/pixel.md>), [react](<https://devfeed.tech/tags/react.md>), [react-three-fiber](<https://devfeed.tech/tags/react-three-fiber.md>), [real-time](<https://devfeed.tech/tags/real-time.md>), [server-sent-events](<https://devfeed.tech/tags/server-sent-events.md>), [shopify](<https://devfeed.tech/tags/shopify.md>), [stream](<https://devfeed.tech/tags/stream.md>), [three-js](<https://devfeed.tech/tags/three-js.md>)

### AI overview

Shopify describes its 2025 BFCM live globe, implemented as a browser-based pinball machine that visualizes merchant sales in real time. The three.js app uses react-three-fiber, server-sent events, a physics engine, VR support, and shaders for its display animations.

### Source excerpt

Real-time merchant sales rendered on our globe, Easter eggs galore, and a pinball machine because... why not?

## Postgres Replication Slots: Confirmed Flush LSN vs. Restart LSN

DevFeed: [Postgres Replication Slots: Confirmed Flush LSN vs. Restart LSN](<https://devfeed.tech/articles/postgres-replication-slots-confirmed-flush-lsn-vs-restart-lsn-18859.md>)

Original publisher: [Read original article](<https://www.morling.dev/blog/postgres-replication-slots-confirmed-flush-lsn-vs-restart-lsn/>)

Published: 2025-08-05T11:55:00Z

Content type: tutorial

Language: en

Sources: [Gunnar Morling](<https://devfeed.tech/sources/gunnar-morling.md>)

Topics: [Replication](<https://devfeed.tech/topics/replication.md>), [Databases](<https://devfeed.tech/topics/databases.md>), [Transactions](<https://devfeed.tech/topics/transactions.md>)

Tags: [capture](<https://devfeed.tech/tags/capture.md>), [concurrent](<https://devfeed.tech/tags/concurrent.md>), [database](<https://devfeed.tech/tags/database.md>), [debezium](<https://devfeed.tech/tags/debezium.md>), [postgres](<https://devfeed.tech/tags/postgres.md>), [recovery](<https://devfeed.tech/tags/recovery.md>), [replication](<https://devfeed.tech/tags/replication.md>), [retention](<https://devfeed.tech/tags/retention.md>), [stream](<https://devfeed.tech/tags/stream.md>), [streaming](<https://devfeed.tech/tags/streaming.md>), [transactions](<https://devfeed.tech/tags/transactions.md>), [troubleshooting](<https://devfeed.tech/tags/troubleshooting.md>)

### AI overview

This tutorial explains the difference between PostgreSQL replication slots' confirmed_flush_lsn and restart_lsn attributes. It describes how consumers resume from replication slots, how concurrent transactions affect the oldest WAL that may still be required, and why understanding both LSNs helps with troubleshooting and WAL retention.

### Source excerpt

Table of Contents confirmed_flush_sn: Tracking Consumer Progress restart_lsn: Handling Concurrent Transactions Mid-Transaction Recovery Looking Forward: Streaming In-Progress Transactions Replication slots in Postgres keep track of how far consumers have read a replication stream. After a restart, consumers--either Postgres read replicas or external tools for change data capture (CDC), like Debezium--resume reading from the last confirmed log sequence number (LSN) of their replication slot. The slot prevents the database from disposing of required log segments, allowing safe resumption after downtime. In this post, we are going to take a look at why Postgres replication slots don't have one but two LSN-related attributes: restart_lsn and confirmed_flush_lsn. Understanding the difference between the two is crucial for troubleshooting replication issues, optimizing WAL retention, and avoiding common pitfalls in production environments.

## When SIGTERM Does Nothing: A Postgres Mystery

DevFeed: [When SIGTERM Does Nothing: A Postgres Mystery](<https://devfeed.tech/articles/when-sigterm-does-nothing-a-postgres-mystery-5569.md>)

Original publisher: [Read original article](<https://clickhouse.com/blog/sigterm-postgres-mystery>)

Author: Kevin Biju Kizhake Kanichery

Published: 2025-07-08T14:29:41Z

Content type: article

Language: en

Sources: [ClickHouse Blog](<https://devfeed.tech/sources/clickhouse-blog.md>)

Topics: [bug](<https://devfeed.tech/topics/bug.md>), [Replication](<https://devfeed.tech/topics/replication.md>), [Databases](<https://devfeed.tech/topics/databases.md>), [clickhouse](<https://devfeed.tech/topics/clickhouse.md>), [Cloud](<https://devfeed.tech/topics/cloud.md>)

Tags: [blog](<https://devfeed.tech/tags/blog.md>), [bug](<https://devfeed.tech/tags/bug.md>), [clickhouse](<https://devfeed.tech/tags/clickhouse.md>), [cloud](<https://devfeed.tech/tags/cloud.md>), [community](<https://devfeed.tech/tags/community.md>), [postgres](<https://devfeed.tech/tags/postgres.md>), [production](<https://devfeed.tech/tags/production.md>), [read-replica](<https://devfeed.tech/tags/read-replica.md>), [real-time](<https://devfeed.tech/tags/real-time.md>), [replication](<https://devfeed.tech/tags/replication.md>), [stream](<https://devfeed.tech/tags/stream.md>)

### AI overview

The article investigates a Postgres bug affecting logical replication slot creation on read replicas. It explains how an unusually long-running query became impossible to terminate, how the issue was diagnosed, and how the ClickPipes team fixed it while working with the Postgres community.

### Source excerpt

A story about a bug with logical replication slot creation on Postgres read replicas

## Full-Stack React.js AI Chat with OpenAI API

DevFeed: [Full-Stack React.js AI Chat with OpenAI API](<https://devfeed.tech/articles/full-stack-react-js-ai-chat-with-openai-api-18952.md>)

Original publisher: [Read original article](<https://www.robinwieruch.de/react-ai-chat/>)

Author: Robin Wieruch

Published: 2025-04-14T11:50:46Z

Content type: tutorial

Language: en

Sources: [Robin Wieruch](<https://devfeed.tech/sources/robin-wieruch.md>)

Topics: [AI Chat](<https://devfeed.tech/topics/ai-chat.md>), [React](<https://devfeed.tech/topics/react.md>), [Next.js](<https://devfeed.tech/topics/next-js.md>), [OpenAI](<https://devfeed.tech/topics/openai.md>), [API](<https://devfeed.tech/topics/api.md>), [Front end](<https://devfeed.tech/topics/frontend.md>), [Back end](<https://devfeed.tech/topics/backend.md>), [SDKs](<https://devfeed.tech/topics/sdks.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [api](<https://devfeed.tech/tags/api.md>), [backend](<https://devfeed.tech/tags/backend.md>), [chat](<https://devfeed.tech/tags/chat.md>), [env-file-security](<https://devfeed.tech/tags/env-file-security.md>), [frontend](<https://devfeed.tech/tags/frontend.md>), [gpt](<https://devfeed.tech/tags/gpt.md>), [guide](<https://devfeed.tech/tags/guide.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [js](<https://devfeed.tech/tags/js.md>), [next-js](<https://devfeed.tech/tags/next-js.md>), [openai](<https://devfeed.tech/tags/openai.md>), [react](<https://devfeed.tech/tags/react.md>), [react-js-ai](<https://devfeed.tech/tags/react-js-ai.md>), [react-js-ai-chat](<https://devfeed.tech/tags/react-js-ai-chat.md>), [react-js-openai](<https://devfeed.tech/tags/react-js-openai.md>), [sdk](<https://devfeed.tech/tags/sdk.md>), [stream](<https://devfeed.tech/tags/stream.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>)

### AI overview

A tutorial for building a full-stack AI chat application with React.js, Next.js, and the OpenAI API. It covers API routes, API key configuration, chat state, a frontend interface, and streaming responses.

### Source excerpt

Build a full-stack AI chat app using React.js on Next.js and the OpenAI API ...

## Scaling Nextdoor's Datastores: Part 5

DevFeed: [Scaling Nextdoor's Datastores: Part 5](<https://devfeed.tech/articles/scaling-nextdoor-s-datastores-part-5-20344.md>)

Original publisher: [Read original article](<https://engblog.nextdoor.com/scaling-nextdoors-datastores-part-5-5221da60f374?source=rss----5e54f11cdfdf---4>)

Author: Slava Markeyev

Published: 2025-03-19T15:09:15Z

Content type: article

Language: en

Sources: [Nextdoor](<https://devfeed.tech/sources/nextdoor.md>)

Topics: [Databases](<https://devfeed.tech/topics/databases.md>), [Cache](<https://devfeed.tech/topics/cache.md>), [consistency](<https://devfeed.tech/topics/consistency.md>), [Scalability](<https://devfeed.tech/topics/scalability.md>), [Usability](<https://devfeed.tech/topics/usability.md>), [data](<https://devfeed.tech/topics/data.md>)

Tags: [cache](<https://devfeed.tech/tags/cache.md>), [cache-invalidation](<https://devfeed.tech/tags/cache-invalidation.md>), [caching-strategies](<https://devfeed.tech/tags/caching-strategies.md>), [consistency](<https://devfeed.tech/tags/consistency.md>), [database-consistency](<https://devfeed.tech/tags/database-consistency.md>), [database-scalability](<https://devfeed.tech/tags/database-scalability.md>), [databases](<https://devfeed.tech/tags/databases.md>), [rdbms](<https://devfeed.tech/tags/rdbms.md>), [reconciliation](<https://devfeed.tech/tags/reconciliation.md>), [scalability](<https://devfeed.tech/tags/scalability.md>), [stream](<https://devfeed.tech/tags/stream.md>), [usability](<https://devfeed.tech/tags/usability.md>)

### AI overview

The final installment of Nextdoor's datastore-scaling series explains how cache consistency can fail when a database writer misses its cache update. It presents a Change Data Capture stream and a reconciler that uses database changes to repair cache inconsistencies.

### Source excerpt

In this final installment of the Scaling Nextdoor's Datastores blog series, we detail how the Core-Services team at Nextdoor solved cache consistency challenges as part of a holistic approach to improve our database and cache scalability and usability. In Part 4: Keeping the cache consistent, we highlighted a class of consistency issues arising from racing cache writes and introduced an approach for forward cache versioning as a mechanism to avoid inconsistencies. The cache is able to decide which write to persist and which to reject because it is aware of the version of data it currently has. However, this is only a partial solution because it assumes writers will always succeed in communicating with the cache in a timely manner, if at all. Missed Writes Let's consider the scenario where Writers A and B both performed an update to the same row in the database and have not yet updated the cache. Writer A holds Version 1 and Writer B holds Version 2. What happens if Writer B with Value 2 fails to talk with the cache? Writer B fails to write to the cache. In this case the result is that the cache becomes inconsistent and we can't rely on the writers to provide that consistency. A process must exist outside of this interaction to fix-up the cache when Version 2 is written to the database but fails to be written to the cache. Change Data Stream To solve this problem we tap into a common feature provided by most modern databases, a Change Data Capture (CDC) Stream. A CDC Stream is a mechanism to subscribe to row level changes in a database. The change stream contains a row's previous column values along with the new values. Here's a visual example of the change stream when the last_name field gets updated in the database. For visual clarity the changed values have been underlined in red. Reconciler Since the database is the source of truth and the CDC Stream emits all changes, a consumer of this stream can clean up any consistency issues in the cache. In our system we ca

## How we aggregate 70 billion prices to show price context to our users

DevFeed: [How we aggregate 70 billion prices to show price context to our users](<https://devfeed.tech/articles/how-we-aggregate-70-billion-prices-to-show-price-context-to-our-users-28052.md>)

Original publisher: [Read original article](<https://tech.trivago.com/post/2025-02-13-how-we-aggregate-70-billion-prices-to-show-price-context-to-our-users/>)

Author: Santiago Bohorquez Suarez Data Analyst

Published: 2025-02-13T00:00:00Z

Content type: article

Language: en

Sources: [Trivago](<https://devfeed.tech/sources/trivago.md>)

Topics: [data](<https://devfeed.tech/topics/data.md>), [Development](<https://devfeed.tech/topics/development.md>), [datasets](<https://devfeed.tech/topics/datasets.md>), [Kafka](<https://devfeed.tech/topics/kafka.md>), [real-time](<https://devfeed.tech/topics/real-time.md>)

Tags: [data](<https://devfeed.tech/tags/data.md>), [data-science](<https://devfeed.tech/tags/data-science.md>), [datasets](<https://devfeed.tech/tags/datasets.md>), [development](<https://devfeed.tech/tags/development.md>), [kafka](<https://devfeed.tech/tags/kafka.md>), [product-development](<https://devfeed.tech/tags/product-development.md>), [real-time](<https://devfeed.tech/tags/real-time.md>), [stream](<https://devfeed.tech/tags/stream.md>), [technical](<https://devfeed.tech/tags/technical.md>), [trends](<https://devfeed.tech/tags/trends.md>)

### AI overview

trivago describes how it aggregates historic advertiser price data to provide scalable, fast price context for destinations and accommodations. The article explains the limitations of real-time aggregation, the challenges caused by fragmented datasets and technical debt, and the design goals for its Price Stream data product.

### Source excerpt

Price comparison is one of the key value propositions of trivago, and in doing so, we handle billions of prices everyday to provide our users with the most accurate and up to date price as possi...

## Processing embeddings with libSQL, Redpanda Kafka, and Mixedbread

DevFeed: [Processing embeddings with libSQL, Redpanda Kafka, and Mixedbread](<https://devfeed.tech/articles/processing-embeddings-with-libsql-redpanda-kafka-and-mixedbread-6023.md>)

Original publisher: [Read original article](<https://turso.tech/blog/processing-embeddings-with-libsql-redpanda-kafka-and-mixedbread>)

Author: Jamie Barton

Published: 2024-09-19T00:00:00Z

Content type: tutorial

Language: en

Sources: [Turso Blog](<https://devfeed.tech/sources/turso-blog.md>)

Topics: [Embeddings](<https://devfeed.tech/topics/embeddings.md>), [Kafka](<https://devfeed.tech/topics/kafka.md>), [Turso](<https://devfeed.tech/topics/turso.md>), [libSQL](<https://devfeed.tech/topics/libsql.md>), [API](<https://devfeed.tech/topics/api.md>), [Serverless](<https://devfeed.tech/topics/serverless.md>), [SQLite](<https://devfeed.tech/topics/sqlite.md>), [Database](<https://devfeed.tech/topics/database.md>), [CRUD](<https://devfeed.tech/topics/crud.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [async](<https://devfeed.tech/tags/async.md>), [embeddings](<https://devfeed.tech/tags/embeddings.md>), [kafka](<https://devfeed.tech/tags/kafka.md>), [libsql](<https://devfeed.tech/tags/libsql.md>), [serverless](<https://devfeed.tech/tags/serverless.md>), [stream](<https://devfeed.tech/tags/stream.md>), [turso](<https://devfeed.tech/tags/turso.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>), [workflow](<https://devfeed.tech/tags/workflow.md>)

### AI overview

This tutorial explains how to build an asynchronous embedding pipeline with libSQL, Turso, Redpanda Kafka, and Mixedbread. It shows how to decouple embedding generation from an API or web application, stream database changes to Kafka, and store and query embeddings using Turso's native vector support.

### Source excerpt

Build an async embedding pipeline using libSQL, Redpanda Kafka, and Mixedbread. Offload embedding generation from your API and stream results into Turso.

## Efficient data handling with the Streams API

DevFeed: [Efficient data handling with the Streams API](<https://devfeed.tech/articles/efficient-data-handling-with-the-streams-api-4046.md>)

Original publisher: [Read original article](<https://developer.mozilla.org/en-US/blog/efficient-data-handling-with-the-streams-api/>)

Author: vultr

Published: 2024-09-06T00:00:00Z

Content type: article

Language: en

Sources: [MDN Blog](<https://devfeed.tech/sources/mdn-blog.md>)

Topics: [Streaming](<https://devfeed.tech/topics/streaming.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [web applications](<https://devfeed.tech/topics/web-applications.md>), [API](<https://devfeed.tech/topics/api.md>), [Web Development](<https://devfeed.tech/topics/web-development.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [Firewall](<https://devfeed.tech/topics/firewall.md>), [ssh](<https://devfeed.tech/topics/ssh.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [backpressure](<https://devfeed.tech/tags/backpressure.md>), [data](<https://devfeed.tech/tags/data.md>), [efficiency](<https://devfeed.tech/tags/efficiency.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [performance](<https://devfeed.tech/tags/performance.md>), [stream](<https://devfeed.tech/tags/stream.md>), [streaming](<https://devfeed.tech/tags/streaming.md>), [streams](<https://devfeed.tech/tags/streams.md>), [web-applications](<https://devfeed.tech/tags/web-applications.md>)

### AI overview

This article explains how the Streams API lets JavaScript process network data incrementally as it arrives, instead of waiting for an entire resource to download. It covers chunk-based processing, backpressure, piping, and stream abstractions, then demonstrates a web application that transforms a data stream.

### Source excerpt

This post demonstrates how to use the Streams API in a web application to fetch and transform text on the fly. By processing the data as it arrives, this approach enhances performance, responsiveness, and resource efficiency.

## Tinybird connects with Confluent for real-time analytics at scale

DevFeed: [Tinybird connects with Confluent for real-time analytics at scale](<https://devfeed.tech/articles/tinybird-connects-with-confluent-for-real-time-analytics-at-scale-18693.md>)

Original publisher: [Read original article](<https://www.tinybird.co/blog/tinybird-connect-with-confluent>)

Author: Tinybird

Published: 2023-07-18T00:00:00Z

Content type: release

Language: en

Sources: [Tinybird](<https://devfeed.tech/sources/tinybird.md>)

Topics: [real-time](<https://devfeed.tech/topics/real-time.md>), [Kafka](<https://devfeed.tech/topics/kafka.md>), [data](<https://devfeed.tech/topics/data.md>)

Tags: [analytics](<https://devfeed.tech/tags/analytics.md>), [apis](<https://devfeed.tech/tags/apis.md>), [confluent](<https://devfeed.tech/tags/confluent.md>), [data](<https://devfeed.tech/tags/data.md>), [integration](<https://devfeed.tech/tags/integration.md>), [kafka](<https://devfeed.tech/tags/kafka.md>), [real-time](<https://devfeed.tech/tags/real-time.md>), [scale](<https://devfeed.tech/tags/scale.md>), [stream](<https://devfeed.tech/tags/stream.md>), [tinybird-news](<https://devfeed.tech/tags/tinybird-news.md>)

### AI overview

Tinybird now connects directly with Confluent, allowing users to stream Kafka data and build real-time APIs without custom integration code.

### Source excerpt

Tinybird now connects with Confluent directly. Stream your Kafka data and build real-time APIs without custom integration code.

## Scrypted Connects Cameras to Home Hubs

DevFeed: [Scrypted Connects Cameras to Home Hubs](<https://devfeed.tech/articles/meet-scrypted-stream-any-camera-to-any-home-hub-10660.md>)

Original publisher: [Read original article](<https://technotim.com/posts/scrypted-home-hub/>)

Author: Techno Tim

Published: 2023-05-13T15:00:00Z

Content type: tutorial

Language: en

Sources: [Techno Tim](<https://devfeed.tech/sources/techno-tim.md>)

Topics: [Home Assistant](<https://devfeed.tech/topics/home-assistant.md>), [webcam](<https://devfeed.tech/topics/webcam.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>), [Automation](<https://devfeed.tech/topics/automation.md>)

Tags: [alexa](<https://devfeed.tech/tags/alexa.md>), [automation](<https://devfeed.tech/tags/automation.md>), [camera](<https://devfeed.tech/tags/camera.md>), [devices](<https://devfeed.tech/tags/devices.md>), [google-home](<https://devfeed.tech/tags/google-home.md>), [home-assistant](<https://devfeed.tech/tags/home-assistant.md>), [homekit](<https://devfeed.tech/tags/homekit.md>), [hub](<https://devfeed.tech/tags/hub.md>), [integration](<https://devfeed.tech/tags/integration.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [self-hosted](<https://devfeed.tech/tags/self-hosted.md>), [stream](<https://devfeed.tech/tags/stream.md>), [unifi](<https://devfeed.tech/tags/unifi.md>), [unifi-cameras](<https://devfeed.tech/tags/unifi-cameras.md>)

### AI overview

This article presents Scrypted, open source software hosted on a local machine that connects cameras from various manufacturers to home hubs such as Apple HomeKit, Google Home, Alexa, and Home Assistant. It describes how this can enable hub features including notifications and automation without replacing existing cameras.

### Source excerpt

Meet Scrypted an Open Source app that will let you connect almost any camera to any home hub, certified or not! You can connect popular devices from UniFi, Amcrest, Hikvision, Nest & Google, Tuya, Reolink, and many others to your home hub of choice, whether that be Apple's HomeKit, Google Home, Alexa, or even Home Assistant.This lets you choose and reuse your own devices and take advantage...

## Office Hours: Apollo iOS

DevFeed: [Office Hours: Apollo iOS](<https://devfeed.tech/articles/office-hours-apollo-ios-23473.md>)

Original publisher: [Read original article](<https://www.apollographql.com/blog/office-hours-apollo-ios>)

Author: Dylan Anthony

Published: 2023-05-05T13:40:48Z

Content type: article

Language: en

Sources: [Apollo Blog](<https://devfeed.tech/sources/apollo-blog.md>)

Topics: [iOS](<https://devfeed.tech/topics/ios.md>), [GraphQL](<https://devfeed.tech/topics/graphql.md>), [Maintainers](<https://devfeed.tech/topics/maintainers.md>), [client](<https://devfeed.tech/topics/client.md>)

Tags: [discord](<https://devfeed.tech/tags/discord.md>), [graphql](<https://devfeed.tech/tags/graphql.md>), [ios](<https://devfeed.tech/tags/ios.md>), [maintainers](<https://devfeed.tech/tags/maintainers.md>), [mobile](<https://devfeed.tech/tags/mobile.md>), [stream](<https://devfeed.tech/tags/stream.md>)

### AI overview

A recording and transcript from Apollo's first Discord office-hours stream, featuring Jeff Auriemma and Anthony Miller discussing community questions about Apollo iOS. The article also announces a forthcoming Apollo Kotlin stream.

### Source excerpt

We recently kicked off a new live series in Discord: office hours! Here, the maintainers of Apollo projects will answer the community's most burning questions. We have a recording of the first stream below, where Jeff Auriemma and Anthony Miller discuss the hottest questions about Apollo iOS. Our next stream will be all about Apollo Kotlin on May 10, 13:30 UTC--join the Discord server now so you don't miss it!

## Android Makers by droidcon 2023: Talk and App Clinic Stream

DevFeed: [Android Makers by droidcon 2023: Talk and App Clinic Stream](<https://devfeed.tech/articles/amxdc23-32032.md>)

Original publisher: [Read original article](<https://www.maiatoday.net/p/amxdc23/>)

Published: 2023-04-27T19:46:32Z

Content type: opinion

Language: en

Sources: [maiatoday](<https://devfeed.tech/sources/maiatoday.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [App](<https://devfeed.tech/topics/app.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-makers-2023](<https://devfeed.tech/tags/android-makers-2023.md>), [animate](<https://devfeed.tech/tags/animate.md>), [app](<https://devfeed.tech/tags/app.md>), [compose](<https://devfeed.tech/tags/compose.md>), [conference](<https://devfeed.tech/tags/conference.md>), [droidcon](<https://devfeed.tech/tags/droidcon.md>), [stream](<https://devfeed.tech/tags/stream.md>), [talk](<https://devfeed.tech/tags/talk.md>)

### AI overview

A personal commentary on Android Makers by droidcon 2023, describing it as a small conference with interesting talks and networking, and linking to the author's talk and the app clinic session stream.

### Source excerpt

Android Makers by droidcon 2023 was a lovely well sized conference. Big enough to hear some interesting talks and small enough to make new friends. Here is my talk and also the stream of the app clinic session.

## Authenticated encryption: why you need it and how it works

DevFeed: [Authenticated encryption: why you need it and how it works](<https://devfeed.tech/articles/authenticated-encryption-why-you-need-it-and-how-it-works-27114.md>)

Original publisher: [Read original article](<https://andrea.corbellini.name/2023/03/09/authenticated-encryption/>)

Author: andreacorbellini

Published: 2023-03-09T18:35:00Z

Content type: tutorial

Language: en

Sources: [Andrea Corbellini](<https://devfeed.tech/sources/andrea-corbellini.md>)

Topics: [Cryptography](<https://devfeed.tech/topics/cryptography.md>), [Encryption](<https://devfeed.tech/topics/encryption.md>), [ChaCha](<https://devfeed.tech/topics/chacha-cipher.md>), [Algorithms](<https://devfeed.tech/topics/algorithms.md>)

Tags: [algorithms](<https://devfeed.tech/tags/algorithms.md>), [cryptographic](<https://devfeed.tech/tags/cryptographic.md>), [cryptography](<https://devfeed.tech/tags/cryptography.md>), [encryption](<https://devfeed.tech/tags/encryption.md>), [private-key](<https://devfeed.tech/tags/private-key.md>), [public-key](<https://devfeed.tech/tags/public-key.md>), [stream](<https://devfeed.tech/tags/stream.md>), [xor](<https://devfeed.tech/tags/xor.md>)

### AI overview

This tutorial explains malleability in modern cryptographic ciphers and how authenticated encryption addresses it. It introduces symmetric ciphers, illustrates the issue with examples, and discusses ChaCha20-Poly1305 and AES-GCM.

### Source excerpt

In this article I want to explore a common problem of modern cryptographic ciphers: malleability. I will explain that problem with some hands-on examples, and then look in detail at how that problem is solved through the use of authenticated encryption. I will describe in particular two algorithms that provide authenticated encryption: ChaCha20-Poly1305 and AES-GCM, and briefly mention some of their variants. The problem ...

## WhileSubscribed(5000)

DevFeed: [WhileSubscribed(5000)](<https://devfeed.tech/articles/whilesubscribed-5000-25635.md>)

Original publisher: [Read original article](<https://blog.p-y.wtf/whilesubscribed5000>)

Author: Pierre-Yves Ricau

Published: 2022-08-30T23:01:56Z

Content type: tutorial

Language: en

Sources: [Py's blog](<https://devfeed.tech/sources/py-s-blog.md>)

Topics: [Compose](<https://devfeed.tech/topics/compose.md>), [Android](<https://devfeed.tech/topics/android.md>), [now-in-android](<https://devfeed.tech/topics/now-in-android.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [compose](<https://devfeed.tech/tags/compose.md>), [coroutines](<https://devfeed.tech/tags/coroutines.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [now-in-android](<https://devfeed.tech/tags/now-in-android.md>), [stream](<https://devfeed.tech/tags/stream.md>)

### AI overview

An Android engineer examines the 5,000-millisecond WhileSubscribed timeout in Kotlin flow state sharing, explaining how it affects upstream work during configuration changes and considering alternatives such as sharing without a timeout or using Eagerly.

### Source excerpt

👋 Hi, this is P.Y., I work as an Android Engineer at Block. I know nothing about Compose so please let me know if I messed up on Twitter! I've been hacking on a new LeakCanary standalone app to visua

## The era of JSON data analytics

DevFeed: [The era of JSON data analytics](<https://devfeed.tech/articles/the-era-of-json-data-analytics-18680.md>)

Original publisher: [Read original article](<https://www.tinybird.co/blog/the-era-of-json-analytics>)

Author: Alberto Romeu

Published: 2021-12-21T00:00:00Z

Content type: article

Language: en

Sources: [Tinybird](<https://devfeed.tech/sources/tinybird.md>)

Topics: [JSON](<https://devfeed.tech/topics/json.md>), [data analytics](<https://devfeed.tech/topics/data-analytics.md>), [Kafka](<https://devfeed.tech/topics/kafka.md>), [Website](<https://devfeed.tech/topics/website.md>)

Tags: [data-analytics](<https://devfeed.tech/tags/data-analytics.md>), [files](<https://devfeed.tech/tags/files.md>), [json](<https://devfeed.tech/tags/json.md>), [kafka](<https://devfeed.tech/tags/kafka.md>), [local](<https://devfeed.tech/tags/local.md>), [remote](<https://devfeed.tech/tags/remote.md>), [scalable-analytics-architecture](<https://devfeed.tech/tags/scalable-analytics-architecture.md>), [stream](<https://devfeed.tech/tags/stream.md>), [web](<https://devfeed.tech/tags/web.md>)

### AI overview

The article states that JSON is the de facto standard for web data communication and describes native support for JSON from Kafka streams and local or remote NDJSON files.

### Source excerpt

JSON is the de facto standard for data communication in the web and that's why we are supporting it natively: from a Kafka stream or from local or remote NDJSON files (and very soon in other flavours)

## Kotlin Coroutines and Swift, revisited - Russell Wolf

DevFeed: [Kotlin Coroutines and Swift, revisited - Russell Wolf](<https://devfeed.tech/articles/kotlin-coroutines-and-swift-revisited-russell-wolf-38261.md>)

Original publisher: [Read original article](<https://touchlab.co/kotlin-coroutines-swift-revisited>)

Published: 2021-05-28T18:42:45Z

Content type: tutorial

Language: en

Sources: [Touchlab | Enterprise Mobile Innovation & Development](<https://devfeed.tech/sources/touchlab-enterprise-mobile-innovation-development.md>)

Topics: [Kotlin](<https://devfeed.tech/topics/kotlin.md>), [Coroutines](<https://devfeed.tech/topics/coroutines.md>), [kotlin-coroutines](<https://devfeed.tech/topics/kotlin-coroutines.md>), [Swift](<https://devfeed.tech/topics/swift.md>), [iOS](<https://devfeed.tech/topics/ios.md>), [Mobile](<https://devfeed.tech/topics/mobile.md>), [reactive](<https://devfeed.tech/topics/reactive.md>), [Framework](<https://devfeed.tech/topics/framework.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [architecture](<https://devfeed.tech/tags/architecture.md>), [article](<https://devfeed.tech/tags/article.md>), [class](<https://devfeed.tech/tags/class.md>), [classes](<https://devfeed.tech/tags/classes.md>), [code-generation](<https://devfeed.tech/tags/code-generation.md>), [coroutines](<https://devfeed.tech/tags/coroutines.md>), [error](<https://devfeed.tech/tags/error.md>), [implementation](<https://devfeed.tech/tags/implementation.md>), [internals](<https://devfeed.tech/tags/internals.md>), [interop](<https://devfeed.tech/tags/interop.md>), [ios](<https://devfeed.tech/tags/ios.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [kotlin-coroutines](<https://devfeed.tech/tags/kotlin-coroutines.md>), [kotlin-multiplatform](<https://devfeed.tech/tags/kotlin-multiplatform.md>), [mobile](<https://devfeed.tech/tags/mobile.md>), [patterns](<https://devfeed.tech/tags/patterns.md>), [reactive](<https://devfeed.tech/tags/reactive.md>), [stream](<https://devfeed.tech/tags/stream.md>), [suspend](<https://devfeed.tech/tags/suspend.md>), [swift](<https://devfeed.tech/tags/swift.md>)

### AI overview

Russell Wolf revisits patterns for exposing Kotlin coroutine-based repository code to iOS. The article recommends managing coroutine scope in Kotlin, adding a Swift wrapper to hide Kotlin implementation details, and adapting callback events for RxSwift and Combine.

### Source excerpt

An update on patterns for interop between Kotlin coroutines and RxSwift from Russell Wolf, engineer at Touchlab (Kotlin Multipaltform Mobile experts).

## EOF is not a character

DevFeed: [EOF is not a character](<https://devfeed.tech/articles/eof-is-not-a-character-33311.md>)

Original publisher: [Read original article](<https://ruslanspivak.com/eofnotchar/>)

Author: Ruslan Spivak

Published: 2020-03-01T16:53:00Z

Content type: tutorial

Language: en

Sources: [Ruslan Spivak](<https://devfeed.tech/sources/ruslan-spivak.md>)

Topics: [C](<https://devfeed.tech/topics/c.md>), [IO](<https://devfeed.tech/topics/io.md>), [Unix](<https://devfeed.tech/topics/unix.md>), [ASCII](<https://devfeed.tech/topics/ascii.md>), [Streams](<https://devfeed.tech/topics/streams.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [ascii](<https://devfeed.tech/tags/ascii.md>), [blog](<https://devfeed.tech/tags/blog.md>), [c](<https://devfeed.tech/tags/c.md>), [code](<https://devfeed.tech/tags/code.md>), [computer](<https://devfeed.tech/tags/computer.md>), [example](<https://devfeed.tech/tags/example.md>), [file](<https://devfeed.tech/tags/file.md>), [function](<https://devfeed.tech/tags/function.md>), [library](<https://devfeed.tech/tags/library.md>), [linux](<https://devfeed.tech/tags/linux.md>), [mac-os](<https://devfeed.tech/tags/mac-os.md>), [python](<https://devfeed.tech/tags/python.md>), [standard-library](<https://devfeed.tech/tags/standard-library.md>), [stream](<https://devfeed.tech/tags/stream.md>), [systems](<https://devfeed.tech/tags/systems.md>), [text](<https://devfeed.tech/tags/text.md>), [unix](<https://devfeed.tech/tags/unix.md>), [value](<https://devfeed.tech/tags/value.md>)

### AI overview

This tutorial explains that EOF in C is not a character and is not stored at the end of a file. It examines EOF in Unix I/O, its usual value of -1, and why that value cannot represent a character.

### Source excerpt

I was reading Computer Systems: A Programmer's Perspective the other day and in the chapter on Unix I/O the authors mention that there is no explicit "EOF character" at the end of a file.

## New Low-level Microphone API

DevFeed: [New Low-level Microphone API](<https://devfeed.tech/articles/new-low-level-microphone-api-19405.md>)

Original publisher: [Read original article](<https://www.codenameone.com/blog/new-low-level-microphone-api/>)

Author: Steve Hannah

Published: 2020-01-02T00:00:00Z

Content type: tutorial

Language: en

Sources: [CodeName One](<https://devfeed.tech/sources/codename-one.md>)

Topics: [API](<https://devfeed.tech/topics/api.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [async](<https://devfeed.tech/tags/async.md>), [audio](<https://devfeed.tech/tags/audio.md>), [callback](<https://devfeed.tech/tags/callback.md>), [stream](<https://devfeed.tech/tags/stream.md>), [visualization](<https://devfeed.tech/tags/visualization.md>), [voice](<https://devfeed.tech/tags/voice.md>)

### AI overview

This tutorial explains a new microphone API for accessing raw PCM audio data directly instead of saving recordings only to a file. It covers creating an audio buffer, handling callbacks on a separate thread, reading sample data and audio metadata, and connecting the buffer to MediaRecorderBuilder.

### Source excerpt

Today's blog post will delve further into our new media features. We've recently added an API to access raw PCM data from the device's microphone. Previously, the media recording API could only be configured to save audio to a file. This is fine for most use cases, but sometimes it is necessary to access the raw PCM stream directly. For example for voice recognition, or audio processing, or audio visualization.

## Terse Table, Radar Chart and Networking Enhancements

DevFeed: [Terse Table, Radar Chart and Networking Enhancements](<https://devfeed.tech/articles/terse-table-radar-chart-and-networking-enhancements-19549.md>)

Original publisher: [Read original article](<https://www.codenameone.com/blog/terse-table-radar-chart-networking/>)

Author: Shai Almog

Published: 2019-09-13T00:00:00Z

Content type: release

Language: en

Sources: [CodeName One](<https://devfeed.tech/sources/codename-one.md>)

Topics: [Network](<https://devfeed.tech/topics/network.md>), [Error Handling](<https://devfeed.tech/topics/error-handling.md>), [data](<https://devfeed.tech/topics/data.md>), [monitor](<https://devfeed.tech/topics/monitor.md>), [Code](<https://devfeed.tech/topics/code.md>), [API](<https://devfeed.tech/topics/api.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [change](<https://devfeed.tech/tags/change.md>), [data](<https://devfeed.tech/tags/data.md>), [error-handling](<https://devfeed.tech/tags/error-handling.md>), [files](<https://devfeed.tech/tags/files.md>), [monitor](<https://devfeed.tech/tags/monitor.md>), [network](<https://devfeed.tech/tags/network.md>), [radar](<https://devfeed.tech/tags/radar.md>), [stream](<https://devfeed.tech/tags/stream.md>)

### AI overview

A summer updates installment for Codename One introduces shorthand methods for Terse Table Layout, adds radar chart support, improves networking error handling and monitor statistics, and adds a Data interface for handling large data such as file uploads.

### Source excerpt

This is the 3rd installment of the updates we did over the summer and so far it isn't the last one. We have at least one more part coming in next week... Terse Table Layout TableLayout is pretty darn verbose e.g. this snippet from the TableLayout JavaDoc: cnt.add(tl.createConstraint(). horizontalSpan(2). heightPercentage(80). verticalAlign(Component.CENTER). horizontalAlign(Component.CENTER), new Label("Span H")). add(new Label("BBB")). add(tl.createConstraint(). widthPercentage(60). heightPercentage(20), new Label("CCC")); This is pretty verbose and a bit painful to write so we added shorthand methods:

[Next page](<https://devfeed.tech/tags/stream.md?cursor=WyIyMDE5LTA5LTEzVDAwOjAwOjAwKzAwOjAwIiwgIjhlMjYwYmI1LTI0YjAtNGZlYS04MWEzLTI2MGYyZWYzYjZjNCJd>)