Executando verificação de segurança...
2

A discussão é relevante. Acho interessante você fazer uma ferramenta que teoricamente faz acontecer o melhor, até para você descobrir que na verdade o problema são as pessoas mesmo. Em 30 anos de internet não vi um caso que as pessoas não fossem determinantes para a qualidade.

É claro que você pode fazer algumas coisas para melhor a qualidade, e isso passa por forte moderação humana (é possível mitigar os casos simples com IA). Essa moderação também não será perfeita e em algum moment o será chamada de tóxica por várias pessoas, ainda que esse comportamento é o que fará as pessoas gostarem da ferramenta (na verdade da plataforma, do conhecimento que entrega).

Eu até espero que a sua ferramenta funcione bem, seria ótimo para todos, mas tenho minhas razões para ser pessimista. E pode até funcionar no começo, muitas começam bem, aí precisamos descobrir quando ela vai degringolar, se será em meses ou anos.

Pela minha observação, especialmente no Brasil e alguns outros países, as pessoas não gostam de algo muito estruturado, preferem o caos, preferem grupos fechados é que uma abominação no compartilhamento de conteúdo relevante. E isso se traduz na qualidade da mão-de-obra e os produtos que ela cria por aqui e em outros países, alguns funcionando melhor porque a sociedade está acostumada em fazer "o certo" em tudo em suas vidas, o que muitas vezes resulta em melhor remuneração e qualidade de vida em geral, até porque se todos se respeitam mais todos saem ganhando, não é uma tentativa de se dar um pouco melhor que outros porque "todo mundo" está tentando ser melhor e escolher o caminho que parece mais fácil, mesmo que prejudique o todo.

Eu vi muito de perto isso acontecer com o Stack Overflow, e não tão de perto dezenas de plataformas. O SO começou muito bem e poor diversas razões foi piorando, parte porque a empresa dona da plataforma abandonou alguns dos seus princípios e parte porque é natural que acontece isso com todos os lugares, a não ser que tenha extremo controle.

Por esses dias anda circulando o gráfico que mostra que o SO morreu, ele tem menos perguntas novas por dia que a fase beta, ou até da fase interna em 2009. Claro que todo mundo que entende pouco da plataforma e tem um viés contra a moderação dela, acha que a queda é porque a moderação se tornou muito forte, e até essa razão é real, mas só aconteceu isso porque se tentou, em vão, manter a qualidade do conteúdo da plataforma. E a queda impossível de conter se deu pela queda da qualidade das perguntas em prime iro lugar, o que espantou os bons respondedores e, ou aceitava um conteúdo ruim criando ruído na plataforma ou criava atrito com quem produzia conteúdo ruim vela.

Vai acontecer com todos. Mas o problema mais grave que ocorreu nos últimos 2/3 anos é a IA, especialmente o resumi de IA que o Google sempre te manda. E isso está tornando as pessoas preguiçosas e pegando um conteúdo razoável, mas raso e que não incentiva você procurar pelo melhor ou até ruim ou errado que vai deturpando a cabeça das pessoas cada vez mais, além de mexer com o funcionamento do cérebro para procurar o caminho mais curto que não te desafia em ter um raciocínio melhor, ou até mesmo ter um conhecimento mais sólido.

Eu vou criar uma plataforma nova também. Não sei se vai dar certo, mas tenho um modelo que não depende para funcionar de gente que prefere a estupidez. O conteúdo será extremamente controlado, e para iso ele será muito menor, se parecendo mais com a Wikipedia do que o SO, que diga-se de passagem, o SO só existe porque as pessoas não gostam de aprender pela Wikipedia e documentação.

A Wikipedia é hoje o melhor exemplo de conteúdo altamente curado (mesmo assim tem várias falhas), e que produz um resultado final interessante, mesmo que em alguns casos falhe, ela é um verdadeiro final say, ou seja, ela produz conteúdo canônico e as discussões não conta\minam o conteúdo.

Por alguma razão seus verbetes não mais aparecem bem nas pesquisas do Google e mesmo que fosse sempre a primeira opção, provavelmente a maioria das pessoas vão optar pela visão geral gerada pelo Gemini.

Estou próximo de começar algo que eu havia prometido sobre formação dev gratuita, mas o projeto que eu acho que será mais interessante é uma derivação mais controlada sobre o aprendizado, ou seja, só para as pessoas que querem aprender corretamente com conteúdo mais denso e que não depende de algoritmo de plataforma alguma, especialmente de Youtube e Google Search, para funcionar. A maioria não vai querer, mas quem quiser terá algo muito forte. O modelo de criar conteúdo livre estará parcialmente com os dias contados. Esse outro projeto mais ambicioso será colaborativo e gratuito também, mas não será se consumo fast food, será gourmet (de verdade, não só para cobrar mais caro). Ficou claro que só funcionará porque será para poucos ? Ou seja, somente com as pessoas certas, e não importará muito a ferramenta, mas ela será algo já existente que terá um final say, imposto pelas pessoas, não pela ferramenta, que só auxiliará nisso.

S2


Farei algo que muitos pedem para aprender a programar corretamente, gratuitamente (não vendo nada, é retribuição na minha aposentadoria) (links aqui).

Carregando publicação patrocinada...
2

Concordo com boa parte do que você trouxe, especialmente com a ideia de que qualidade nunca foi e nunca será um problema puramente de ferramenta. No fim, pessoas sempre serão determinantes, para o bem ou para o mal.

Não parto da premissa de que uma plataforma consegue “consertar” comportamento humano. O que me interessa explorar é um ponto mais específico: quando o formato da conversa trabalha ativamente contra decisões claras, mesmo pessoas bem-intencionadas acabam produzindo ruído.

Chats, comentários e feeds incentivam volume e velocidade. Pouca coisa ali é pensada para síntese, encerramento ou responsabilidade sobre o resultado. Minha hipótese é que, em alguns contextos, mudar o formato da discussão já melhora o resultado, mesmo sem prometer excelência contínua.

Sobre degradação ao longo do tempo, acho sua leitura do Stack Overflow bastante lúcida. Não acredito que exista plataforma imune a isso. A diferença, no meu caso, é que não estou tentando criar um repositório canônico nem uma comunidade aberta e permanente. A proposta é mais próxima de decisões pontuais, com começo, meio e fim, muitas vezes em ambientes já existentes como empresas ou comunidades fechadas.

Ou seja, não é uma tentativa de substituir moderação forte ou curadoria humana, nem competir com Wikipedia ou SO. É mais uma camada de apoio para momentos específicos de decisão, onde o custo do caos já é alto.

Seu projeto soa interessante justamente por assumir desde o início que será para poucos e altamente controlado. Acho que há espaço para abordagens diferentes convivendo, desde que não partam da ilusão de escala infinita sem perda de qualidade.

Agradeço de verdade o comentário e a profundidade da reflexão. Boa sorte também no que você está construindo.

1

Vai acontecer com todos. Mas o problema mais grave que ocorreu nos últimos 2/3 anos é a IA, especialmente o resumi de IA que o Google sempre te manda. E isso está tornando as pessoas preguiçosas e pegando um conteúdo razoável, mas raso e que não incentiva você procurar pelo melhor ou até ruim ou errado que vai deturpando a cabeça das pessoas cada vez mais, além de mexer com o funcionamento do cérebro para procurar o caminho mais curto que não te desafia em ter um raciocínio melhor, ou até mesmo ter um conhecimento mais sólido.

Tenho visto MUITO conteúdo de arquitetura .NET. Já é copnsenso no mercado usar o repository pattern da forma mais preguiçosa possível.

Pedi pra IA fazer uma autenticação e ele criou a seguinte query:

// No infrstrucure:
public async Task<User> GetUser(Guid userId){
    return await dbContext.Users
        .Include(u => u.Organization)
        .FirstAsync(u => i.Id == userId)
}

// No application:
public async Task<UserInfoDTO> GetUserInfo(Guid userId){
    var user = await userRepository.GetUser(userId)

    return new UserInfoDTO {
        userId = user.Id,
        userName = user.Name,
        organizationId = user.Organization.Id,
        organizationName = user.Organization.Name
    }
}

Esse código:

  • Segue Clean Arquitecture
  • Segue as práticas recomendadas do mercado
  • Retorna o usuário inteiro e a organização inteira para a aplicação (quase 50 campos ... pra usar 4)
  • Cria 2 state machines gerando overhead em hot paths (2 interrupções e resumo das threads)

Minha atualização:

// No infrstrucure:
public Iqueryable<User> GetUserQuery(Guid userId){
    return dbContext.Users
        .Where(u => i.Id == userId)
}

// No application:
public Task<UserInfoDTO> GetUserInfo(Guid userId){
    var query = userRepository.GetUserQuery(userId)

    return query.Select(u => new UserInfoDTO{
        userId = user.Id,
        userName = user.Name,
        organizationId = user.Organization.Id,
        organizationName = user.Organization.Name
    }).FirstAsync()
}

Esse código:

  • Retorna somente os campos necessários
  • Não cria nenhum overhead de troca de contexto (ele não tem await, só retorna pro pai executar)
  • Não Segue Clean Arquitecture
  • Não Segue as práticas recomendadas do mercado
  • Falha em code reviews
  • Ninguem sabe dar manutenção direto porque a galera não entende o que é async/await por baixo dos panos

Imagina isso a nível de todas as querys do sistema? pode trazer um ganho de 60 ~ 80% na performance da aplicação.

Ninguém nunca me ensinou isso. Eu que tive que procurar como funcionava por baixo dos panos!

Eu vou criar uma plataforma nova também.

Se quiser ajuda por favor me chame! https://pilati.dev

1

Repository Pattern provavelmente é o padrão mais mal (ab)usado que existe em consequência dele ser mal compreendido.

A plataforma que estou criando será bem colaborativa e sem fins lucrativos, ainda que tenha alguma receita para sustentar tudo. Então sua colaboração será muito útil já na primeira fase onde só vai participar quem tem experiência.

;)