free-programming-books

:books: Freely available programming books

View the Project on GitHub EbookFoundation/free-programming-books

Leia em outros idiomas

Acordo de Licença do Contribuidor

Ao contribuir você concorda com a LICENÇA deste repositório.

Código de Conduta do Contribuidor

Ao contribuir você concorda em respeitar o Código de Conduta deste repositório. (traduções)

Em poucas palavras

  1. “Um link para baixar um livro facilmente” nem sempre é um link para um livro gratuito. Por favor contribua apenas com conteúdo gratuito. Certifique-se de que é grátis. Não são aceitos links para páginas que requerem um endereço de email para obter livros, mas aceitamos listas que requerem.

  2. Não é necessário saber Git: se você encontrou algo interessante que não está presente neste repositório, por favor abra uma Issue com todas as propostas de links.
    • Se você sabe Git, faça um Fork do repositório e mande um Pull Request (PR).
  3. Possuimos 6 tipos de listas. Escolha a mais adequada:

    • Livros: PDF, HTML, ePub, sites baseados no gitbook.io, um repositório Git, etc.
    • Cursos: Um curso é um material didático que não é um livro. Isso é um curso.
    • Tutoriais Interativos: Um site interativo que permite ao usuário digitar código ou comandos e computa o resulta (por “computar” não queremos dizer “avaliar”). Por exemplo: Try Haskell, Try GitHub.
    • Playgrounds : são websites interativos, jogos ou aplicativos para aprender programação. Escreve, compila (ou roda), e compartilha techos de código. Playgrounds quase sempre permitem que se realize um fork no código e coloque a mão na massa.
    • Podcasts e Screencasts : Podcasts e Vídeocasts.
    • Conjuntos de Problemas e Programação Competitiva : Um site ou software que permite avaliar suas habilidades de programação através da resolução de problemas simples ou complexos, com ou sem revisão de código, com ou sem comparação de resultados com outros usuários.
  4. Certifique-se de seguir as diretrizes abaixo e respeitar a formatação de Markdown dos arquivos.

  5. GitHub Actions executará testes para assegurar que suas listas estão em ordem alfabética e seguem as regras de formatação. Cerfique-se de que suas alterações passaram pelos testes.

Diretrizes

Formatação

A ideia é ter:

Exemplo:

[...]
* [Um Livro Incrível](http://exemplo.com/exemplo.html)
                                (linha em branco)
                                (linha em branco)
### Exemplo
                                (linha em branco)
* [Outro Livro Incrível](http://exemplo.com/livro.html)
* [Outro Livro Qualquer](http://exemplo.com/outro.html)

Alphabetical order

Se observar um link no lugar errado, verifique a mensagem de erro no linter para saber quais linhas devem ser trocadas.

Observações

As noções básicas são relativamente simples, mas há uma grande diversidade de materiais que listamos. Aqui estão algumas observações sobre como tratamos essa diversidade.

Metadados

Nossas listas fornecem um conjunto mínimo de metadados: títulos, URLs, criadores, plataformas e notas de acesso.

Títulos
URLs
Criadores
Plataforma e Notas de Acesso

Gêneros

A primeira regra ao decidir a qual lista um material pertence é ver como o próprio material se descreve. Se diz que é um livro, então talvez seja um livro.

Gêneros não listados

Dada a vastidão da Internet, não incluimos em nossas listas:

Nossas listas de programação competitiva não são tão estritas quanto a essas exclusões. O escopo do repositório é determinado pela comunidade; se deseja sugerir uma mudança ou adição ao escopo, por favor use uma issue para fazer a sugestão.

Livros vs. Outras Coisas

Não somos tão exigentes quanto a definição de “livro”. Aqui estão alguns atributos que significam que um material é um livro:

Há diversos livros que listamos que não possuem esses atributos; pode depender do contexto.

Livros vs. Cursos

Algumas vezes pode ser difícil de distinguir!

Cursos normalmente possuem manuais associados, que listaríamos em nossas listas de livros. Cursos possuem aulas, exercícios, provas, anotações ou outros materiais didáticos. Uma única aula ou vídeo por si só não é um curso. Um Powerpoint não é um curso.

Tutoriais Interativos vs. Outras coisas

Se você pode capturar a tela ou imprimí-la e reter sua essência, então não é um Tutorial Interativo.

Automação