I see many developers and companies adopt Elixir because "it looks like Ruby" but the two languages could not be more different. Why do programmers car so much about syntax?
It's not so much that they're afraid of it, it's that changing syntax imposes a mental tax on them for no reason. Once you've been programming in a language for more than a few months, you no longer think in terms of tokens. Rather, your muscle memory now has constructs for "This is what a variable binding looks like. This is what a for-each loop looks like. This is what a method call looks like," and you can just think in terms of the desired semantics rather than how to type that into an editor.<p>A language with a new and unfamiliar syntax requires that you unlearn all these key-bindings and start thinking on the level of tokens again. It's understandable that given the choice, people who have already graduated from this stage would rather not repeat it.
No, but there is a "not this shit again" attitude. Over the last 50 years it has been done. Most of the time people with a new syntax also have stupid names for already agreed upon constructs and ideas. Those people are trying too hard to be different. Maybe one language uses ->, another uses =>, so Joe Language programmer is going to use <!@==>>>. But no one is going to type <!@==>>>, so the language fails. Joe exits programming and there are 10,000 dead computer languages with worthless syntax that didn't help people write software better.
The older I get, the slower I feel. Projects seem to need more planning and I wish I was more spontaneous, but I realize documentation is important, or testing needs to be done, or branding should be polished up. Syntax is a small part of software development, but it's everywhere. I need to be productive, and I just don't want to be on this hamster wheel when I'm just trying to get something shipped to developers and users, which is hard enough on its own.
I've got used to polyglotting and constantly getting things wrong syntax wise!. When I'm editing a C#, a SQL, then a coffee script then a type script, then get home and write some Elm, things will get confusing!