---
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

### [Background Enhancement Tool Turns Any Photo Into a Studio-Quality Product Image](https://yomu.fyi/post/background-enhancement-tool-turns-any-photo-into-a-studio-quality-prod.md)
- Company: [Ebay](https://yomu.fyi/company/ebay.md)
- Author: eBay News Team
- Published: Jun 4, 2024
- Type: Announcement

eBay’s background enhancement tool addresses the effort and expense of producing polished product photographs for listings. Sellers can remove an existing photo’s background with eBay’s background removal tool, choose from AI-generated scenes, and apply a new backdrop during listing in the iOS and Android mobile apps. The feature is available to iOS users in the U.S., U.K., and Germany, with Android rollout planned over the coming months, and remains in early rollout for feedback and iteration. It uses open source deep learning inpainting models, including Stable Diffusion, alongside eBay’s anonymous data and infrastructure; future visual generation models will be fine-tuned using seller feedback. Responsible AI collaboration, accuracy guidance, and transparency reminders are intended to reduce misrepresentation of products and their condition.


### [More problems](https://yomu.fyi/post/more-problems.md)
- Company: [Cursor](https://yomu.fyi/company/cursor.md)
- Author: Aman Sanger
- Published: May 25, 2024
- Type: Explainer

The post outlines research problems for the next phase of AI programming, centered on making coding systems predict actions, perform larger edits, understand codebases, and debug software. Proposed directions include low-latency next-action models for keystrokes, locations, files, terminal commands, and edits; background execution for “perfect edits” and pseudocode compilation; and multi-file changes supported by stronger tool use, reasoning, and agent trajectories. For context, retrieval alone is described as insufficient for codebase questions requiring multiple hops, while useful context may span documentation, source, history, UI pixels, logs, and messages. The post recommends combining retrieval, recurrence, and long-context attention, alongside specialized rerankers, multi-hop embedders, caching, and codebase-level retrieval. For reliability, it proposes calibrated bug detection, always-on AI linting, runtime-state tracking through cursor/debug, and improved debugger tool use, while noting trade-offs involving latency, false positives, infrastructure, and user experience.


### [How we evaluated the business impact of marketing campaigns](https://yomu.fyi/post/how-we-evaluated-the-business-impact-of-marketing-campaigns.md)
- Company: [Grab](https://yomu.fyi/company/grab.md)
- Author: Jie Zhang
- Published: May 23, 2024
- Type: Problem & solution

Grab needed a scalable, centralised way to evaluate the business impact of millions of marketing messages sent across expanding campaigns. Manual analysis by marketing analysts produced inconsistent results and failed to scale, leading to the creation of multi-touch attribution and controlled experiment methodologies. The team designed a Marketing attribution model (MAM) that credits touchpoints based on relevance and recency, while using stratified hold-out groups to assess single campaign lift against baseline metrics. Statistical significance calculations, implemented using the jStat library based on the central limit theorem, ensure observed business metric differences like gross merchandise value are not random. The system provides campaign managers with direct access to impact analyses while the team works on challenges surrounding smaller sample sizes and hold-out group constraints.


### [Editing Files at 1000 Tokens per Second](https://yomu.fyi/post/editing-files-at-1000-tokens-per-second.md)
- Company: [Cursor](https://yomu.fyi/company/cursor.md)
- Author: Aman Sanger
- Published: May 14, 2024
- Type: Explainer

Large code edits expose coding agents to laziness, inaccuracy, and latency, especially when frontier models must rewrite hundreds of lines. The post presents fast apply, a specialized full-file code-edit model that separates planning from applying: Cursor's frontier model plans the change, while the apply model rewrites the current file. It evaluates roughly 450 edits on files under 400 lines, using Claude-3 Opus as grader, and finds llama-3-70b-ft nearly matches claude-3-opus-diff while outperforming GPT-4-Turbo and GPT-4o. Rather than generate conventional diffs, it uses full-file rewrites and search/replace hunks, which avoid line-number errors and give models more output tokens for reasoning. A custom speculative decoding method, deployed with Fireworks, reaches approximately 1,000 tokens per second on a 70b model, about 13x faster than vanilla Llama-3-70b inference and 9x faster than the previous GPT-4 deployment.


### [Evolving the Backend Storage for Platform Metrics](https://yomu.fyi/post/evolving-the-backend-storage-for-platform-metrics.md)
- Company: [Heroku](https://yomu.fyi/company/heroku.md)
- Author: David Murray
- Published: May 9, 2024
- Type: Problem & solution

Heroku migrated MetaaS, its internal Metrics as a Service platform metrics backend, from self-hosted Apache Cassandra to AWS’s DynamoDB. MetaaS collects application observations, aggregates them into per-application, per-minute statistics such as median, maximum, and 99th-percentile response time, and stores time-series data for dashboard metrics, alerting, and autoscaling. The migration first duplicated Kafka stream-processing writes into DynamoDB, then used “Science Mode” to compare Cassandra and DynamoDB read results in production without changing returned data. After edge cases were fixed and results matched, retention-period TTL expiry avoided a separate historical data transfer, while gradual query cutovers provided another safeguard. Since 100% of MetaaS queries moved to DynamoDB in May of last year, DynamoDB has remained reliable at scale and been faster and cheaper than the Cassandra clusters, with no noticeable effect on users.


### [Picture This: Open Source AI for Image Description](https://yomu.fyi/post/picture-this-open-source-ai-for-image-description.md)
- Company: [Fly.io](https://yomu.fyi/company/fly-io.md)
- Published: May 9, 2024
- Type: Tutorial

Nolan Darilek presents a self-hosted image-description service intended to help blind screen-reader users understand photos, diagrams, menus, and other visual material. Humans often provide inadequate alt text, and the post contrasts that history with increasingly capable LLM-generated descriptions from apps and browser add-ons. The implementation combines Ollama, running the Apache-licensed LLaVA 34B multimodal model, with a PocketBase API over SQLite and a small Python client; collection hooks send images and follow-up questions, retain chat history, and enforce per-user access rules. In testing, a cold request on an A100-40GB Fly Machine took about 45 seconds, while stopping idle GPU Machines reduced resource use at the cost of startup delay. The example produced useful scene descriptions but could not reliably identify leafless tree species, illustrating both the prototype’s value and its limitations.


### [eBay’s Mobile App Offers a Goldmine of Insights for Sellers](https://yomu.fyi/post/ebay-s-mobile-app-offers-a-goldmine-of-insights-for-sellers.md)
- Company: [Ebay](https://yomu.fyi/company/ebay.md)
- Author: eBay News Team
- Published: May 7, 2024
- Type: Announcement

eBay’s Product Research, formerly called Terapeak, brings three years of sold-items data into its mobile app so sellers can research products and create listings from anywhere. The service reports actual sold prices, including accepted Best Offer prices, along with average and range, free-shipping share, average shipping cost, and the number of sellers who sold a product. Sellers can search, sort, filter, inspect a price-trend graph, and use “Sell one like this” to start a listing pre-populated from a sold listing. Product Research is available in the latest eBay app for iOS and Android, while desktop sellers can use it through Seller Hub; planned additions include sell-through rate, more trend graphs, and active-listing views.


### [How to Use Okta's PowerShell Module to Manage Your Okta Org](https://yomu.fyi/post/how-to-use-okta-s-powershell-module-to-manage-your-okta-org.md)
- Company: [Okta](https://yomu.fyi/company/okta.md)
- Author: Louie Campagna
- Published: May 7, 2024
- Type: Tutorial

The tutorial shows how to use Okta’s official PowerShell module to administer an Okta org, covering authentication, user operations, group management, and broader API automation. It requires a PowerShell terminal, the module installed from the PowerShell Gallery, Chocolatey, or GitHub, plus an Okta Developer Edition account for the setup described. Authentication uses an OIDC Native application with the Device Authorization grant, a client ID, the org base URL, and the okta.users.manage and okta.groups.manage scopes; Invoke-OktaEstablishAccessToken completes authorization. Examples search and retrieve users, create and update profiles, create groups, add users, and inspect memberships with PowerShell pipelines and formatting cmdlets. The demonstrated workflow connects successfully and manages users and groups, while the same techniques are presented as applicable to other Okta API endpoints.


### [Enter eBay’s 2024 University Machine Learning Competition](https://yomu.fyi/post/enter-ebay-s-2024-university-machine-learning-competition.md)
- Company: [Ebay](https://yomu.fyi/company/ebay.md)
- Author: eBay News Team
- Published: May 6, 2024
- Type: Announcement

eBay’s 2024 University Machine Learning Competition invites U.S. college and university students to form teams and tackle a yearly ecommerce challenge, with top participants offered a shot at a 2025 summer internship at eBay. This year’s task focuses on eBay Motors: building a model that identifies which vehicles are compatible with particular parts and accessories. Participants must extract “fitment” information from listing titles, item specifics, and descriptions in the eBay Parts and Accessories categories, where noisy or extraneous data makes the task difficult. The competition is in its sixth year; last year, 1,439 students from 206 universities competed across 887 teams, and several winners later moved into full-time eBay roles.


### [No version left behind: Our epic journey of GitLab upgrades](https://yomu.fyi/post/no-version-left-behind-our-epic-journey-of-gitlab-upgrades.md)
- Company: [Grab](https://yomu.fyi/company/grab.md)
- Author: Saurabh Vajpayee
- Published: May 3, 2024
- Type: Problem & solution

Grab's self-hosted GitLab instance fell approximately 14 months behind official releases, serving thousands of engineers and monorepos reaching up to 39TB in total footprint. To address security updates and system stability, the team established a structured upgrade routine using Terraform, Packer, and Ansible across GitLab's 5,000-user reference architecture. They implemented staged deployments, upgraded stateful Gitaly nodes via in-place rotation, and resolved primary node clustering bottlenecks under Praefect. By utilizing official GitLab Upgrade Paths and parallelizing component deployments, the team caught up on 24 months of releases in 11 months and reduced release lag from 396 days down to 35 days.


### [Okta at RSA Conference 2024](https://yomu.fyi/post/okta-at-rsa-conference-2024.md)
- Company: [Okta](https://yomu.fyi/company/okta.md)
- Author: Michael Palermo
- Published: May 1, 2024
- Type: Announcement

Okta’s RSA Conference 2024 presence includes a May 7th session on identity as a defense against breaches and a booth featuring the Shared Signals Framework (SSF) and Universal Logout. Attackers can exploit weak passwords, phishing credentials, and privileged access, while applications may lack the cross-service context needed to identify suspicious account behavior. SSF, developed by the OpenID Foundation, enables software to send and receive signals about user behavior so services can respond according to their threat models. Universal Logout lets administrators and automation end a user’s existing sessions with an identity provider, complementing SSF and intrusion detection tools; Okta’s feature was not yet released. The post points to a build-your-own endpoint, SSF resources, and a pilot program for integrators.


### [Build and Integrate Universal Logout with Okta](https://yomu.fyi/post/build-and-integrate-universal-logout-with-okta.md)
- Company: [Okta](https://yomu.fyi/company/okta.md)
- Author: Semona Igama
- Published: Apr 30, 2024
- Type: Tutorial

The tutorial builds Universal Logout for an OIDC-enabled SaaS Todo application so enterprise administrators can end suspicious user sessions after account compromise or other detected risk. It explains how to create a /global-token-revocation endpoint, connect it to the Express app, identify a user from the revocation request, and invalidate that user's application session. Initial protection uses an API key, while the updated flow upgrades authorization to OAuth 2.0 Private Key JWT with the Okta JWT Verifier library. The tutorial then exposes the endpoint publicly, configures Okta Admin Console integration, and describes optional OIN submission with Private Key JWT and an email identifier for sub\_id. In the test, an admin clears the user's sessions and tokens; the Todo app redirects the user to login when they attempt to add a task, demonstrating Universal Logout works.


### [Build Well-Documented and Authenticated APIs in Node.js with Fastify](https://yomu.fyi/post/build-well-documented-and-authenticated-apis-in-node-js-with-fastify.md)
- Company: [Heroku](https://yomu.fyi/company/heroku.md)
- Author: Julián Duque
- Published: Apr 29, 2024
- Type: Tutorial

This walkthrough builds and deploys a Node.js API with Fastify, covering a public directory endpoint and a JWT-protected profile endpoint backed by Heroku Postgres. It uses Fastify’s plugin architecture, including a custom database plugin that reads DATABASE\_URL, creates a PostgreSQL pool, and decorates the server with db.query; @fastify/autoload registers plugins from the plugins directory. Authentication uses a JWT signed with an RSA256 private key, while the public key validates requests, and Fastify Swagger plugins generate an OpenAPI specification and UI that Postman can import as an API client. After local testing, the project seeds 50 database records, configures the RSA public key, and deploys through Heroku CLI commands, where the /directory endpoint returns usernames and the deployed API is shown running.


### [Ensuring data reliability and observability in risk systems](https://yomu.fyi/post/ensuring-data-reliability-and-observability-in-risk-systems.md)
- Company: [Grab](https://yomu.fyi/company/grab.md)
- Author: Yi Ni Ong
- Published: Apr 23, 2024
- Type: Problem & solution

Grab's in-house risk management platform, GrabDefence, relies on ingesting large volumes of upstream data to drive real-time heuristic rules and data science models. To prevent data discrepancies and missing information from degrading fraud detection, the team implemented a real-time data observability pipeline. The solution uses Apache Flink SQL alongside custom table functions like JSONEXPLOAD to flatten nested JSON structures and aggregate metrics over 5-minute tumbling windows. Processed metrics are sent to Datadog, where counters are grouped by source stream and evaluated using anomaly detection algorithms. Alerts are routed directly to Slack, reducing anomaly detection latency from days or weeks down to within the same day or hour.


### [Introducing Okta's Official PowerShell Module](https://yomu.fyi/post/introducing-okta-s-official-powershell-module.md)
- Company: [Okta](https://yomu.fyi/company/okta.md)
- Author: E. Dunham
- Published: Apr 11, 2024
- Type: Tutorial

Okta’s official PowerShell Module provides PowerShell-based access to Okta group, group-rule, and user operations. The post shows installation from PSGallery, configuration with an organization base URL, client ID, and OAuth 2.0 scopes, followed by browser-based token establishment. Examples create a “Sales Team” group, define a rule that assigns users with the title “Sales Representative,” activate it, and create a matching user during onboarding. A second script imports employee records from a CSV, copies each property into a user profile, uses the email as the login, and calls New-OktaUser for each row. The source presents these workflows as examples for automating employee data synchronization when a custom tool lacks OIDC or SCIM compatibility.


### [Improved Browser Testing on Heroku with Chrome](https://yomu.fyi/post/improved-browser-testing-on-heroku-with-chrome.md)
- Company: [Heroku](https://yomu.fyi/company/heroku.md)
- Author: Mars Hall
- Published: Apr 9, 2024
- Type: Announcement

Automated browser tests on Heroku can fail when installed Chrome and Chromedriver versions drift apart, producing a mismatch error that stops the suite. The post introduces the community Chrome for Testing Heroku Buildpack, created to address installation reliability as Chrome continuously receives updates rather than pinning a browser version that quickly becomes outdated. Apps should remove existing Chrome and Chromedriver buildpacks and add heroku-community/chrome-for-testing as the first buildpack. By default it downloads Google's latest Stable release, while GOOGLE\_CHROME\_CHANNEL can select Stable, Beta, Dev, or Canary. After deployment, chrome and chromedriver are placed on the dyno PATH for tools including Selenium WebDriver and Puppeteer, providing executables for browser automation.


### [Introducing Shop the look: eBay curating personalized outfits with AI](https://yomu.fyi/post/introducing-shop-the-look-ebay-curating-personalized-outfits-with-ai.md)
- Company: [Ebay](https://yomu.fyi/company/ebay.md)
- Author: Raul Romero
- Published: Apr 9, 2024
- Type: Announcement

eBay introduces Shop the look, a generative AI-powered fashion feature that curates personalized outfit carousels from customers’ shopping histories. Interactive hotspots reveal similar items and outfit inspirations, combining new and pre-owned apparel and luxury goods. The experience uses images, items, decades of data, customer insights, and billions of images to adapt recommendations as tastes change, while supporting wardrobe visualization and exploration. It is available on iOS for US and UK shoppers who viewed at least 10 fashion items in the past 180 days; Android is planned later this year. eBay says the feature was developed with its Responsible AI team and RAI Principles, and plans further personalization plus possible expansion beyond fashion.


### [Grab Experiment Decision Engine - a Unified Toolkit for Experimentation](https://yomu.fyi/post/grab-experiment-decision-engine-a-unified-toolkit-for-experimentation.md)
- Company: [Grab](https://yomu.fyi/company/grab.md)
- Author: Ruike Zhang
- Published: Apr 9, 2024
- Type: Problem & solution

Grab's Experimentation platform tests thousands of experimental variants weekly, but analyses were largely handled manually using disparate tools unsuited to multi-sided marketplace nuances. To standardize workflows and eliminate reliability issues, Grab developed the GrabX Decision Engine, an internally open-sourced Python toolkit integrated with its Automated Experiment Analysis application. The framework includes a Trusted Advisor component that automates power analysis and sample size estimation while adjusting for clustered standard errors across metric data types. It also bundles a post-experiment statistical toolbox executing default and custom evaluations, ranging from non-parametric tests to regression models that control for confounders and fixed effects. This unified platform institutionalizes experimentation best practices across teams, streamlining collaboration and ensuring consistent statistical inference.


### [How to Prepare Your Self](https://yomu.fyi/post/how-to-prepare-your-self.md)
- Company: [Okta](https://yomu.fyi/company/okta.md)
- Author: E. Dunham
- Published: Apr 8, 2024
- Type: Tutorial

Okta warns that applications using its embedded Sign-In Widget may encounter Chrome login problems after January 1, 2025, when Google’s temporary exemption allowing third-party cookies ends. The guidance recommends testing with Chrome feature flags and watching for console errors, unexpected reauthentication, or logout during session extension. It presents four migration paths: issue first-party cookies through a custom domain, use the authorization code flow with refresh tokens, configure AuthJS with the offline\_access scope, or replace deprecated sessions/me calls with supported OAuth and revocation mechanisms. A custom domain can require CSP updates for externally hosted sign-in resources, while offline\_access must be enabled both on the authorization server and in application code. An Okta-provided script offers a temporary exemption through the end of 2024, but it is not a lasting fix.


### [Iris - Turning observations into actionable insights for enhanced decision making](https://yomu.fyi/post/iris-turning-observations-into-actionable-insights-for-enhanced-decisi.md)
- Company: [Grab](https://yomu.fyi/company/grab.md)
- Author: Huong Vuong
- Published: Apr 3, 2024
- Type: Problem & solution

Standard infrastructure monitoring tools track CPU and memory usage at the host or container level, obscuring the precise resource consumption of individual Spark jobs on shared instances. To achieve granular observability, the Iris platform gathers job metrics directly at the Java Virtual Machine level without requiring changes to user application code. Data collection relies on Uber's JVM Profiler for deep JVM, thread, and memory pool diagnostics alongside sparkMeasure for stage and task execution statistics. Collected metrics route asynchronously through an Apache Kafka queue to avoid execution bottlenecks, feeding a Telegraf, InfluxDB, and Grafana stack for real-time monitoring while archiving to a data lake for offline analytics. This multi-tiered telemetry enables engineering teams to identify over- or under-provisioned jobs and optimize ETL resource allocations.


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