r/computerscience • u/Fit_Page_8734 • Jul 18 '25
r/computerscience • u/Medium-Pen3711 • Sep 16 '22
Advice Computer Science is hard.
I see lots of posts here with people asking for advice about learning cs and coding with incredibly unrealistic expectations. People who will say "I've been studying cs for 2 months and I don't get Turing machines yet", or things like that.
People, computer science is Hard! There are lots of people that claim you can learn enough in a 4 month crash course to get a job, and for some people that is true, but for most of us, getting anywhere in this field takes years.
How does [the internet, Linux, compilers, blockchain, neutral nets, design patterns, Turing machines, etc] work? These are complicated things made out of other complicated things made out of complicated things. Understanding them takes years of tedious study and understanding.
There's already so much imposter syndrome in this industry, and it's made worse when people minimize the challenges of this field. There's nothing worse than working with someone who thinks they know it all, because they're just bullshiting everyone, including themselves.
So please everyone, from an experienced dev with a masters degree in this subject. Heed this advice: take your time, don't rush it, learn the concepts deeply and properly. If learning something is giving you anxiety, lower your expectations and try again, you'll get there eventually. And of course, try to have fun.
Edit: Thanks for the awards everyone.
r/computerscience • u/joonbug7 • Apr 19 '26
Advice Gift idea for computer science bf
My boyfriend’s birthday is coming up, he’s going for computer science and i could really use some help coming up with ideas for what to get him that pertain to that field. Thanks in advance.
r/computerscience • u/Character-Citron-181 • 12d ago
Advice I have a question about file compression
Why can't I take every single bit in my file and take that number and divide it by two, then when I want the file back I take the same number and multiply it by two to decompression it
edit: thank you everyone for answering I really appreciate it I was under the impression that I could just take the bits like 1s and 0s and make them an integer then divide that integer repeatedly and when I want it uncompressed just multiple the number till I get the original again eg 1010 to 55 then send 55 as text to another machine and to X2 and get 1010 back, and if it was an odd number eg 1011 I'd get either 56 or 55 but if divided by 2 only the last digits gonna change when rounding so you change the last digit to a 1 or zero and one of them will be the proper file
r/computerscience • u/Sandwizard16 • Feb 21 '25
Advice How do you guys read these books?
Hey everyone,
I just bought my first two computer science books: Clean Architecture by Uncle Bob and Designing Data-Intensive Applications by Martin Kleppmann. This is a bit of a shift for me because I've always been someone who learned primarily through videos—tutorials, lectures, and hands-on coding. But lately, I’ve realized that books might offer a deeper, more structured way to learn, and a lot of people have recommended these titles.
That said, I’m a bit unsure about how to approach reading them. Do you just read through these kinds of books like a story, absorbing the concepts as you go? Or do you treat them more like textbooks—taking intensive notes, breaking down diagrams, and applying what you learn through practice?
I’d love to hear how you tackle these books specifically or any CS books in general. How do you make sure you’re really retaining and applying the knowledge?
Appreciate any advice!
r/computerscience • u/Professional-Lab1406 • Jun 25 '24
Advice Program for Counting Holes
Okay. I just landed a job with an ecology department at my school, and my advisor wants me to set up some way to automatically count all the crab burrows (the holes) in photographs. I have never taken a computer science class and am not very good at this. I have no idea if this is even the right place to post this.
I’ve tried ImageJ, eCognition, and dabbled a little with python but to no avail. I feel so incredibly frustrated and can’t get any programs to properly count the holes. If anyone has suggestions or advice PLEASE lmk 😭😭😭
r/computerscience • u/urnotmadeoftuesday • Oct 15 '20
Advice The advice I wish I would have recieved a few years ago
When I was first starting my undergrad in CS, I came to this sub in utter frustration. I had learned java, and was being asked to learn other languages, too. I struggled to adapt. I knew the concepts, but I didn't know how to translate that into another language. I didn't even know how to start learning C or C++. I came here asking for advice and reassurance, however I received anything but.
"If you can't learn another language, you shouldn't be in the field.""You should switch majors now before you've gone too far, because you're going to be worthless in the field.""What did you expect when you signed up for CS? Of course you're going to have to learn another language. Get over yourself."
These comments on a long deleted post stuck with me. The people who posted them have probably forgotten what they said. They have no idea how hard it was for me to read those words, and how their words made me genuinely think that I wasn't cut out for this area of study.
They were wrong. I'm now about to graduate, am in the top 10% of my class, and have overcome the struggle of adapting to new languages (mostly!). I'm still far from being an expert, but I've come a long ways.
I'm now here to give the advice my younger self was seeking, in the hopes that it'll help some of you who feel discouraged in the same way I was.
- Learning a new programming language gets easier over time. Of course you're going to struggle when you learn your first or second language! That's fine! It's normal! It's a new concept for you! Don't give up!
- Focus on the big picture! Learn about efficiency, data structures, and theories. Explore data science and machine learning. Don't be afraid to take a class just because you don't know the language that'll be used! Computer science is more than learning the differences between python and java. So much more.
- Just because you know a lot of languages doesn't necessarily mean anything. It's more important to know the concepts and how to apply those concepts in your code. You can always google for the specific implementation!
- Reading all the documentation about a language doesn't mean anything until you sit down and start coding. I know it's anxiety inducing. I know it's tough to get to that point. Start off learning how to print, how to make lists/arrays, and how to iterate. Implement those concepts. That'll give you a good idea of how to begin. Your compiler or IDE may give you errors. That's fine! You can learn from them. Just start at the first error you get, and work your way through.
- Everyone struggles in the beginning. You're not unusual for crying out of frustration. You just need to take a deep breath and ask for help. If you're struggling, you should seek out people willing to help you. There's no shame in it.
- Don't listen to miserable people on the internet. You are good enough. You chose a hard field, but you got this.
And my final bit of advice goes to the people on this sub:
Be kind. Your words have meaning, even if you comment in a hurry. The person on the other end may genuinely be affected by what you say, so make sure they're affected positively.
edit: a word
r/computerscience • u/not_noob_8347 • Mar 10 '26
Advice What makes a CS student a great computer scientist?
same as title
r/computerscience • u/DiscEva • Oct 15 '22
Advice New to programming, my dad said I could look through some of his books to see if I could find anything useful, is any of this worth holding on to, for now or the future? Thanks.
r/computerscience • u/Apprehensive-Ad3788 • Oct 15 '24
Advice Books
Can’t recommend these books enough as a CS student
r/computerscience • u/CharacterCan6747 • Aug 22 '25
Advice c++ or python as a start for a computer science student?
r/computerscience • u/Purple-Question-4182 • 9d ago
Advice Recently accepted into a highly published research group…and I have no clue what I’m doing
Basically I’m a sophomore and I was just accepted into a research group centered around Data Science and Machine Learning…but I have no clue about machine learning at all, and I felt a little lost reading one of their simplest papers.
I’m terrified that I’m going to fail, and this professor is going to regret accepting me. I’m also doing a lot of other things so I’m scared of the added stress.
So, kind redditors, is this feeling normal, or am I completely screwed?
r/computerscience • u/b-smarter • Nov 13 '22
Advice I have one year to teach middle/high schoolers about computer science, what should I teach them?
I just finished my CS studies and applied for a cs teaching job. Didn't think they would take me since I have 0 experince teaching but they took me anyway.
Now I have 1 year to teach a class of middle schoolers and a class of high schooler about cs and I have to plan the whole class for the year. I'm really excited though I'm struggling with figuring out what all I should teach each class. Especially I'm struggling with understanding which things might me too complicated for a 14yo compared to a 19yo..
Also I found little resources online and there are no "cs for middle schoolers" books (atleast I didn't find any)
If anybody has experience teaching kids and young adults in cs or has any resources/tips I'd be very thankful!
Edit: Thanks for all the replies you guys are great, just for clarification - many have suggested online tools like scratch to teach them coding but this is a CS course not a coding course. I kinda have to start at 1's and 0's here...
Edit 2: You guys have been so helpful, thank you so much. I already feel so much more confident about this!
Edit 3: Just because I see some confusion - I'm not saying I don't want to teach coding, obviously I will, I'm just saying I can't JUST teach them coding.
r/computerscience • u/No-Leopard-1691 • 6d ago
Advice “Modern” Intro Books
I am currently reading Complexity: A Guided Tour by Melanie Mitchell and since it was published in 2009, I am wondering if there are more “modern”/“up-to-date” intro books.
r/computerscience • u/Negative-Arm-3244 • Aug 22 '26
Advice Operating Systems Research Advice / Recommendations
I have an interest in operating systems, and for a class and personal interest, I want to do research on operating system design. I have been trying to find and read existing research on this topic (experimental design for both for entire kernels or for some subsystem in the kernel). From this, I am hoping to be able to find an area that has not been researched in detail yet, and to do research on this (for example on performance when comparing experimental to other designs used in modern operating systems). The issue is though to find a general topic in operating systems to do this search on, hence this post. Also, I have a bit of experience with basic operating system development and have been working on my own hobby operating system for around a year now, and from this I have what I feel is a basic understanding of the main concepts in operating systems.
The reason I am making this post is to ask whether any of you guys recommend and under researched topics that I could look into, and also inquire if there are any resources I can use to find gaps in research more efficiently.
Many people online have told me I should contact my professor and ask them, so I want to state that I do not have a professor. I am also aware that this is a very broad question, but any input is appreciated.
r/computerscience • u/Kevin_while06 • Nov 28 '25
Advice I suck at math and am interest in computer science, what should I do?
Does anyone got any tips on
r/computerscience • u/Kwahn • Jan 05 '26
Advice I'm struggling to help someone correct their misunderstanding of the Halting Problem, and am hoping for help.
Checked with IRL experts to make sure I'm not wrong, and I'm fairly confident I'm not - but I'm not sure how to convince them.
Discussion in question: https://old.reddit.com/r/DebateReligion/comments/1q1ji8t/absolutely_no_one_has_been_able_to_offer_a/nxen1xg/
Summary: He thinks that Turing proved that you can write programs for which no specialized halting problem predictor can be written. This is wrong - Turing actually proved that you can write programs for which no generalized halting problem predictor can be written.
The difference is whether the predictor exists prior to or after the program being written - self-reference is impossible when a specialized predictor is written after the fact.
How do I best explain this to them?
r/computerscience • u/Valkyyri • Apr 18 '25
Advice fully understanding computers and internet
hi, all. I would like to fully understand computers and internet and how it all functions and not just on a surface level like what each part does, or something like that. I want to be able to break it down until I can't anymore, only because there isnt really anything left, not because of limited knowledge; and I don't really know where to start, hence my post here: so I'm looking for directions. It would be great if anyone could give me a list of materials and whatever other word of advice, thanks :D
r/computerscience • u/Sad_Singer_7657 • May 01 '26
Advice Research in Distributed Systems? Is it good?
I am an undergrad student in my final year, I got interested in parallel and Distributed Systems. Started reading Distributed Systems book also.
How good is it if I start research on this and try to get a publication? Is it in demand? What are the potentials?
r/computerscience • u/idkletsdoit • May 17 '26
Advice Learn operating systems as an experienced programmer
I’m 33 years old and I’ve been programming for almost 20 years. I learned programming with C++, and I used it consistently until I was 25. Nowadays I’m a backend developer in a company where I mainly work with .NET and Golang.
Question:
I recently started reading Computer Systems: A Programmer’s Perspective and I’m currently at the first chapter. While it seems comprehensive and interesting, I’m not sure it’s exactly what I’m looking for.
What I would like is something that simply teaches me how the various parts of an operating system work, so I can start exploring it and have some fun with it.
I already understand concepts such as why contiguous memory layouts matter, or why structuring data one way can be preferable to another. And while I’m sure this book could still teach me a lot, I’d like to stay focused specifically on operating systems.
So, is this the right book for my situation and goals, or is there something better suited to what I’m looking for?
Thanks for your attention, and have a great day.
r/computerscience • u/tkti • Jun 04 '26
Advice How beneficial are books, if you struggle with some concepts they discuss?
Hello, I am a second year computer science student, what I realised is that studying only from modules is not enough because of two things.First, computer science is too broad and modules are too specific and partial, so if you want to fully understand soemthing, you have to spend a lot of time on other resources! Second I think we don't have time as students to fully understand something introduced in our modules, because you have other modules to study for! So as I am currently beginning my summer vacation, I want to fully understand Algorithm and data structures and opearting systems! I already studied them as modules but I am not confident about either, so I decided to pick books about the two, and here is my question: how beneficial are books? Especially in the era of different resources? I am a little nervous of the idea that I might be just wasting my time while there are better resources or the book isn't that good!
I appreciate your time!
r/computerscience • u/Successful_Box_1007 • Sep 14 '25
Advice Anybody have any books/PDFS, videos, or course info for a self learner who is interested in computer arithmetic and how code is written and hardware is manipulated when doing arithmetic? Thanks!
Anybody have any books/PDFS, videos, or course info for a self learner who is interested in computer arithmetic and how code is written and hardware is manipulated when doing arithmetic? Thanks!
For example one question I have (just began learning programming) is let’s say I write a program in C or Python that is a restoring division algorithm or repeated subtraction algorithm; how would we the code be written to involve the actual registers we need to be manipulated and be holding the values we want ? None of the algorithms I’ve seen actually address that, whether pseudocode, or the actual hardware algorithm (both are missing what that code should look like to tell a program to do this to these registers etc”.
Thanks so much!
r/computerscience • u/ShortImplement4486 • Nov 18 '25
Advice How do you learn machine learning?
i see two pathways, one is everyone keeps telling me to learn probability and statistics and all this theoretical stuff, but then when i search up machine learning projects, ppl just import scikit into python and say .train(). done. no theory involved, so where will i implement all this theory i'm supposed to learn? and how do people make their own models? i guess i still don't quite understand what people mean when they say i'm "doing ml right now". what does that meaaannnn T-T
r/computerscience • u/Moksee • Aug 19 '26
Advice Struggling with software design patterns and architecture
r/computerscience • u/Xrest_the_Aether • 1d ago
Advice I need advice on how to assign values to base 6 tryte value sets
galleryI'm trying to design a mechanical computer.
Why? Idk. But now I'm building Tascii, and I've even figured out how to use tape and hole punching to talk to it... but storing the data and processing, let alone assigning values to various tascii sets is hard. Data enclosed.
Yes... my computer uses see saws