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.
17 comments
[ 4.3 ms ] story [ 47.3 ms ] threadRead Ravi's words of wisdom: 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=1994998
Other great avenues for getting better at assembly are writing simple compilers and my favorite, playing Zachtronics games, such as TIS-100.
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.
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.
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.
Drop me a line - my email is in my profile.
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?
https://nullprogram.com/
He has been known to take on students.
Computer Systems: A Programmer's Perspective - http://csapp.cs.cmu.edu/3e/home.html