This page is available as an easy-to-read website at [https://ebookfoundation.github.io/](https://ebookfoundation.github.io/free-programming-books/).


# List of Free Learning Resources In Many Languages

<div align="center">

[![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome)
[![License: CC BY 4.0](https://img.shields.io/badge/License-CC%20BY%204.0-lightgrey.svg)](https://creativecommons.org/licenses/by/4.0/)

</div>


## Intro

This list was originally a clone of [StackOverflow - List of Freely Available Programming Books](https://web.archive.org/web/20140606191453/http://stackoverflow.com/questions/194812/list-of-freely-available-programming-books/392926) 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](https://octoverse.github.com/), with 210,000+ stars, 6800+ commits, 1900+ contributors, and 45,000+ forks.

The [Free Ebook Foundation](https://ebookfoundation.org) now administers the repo, a not-for-profit organization devoted to promoting the creation, distribution, archiving, and sustainability of free ebooks. [Donations](https://ebookfoundation.org/contributions.html) to the Free Ebook Foundation are tax-deductible in the US.


### How To Contribute

Please read [CONTRIBUTING](docs/CONTRIBUTING.md). If you're new to GitHub, [welcome](docs/HOWTO.md)! Remember to abide by our [Code of Conduct](docs/CODE_OF_CONDUCT.md) too. ([translations](#translations) also available)


### How to Share

+ [Share on Twitter](http://twitter.com/intent/tweet?text=https://github.com/EbookFoundation/free-programming-books%0AFree%20Programming%20Books)
+ [Share on Facebook](https://www.facebook.com/share.php?u=https%3A%2F%2Fgithub.com%2FEbookFoundation%2Ffree-programming-books&p[images][0]=&p[title]=Free%20Programming%20Books&p[summary]=)
+ [Share on LinkedIn](http://www.linkedin.com/shareArticle?mini=true&url=https://github.com/EbookFoundation/free-programming-books&title=Free%20Programming%20Books&summary=&source=)
+ [Share on Telegram](https://t.me/share/url?url=https://github.com/EbookFoundation/free-programming-books)


### Books

[English, By Programming Language](books/free-programming-books-langs.md)

[English, By Subject](books/free-programming-books-subjects.md)


#### Other Languages

+ [Arabic / al arabiya / العربية](books/free-programming-books-ar.md)
+ [Azerbaijani / Азәрбајҹан дили / آذربايجانجا ديلي](books/free-programming-books-az.md)
+ [Bengali / বাংলা](books/free-programming-books-bn.md)
+ [Bulgarian / български](books/free-programming-books-bg.md)
+ [Burmese / မြန်မာဘာသာ](books/free-programming-books-my.md)
+ [Chinese / 中文](books/free-programming-books-zh.md)
+ [Czech / čeština / český jazyk](books/free-programming-books-cs.md)
+ [Danish / dansk](books/free-programming-books-dk.md)
+ [Dutch / Nederlands](books/free-programming-books-nl.md)
+ [Estonian / eesti keel](books/free-programming-books-et.md)
+ [Finnish / suomi / suomen kieli](books/free-programming-books-fi.md)
+ [French / français](books/free-programming-books-fr.md)
+ [German / Deutsch](books/free-programming-books-de.md)
+ [Greek / ελληνικά](books/free-programming-books-el.md)
+ [Hebrew / עברית](books/free-programming-books-he.md)
+ [Hindi / हिन्दी](books/free-programming-books-hi.md)
+ [Hungarian / magyar / magyar nyelv](books/free-programming-books-hu.md)
+ [Indonesian / Bahasa Indonesia](books/free-programming-books-id.md)
+ [Italian / italiano](books/free-programming-books-it.md)
+ [Japanese / 日本語](books/free-programming-books-ja.md)
+ [Korean / 한국어 [韓國語]](books/free-programming-books-ko.md)
+ [Norwegian / Norsk](books/free-programming-books-no.md)
+ [Persian / Farsi (Iran) / فارسى](books/free-programming-books-fa_IR.md)
+ [Polish / polski / język polski / polszczyzna](books/free-programming-books-pl.md)
+ [Portuguese (Brazil)](books/free-programming-books-pt_BR.md)
+ [Portuguese (Portugal)](books/free-programming-books-pt_PT.md)
+ [Romanian (Romania) / limba română / român](books/free-programming-books-ro.md)
+ [Russian / Русский язык](books/free-programming-books-ru.md)
+ [Slovak / slovenčina](books/free-programming-books-sk.md)
+ [Spanish / español / castellano](books/free-programming-books-es.md)
+ [Swedish / Svenska](books/free-programming-books-sv.md)
+ [Tamil / தமிழ்](books/free-programming-books-ta.md)
+ [Thai / ไทย](books/free-programming-books-th.md)
+ [Turkish / Türkçe](books/free-programming-books-tr.md)
+ [Ukrainian / Українська](books/free-programming-books-uk.md)
+ [Vietnamese / Tiếng Việt](books/free-programming-books-vi.md)


### Cheat Sheets

+ [All Languages](more/free-programming-cheatsheets.md)


### Free Online Courses

+ [Arabic / al arabiya / العربية](courses/free-courses-ar.md)
+ [Bengali / বাংলা](courses/free-courses-bn.md)
+ [Bulgarian / български](courses/free-courses-bg.md)
+ [English](courses/free-courses-en.md)
+ [Finnish](courses/free-courses-fi.md)
+ [French / français](courses/free-courses-fr.md)
+ [German / Deutsch](courses/free-courses-de.md)
+ [Greek / ελληνικά](courses/free-courses-el.md)
+ [Hebrew / עברית](courses/free-courses-he.md)
+ [Hindi / हिंदी](courses/free-courses-hi.md)
+ [Indonesian / Bahasa Indonesia](courses/free-courses-id.md)
+ [Italian / italiano](courses/free-courses-it.md)
+ [Kazakh / қазақша](courses/free-courses-kk.md)
+ [Khmer / ភាសាខ្មែរ](courses/free-courses-km.md)
+ [Korean / 한국어 [韓國語]](courses/free-courses-ko.md)
+ [Malayalam / മലയാളം](courses/free-courses-ml.md)
+ [Persian / Farsi (Iran) / فارسى](courses/free-courses-fa_IR.md)
+ [Polish / polski / język polski / polszczyzna](courses/free-courses-pl.md)
+ [Portuguese (Brazil)](courses/free-courses-pt_BR.md)
+ [Portuguese (Portugal)](courses/free-courses-pt_PT.md)
+ [Russian / Русский язык](courses/free-courses-ru.md)
+ [Sinhala / සිංහල](courses/free-courses-si.md)
+ [Spanish / español / castellano](courses/free-courses-es.md)
+ [Thai / ภาษาไทย](courses/free-courses-th.md)
+ [Turkish / Türkçe](courses/free-courses-tr.md)
+ [Ukrainian / Українська](courses/free-courses-uk.md)
+ [Vietnamese / Tiếng Việt](courses/free-courses-vi.md)


### Interactive Programming Resources

+ [Chinese / 中文](more/free-programming-interactive-tutorials-zh.md)
+ [English](more/free-programming-interactive-tutorials-en.md)
+ [Portuguese (Brazil)](more/free-programming-interactive-tutorials-pt_BR.md)
+ [Russian / Русский язык](more/free-programming-interactive-tutorials-ru.md)


### Problem Sets and Competitive Programming

+ [Problem Sets](more/problem-sets-competitive-programming.md)


### Podcast - Screencast

Free Podcasts and Screencasts:

+ [Arabic / al arabiya / العربية](casts/free-podcasts-screencasts-ar.md)
+ [Czech / čeština / český jazyk](casts/free-podcasts-screencasts-cs.md)
+ [English](casts/free-podcasts-screencasts-en.md)
+ [Finnish / Suomi](casts/free-podcasts-screencasts-fi.md)
+ [French / français](casts/free-podcasts-screencasts-fr.md)
+ [Hebrew / עברית](casts/free-podcasts-screencasts-he.md)
+ [Indonesian / Bahasa Indonesia](casts/free-podcasts-screencasts-id.md)
+ [Persian / Farsi (Iran) / فارسى](casts/free-podcasts-screencasts-fa_IR.md)
+ [Polish / polski / język polski / polszczyzna](casts/free-podcasts-screencasts-pl.md)
+ [Portuguese (Brazil)](casts/free-podcasts-screencasts-pt_BR.md)
+ [Portuguese (Portugal)](casts/free-podcasts-screencasts-pt_PT.md)
+ [Russian / Русский язык](casts/free-podcasts-screencasts-ru.md)
+ [Sinhala / සිංහල](casts/free-podcasts-screencasts-si.md)
+ [Spanish / español / castellano](casts/free-podcasts-screencasts-es.md)
+ [Swedish / Svenska](casts/free-podcasts-screencasts-sv.md)
+ [Turkish / Türkçe](casts/free-podcasts-screencasts-tr.md)


### Programming Playgrounds

+ [Chinese / 中文](more/free-programming-playgrounds-zh.md)
+ [English](more/free-programming-playgrounds.md)


### Translations

We have Contributing, How-to, and Code of Conduct documents translated into many languages.

- Arabic / al arabiya / العربية
  - [How-to](docs/HOWTO-ar.md)
- Azerbaijani / Азәрбајҹан дили / آذربايجانجا ديلي
- Bengali / বাংলা
  - [How-to](docs/HOWTO-bn.md)
- Bosnian / bosanski jezik
  - [How-to](docs/HOWTO-bs.md)
- Bulgarian / български
- Burmese / မြန်မာဘာသာ
- Chinese / 中文
  - [Contributing](docs/CONTRIBUTING-zh.md)
  - [How-to](docs/HOWTO-zh.md)
- Chinese (traditional) / 繁體中文
  - [Contributing](docs/CONTRIBUTING-zh_TW.md)
  - [How-to](docs/HOWTO-zh_TW.md)
- Czech / čeština / český jazyk
- Danish / dansk
- Dutch / Nederlands
  - [How-to](docs/HOWTO-nl.md)
- English
  - [Code of Conduct](docs/CODE_OF_CONDUCT.md)
  - [Contributing](docs/CONTRIBUTING.md)
  - [How-to](docs/HOWTO.md)
- Estonian / eesti keel
- Finnish / suomi / suomen kieli
- Filipino
  - [Kodigo ng Pag-uugali](docs/CODE_OF_CONDUCT-fil.md)
  - [Contributing](docs/CONTRIBUTING-fil.md)
  - [How-to](docs/HOWTO-fil.md)
- French / français
  - [Code de Contrat](docs/CODE_OF_CONDUCT-fr.md)
  - [Contributing](docs/CONTRIBUTING-fr.md)
  - [How-to](docs/HOWTO-fr.md)
- German / Deutsch
  - [Verhaltenskodex](docs/CODE_OF_CONDUCT-de.md)
  - [How-to](docs/HOWTO-de.md)
  - [Mitwirken](docs/CONTRIBUTING-de.md)
- Greek / ελληνικά
  - [Κώδικα Δεοντολογίας](docs/CODE_OF_CONDUCT-el.md)
  - [Contributing](docs/CONTRIBUTING-el.md)
  - [How-to](docs/HOWTO-el.md)
- Hebrew / עברית
- Hindi / हिन्दी
  - [आचार संहिता](docs/CODE_OF_CONDUCT-hi.md)
  - [How-to](docs/HOWTO-hi.md)
- Hungarian / magyar / magyar nyelv
- Indonesian / Bahasa Indonesia
  - [Berkontribusi](docs/CONTRIBUTING-id.md)
  - [Kode Etik](docs/CODE_OF_CONDUCT-id.md)
  - [How-to](docs/HOWTO-id.md)
- Italian / italiano
  - [Codice di Comportamento](docs/CODE_OF_CONDUCT-it.md)
  - [Contributing](docs/CONTRIBUTING-it.md)
  - [How-to](docs/HOWTO-it.md)
- Japanese / 日本語
- Khmer / Cambodian / ខ្មែរ
  - [How-to](docs/HOWTO-km.md)
- Korean / 한국어 [韓國語]
  - [행동강령](docs/CODE_OF_CONDUCT-ko.md)
  - [Contributing](docs/CONTRIBUTING-ko.md)
  - [How-to](docs/HOWTO-ko.md)
- Norwegian / Norsk
- Persian / Farsi (Iran) / فارسى
  - [مرام‌نامه‌ی](docs/CODE_OF_CONDUCT-fa_IR.md)
  - [Contributing](docs/CONTRIBUTING-fa_IR.md)
  - [How-to](docs/HOWTO-fa_IR.md)
- Polish / polski / język polski / polszczyzna
  - [Code of Conduct](docs/CODE_OF_CONDUCT-pl.md)
  - [How-to](docs/HOWTO-pl.md)
- Portuguese (Brazil)
  - [Código de Conduta](docs/CODE_OF_CONDUCT-pt_BR.md)
  - [Contributing](docs/CONTRIBUTING-pt_BR.md)
  - [How-to](docs/HOWTO-pt_BR.md)
- Portuguese (Portugal)
  - [How-to](docs/HOWTO-pt_PT.md)
- Romanian (Romania) / limba română / român
- Russian / Русский язык
  - [Кодекс поведения](docs/CODE_OF_CONDUCT-ru.md)
  - [Contributing](docs/CONTRIBUTING-ru.md)
- Slovak / slovenčina
  - [How-to](docs/HOWTO-sk.md)
- Spanish / español / castellano
  - [Código de Conducta](docs/CODE_OF_CONDUCT-es.md)
  - [Contributing](docs/CONTRIBUTING-es.md)
  - [How-to](docs/HOWTO-es.md)
- Swedish / Svenska
  - [How-to](docs/HOWTO-sv.md)
- Tamil / தமிழ்
- Thai / ไทย
  - [How-to](docs/HOWTO-th.md)
- Turkish / Türkçe
  - [How-to](docs/HOWTO-tr.md)
- Ukrainian / Українська
  - [Кодекс Поведінки](docs/CODE_OF_CONDUCT-uk.md)
  - [How-to](docs/HOWTO-uk.md)
- Vietnamese / Tiếng Việt
  - [Đóng Góp](docs/CONTRIBUTING-vi.md)
  - [How-to](docs/HOWTO-vi.md)

## License

Each file included in this repository is licensed under the [CC BY License](LICENSE).