# Infrastructure

Published articles for Infrastructure.

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

## Sunsetting netlab Vagrant/libvirt provider

DevFeed: [Sunsetting netlab Vagrant/libvirt provider](<https://devfeed.tech/articles/sunsetting-netlab-vagrant-libvirt-provider-34925.md>)

Original publisher: [Read original article](<https://blog.ipspace.net/2026/09/sunsetting-vagrant-libvirt/>)

Published: 2026-09-17T05:51:00Z

Content type: article

Language: en

Sources: [ipSpace.net blog](<https://devfeed.tech/sources/ipspace-net-blog.md>)

Topics: [Vagrant](<https://devfeed.tech/topics/vagrant.md>), [Infrastructure as code](<https://devfeed.tech/topics/infrastructure-as-code.md>), [Orchestration](<https://devfeed.tech/topics/orchestration.md>), [Containerlab topology](<https://devfeed.tech/topics/clab-topo.md>), [Oracle-VM-VirtualBox](<https://devfeed.tech/topics/vm-box.md>)

Tags: [change](<https://devfeed.tech/tags/change.md>), [containers](<https://devfeed.tech/tags/containers.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [infrastructure-as-code](<https://devfeed.tech/tags/infrastructure-as-code.md>), [netlab](<https://devfeed.tech/tags/netlab.md>), [orchestration](<https://devfeed.tech/tags/orchestration.md>), [vagrant](<https://devfeed.tech/tags/vagrant.md>), [virtualbox](<https://devfeed.tech/tags/virtualbox.md>)

### AI overview

The netlab project is sunsetting its Vagrant/libvirt provider after the vagrant-libvirt plugin became effectively unmaintained and HashiCorp announced the closure of Vagrant Cloud by the end of 2026. Existing support and tests will remain for now, but no new libvirt features or device integration tests are planned; containerlab will become the primary orchestration path.

### Source excerpt

When I started the netlab project, Vagrant was the go-to tool if you wanted to build a virtual environment described in a text configuration file (an idea popularized as infrastructure-as-code). It wasn't ideal for what we were doing, but a tool rarely does a great job when used far away from its intended use case. netlab initially supported Vagrant with VirtualBox, quickly adding support for KVM/libvirt through the vagrant-libvirt plugin. Life was good... until it wasn't. Read more ...

## Cisco integrates Axis devices, bringing unified management across IT environments

DevFeed: [Cisco integrates Axis devices, bringing unified management across IT environments](<https://devfeed.tech/articles/cisco-integrates-axis-devices-bringing-unified-management-across-it-environments-31400.md>)

Original publisher: [Read original article](<https://blogs.cisco.com/networking/cisco-integrates-axis-devices-bringing-unified-management-across-it-environments>)

Author: Jonathan Cohn

Published: 2026-09-16T15:00:57Z

Content type: release

Language: en

Sources: [Cisco Blogs](<https://devfeed.tech/sources/cisco-blogs.md>)

Topics: [Cisco](<https://devfeed.tech/topics/cisco.md>), [Cisco Meraki](<https://devfeed.tech/topics/cisco-meraki.md>), [Security](<https://devfeed.tech/topics/security.md>), [dashboards](<https://devfeed.tech/topics/dashboards.md>), [Network](<https://devfeed.tech/topics/network.md>), [Cloud](<https://devfeed.tech/topics/cloud.md>), [Internet of things](<https://devfeed.tech/topics/iot.md>)

Tags: [analytics](<https://devfeed.tech/tags/analytics.md>), [cisco](<https://devfeed.tech/tags/cisco.md>), [cisco-cloud-control](<https://devfeed.tech/tags/cisco-cloud-control.md>), [cisco-meraki](<https://devfeed.tech/tags/cisco-meraki.md>), [cisco-networking](<https://devfeed.tech/tags/cisco-networking.md>), [cloud](<https://devfeed.tech/tags/cloud.md>), [communications](<https://devfeed.tech/tags/communications.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [internet-of-things](<https://devfeed.tech/tags/internet-of-things.md>), [networking](<https://devfeed.tech/tags/networking.md>), [security](<https://devfeed.tech/tags/security.md>)

### AI overview

Cisco announces an integration with Axis Communications that brings network and physical security management into its cloud-managed ecosystem. The article describes Cisco Meraki dashboard management, shared visibility, and potential operational benefits for IT and physical security teams.

### Source excerpt

Cisco and Axis Communications are committed to bridging the gap between IT and physical security infrastructure, as we believe that close collaboration between these teams leads to a stronger, more comprehensive security strategy.

## Emerald AI, Google and NVIDIA Launch Alliance to Advance Flexible AI Data Centers

DevFeed: [Emerald AI, Google and NVIDIA Launch Alliance to Advance Flexible AI Data Centers](<https://devfeed.tech/articles/emerald-ai-google-and-nvidia-launch-alliance-to-advance-flexible-ai-data-centers-30916.md>)

Original publisher: [Read original article](<https://blogs.nvidia.com/blog/ai-energy-management-alliance/>)

Author: Josh Parker

Published: 2026-09-16T13:00:33Z

Content type: news

Language: en

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

Topics: [data centers](<https://devfeed.tech/topics/data-centers.md>), [AI Infrastructure](<https://devfeed.tech/topics/ai-infrastructure.md>), [Google](<https://devfeed.tech/topics/google.md>), [Nvidia](<https://devfeed.tech/topics/nvidia.md>), [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [datacenter](<https://devfeed.tech/topics/datacenter.md>), [benchmarking](<https://devfeed.tech/topics/benchmarking.md>), [Requirements](<https://devfeed.tech/topics/requirements.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [ai-data-centers](<https://devfeed.tech/tags/ai-data-centers.md>), [ai-infrastructure](<https://devfeed.tech/tags/ai-infrastructure.md>), [capacity](<https://devfeed.tech/tags/capacity.md>), [corporate](<https://devfeed.tech/tags/corporate.md>), [data-centers](<https://devfeed.tech/tags/data-centers.md>), [energy](<https://devfeed.tech/tags/energy.md>), [google](<https://devfeed.tech/tags/google.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [launch](<https://devfeed.tech/tags/launch.md>), [metrics](<https://devfeed.tech/tags/metrics.md>), [nvidia](<https://devfeed.tech/tags/nvidia.md>), [performance-metrics](<https://devfeed.tech/tags/performance-metrics.md>), [requirements](<https://devfeed.tech/tags/requirements.md>), [resource](<https://devfeed.tech/tags/resource.md>), [systems](<https://devfeed.tech/tags/systems.md>)

### AI overview

Emerald AI, Google and NVIDIA announced the AI Energy Management Alliance, a coalition focused on flexible AI data centers that can dynamically adjust electricity use in response to grid conditions. The article describes technology-neutral, performance-based requirements covering response speed, duration, predictability and emergency behavior.

### Source excerpt

AI factories are the infrastructure of the intelligence era. Scaling them responsibly will depend as much on innovation across the grid as inside the data center. Today, Emerald AI, Google and NVIDIA announced the launch of the AI Energy Management Alliance (AEMA), a first-of-its-kind coalition advancing data centers that can dynamically manage their electricity use [...]

## Running OpenBao on Kubernetes with a CloudNativePG PostgreSQL backend

DevFeed: [Running OpenBao on Kubernetes with a CloudNativePG PostgreSQL backend](<https://devfeed.tech/articles/running-openbao-on-kubernetes-with-a-cloudnativepg-postgresql-backend-30887.md>)

Original publisher: [Read original article](<https://www.cncf.io/blog/2026/09/16/running-openbao-on-kubernetes-with-a-cloudnativepg-postgresql-backend/>)

Author: Gabriele Bartolini (EnterpriseDB) and CNCF Ambassador, Rob Kenefeck (ControlPlane)

Published: 2026-09-16T11:30:00Z

Content type: tutorial

Language: en

Sources: [Cloud Native Computing Foundation](<https://devfeed.tech/sources/cloud-native-computing-foundation.md>)

Topics: [CloudNativePG](<https://devfeed.tech/topics/cloudnativepg.md>), [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>), [PostgreSQL](<https://devfeed.tech/topics/postgresql.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>), [vendor lock-in](<https://devfeed.tech/topics/vendor-lock-in.md>)

Tags: [blog](<https://devfeed.tech/tags/blog.md>), [cloudnativepg](<https://devfeed.tech/tags/cloudnativepg.md>), [docker](<https://devfeed.tech/tags/docker.md>), [hashicorp-vault](<https://devfeed.tech/tags/hashicorp-vault.md>), [helm](<https://devfeed.tech/tags/helm.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [linux-foundation](<https://devfeed.tech/tags/linux-foundation.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [postgresql](<https://devfeed.tech/tags/postgresql.md>), [secrets](<https://devfeed.tech/tags/secrets.md>), [vendor-lock-in](<https://devfeed.tech/tags/vendor-lock-in.md>)

### AI overview

A tutorial describes deploying OpenBao on Kubernetes with a three-instance CloudNativePG PostgreSQL cluster as its storage backend. It explains certificate-based authentication and a local Kind-based test environment.

### Source excerpt

Managing infrastructure secrets on Kubernetes needs a backend that is self-healing and free of vendor lock-in, and that is exactly what OpenBao (the Linux Foundation's open-source fork of HashiCorp Vault) and CloudNativePG give you: an entirely...

## JavaScript bundling and HTTP performance trade-offs

DevFeed: [JavaScript bundling and HTTP performance trade-offs](<https://devfeed.tech/articles/forgo-js-packaging-not-so-fast-27386.md>)

Original publisher: [Read original article](<http://engineering.khanacademy.org/posts/js-packaging-http2.htm>)

Author: Khan Academy

Published: 2015-11-23T23:00:00Z

Content type: article

Language: en

Sources: [Khan Academy](<https://devfeed.tech/sources/khan-academy.md>)

Topics: [JavaScript](<https://devfeed.tech/topics/javascript.md>), [HTTP](<https://devfeed.tech/topics/http.md>), [Caching](<https://devfeed.tech/topics/caching.md>), [browserify](<https://devfeed.tech/topics/browserify.md>), [Webpack](<https://devfeed.tech/topics/webpack.md>)

Tags: [browserify](<https://devfeed.tech/tags/browserify.md>), [cache](<https://devfeed.tech/tags/cache.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [http](<https://devfeed.tech/tags/http.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [js](<https://devfeed.tech/tags/js.md>), [news](<https://devfeed.tech/tags/news.md>), [webpack](<https://devfeed.tech/tags/webpack.md>)

### AI overview

The article examines trade-offs between bundling JavaScript files, serving them separately, and using semantically related bundles. It explains how these approaches balance HTTP request overhead, browser fetch limits, cacheability, and unused downloaded code.

### Source excerpt

By Craig Silverstein Bundling JavaScript files The traditional advice for web developers is to bundle the JavaScript files ... Read more

## Inline CSS at Khan Academy: Aphrodite

DevFeed: [Inline CSS at Khan Academy: Aphrodite](<https://devfeed.tech/articles/inline-css-at-khan-academy-aphrodite-27365.md>)

Original publisher: [Read original article](<http://engineering.khanacademy.org/posts/aphrodite-inline-css.htm>)

Author: Khan Academy

Published: 2016-03-29T22:00:00Z

Content type: article

Language: en

Sources: [Khan Academy](<https://devfeed.tech/sources/khan-academy.md>)

Topics: [React](<https://devfeed.tech/topics/react.md>), [Server-side rendering](<https://devfeed.tech/topics/server-side-rendering.md>), [HTML](<https://devfeed.tech/topics/html.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [Latency](<https://devfeed.tech/topics/latency.md>), [networking](<https://devfeed.tech/topics/networking.md>), [Chrome](<https://devfeed.tech/topics/chrome.md>)

Tags: [chrome](<https://devfeed.tech/tags/chrome.md>), [css](<https://devfeed.tech/tags/css.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [latency](<https://devfeed.tech/tags/latency.md>), [network](<https://devfeed.tech/tags/network.md>), [news](<https://devfeed.tech/tags/news.md>), [react](<https://devfeed.tech/tags/react.md>), [server-side-rendering](<https://devfeed.tech/tags/server-side-rendering.md>)

### AI overview

Jamie Wong discusses Aphrodite, Khan Academy's inline styling solution, the constraints that shaped it, and its use in production. The article explains how reducing bytes before content renders motivated server-side rendering and compares the initial-load byte requirements of server-side and client-side rendering.

### Source excerpt

By Jamie Wong I won't ramble in this post about the maintenance woe that is CSS, as others ... Read more

## Slicker: A Tool for Moving Things in Python

DevFeed: [Slicker: A Tool for Moving Things in Python](<https://devfeed.tech/articles/slicker-a-tool-for-moving-things-in-python-27406.md>)

Original publisher: [Read original article](<http://engineering.khanacademy.org/posts/slicker.htm>)

Author: Khan Academy

Published: 2018-04-02T22:00:00Z

Content type: article

Language: en

Sources: [Khan Academy](<https://devfeed.tech/sources/khan-academy.md>)

Topics: [Python](<https://devfeed.tech/topics/python.md>), [Refactoring](<https://devfeed.tech/topics/refactoring.md>), [Tool](<https://devfeed.tech/topics/tool.md>), [PyCharm](<https://devfeed.tech/topics/pycharm.md>)

Tags: [bug](<https://devfeed.tech/tags/bug.md>), [code](<https://devfeed.tech/tags/code.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [news](<https://devfeed.tech/tags/news.md>), [pycharm](<https://devfeed.tech/tags/pycharm.md>), [python](<https://devfeed.tech/tags/python.md>), [refactoring](<https://devfeed.tech/tags/refactoring.md>), [tool](<https://devfeed.tech/tags/tool.md>)

### AI overview

This article explains why Khan Academy built Slicker, a tool for moving thousands of Python files, classes, and functions while updating references and imports. It also describes limitations the authors encountered with PyCharm's refactoring tools.

### Source excerpt

By Ben Kraft Craig talked last post about our project to reorganize our whole Python codebase. This entails ... Read more

## Minimizing the length of regular expressions, in practice

DevFeed: [Minimizing the length of regular expressions, in practice](<https://devfeed.tech/articles/minimizing-the-length-of-regular-expressions-in-practice-27405.md>)

Original publisher: [Read original article](<http://engineering.khanacademy.org/posts/shortest-regex.htm>)

Author: Khan Academy

Published: 2016-05-23T22:00:00Z

Content type: tutorial

Language: en

Sources: [Khan Academy](<https://devfeed.tech/sources/khan-academy.md>)

Topics: [Algorithms, Complexity](<https://devfeed.tech/topics/algorithms-complexity.md>), [Regular expression](<https://devfeed.tech/topics/regular-expression.md>), [Programming](<https://devfeed.tech/topics/programming.md>), [cloud-infrastructure](<https://devfeed.tech/topics/cloud-infrastructure.md>)

Tags: [algorithms](<https://devfeed.tech/tags/algorithms.md>), [cdn](<https://devfeed.tech/tags/cdn.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [google](<https://devfeed.tech/tags/google.md>), [hosting](<https://devfeed.tech/tags/hosting.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [news](<https://devfeed.tech/tags/news.md>), [re](<https://devfeed.tech/tags/re.md>), [repository](<https://devfeed.tech/tags/repository.md>), [software-engineering](<https://devfeed.tech/tags/software-engineering.md>)

### AI overview

Craig Silverstein explains how Khan Academy needed a compact regular expression to distinguish static URLs from dynamic URLs for CDN routing. The article describes why simple patterns were unsuitable, reports that a naive generated expression reached 402,025 characters, and introduces a second approach that reduced the length to 2,400 characters.

### Source excerpt

By Craig Silverstein The problem Software engineering interviews tend to be full of "algorithms" questions, because they're easy ... Read more

## The User Write Lock: an Alternative to Transactions for Google App Engine

DevFeed: [The User Write Lock: an Alternative to Transactions for Google App Engine](<https://devfeed.tech/articles/the-user-write-lock-an-alternative-to-transactions-for-google-app-engine-27418.md>)

Original publisher: [Read original article](<http://engineering.khanacademy.org/posts/user-write-lock.htm>)

Author: Khan Academy

Published: 2016-06-20T22:00:00Z

Content type: tutorial

Language: en

Sources: [Khan Academy](<https://devfeed.tech/sources/khan-academy.md>)

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

Tags: [caching](<https://devfeed.tech/tags/caching.md>), [databases](<https://devfeed.tech/tags/databases.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [google](<https://devfeed.tech/tags/google.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [news](<https://devfeed.tech/tags/news.md>), [processes](<https://devfeed.tech/tags/processes.md>), [retry](<https://devfeed.tech/tags/retry.md>), [transactions](<https://devfeed.tech/tags/transactions.md>)

### AI overview

This developer article explains how transactions in Google App Engine's datastore provide atomicity for single-entity and multi-entity writes, but can introduce frozen datastore state, retries, idempotence requirements, and restrictions on datastore queries. It presents the User Write Lock as an alternative, although the supplied text ends before describing that alternative.

### Source excerpt

By Craig Silverstein Transactions are the standard method in Google App Engine's datastore -- as in many databases ... Read more

## Using static analysis in Python, JavaScript and more to make your system safer

DevFeed: [Using static analysis in Python, JavaScript and more to make your system safer](<https://devfeed.tech/articles/using-static-analysis-in-python-javascript-and-more-to-make-your-system-safer-27419.md>)

Original publisher: [Read original article](<http://engineering.khanacademy.org/posts/using-static-analysis-in-Python-and-JavaScript-to-make-your-system-safer.htm>)

Author: Khan Academy

Published: 2018-07-26T22:00:00Z

Content type: article

Language: en

Sources: [Khan Academy](<https://devfeed.tech/sources/khan-academy.md>)

Topics: [JavaScript](<https://devfeed.tech/topics/javascript.md>), [Code quality](<https://devfeed.tech/topics/code-quality.md>), [Python](<https://devfeed.tech/topics/python.md>), [Code review](<https://devfeed.tech/topics/code-review.md>), [Web Development](<https://devfeed.tech/topics/web-development.md>), [React](<https://devfeed.tech/topics/react.md>)

Tags: [analysis](<https://devfeed.tech/tags/analysis.md>), [best-practices](<https://devfeed.tech/tags/best-practices.md>), [code](<https://devfeed.tech/tags/code.md>), [code-quality](<https://devfeed.tech/tags/code-quality.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [eslint](<https://devfeed.tech/tags/eslint.md>), [formatting](<https://devfeed.tech/tags/formatting.md>), [frontend](<https://devfeed.tech/tags/frontend.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [lint](<https://devfeed.tech/tags/lint.md>), [news](<https://devfeed.tech/tags/news.md>), [python](<https://devfeed.tech/tags/python.md>)

### AI overview

This article describes how Khan Academy uses custom linters and static analysis across JavaScript, Python, and Kotlin to prevent known bad patterns, keep duplicated logic or shared interfaces synchronized, and enforce frontend migration practices.

### Source excerpt

By Kevin Dangoor "Linting" source code to look for errors is nothing new (the original "lint" tool turned ... Read more

## Ensuring transaction-safety in Google App Engine

DevFeed: [Ensuring transaction-safety in Google App Engine](<https://devfeed.tech/articles/ensuring-transaction-safety-in-google-app-engine-27414.md>)

Original publisher: [Read original article](<http://engineering.khanacademy.org/posts/transaction-safety.htm>)

Author: Khan Academy

Published: 2016-06-27T22:00:00Z

Content type: article

Language: en

Sources: [Khan Academy](<https://devfeed.tech/sources/khan-academy.md>)

Topics: [Transactions](<https://devfeed.tech/topics/transactions.md>), [Databases](<https://devfeed.tech/topics/databases.md>), [Code](<https://devfeed.tech/topics/code.md>), [Google](<https://devfeed.tech/topics/google.md>)

Tags: [cache](<https://devfeed.tech/tags/cache.md>), [code](<https://devfeed.tech/tags/code.md>), [database](<https://devfeed.tech/tags/database.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [google](<https://devfeed.tech/tags/google.md>), [hooks](<https://devfeed.tech/tags/hooks.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [news](<https://devfeed.tech/tags/news.md>), [tracing](<https://devfeed.tech/tags/tracing.md>), [transactions](<https://devfeed.tech/tags/transactions.md>)

### AI overview

The article explains how Khan Academy uses transactions and user-write locks with Google App Engine to prevent database corruption caused by concurrent requests overwriting one another. It describes hooks that detect transaction-safety violations and highlights caching and code-path mistakes that can cause stale data to be used inside transactions.

### Source excerpt

By Craig Silverstein In last week's exciting post, I described an alternative to transactions that we use at ... Read more

## Evolving our content infrastructure

DevFeed: [Evolving our content infrastructure](<https://devfeed.tech/articles/evolving-our-content-infrastructure-27375.md>)

Original publisher: [Read original article](<http://engineering.khanacademy.org/posts/evolving-our-content-infrastructure.htm>)

Author: Khan Academy

Published: 2016-09-19T22:00:00Z

Content type: article

Language: en

Sources: [Khan Academy](<https://devfeed.tech/sources/khan-academy.md>)

Topics: [Tooling](<https://devfeed.tech/topics/tooling.md>), [Website](<https://devfeed.tech/topics/website.md>), [Network](<https://devfeed.tech/topics/network.md>)

Tags: [engineering](<https://devfeed.tech/tags/engineering.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [news](<https://devfeed.tech/tags/news.md>), [tooling](<https://devfeed.tech/tags/tooling.md>), [website](<https://devfeed.tech/tags/website.md>)

### AI overview

Khan Academy describes infrastructure changes and optimizations that helped make its Spanish-language site fully available in Spanish, focusing on how the team addressed untranslated new and changed content and plans to adapt the approach to more languages.

### Source excerpt

By Willow Chargin Every month, millions of learners use Khan Academy in languages other than English. Over the past ... Read more

## Profiling App Engine Memcached

DevFeed: [Profiling App Engine Memcached](<https://devfeed.tech/articles/profiling-app-engine-memcached-27394.md>)

Original publisher: [Read original article](<http://engineering.khanacademy.org/posts/memcached-profiling.htm>)

Author: Khan Academy

Published: 2017-05-01T22:00:00Z

Content type: article

Language: en

Sources: [Khan Academy](<https://devfeed.tech/sources/khan-academy.md>)

Topics: [Latency](<https://devfeed.tech/topics/latency.md>), [Logging](<https://devfeed.tech/topics/logging.md>), [Data structures](<https://devfeed.tech/topics/data-structures.md>)

Tags: [engineering](<https://devfeed.tech/tags/engineering.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [latency](<https://devfeed.tech/tags/latency.md>), [logging](<https://devfeed.tech/tags/logging.md>), [memcached](<https://devfeed.tech/tags/memcached.md>), [news](<https://devfeed.tech/tags/news.md>), [patterns](<https://devfeed.tech/tags/patterns.md>), [profiling](<https://devfeed.tech/tags/profiling.md>), [tests](<https://devfeed.tech/tags/tests.md>)

### AI overview

Khan Academy engineers profile App Engine Memcached to estimate access latency and evaluate whether on-demand content fetching could support separate content trees for each language. Most requests showed 1-4 ms latency, usually below 10 ms, while a single multi-get performed similarly to a single get.

### Source excerpt

By Ben Kraft Last year, Willow wrote about how we optimized our in-memory content data to take up ... Read more

## The Great Python Refactor of 2017 And Also 2018

DevFeed: [The Great Python Refactor of 2017 And Also 2018](<https://devfeed.tech/articles/the-great-python-refactor-of-2017-and-also-2018-27400.md>)

Original publisher: [Read original article](<http://engineering.khanacademy.org/posts/python-refactor-1.htm>)

Author: Khan Academy

Published: 2018-03-19T22:00:00Z

Content type: article

Language: en

Sources: [Khan Academy](<https://devfeed.tech/sources/khan-academy.md>)

Topics: [Python](<https://devfeed.tech/topics/python.md>), [Refactoring](<https://devfeed.tech/topics/refactoring.md>), [Code](<https://devfeed.tech/topics/code.md>), [Development](<https://devfeed.tech/topics/development.md>), [Tool](<https://devfeed.tech/topics/tool.md>)

Tags: [2017](<https://devfeed.tech/tags/2017.md>), [blog-post](<https://devfeed.tech/tags/blog-post.md>), [code](<https://devfeed.tech/tags/code.md>), [dev](<https://devfeed.tech/tags/dev.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [news](<https://devfeed.tech/tags/news.md>), [python](<https://devfeed.tech/tags/python.md>), [refactor](<https://devfeed.tech/tags/refactor.md>), [refactoring](<https://devfeed.tech/tags/refactoring.md>)

### AI overview

This first article in a series describes Khan Academy's 2017-2018 Python refactoring effort. It explains how an overloaded codebase structure developed, the changes made to organize files and directories, and the difficulties of the work.

### Source excerpt

By Craig Silverstein Our codebase was a mess. One day, we decided to do something about it: namely, ... Read more

## i18nize-templates: Internationalization After the Fact

DevFeed: [i18nize-templates: Internationalization After the Fact](<https://devfeed.tech/articles/i18nize-templates-internationalization-after-the-fact-27382.md>)

Original publisher: [Read original article](<http://engineering.khanacademy.org/posts/i18nize-templates.htm>)

Author: Khan Academy

Published: 2015-09-28T22:00:00Z

Content type: release

Language: en

Sources: [Khan Academy](<https://devfeed.tech/sources/khan-academy.md>)

Topics: [Internationalization (i18n)](<https://devfeed.tech/topics/i18n.md>), [Localization (l10n)](<https://devfeed.tech/topics/localization.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>), [Python](<https://devfeed.tech/topics/python.md>), [Handlebars](<https://devfeed.tech/topics/handlebars.md>), [HTML](<https://devfeed.tech/topics/html.md>), [Library](<https://devfeed.tech/topics/library.md>), [Code](<https://devfeed.tech/topics/code.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [Babel](<https://devfeed.tech/topics/babel.md>)

Tags: [babel](<https://devfeed.tech/tags/babel.md>), [code](<https://devfeed.tech/tags/code.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [html](<https://devfeed.tech/tags/html.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [language](<https://devfeed.tech/tags/language.md>), [languages](<https://devfeed.tech/tags/languages.md>), [library](<https://devfeed.tech/tags/library.md>), [news](<https://devfeed.tech/tags/news.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [programming](<https://devfeed.tech/tags/programming.md>), [python](<https://devfeed.tech/tags/python.md>)

### AI overview

Khan Academy describes retrofitting its English-only codebase for internationalization and localization across several HTML-rendering technologies. It introduces i18nize-templates, an open-source Python module that finds natural-language text in HTML and templates and marks it as i18n-aware. The tool supports raw HTML, jinja2, and Handlebars templates and reportedly reduces template annotation time by over 90%.

### Source excerpt

By Craig Silverstein Khan Academy started as a collection of videos, but now has over 100,000 pieces of ... Read more

## App Engine Flex Language Shootout

DevFeed: [App Engine Flex Language Shootout](<https://devfeed.tech/articles/app-engine-flex-language-shootout-27376.md>)

Original publisher: [Read original article](<http://engineering.khanacademy.org/posts/flex-language-shootout.htm>)

Author: Khan Academy

Published: 2017-04-17T22:00:00Z

Content type: article

Language: en

Sources: [Khan Academy](<https://devfeed.tech/sources/khan-academy.md>)

Topics: [Hackathon](<https://devfeed.tech/topics/hackathon.md>), [Back end](<https://devfeed.tech/topics/backend.md>), [Elixir](<https://devfeed.tech/topics/elixir.md>), [distributed-systems](<https://devfeed.tech/topics/distributed-systems.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>)

Tags: [backend](<https://devfeed.tech/tags/backend.md>), [distributed-systems](<https://devfeed.tech/tags/distributed-systems.md>), [elixir](<https://devfeed.tech/tags/elixir.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [hackathon](<https://devfeed.tech/tags/hackathon.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [news](<https://devfeed.tech/tags/news.md>), [open-source](<https://devfeed.tech/tags/open-source.md>)

### AI overview

A first-person account of a Khan Academy hackathon project exploring Google App Engine Flex and comparing programming-language options. The author describes Khan Academy's existing Python backend, interest in gaining experience with Flex, and personal interest in Elixir, while noting that a language switch was not imminent.

### Source excerpt

By Amos Latteier This is the second time I've been to Silicon Valley. Some years ago - never ... Read more

## The Original Serverless Architecture is Still Here

DevFeed: [The Original Serverless Architecture is Still Here](<https://devfeed.tech/articles/the-original-serverless-architecture-is-still-here-27398.md>)

Original publisher: [Read original article](<http://engineering.khanacademy.org/posts/original-serverless.htm>)

Author: Khan Academy

Published: 2018-05-31T22:00:00Z

Content type: opinion

Language: en

Sources: [Khan Academy](<https://devfeed.tech/sources/khan-academy.md>)

Topics: [serverless architecture](<https://devfeed.tech/topics/serverless-architecture.md>), [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>), [Orchestration](<https://devfeed.tech/topics/orchestration.md>), [Docker](<https://devfeed.tech/topics/docker.md>), [Cloud](<https://devfeed.tech/topics/cloud.md>), [Firebase](<https://devfeed.tech/topics/firebase.md>), [DynamoDB](<https://devfeed.tech/topics/dynamodb.md>)

Tags: [amazon](<https://devfeed.tech/tags/amazon.md>), [cloud](<https://devfeed.tech/tags/cloud.md>), [containers](<https://devfeed.tech/tags/containers.md>), [docker](<https://devfeed.tech/tags/docker.md>), [dynamodb](<https://devfeed.tech/tags/dynamodb.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [firebase](<https://devfeed.tech/tags/firebase.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [news](<https://devfeed.tech/tags/news.md>), [orchestration](<https://devfeed.tech/tags/orchestration.md>), [serverless](<https://devfeed.tech/tags/serverless.md>), [serverless-architecture](<https://devfeed.tech/tags/serverless-architecture.md>)

### AI overview

This commentary compares Kubernetes-based architectures with serverless approaches. It explains that Kubernetes offers flexibility through containers, Helm, ingress controllers, monitoring tools, and service meshes, but requires substantial configuration and maintenance. Serverless platforms such as Firebase and Amazon Lambda abstract away server infrastructure so developers can focus on applications and stateless functions.

### Source excerpt

By Kevin Dangoor This month, my colleague Dave Rosile and I went to GlueCon 2018 in sunny Denver, ... Read more

## Kotlin on the server at Khan Academy

DevFeed: [Kotlin on the server at Khan Academy](<https://devfeed.tech/articles/kotlin-on-the-server-at-khan-academy-27389.md>)

Original publisher: [Read original article](<http://engineering.khanacademy.org/posts/kotlin-adoption.htm>)

Author: Khan Academy

Published: 2018-06-28T22:00:00Z

Content type: article

Language: en

Sources: [Khan Academy](<https://devfeed.tech/sources/khan-academy.md>)

Topics: [Kotlin](<https://devfeed.tech/topics/kotlin.md>), [backend-development](<https://devfeed.tech/topics/backend-development.md>), [Python](<https://devfeed.tech/topics/python.md>), [Google](<https://devfeed.tech/topics/google.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [bigquery](<https://devfeed.tech/tags/bigquery.md>), [blog-post](<https://devfeed.tech/tags/blog-post.md>), [developer-experience](<https://devfeed.tech/tags/developer-experience.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [google](<https://devfeed.tech/tags/google.md>), [http](<https://devfeed.tech/tags/http.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [java](<https://devfeed.tech/tags/java.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [news](<https://devfeed.tech/tags/news.md>), [python](<https://devfeed.tech/tags/python.md>), [server-side-development](<https://devfeed.tech/tags/server-side-development.md>)

### AI overview

Khan Academy describes testing Kotlin for user-facing server requests during a 2018 hackathon and deciding to adopt Kotlin as a second server-side language after reporting positive efficiency results and a positive developer experience.

### Source excerpt

By Colin Fuller At Khan Academy, we run our web application using Python 2.7 on Google's App Engine ... Read more

## Untangling our Python Code

DevFeed: [Untangling our Python Code](<https://devfeed.tech/articles/untangling-our-python-code-27401.md>)

Original publisher: [Read original article](<http://engineering.khanacademy.org/posts/python-refactor-3.htm>)

Author: Khan Academy

Published: 2018-04-16T22:00:00Z

Content type: tutorial

Language: en

Sources: [Khan Academy](<https://devfeed.tech/sources/khan-academy.md>)

Topics: [Python](<https://devfeed.tech/topics/python.md>), [Code](<https://devfeed.tech/topics/code.md>), [import](<https://devfeed.tech/topics/import.md>)

Tags: [code](<https://devfeed.tech/tags/code.md>), [dependencies](<https://devfeed.tech/tags/dependencies.md>), [dependency](<https://devfeed.tech/tags/dependency.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [news](<https://devfeed.tech/tags/news.md>), [organization](<https://devfeed.tech/tags/organization.md>), [python](<https://devfeed.tech/tags/python.md>), [refactor](<https://devfeed.tech/tags/refactor.md>), [structure](<https://devfeed.tech/tags/structure.md>)

### AI overview

This article explains how Khan Academy addressed tangled dependencies in its Python codebase during its 2017 and 2018 refactoring work. It describes why dependency order matters, the problems caused by circular and poorly organized imports, and the use of package-based rules to guide code organization and detect problematic dependencies.

### Source excerpt

By Carter Bastian The previous posts about The Great Khan Academy Python Refactor of 2017 and Also 2018 ... Read more

## Memcached-Backed Content Infrastructure

DevFeed: [Memcached-Backed Content Infrastructure](<https://devfeed.tech/articles/memcached-backed-content-infrastructure-27393.md>)

Original publisher: [Read original article](<http://engineering.khanacademy.org/posts/memcached-fms.htm>)

Author: Khan Academy

Published: 2017-05-15T22:00:00Z

Content type: article

Language: en

Sources: [Khan Academy](<https://devfeed.tech/sources/khan-academy.md>)

Topics: [Caching](<https://devfeed.tech/topics/caching.md>), [Back end](<https://devfeed.tech/topics/backend.md>), [data](<https://devfeed.tech/topics/data.md>), [Front end](<https://devfeed.tech/topics/frontend.md>)

Tags: [backend](<https://devfeed.tech/tags/backend.md>), [cache](<https://devfeed.tech/tags/cache.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [memcached](<https://devfeed.tech/tags/memcached.md>), [news](<https://devfeed.tech/tags/news.md>), [profiling](<https://devfeed.tech/tags/profiling.md>)

### AI overview

Khan Academy describes testing and rolling out a Memcached-backed content-serving backend. The article explains the existing content versioning and storage model, the performance limitations of fetching many individual items, and the prior approach of loading a compressed site-wide content bundle at server startup.

### Source excerpt

By Ben Kraft Last post, I wrote about how we did profiling on App Engine's Memcached service to ... Read more

## Switching to Slack

DevFeed: [Switching to Slack](<https://devfeed.tech/articles/switching-to-slack-27410.md>)

Original publisher: [Read original article](<http://engineering.khanacademy.org/posts/switching-to-slack.htm>)

Author: Khan Academy

Published: 2015-11-09T23:00:00Z

Content type: article

Language: en

Sources: [Khan Academy](<https://devfeed.tech/sources/khan-academy.md>)

Topics: [Slack](<https://devfeed.tech/topics/slack.md>), [migration](<https://devfeed.tech/topics/migration.md>), [notifications](<https://devfeed.tech/topics/notifications.md>), [systems](<https://devfeed.tech/topics/systems.md>), [Documentation](<https://devfeed.tech/topics/documentation.md>)

Tags: [administration](<https://devfeed.tech/tags/administration.md>), [chat](<https://devfeed.tech/tags/chat.md>), [connectivity](<https://devfeed.tech/tags/connectivity.md>), [delivery](<https://devfeed.tech/tags/delivery.md>), [documentation](<https://devfeed.tech/tags/documentation.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [integration](<https://devfeed.tech/tags/integration.md>), [migrate](<https://devfeed.tech/tags/migrate.md>), [news](<https://devfeed.tech/tags/news.md>), [notifications](<https://devfeed.tech/tags/notifications.md>), [organization](<https://devfeed.tech/tags/organization.md>), [remote](<https://devfeed.tech/tags/remote.md>), [slack](<https://devfeed.tech/tags/slack.md>), [switching](<https://devfeed.tech/tags/switching.md>), [team](<https://devfeed.tech/tags/team.md>)

### AI overview

Khan Academy describes its decision to migrate team chat from HipChat to Slack after connectivity, message delivery, and notification problems affected reliability, especially for remote workers. The article outlines cultural, administrative, organizational, and integration-related costs that make chat-platform migration difficult.

### Source excerpt

By Benjamin Pollack Khan Academy recently made the decision to migrate our team chat from HipChat to Slack. ... Read more

## Go + Services = One Goliath Project

DevFeed: [Go + Services = One Goliath Project](<https://devfeed.tech/articles/go-services-one-goliath-project-27378.md>)

Original publisher: [Read original article](<http://engineering.khanacademy.org/posts/goliath.htm>)

Author: Khan Academy

Published: 2019-12-20T23:00:00Z

Content type: opinion

Language: en

Sources: [Khan Academy](<https://devfeed.tech/sources/khan-academy.md>)

Topics: [Go Language](<https://devfeed.tech/topics/go-language.md>), [Python](<https://devfeed.tech/topics/python.md>), [Back end](<https://devfeed.tech/topics/backend.md>), [Kotlin](<https://devfeed.tech/topics/kotlin.md>), [Server](<https://devfeed.tech/topics/server.md>)

Tags: [backend](<https://devfeed.tech/tags/backend.md>), [end-of-life](<https://devfeed.tech/tags/end-of-life.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [go](<https://devfeed.tech/tags/go.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [news](<https://devfeed.tech/tags/news.md>), [performance](<https://devfeed.tech/tags/performance.md>), [services](<https://devfeed.tech/tags/services.md>)

### AI overview

Khan Academy describes its effort to rebuild server software on Go's modern stack. The article explains why moving from Python 2 to Python 3 offered limited benefits, considers Kotlin and other options, and presents faster languages as a way to improve responsiveness and reduce server costs.

### Source excerpt

By Kevin Dangoor Go + Services = One Goliath Project Khan Academy is embarking on a huge effort ... Read more

## Receiving feedback as an intern at Khan Academy

DevFeed: [Receiving feedback as an intern at Khan Academy](<https://devfeed.tech/articles/receiving-feedback-as-an-intern-at-khan-academy-27404.md>)

Original publisher: [Read original article](<http://engineering.khanacademy.org/posts/receiving-feedback.htm>)

Author: Khan Academy

Published: 2015-10-26T22:00:00Z

Content type: opinion

Language: en

Sources: [Khan Academy](<https://devfeed.tech/sources/khan-academy.md>)

Topics: [Code review](<https://devfeed.tech/topics/code-review.md>), [engineering-culture](<https://devfeed.tech/topics/engineering-culture.md>), [Development](<https://devfeed.tech/topics/development.md>)

Tags: [code-review](<https://devfeed.tech/tags/code-review.md>), [culture](<https://devfeed.tech/tags/culture.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [experience](<https://devfeed.tech/tags/experience.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [intern](<https://devfeed.tech/tags/intern.md>), [news](<https://devfeed.tech/tags/news.md>)

### AI overview

David Wang reflects on receiving code review feedback as an intern at Khan Academy. He describes the distinction between code critiques and character critiques, and explains Khan Academy's view of feedback as an ongoing, positive investment in colleagues' development.

### Source excerpt

By David Wang When my first piece of code was reviewed at Khan Academy, my mentor Dylan prefaced ... Read more

## The weekly snippet-server: open-sourced

DevFeed: [The weekly snippet-server: open-sourced](<https://devfeed.tech/articles/the-weekly-snippet-server-open-sourced-27407.md>)

Original publisher: [Read original article](<http://engineering.khanacademy.org/posts/snippet-server.htm>)

Author: Khan Academy

Published: 2016-02-01T23:00:00Z

Content type: article

Language: en

Sources: [Khan Academy](<https://devfeed.tech/sources/khan-academy.md>)

Topics: [Snippet](<https://devfeed.tech/topics/snippet.md>), [configuration](<https://devfeed.tech/topics/configuration.md>), [email](<https://devfeed.tech/topics/email.md>), [Markdown](<https://devfeed.tech/topics/markdown.md>)

Tags: [configuration](<https://devfeed.tech/tags/configuration.md>), [email](<https://devfeed.tech/tags/email.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [markdown](<https://devfeed.tech/tags/markdown.md>), [news](<https://devfeed.tech/tags/news.md>), [open](<https://devfeed.tech/tags/open.md>), [snippet](<https://devfeed.tech/tags/snippet.md>)

### AI overview

Craig Silverstein describes Khan Academy's open-sourced weekly snippet server, a simple tool for sharing brief weekly work updates. It uses a textbox with optional Markdown formatting and makes snippets visible according to email-domain and server configuration.

### Source excerpt

By Craig Silverstein When I joined Khan Academy, my first project was to write a version of the ... Read more

[Next page](<https://devfeed.tech/tags/infrastructure.md?cursor=WyIyMDI2LTA5LTE2VDA5OjQ5OjUzLjE3Mzg0NiswMDowMCIsICIwNzg0MDVhNC1jOTM1LTRjN2YtODRjMi03OGZkYzQxMDYwNTMiXQ%3D%3D>)