In my comment I support domain knowledge experts.<p>In my comment I purposely mentioned erlang because to implement algorithmic efficiency you must have domain expertise.<p>&quot;I don&#x27;t know erlang that well but I&#x27;ll be damned if I don&#x27;t spend the time to find out how to properly do M:N with efficient tail recursion.&quot;<p>Tail recursion is an efficiency, doing it right in erlang requires domain expertise.<p>Building new features and adding value is business. Someone with domain knowledge in any of the langs will be able to implement those business values in the best possible way.<p>If your business is built with shitty coders doing shitty things you will eventually find yourself in hot shit. Even if it takes 5 years. What comes around goes around.<p>I would take the domain knowledge developer over any monkey anytime. That&#x27;s your 10x developer. That&#x27;s who built all that awesome open source stuff you use all day. Not the business feature value guy.<p>He builds businesses that fail 99% of the time. That other guy building that obscure Lang which turns out useful for that niche topic (I.e concurrency) lives on even in concept to build or  inspire other langs&#x2F;ers.<p>You see, that domain expert knows to pick the right algorithm for the right job.<p>He knows the right Lang for the right job.<p>Even if that job is only business value.<p>Long live domain knowledge experts and those who wish to attain it.