My Library

A collection of defining books that have shaped my perspective on system design, data architecture, and writing clean, scalable code.

Read Python Crash Course
PythonSoftware Engineering

Python Crash Course

2015

Eric Matthes

Key Takeaways:
  • Master the fundamentals of Python syntax and structures.
  • Build practical projects including data visualization and web applications.
  • Learn object-oriented programming concepts in Python.
Read البرمجة بلغة بايثون
Python

البرمجة بلغة بايثون

2018

ليزا تاغليفيري

Key Takeaways:
  • Comprehensive guide to Python for Arabic speakers.
  • Covers basic to intermediate programming paradigms.
  • Focuses on practical code examples and problem-solving.
Read Fundamentals of Data Engineering
Data EngineeringBig Data

Fundamentals of Data Engineering

2022

Joe Reis & Matt Housley

Key Takeaways:
  • Understand the end-to-end data engineering lifecycle.
  • Choose the right tools for scalable ETL/ELT architectures.
  • Best practices for data modeling and serving.
Read Python for Data Analysis
PythonData Engineering

Python for Data Analysis

2012

Wes McKinney

Key Takeaways:
  • Master Pandas for efficient data manipulation and cleaning.
  • Learn to handle time series data and perform aggregations.
  • Leverage NumPy and Matplotlib for data science workflows.
Read Designing Data-Intensive Applications
System DesignBig Data

Designing Data-Intensive Applications

2017

Martin Kleppmann

Key Takeaways:
  • Deep dive into distributed systems, replication, and partitioning.
  • Understand scalability and reliability principles in modern architectures.
  • Learn the trade-offs between different database and stream processing models.
Read Python Data Science Handbook
PythonMachine Learning

Python Data Science Handbook

2016

Jake VanderPlas

Key Takeaways:
  • Utilize IPython and Jupyter notebooks for exploratory data analysis.
  • Apply Scikit-Learn for practical machine learning applications.
  • Perform advanced data visualizations using Matplotlib and Seaborn.
Read Python Data Analytics
PythonData Engineering

Python Data Analytics

2015

Fabio Nelli

Key Takeaways:
  • Extract, process, and analyze diverse datasets effectively.
  • Implement statistical methods and forecasting techniques.
  • Utilize D3.js and Python visualization libraries for dashboards.
Read Pro Git
Software Engineering

Pro Git

2009

Scott Chacon & Ben Straub

Key Takeaways:
  • Understand the internal mechanics of the Git version control system.
  • Learn advanced branching, merging, and rebasing workflows.
  • Setup and manage distributed team environments using Git.
Read Learning Spark
Big DataData Engineering

Learning Spark

2020

Jules S. Damji, Brooke Wenig, Tathagata Das, Denny Lee

Key Takeaways:
  • Build scalable data pipelines using Apache Spark 3.0.
  • Process streaming data with Structured Streaming.
  • Optimize Spark performance and troubleshoot execution bottlenecks.
Read Spark: The Definitive Guide
Big DataData Engineering

Spark: The Definitive Guide

2018

Bill Chambers & Matei Zaharia

Key Takeaways:
  • Deep dive into Spark's DataFrame and Dataset APIs.
  • Understand the low-level RDD execution model and DAG architecture.
  • Learn how to deploy and tune Spark clusters in production.
Planned Hands-on Guide to Apache Spark 3
Big DataData Engineering

Hands-on Guide to Apache Spark 3

2021

Alfonso Antolínez García

Key Takeaways:
  • Implement practical Spark 3 solutions using PySpark.
  • Explore the new Adaptive Query Execution (AQE) features.
  • Manage distributed data processing workloads efficiently.
Planned Learning Apache Spark with Python
Big DataPython

Learning Apache Spark with Python

2019

Wenqiang Feng

Key Takeaways:
  • Master the fundamentals of PySpark and RDDs.
  • Build machine learning models using Spark MLlib.
  • Perform large-scale SQL queries with Spark SQL.
Read Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow
Machine LearningPython

Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow

2017

Aurélien Géron

Key Takeaways:
  • Master the foundational concepts of traditional machine learning.
  • Build, train, and scale deep neural networks using TensorFlow.
  • Implement robust computer vision and natural language processing models.
Read Machine Learning
Machine Learning

Machine Learning

2020

Hamdi Mahmoud

Key Takeaways:
  • Learn the mathematics underlying core machine learning algorithms.
  • Differentiate between supervised and unsupervised learning techniques.
  • Apply fundamental algorithms to real-world datasets.
Currently Reading The Data Warehouse Toolkit
Data EngineeringSystem Design

The Data Warehouse Toolkit

2013

Ralph Kimball & Margy Ross

Key Takeaways:
  • Master dimensional modeling and the star schema architecture.
  • Implement Slowly Changing Dimensions (SCDs) for historical data tracking.
  • Design enterprise data warehouses for robust business intelligence.
Planned Delta Lake: The Definitive Guide
Big DataData Engineering

Delta Lake: The Definitive Guide

2023

Denny Lee, Tristen Wentling, Scott Haines, Prashanth Babu

Key Takeaways:
  • Build reliable data lakehouse architectures using Delta Lake.
  • Enable ACID transactions and time travel on Apache Spark workloads.
  • Architect scalable, real-time data pipelines leveraging Delta architecture.
Read Data Pipelines Pocket Reference
Data Engineering

Data Pipelines Pocket Reference

2021

James Densmore

Key Takeaways:
  • Understand core principles of reliable ELT and ETL pipeline design.
  • Evaluate and select appropriate modern data stack tools.
  • Implement essential data validation and testing strategies.
Read Rich Dad Poor Dad
Soft Skills

Rich Dad Poor Dad

1997

روبرت تي كيوساكي

Key Takeaways:
  • Learn the fundamental difference between assets and liabilities.
  • Understand that financial literacy is the key to wealth building.
  • Shift focus from working for money to having money work for you.
Read Python for Absolute beginners
Python

Python for Absolute beginners

2022

Oswald Campesato

Key Takeaways:
  • Grasp the basics of programming concepts without prior experience.
  • Execute simple scripts and understand Python's core data types.
  • Build confidence to progress to intermediate programming topics.
Read Foundations Of Computer Vision
Machine Learning

Foundations Of Computer Vision

2017

James F. Peters

Key Takeaways:
  • Explore image processing techniques and geometric computer vision.
  • Understand feature extraction and object recognition methods.
  • Learn the mathematical foundations behind visual data interpretation.
Read Computer Graphics
Software Engineering

Computer Graphics

2018

Mohammed Salah Reda

Key Takeaways:
  • Understand 2D and 3D rendering pipelines and transformations.
  • Learn lighting, shading, and texture mapping algorithms.
  • Master fundamental mathematical concepts for computer graphics.
Planned Introduction to the Design and Analysis of Algorithms
Software Engineering

Introduction to the Design and Analysis of Algorithms

2002

Anany Levitin

Key Takeaways:
  • Master algorithm design techniques like divide-and-conquer and dynamic programming.
  • Analyze time and space complexity using Big O notation.
  • Solve computational problems efficiently with appropriate algorithms.
Planned Introduction to Algorithms
Software Engineering

Introduction to Algorithms

1990

Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein

Key Takeaways:
  • Comprehensive reference for graph algorithms, sorting, and data structures.
  • Deep dive into advanced algorithmic paradigms and their proofs.
  • Understand the theoretical foundations of computer science computation.
Read Understanding ETL
Data Engineering

Understanding ETL

2019

Matt Palmer

Key Takeaways:
  • Learn the core principles of Extract, Transform, Load processes.
  • Identify common pitfalls in data integration workflows.
  • Architect pipelines that ensure data quality and reliability.