How to Learn Python in Five Minutes

Hey everyone welcome to my five-minute talk on how to learn Python.
Sorry for the trickery my name is Mubashar Iqbal. I work at the comfort of my home. Unfortunately I’ve been working from home for over a year as a software engineer okay everyone here is part of the Python community in some sense or other this is a community talk after all.
Well I don’t necessarily feel that we have a duty to aggressively spread Python to every edge of the globe. I do feel that for people who want to get into the Python community who want to learn we do have an obligation to help them out as best we can and there aren’t a lot of talks about how to learn Python.
So that’s a the goal here is to help beginners learn and ultimately get a job working in Python okay so my story the quick version over a year and a half ago I quit my previous job without having anything lined up we weren’t using source control and we’re using PHP okay and so that was that I want to learn something totally new and I left I plan was to spend two to three months learning Python.
And then get an awesome job I created and followed a system to do so and indeed within three months I was able to get a job at freelance marketplaces on my Python and Django skill so I want to share with you how I did that my role at projects i take from freelance marketplaces in the last few months has been yes to develop software of course but also to actually just share Python knowledge I was moved teams in order to raise the skill of Python knowledge on that team so the things I’ve been doing tons of code reviews tons of pair programming.
So I have performed hundreds of code reviews given brutal feedback in the last few months and learned a lot about how Java developers try to learn Python and the things they run into okay so the system that I’m about to present it is repeatable okay I believe that anybody can do it and it yields results the reason being because it follows some principles that employers are actually looking for okay it’s called a three day project paradigm.
All you need is a project idea so you can feel free to ask a more experienced developer to something that you can accomplish within two to three days okay I did a web crawler which is an idea a friend gave me AI told me to pick a site I liked so I scraped a Lord of the Rings wiki got it local and made remapped all the URLs so he would work locally and not on the internet simple enough day one day one you simply mess around you jump in make mistakes learn about the language so this was literally the first thing I’ve ever done with Python and so there was you assume you’re gonna refactor everything you do you just mess around okay day two is supposed to be the complete functionality of your application so this is really a very small application it’s growing too big you cut scope you refactor as you need to because you want your code to be pretty for reasons we’ll see you soon you eliminate bugs you’re supposed to be bug three bug free by the end of day two and the reason is because on day three we’re not doing it much coding at all we’re completing documentation we’re refactoring again and pushing to an online repo dealing with packaging etc anything you need to do to complete the project because day four you’re done you never touch the project again.
So with that goal in mind we’re trying to complete something completely self-sustaining that we never touch that we have so we have something to show for our hard work okay and this not only feels good but you literally can show employers okay this is something you can put on your resume and it’s something I did and it helped me to actually get a job so some other other tools and tips phone interviews are absolutely ruthless and terrifying okay so I did a whole bunch of these and got a lot of experience doing them I found a site called color bite calm I’m not associated with it in any way and they give you 15 minute Python problems that you can you can solve their time there’s other languages as well the idea is to sweat it out on your own before you actually get to an interview so this helped me immensely doing doing phone interviews especially where you have to code in a Google Doc and you can’t run it you can’t test it or something like that okay Stack Overflow use it obviously it’s an incredible resource everyone here knows that but tell your friends if they’re trying to get into Python ask questions as soon as there you are they are comfortable answer questions and read answers about specifically decorators generators just beautiful like long essay answers about these that really get into the details with Python okay and so to get a better feel for how it works some common stumbling blocks especially for Java developers here’s two of them everything is an object and people have a really hard time understanding that so if someone can understand that an integer a file and a function are all objects they can get a much better feel for how to manipulate things and see that this stuff isn’t actually magic it’s as simple as working with objects.
Okay you don’t learn to refactor and refactor to learn so if you’re not refactoring your Python code you’re not learning how to write good Python code so don’t take code review comments personally cool
One last thing so I present a challenge to beginners okay if you’re not sure what skill level you’re actually at use the Python mock library to write pure unit tests on your whole codebase especially if it’s a web application if you’re able to do this and mock code all dependencies you have a pretty darn good understanding for how the Python interpreter is working you’re no longer a beginner Python programmer.

Leave a Reply