I recently came across a month-old YouTube channel with two million subscribers. The content...was fine. The audio...was fine. And, yet, two million subscribers! Often, the way in which you frame your content is significantly more important than the content itself.
Few topics in the programming world spark debate quite as much as TDD. There's enough dogmatism from the evangelists of TDD to warrant an equal and opposite reaction from those who aren't on board and are tired of being told they're doing it wrong.
We're living in an interesting time, when one person - anywhere in the world - can start a business without leaving their bedroom. Even better, this business has the potential to bring in revenue while the person sleeps. This is the secret sauce to wealth, and it's now available to anyone with an internet connect and a decent idea. As a result, we have now regular folks - often with little business sense - running highly profitable small businesses.
Every open source project begins with the best of intentions. In fact, they usually begin with excitement. One developer has an idea, and thinks, "Hmm - I can do this!" So why is it that, more often than not, these projects eventually spiral out of control?
We can all surely relate to the sense that our ability to focus has slowly deteriorated over the last decade. If this scares you as much as it does me, let's talk about how we reverse the process through habit forming.
I think you'll find that intermediate-level developers tend to be the most passionate and rigid of the entire community. It is at this stage of your learning when you are most susceptible and attracted to programming "rules," or instructions from above that, when followed, lead us to clean code. But that's okay. While we all eventually realize that rules are meant to be broken, in certain phases of our training, rules very much serve an important purpose, and we'll talk about it in this episode.
Too often, we hear politicians spew the tired "learn to code" slogan in response to difficult questions related to disappearing jobs in remote America. Let's talk about the logistics and practicality of a middle-aged coal miner making this switch.
I've thought quite a bit about types in the last year or two. I know - borrring - but I find it interesting to observe how intensely talented developers can disagree with one another on this particular issue.
Developers passionately disagree with one another on most programming issues. For every tutorial on class inheritance, duck-typing, naming conventions, and mutability, I'll show you another resource that argues vehemently in the opposite direction.