Welcome to the inaugural edition of our series dedicated to the fascinating world of computer programming. In this journey, we’ll take a friendly and accessible approach to unravel the secrets of coding, algorithms, and software development. Today, let’s kick things off by tackling a fundamental question: What is computer programming, really?
If we consult the ever-reliable Wikipedia, it defines computer programming as “the process of performing specific computations (or, in simpler terms, achieving certain computing goals) by crafting and constructing functional computer programs. This process encompasses various tasks such as problem analysis, algorithm creation, assessing the precision and resource utilization of these algorithms, and finally, putting them into action (commonly known as coding) within a specific programming language.” Now, that may seem intimidating, even for seasoned software developers like myself.
However, I’d like to share a different viewpoint, one that I hold close as a programmer. At its core, programming is all about solving problems. These problems can be vast and intricate or relatively modest in scope, but they all have one thing in common – they’re waiting for a solution. Just like any other type of problem-solving, the initial step often involves understanding the problem itself. This may necessitate breaking it down into more manageable components, each with its unique set of challenges.
A common misconception is that programming is all about math and logic. While there’s some truth to this idea, it’s not always the central focus, especially if your programming tasks don’t involve complex mathematical or scientific calculations. In reality, everyday programming often revolves around the concept of transformation.
Consider this: We take data from different sources and reshape it to meet our specific needs. We gather user input to create something as straightforward as a movie ticket. We convert calendar events into smartphone notifications. All of these tasks involve transformation and are at the core of what programmers do.
One of the myths that discourage people from exploring programming as a career is the belief that it demands advanced mathematical skills. However, from my experience, this notion doesn’t hold true for everyone. In a previous role, I worked at an institution focused on cultivating IT professionals. While I don’t have concrete statistics from that period, I distinctly remember an intriguing trend: Individuals with a strong musical background often excelled in programming.
Music, when you break it down, indeed has mathematical foundations. But we don’t typically perceive it that way, nor do we approach it purely as a mathematical endeavor. Not everyone who’s adept at mathematics is inherently musical, and vice versa. Personally, I have a decent grasp of math, but my musical talents are quite limited.
It’s crucial to recognize that a career in programming, like any other profession, isn’t for everyone. Each field has its unique demands and challenges. Nevertheless, programming is more accessible than you might think, and it’s open to a broader audience, including you.
In this series, our goal is to collaboratively create a small application that serves as a practical tool for understanding various programming concepts. Together, we’ll venture into this captivating realm, and I hope you’ll discover enjoyment in the process.
Nova Scotia-based software developer with a rich history in entrepreneurship and technology. In the year 2000, embarked on a collaborative journey to automate statistical data gathering for a hockey pool, which later evolved into a thriving business focused on curating sports statistics.
Through strategic contracting in various sectors, including telecommunications and insurance, contributed to the growth of the startup, eventually expanding it to a significant enterprise with over 100 employees and worldwide affiliates.
Now, in the phase of semi-retirement, founded 'Daptl' to explore new contracting opportunities, adding another chapter to an already impressive career.