# Stack Overflow

Stack Overflow é um site de perguntas e respostas para profissionais e entusiastas na área de programação de computadores.
É o principal site de capital fechado da Rede Stack Exchange. Foi criado em 2008 por Jeff Atwood e Joel Spolsky como uma alternativa mais aberta aos antigos sites de perguntas e respostas como o Experts Exchange. O nome para o site foi escolhido por meio de votação em abril de 2008 pelos leitores do popular blogue de programação de Jeff chamado Coding Horror.
Usuários registrados e de participação ativa podem votar em questões e respostas úteis de modo similar a um wiki ou ao Digg. Além disso, membros do Stack Overflow também podem obter pontos de reputação e medalhas; por exemplo, uma pessoa recebe 10 pontos de reputação por receber um voto favorável em sua resposta e pode receber medalhas pela qualidade de suas contribuições, numa forma de ludificação de um fórum ou site tradicional de perguntas e respostas. Todo conteúdo gerado pelos usuários é licenciado sob uma licença Creative Commons.
Em abril de 2014, o Stack Overflow teve mais de 4 milhões de usuários e mais de 11 milhões de perguntas. Baseado no tipo de tag atribuído nas questões, os oito tópicos mais discutidos no site são: Java, JavaScript, C#, PHP, Android, jQuery, Python e HTML.

## História

O site foi criado por Jeff Atwood e Joel Spolsky em 2008. Em 31 de julho de 2008, Jeff Atwood enviou convites incentivando seus assinantes a participarem da versão beta fechada do novo site, limitando seu uso àqueles dispostos a testar o novo software. Em 15 de setembro de 2008 foi anunciada a versão beta pública e, agora, o público em geral era capaz de usá-lo para procurar assistência em questões de programação relacionadas. O design do logotipo foi decidido através de um processo de votação.

### Suspensão de usuário

Em abril de 2009, Stack Exchange implementou uma política de "suspensão temporária", visando cortar usuários que não mostravam "Nenhum esforço para aprender (as regras da comunidade) e melhorar com o tempo" ou apresentando "comportamento disruptivo" e tornando-se um incômodo para comunidade. Além da suspensão, o usuário ainda tem sua reputação definida para o valor "1" e uma nota é adicionada em sua página de perfil indicando a suspensão e sua duração restante.

## Conteúdo

O Stack Overflow aceita apenas perguntas sobre programação que são fortemente focadas em um problema específico. Perguntas de natureza mais ampla ou aquelas que convidam a respostas que são inerentemente uma questão de opinião são geralmente rejeitadas pelos usuários do site e marcadas como fechadas. O site irmão softwareengineering.stackexchange.com destina-se a ser um local para consultas mais amplas (questões gerais sobre desenvolvimento de software, por exemplo).
Fechar as perguntas é o principal diferencial em comparação com outros sites de perguntas e respostas (como o Yahoo! Respostas) e uma maneira de evitar perguntas de baixa qualidade. O mecanismo foi revisado em 2013, perguntas editadas após serem colocadas "em espera" agora aparecem em uma fila de revisão. Jeff Atwood afirmou em 2010 que as perguntas duplicadas não são vistas como um problema pois constituem uma vantagem se essas perguntas adicionais direcionarem tráfego extra para o site, multiplicando as ocorrências de palavras-chave relevantes nos mecanismos de busca.
Todo conteúdo gerado pelo usuário é licenciado sob a licença Creative Commons Attribute-ShareAlike, versão 2.5, 3.0 ou 4.0 dependendo da data em que o conteúdo foi contribuído.

## Estatísticas

Um estudo de 2013 descobriu que 75% dos usuários fazem apenas uma pergunta, 65% respondem apenas uma pergunta e apenas 8% dos usuários respondem a mais de 5 perguntas. Para capacitar um grupo mais amplo de usuários a fazer perguntas e depois responder, o Stack Overflow criou um programa de mentoria resultando em usuários com um aumento de 50% na pontuação em média. Em 2011, 92% das perguntas foram respondidas em um tempo médio de 11 minutos. Desde 2013, o software da rede Stack Exchange exclui automaticamente as perguntas fechadas que atendem a certos critérios, incluindo o de não ter respostas em um determinado período de tempo.
Em agosto de 2012, 443 000 dos 1,3 milhão de usuários registrados responderam a pelo menos uma pergunta e, desses, aproximadamente 6 000 (0,46% da contagem total de usuários) obtiveram uma pontuação de reputação superior a 5 000. A reputação pode ser adquirida mais rapidamente respondendo a perguntas relacionadas a tags com menor densidade de expertise, fazendo isso prontamente (em particular sendo o primeiro a responder a uma pergunta), sendo ativo fora do horário de pico e contribuindo para diversas áreas.
Em 2016, 1,5 milhão de postagens foram excluídas, das quais cerca de 8% foram excluídas pelos moderadores.

## Tecnologia

O Stack Overflow é escrito em C# usando a estrutura ASP.NET MVC (modelo-visão-controle), banco de dados Microsoft SQL Server e mapeamento objeto-relacional Dapper para acesso aos dados. Os usuários não registrados têm acesso à maioria das funcionalidades do site, enquanto os usuários que fazem login podem obter acesso a mais funcionalidades, como fazer ou responder uma pergunta, estabelecer um perfil e ser capaz de ganhar reputação para permitir funcionalidades como editar perguntas e respostas sem revisão por pares ou votar para encerrar uma questão.

## Recepção

Em 2020, o Stack Overflow ganhou o prêmio Webby People's Voice Award for Community na categoria web. Isso se seguiu ao sucesso do Tumblr e do Petfinder nos anos anteriores.
A cultura do site foi criticada por ser hostil, especialmente no contexto de diferenças de gênero na participação.
Um estudo da Universidade de Maryland descobriu que os desenvolvedores Android que usavam apenas o Stack Overflow como recurso de programação tendiam a escrever códigos menos seguros do que aqueles que usavam apenas a documentação oficial Android do Google, enquanto os desenvolvedores que usavam apenas a documentação oficial do Android tendiam a escrever significativamente menos código funcional do que aqueles que usaram apenas o Stack Overflow.