DEV Community

jangir-ritik
jangir-ritik

Posted on

My Introduction to the C Language

Introduction

In recent years, I've had the opportunity to work with various web technologies, becoming fluent in JavaScript thanks to resources like the "You Don't Know JS" series, Florinpop's videos, Namaste-javascript's adaptation of the "You Don't Know JS" series, MDN docs, and other publicly available assets.

JavaScript and Its Limitations

Despite mastering JavaScript, I often heard it criticized as not being a "real" language—messy and all over the place. While I found JavaScript to be incredibly flexible and convenient, it became apparent that its ease of use hindered my understanding of the fundamentals of software development. As someone who values holistic understanding, this realization was disheartening.

The Quest for Stronger Foundations

Seeking to become a better problem solver, I recognized the need to gain a stronger grasp of data structures. While I experimented with implementing data structures in JavaScript, I felt that something was missing.

Exploring New Options

With a background in design, a passion for animations and 3D graphics, and the ultimate goal of creating VR/AR apps comfortably, I began exploring my options. Should I revisit Python? Or stick with Java? What about C or C++?

Choosing C

Considering that most VR/AR technologies use C#, with some frameworks supporting JavaScript for web-based VR/AR experiences, I decided to focus on mastering C#. However, I soon realized that C# abstracted away many of the inner workings and nuances I sought to understand, leading me back to the basics: learning C. (I am reading Kerninghan's 'The C programming language' currently)

Conclusion

In this journey of self-improvement and skill development, I've come to appreciate the importance of foundational knowledge and the value it brings to mastering more complex technologies. While the road ahead may be challenging, I'm excited to delve into the world of C and build a solid foundation for my future endeavors in VR/AR development.

Top comments (0)