Migrations
2024
k8s 1.31: The migration from SPDY to WebSockets in Kubernetes makes it much easier to communicate control messages, which will allow for better cluster management and stability.
2023
Lyft: Druid => ClickHouse
https://eng.lyft.com/druid-deprecation-and-clickhouse-adoption-at-lyft-120af37651fd
At Lyft, our primary Druid customers were data engineers and software engineers. One of the main barriers we faced for onboarding new customers was the steep ramp-up for writing and maintaining their ingestion specifications, as well as understanding the different tuning mechanisms for each use case. ... for Lyft, as a Kubernetes Compute company, running ClickHouse over Druid would reduce our compute footprint by a large margin.
Chromium adds Rust: https://www.theregister.com/2023/01/12/google_chromium_rust/
2022
Android adds Rust: https://security.googleblog.com/2022/12/memory-safe-languages-in-android-13.html
Vue to svelt: https://escape.tech/blog/from-vue2-to-svelte/
Amazon Kindle UI: from JavaScript to React Native: https://goodereader.com/blog/electronic-readers/amazon-kindle-ui-is-switching-from-javascript-to-react-native
SingleStore: Moving Away From Next.js https://www.singlestore.com/blog/moving-from-next-js/
2021
React Official Documents: Gatsby -> Next
Next 12: Babel -> SWC
Next.js now uses Rust-based compiler SWC to compile JavaScript/TypeScript. This new compiler is up to 17x faster than Babel when compiling individual files and up to 5x faster Fast Refresh.
Uber: Fulfillment Platform Rearchitecture
https://eng.uber.com/fulfillment-platform-rearchitecture/
- The old service was written with Node.js and HTTP/JSON, while newer Uber services use Java with Protocol Buffers (Protobuf) for communication.
- use Spanner as db
Qt: qmake to cmake
https://www.qt.io/blog/qt-and-cmake-the-past-the-present-and-the-future
2020
AOSP: -> Bazel
https://blog.bazel.build/2020/11/12/aosp_migrating_to_bazel.html
Spring Boot: Maven -> Gradle
https://spring.io/blog/2020/06/08/migrating-spring-boot-s-build-to-gradle
Discord: Go -> Rust
https://blog.discordapp.com/why-discord-is-switching-from-go-to-rust-a190bbca2b1f
Rust does not have garbage collection; Go has latency spikes every 2 min.
2019
Dropbox: to gPRC
https://blogs.dropbox.com/tech/2019/01/courier-dropbox-migration-to-grpc/
Deliveroo: Ruby -> Rust
https://deliveroo.engineering/2019/02/14/moving-from-ruby-to-rust.html
Redhat: MongoDB -> PostgreSQL
https://www.redhat.com/en/blog/red-hat-satellite-standardize-postgresql-backend
GNU Health: MongoDB -> PostgreSQL
http://savannah.gnu.org/forum/forum.php?forum_id=9366
MongoDB Changed the license to Server Side Public License (SSPL) at the end of 2018. Previous versions are still on GPLv3, but MongoDB no longer maintain those old versions.
2018
Udacity: Deprecate React Native
Airbnb: Sunsetting React Native
https://medium.com/airbnb-engineering/sunsetting-react-native-1868ba28e30a
Depop: Heroku to AWS
https://engineering.depop.com/aws-migration-a-depop-story-1444e9aaad31
Facebook: InnoDB to MyRocks
https://code.facebook.com/posts/1478526992216557/migrating-a-database-from-innodb-to-myrocks/
Why: With pure Flash, UDB was space-bound. Even though we used InnoDB compression and there was excess CPU and random I/O capacity, it was unlikely that we could enhance InnoDB to use less space...This was one of the motivations for creating MyRocks – a RocksDB storage engine for MySQL...
Uber: Postgres to MySQL
https://eng.uber.com/mysql-migration/
Segment: Microservices back to Monolith
https://segment.com/blog/goodbye-microservices/
Redfin: Maven to Bazel
https://redfin.engineering/we-switched-from-maven-to-bazel-and-builds-got-10x-faster-b265a7845854
Steam: Python to Go
https://getstream.io/blog/switched-python-go/ https://lobste.rs/s/zsbrjy/why_we_switched_from_python_go#c_ea61kn
Scala to Go
https://movio.co/en/blog/migrate-Scala-to-Go/
2016
Spotify: on-prem to Google Cloud Platform
https://labs.spotify.com/2016/02/25/spotifys-event-delivery-the-road-to-the-cloud-part-i/
2015
Braintree: Gradle to Bazel
https://www.braintreepayments.com/blog/migrating-from-gradle-to-bazel/