Logo
Articles Compilers Libraries Tools Books Videos

Article by Ayman Alheraki in October 1 2024 11:54 AM

My Professional Journey in Programming From Beginnings to the Future

My Professional Journey in Programming: From Beginnings to the Future

Introduction

My journey in the world of programming began in 1986, a time when educational resources were scarce. There were few options available, such as training courses offered by certain centers or general books that barely scratched the surface of programming. Most magazines focused on technology news and developments, making it challenging to find useful information for learning. Nonetheless, this challenge did not diminish my passion for learning programming.

Beginnings: From GW-Basic to Turbo Pascal

I started with GW-Basic, a programming language included in an IC chip embedded in PC-XT computers, which operated on MS-DOS. This language provided a solid introduction to basic programming concepts. Subsequently, I moved on to Turbo Pascal and Turbo C, where I began developing more complex programs and deepening my understanding of programming concepts.

Transition to Database Programming

As my skills progressed, I transitioned to database programming using DBase III. This language was suitable for creating database applications, especially at a time when systems like Oracle required more advanced hardware. These tools offered significant data management capabilities, facilitating the development of programs that met market needs.

The Windows Era and Graphic Programming

With the introduction of Windows 3 in 1990, a revolution in graphic programming began. I transitioned to MS Visual Basic, which offered user-friendly graphical interfaces. I also used languages like Clipper and Paradox to develop various applications. This evolution allowed me to create software that interacted better with users, adding substantial value to my work.

Immersion in the Web World

With the rise of the internet in 1997, I began programming websites using HTML and JavaScript. I also utilized ASP to develop database-driven applications on servers. This period was pivotal, but unfortunately, I failed to realize at the time the profound impact web applications would have on desktop programming. My limited vision caused me to overlook significant opportunities that were emerging.

Obstacles and Challenges

I continued to work on desktop applications until 2022, but over time, I realized that I had missed a significant opportunity to keep pace with the revolution of JavaScript, especially with the emergence of NodeJS and Python. My focus on desktop applications during this period proved to be a significant hindrance. Although I had developed numerous websites from 2000 to 2009 using PHP and HTML, I lacked the foresight to benefit from emerging developments.

Future Vision: WebAssembly

Through all these experiences, I want to emphasize the importance of staying abreast of technological advancements. I see WebAssembly as representing the future of application development. It provides an opportunity for developers to use multiple languages, including C++, in web environments, making it a crucial technology to pay attention to. It is expected that most programming languages will support this technology in the near future.

Conclusion

My journey in the world of programming underscores the necessity for continuous learning and adaptation to change. While I have spent two decades programming in C++, I believe it will remain powerful and relevant for decades to come. I wish to share my experiences with new programmers, especially those beginning their journey in this field. By embracing modern technology and paying attention to developments, they can build a bright future in programming.

Advice for New Programmers

  1. Stay Updated: Keep yourself informed about the latest technologies and languages.

  2. Be Flexible: Don’t hesitate to switch between languages or new environments.

  3. Learn from Mistakes: Acknowledge the mistakes you made in the past and try to avoid them in the future.

  4. Start Early: The earlier you begin learning new technologies, the better your chances will be in competing.

Final Thoughts

I hope my experiences help new programmers avoid the mistakes I made and inspire them to focus on future developments in programming. The world is changing rapidly, and developers must be ready to face these changes in the best possible way.

Advertisements

Qt is C++ GUI Framework C++Builder RAD Environment to develop Full and effective C++ applications
Responsive Counter
General Counter
51078
Daily Counter
576