Learn To Walk, Then To Ride.

Welcome back! As promised, I want to share relevant and technical ah-ha moments throughout my journey to become a better programmer. My hope is that anyone reading this, who may also be teaching themselves how to code, might benefit in taking their own introductory knowledge of programming to the next level.
One frustration I encountered before my enrollment at DigitalCrafts was taking my understanding and abilities from the threshold of introductory courses and tutorials to the practical application of solving real problems by writing my own code — If you’re completely new to programming, that’s exactly where you should be! Baby-steps. We all start here. Become familiar and comfortable with variables. Learn your language’s syntax, control flow, and tools. Fundamentals are key.
Once you’ve got a handle on the basics, you’ll begin to tackle coding challenges. These challenges are, more or less, the training-wheels of the coding world. You won’t scrape your knees, but a little mental exhaustion and ego-bruising is totally normal. Whatever feeling you may experience will be entirely eclipsed by the joy and gratification of your code compiling successfully and, as we affectionally refer to it, “doing the thing.”
If your code works, you should feel good! But, as you begin to hone in on your development skills, you’ll start looking at your code differently. Examining exactly what each line of code in your program is doing helps you to improve your understanding of not only your own program but also the language your programming in itself. Likely, you’re learning a modern high-level language that defaults object-oriented programming as it’s introductory structure and organization of concepts.
This is great for simple exercises and challenges that require you to do one thing. The more complicated this one thing is, you may notice your code piling up in what could end up being a massive function or method. When you have these bulky functions, they limit themselves to whatever you’ve included within that function. Changing any element, or wanting to run a slight variation or piece of that code leads to a lot of repetition. You would have to write out the same logic you’ve already coded into your previous function again into your new and slightly different function. As a programmer, you’ll quickly fall in love with learning to write less code that does more.
You may hear or have heard this referred to as the “DRY” (don’t repeat yourself) method. Functional programming empowers you to recycle your functions to be used whenever you need them! How do you do that exactly? Go back to your code. Identify what each unique aspect of your functions are doing. Separate those specific aspects into their very own functions. Then, create new functions that call these specific parts together as needed and you’ve on your way to functional programming!
No helmet required…Just keep peddling ;)
