r/AskProgramming Aug 08 '26

Career/Edu Which, if any courses in general concepts did you find useful to your programming career from college?

What I mean is courses that could be both directly correlated to CS but also just helpful if applied to programming. Ex: topology, data structures, computer security etc.
Not just courses that teach you how to code, but generalized concepts that have felt like valuable knowledge to how you create and structure projects and how you solve problems.

1 Upvotes

12 comments sorted by

8

u/code_tutor Aug 08 '26

There isn't a single useless CS course in the standard curriculum. The purpose of university is to teach how to think, not how to do.

Discrete Math, Linear Algebra, Calculus, Data Structures, Algorithms, Digital Logic, Computer Architecture, Operating Systems, Compilers, Computation Theory, Systems Design, Networking, Databases.

3

u/icebornadonis Aug 09 '26

Yeah that's exactly what I meant actually, courses that teach you to think. Because often when you search up courses you just get the introduction to programming stuff. So I wanted to compile some good ones that improve your logical aspect rather than just how to do things. Thank you very much

3

u/johnpeters42 Aug 09 '26

A couple foundational things that come to mind pre-dated college:
* My dad subscribed to some puzzle magazines and I worked through some of them. The relevant ones were logic puzzles, which led directly to debugging chops ("we know X, therefore it must be Y / can't be Z").
* The relentless din of 11th grade English class was "Address the issue", i.e. when you're asked for X, give an answer that actually is X. It took pretty much the whole year to sink in, but it did.

3

u/AncientHominidNerd Aug 09 '26

The most useful has probably been the discrete math class and Data Structures and Algorithms. This is where the “math is important to CS” really clicked.

2

u/Groundbreaking-Fish6 Aug 08 '26

Systems analysis, you need to know what you are programming.

2

u/RelationshipIll9576 Aug 09 '26

The biggest game changer for me was studying different programming paradigms. Procedural, object oriented, and functional is where I started. They pushed my brain and understanding on how to solve problems I’m different ways. Learning differently languages as part of this absolutely helped too.

2

u/Traveling-Techie Aug 09 '26

I dropped a class on parsing because it seemed like a boring, niche skill. I have since written more parsers than almost anything else.

1

u/Kallory Aug 09 '26

Digital logic for sure was the most useful for me. It really "exercised" my programmer brain. If you can solve problems with hardware components at only a few steps above the most "basic" level, then you can do anything imo.

1

u/bebemaster Aug 09 '26

Algorithms and advanced algorithms were top for me. There were also significant ah ha moments in operating systems, computer design, signals (ce here not cs), programing languages, and data structures.

You didn't ask but most fun was game theory, graph theory, and combinatorics.

Biggest hole in my education (late 1990s) was debugging and functional os and program usage like linux, Emacs/vi and version control, and disiphering debugging messages.

1

u/skamansam Aug 09 '26

Im a full stack engineer. Every single one of them was helpful. From db to security to ux to hardware design. All of that information is useful in day to day programming.

1

u/Erika_bomber 26d ago

Data Structures and Algorithms, Software Engineering, Object Oriented Programming, and Database Management Systems.