FileKit
← Back to resources
💻

Free Programming & Tech Books

High-quality programming books that authors have made freely available. These are legitimate free releases — not pirated copies. Many are considered classics in their fields.

Pro Git (2nd Edition)

CC BY-NC

The definitive guide to Git by Scott Chacon and Ben Straub. Covers everything from basics to advanced branching strategies and internals. Published by Apress under CC BY-NC-SA.

git-scm.com ↗574 pagesgitversion-controldeveloper-toolsgit tutorialsource controlbranchingGitHubsoftware engineering

Think Python (3rd Edition)

CC BY-NC

An introduction to Python programming by Allen B. Downey. Uses Python 3 with a focus on computational thinking. Free under CC BY-NC-SA license.

Green Tea Press ↗310 pagespythonbeginnerprogramminglearn pythonpython tutorialcomputational thinkingpython 3CS101free

Eloquent JavaScript (4th Edition)

CC BY-NC

A comprehensive guide to JavaScript and programming by Marijn Haverbeke. Covers the language, browser APIs, and Node.js. Free to read online and as PDF under CC BY-NC.

eloquentjavascript.net ↗472 pagesjavascriptweb-developmentnodelearn javascriptJS tutorialfrontendDOMES6PDFfree

The Linux Command Line

CC BY-NC

A complete introduction to the Linux command line by William Shotts. Covers shell scripting, text processing, and system administration basics. CC BY-NC-ND licensed.

linuxcommand.org ↗555 pageslinuxcommand-lineshellsystem-adminbashterminalsysadminDevOpsscriptingPDFfree

Automate the Boring Stuff with Python

CC BY-NC

A practical programming guide by Al Sweigart for total beginners. Learn Python by automating real-world tasks: spreadsheets, emails, files, web scraping. CC BY-NC-SA licensed, free to read online.

automatetheboringstuff.com ↗592 pagespythonautomationbeginnerpracticalpython scriptingoffice automationweb scrapingexcel pythonspreadsheetfree

The Rust Programming Language

Free

The official Rust book, affectionately known as "The Book." Covers ownership, borrowing, lifetimes, and all core Rust concepts. MIT/Apache-2.0 dual licensed.

doc.rust-lang.org ↗560 pagesrustsystems-programmingofficiallearn rustmemory safetyownershipperformanceconcurrencyWord documentfreespreadsheet

An Introduction to Programming in Go

CC BY

A concise introduction to Go by Caleb Doxsey. Covers the basics of Go programming with clear examples. Free to read online under CC BY license.

golang-book.com ↗163 pagesgogolangbeginnerlearn gobackendconcurrencymicroservicesfreeWord document

Operating Systems: Three Easy Pieces

Free

A free operating systems textbook by Remzi and Andrea Arpaci-Dusseau. Covers virtualization, concurrency, and persistence. Used in university courses worldwide. Free PDF from the authors.

University of Wisconsin ↗714 pagesoperating-systemscomputer-scienceuniversityOS textbookvirtualizationconcurrencykernelOSTEPPDFfree

How to Design Programs (2nd Edition)

Free

A systematic approach to program design by Felleisen, Findler, Flatt, and Krishnamurthi. Teaches design recipes and problem-solving methodology rather than a specific language. Free to read online.

htdp.org ↗792 pagesprogrammingeducationdesignbeginnerprogram designRacketfunctional programmingCS educationfreePDF

Structure and Interpretation of Computer Programs

CC BY-SA

The legendary MIT textbook by Abelson and Sussman. Explores computation through Scheme. One of the most influential CS textbooks ever written. CC BY-SA 4.0 licensed.

MIT Press ↗657 pagescomputer-scienceschemefunctionalMITSICPLispabstractionclassic textbookfree

Dive Into Python 3

CC BY-SA

A hands-on guide to Python 3 by Mark Pilgrim. Covers strings, comprehensions, generators, unit testing, HTTP, XML, and serialization. CC BY-SA 3.0 licensed.

diveintopython3.net ↗380 pagespythonintermediatewebpracticalpython advancedgeneratorsunit testingHTTPXMLfree

Game Programming Patterns

Free

A collection of game development design patterns by Robert Nystrom. Covers command, flyweight, observer, state, and more — with clear examples. Free to read online.

gameprogrammingpatterns.com ↗354 pagesgame-devdesign-patternsarchitectureC++game developmentUnitygame engineOOPsoftware patternsfree