Seu blog é muito bom! Fuçando nele achei muitas coisas legais, tipo o 512/256kb club, e o derelict garden.
Eu tenho um raspberry parado aqui em casa e já pensei em embarcar nessa jornada, mas tem coisas que parecem ser realmente muito difíceis.
Por exemplo essa questão do IP estático, você precisou contratar um serviço específico de internet? O que acontece se você se mudar, ou mudar de provedor?
Quanto ao código em go, extremamente minimalista, curti bastante. Uma dúvida, tem algumas condições de erro que são tratadas com um simples println
, o que aconteceria nesse caso, o server ia cair?
postDir, err := os.ReadDir(path.Join(root, "b"))
if err != nil {
println("read posts error:", err.Error()) # <!-- se cair aqui
}
for _, p := range postDir {
if l := len(p.Name()); p.Name()[l-5:] != ".html" {
continue
}
...
acredito que tu só iria parar ali se desse algum erro de permissão de leitura no diretório dos posts, né? Pergunto pois em outros lugares tu chama um template de error e ajusta o status http.
Ex:
temp, err := posts.Clone()
if err != nil {
println("clone template", err.Error())
http.Error(w, err.Error(), http.StatusInternalServerError)
return
}
Você está fazendo algo pra contabilizar seus acessos? Acho que pela pegada do blog você vai querer fazer algo com os logs do servidor, mas caso esteja aberto a uma solução usando javascript, tem o projeto goatcounter, que inclusive é escrito em golang e tem uma filosofia muito boa quanto a privacidadade dos usuários.
Parabéns pelo conteúdo, espero seguir acompanhando as tuas postagens.