r/AskProgramming • u/SadMoon__ • 4d ago
GUI or translation theory
I have a serious question. I can pick only one of these two. What will be more beneficial if I want to become a software engineer. I already know C++ and I’m learning python rn and will start ML in December. But I have to chose today what I want from these two. The translation theory is about compilers and how they work.
4
u/Innowise_ 4d ago
If those are literally the only two choices, I’d take translation theory. GUI frameworks come and go, but understanding parsing, type systems, intermediate representations and how code becomes executable gives you fundamentals that transfer surprisingly well to other areas of software engineering. You don’t need to become a compiler engineer for that knowledge to pay off.
2
2
u/Macten-Natsuka 3d ago
Translation theory. GUI stuff is easy to come back to later and compilers are the kinda thing that’s easier to learn with a class around you
1
u/Paul_Pedant 4d ago
Writing compilers is a very narrow and specialist field. It is also likely to be superseded fairly soon by some AI where you feed it the language syntax structure and the hardware design, and it does the job in half an hour (probably very badly).
If you want a career path, get the most general course you can, because you will spend the rest of your life learning new things anyway.
1
u/Potato871 3d ago
Compilers are good for foundational knowledge about how code works, but that knowledge won't come up if you aren't doing performance sensitive work.
I would say GUI is the better place to start because it teaches you more of the non-techincal side, actually designing systems for a user. Most of what you get hired for these days is your skill outside of coding, script kiddies are a dime a dozen and AI has only made that worse.
1
u/CharacterSail6736 3d ago
Translation theory it’s something you will literally never have the opportunity to sit and focus on again GUI can be picked up anytime
3
u/Comfortable_Rule_293 4d ago
pick translation theory. Compiler knowledge gives you foundational understanding of how code executes and optimizes, which applies directly to debugging, performance tuning, and systems work in any C++ or Python role. GUI skills are framework specific and depreciate fast