When you learn to program for the first time, you look for (or, perhaps, are assigned) projects that reinforce basic concepts. But how often do you, once you've attained more knowledge and experience, revisit those beginner projects from the perspective of an an advanced programmer?
Floating-point numbers are a fast and efficient way to store and work with numbers, but they come with a range of pitfalls that have surely stumped many fledgling programmers — perhaps some experienced programmers, too!
A common question I’ve seen from beginning Python programmers is, “How do I make my code more Pythonic?” The problem with a word like “Pythonic” is that its meaning is nebulous: it means different things to different people.
Some unexpected output leads to an investigation into character encodings, Unicode, and a whole lot of flags.
Curiosity is not an immutable trait. You can learn how to be more curious.