A list of my favorite, currently used macOS apps.
Fancy new build tools come and go, but I think I will stick with using makefiles to orchestrate everyday tasks in my projects.
How I used a bunch of open-source tools to automate the management of my side project.
How I learned the old truth that when building a software product and selling it to people, "building" is just the beginning. And often, it's the easiest part.
My setup and some tips and tricks for other MacOS users who want to make the most of their Stream Decks.
How can creating your own keyboard shortcuts make your life easier, and why don't you need a device like Stream Deck for that?
What is git-annex, how to set it up to store large files in Google Drive or NAS, and how I use it to seamlessly manage a git repository of 20GB (and counting)?
When working remotely, asking for help is often just a few keystrokes away. So it's tempting to "quickly" ask someone for support when you get stuck.
Or "how to win friends (without influencing people) at a conference".
If you want to learn how to implement continuous integration in your project, here is my "CI 101: A Beginner's Guide to Continuous Integration" talk in writing.
Should I use pre-commit? Or should I set up a continuous integration in my GitLab/GitHub repository?
Is starting a blog in times of withering attention span still worth it?
Things I loved, things I hated, and things I would improve at the conferences I've been to. Also - why I'm not a fan of online conferences.
Is the map() function faster than a corresponding list comprehension? That depends! Let's see how using lambda functions can affect the performance of map().
Running one big blob of code is often faster than splitting your code into well-separated functions. But there are other ways you can improve the speed of your code without sacrificing its readability.
pathlib is an interesting, object-oriented take on the filesystem paths. With plenty of functions to create, delete, move, rename, read, write, find, or split files, pathlib is an excellent replacement for the os module. But is it faster?
Are you an aspiring conference speaker looking to improve your presentation skills? Check out my guide for tips and tricks to help you make great talks that engage your audience.
With four different ways of formatting strings in Python 3.6 and above, it's time to look at which one is the fastest.
What's the best way to compare something to None in Python?
For a tool that probably underlies most of the financial systems in the world, Excel has some incredibly weird limitations and quirks. Let me share a few WTFs I encountered when working with it.
Is using dictionary comprehension faster than calling the dict() function? And what's the most efficient way to create a dictionary from two iterables?
After years of using Evernote, I finally found a worthy replacement. And not only for Evernote but for two other tools as well. Let me show you how I organize my notes, mind maps, tasks, and long-term goals in Obsidian.
Is using {} faster than dict()? If yes, then why? And when would you use one version over the other?
There are plenty of ways to measure the speed of your code. Let me show you a few that I considered for the Writing Faster Python series.
Can we speed up our code examples by simply upgrading the Python version? And if yes, by how much?
Here is a quick tip: if you add a comment to an important command, it will be easier to find it later or understand what it did.
I've got this shiny, new blog design. Let me tell you how I got here. It all started with an idea for a dark theme...
pyenv is a tool that lets you easily install new Python versions and switch between them.
I don't always do the Advent of Code challenges. But when I do, I do them in IPython. Let me show you why.
What's the fastest way to remove duplicates from a list?
What's the difference between type() and isinstance() methods, and which one is better for checking the type of an object?
Why iterating over the whole list is a bad idea, what data structure is best for membership testing, and when it makes sense to use it?
How can we compare a variable to True or False, what's the difference between "is" and "==" operators, and what are truthy values?
What's the fastest way to sort a list? When can you use sort() and when you need to use sorted() instead?
Simple "for loops" can be replaced with a list comprehension. But is it going to make our code faster? And what limitations list comprehension has?
Dictionaries in the latest Python versions preserve the insertion order. So, is there any reason to use the OrderedDict as we used to do in the past?
Numba library has plenty of tools to speed up your mathematical-heavy programs. From a simple @jit decorator, all the way to running your code on a CUDA GPU.
How to quickly find something in a collection of items, like a list or a range? When a generator expression is a great solution, and when it's not?
Is it faster to "ask for forgiveness" or "look before you leap" in Python? And when it's better to use one over the other?
Introduction to the "Writing Faster Python" series. What it is about, how do I benchmark, frequently asked questions, and additional resources.
How a 5-minute hack for %reload function turned into a rabbit hole of different Python tools and techniques.
List of my favorite VS Code plugins that helps me build Python application.
I'm programming on a Macbook, and I love it. Here are some of the tools that make my life easier.
Tips and tricks on how to use IPython as your debugger.
How to stop pip from running outside of a virtual environment and messing up your dependencies?
Earlier this year, I passed the CAPM exam with a very good score. This is how I prepared for it.
Python 3 is great! But not every Python 2 project has to be migrated. There are different ways how you can prepare for the upcoming Python 2 End of Life.
What are IPython extensions, how to install them, and how to write and publish your own extension?
Tired of having to reload a module each time you change it? %autoreload to the rescue!
Slides for my talk "It's 2019 and I'm still using Python 2. Should I be worried?"
Slides for my talk "Wait, IPython can do that?!"
In this last part of the magic functions series, we will create a Magics class.
Continue the magic functions journey and create a cell magic function that checks type hints in IPython.
Learn how to make your own magic functions in IPython by creating a line magic function.
How to easily remember the difference between __str__ and __repr__ functions in Python?
Git aliases can be far more advanced than just a simple "l = log". Check out those seven examples of what else you can do.
What can you find inside the .gitconfig file and how can you make git look much nicer with a few simple settings there?
How you can automatically run Python scripts when starting IPython and why this can be useful?