4 ms·
Ask HN: I am looking for a C and Assembly mentor
I am a college student trying to learn low-level CS concepts, such as bit manipulation, memory and runtime performance, code compilation techniques, etc. for a CS course I will be taking in the fall. I already plan on attending office hours and taking advantage of online resources such as Stack Overflow. However, I learn best via 1:1 tutoring so I am trying to find someone I can meet, either online or preferably, in person who I can work with. However, I am having some difficulty finding someone who is 1) extremely knowledgeable in this area of CS and 2) would take the time to meet up with me. I find this website invaluable and was hoping that perhaps someone reading this would be interested in my offer, or at least would know someone who might be interested. However, beyond HN, what would be the most efficient way to go about searching for this type of tutor? What other resources am I not considering? How else can I go about learning about low-level machine code?
Some more information: I live near Mountain View and am free in the afternoons to meet-up, and I will also pay a generous amount as well for anyone who is an expert in these areas. For those interested, please feel free to message me - my email is provided in my profile.
- miles 7y ago> what would be the most efficient way to go about searching for this type of tutor? Read Ravi's words of wisdom: http://pindancing.blogspot.com/2010/12/answer-to-will-you-mentor-me-is.html http://pindancing.blogspot.com/2010/12/answer-to-will-you-me... and the related HN threads: https://news.ycombinator.com/item?id=20715136 https://news.ycombinator.com/item?id=20715136 https://news.ycombinator.com/item?id=1994998 https://news.ycombinator.com/item?id=1994998
- esmi 7y agoIf you’re in Mountain View and willing to pay just hire a CS tutor from Stanford. Problem solved...
- gaogao 7y agoI second the recommendation on hiring a tutor to help you through the first few weeks of either self-guided 6.004 or whatever the Stanford equivalent is. Other great avenues for getting better at assembly are writing simple compilers and my favorite, playing Zachtronics games, such as TIS-100.
- gaogao 7y agoYou should also look into taking advantage of any CS tutoring resources that your school has. It's likely much more cost-effective than trying to grab random people off of an internet board.
- notus 7y agoMaybe check discord communities or IRC? I've found people to be willing to loosely mentor machine learning topics on discord, but it's more along the lines of "read these papers and I will discuss them with you", so there is a certain level of knowledge already expected. That being said, mentoring is a really big effort to do it well. Most people don't even want to do it when they are getting paid to do it. The way I tend to approach learning something new like this would be to make actual attempts at writing low level code and then share it with a knowledgeable person for feedback. Programmers are much better at giving feedback on code than mentoring people.
- sys_64738 7y agoI learned C by reading K&R.
- scandox 7y agoWell not everybody can do this kind of top down learning. But more power to you, though, because that's a great capability.
- notus 7y agoI would argue that most people can't, which kind of irks me that recommendations like this have been the status quo for quite some time. I think programmers in general over romanticize this way of learning.
- catacombs 7y agoThe best way I've learned C is to write tiny command-line programs for every possible task. Need to get the current path? Forget `pwd` or `cwd`, I'll write my own. Need to know the number of files in a directory? I'll write my own.
- serf 7y ago>I would argue that most people can't, which kind of irks me that recommendations like this have been the status quo for quite some time. It's not a static property we each have -- one can learn to learn differently. I would argue that sort of information gathering is vital to documentation-heavy professions, programming included. In other words : (imo) if you can't learn that way, you're doing a tremendous disservice to yourself by not looking for methods by which to learn how to learn that way.
- deleted 7y ago[deleted]
- physicsAI 7y agoI cannot seem to find your email address in your profile. Drop me a line - my email is in my profile.
- kazinator 7y ago> as bit manipulation, memory and runtime performance, code compilation techniques, etc. for a CS course. That sounds too all-over-the-place to guess what the course is about. You should find out more or less exactly what is the content for this course and get tutoring for that, if necessary. Some points: * what textbook does it use, if any? * any chance of obtaining past assignments? exams? * any online materials from past lectures or handouts whatever? * do you know anyone who took this course? Or someone who knows someone?
- sansnomme 7y agoTry this guy: https://nullprogram.com/ https://nullprogram.com/ He has been known to take on students.
- dmarcos 7y agoI recommend https://handmadehero.org/ https://handmadehero.org/ and associated community https://handmade.network/ https://handmade.network/
- 0lpbm 7y agoDespite not using the full features of the standard, Handmade Hero is written in C++ not C. And you know what those people think when you conflate the two.
- rramadass 7y agoJust get this book and study it thoroughly (if needed, teaming up with somebody). It has got everything you need. Computer Systems: A Programmer's Perspective - http://csapp.cs.cmu.edu/3e/home.html http://csapp.cs.cmu.edu/3e/home.html