---
title: "Latest reads"
description: "The engineering internet, summarised so you can actually read it."
---

# Latest reads
> The engineering internet, summarised so you can actually read it.

## Articles

### [Building a GPT Backed by a Heroku-Deployed API](https://yomu.fyi/post/building-a-gpt-backed-by-a-heroku-deployed-api.md)
- Company: [Heroku](https://yomu.fyi/company/heroku.md)
- Author: Julián Duque
- Published: Mar 28, 2024
- Type: Tutorial

The walkthrough shows how to connect an OpenAI custom GPT to a Node.js backend that provides natural-language access to an employee directory. It builds an Express API with a POST /search endpoint, where OpenAI’s Chat Completions API converts a user’s question into a single SQL query, the database returns rows, and a second OpenAI call turns those rows into a natural-language response. The project uses Heroku Postgres, environment configuration, bearer-key authentication, Swagger UI, and an OpenAPI specification imported into the GPT action. The deployment flow covers seeding dummy records, deploying from a GitHub-connected repository, and configuring the action to call the hosted API, while noting that data leaves Heroku’s trust boundary for OpenAI services.


### [NeurIPS 2023: Our Favorite Papers on LLMs, Statistical Learning, and More](https://yomu.fyi/post/neurips-2023-our-favorite-papers-on-llms-statistical-learning-and-more.md)
- Company: [Two Sigma](https://yomu.fyi/company/two-sigma.md)
- Author: Emily Majewski
- Published: Mar 21, 2024
- Type: Explainer

Researchers reviewed prominent machine learning papers presented at NeurIPS 2023 covering large language models and statistical learning theory. One investigation showed that claimed emergent abilities in models such as GPT-3 often result from nonlinear evaluation metrics rather than fundamental shifts in model capability. To reduce the computational burden of model adaptation, QLoRA enables 65-billion-parameter model fine-tuning on a single 48-gigabyte GPU via 4-bit NormalFloat quantization and paged optimization. Direct Preference Optimization eliminates complex reward modeling by casting reinforcement learning from human feedback into a preference classification task. Additional work resolved statistical anomalies like double descent using effective parameter counts and introduced stochastic gradient approximations for Gaussian processes.


### [Macramé: Untangling the Knot on the Etsy Android Listing Screen](https://yomu.fyi/post/macrame-untangling-the-knot-on-the-etsy-android-listing-screen.md)
- Company: [Etsy](https://yomu.fyi/company/etsy.md)
- Author: John Kalmi
- Published: Mar 18, 2024
- Type: Problem & solution

The Etsy Android listing screen had accumulated nearly 200 experiments in three years, leaving a 4,000-plus-line Fragment, inconsistent patterns, low test coverage, and costly, brittle tests. Macramé replaced that legacy design with immutable state propagated through StateFlow to a reactive UI, transforming screen data into smaller ListingUiModels rendered by RecyclerView and ListAdapter. Sealed Events move through a single Dispatcher to focused Handlers, which update State, start asynchronous work, or emit SideEffects for operations such as navigation and logging. After a five-month rewrite, the new screen’s Time to First Content fell 18%, from 1,585 ms to 1,298 ms, while listings viewed rose 2.4% and business-logic test coverage reached 76%. The architecture still has wiring boilerplate, debugging challenges around Handler interactions, and possible overkill for simpler screens, but its use expanded to Cart and Shop.


### [Add Step](https://yomu.fyi/post/add-step.md)
- Company: [Okta](https://yomu.fyi/company/okta.md)
- Author: Alisa Duncan
- Published: Mar 12, 2024
- Type: Tutorial

The tutorial shows how to add OAuth 2.0 Step Up Authentication Challenge support to an Angular frontend and NestJS backend, so sensitive routes and API resources can require stronger authentication than ordinary access. It starts from a Lerna monorepo, configures an OAuth 2.0/OpenID Connect single-page application, and uses Okta libraries plus an Okta JWT Verifier to establish the basic authenticated app. The implementation checks authentication assurance through token ACR claims, returns the standard insufficient\_user\_authentication error when an API request lacks the required assurance, and uses Angular interceptor and application-code handling to redirect with acr\_values before retrying. It also describes authentication recency through max\_age and auth\_time, while noting that the original Okta CLI instructions no longer work exactly as written after the May 2025 account-plan change.


### [JIT WireGuard](https://yomu.fyi/post/jit-wireguard.md)
- Company: [Fly.io](https://yomu.fyi/company/fly-io.md)
- Published: Mar 12, 2024
- Type: Problem & solution

Fly.io describes how its gateways provisioned WireGuard peers for flyctl and why the old design became unreliable and slow. NATS delivery losses caused failed provisioning, while CI-generated peers accumulated because gateways never removed them, leaving hundreds of thousands of stale kernel entries that slowed reloads and contributed to kernel panics. The replacement detects handshake-initiation packets with BPF or a WebSockets packet hook, runs enough Noise cryptography to recover the initiator’s public key, then fetches matching peer data over an internal HTTP API and installs it on demand. A rate-limited SQLite cache supports cleanup jobs, and the gateway can use the observed four-tuple to initiate back toward flyctl and accelerate handshakes. After weeks in production, stale peers rounded to none, with faster setup and rebooting that no longer required reloading unused entries.


### [eBay's Responsible AI Principles](https://yomu.fyi/post/ebay-s-responsible-ai-principles.md)
- Company: [Ebay](https://yomu.fyi/company/ebay.md)
- Author: Lauren Wilcox
- Published: Mar 8, 2024
- Type: Announcement

eBay sets out principles for developing and using AI-powered customer tools and services while addressing safety and community needs. Its framework covers reliability, safety, security, inclusivity, equity, fairness, accountability, lawfulness, privacy by design, and transparency. The company says it rigorously tests AI technologies, protects confidential data used to train or operate systems, includes measures to avoid excluding groups, and applies quality and safety checks to datasets. It also calls for human oversight throughout development, launch, and monitoring, risk-based decisions, regulatory compliance, and privacy-focused design using state-of-the-art methods. For users, eBay says transparency may involve disclosures within an experience or broader communication, depending on lifecycle stage and the audience.


### [Fly Kubernetes does more now](https://yomu.fyi/post/fly-kubernetes-does-more-now.md)
- Company: [Fly.io](https://yomu.fyi/company/fly-io.md)
- Published: Mar 7, 2024
- Type: Announcement

Fly Kubernetes is moving from early access to a closed beta as a managed Kubernetes service backed by Fly.io infrastructure. It provides the Kubernetes API while mapping core primitives to Fly resources: containers become Firecracker microVMs through flyd and Firecracker, pods become Fly Machines, networking uses an internal WireGuard mesh, services use the Fly Proxy, and storage uses Fly Volumes. Virtual Kubelet, running alongside K3s, receives pod requests and deploys them through the Fly Machines API, removing user-managed node capacity planning and hardware management. The beta supports workloads, including GPUs, across available regions, with Deployments/ReplicaSets, Services, DNS, and ephemeral and persistent volumes, but only part of the Kubernetes API. Missing capabilities include multi-container pods, StatefulSets, network policies, horizontal pod autoscaling, and emptyDir volumes; pricing is free during beta and planned at $75 per cluster monthly afterward, excluding resource costs.


### [How We Built The Deals Tab in Swift UI](https://yomu.fyi/post/how-we-built-the-deals-tab-in-swift-ui.md)
- Company: [Etsy](https://yomu.fyi/company/etsy.md)
- Author: Pierre Rodgers
- Published: Mar 5, 2024
- Type: Problem & solution

Etsy’s App Updates team rebuilt the long-standing Updates tab as Deals, a destination for coupons and sales, while targeting an October launch ahead of Cyber Week 2023. The team chose Swift UI and Tuist to create a modular, preview-driven implementation rather than extend legacy Objective-C and server-driven layout code. The screen is assembled from typed API modules, parsed with Decodable, and rendered in a Swift UI List using reusable components such as buttons, headers, footers, and listing cards. To bridge incompatible legacy listing-card code, the module accepts a view builder from the UIKit hosting controller, allowing existing cards to be wrapped while newer cards could be implemented in Swift UI. After three months, Deals shipped ahead of deadline; new modules took one sprint or less, previews decoupled front-end work from API support, and the tab increased session conversion and app visits after its mid-October rollout.


### [Improving Shopify App’s Performance](https://yomu.fyi/post/improving-shopify-app-s-performance.md)
- Company: [Shopify](https://yomu.fyi/company/shopify.md)
- Author: 2023-10-18
- Published: Mar 5, 2024
- Type: Explainer

Shopify’s mobile app saw performance decline during its React Native migration, prompting a year-long effort to make critical screens load under 500ms at P75 and launch within 2s at P75. The team built real-time dashboards to filter results by device and operating system, then targeted excessive initial rendering, unnecessary background updates, launch overhead, and weak cache utilization. They introduced LazyScrollView and ListSource on FlashList, deferred work outside the viewport, enabled inlineRequires, optimized a native module, batched state updates, froze background components, and improved Restyle. They also fixed a graph QL cache issue and pre-warmed critical screen data, increasing cache-first delivery to as much as 90% for key screens. By year-end, app launch P75 was 44% faster and screen-load P75 times were reduced by 59%, with performance treated as an ongoing process requiring monitoring and repeated optimization.


### [Android App Size at Scale with Project Bonsai](https://yomu.fyi/post/android-app-size-at-scale-with-project-bonsai.md)
- Company: [Grab](https://yomu.fyi/company/grab.md)
- Author: Nguyen Van Minh
- Published: Mar 1, 2024
- Type: Problem & solution

Grab launched Project Bonsai to optimize the size of its Android superapp, which encompassed over four million lines of code across 1,500 modules. Because large app sizes negatively impact user acquisition on low-end devices with constrained bandwidth, the engineering team structured its optimization strategy around measurement, reduction, and containment. The team developed App Sizer, a custom CI-integrated tool that tracks binary compositions and module size contributions in Grafana. Initial reductions targeted Java and Kotlin dex files, resolving bloated transitive R classes by upgrading the Android Gradle Plugin to eliminate overly broad R8 retention rules. These initiatives achieved a 26% reduction in app download size while simultaneously decreasing overall disk footprint.


### [Cutting Through the Noise: Three Things We've Learned About Generative AI and Developer Productivity](https://yomu.fyi/post/cutting-through-the-noise-three-things-we-ve-learned-about-generative.md)
- Company: [Ebay](https://yomu.fyi/company/ebay.md)
- Author: Senthil Padmanabhan
- Published: Feb 29, 2024
- Type: Explainer

eBay describes three tracks for generative AI developer productivity: adopting a commercial offering, fine-tuning an open-source LLM on internal data, and building a knowledge base. Because no single metric is reliable, the exercise combines surveys with Git, DORA, Flow, code-quality, and performance measures. In a 300-developer Copilot A/B test, the treatment group had 27% code acceptance, 17% faster pull-request creation-to-merge time, and 12% lower Lead Time for Change; Sonar quality was unchanged. eBayCoder, based on Code Llama 13B and trained on eBay code and documentation, is presented as useful for software upkeep and broader context. Its internal GPT uses retrieval-augmented generation to answer questions from distributed sources, but early results remain preliminary and nonsensical answers require feedback and RLHF.


### [How to Manage User Lifecycle with .NET and SCIM](https://yomu.fyi/post/how-to-manage-user-lifecycle-with-net-and-scim.md)
- Company: [Okta](https://yomu.fyi/company/okta.md)
- Author: Ram Gandhi
- Published: Feb 29, 2024
- Type: Tutorial

Managing users across multiple systems can be slow, error-prone, difficult to synchronize, and a security risk, so the tutorial uses SCIM to standardize lifecycle operations. It builds a .NET 8 SCIM server with RESTful CRUD endpoints for the User resource, backed by Entity Framework Core and SQLite, and seeds sample users and emails for testing. Swagger UI is used to inspect and exercise the API, while Okta acts as the SCIM client and identity provider after OAuth-protected endpoints and provisioning are configured. The walkthrough tests importing users, syncing assignments, deprovisioning by setting active to false, reprovisioning by setting it to true, and propagating profile changes; however, the original Okta CLI instructions no longer work exactly as written after the May 2025 plan and tooling changes.


### [The End of Third](https://yomu.fyi/post/the-end-of-third.md)
- Company: [Okta](https://yomu.fyi/company/okta.md)
- Author: E. Dunham
- Published: Feb 29, 2024
- Type: Explainer

The post explains how browser phaseouts of third-party cookies can affect Okta authentication patterns and session features. Third-party cookies are issued by other domains and can support cross-site session introspection, federated login-related behavior, and convenience features, but browsers increasingly restrict them because of security and privacy concerns. Most Okta core authentication flows do not require them; however, applications using an Okta session across different top-level domains, customer-hosted sign-in experiences, ADSSO, and certain “remember me” functions may lose session introspection or extension while basic authentication and token return remain possible. The post recommends testing with Chrome’s third-party cookies disabled, using feature flags, and migrating away from these cookies before Google’s stated exemption ends in 2024.


### [Podcast: Nitzan Mekel-Bobrov on AI, the Future of Shopping Online, and the Value of Building In-House](https://yomu.fyi/post/podcast-nitzan-mekel-bobrov-on-ai-the-future-of-shopping-online-and-th.md)
- Company: [Ebay](https://yomu.fyi/company/ebay.md)
- Author: eBay News Team
- Published: Feb 28, 2024
- Type: Announcement

eBay Chief AI Officer Nitzan Mekel-Bobrov discusses his role, artificial intelligence’s changing landscape, and eBay’s position in ecommerce. He says the company’s powerful private cloud, combined with integration with public cloud providers, supports AI at scale and in real time. As a two-sided marketplace, eBay can apply AI to sellers and buyers through a magical listing tool for complex specifications, assistance finding hard-to-find items, and image generation that improves and expands user-provided visuals. For buyers, it can also interpret a vehicle problem, identify needed items and options, and present them without requiring a search through listings. Looking ahead, Mekel-Bobrov describes AI shopping assistants as category-informed chatbots that may act autonomously toward desired outcomes rather than merely execute assigned tasks.


### [Flexible Authentication Configurations in Angular Applications Using Okta](https://yomu.fyi/post/flexible-authentication-configurations-in-angular-applications-using-o.md)
- Company: [Okta](https://yomu.fyi/company/okta.md)
- Author: Alisa Duncan
- Published: Feb 28, 2024
- Type: Tutorial

This tutorial shows how to configure Okta authentication in an Angular standalone application, comparing values embedded in the app, build-time environment files, and runtime-loaded configuration. It scaffolds an Angular 17 project, creates an Okta OAuth 2.0/OpenID Connect single-page client, installs @okta/okta-angular 6.3 and @okta/okta-auth-js 7.5, and wires routes, guards, claims, and an authorization-header interceptor. Runtime configuration is served from src/api/config.json and loaded during startup through APP\_INITIALIZER, using HttpBackend so the authentication interceptor does not intercept the configuration request; the resulting properties populate OktaAuthConfigService. The sample verifies sign-in, profile access, protected routes, and sign-out, while noting that the original Okta CLI instructions are deprecated and no longer work exactly as written after May 2025.


### [Increasing velocity by modernizing a Python codebase](https://yomu.fyi/post/increasing-velocity-by-modernizing-a-python-codebase.md)
- Company: [Ramp](https://yomu.fyi/company/ramp.md)
- Author: Peyton McCullough
- Published: Feb 27, 2024
- Type: Problem & solution

An expanding monorepo of machine learning workflows became difficult to change safely as contributors and projects multiplied, undermining the velocity it was intended to support. The team replaced requirements.txt with Poetry, using pyproject.toml for direct dependencies and poetry.lock to record transitive dependencies and hashes, while virtual environments simplified setup. Ruff standardized formatting, linting, and CI enforcement; pytest addressed corner cases and bad assumptions, and mypy added annotations and stricter checks that could expose incompatible changes across call sites. To adopt these controls incrementally, the team used ignore comments and staged remediation, including a script for mypy exceptions, while an ignored revision preserved useful git blame history. The resulting codebase was kept in better shape, enabling faster iteration with greater confidence.


### [Enabling near real-time data analytics on the data lake](https://yomu.fyi/post/enabling-near-real-time-data-analytics-on-the-data-lake.md)
- Company: [Grab](https://yomu.fyi/company/grab.md)
- Author: Shi Kai Ng
- Published: Feb 23, 2024
- Type: Problem & solution

Traditional data lake setups using Parquet on Hive metastores struggle with frequent updates and long pipeline intervals, introducing significant latency for ad hoc queries. Grab solved this by implementing Apache Hudi to support near real-time analytics across bounded relational databases and unbounded Kafka streams. For high-throughput sources, Flink streams Avro log files to Merge On Read tables and generates compaction plans for asynchronous Spark writers. Low-throughput workloads leverage Copy On Write tables, while relational database sources ingest binlogs via Flink Change Data Capture connectors. This architecture reduced analytics data latency to the minute level without overloading production databases and Kafka clusters.


### [The journey of building a comprehensive attribution platform](https://yomu.fyi/post/the-journey-of-building-a-comprehensive-attribution-platform.md)
- Company: [Grab](https://yomu.fyi/company/grab.md)
- Author: Kang Huang
- Published: Feb 20, 2024
- Type: Problem & solution

Grab needed to modernize its marketing analytics from manual ad hoc queries and high data latency to a platform supporting real-time attribution for pricing models like cost per order. The engineering team initially deployed a pure stream-processing engine using Kappa architecture, Kafka, ScyllaDB, and Redis, which reduced latency from days to minutes and merged ads and promo touchpoints. However, stream-only processing faced high costs, out-of-order event issues, and difficulties running multi-touch models across longer historical windows. Grab transitioned to a Lambda architecture pairing Coban stream processing with Spark-based batch ETL and Amazon S3. This hybrid design separated real-time operational metrics from historical batch reporting, cutting real-time processing costs by approximately 25% while maintaining under 1% data discrepancy.


### [Meet the Winners of the 5th eBay University Machine Learning Challenge](https://yomu.fyi/post/meet-the-winners-of-the-5th-ebay-university-machine-learning-challenge.md)
- Company: [Ebay](https://yomu.fyi/company/ebay.md)
- Author: eBay News Team
- Published: Feb 15, 2024
- Type: Announcement

The 2023 eBay University Machine Learning Challenge brought together 1,439 students from 206 universities in 887 teams to develop solutions for real-world ecommerce problems. The winning team, NullPointer, comprised five graduate students from universities across the United States and earned summer internships at eBay. Its project used Named Entity Recognition (NER) to identify, extract, and label named entities—including people, places, brands, and sizes—in a dataset of 10 million eBay Germany sneaker-category item titles. At eBay, NER is commonly used to automatically extract key information from listings and search queries. The event recorded its largest turnout yet, and students can register for the next competition via EvalAI in late spring.


### [Globally Distributed Object Storage with Tigris](https://yomu.fyi/post/globally-distributed-object-storage-with-tigris.md)
- Company: [Fly.io](https://yomu.fyi/company/fly-io.md)
- Published: Feb 15, 2024
- Type: Announcement

Globally distributed object storage is presented as a way to avoid the latency and application complexity that arise when modern apps route uploads and downloads through a single-region S3 bucket. Tigris addresses this with redundant FoundationDB clusters for object tracking, Fly.io NVMe volumes as a first-level raw-byte cache, and a queueing system modeled on Apple’s QuiCK paper that sends data to replicas, in-demand regions, and third-party stores such as S3. Objects smaller than about 128 kilobytes are instantly global by default, while the platform also provides inter-region routing, consistency guarantees, instant purge, and relay regions. Its S3-compatible API means existing S3 libraries can be reused, and fly storage create injects the required AWS configuration and secrets. Fly.io says the partnership delivers object storage under its billing system without requiring a separate account.


[Newer posts](https://yomu.fyi/posts/page/188.md) · [Older posts](https://yomu.fyi/posts/page/190.md)
