Este texto foi pensado e escrito como um complemento para "».
Deixem-me dizer que concordo com Matt Bierners em praticamente tudo. Mas tenho alguns acréscimos que considero bastante importantes e que gostaria de compartilhar.
Decidi escrever esta nota porque, após sete anos passados em SO, conheci a comunidade por dentro. Respondi a 3516 perguntas, fiz 58, entrei no hall of fame (top 20 do mundo) em ambas as línguas nas quais escrevo constantemente, fiz amizades com muitas pessoas inteligentes e aproveito, sem dúvida, todas as possibilidades oferecidas pelo site.
Todas as manhãs, enquanto tomo meu café da manhã, abro meu feed de notícias, twitter, e — SO. E eu acho que este site pode oferecer muito mais a um desenvolvedor do que um snippet para copiar e colar, gentilmente sugerido por .
Autoaprimoramento
Há muito tempo, me deparei com um tweet como este:
Paradoxalmente, acredito que a melhor maneira de aprender novas linguagens é responder perguntas em vez de fazê-las. —
Naquela época, fiquei um pouco surpreso com a formulação da pergunta, mas com o tempo percebi que é pura verdade. , e sites semelhantes oferecem a oportunidade de resolver problemas pontuais no vácuo, e até discutir sua solução com pessoas amigáveis. A esmagadora maioria dos livros hoje em dia vem com exemplos que podemos baixar e executar. No GitHub, podemos encontrar um projeto interessante na linguagem que estamos estudando e mergulhar no código fonte alheio. O que isso tem a ver com SO? — ответ прост: только на SO as perguntas são geradas por necessidades da vida, e não pela imaginação peculiar de indivíduos específicos. Respondendo a essas perguntas, inevitavelmente aprimoramos nossa capacidade de pensar de forma concisa (dentro da sintaxe da nossa linguagem), transferimos para a área ativa da memória padrões comumente usados, e ao ler as respostas de outras pessoas, comparamos com as nossas e memorizamos os melhores abordagens.
Se a resposta a uma pergunta feita por estranhos não é imediatamente óbvia — e até melhor se não for — então encontrar a solução correta traz muito mais habilidades do que simplesmente encontrar a resposta para um problema de HackerRank.
Avaliação objetiva pela comunidade
Para desenvolvedores que se consideram seniores ou superiores, é bastante importante poder comparar a própria sensação de grandeza com a opinião objetiva de pessoas desconhecidas. Já trabalhei em equipes onde meu nível de habilidades e conhecimentos não levantava questões. Eu realmente me sentia um guru. A participação ativa em discussões em SO rapidamente desfez esse mito na minha mente. De repente, ficou claro para mim que para atingir o nível de 'senior' ainda tenho muito a crescer. E sou muito grato à comunidade por isso. O choque foi frio, mas muito revigorante e extremamente útil.
Agora posso tratar qualquer questão como duplicada:

ou responder/desbloquear uma questão que está protegida pela comunidade contra vândalos:

Isso motiva. Após atingir 25.000 de reputação, os usuários têm acesso a todas as estatísticas SO e permissão .
Encontros agradáveis
A presença ativa entre os respondentes me levou a conhecer muitos desenvolvedores realmente excepcionais de diferentes países. Isso é incrível. Eles são todos pessoas muito interessantes e sempre pode-se pedir diretamente uma revisão do código de alguma biblioteca complexa que decidimos compartilhar em OSS. A qualificação de dois desses revisores voluntários pode transformar qualquer código desajeitado em um código elegante e à prova de balas, pronto para uso.
Os rumores sobre uma 'atmosfera tóxica' são, no mínimo, bastante exagerados. Não posso falar por todas as comunidades de todas as linguagens, mas tanto ruby, quanto elixir são segmentos extremamente amigáveis. Para encontrar resistência a ajudar, é preciso exigir de forma ultimativa que escrevam o código de um dever de casa, despejando algo como:
I need to calculate a sum of all prime numbers less than 100. The solution must not use core iterators. How do I do that?
Sim, esse tipo de 'questões' aparece e recebe votos negativos. Não vejo problema nisso; SO — não é um serviço gratuito onde pessoas que estão sufocadas pelo excesso de tempo livre resolvem gratuitamente os deveres de casa dos outros.
Não vale a pena se envergonhar do inglês ruim ou da experiência insuficiente.
Benefícios de carreira
Tenho um perfil bastante ativo no GitHub, mas só senti a verdadeira pressão dos recrutadores quando entrei no top-20 e minha foto apareceu nas páginas principais dos idiomas correspondentes. Não estou procurando e não pretendo mudar de emprego no futuro próximo, mas todas essas propostas ajudam a manter minha autoavaliação em forma e formam uma base para o futuro; se eu decidir mudar de emprego de repente, a busca não será um problema.
Não toma muito tempo
Ouvi com frequência de várias pessoas que no SO respondem apenas os preguiçosos, enquanto os verdadeiros profissionais passam o dia inteiro escrevendo códigos para as necessidades do negócio. Não sei, talvez haja pessoas em algum lugar que consigam programar sem parar por dezesseis horas seguidas, mas definitivamente não sou uma delas. Eu preciso de pausas. Uma ótima opção para um intervalo no trabalho, que não relaxa demais e não leva a uma procrastinação interminável, é ‘responder a algumas perguntas’. Em média, isso traz várias dezenas de reputação por dia.

Abre chakras e desentope carburadores
Ajudar as pessoas é bom. Fico feliz que, além do ensino presencial comum, eu possa ajudar — e ajudo — pessoas aleatórias de Wyoming, Kinshasa e Vietnã.
Sou competente o suficiente para responder perguntas?
Sim.
Todos nós erramos, e se isso acontecer — a comunidade corrigirá. Devo salientar: não será uma cagada nas costas na karma, mas um voto negativo na resposta (na esmagadora maioria dos casos — com uma explicação do que exatamente está errado). Uma resposta com voto negativo vale a pena ser removida e os negativos serão revertidos. (Respostas removidas ainda são visíveis para pessoas com uma reputação maior 10000, mas acredite, elas já viram coisas piores).
Para concluir
Considero importante e necessário participar da melhoria do mundo, e as respostas no SO são uma boa maneira de fazer isso sem sair da cadeira de trabalho. Se eu conseguir convencer alguém a começar a responder ainda hoje — ficarei muito feliz.
Fonte: habr.com
