Monthly Reflection
I found the ā2-minute ruleā in āGetting Thing Doneā book to be quite fascinating. This rule is designed to help people deal with small tasks that can be finished within two minutes. The key here is to act promptly on these tasks rather than putting them off. I think this rule is superb because it allows you to efficiently tackle many small tasks, giving you a sense of achievement. Furthermore, if a task canāt be completed within two minutes, you have the option to break it down into smaller, manageable steps, or if possible, delegate it to someone else.
Iāve also dabbled in using time blocks, and I genuinely appreciate the concept of allocating specific time blocks for dedicated focus on particular tasks. I should make better use of this technique by scheduling blocks on my calendar for activities like reading books, exercising, and other tasks. This approach will enable me to concentrate exclusively on one thing during each block.
Blogs
- Canāt Hurt Me - Embracing Struggle, Achieving the Impossible
- TypeScript Utility Types - Required
- TypeScript Utility Types - Record
- Clean Architecture - Building Robust Systems
- TypeScript Utility Types - Exclude
- Ultralearning: Accelerated Learning Strategies
Books
SQL Cookbook
by Anthony Molinaro: Interested in exploring the capabilities of SQLās built-in functions, as well as a few alternative methods when these functions fall short? This is definitely a book worth revisiting for future reference.The Unfair Advantage
by Ash Ali: A concise yet impactful guide that illuminates the path to leveraging your distinct strengths for a competitive edge. Aliās expert insights and practical strategies offer a blueprint for success in todayās fast-paced world.Eat that Frog
by Brain Tracy: Provide practical advice and strategies for overcoming procrastination, managing time effectively, and achieving greater productivity.
System Design Primer
Load Balancer:
- Distributes client requests to resources like servers.
- Prevents overloading and single points of failure.
Reverse Proxy (Web Server):
- Centralizes services and provides unified interfaces.
- Increases security, scalability, SSL termination, caching.
- Serves static content, compresses, and manages requests.
Application Layer:
- Separates web and application layers for independent scaling.
- Utilizes microservices, independently deployable.
- Service discovery helps services find each other.
Database:
- Master-slave replication: Master serves reads/writes, slaves read-only.
- Master-master replication: Both masters serve reads/writes.
- Sharding distributes data across databases.
Cache:
- Improves page load times, reduces server/database load.
- Client, CDN, web server, database, application caching.
Asynchronism:
- Reduces request times for expensive operations.
- Message queues and task queues manage workflows.
Communication:
- HTTP: Request/response protocol for client-server communication.
- TCP: Connection-oriented, reliable protocol with sequence numbers.
- UDP: Connectionless, less reliable, more efficient.
- RPC: Client triggers remote procedure execution.
- REST: Client/server model with stateless communication.
Threejs
- Scroll-based animation: Creating a scroll-based animation where users can scroll downwards to reveal distinct 3D objects with particles in the background. Demo
- Water Texture: Generating a water texture with texture images that display a water material and permits users to adjust parameters like displacement scale, ambient occlusion intensity, and more. Demo
Thank you!
Thank you for your time and for reading this!