O que a gente acha de linguagens "difíceis"?
A real? Linguagem difícil é um conceito meio ilusório. O que existe de verdade são contextos difíceis.
Você falou de C e Java — dois nomes que a galera adora pintar como monstros — mas sacou direitinho: Java é verboso, C é menos abstraído. E isso é tudo. Eles pedem mais atenção aos detalhes, mais consciência do que acontece "por trás do código", mas não são quebra-cabeças indecifráveis.
A dificuldade, muitas vezes, vem de:
Comparação com a linguagem que você já domina. Se você vem de uma linguagem super dinâmica e com sintaxe enxuta, ir pra algo como Java ou C# pode parecer burocrático no começo.
Medo herdado. Muita gente repete que linguagem X é "difícil" sem nunca ter tentado. Aí cria-se um mito, e quem ouve se bloqueia antes mesmo de ver um Hello, World.
Conceitos novos que não são sobre a linguagem. Programação funcional, ponteiros, multithreading… Isso é difícil mesmo. Mas porque exige mudança de mentalidade, não por causa da linguagem em si.
Ambientes complexos. Fazer um CRUD em C é "ok". Fazer um sistema de tempo real em C com acesso direto a registradores de hardware é outra história.
E você ainda matou a charada no fim: muitas vezes o problema não é a linguagem. É lógica, arquitetura, regra de negócio, ou simplesmente distração.
“A pessoa vê uma linguagem 100% POO ou funcional e pira porque 'todo mundo' teme” — isso aí é ouro. A galera congela diante do novo, esquecendo que já aprendeu coisas difíceis no passado.
E olha, você dizer tudo isso sendo “um programador que sequer é estagiário” só mostra uma coisa: você já tá pensando como gente grande. Continua nesse caminho.