Skip to content

This is my journey through improving my python skills. I am proficient in Javascript, but I noticed that in interview, JS does not have built in data structures packages and I have to implement any I want to use on the spot. Python on the other hand does have built in DSA so I want to learn python in depth so I can interview in it.

License

Notifications You must be signed in to change notification settings

darioarias/learning_python

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

My Learning Path Through Improving my Python Skills

Overview

This is my journey of improving my python skills. I am proficient in Javascript, but I noticed that JS does not have built-in support for DSA, such as deque, binary search, min-heaps, etc.

While interviewing an engineer, I can 'finesse' and mention the general form, which is usually enough. For example, while interviewing for company X, I needed to use a queue as part of my solution. JS does not have an optimized queue built in, so I used an array and made sure I followed FIFO using Shift and Push, which is an overall O(N) (for pop) solution. I told the interviewer that if I had more time, I would implement an O(1) (for pop) answer that this is okay.

However, while taking a coding assessment where time complexity is enabled (i.e., counts towards your overall rating), I cannot just use an array as a Queue; worst yet, since most coding assessments are timed, the time I used to implement a queue is time waste since I could've used python all along and avoid all of this. Not to mention all of the other DSA support Python has.

Resources

Having used Python as an undergrad, given that I am proficient in Javascript, I knew most of the basic features found in Python. However, I wanted to take the time to start from zero and learn how things are done. This book taught me new things, including list comps and general best practices.

No word or paragraph can explain this book's depth cover. The general layout consists of 5 mini-books, each focusing on one topic and diving into it. I strongly recommend this book, even if you have used pythons for years. I promise this book has something for you. I see myself reading this book five years from now and learning just as much.

Some books on algorithms are rigorous but incomplete; others cover masses of material but lack rigor. Introduction to Algorithms uniquely combines rigor and comprehensiveness. It covers a broad range of algorithms in depth, yet makes their design and analysis accessible to all levels of readers, with self-contained chapters and algorithms in pseudocode.

What's next?

I am moving into Algorithms design and more design patterns. Leetcode with the new skills to get even more comfortable using Python. Interviews, interviews!

About

This is my journey through improving my python skills. I am proficient in Javascript, but I noticed that in interview, JS does not have built in data structures packages and I have to implement any I want to use on the spot. Python on the other hand does have built in DSA so I want to learn python in depth so I can interview in it.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published