3 ms·
Call me unlucky, but I've never worked at a company that had a high percentage of programmers (myself probably included) that could write solid C++ using anythi
by watmough 16y ago
Call me unlucky, but I've never worked at a company that had a high percentage of programmers (myself probably included) that could write solid C++ using anything more than the absolute basics, i.e. basically a C subset.
I'd pretty much agree with Zed's rant, that C++ often isn't worth the bother, unless you have a project that specifically requires C++ features, and you have a development team that can actually write solid C++.
Maybe I'll call this Jonathan's axiom, but if your team doesn't have enough experience to write in a Lisp-y (or any other genre such as ML-y) language, you probably shouldn't be messing with C++ either.
Not many people that say they can write C++, actually can.
- zedshaw 16y agoI think this is a key point, the language doesn't matter as much as the capability and training the people using it have. This is why all these language arguments are rather irritating, because I'll typically use what works best. On some projects, C++ is great. On other projects C is best. Python is great for some things too.
- danieldk 16y agoSpot on, and a far better critique than Zed Shaws rant, that boils down to 'I dislike the syntax' mostly. Many things are done nicely in C++, and C++ provides far better abstractions than C. However, since new language construct have been stacked on C++ for almost 30 years, the language became huge, as well as the possible interactions between language constructs. The result is that you will rarely find programmers that understand C++ fully. I have seen a lot of awful code that uses C++ as C with classes, badly. Usually, classes and functions have been written with so little understanding of encapsulation that refactoring is painful. And for properly written C++ programs and libraries, it's usually hard to find people to maintain/modify it. On the other hand, it is also hard to find good ML/Haskell/whatever programmers. And lots of people get away with writing ugly Python or Ruby code.