Uma coisa que tenho percebido é que a maioria dos cursos introdutórios não ensinam programação, ensinam frontend. Você aprende muito mais começando com linguagens como C do que com javascript. Não quero dizer que o melhor é programar em C, mas sim que quanto menos abstrações você tiver, mais você irá aprender realmente.
Começar com HTML, CSS e JS pode ser uma vantagem por ser mais rápido de ver as coisas na tela, construir elementos, fazer aparecerem coisas do nada, mas isso ensina apenas superficialmente. Por exemplo, você sabe encontrar uma substring dentro de uma string? Você só sabe se usr alguma função pronta? Se sim, então você não entende realmente o que está sendo feito. Muitos passos são pulados, tipos primitivos, valor e referência, tipos dinâmicos, alocação de memória e etc. Se tudo parece "mágico", é porque você não entende.
Eu escrevi tudo isso apenas para mostrar que muito do hype do javascript é por conta disso, pessoas que começaram a aprender frontend ao invés de programação. Não entenda errado também, não há nada de errado em aprender a programar com linguagens de alto nível, eu mesmo comecei com Python, contudo, essas linguagens te dão a oportunidade de pular etapas e isso faz com que pegue o caminho mais fácil, que não ajuda muito a entender as coisas.
Quem debate linguagem A x linguagem B é alguém que está em início de carreira, geralmente. A melhor stack é a que paga os seus boletos e isso é irrefutável. Se você paga as suas contas com Javascript, então javascript é a melhor linguagem, se é Cobol, então será cobol. Linguagens de programação são ferramentas, quem programa é você. Se você está dependendo da sua ferramenta e acha que só ela é boa, então você não está realmente programando. Nunca vi discuções sobre qual tipo alicate é o melhor, mas já vi discuções sobre qual tipo de alicate é melhor para determinadas ocasiões. Tente cortar um cabo com um alicate de pressão e entenderá o que estou falando.