Logo
Articles Compilers Libraries Books MiniBooklets Assembly C++ Linux Others Videos
Advertisement

Article by Ayman Alheraki on January 11 2026 10:36 AM

My Journey in Programming 38 Years of Learning and Growth

My Journey in Programming: 38 Years of Learning and Growth

The Beginning: A Passion for Programming Since 1986

My journey in the world of programming began in 1986, at a time when programming was limited to a few languages and relatively simple technological capabilities compared to today. However, my passion for programming drove me to constantly explore and learn every new language and technology that emerged in the field. I started with Assembly language, then moved on to BASIC, Pascal, and Fortran, which were foundational languages for many programmers at the time.

Transitioning to Database Languages

As the need for data management grew, I began working with DBase III and DBase III+, followed by Paradox and Clarion. These languages and tools were widely used for building databases and managing information professionally. With the emergence of Clipper and MS Access, I deepened my understanding of database structures and how to design efficient applications that rely on them.

The Multimedia Era and Visual Programming

During the 1990s, multimedia technologies were rapidly evolving, which led me to explore frameworks like Macromedia Director and Flash. These tools allowed me to develop interactive applications rich in content. I also used GLPro for eight years, producing numerous media-based programs during that period.

The Rise of the Web and the Shift to Internet Technologies

With the internet becoming mainstream, I started developing web applications using ASP and PHP, then later transitioned to ASP.NET and C#, which revolutionized software development for the web. I didn’t stop there—I also began working with JavaScript and JQuery early on, as they became essential for building modern user interfaces.

Settling with C and C++

Despite working with numerous programming languages, I found true comfort and stability with C and C++. These languages provided the power and flexibility I sought in software development. Since 2004, most of my projects have been built using these two languages, as they offer precise control over performance and help in creating fast, efficient applications.

In recent years, I have actively followed the rise of successful programming languages such as Rust, Go, and Zig. Before that, I also worked with Python, a language known for its ease of learning and powerful capabilities. Additionally, I explored modern JavaScript frameworks such as NodeJS, Bun, and Deno, which represent a major shift in contemporary software development.

An Unfinished Experience with Java

The only language I never truly worked with or deeply explored was Java. I first tried it in 1998, but I never felt comfortable with it, and since then, I haven’t had the motivation to revisit it. However, I strongly believe that every programmer should be open to learning about different languages and technologies, even if they do not use them in their daily work.

Lessons Learned from My Programming Journey

  1. Don’t Limit Yourself to One Language – Although I love C++, I have always made sure to explore and understand new languages and tools.

  2. Expand Your Knowledge – Understanding different languages and frameworks opens new opportunities, whether in career growth or skill development.

  3. Adapt to Changes – The programming world is constantly evolving, and staying updated is crucial to remain relevant.

  4. Passion is the Key – If you are passionate about programming, you will always find time to learn and grow, no matter how busy you are.

Final Advice for Programmers

My advice to all programmers, especially C++ developers, is not to limit themselves to a single language. Expanding your knowledge to include various programming languages and tools will give you broader insight and greater innovation potential. This doesn’t mean abandoning your favorite language, but rather gaining exposure to new technologies that can help you improve your skills and make informed decisions.

I wish all programmers success in their journey, and I encourage continuous learning and knowledge expansion in this exciting and ever-evolving field!

Advertisements

Responsive Counter
General Counter
1002398
Daily Counter
1598