Pois é, nessa vida nada é certo e muito menos universal, o índice 0 como primeiro elemento não é universal na TI e algumas linguagens utilizam o 1 como primeiro índice.
Mas porque isso acontece?
Existe um debate muito interessante na matemática, se o número zero é um número natural ou um número inteiro, dependendo da sua corrente filosófica na matemática, o primeiro número natural será 0 ou 1.
Como a computação foi fundada por matemáticos, físicos, engenheiros e afins, é natural que essa discussão possa aparecer em algum momento, mas devemos lembrar também que o primeiro índice de um vetor por exemplo, é 0 ou 1 sendo definido pelo criador da linguagem, então durante o projeto alguém poderia ter a brilhante ideia de colocar o número 2 como o primeiro elemento de todos os índices...
Veja só, que aula interessante sobre o assunto: https://impa.br/wp-content/uploads/2018/01/Ledo-Aula-1.pdf