My thoughts and observations about a variety of professional and personal topics.

The firehose effect

Early in my programming journey, I had a manager once who told me that the whole process was like drinking from a firehose. That’s stuck with me all of these years. It turns out that increasing your skill as a programmer means learning absolutely everything in the entire world (well, it feels like it sometimes). Just off the top of my head, you have to learn:

  • the core features of your chosen language
  • all the standard programming fundamentals (variables, loops, classes, control flow, input/output, etc.)
  • Object-oriented design
  • Writing tests, if not full-fledged test-driven development
  • System design
  • Building
  • Continuous integration/deployment
  • Version control
  • Data structures
  • Algorithms (sorts, searches, Big O notation, etc.)
  • Libraries
  • Frameworks
  • So on, and so on, and so on.

Learn the above, all the time, forever. Not that I don’t love learning, but sometimes the sheer volume is overwhelming. Not to mention our total limited time on this God-green earth. You can only learn so much, do so much, be so much. You’re finite the moment you’re born. As you can imagine, for someone like me who wants to be and excel at so many things, this really blows.

[Read More]

Grokkering Dockering

Docker is pretty important these days, and it’s widely used across various organizations, but I currently don’t have any opportunities to deploy it at my working environment. Best thing to do in that case is start yet another side project where you get to brass tacks with the technology you want to learn and make something super simple to get up to speed. Consider this part 1 of X where I get more familiar with CI/CD pipelines and all the tools it requires. Docker’s the starting point.

[Read More]