#Day1: Qt is the chosen one!
Today I will start my journey with #100daysofcode challenge with Qt!
Yes, I Am already in Qt but I will use this opportunity to refresh and learn more and document my journey to help others to learn Qt plus I will use it to improve my English writing!
If you are new to learn programming languages, of course, you will find hundreds of recommended programming languages / Frameworks and tools to start with. My Advice just avoids all the programming languages holy wars and starts to choose the language which fits for your work/passion/interest and whatever gonna help you complete the required job!
No One should force you to choose but you can get to know why people using such a tool or language you may have the same reasons or goals.
So let us start why I have chosen Qt!
First of all, I did not study IT/Programming or computer science in general, I just started programming as a hobby to solve my issues and automate my Linux setup.
When I started using Linux the first time in 2006 started with ubnutu, I could not find any Video Converter to convert my Real Media Videos from Windows to Linux, while of course ffmpeg was there to help but in the terminal. So I started working on building a GUI Application for FFMPEG called divx converter using python which was my first programming language to start with.
Later I shift to use Linux Mint, And one of the things I created was the APTSourcesManager using also python.
But later while using Linux at that time rpm package was the most used package manager for a lot of commercial packages so I made a Package Converter to convert rpm to debain Package used in ubuntu and Linux mint, I used a new framework called Real Basic which was Free in Linux at that time and I got the benefits of full Framework tools to use. And I have developed a few other Applications with both Python and real-basic.
Later Real Basic changed the brand and not free anymore and python as it's too easy I just got tired to set the full development environment and choose the IDE and other tools, that's where I start looking for something new.
What do I need in my new Programming Language / Framework?
- Full Framework has all the basic tools and modules like the IDE.
- Multi-Platform Support and that time mean the three desktop OS. ie: Linux, Windows and Mac OS.
- Low Level where I can go deep and help me to get to system tools and functions when needed.
- Free / Open Source where I do not have to fall to the same issue I had with REALbasic.
- Famous and widely used and good documentation.
- GUI and console application support.
And here I found Qt and start to learn it and use it as my primary DEV Framework Why?
- Qt is a full framework for GUI / Network / Database / Graphics and so on.
- Qt is a multi-platform where it supports all Desktop OS's and Embedded and Mobile and soon the web!
- Qt is the C++ framework and adds more macros and modules which make C++ easy and enjoyable and that's what I will explain tomorrow.
- Qt is Free / Open Source and Protected by Open Governance and is being used by KDE and a lot of open source applications.
- Qt is Widely used by Many Big Companies and It has the best documentation and many books.
- Qt Support Console Apps and GUI Apps using two Great Toolkits for Desktops and Mobiles!
To understand the full history of Qt and what is the difference between it and C++ and how it developed please read those resources:
We will be talking about those in detail in the coming days. And by tomorrow I will start sharing my journey with Qt.