Objective For numbers 1 through 20, print “Fizz” if the number is divisible by 3 (no need to print the number), “Buzz” if it’s divisible by 5 (no need to print the number), and “FizzBuzz” if it’s divisible by both (no need to print the number). Otherwise, just print the number. For example, for numbers […]
Tag: programming
Why use dataclass decorator in Python?
A dataclass decorator in Python is a handy feature introduced in Python 3.7 to simplify the process of creating classes that primarily store data. The decorator generates boilerplate code, like init, repr, eq, and other special methods, making code more concise and readable. Essentially, using dataclasses simplifies the process of creating classes. In this post, […]
Stacks and Heap Basics in Python
Python, like most high-level programming languages, has the concept of stack and heap, although it might not be as explicit or direct as in C++ or Java. While we may not need to typically explicitly manage memory in Python, having this knowledge equips us with the skills to write better code, debug issues effectively, and […]
Password strength and cracking
In our digital age, the importance of having strong, secure passwords cannot be overstated. With cyber threats on the rise, ensuring that our online accounts are protected is more crucial than ever. In this blog post, I share the core mechanics of measuring a password strength and share a practical approach to estimate how long […]
The classic “Two Trains” problem with interactive solution
You may have heard of the classic puzzle: Two trains start from two towns, heading towards each other. One train leaves Town A heading towards Town B at some speed while at the same time, the other train leaves Town B heading towards Town A at another speed. If the distance between the two towns […]
Getting reading time of an online article and more
If someone sent you a link to page or article, ever wanted to know how long is the article before even opening and reading the article, or if you could get a sense of the server response time or the page load time, number of images and paragraphs in that article? Well, I did and […]
Sorting algorithms explained, compared
In this post, I discuss some common sorting algorithms, their logic, share their implementation (code), and demonstrate each one with executable scripts. Then I compare their performances to identify the most efficient sorting algorithm(s). You’ll get a good overview of each one, learn how to code and use them, and understand their strengths and weaknesses. […]
Combinations in Python
In this post, I present the concept of calculating combinations from different choices. For educational fun, I will combine various parts of the bodies from two different creatures and see how many combinations we get. You’ll get to enter the animals to combine, and even get a name for your new mutant! If you have […]
Overlay Real-time Animations Using Pygame
In this post, I demonstrate how to load an image file and do some simple overlay animations, such as drawing different shapes of different colors at ever-changing locations over the image using nothing but the good-old Pygame library. The code and working demo are embedded below. I wanted to load a static image of my […]
Unicode transformation fun
In this post, I share some exercises of encoding a usual string of English/Latin alphabets into a readable Unicode version with styling but still into a text that can be copied/pasted anywhere without any special app, and then transform the input text into some interesting Unicode symbols (that can also be copied/pasted anywhere as text). […]