In the movies, programmers type hundreds of code lines at a furious pace. Then they hit a button, and it saves the world/hacks into the FBI/some other dramatic theme.
There may be non-movie programmers who can program like that, but I’m not one of them. I’ve never met anyone who can do it in real life, either. We mortals spend 10% of our time writing a few lines of code (slowly). Then 90% figuring out why it doesn’t work. To help with that, we use an IDE (Integrated Development Environment). It’s a text editor that also runs the software, with tools for debugging.
A productive day of programming might have 100 cycles of write/run/debug. Multiply that by 100s or 1000s of programmer-days, and it’s almost like being married to the IDE. It’s as big a choice as which programming language to use.
For Macintosh, almost everyone uses Xcode: free software from Apple. For Windows, the main IDE is Visual Studio: free software from Microsoft. Both are OK but not great. I think a competitive environment would produce better quality IDEs, but nobody can compete against big-company and free.
QT comes with its own IDE: QT Creator. This past couple weeks, our staff has been migrating Goldenseal Pro into it. I have been cautiously skeptical about QT Creator, mostly because QT itself is a confused mishmash. There is a free, open source project, and also a company making a living from a commercial version. It’s an odd combination that could end up better then having huge corporate overlords, or it could be worse. Still too early to tell which it is.
Running code in an IDE is a three step process. First there’s a compiler, which checks everything for errors, and gives warnings for code that is suspicious but not deadly. If no fatal errors turn up in the compile step, the IDE then links everything into an app, and runs it. For step three you use the app, and see if it works right. If not, the debugger will step through the code bit by bit, so you can see if it’s working as expected. A fix might take minutes, or days.
Today we just finished getting Goldenseal Pro to compile. It meant eliminating about a thousand errors, mostly caused by old, obsolete code. Some could simply be tossed. Some could be rewritten immediately, with minor changes. The rest is just bypassed for now, until we see whether it’s needed or not.
The next step is pretty quick: fixing link errors probably won’t take more than a day or two. Then we start the long process of getting it all to run properly. For MFC my first guess was a year for that. It’s also a reasonable guess for the QT version.
Overall, QT Creator has its quirks, but it seems to function OK. I think our staff will get used to it.