-
Notifications
You must be signed in to change notification settings - Fork 57
feat(post): chromecast standalone project #481
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
|
This pull request is automatically being deployed by Amplify Hosting (learn more). |
Slashgear
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
C'est non !
50cca51 to
c901286
Compare
fdubost
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These are mainly comments on the format 😉
One thing, though: I wonder if we shouldn't introduce the Chromecast principle with a simple diagram (the web or mobile app sends instructions to the dongle, the dongle loads the URL of the Chromecast app and receives the instructions, it requests the video, plays ads, etc.).
| --- | ||
| layout: post | ||
| title: "Rebuilding Chromecast: From a Monolithic \"Nightmare\" to a High-Performance Standalone App" | ||
| description: Chromecast used to be a nightmare for our clients and our teams, here is the story of how we made it one of our most interesting and modern project while dramaticaly improving performences. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| description: Chromecast used to be a nightmare for our clients and our teams, here is the story of how we made it one of our most interesting and modern project while dramaticaly improving performences. | |
| description: Chromecast used to be a nightmare for our clients and our teams, here is the story of how we made it one of our most interesting and modern project while dramaticaly improving performance. |
| title: "Rebuilding Chromecast: From a Monolithic \"Nightmare\" to a High-Performance Standalone App" | ||
| description: Chromecast used to be a nightmare for our clients and our teams, here is the story of how we made it one of our most interesting and modern project while dramaticaly improving performences. | ||
| author: [a_gaudard] | ||
| tags: [chromecast, TV, web, javascript, frontend, player, video, performences] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| tags: [chromecast, TV, web, javascript, frontend, player, video, performences] | |
| tags: [chromecast, TV, web, javascript, frontend, player, video, performance] |
| tags: [chromecast, TV, web, javascript, frontend, player, video, performences] | ||
| color: rgb(251,87,66) | ||
| language: en | ||
| --- |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's put a thumbnail image, it would be nicer 😉
|
|
||
| - **Modern Tech Stack:** We adopted updated tools better suited for the platform. | ||
| - BiomeJS | ||
| - Vite |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Plus
- full TypeScript
- Vitest
|
|
||
| At Bedrock, we faced a specific architectural challenge: our Chromecast project was living as a single route within our massive main web repository. While this "monolith" approach worked initially, our rapid growth eventually turned it into a bottleneck. | ||
|
|
||
| **📉 The Trouble with the Monolith** |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| **📉 The Trouble with the Monolith** | |
| ##📉 The Trouble with the Monolith |
|
|
||
| As the project scaled, we hit a wall with two primary issues: | ||
|
|
||
| User Dissatisfaction: Performance wasn't meeting our standards. One of our major clients has massive Chromecast traffic, and the laggy experience was becoming a significant pain point. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| User Dissatisfaction: Performance wasn't meeting our standards. One of our major clients has massive Chromecast traffic, and the laggy experience was becoming a significant pain point. | |
| **User Dissatisfaction**: Performance wasn't meeting our standards. One of our major clients has massive Chromecast traffic, and the laggy experience was becoming a significant pain point. |
|
|
||
| User Dissatisfaction: Performance wasn't meeting our standards. One of our major clients has massive Chromecast traffic, and the laggy experience was becoming a significant pain point. | ||
|
|
||
| Developer Dread: The team grew to worry whenever a Chromecast ticket appeared in the sprint. Because it was tied to the main web project, it meant dealing with long, complex and painful developer experience. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| Developer Dread: The team grew to worry whenever a Chromecast ticket appeared in the sprint. Because it was tied to the main web project, it meant dealing with long, complex and painful developer experience. | |
| **Developer Dread**: The team grew to worry whenever a Chromecast ticket appeared in the sprint. Because it was tied to the main web project, it meant dealing with long, complex and painful developer experience. |
|
|
||
| 2. **Deployment Velocity:** Our build and deployment processes were tethered to the main web project. We needed a workflow that allowed us to move fast without being slowed down by the main site's release cycle. | ||
|
|
||
| **🚀 The Solution: Chromecast Standalone** |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| **🚀 The Solution: Chromecast Standalone** | |
| ##🚀 The Solution: Chromecast Standalone |
|
|
||
| - **The POC:** To prove our theory, we built a Proof of Concept. It was a very simplified version of what would become the Chromecast Standalone, however we could do so much with so little that we were all convinced. | ||
|
|
||
| **📊 The Results: Impact by the Numbers** |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| **📊 The Results: Impact by the Numbers** | |
| ##📊 The Results: Impact by the Numbers |
|
|
||
| **Note:** We are still in the process of migrating our entire user base, but the data from the new implementation is already showing all the benefits. | ||
|
|
||
| **💡 Lessons Learned** |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| **💡 Lessons Learned** | |
| ##💡 Lessons Learned |
Article to showcase the success around the Chromecast Standalone migration