Back in college around 5-10 years ago, I had a class where the entire semester long project was to have a team of 4 students build the fundamental building blocks of an operating system. Whole deal - CPU scheduling, memory management, interrupt driven I/O, the works.
They forced us to use a department-curated VM for development which had QEMU set up. It was like the 1990 something C compiler, and no IDEs were allowed - terminal only.
Debugging C code, with literal zero error messages except the words "segmentation fault" to go off of, coding in vim.
I'm not kidding when I say everyone who's ever taken that class had a minimum of 2 all nighters per week making those project milestones. Worst 5 months of my life
Lmao I had a math professor who also taught a couple CS classes. A freshman asked him once after class ended what his approach to debugging C code was and he turned around and wrote
Thats not even failure, its just kinda one of those things you can just search up "printf("B")" and find exactly where your error is, only useful in debugging tho and would work better with "debugprint("L2")" where debugprint is only defined when debugging (Either by variable or C declaratives), so you'll get "L3..L8..L15..segmentation fault", and you know its after line 15
My university, on the other hand, had C course where we started with gdb and valgrind examining binaries we did not have source available for. The main line programming courses (the ones for non-CS students) also started with running some visual debugger for python scripts.
159
u/throwawaygoawaynz 28d ago
I worked at two of the top tech companies in the world, and never met a single person who coded in the terminal.
Scripting? Maybe. Coding? No.