learning-articles
learning-articles copied to clipboard
Organized, a few details added in competitive
Thanks for working on this.
However, I see several issues with your pull request. I think you should have talked to me before beginning work on it. But don't worry, we'll improve your pull request. You also have too many commits. I was expecting around 5 to 10 commits. I'll shortly begin review. After you fix all issues I point out, squash your commits into a few meaningful commits.
Your pull request also seems incomplete, as can be seen in intro.md where you have included headings like backend, competitive, linux, etc. but you haven't given any links to them.
I have no problem with you trying to do everything in a single pull request, but usually people split their work across various pull requests depending on the type of work and submit them one by one. You could have, for example, submitted work on competitive programming in one pull request, work on organizing tools, adding license, etc. in another pull request.
I don't think we need a verbatim copy of a license in a LICENSE file. Just stating the licenses in readme.md and linking to them seems enough to me. Also, the license you have included is GPLv3, while we currently don't have any code which can be covered by it. I suggest you remove the LICENSE file.
All file and directory names should be lowercase and hyphen-separated.
So for example, Competitive Programming should be changed to competitive-programming.
This is needed because these file and folder names will be part of URLs and it is a best practice to keep URL names lowercase (so that they are easily memorizable). URLs shouldn't have spaces between them, otherwise we'll have to use ugly %20s everywhere. Underscores are okay for URLs but they cause trouble when writing URLs in markdown, so avoid underscores as well.
I'm not convinced that we need a TC to GCC porting guide. We should just tell them that TC is not standards-compliant and they should look at code written for GCC to find out what all changes do they need. There aren't many changes except those related to IO and standard libraries, and people should look up docs for them anyways (because they have a lot of important information), whether they used TC previously or not.
I too used non-standard C++ (Visual C++ 1998) in school, but switching was easy once I looked at one or two GCC-targeted programs.
I'm sorry to say that you have done a bad job at writing English. Your sentences have many grammatical and typographical errors. You have not used or incorrectly used punctuation. Your sentences are sometimes too long and need to be split. Please be vigilant and avoid making such mistakes in the future. I'm not just referring to these articles, but anything you write in the future.
When you want me to review it again, inform me by posting a comment on this thread.
I am still working on this. Will update soon.
Thanks for a detailed review, I have tried to incorporate the suggested changes. I also need guidance in improving C to C++ guide. Please tell if you want any material to be added/ removed. I too feel that it is getting a bit comprehensive.
I think you should remove your second snippet and everything after that and before (but not including) the point about <iostream> being slow. That's because you don't need to give a detailed explanation about what <iostream> does. Just tell people that cin works like scanf and cout works like printf and your first snippet explains cin and couts interface, which is probably the only thing different between them and scanf/printf.
Just for the update: I have been a bit busy for the last week. I will rectify these by the end of next week.
I'll probably be busy till midsems, so take your time.