Study Report

My Learning Journey

Book Shelf

Fluent Python Cover

Fluent Python (9% complete)

Algorithms Cover

Algorithms by Robert Sedgewick, Kevin Wayne (0% complete)

Data Structure Cover

Data Structures and Algorithms by Michael T. Goodrich (41% complete)

Weekly Progress

Week X

  • Started a new book to learn how to write good Unit tests for my project. Book is Python Testing with Pytest by Vladimir Khorikov
  • I know, I know... More books. What can I say, I keep adding them as I need them.
  • Decided to stop for the moment doing the Docker Udemy Course as next lessons are about K8s -which I definetively don't need now. I will resume it once I add CI/CD to my project. Progress is now: 101/226 lessons completed
  • Data Structures and Algorithms in Python: Chapter 8, Trees: General Trees, Binary Trees, Implementing Trees in Python using Linked Structures and Arra-Based representations.

Week VIII & IX

  • I haven't had much time these past two weeks for studying besides working. My project at work is taking more time than I expected and I don't want to be behind. Learning in that way....
  • On the other hand, I did progress on the Docker Udemy Course Progress is now: 98/226 lessons completed :)

Week VII

  • Binary Search: Solved 4 LeetCode-like problems. Solved 2 additional problems involving implicitly sorted arrays.
  • Note: I need to set up a server to host a website that runs Python code in the background. This requires using Nginx for serving static HTML files, Docker for creating images and containers, and developing the backend. Given this, I've decided to prioritize learning Docker for now and temporarily set aside some other subjects.
  • Docker Udemy Course: Docker Mastery with Kubernetes – Topics covered include Docker containers, images, Dockerfile, CLI processes, virtual networks, and Nginx. Progress: 48/226 lessons completed.
  • Depth First Search (DFS): Reviewed recursion, binary trees, and DFS fundamentals. Solved 1 LeetCode problem (Max Depth of a Binary Tree).

Week VI

  • Introduction to Basic Python Data Structures.
  • Data Structures and Algorithms in Python: Chapter 7, Linked Lists.
  • Solved problems 2 and 19 from LeetCode Linked Lists problems.
  • Computer Vision course: Line Fitting - Total Least Squares and Random Sample Consensus (RANSAC) methods.
  • Machine Learning course: Generative Learning Algorithms - Gaussian Discriminant Analysis & Naive Bayes Classifier.

Week VI

  • Advanced on Fluent Python: Read Chapter 3 "Dictionaries and Sets" covering dict comprehensions, unpacking methods, pattern matchin with mappings
  • Data structures and Algorithm in Python : Chapter 3: Algorithm Analysis (Big-Oh notation, Comparative analysis)
  • Machine Learning course: Generalized Linear models: SoftMax regression. Gaussian discriminant analysis for Generative Learning algorithms.

Week V

  • Advanced on Fluent Python: Read Chapter 3 "Dictionaries and Sets" covering dict comprehensions, match and case methods...
  • Data structures and Algorithm in Python : Chapter 3: Algorithm Analysis (Big-Oh notation, Comparative analysis)
  • Machine Learning course: Generalized Linear models: SoftMax regression. Gaussian discriminant analysis for Generative Learning algorithms.

Week IV

  • My work now involves a lot of algorithms, a topic I haven't read much about. So I will also be adding Algorithms by Robert Sedgewick, Kevin Wayne to the bookshelf. The chapters are huge, so I don't expect to read a chapter per week.
  • Fluent Python: Read Chapter 2 "An Array of Sequences" covering list comprehensions, generator expressions, and iterables.
  • Studied Laplacian Positional Encoding and wrote about it.
  • Data Structures and Algorithms in Python: Started this book as well to revisit Python OOP. Read about Abstract Base Classes and OOP concepts in general.

Week III

  • I've decided to start reading Fluent Python to improve my coding skills in this programming language. I will try to cover a Chapter/Week
  • Fluent Python: Read chapter one on dunder methods
  • Class 3 for the Computer Vision course
  • Class 3 for the Machine Learning course
  • Read about HAC and (1+e)HAC algorithms to cluster large graphs

Week II

  • Attended Class 2 for the Computer Vision course Covered lens camera, Depth of Field, Lens flaws, Bay Array, desmosaicing, color moiré. Learned about based camera, image filtering (denoising, gaussian kernel and convolution)
  • In Class 2 for the Machine Learning course, I learned about matrix derivatives, the trace operator, and the probabilistic interpretation of linear models. We also covered the likelihood function and maximum likelihood estimation.
  • Began reading about algorithms, focusing on Hierarchical Agglomerative Clustering methods.

Week I

  • Attended Class 1 for the Computer Vision course: Covered projection models, the pinhole camera, 3D-2D projection, and vanishing points.
  • Attended Class 1 for the Machine Learning course : Introduced various learning algorithms, including linear regression and the Least Means Squares algorithm.
  • Class 1 of Applied Optimization: Covered the fundamentals of optimization problems, including linear and non-linear programs, convex optimization, and linear least squares.
  • Wrote a TMAP blog post , learning about Min-Hashing, LSH, and k-NN graphs in the process.

Week 0

  • Arrived in Bern and settled in.
  • Started creating this website.