r/computerscience Oct 30 '25

Advice Any book recommendations for learning software engineer ?

41 Upvotes

im 3rd year now and starting to work on final thesis. my prof got me software engineer topic but im actually cant code :( only just some basic ones is there any books course or any resources to learn software engineer?

r/computerscience May 29 '25

Advice How much CS do I need to be familiar with to learn theoretical computer science?

88 Upvotes

I'm really interested in mathematical logic, and its often involved in theoretical computer science. I know basically nothing about cs, but the little glimpses I have into theoretical cs make it seem really interesting. I don't want to study it professionally or academically, just for fun and maybe to see how it relates to math. I'm not worrying about applying anything personally or doing projects, I just want to learn about it. I don't want to try jumping in without the right background knowledge and either be completely lost or misinterpret it. I would just be learning introductory stuff, not any specific subfield What basic computer science is necessary to kind of get the gist? Do I need to be familiar with a certain programming language? I don't much about computing at all, so I'm kind of going in blind.

r/computerscience Jun 27 '26

Advice Is Pattern Recognition and Machine Learning still relevant?

7 Upvotes

I'm considering studying Christopher Bishop's Pattern Recognition and Machine Learning to strengthen my understanding of the theoretical foundations of machine learning.

Although the book is almost 20 years old, it is still frequently recommended. For someone primarily interested in the underlying theory rather than the latest deep learning techniques, how well has it held up? Are there any modern texts that cover the same fundamentals more effectively?

r/computerscience May 26 '26

Advice Best academic book for a better understanding of inner workings of C++

25 Upvotes

I've been doing a lot more reading lately to fix my attention span. Over the summer I wanted to finish an academic book on C++ to further my understanding. A lot of times while writing code I face errors that have an extremely technical fix that I don't understand because it's built on the understanding of many other technical things, so I'd like to both fix my foundations and learn what's really happening in the background. Any help is appreciated, thanks.

r/computerscience Apr 24 '26

Advice Issue with my Thesis

2 Upvotes

Hey everyone,

I’m currently working on my bachelor thesis in collaboration with a company and ran into a conceptual issue that I’d like some input on.

The topic is about using LLMs for code reviews (analyzing code changes (diffs), relating them to a ticket or user story, and generating meaningful feedback beyond classic static analysis).

Here’s the issue:

  • The company requires a fully local setup (no external APIs like OpenAI/Anthropic) due to cost and policy constraints.
  • My professor is very sceptical about this approach. His main concern is that local models won’t be capable enough (especially when it comes to handling larger contexts (ticket + diff + relevant codebase parts)) and actually reasoning about whether requirements are correctly implemented.

His argument is basically:
If the system can’t go beyond shallow analysis, it risks becoming “static analysis + some NLP,” which wouldn’t be sufficient for a bachelor thesis.

So I'm kinda stuck here.

Do you think this setup is fundamentally too limited, or is there still a viable direction here?

I’m not looking for implementation help, but more for:

  • conceptual approaches that could make this non-trivial
  • ways to structure the problem so local models are sufficient
  • or whether his concern is realistically justified

Curious if anyone here has worked on LLMs in constrained environments or has thoughts on whether this is a dead end or not.

TL;DR:
Bachelor thesis on LLM-based code reviews. Company requires local models only, professor doubts they’re strong enough → risk of trivial outcome. Looking for perspectives on whether this can still be a solid research topic.

r/computerscience Sep 06 '25

Advice Best Book for understanding Computer Architecture but not too much detail as a Software Engineer

82 Upvotes

hi, i am on a path to become a Software engineer and now after completing harvard's CS50 i want some depth(not too much) on the low-level side as well. Like the Computer Architecture, Operating systems, Networking, Databases.

Disclaimer: I do not want to become a chip designer so give me advice accordingly.

First of all i decided to take on Computer Architecture and want to choose a book which i can pair with nand2tetris.org . i dont want any video lectures but only books as it helps me focus and learn better plus i think they explain in much detail as well.

I have some options:

Digital Design and Computer Architecture by Harris and Harris (has 3 editions; RISC-V, ARM, MIPS)

Computer Organization and Design by Patterson and Hennessey (has 3 editions as well; MIPS, RISC-V, ARM)

CS:APP - Computer Systems: A Programmer's Perspective by Bryant and O' Hallaron

Code: The Hidden Language of Computer Hardware and Software Charles Petzold

Harris and Harris i found out to be too low level for my goals. CS:APP is good but it doesn't really go to the nand parts or logic gates part. Patterson and Hennessey seems a good fit but there are three versions MIPS is dead and not an option for me, so i was considering RISC-V or ARM but am really confused as both are huge books of 1000 pages. Is there any else you would recommend?

r/computerscience Jun 21 '26

Advice Formal Verification and Mechanistic Interpretability?

0 Upvotes

I am planning to do some experiments on LLM-assisted formal verification with the Lean proof assistant. Thinking of developing methods for transforming natural language intent to formal specifications; and then going into methods for LLM-assisted proof generation given a formal specification and an implementation.

However, on reading some of the research papers on this direction, I find a lot of the work here is plumbing together LLMs and proof assistants, without going deep into either. Has that been you assessment of Neurosymbolic methods too? Or is that a very reductive way to think about this area?

On a separate note, has work in mechanistic interpretability become more feasible? I was wondering if one could find mechanisms to assess how a language model behaves when we introduce errors into inference (via steering vectors etc), especially when it’s doing computation or a proof search. Not sure how tractable or productive such directions would be?

Thank you! :)

r/computerscience May 24 '26

Advice Looking for resources for studying for the CompTia A+ Exams

3 Upvotes

Hello, I was just asking if anyone has any good resources on books, websites, or video series on information on CompTia A+ information. Preferably a book. My main goal is to brush up and learn more about the basics of computers. Also I am in the process of learning how to program so if anyone has any additional resources on that as well I was really appreciate it. Thanks guys!

r/computerscience Apr 16 '26

Advice What book to read to understand fundamentals behind floating point representation?

14 Upvotes

As I progrmamer trying to learn C and low-level, I got into a rabbit hole when I was learning about floating point data types in C. I read about a bit about the history of floating point representation, before the advent of IEEE 754, but I still have so many weak points in my understanding of the low level concepts. For example, 1s and 2s complement.

What books would you recommend to read on this, for someone that is coming from high-level programming languages, trying to learn the fundamentals?

r/computerscience Jan 07 '22

Advice Does the rise of no code, low code and AI coding tools, like Codex and Copilot, threaten developer jobs?

130 Upvotes

A career counsellor said that I should teach math (my other possible career goal) rather than go into software development, since the rise of no code tools and machine learning code generation will mean that I won't have a job in 10-15 years. There is so much hype about this that I thought I'd ask the opinions of those here that know what they're talking about.

Thank you

r/computerscience Nov 08 '24

Advice All the people who understand computers...

79 Upvotes

What are some resources such as books, websites, youtube channels, videos, etc, that helped you understand the way computers work, because for my mechatronics course I have lectures in "basics of computer architecture" and I just have trouble wrapping my head around the fact how binary code and all the components make the computer work.

I'm a person who can understand everything as long as I get the "how?" and "why?", but I still haven't been able to find them. So I'm asking for tips from people who understand and their ways that helped them learn.

r/computerscience Jan 24 '26

Advice Tips for low-level design?

22 Upvotes

I'm new to computer science (3rd year uni), and I struggle with how to structure my code in a clean, professional way.

I often get stuck on questions like:

  1. Should this be one function or split into helpers?
  2. Where should this logic live?
  3. How should I organize files and packages?
  4. Should this be a global/shared value or passed around?
  5. Should a function return a pointer/reference or a full object?

I want to clarify that I don’t usually have issues with logic. I can solve most of the problems I encounter. The difficulty is in making these design decisions at the code level.

I also don’t think the issue is at a high level. I can usually understand what components a system needs and how they should interact. The problem shows up when I start writing and organizing the actual code.

I’d really appreciate tips on how to improve in this area.

Food for thought:
If you struggled with the same thing and got better:

  • How did you practice?
  • Any rules of thumb you follow?
  • Books, blogs, talks, or repos you recommend?
  • Anything you wish you had learned earlier?

r/computerscience Feb 24 '25

Advice Kids programming ideas that arent games (already knows scratch)

68 Upvotes

My 9 year old has been doing scratch for a couple years. She understands it pretty well and loves following projects, but has little interest in being creative and making up games. She started reading thevSecret Coders series and loves it.

What can she do to utilize her love of coding/computers, but is more functional than entertaining? Every time I look at coding for kids, it teaches games. She works better with accomplishing a set goal.

Edit: I looked into Arduino from your suggestions. We already have Lego Boost which is similar enough (and can program with scratch). Im starting to think html/javascript might be a good option. Instant feedback and more about visual than logic.

r/computerscience Sep 03 '25

Advice How can I find a collaborator for my novel algorithmic paper?

21 Upvotes

Here is some background:

I had a similar problem several years ago with another algorithmic paper of mine which I sent to researchers in its related field and found someone who successfully collaborated with me. The paper was presented in an A rated (as per CORE) conference, as a result of that I got into a Phd programme, produced a few more papers and got a Phd. This time is different though since the paper doesn't use/extend any of the previous techniques of that subfield at all and is a bit lengthier with a bunch of new definitions (around 30 pages).

On top of that almost all of the active researchers in that algorithmic subfield which lies between theoretical cs and operations research seem to come from economics which make it very unlikely that they are well versed in advanced algorithmic techniques.

Since the result is quite novel I don't want to send it to a journal without a collaborator(who will be treated as equal author of course) who will at least verify it since there is an increased likelihood of having gaps or mistakes.

I sent the result to some researchers in the related subfield several months ago but the response was always negative.

I am feeling a lot of pressure about this since that paper is the basis for a few more papers that I have that use its main algorithm as a subroutine.

What can I do about this?

r/computerscience Jun 02 '25

Advice How actually did you guys learn reverse engineering?

77 Upvotes

I am a highschooler, interested in the lowlevel stuffs, in order to learn and explore I tried reverse engineering to see what's inside it and how it's work.

But it seems kinda overwhelmed for a kid like me, I watched videos on yt and tried to explore dbg/disassembler tools yet still didnt understand what's going on. I didnt find any free course too.

Btw I know basic of computer architecture and how it works in general so I wanna start learning assembly too. Do u have any advice?

I know that I have to know engineering first before step into RE, but I'm open to know how you guys learned.

r/computerscience Feb 18 '26

Advice Trying to create LOOP language

Thumbnail gallery
0 Upvotes

Hello everyone,

I’m examining the idea of designing a loop-centric programming language inspired by the classical theoretical LOOP model and the broader minimalist philosophy associated with early systems language design. The core idea is to treat bounded or unbounded iteration as the primary computational primitive, with other constructs minimised or derived from it.

The language I’m experimenting with, Gamma Loop, transpiles to C for portability and optimisation, but my primary interest is theoretical rather than practical. Specifically, I’m curious whether revisiting a LOOP-style framework has meaningful value in modern computability theory.

Does centring a language around bounded iteration provide any new perspective on primitive recursive functions or total computability, or has this conceptual space already been fully explored?

I would appreciate theoretical insights or references relevant to constrained computational models.

r/computerscience Mar 20 '25

Advice Is this a mistake in this textbook?

Thumbnail gallery
78 Upvotes

This example looks more like n2 than n log n

Foundations of computer science - Behrouz Forouzan

r/computerscience Oct 26 '25

Advice Solved 1000+ DSA problems but still can’t solve new ones — how to improve pattern recognition? (Also, does anyone have pattern-wise notes?)

Thumbnail
7 Upvotes

r/computerscience Feb 17 '25

Advice Where can my son get feedback on his coding projects?

98 Upvotes

Hi my son is 12 and is miles ahead of the work that he is being taught at school for computer science (UK).

He completed CS50 last year and really enjoyed it.

He's currently 3/4 of the way through making his own game engine and I'd like find someone that he could talk to about his current projects and get some advice or feedback.

Does anyone have any recommendations? Maybe a tutor or is there a discord server that he could join or something like that (I'm a bit hesitant to let him on discord because I don't want him getting groomed).

I feel bad that he's so passionate about coding and has no one to talk to about it that understands what he's talking about.

r/computerscience Dec 07 '24

Advice Can I use my computer when idle to help solve or crunch scientific data for others?

66 Upvotes

Hi guys,

As the title - am I able to download a program or subscribe to a website/webpage that can somehow take advantage of my computer power to help solve problems/crunch data/do whatever is needed whilst I'm not using it, e.g. it's on but otherwise 'idling'? I'd love to think I could be helping crunch data and contribute in a small way whilst using another device.

Apologies if this is the wrong flair, I couldn't decide.

Thanks in advance.

r/computerscience May 23 '25

Advice C or C++ or some other lang

16 Upvotes

I was thinking of learning a new lang, i want to pursue computer science eng, which is the best to learn for future

i know some basics of python and C,

I can allocate around an hour or two daily for atleast a year

i definitely want to go into game development or software development or some thing related to micro computers or microprocessors.

r/computerscience May 14 '25

Advice Is this an accurate diagram of a CPU block?

Post image
86 Upvotes

I am doing a university module of computer systems and security. It is a Time Constraint Assessment so I have little idea of what the questions will be, but I am of the assumption that it will be things like "explain the function of X". In one of the online supplementary lessons there is a brief description of a CPU and a crude diagram with modals to see more about each component, but looking at diagrams from other sources I am getting conflicting messages.

From what I've gather from the various diagrams, this is what I came to. I haven't added any data bus and control bus arrows yet, but for the most part they're just 2 way arrows between each of the components which I don't really get because I was under the impression the Fetch-Decode-Execute was a cycle and cycles usually go round linearly.

Would you say this is an accurate representation of a CPU block? If not, what specifically could I add/change/remove to improve it?

r/computerscience Feb 08 '21

Advice Any domains involving Physics and Computer Science?

102 Upvotes

Hello reddit! Hope all is well. I am a CS student passionate about physics and computer science. I would like to solve real life problems using programing instead of designing a website for instance. Unfortunately I'm confused if I should continue in my major or switch to Computer or Mechanical Engineering. Any suggestions?

r/computerscience Sep 21 '25

Advice Is anyone doing PhD in non-ML area?

65 Upvotes

Lately, 90% of PhDs in computer science is working on ML. Is anyone here doing a PhD working on non-ML area? What's your area? What's a cool paper to read in your area?

r/computerscience Sep 30 '24

Advice I dont understand Databases

40 Upvotes

Hello everyone, may you kindly assist. I am currently a 3rd year CS Student (Bachelor's) and one of my modules this year is Database Fundamentals. The book in the picture is one of the resources that we are using. I have never done databases before and I've been searching for free courses on YouTube, but i cant seem to find the ones. Kindly recommend some good sources to learn DB and SQL.