diff --git a/books/free-programming-books-subjects.md b/books/free-programming-books-subjects.md index 74ae0acbe..ba3837201 100644 --- a/books/free-programming-books-subjects.md +++ b/books/free-programming-books-subjects.md @@ -65,7 +65,6 @@ Books that cover a specific programming language can be found in the [BY PROGRA * [Goalkicker](https://goalkicker.com) - Programming Notes for Professionals books * [IBM Redbooks](http://www.redbooks.ibm.com) * [InfoQ Minibooks](http://www.infoq.com/minibooks/) -* [InTech: Computer and Information Science](http://www.intechopen.com/subjects/computer-and-information-science) * [JSBooks - directory of free javascript ebooks](https://github.com/revolunet/JSbooks) * [Learn X in Y minutes](https://learnxinyminutes.com) * [Learneroo Resources to Learn Programming](https://www.learneroo.com/modules/12/nodes/96) @@ -76,12 +75,11 @@ Books that cover a specific programming language can be found in the [BY PROGRA * [Microsoft Technologies 3, DevOps for ASP.NET Core Developers](https://raw.githubusercontent.com/dotnet-architecture/eBooks/main/current/devops-aspnet-core/DevOps-for-ASP.NET-Core-Developers.pdf) - Cam Soper, Scott Addie, Colin Dembovsky (PDF) * [O'Reilly's Open Books Project](http://www.oreilly.com/openbook/) * [Papers we love](https://github.com/papers-we-love/papers-we-love) -* [Programming](https://en.wikibooks.org/wiki/Category%3aComputer_programming) - Wikibooks * [Red Gate Books](http://www.red-gate.com/community/books/index) * [Rip Tutorials](https://riptutorial.com/ebook) * [Stef's Free Online Smalltalk Books](http://stephane.ducasse.free.fr/FreeBooks/) * [TechBeamers.com](http://www.techbeamers.com) -* [TechBooksForFree.com](http://www.techbooksforfree.com) +* [TechBooksForFree.com](https://www.techbooksforfree.com) * [The Definitive C++ Book Guide and List](http://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list) * [Theassayer.org](http://theassayer.org) * [Tutorials Point](http://www.tutorialspoint.com) @@ -111,7 +109,7 @@ Books that cover a specific programming language can be found in the [BY PROGRA * [Data Structures Succinctly Part 1, Syncfusion](https://www.syncfusion.com/resources/techportal/ebooks/datastructurespart1) (PDF, Kindle) (email address *requested*, not required) * [Data Structures Succinctly Part 2, Syncfusion](https://www.syncfusion.com/resources/techportal/ebooks/datastructurespart2) (PDF, Kindle) (email address *requested*, not required) * [Elementary Algorithms](https://github.com/liuxinyu95/AlgoXY) - Larry LIU Xinyu -* [Essential Algorithms](https://www.programming-books.io/essential/algorithms) - Krzysztof Kowalczyk and Stack Overflow Documentation project (HTML) +* [Essential Algorithms](https://www.programming-books.io/essential/algorithms/) - Krzysztof Kowalczyk and Stack Overflow Documentation project (HTML) * [Foundations of Computer Science](http://infolab.stanford.edu/~ullman/focs.html) - Al Aho, Jeff Ullman * [Geometry Algorithms](http://geomalgorithms.com) - Dan Sunday * [Lectures Notes on Algorithm Analysis and Computational Complexity (Fourth Edition)](http://ianparberry.com/books/free/license.html) - Ian Parberry (use form at bottom of license) @@ -178,7 +176,6 @@ Books that cover a specific programming language can be found in the [BY PROGRA * [Designing Distributed Systems](https://azure.microsoft.com/en-us/resources/designing-distributed-systems/) *(account required)* * [Distributed Systems 3rd edition](https://www.distributed-systems.net/index.php/books/ds3/) - Maarten van Steen, Andrew S. Tanenbaum *(email address required)* * [How to optimize storage costs using Amazon S3](https://aws.amazon.com/s3/cloud-storage-cost-optimization-ebook/) - AWS (PDF) -* [Kubernetes Hardening Guidance](https://media.defense.gov/2021/Aug/03/2002820425/-1/-1/1/CTR_KUBERNETESHARDENINGGUIDANCE.PDF) - NSA, CISA (PDF) * [Learn Azure in a Month of Lunches](https://clouddamcdnprodep.azureedge.net/gdc/2014519/original) - Iain Foulds (PDF) * [Monitoring Modern Infrastructure](https://www.datadoghq.com/ebook/monitoring-modern-infrastructure/) *(account required)* * [Multi-tenant Applications for the Cloud, 3rd Edition](http://www.microsoft.com/en-us/download/details.aspx?id=29263) @@ -235,7 +232,7 @@ Books that cover a specific programming language can be found in the [BY PROGRA * [Computer Vision: Algorithms and Applications](http://szeliski.org/Book/) - Richard Szeliski * [Computer Vision: Foundations and Applications](http://vision.stanford.edu/teaching/cs131_fall1718/files/cs131-class-notes.pdf) - Ranjay Krishna (PDF) * [Computer Vision: Models, Learning, and Inference](http://www.computervisionmodels.com) - Simon J.D. Prince -* [DALLE-E 2 prompt book](http://dallery.gallery/wp-content/uploads/2022/07/The-DALL%C2%B7E-2-prompt-book.pdf) - Dallery.Gallery, Guy Parson(PDF) +* [DALLE-E 2 prompt book](https://dallery.gallery/wp-content/uploads/2022/07/The-DALL%C2%B7E-2-prompt-book.pdf) - Dallery.Gallery, Guy Parson(PDF) * [Programming Computer Vision with Python](http://programmingcomputervision.com) - Jan Erik Solem @@ -292,7 +289,7 @@ Books that cover a specific programming language can be found in the [BY PROGRA * [3D Math Primer for Graphics and Game Development](https://gamemath.com/book/intro.html) - Fletcher Dunn (HTML) * [Coding With Minecraft](https://turtleappstore.com/book/) - Al Sweigart * [Designing Virtual Worlds](https://mud.co.uk/richard/DesigningVirtualWorlds.pdf) - Richard A. Bartle (PDF) -* [Game AI Pro](http://www.gameaipro.com) - Steve Rabin +* [Game AI Pro](https://www.gameaipro.com) - Steve Rabin * [Game Design with AGS](https://ensadi.github.io/AGSBook/) - Dave Ensminger, A. G. Madi * [Game Programming Patterns](http://gameprogrammingpatterns.com) - Bob Nystrom * [Level up your code with game programming patterns](https://resources.unity.com/games/level-up-your-code-with-game-programming-patterns) - Unity (HTML & PDF) @@ -307,21 +304,20 @@ Books that cover a specific programming language can be found in the [BY PROGRA * [Computer Graphics from scratch](http://gabrielgambetta.com/computer-graphics-from-scratch) - Gabriel Gambetta (:construction: *in process*) * [DirectX manual](http://user.xmission.com/~legalize/book/download/index.html) (draft) * [GPU Gems](https://developer.nvidia.com/gpugems/GPUGems/gpugems_pref01.html) -* [Graphics Programming Black Book](http://www.gamedev.net/page/resources/_/technical/graphics-programming-and-theory/graphics-programming-black-book-r1698) - Michael Abrash +* [Graphics Programming Black Book](https://www.gamedev.net/tutorials/_/technical/graphics-programming-and-theory/graphics-programming-black-book-r1698/) - Michael Abrash (PDF) * [Introduction to Modern OpenGL](https://open.gl) - Alexander Overvoorde (HTML, EPUB, PDF) (C++) * [Introduction to TouchDesigner 099](https://leanpub.com/introductiontotouchdesigner/) *(Leanpub account or valid email requested)* * [JPEG - Idea and Practice](https://en.wikibooks.org/wiki/JPEG_-_Idea_and_Practice) * [Learn Computer Graphics From Scratch!](https://www.scratchapixel.com) - Scratchapixel (:construction: *in process*) -* [Learn OpenGL](http://learnopengl.com) - Joey de Vries +* [Learn OpenGL](https://learnopengl.com) - Joey de Vries * [Learn OpenGL RS](https://github.com/bwasty/learn-opengl-rs) - Benjamin Wasty, et al. (:construction: *in process*) (Rust) * [Learning Modern 3D Graphics Programming](https://web.archive.org/web/20150225192611/http://www.arcsynthesis.org/gltut/index.html) - Jason L. McKesson (draft) -* [Notes for a Computer Graphics Programming Course](https://www.cs.csustan.edu/~rsc/CS3600F00/Notes.pdf) - Dr. Steve Cunningham (PDF) * [OpenGL](http://www.songho.ca/opengl/index.html) - Concepts and illustrations * [Physically Based Rendering, Third Edition: from Theory to Implementation](https://www.pbr-book.org) - Matt Pharr, Wenzel Jakob, Greg Humphreys * [Ray Tracing Gems](https://www.realtimerendering.com/raytracinggems/rtg/index.html) - Eric Haines, Tomas Akenine-Möller * [Ray Tracing Gems II](https://www.realtimerendering.com/raytracinggems/rtg2/index.html) - Adam Marrs, Peter Shirley, Ingo Wald * [Ray Tracing in One Weekend](https://raytracing.github.io) - Peter Shirley (HTML) -* [ShaderX series](http://www.realtimerendering.com/resources/shaderx/) - Wolfgang Engel +* [ShaderX series](https://www.realtimerendering.com/resources/shaderx/) - Wolfgang Engel * [Tutorials for modern OpenGL](http://www.opengl-tutorial.org) * [Virtual Reality](http://lavalle.pl/vr/) - Steven M. LaValle * [WebGL Insights](http://webglinsights.com) - Patrick Cozzi, et al. @@ -334,7 +330,6 @@ Books that cover a specific programming language can be found in the [BY PROGRA * [GUI development with Rust and GTK 4](https://gtk-rs.org/gtk4-rs/stable/latest/book/) - Julian Hofer * [Programming with gtkmm 4](https://developer.gnome.org/gtkmm-tutorial/stable/) * [Search User Interfaces](http://searchuserinterfaces.com/book/) - Marti A. Hearst -* [The GLib/GTK+ Development Platform](https://informatique-libre.be/swilmet/glib-gtk-book/glib-gtk-dev-platform.pdf) - Sébastien Wilmet (PDF) * [Web Design Primer](https://pressbooks.library.ryerson.ca/webdesign/) - Richard Adams, Ahmed Sagarwala * [Web Style Guide Online](https://www.webstyleguide.com/wsg3/index.html) - Patrick J. Lynch, Sarah Horton @@ -368,8 +363,8 @@ Books that cover a specific programming language can be found in the [BY PROGRA ### Licensing -* [Creative Commons: a user guide](http://www.aliprandi.org/cc-user-guide/) - Simone Aliprandi -* [Open Source Licensing Software Freedom and Intellectual Property Law](http://rosenlaw.com/oslbook/) - Lawrence Rosen +* [Creative Commons: a user guide](https://archive.org/download/CreativeCommonsUserGuide/CreativeCommonsUserGuide.pdf) - Simone Aliprandi (PDF) +* [Open Source Licensing Software Freedom and Intellectual Property Law](https://rosenlaw.com/oslbook/) - Lawrence Rosen * [The Public Domain: Enclosing the Commons of the Mind](http://www.thepublicdomain.org/download/) - James Boyle @@ -691,23 +686,24 @@ Books that cover a specific programming language can be found in the [BY PROGRA ### Operating Systems * [A short introduction to operating systems (2001)](http://markburgess.org/os/os.pdf) - Mark Burgess (PDF) -* [Computer Science from the Bottom Up](http://www.bottomupcs.com) -* [How to Make a Computer Operating System](https://github.com/SamyPesse/How-to-Make-a-Computer-Operating-System) (:construction: *in process*) +* [Computer Science from the Bottom Up](http://www.bottomupcs.com) - Ian Wienand (PDF) +* [Flexible Operating System Internals: The Design and Implementation of the Anykernel and Rump Kernels](https://aaltodoc.aalto.fi/handle/123456789/6318) - Antti Kantee (PDF) +* [How to Make a Computer Operating System](https://github.com/SamyPesse/How-to-Make-a-Computer-Operating-System) - Samy Pesse (:construction: *in process*) * [How to write a simple operating system in assembly language](http://mikeos.sourceforge.net/write-your-own-os.html) - Mike Saunders (HTML) * [Linux From Scratch](https://www.linuxfromscratch.org/lfs/view/stable/) - Gerard Beekmans, Bruce Dubbs, Ken Moffat, Pierre Labastie, et al. (HTML, [PDF, downloads...](https://www.linuxfromscratch.org/lfs/downloads/stable/)) * [Making Servers Work: A Practical Guide to Linux System Administration](https://www.digitalocean.com/community/books/sysadmin-ebook-making-servers-work) - Jamon Camisso (PDF, EPUB) -* [Operating Systems and Middleware](https://gustavus.edu/mcs/max/os-book/) (PDF and LaTeX) -* [Operating Systems: Three Easy Pieces](http://pages.cs.wisc.edu/~remzi/OSTEP/) (PDF) +* [Operating Systems and Middleware](https://gustavus.edu/mcs/max/os-book/) - Max Hailperin (PDF, LaTeX) +* [Operating Systems: From 0 to 1](https://github.com/tuhdo/os01/releases/tag/0.0.1) - Tu, Ho Doang (PDF) (:construction: *in process*) +* [Operating Systems: Three Easy Pieces](http://pages.cs.wisc.edu/~remzi/OSTEP/) - Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau (PDF) * [Practical File System Design: The Be File System](http://www.nobius.org/~dbg/practical-file-system-design.pdf) - Dominic Giampaolo (PDF) * [Project Oberon: The Design of an Operating System, a Compiler, and a Computer](http://people.inf.ethz.ch/wirth/ProjectOberon/index.html) - Niklaus Wirth, Jürg Gutknecht (PDF) -* [The Art of Unix Programming](http://catb.org/esr/writings/taoup/html/) - Eric S. Raymond -* [The Design and Implementation of the Anykernel and Rump Kernels](http://www.fixup.fi/misc/rumpkernel-book/) - Antti Kantee -* [The little book about OS development](https://littleosbook.github.io) - Erik Helin, Adam Renberg -* [The Little Book of Semaphores](http://greenteapress.com/semaphores/) - Allen B. Downey +* [The Art of Unix Programming](http://catb.org/esr/writings/taoup/html/) - Eric S. Raymond (HTML) +* [The Little Book About OS Development](https://littleosbook.github.io) - Erik Helin, Adam Renberg - (PDF, HTML) +* [The Little Book of Semaphores](http://greenteapress.com/semaphores/) - Allen B. Downey (PDF) * [Think OS: A Brief Introduction to Operating Systems](http://www.greenteapress.com/thinkos/index.html) - Allen B. Downey (PDF) * [UNIX Application and System Programming, lecture notes](http://www.compsci.hunter.cuny.edu/~sweiss/course_materials/unix_lecture_notes.php) - Prof. Stewart Weiss (PDF) * [Writing a Simple Operating System from Scratch](http://www.cs.bham.ac.uk/~exr/lectures/opsys/10_11/lectures/os-dev.pdf) - Nick Blundell (PDF) -* [Xv6, a simple Unix-like teaching operating system](https://pdos.csail.mit.edu/6.828/2012/xv6.html) +* [Xv6, a simple Unix-like teaching operating system](https://pdos.csail.mit.edu/6.828/2022/xv6.html) - Russ Cox, Frans Kaashoek and Robert Morris (PDF, HTML) ### Parallel Programming