3 ms·
Some feedback that I hope will be helpful: 1. Every sentence should begin with a capital letter. Many sentences in the post do not. 2. No explanation of buffe
by MaxBarraclough 6y ago
Some feedback that I hope will be helpful:
1. Every sentence should begin with a capital letter. Many sentences in the post do not.
2. No explanation of buffer overflows is complete without an explanation of undefined behaviour in the C and C++ languages.
3. The colour scheme used gives somewhat low contrast to the text. It would also boost readability to use a dark-on-light style rather than light-on-dark, but I think it would be enough to just improve the contrast. I'm not saying it's unreadable or anything, but I think it could be improved.
4. It's annoying to have to horizontally scroll to read the code. I suggest tweaking the second code example so the comment gets its own line and no scroll-bar appears.
5. You say and these are just some of the basic mitigation used in 2020. This is true, but you've missed the big one: modern languages include runtime checks. Might also be worth mentioning that with formal verification frameworks, it's possible to definitively prove the absence of out-of-bounds array accesses.
6. It would be worth explaining the one-past-the-end rule in the C and C++ languages [0] and how these languages consider it an error (i.e. undefined behaviour) to even point to anything beyond that, whether or not you actually dereference the pointer. [0][1]
7. I have to agree with brudgers and jiveturkey that the article is a bit perfunctory. It's quite a deep topic.
[0] https://stackoverflow.com/a/988220/ https://stackoverflow.com/a/988220/
[1] https://stackoverflow.com/a/41667789/ https://stackoverflow.com/a/41667789/
- iHegazy 6y agoI really love your criticism and I will make sure to go over the punctuation mistakes and fix them, so hopefully my next blog won't have any! Actually that's not the first time people address the low contrast issue in my color scheme, might as well change the default theme to a light one until I find a proper alternative. As for the technical criticism, I wanted the blog to be a bit simple for the non tech savvy audience, there is a certain sweet spot between a technical blog and an ELI5 type of explanation which I haven't necessarily succeeded at achieving yet. I really enjoyed writing that blog and might go deeper on the subject and possible cover more valuable aspects of the topic rather than a simple bird's eye view.