August 1st, 2020 · 9 min read
8th issue! **If you missed the previous ones, you can read the previous issues of the Python Monthly newsletter here.
Being a Python developer is a fantastic career option. Python is now the most popular language with lots of growing job demand (especially in the fields of Web, Data Science and Machine Learning). You have many job opportunities, you can work around the world, and you get to solve hard problems. One thing that is hard, however, is staying up to date with the constantly evolving ecosystem. You want to be a top-performing python developer, coder, programmer, software developer, but you don’t have time to select from hundreds of articles, videos and podcasts each day.
This monthly newsletter is focused on keeping you up to date with the industry, keeping your skills sharp, without wasting your valuable time. I will be sharing the most important articles, podcasts and videos of the month. Think Tim Ferriss and the Pareto Principle (80/20 rule) meeting the Software Development world. What’s the 20% that will get you 80% of the results?
The reduce function is one of the most useful tools you have as a programmer. Although it can be hard to understand at times, by using the reduce function you can implement a lot of useful things like
filter() and much much more. Here is a tutorial to show you its functional powers.
Python Subprocess just sounds like something cool you would hear a hacker on TV say. However, this is actually a useful skill and something you can do quite easily in Python to take advantage of extra CPU power or to run an App inside of another app. Here is how to do it.
One of the biggest changes lately in the Python landscape is the move towards distributed computing to take advantage of the power of multiple machines. However, this is a hard thing to do and many tools and libraries are being developed to make distributed computing easier with Python. One of the new kids on the block is Fiber from Uber. Just read the introduction part of this article if you want to get an overview of the problem it solves.
Pop quiz for you: What is the most efficient way to remove half of the duplicate items in a list. For example to go from
l = [1, 8, 8, 8, 1, 3, 3, 8] to
k=[1,8,8,3]. Try to figure it out on your own before you check out the solution here.
Object Oriented Programming sometimes gets a bad rep, but it is a very useful programming paradigm that has stood the test of time. Here is a tutorial on how to do OOP and also how to make your code cleaner and more efficient using this programming paradigm.
This is a project that will surely wow your future employers. Create an application to find restaurants with the help of food images you have. You will also learn how to work with IBM Watson for Visual Recognition and use location services for maps and location analytics. Here is the project walkthrough.
Another feature rich VS Code extension when you are writing Python. There are lots of these around, but this looks to be a promising one for one of the most popular editors.
A great overview of how to collect and analyze data to produce meaningful insights. Something you can do really well within the Python ecosystem. This is also a fun project for you to follow along and discover new insights. The big takeaway? If you want your YouTube video to trend, make sure you have a person in the thumbnail.
Two articles to really dive deep into how memory management works in Python.
New PEP proposal brings Python in-line with many other modern programming languages, like Haskell, OCaml, and Rust. It is a useful feature that will allow you to search/match strings.
What is your favourite Data Structure? Wait, you don't have one? Don't look at me with those crazy eyes. Everyone should have a favourite data structure. Mine is a Hash Table or in the case of Python, Dictionaries. Here is why it's such a useful tool in any programming language arsenal.
"The vast majority of serious malware over the past 30 years has been written in Assembly or compiled languages such as C, C++, and Delphi. However, ever-increasing over the past decade, a large amount of malware has been written in interpreted languages, such as Python. The low barrier to entry, ease of use, rapid development process, and massive library collection has made Python attractive for millions of developers - including malware authors." I guess it's part of being the popular language on the block. Check out the full analysis here.
You can now buy a Boston Dynamics dog robot and program it yourself. Guess what language? That's right, Python. Guess how much it costs? Only $74,500.
Do you know what Quine is? 99.99% of people don't. But you can be part of the select few that can explain it and pretend like you're a genius. Self Replicating Python Code.
A higher level of abstraction. We hear this phrase quite often in our industry. Do you fully understand it? What exactly is abstraction and why is it a useful concept when it comes to programming? Can abstractions be good and bad? This was my favourite article this month discussing this very important topic. Enjoy the read.
Ok, I have to share 2 things this month that I loved because this one is just as good. The takeaway? Write code that is easy to delete.
I lied. There are 3 articles for this month. It kind of ruins the whole point of this section, but all 3 of these articles are tied for the top spot this month. What should you do to succeed during a technical interview? This is one of the best pieces I have read on the topic.
Since we're best friends by now, you probably already know about this free Python Cheat Sheet. But just in case, it's a handy little page to bookmark (or you can download it as a PDF) for both beginners and experts.
See you next month everyone!
By the way, my full time job is to teach people to code in the most efficient way possible as the Lead Instructor of Zero To Mastery Academy. You can see a few of my courses below or see all of my courses by visiting the courses page.