- Hungry Minds
- Posts
- ๐๐ง Redis + WebSockets: Canva's Real-Time Mouse Pointer Sharing Architecture
๐๐ง Redis + WebSockets: Canva's Real-Time Mouse Pointer Sharing Architecture
PLUS: WebSockets 101 ๐ฅ, Scaling 1M Checkboxes ๐, The Tech Promotion Algorithm โก
Happy Monday! โ๏ธ
Welcome to the 1526 new hungry minds who have joined us since last Monday!
If you arenโt subscribed yet, join smart, curious, and hungry folks by subscribing here.
This week I was out in Dublin for a few days off, returning recharged for the last months of 2024! ๐ฎ๐ช
๐ THIS WEEKโS MENU ๐ฅ
๐ Software Engineering Articles
Discover real-time mouse pointers for enhanced collaboration.
Learn why WebSockets are crucial for efficient web communication.
Organize your projects effectively with personal work tips.
Gain insights into how Google builds great engineering teams.
Explore The Tech Promotion Algorithm for career growth strategies.
๐๏ธ Tech and AI Trends
Microsoftโs Phi-3.5 models challenge the big players like Google and OpenAI.
Artifacts are now available for everyone; discover their significance.
Shocking news: Telegram founder arrested at a Paris airport.
๐จ๐ปโ๐ป Coding Tip
Improve your React app's testability and modularity with dependency injection.
Reading time: 5 minutes
This issue of Hungry Minds is brought to you by:
We scour 100+ sources daily
Read by CEOs, scientists, business owners and more
3.5 million subscribers
Food for Thought
A mindset, an example, and an action item to start the week
"Do not wait to strike till the iron is hot, but make it hot by striking."
Mindset: Seize the moment, don't wait for the perfect conditions - create your own opportunities.
Example: Apple disrupted the music industry by launching the iPod and iTunes before anyone else saw the potential.
Action: Identify one task you've been putting off and start it today, even if it's just for 15 minutes.
The Rabbit Hole
Deep dives, trends, and resources curated to stay ahead
๐พ SIDE DISHES ๐พ
ARTICLE (checkbox mania)
Scaling One Million Checkboxes to 650,000,000 checks
ARTICLE (CSS party time)
CSS finally adds vertical centering
ARTICLE (abstraction distraction)
The Wrong Abstraction โ Sandi Metz
GITHUB REPO (fire-licking scraper)
Turn entire websites into LLM-ready markdown or structured data
GITHUB REPO (course-ology)
Anthropic's educational courses
ARTICLE (postgres search wizardry)
Postgres as a search engine
ARTICLE (time travel in JS)
JS Dates Are About to Be Fixed
ARTICLE (CORS conundrum)
CORS is Stupid
ARTICLE (leaky memories)
Common Causes of Memory Leaks in JavaScript
ARTICLE (load faster, my friend)
How to make your web page faster before it even loads
ARTICLE (SQL airport hijinks)
Bypassing airport security via SQL injection
ARTICLE (T-shaped vs I-shaped)
Is it better to be a Jack-of-All-Trades or a Master-of-One?
The Weekly Digest
Software, AI, and startup news worth your time
Brief: Microsoft debuts its Phi 3.5 AI models, showcasing advancements that outpace offerings from Google and OpenAI, setting a new benchmark in the AI landscape.
Brief: Claude.ai expands access to Artifacts for all users, enhancing collaboration with tools for creating high-quality work products like diagrams, prototypes, and dashboards.
Brief: Pavel Durov faces serious charges in France, including terrorism and money laundering, as authorities claim his platform enables organized crime and lacks moderation.
Brief: Apple is set to launch a revamped Siri with Apple Intelligence in iOS 18.1, while simultaneously developing a distinct AI personality for future robotics devices aimed at enhancing user interaction.
Brief: OpenAI is negotiating to raise $1 billion from Thrive Capital, pushing its valuation to over $100 billion, despite facing significant losses this year.
Brief: OpenAI has successfully raised funds to enhance ChatGPT's integration with Apple, aiming to boost user experience and further innovate in the AI space.
The Quick Byte
One coding tip because youโre technical after all
This weekโs coding challenge:
This weekโs tip:
Dependency injection in React functional components:
Wen?
Testability: Dependency Injection (DI) in React allows you to easily mock or replace service dependencies, making your components more testable. This is particularly useful when writing unit tests for your components, as you can isolate their behavior from the underlying service implementations.
Modularity: By separating your service logic from your components, you can improve the modularity and reusability of your code. This makes it easier to swap out or update service implementations without affecting the components that use them.
Flexibility: DI gives you the flexibility to use different service implementations based on the context or environment (e.g., a mock service for testing, a production service for the live application).
Why?
Improved Testability: Mocking service dependencies during tests allows you to focus on testing the component's behavior in isolation, without the need to set up complex data or network mocks.
Easier Maintenance: Separating service logic from components makes your codebase more maintainable. Changes to service implementations won't affect the components that use them, and vice versa.
Better Scalability: As your application grows, the use of DI can help manage complexity by allowing you to easily add, remove, or replace service dependencies without affecting the overall application structure.
Burp-A-Laugh
The most important meal of your day
Thatโs it for today! โ๏ธ
Enjoyed this issue? Send it to your friends here to sign up, or share it on Twitter!
If you want to submit a section to the newsletter or tell us what you think about todayโs issue, reply to this email or DM me on Twitter! ๐ฆ
Thanks for spending part of your Monday morning with Hungry Minds.
See you in a week โ Alex.
Icons by Icons8.
*I may earn a commission if you get a subscription through the links marked with โaff.โ (at no extra cost to you).