Monthly Reflection
A couple of things to mention:
- I reached 300 days streak on Duolingo on the 21st! It is a small win and I am on the road to 365 days streak!
- In the book
Building a Second Brain
, I found the concept of adopting a mindset of abundance compelling. It involves releasing beliefs about necessities for survival that no longer serve us. In today’s information overloaded era, we have an abundance of data, but being selective about what we consume can lead to personal growth and a better understanding of what we want to learn or know. To put it simply, it is about letting go of low-value information that seems important, but that doesn’t make us better people.
Blogs
From Busy to Productive - Embracing the Deep Work Mindset
JavaScript - Bind, Call, and Apply
The Path to Clean Code - Insights from Robert Martin
Continuous Improvement - Lessons from The Phoenix Project
TypeScript Utility Types - Partial
Unleashing the 12-Week Plan - The Road to Accomplishment
Books
Building a Second Brain
- introduces modern productivity techniques for efficient personal knowledge management, fostering creativity, and enhancing digital organization to optimize workflow and learningThe Obstacle Is the Way
- highlights the Stoic philosophy, guiding readers to perceive obstacles as opportunities for growth and transform adversity into advantages for personal development and successSoftware Engineering at Google
- provides insights into Google’s engineering practices, covering development, testing, deployment, and scalability, offering valuable lessons for building robust software systems.
Google Generative AI
The Generative AI Learning Path by Google Cloud covers various courses, introducing Generative AI, Large Language Models, Image Generation, Attention Mechanism, Transformer Models, BERT, and Image Captioning. It also explores Generative AI Studio, facilitating generative model building with no or low code.
This learning path provides me insights on how AI is being trained with large existing data and then generate new content based on that existing knowledge and user’s input.
Google Generative AI Learning Path
fCC - Intro to Generative AI – 10 Free Courses by Google
AWS
What is the difference between a root account
and IAM (Identity and Access Management)
? The root account holds the highest power, having complete control over the infrastructure. Securing it is crucial (e.g., enabling MFA) to prevent disastrous consequences. To manage access securely, create IAM users with restricted access based on specific roles, adhering to the principle of least privilege.
LinkedIn Post - AWS root accounts and IAM
System Design Primer
Vertical and horizontal scaling - Vertical scaling involves upgrading resources on a single server to handle the increased load. Horizontal scaling distributes workload across multiple servers, offering better scalability and redundancy.
Cache - is a high-speed data storage layer that stores frequently accessed data, reducing latency and improving system performance.
Load balancing - the process of distributing network or application traffic across multiple servers or resources to optimize performance, prevent overload, and ensure efficient resource utilization.
database replication and partitioning - replication involves creating duplicate copies of a database on multiple servers to ensure data redundancy, fault tolerance, and improved read performance. Partitioning divides a large database into smaller, manageable segments to enhance scalability and data distribution across multiple storage locations.
Asynchronism - refers to tasks operating independently without waiting for each other to complete. It enhances performance and responsiveness by allowing concurrent or background processing, commonly used in web applications and event-driven architectures.
Latency - the time required to perform some action or to produce some results and measured in units of time
Throughput - the number of actions or results produced per unit of time
Git remote and tag
The git remote
is one of the git commands that I don’t use much, which helps manage connections to other repositories like bookmarks. It allows you to view, create, and delete these remote connections.
git remote
- list the remote connectiongit remote -v
- same as the above command and included the URLgit remote rm <name>
- remove the connection based on the name
I recently learned about the git tag
command. Tags in Git refer to specific points in the history, often used to mark version releases, such as 1.0.1, making it easier to identify significant points in the project’s timeline.
Three.js
The first one involved displaying shapes with a GUI interface, enabling adjustments to each shape’s size and segments. This allowed me to familiarize myself with the parameters of each shape and how they appear under different lighting conditions with various materials.
The second project entailed adding multiple cubes with different materials, showcasing the effect of lights with the ability to toggle them on or off and adjust their intensity. The process helped me understand how to implement a GUI interface to customize the size, light position, and intensity for interactive visualizations.
Thank you!
Thank you for your time and for reading this!