To say programming is hard isn’t the whole truth. Programming, by itself, is challenging; you get a problem set and you try to solve it, you start a project and try to implement your ideas. The act of just programming, that is, coming up with computational solutions to a problem, is an easier process than the subject of programming as a whole. Programming is hard because it involves so many different elements not covered by traditional textbooks and guides. In some cases, entire books are devoted to single text editors, and once you throw in IDEs, version control, best practices and coding styles, and a list of other concepts related to software development in general, it can be hard to know which area to focus on next.
While much of this information comes naturally in time, it can be overwhelming at first. It was for me. It still is for me. My biggest problem when I started learning to program was trying to figure out what was the best thing to use for this other thing. Trying to search for answers like often leads to a group of people saying “this is the best” while another group will proclaim “no, this is better!” Unfortunately, the disagreement of what’s ‘the best’ doesn’t lend well to certainty in a choice. There is no best choice, and there really isn’t even a best answer, but, there is often a better answer.
Until recently, I never considered writing about my experiences related to anything, let alone programming. I’ve been answering questions and providing suggestions online for the last 10 years across various venues, and for the most part, I never knew if anyone read what I had to say, let alone know if that information was helpful. But, recently, a committed and enthusiastic classmate of mine found what I had to say helpful, and she told me it was worth sharing with others. While I’ve never expected or needed any kind positive feedback, it was by far one of the nicest things anyone’s ever said to me (thank you, Marianna). It reminded me there was a point to all this, so, per her advice, I’ve started this blog to share experiences and information that I feel other people would find useful in some way.
I’ll warn you now and say that the feedback I’ve received over the years, the few times I actually received some, can all be summarized as ‘TL;DR’. While I’ve taken steps to make my writing more concise, as you can see from the creeping length of this post, I’m still not that good at expressing myself in a succinct manner. While I feel the subject matter of these posts will lend well to lengthier discussions, I still can’t seem to let go of my soap box, and digressions still seem to hide around every corner. For the most part, however, the details provided will be relevantprobably.
While my area of study has largely been Python related, and although initial postings will detail information related to that, I will cover my experiences with other languages and general programming concepts as well. My goal here isn’t to teach programming, there are much better resources out there for that. This site serves as means for me to talk about experiences and concepts that aren’t really covered by traditional guides, and the subjects detailed here won’t all be related other than the fact they all deal with programming in one way or another. Even if few (or no one) ends up reading this, it will at least serve as a more visually appeasing means of cataloguing resources for personal reference later (cramping everything into an excel sheet isn’t very eye catching).
Anyway, as you will soon find out, I don’t know how to conclude my point gracefully, so this is me explicitly ending it. If you find any of this intriguing, or you just enjoy watching my awkward attempts at closing, I hope to provide new posts weekly.