There is a point to be made that C is the foundation to all other languages, and thus being able to write C let’s you better understand how other C based languages (which is basically all of them) work.
I personally believe that in a academic sense, C should be your first language. However in a non-professional hobby context start with whatever you feel like.
runs a business selling C training
I’ve only ever heard this non-ironically from these types
It crashes ten times faster 😅
Compiling does take its sweet time, tho
To be fair, if you have an engineering degree that covered programming you probably learned C, ASM, and low level details about system architecture. But the definition of “engineer” seems a little looser when you’re taking about IT compared to some other fields - SWE is the only “engineering” title you can get without a formal education, AFAIK.
EECS, you gotta know all the way down to electron flow!
I love to gift TIS-100 to anyone who tells me they want to be a programmer. So far it’s been a great measure of success, if they actually play and complete it (observed via steam achievements)
I wanna be a programmer!
How close is it to actual assembly from an existing CPU?
Far, but being a programmer is usually not about using assembly anymore
Edit: to elaborate a bit, TIS-100 has an overcomplicated architecture but oversimplified command set, and restricts the coder way more than the real assembly (e.g. you have a limit on line length of 12 chars or somewhat close, and that includes the opcode itself). Imo these design decisions allow it to be interesting and simple enough to comprehend, but severely limits what can be implemented on that architecture in reality without requiring for lots of boilerplate
If you don’t know which path the electrons are taking on the silicon wafer, you’re a bad engineer.
in my quantum computer they take all the paths at once
Or do they?
Let’s take a look
Assembly gang unite against C-wannabees 🔥🔥
If you’re not programming on punch cards you’re a filthy casual
Unless you’re analyzing what microcode is doing with it, assembly is just hiding how things really work, too. Good engineers use early 1990s computers so that they can fully understand what’s going on, and never have to trust anyone else to correctly do anything.
Lots of truth to this, lots of great eastern block engineers came from working with super janky computers that demanded high levels of mastery from their users.
Real engineers run all their code on CPUs they designed in verilog/VHDL.
Real engineers use binary.
VHDL gang unite against the assembly-wannabees 🐝 🐝 🐝
Verilog for life!
Lay off me! I’m still trying to learn 6502 assembly.
As someone who has not written a line of code since basic was cutting edge, I hereby throw the entire weight of my expertise behind the supremacy of C
Memories. I remember copying my first BASIC code from a magazine. All it did was display a solid color on the monitor when you pressed any key. Back then my only resources were magazines and the video rental/computer shop owner that loved answering all of my questions. I’m pretty sure he could’ve sold his ponytail to Exxon for a hefty sum, but he still smelled better than the internet does now. Lol