3 ms·
C++ standards compliance is better now than its ever been. You can't have a nice modern language and expect to support a four-year old IDE too. C++14 is mostly
by cageface 12y ago
C++ standards compliance is better now than its ever been. You can't have a nice modern language and expect to support a four-year old IDE too. C++14 is mostly a minor refinement of C++11. You get a much nicer language already in C++11 that you can use pretty freely on modern platforms.
Sure, use the highest level language you can afford to use. But I can't agree that experienced programmers will in general choose C or be more productive in it. The counter-examples are almost too numerous to even know where to begin. Surely the people behind Photoshop, Chrome, Renderman and Cubase etc. are aware of C and made a conscious decision not to use it.
- sillysaurus3 12y agoIf you set your own standards based on what everyone else is doing, you'll never hit the high notes. When you're a single programmer, you shouldn't look at what large groups of people are doing. Large groups often have no idea what they're doing, too, so that mindset is unproductive in general. Many of the reasons are political, not technical: suggesting that everyone be forced to program in Python to the exclusion of C++ denies your company the expertise of all C++ programmers. For some industries, like Renderman's or Photoshop's, that would be suicide. There are many reasons Tarsnap is written in C and not C++. Colin was aware of C++, yet chose not to use it. If one of the smartest and most experienced programmers choose not to do something, it's worth understanding why. Perhaps they were avoiding pitfalls that you may be in danger of falling into. On the other hand, if Colin were forced to program in C++, I'm sure it would be wonderful C++. So the point of C vs C++ may be moot anyway. What matters is that a programmer is experienced and competent, not necessarily what tools they're forced to use.
- cageface 12y agoI choose C++ precisely because I am a single programmer. I can't afford to waste any time writing code that doesn't translate to a user feature. I write a lot less boilerplate and spend less time chasing bugs using C++ than I would in C. If you're happy coding in C then by all means continue. I'm just a little tired of all the C++ critics that insist that only naive or inexperienced programmers use it and they'd all be equally productive if they'd just man up and use C for a while. Down votes are not coming from me, by the way.
- sillysaurus3 12y agoC++ critics that insist that only naive or inexperienced programmers use it and they'd all be equally productive if they'd just man up and use C for a while. I would never say such a thing, because I don't believe it. Who cares about downvotes? Our conversation was fun. Thank you for it.
- mtdewcmu 12y ago>>I'm just a little tired of all the C++ critics that insist that only naive or inexperienced programmers use it and they'd all be equally productive if they'd just man up and use C for a while. I'm not sure where you run into all those C++ critics that prefer C. Programmers that like to write C seem pretty rare to me. The criticism flows both ways: for example the C++ FAQ (http://isocpp.org/wiki/faq http://isocpp.org/wiki/faq) labels every feature that's in C primitive, dangerous, and obsolete. I don't see C++ programmers as naive and inexperienced at all. The biggest problem with C++ is how complex and difficult it is. It might have been considered friendly to newbies at one time, but nowadays I'd be surprised to hear that an inexperienced programmer was using C++. These days it's associated with native code and high performance (C is either lumped in or ignored).
- SamReidHughes 12y agoYour argument sucks because by appealing to authority of an active HN member, any retort is going to involve criticizing an active HN member who's not party to the conversation.
- sillysaurus3 12y agoHeh, now there's an aspect I'd never considered: maybe HN has become the kind of place where people are afraid to say true things? I don't think so, though. At least, not yet. If something is true, it's usually met favorably. Especially critiques. Speaking your mind (tactfully) is one of the most important aspects of a community, otherwise it's merely an echo chamber.
- SamReidHughes 12y agoBlaming the hypothetical people that one might imagine would look on the replier badly is not adequate justification for putting the replier in that position.
- cperciva 12y agoif Colin were forced to program in C++, I'm sure it would be wonderful C++ I have yet to be convinced that such a thing exists. If it does exist, I've never seen it.