Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Alterar limite de 20000 caracteres ao publicar um conteúdo #1818

Open
iamseki opened this issue Nov 15, 2024 · 2 comments
Open

Alterar limite de 20000 caracteres ao publicar um conteúdo #1818

iamseki opened this issue Nov 15, 2024 · 2 comments
Labels
novo recurso Nova funcionalidade/recurso

Comments

@iamseki
Copy link

iamseki commented Nov 15, 2024

Descrição

Recentemente tomei coragem e resolvi escrever minha primeira publicação na plataforma e dei de cara com:

{
    "name": "ValidationError",
    "message": "\"body\" deve conter no máximo 20000 caracteres.",
    "action": "Ajuste os dados enviados e tente novamente.",
    "status_code": 400,
    "error_id": "df7a4bcc-d68f-4767-a51c-af30ca850e95",
    "request_id": "b5f84fdf-d646-4c11-be30-81b5bcdd1582",
    "error_location_code": "MODEL:VALIDATOR:FINAL_SCHEMA",
    "key": "body",
    "type": "string.max"
}

Esse é o conteúdo que gostaria de ter publicado: https://github.com/iamseki/postgresql/blob/main/work_mem/tabnews.md e possui 33515 caracteres, cerca de 33kB.

IMHO dependendo do quão profundo o autor quiser ir no conteúdo, 20k como hard limit me parece baixo. Minha sugestão pragmática seria subir esse valor, talvez dobrar para 40k?

E ficou a dúvida, existe algum motivo especial pro valor ser 20k? Ter mais previsibilidade em termos de alocação de storage? Defesa contra algum usuário mal intencionado flodar com um texto na casa dos GB?

Sugestão de implementação

Imagino que a abordagem simples seria subir esse valor aqui e aqui, lmk se eu estiver errado.

Outra possibilidade seria aplicar algum algoritmo de compressão como Brotli, aqui tem um benchmark comparando com outros algoritmos, mas também tem seus tradeoffs e não sei dizer se vale a pena mas fica aqui a provocação.

@iamseki iamseki added the novo recurso Nova funcionalidade/recurso label Nov 15, 2024
@iamseki iamseki changed the title Conteúdo com limite de 20000 caracteres Alterar publicação com limite de 20000 caracteres Nov 15, 2024
@iamseki iamseki changed the title Alterar publicação com limite de 20000 caracteres Alterar limite de 20000 caracteres ao publicar um conteúdo Nov 15, 2024
@aprendendofelipe
Copy link
Collaborator

@iamseki, a escolha do limite de 20 mil caracteres foi definida nesta discussão e tem se mostrado adequada para o propósito do TabNews.

É verdade que certos conteúdos podem não caber nesse limite, mas remover completamente qualquer restrição não seria uma solução viável e nem interessante. Esse limite tem sido importante para manter a experiência do usuário consistente, tanto na criação quanto na leitura dos conteúdos.

O limite atual incentiva os autores a organizarem e priorizarem suas ideias, garantindo que as publicações sejam focadas no que realmente importa. Para conteúdos mais extensos ou com diferentes perspectivas, há sempre a possibilidade de dividi-los em múltiplas publicações, o que também pode aumentar o engajamento dos leitores.

Além disso, o limite desafia os autores a utilizarem recursos do Markdown de maneira eficiente, como usar tabelas para organizar dados em vez de inserir sequências de caracteres (espaços, pontos etc.) para formatação.

Manter o limite de 20 mil caracteres me parece adequado para um bom equilíbrio entre flexibilidade para o autor e uma experiência clara e acessível para os leitores.

Faz sentido?

@Rafatcb
Copy link
Collaborator

Rafatcb commented Nov 18, 2024

@iamseki já enfrentei essa barreira dos 20 mil caracteres algumas vezes. Artigos muito longos são menos lidos, porque demandam mais tempo do leitor. O seu não parece longo, mas tem muito código com 4 espaços de identação, e o código causa um aumento significativo na contagem de caracteres (já passei por isso também).

Acho que se você mudar os 4 espaços para 2, e substituir o query plan por uma imagem do planejamento com um link para um gist (ou outro lugar que considere adequado) com todos os detalhes, já conseguirá ter menos de 20 mil caracteres. Vi que você cita um site que faz isso e colocou uma print dele, então seria só uma questão de adaptar essa parte.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
novo recurso Nova funcionalidade/recurso
Projects
None yet
Development

No branches or pull requests

3 participants