Re: Where would I learn C and Assembly?
Posted: Tue May 02, 2017 1:43 pm
One of the things a lot of newcomers find is that regulars on specialized fora like this one tend to be a bit, ah, defensive, even hostile, regarding questions which have come up again and again. FAQ lists and the forum search tools exist for a reason: new members invariably have a lot of the same questions, and get the same answers. This leads to the regulars - who have to answer the same questions again and again - getting frustrated when someone comes in and starts asking questions without first reading the forum rules, using the search tool to find the previous threads on the topic, lurking to see what is going on around the message board, etc.
This is doubly irritating when the question is one which the forum rules, the associated resources like the wiki, and the forum-goers themselves have already stated are not appropriate questions for this forum, either because they are prerequisites that could be better learned elsewhere, or because they are outside of the scope of the forum entirely.
In this case, we've already said that there are better places to learn C and assembly - and that until you have extensive experience in both, you aren't going to be ready to work on this sort of project. And by 'extensive', I am not talking days or weeks or even months; I am not talking a semester course or a Learn (nothing of value about) C in 21 Days book; I am talking years, or even decades, of actual repeated use in multiple different capacities.
Now, you are not the first person to come here figuring you can learn this stuff as you go. There's one almost every week, in fact. Most of us, including myself, did the same thing years ago ourselves. We have written long pages in the wiki called things like Introduction, Required Knowledge, and - rather pointedly - Beginner Mistakes, which if you have read them, you know say EXACTLY WHAT WE ARE TELLING YOU NOW. We can't stop you from working on an OS today, nor prevent you from asking questions, but we do feel the need - and the obligation to you as an aspiring OS dev - to give you these warnings, so that you can stop, consider whether you are actually ready to take on a challenge of this magnitude (most of us, even the regulars, aren't, though we still try), and maybe convince you to slow down a little before you run off the cliff with the lemmings.
We want to help you with OS dev, but when it comes to learning the basics, there are better places to turn to, such as DaniWeb, The C Programming Board, C++ Reference, and Stack Overflow (on second thought, you probably can skip Sewage Overflow...). Even in places like those, you really want to lurk and get a feel for the local culture and netiquette before actually posting, if you can afford the time (and if you can't, posting a question and waiting for an answer is probably going to take too long anyway).
As harsh as it is, the ESR essay "How to Ask Questions The Smart Way" really does give excellent advice on this. I strongly recommend taking what Raymond says to heart before posting on any message board. Oh, and just because it bears repeating - this doesn't mean you should ask him for help unless it is something you know he has expertise in. It is appalling how often that warning, which is in both the essay itself and in most places that link to it, is ignored.
This is doubly irritating when the question is one which the forum rules, the associated resources like the wiki, and the forum-goers themselves have already stated are not appropriate questions for this forum, either because they are prerequisites that could be better learned elsewhere, or because they are outside of the scope of the forum entirely.
In this case, we've already said that there are better places to learn C and assembly - and that until you have extensive experience in both, you aren't going to be ready to work on this sort of project. And by 'extensive', I am not talking days or weeks or even months; I am not talking a semester course or a Learn (nothing of value about) C in 21 Days book; I am talking years, or even decades, of actual repeated use in multiple different capacities.
Now, you are not the first person to come here figuring you can learn this stuff as you go. There's one almost every week, in fact. Most of us, including myself, did the same thing years ago ourselves. We have written long pages in the wiki called things like Introduction, Required Knowledge, and - rather pointedly - Beginner Mistakes, which if you have read them, you know say EXACTLY WHAT WE ARE TELLING YOU NOW. We can't stop you from working on an OS today, nor prevent you from asking questions, but we do feel the need - and the obligation to you as an aspiring OS dev - to give you these warnings, so that you can stop, consider whether you are actually ready to take on a challenge of this magnitude (most of us, even the regulars, aren't, though we still try), and maybe convince you to slow down a little before you run off the cliff with the lemmings.
We want to help you with OS dev, but when it comes to learning the basics, there are better places to turn to, such as DaniWeb, The C Programming Board, C++ Reference, and Stack Overflow (on second thought, you probably can skip Sewage Overflow...). Even in places like those, you really want to lurk and get a feel for the local culture and netiquette before actually posting, if you can afford the time (and if you can't, posting a question and waiting for an answer is probably going to take too long anyway).
As harsh as it is, the ESR essay "How to Ask Questions The Smart Way" really does give excellent advice on this. I strongly recommend taking what Raymond says to heart before posting on any message board. Oh, and just because it bears repeating - this doesn't mean you should ask him for help unless it is something you know he has expertise in. It is appalling how often that warning, which is in both the essay itself and in most places that link to it, is ignored.