Não é considerado uma prática ruim não usar $
para variáveis dentro da avaliação aritmética. Quanto à portabilidade, ((…))
em geral não é POSIX, então não funcionará em shells como o dash. Ele funcionará em zsh e ksh. Por outro lado, $((…))
está em POSIX e funciona em todas as shells modernas sh-style.