Hacker News new | ask | show | jobs
by kbenson 2214 days ago
There's always a trade-off in technologies between things that are easier to learn, and things that are easier to use once you've learned them. When there's a steady state of people cycling through the system, it's easy to cater to specific segments of the population with different types of tools. Those that don't need hand holding and want the extra bells and whistles to get exactly what they want out of something will likely find their needs met in such a situation.

Now, consider that there's far more new people coming into programming each year than the prior year (or even if it's not strictly true on a year-over-year basis, there are far more software engineers with 1-10 years of experience than there are with 10-20 years experience, possibly even than those with 10+ years experience).

In a market such as that, ease of use is paramount and the killer feature that drives almost all you usage. Catering to amateurs is the path to increased usage, and mind-share, and market-share where applicable. With that in mind, is it really any wonder that amateurs are catered to so much that there's actually a regression in tools that cater to professionals?

My guess is that if you look into subgroups which are not friendly to new users for one reason or another (most commonly because of complexity and skill), yet still have retained users for some reason, you'll find high quality professional tools. I think C/C++ probably fits this, as well as systems programming, and kernel development. I'm not part of any of those subgroups, but my guess is they have not only retained the quality of their supplemental tools, but increased them.

1 comments

If you code in C++ with tooling like QtCreator, Clion, VC++, C++ Builder and everything enabled (static analyses), it can be quite productive and even quite secure.

However it still largely ignored as good practices, in a world where teachers still use IDEs like Turbo C++ as teaching tool.