Some time back I began an online course on C Essentials. For the last nearly 8 weeks now I was attempting to complete a module every week. A lot of it was done before heading to bed and just shortly after I had finished with my work day. Every so often I would read over on weekends but that was a little more rare than usual.

I did finally finish the modules and was able to grasp some of the content inside of that course. The best part was that because I already knew how some programming languages worked it gave me a better understanding of how C works. I do know there is still some stuff I need to get better at but that will come in time.

What’s really funny here is that the reason I chose to learn this language was because I began my journey with getting more familiar with Git. And much like when I wanted to get familiar with MySQL I began by reading a book called Understanding MySQL Internals and it really helped me better understand how MySQL works. At the core of it was that it is written in C. This was super interesting to me. Another tool that is written in a programming language. One that now I really wanted to learn.

The weird thing here is that I didn’t take all of the quizzes on the course. I still haven’t taken the final tests either. I’m sure I will at one point when I remember to do that. Also supposing I also want to continue with that route. A big part of me really does. I’ll figure that out down the line.

The course was good. I will probably try and find another one to get a different perspective and will look at finishing up the C book I got as well. That is still on my list of must-finish. The reason I want to look at another possible course is because the more I see and read the more it starts to make sense to me. Earlier today I began reading the Git source code for the add command. The best part was that a lot of it really did make sense on how it works. Reading the code out loud just made sense. It clicked. At least that line of code I was reading.

I want to work more with the language so this will be fairly fun to tinker with. There are a few other reasons on why I want to work with the language as well. One of which is that I recently picked up an Arduino kit that I want to tinker with. The other being that some of the custom keyboard stuff works in C as well. I want to dive more and more on that because one of the things that recently came across my eye was a development board I could tinker with which has Bluetooth capability. I know that with the Arduino I’ll definitely be learning more on my down time.

What I do know is that for now I’m pretty happy with the progress I’ve made in learning the language. I still have some work ahead of me but that will be worth it all.