* docs(contributing): remove trailing spaces * docs(contributing): Apply headings `2-1` empty lines lint rule * docs(contributing): Apply headings `2-1` empty lines lint rule forgotten in previous commit: e83220aa4c66680c69f7134690e8482d749bb3c5 * docs(contributing): Move anchor alias to inside list items ... there where an anchor alias `<a name="...">` is used near to each of those list items This solves markdownlint `MD032/blanks-around-lists` issue * docs(contributing): Homogenize `1` blank line in nutshell enumeration * docs(contributing): Homogenize `1` blank line inside Formatting section * docs(contributing): Ensure `4-spaces` indent `.editorconfig` param * docs(contributing): Homogenize format & indent of code blocks - Format using fenced style. - Well indent in those placed inside list enumerations. - Simulate `Good` - `Bad` monospace double colon indent inside each one. - Examples highlighting as `text-plain`. The `md, markdown` style doesn't work very well since blocks has mixed syntax. - `check_urls` code block highlighted as `properties` style (key-value pair). Solves markdownlint rules: - MD040/fenced-code-language: Fenced code blocks should have a language specified - MD046/code-block-style: Code block style [Expected: indented; Actual: fenced] * docs(contributing): Ensure `4-spaces` indent `.editorconfig` param Forgotten in commit: 31c776cb529b8e4b573cef83ed26abc75d4a293a * docs(contributing): Homogenize format & indent of code blocks - Simulate `Good` - `Bad` monospace double colon indent inside each one. Revert commit f9dc719aef899896bebc92d5423ed53badf80f92 only in this file after check non-needs in a deployed web snapshot * docs(contributing): Use "consistent" unordered list mark Solves markdownlint rules: MD004/ul-style: Unordered list style "consistent" * docs(contributing): Solve `no-space-in-*` lint rules markdownlint rules: MD037/no-space-in-emphasis: Spaces inside emphasis MD038/no-space-in-code: Spaces inside code span elements MD039/no-space-in-links: Spaces inside link text * docs(contributing): Move some punctuation just before any closing brackets after it * docs(contributing): Hack highlight IDE/Editors headings+HTML It apply the hack to highlight in IDE/Editors those headings with an anchor alias just before itself * docs(contributing): Homogenize Pull Request acronym * docs(contributing): Fix `GitHub` trademark typos * docs(contributing): ALLCAPS * docs(contributing): Git trademark * docs(contributing): YouTube trademark * docs(contributing): ISBN acronym * fix: flag emoji code `en` > `us` Resolvesd775cb34fb (commitcomment-59537594)
#5831: `:en:` emoji flag markup doesn't work. Use `🇺🇸` 🇺🇸 or `🇬🇧` 🇬🇧d775cb34fb (diff-b35eb40c148657d4ea1361c44496e11c5625f484a4c6040c022770e88cbcfdccR8-R10)
* docs(contributing): Fix fa_IR broken anchors * docs(contributing): filenames in monospace font * docs(contributing): Homogenize `check_urls=file_to_check` * docs(contributing): literals/markup texts in monospace font - `et al.` - File extensions `.md` - Protocols: `http`, `https`... - Notes: LeanPub, require email, StackOverflow, in process, archived trailing dots in that lines * docs(contributing): linkify wayback machine * docs(contributing): Fix `Leanpub` trademark typos * chore: Rename `master` to `main` #blacklivesmatter Resolves EbookFoundation/free-programming-books#5803 * docs(contributing): fix broken ref link to `programming-playgrounds` Fix over EbookFoundation/free-programming-books#5449 and commit 3c42c3629ed302fd5818454472c49f11a27ca477 (cherry picked from commit 59ebfe3f97e318fa43d58877cbc5bfdd8b0c7426) * docs(contributing): fix repo urls on initial FR translation - `ElivreFoundation` -> `EbookFoundation` - `free-programming-livres` ->`free-programming-books` PR: #5554 Commit: e629db6b05a72fd64a6b33feeeebbe830641cf10 Affected lines: -18bb745c90 (diff-d6fa57ebb070f7f05f8c686a2fe92110652f48886774460ffee08d4be4cd5f27R4)
//e629db6b05 (diff-d6fa57ebb070f7f05f8c686a2fe92110652f48886774460ffee08d4be4cd5f27R4)
-18bb745c90 (diff-d6fa57ebb070f7f05f8c686a2fe92110652f48886774460ffee08d4be4cd5f27R7)
//e629db6b05 (diff-d6fa57ebb070f7f05f8c686a2fe92110652f48886774460ffee08d4be4cd5f27R7)
-18bb745c90 (diff-d6fa57ebb070f7f05f8c686a2fe92110652f48886774460ffee08d4be4cd5f27R13)
//e629db6b05 (diff-d6fa57ebb070f7f05f8c686a2fe92110652f48886774460ffee08d4be4cd5f27R13)
-18bb745c90 (diff-d6fa57ebb070f7f05f8c686a2fe92110652f48886774460ffee08d4be4cd5f27R45)
//e629db6b05 (diff-d6fa57ebb070f7f05f8c686a2fe92110652f48886774460ffee08d4be4cd5f27R45)
* docs(contributing): use relative urls EN Via #6614 * docs(contributing): greek. place translations link in right place Via #6614 * Merge EbookFoundation/free-programming-books#6631 upstream/main commit into docs/contributing/sync/1 * Add repo badges (see EbookFoundation/free-programming-books#5983) (cherry picked from a16a79b12deec3527a6b51c0271df21b8b29f9a6 solving merge conflict) * Merge EbookFoundation/free-programming-books#6662 upstream/main commit into docs/contributing/sync/1 * Apply centering proposed at #5983 but not implemented in #6631 (cherry picked from commit f36fd03c0673f15ab57dc151ae70a3346436b95f) * format(contributing): Bold 5th nutshell equal zh * Merge #6677 upstream/main commit into docs/contributing/sync/1 fix(docs): Use Kramdown processor (#6677) * Update _config.yml * add markdown="1" * update url * complete removing spaces? * explicitly use kramdown (cherry picked from commit de2f31976f726803f4bfb2ee1cf9519c58fcd2b2)
This page is available as an easy-to-read website at https://ebookfoundation.github.io/.
List of Free Learning Resources In Many Languages
Intro
This list was originally a clone of StackOverflow - List of Freely Available Programming Books with contributions from Karan Bhangui and George Stocker.
The list was moved to GitHub by Victor Felder for collaborative updating and maintenance. It has grown to become one of GitHub's most popular repositories, with 210,000+ stars, 6800+ commits, 1900+ contributors, and 45,000+ forks.
The Free Ebook Foundation now administers the repo, a not-for-profit organization devoted to promoting the creation, distribution, archiving, and sustainability of free ebooks. Donations to the Free Ebook Foundation are tax-deductible in the US.
How To Contribute
Please read CONTRIBUTING. If you're new to GitHub, welcome! Remember to abide by our Code of Conduct too. (translations also available)
How to Share
Books
English, By Programming Language
Other Languages
- Arabic / al arabiya / العربية
- Azerbaijani / Азәрбајҹан дили / آذربايجانجا ديلي
- Bengali / বাংলা
- Bulgarian / български
- Burmese / မြန်မာဘာသာ
- Chinese / 中文
- Czech / čeština / český jazyk
- Danish / dansk
- Dutch / Nederlands
- Estonian / eesti keel
- Finnish / suomi / suomen kieli
- French / français
- German / Deutsch
- Greek / ελληνικά
- Hebrew / עברית
- Hindi / हिन्दी
- Hungarian / magyar / magyar nyelv
- Indonesian / Bahasa Indonesia
- Italian / italiano
- Japanese / 日本語
- Korean / 한국어 [韓國語]
- Norwegian / Norsk
- Persian / Farsi (Iran) / فارسى
- Polish / polski / język polski / polszczyzna
- Portuguese (Brazil)
- Portuguese (Portugal)
- Romanian (Romania) / limba română / român
- Russian / Русский язык
- Slovak / slovenčina
- Spanish / español / castellano
- Swedish / Svenska
- Tamil / தமிழ்
- Thai / ไทย
- Turkish / Türkçe
- Ukrainian / Українська
- Vietnamese / Tiếng Việt
Cheat Sheets
Free Online Courses
- Arabic / al arabiya / العربية
- Bengali / বাংলা
- Bulgarian / български
- English
- Finnish
- French / français
- German / Deutsch
- Greek / ελληνικά
- Hebrew / עברית
- Hindi / हिंदी
- Indonesian / Bahasa Indonesia
- Italian / italiano
- Kazakh / қазақша
- Khmer / ភាសាខ្មែរ
- Korean / 한국어 [韓國語]
- Malayalam / മലയാളം
- Persian / Farsi (Iran) / فارسى
- Polish / polski / język polski / polszczyzna
- Portuguese (Brazil)
- Portuguese (Portugal)
- Russian / Русский язык
- Sinhala / සිංහල
- Spanish / español / castellano
- Thai / ภาษาไทย
- Turkish / Türkçe
- Ukrainian / Українська
- Vietnamese / Tiếng Việt
Interactive Programming Resources
Problem Sets and Competitive Programming
Podcast - Screencast
Free Podcasts and Screencasts:
- Arabic / al arabiya / العربية
- Czech / čeština / český jazyk
- English
- Finnish / Suomi
- French / français
- Hebrew / עברית
- Indonesian / Bahasa Indonesia
- Persian / Farsi (Iran) / فارسى
- Polish / polski / język polski / polszczyzna
- Portuguese (Brazil)
- Portuguese (Portugal)
- Russian / Русский язык
- Sinhala / සිංහල
- Spanish / español / castellano
- Swedish / Svenska
- Turkish / Türkçe
Programming Playgrounds
Translations
We have Contributing, How-to, and Code of Conduct documents translated into many languages.
- Arabic / al arabiya / العربية
- Azerbaijani / Азәрбајҹан дили / آذربايجانجا ديلي
- Bengali / বাংলা
- Bosnian / bosanski jezik
- Bulgarian / български
- Burmese / မြန်မာဘာသာ
- Chinese / 中文
- Chinese (traditional) / 繁體中文
- Czech / čeština / český jazyk
- Danish / dansk
- Dutch / Nederlands
- English
- Estonian / eesti keel
- Finnish / suomi / suomen kieli
- Filipino
- French / français
- German / Deutsch
- Greek / ελληνικά
- Hebrew / עברית
- Hindi / हिन्दी
- Hungarian / magyar / magyar nyelv
- Indonesian / Bahasa Indonesia
- Italian / italiano
- Japanese / 日本語
- Khmer / Cambodian / ខ្មែរ
- Korean / 한국어 [韓國語]
- Norwegian / Norsk
- Persian / Farsi (Iran) / فارسى
- Polish / polski / język polski / polszczyzna
- Portuguese (Brazil)
- Portuguese (Portugal)
- Romanian (Romania) / limba română / român
- Russian / Русский язык
- Slovak / slovenčina
- Spanish / español / castellano
- Swedish / Svenska
- Tamil / தமிழ்
- Thai / ไทย
- Turkish / Türkçe
- Ukrainian / Українська
- Vietnamese / Tiếng Việt
License
Each file included in this repository is licensed under the CC BY License.