<story><title>The Resurgence of C Programming</title><url>https://www.oreilly.com/learning/the-resurgence-of-c-programming</url></story><parent_chain><item><author>psyc</author><text>I agree with you. I&amp;#x27;ve been a C and C++ programmer for decades, and nothing to do with memory safety or leaks has ever risen to the level of prohibitive or even annoying. Ironically, I&amp;#x27;ve had infinitely more grief from fighting hostile garbage collectors, but that&amp;#x27;s because I&amp;#x27;m a game programmer. I quickly dropped Rust upon realizing that the core of the language addresses problems I don&amp;#x27;t have.&lt;p&gt;I&amp;#x27;m always met with strawman arguments about how I can&amp;#x27;t possibly write &amp;quot;correct&amp;quot; code. It&amp;#x27;s a strawman because I don&amp;#x27;t claim to write correct code. I don&amp;#x27;t care if Herb Sutter can find 1000 &amp;quot;bugs&amp;quot; in my C++. I care that my users and myself are happy.</text></item><item><author>jstewartmobile</author><text>Whenever C gets brought up, people are like, &amp;quot;pointers... memory... dangerous!&amp;quot;  In 20+ years of C, I&amp;#x27;ve never had a (self-inflicted) problem in that area.  Maybe I&amp;#x27;m the rain man of bit-twiddling?&lt;p&gt;What has caused me tremendous grief are all of the inconsistencies in the compilers, the gotchas of the precompiler,  and the ambiguities in the language itself.  C++ is even worse.&lt;p&gt;Rust is great, but not great enough to justify a redo of a program that has been extended and maintained for decades (like vim or photoshop).&lt;p&gt;I think an iterative tightening of the language would be of greater utility to everyday computing than a rush to re-do everything in something &amp;quot;better.&amp;quot;</text></item></parent_chain><comment><author>pcwalton</author><text>I&amp;#x27;ve heard this criticism from several game developers at this point. Contrary to some other voices here, I do think it&amp;#x27;s legitimate: if safety isn&amp;#x27;t important to you, then I can&amp;#x27;t argue with that.&lt;p&gt;At the same time, I think that Rust made the right choice for most domains. For most software, memory safety problems that hostile attackers find have consequences. Games are an exception, not the rule. It would be irresponsible for us to target servers or network-facing client software without memory safety.&lt;p&gt;It&amp;#x27;s also of course true that we have many game developers in the Rust community. A lot of people, including me, see safety as a productivity booster, especially combined with all the other features in Rust. I&amp;#x27;ve advanced suggestions in the past for making unsafe Rust easier to program in, effectively turning off some of the safety checks, specifically for game developers who would prefer not to have the restrictions. These suggestions have been very unpopular in the Rust community, including from the game devs, and so they haven&amp;#x27;t gone further.</text></comment>
<story><title>The Resurgence of C Programming</title><url>https://www.oreilly.com/learning/the-resurgence-of-c-programming</url></story><parent_chain><item><author>psyc</author><text>I agree with you. I&amp;#x27;ve been a C and C++ programmer for decades, and nothing to do with memory safety or leaks has ever risen to the level of prohibitive or even annoying. Ironically, I&amp;#x27;ve had infinitely more grief from fighting hostile garbage collectors, but that&amp;#x27;s because I&amp;#x27;m a game programmer. I quickly dropped Rust upon realizing that the core of the language addresses problems I don&amp;#x27;t have.&lt;p&gt;I&amp;#x27;m always met with strawman arguments about how I can&amp;#x27;t possibly write &amp;quot;correct&amp;quot; code. It&amp;#x27;s a strawman because I don&amp;#x27;t claim to write correct code. I don&amp;#x27;t care if Herb Sutter can find 1000 &amp;quot;bugs&amp;quot; in my C++. I care that my users and myself are happy.</text></item><item><author>jstewartmobile</author><text>Whenever C gets brought up, people are like, &amp;quot;pointers... memory... dangerous!&amp;quot;  In 20+ years of C, I&amp;#x27;ve never had a (self-inflicted) problem in that area.  Maybe I&amp;#x27;m the rain man of bit-twiddling?&lt;p&gt;What has caused me tremendous grief are all of the inconsistencies in the compilers, the gotchas of the precompiler,  and the ambiguities in the language itself.  C++ is even worse.&lt;p&gt;Rust is great, but not great enough to justify a redo of a program that has been extended and maintained for decades (like vim or photoshop).&lt;p&gt;I think an iterative tightening of the language would be of greater utility to everyday computing than a rush to re-do everything in something &amp;quot;better.&amp;quot;</text></item></parent_chain><comment><author>unscaled</author><text>The real problem with C (and to a lesser extent C++) nowadays is not just memory leaks or segfaults, but all the security vulnerabilities you get from the lack of memory safety.&lt;p&gt;Your code might work 100% correctly for your users, but it may also put their system into risk when processing arbitrary and potentially malicious data. When your system needs to handle data that may come from anywhere - and almost every system does - writing Herb Sutter-correct code is no longer just a nice-to-have.</text></comment>