Olá Carlos.
Você adicionou uma borda em cada box com uma espessura de 2px, então cada elemento esta com 2px a mais em sua largura, fazendo com que os elementos fiquem 1 abaixo do outro.
Para resolver este problema, você precisa adicionar o parâmetro ( box-sizing ), nos elementos acima, sendo que:
box-sizing: border-box; ( faz com que a largura dos elementos seja calculada juntamente com a largura da borda. )
box-sizing: content-box; ( faz com que a largura dos elementos seja calculada somente pelo seu conteúdo, sem somar a largura da borda. Por isso seus elementos ficaram um abaixo do outro. )
Então sua solução é adicionar na CSS dos dois elementos ( main ) e ( aside ), a linha.
box-sizing:border-box;