Предположу, что причина в большей изолированности C# как платформы из-за сильной связи с Windows. Таким образом при малых зарплатах переход на другую технологию становится сложнее, что порождает меньший отток специалистов, и в результате меньшие зарплаты. Поясню на примере: когда программиста на Java перестает устраивать зарплата, он может за N месяцев выучить Scala, Go, Python или любой другой язык и продолжать работать с Linux-стеком, поскольку bash, набор баз данных и общие паттерны работы приложений в сервис-ориентированной инфраструктуре остается прежним. У программиста на C# нет такой альтернативы, при переходе на другой язык ему придется полностью менять стек Windows-C#-TransactSQL. Если я прав, то переход на .Net Core и Linux должен это исправить в долгосрочной перспективе.
Можете пояснить, почему пропала компетенция написания автотестов? Я так понимаю, что в QA отделе были люди с этой компетенцией. Они уволились?
Можно пожать полный текст в gzip и при вызове распаковывать. В питоне 3 уложился в 579 символов:
Думаю, что в си можно сделать аналогично, хотя и будет чуть длиннее.