This idea was started on the AudioGames.net forum in This topic. It is not an attempt to replace or supercede the Awesome lists.
This list follows some very simple conventions:
- Resources that have an International Standards Book Number (ISBN) (or a set of them in those rare instances) following their title in parentheses are guaranteed to be paid. For those rare instances where a book is not paid, I shall indicate such. The ISBN is a 10-, 13- or 16-digit number, i.e.: 9780262140874344. The ISBN can be used to locate the exact book, since titles can be ambiguous.
- Resources that do not have an ISBN in parentheses are guaranteed to be free unless specified otherwise.
If you need help acquiring a compiler or toolchain for a programming language, check out this page on RosettaCode, which lists various instructions for various languages. The task "assumes the language-newbie is a programmer in another language, the language-newbie is competent in installing software for the platform, and the language-newbie can use one simple text editor for the OS/platform (but that may not necessarily be a particular one if the installation needs a particular editor); refers to (and links to) already existing documentation as much as possible (but provides a summary on that page); demonstrates where to view the output; and, if particular IDE's or editors are required that are not standard, then points to/explains their installation."
For "Hello world!" type examples, see the following pages on that same wiki:
- Display the string Goodbye, World! on a GUI object (alert box, plain window, text area, etc.)
- Cause a line printer attached to the computer to print a line containing the message: Hello World!
- Display the string Goodbye, World! without a trailing newline
- Show how to print a message to standard error by printing Goodbye, World! on that stream
- Above task with esoteric languages
- Display the string Hello world! on a text console
- Serve our standard text Goodbye, World! to http://localhost:8080/ so that it can be viewed with a web browser
- C Programming: Absolute Beginners Guide, 3rd Edition (9780789751980) (nonfree)
- C Primer Plus, 6th Edition (9780133432381) (nonfree)
- C Programming: A Modern Approach (Second Edition) (9780393979503) (nonfree)
- Head first C (nonfree)
- Awesome C - list of awesome resources for C programmers (some free, others not free)
- Awesome C++, a list for C++ programmers (some free, others not free)
- C in a Nutshell: The Definitive Reference (9781491904756) (nonfree)
- C++ Templates: the Complete Guide (9780134778747) (nonfree)
- Effective C++ Digital Collection: 140 Ways to Improve Your Programming (9780132979184) (nonfree)
- Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14 (9781491903995) (nonfree)
- Expert C++ Programming (9781788831390) (nonfree)
- Low-Level Programming: C, Assembly, and Program Execution on Intel(r) 64 Architecture (9781484224038) (nonfree)
- Mastering C++ Programming (9781786461629) (nonfree)
- Modern C++ Programming Cookbook (9781786465184) (nonfree)
- Modern X86 Assembly Language Programming: 32-Bit, 64-Bit, SSE, and AVX (9781484200650) (nonfree)
- Professional C++, 4th Edition (9781119421221) (nonfree)
- Programming: Principles and Practice Using C++ (9780133796742) (nonfree)
- The C++ Programming Language, 4th Edition (9780133522853) (nonfree)
- The CERT(R) C Secure Coding Standard (9780132702461) (nonfree) (read this one first,before the next edition of this book)
- The CERT(R) C Coding Standard, Second Edition: 98 Rules for Developing Safe, Reliable, and Secure Systems (9780133805291) (nonfree) (Read this one after reading the first edition; the first edition contains information that this one does not).
- The Modern C++ Challenge (9781788993869) (nonfree)
- Boost C++ Application Development Cookbook (9781849514880) (nonfree)
- Boost.Asio C++ Network Programming - Second Edition (9781785283079) (nonfree)
- Boost.Asio C++ Network Programming Cookbook (9781783986545) (nonfree)
- C++ Multithreading Cookbook (9781783289790) (nonfree)
- Getting Started with LLVM Core Libraries (9781782166924) (nonfree)
- Learning Boost C++ Libraries (9781783551217) (nonfree)
- Mastering C++ Multithreading (9781787121706) (nonfree)
- Learn C++ (free)
- Think c++ (free)
- SDL Game Development (9781849696821) (nonfree)
- Understanding and Using C Pointers: Core Techniques for Memory Management (9781449344184)
- The Rust book (free)
- The Rustlings Course (free)
- Rust by Example (free)
- Learning Rust (9781785884306) (nonfree)
- Mastering Rust (9781785885303) (nonfree)
- Rust Cookbook (9781785880254) (nonfree)
- Rust Essentials - Second Edition (9781788390019) (nonfree)
- Rust Programming By Example (9781788390637) (nonfree)
- Programming WebAssembly with Rust - Unified Development for Web, Mobile, and Embedded Applications (9781680506365) (nonfree)
- Awesome rust (all free, I think)
- Programming in Ada 2012 (9781107424814) (nonfree)
- 20 python libraries you aren't using (but should) (9781786469250) (free)
- Expert Python Programming - Second Edition (9781785886850) (nonfree)
- Learning Python (9781449355739) (nonfree)
- Programming Python (9780596158101) (nonfree)
- Python Pocket Reference (9781449357016) (nonfree)
- Learning Python Network Programming (9781784396008) (nonfree)
- Django By Example (9781784391911) (nonfree)
- Django 3 By Example: Build powerful and reliable Python web applications from scratch, 3rd Edition (9781838981952)
- Flask By Example (9781785286933) (nonfree)
- Artificial Intelligence with Python (9781786464392) (nonfree)
- Deep Learning with TensorFlow - Second Edition (9781788831109) (nonfree)
- Natural Language Processing with TensorFlow (9781788478311) (nonfree)
- Python Machine Learning - Second Edition (9781787125933) (nonfree)
- Learning Python for Forensics (9781783285235) (nonfree)
- Mastering Python Forensics (9781783988044) (nonfree)
- The flask mega tutorial (free)
- Dive into Python 3 (free)
- Think Python, 2nd edition (maybe free)
- Think DSP (maybe free)
- Welcome - The complete C# tutorial (free)
- Learn C# Tutorial - javatpoint (free)
- C# 7 and .NET Core: Modern Cross-Platform Development - Second Edition (9781787129559) (nonfree)
- C# 7 and .NET Core Cookbook (9781787286276) (nonfree)
- C# 7.0 Pocket Reference: Instant Help for C# 7.0 Programmers (9781491988534) (nonfree)
- Professional C# 6 and .NET Core 1.0 (9781119096603, 9781119096719, or 9781119096634) (nonfree)
- Hands-On Machine Learning with C# (9781788994941) (nonfree)
- Professional C# 7 and .NET Core 2.0 (9781119449270)
- Core Java Volume I--Fundamentals, 11th edition (9780135167182) (nonfree)
- Core Java, Volume II--Advanced Features, 11th edition (9780135167397) (nonfre)
- Java 9 for Programmers (9780134778150) (nonfree)
- Java Coding Guidelines: 75 Recommendations for Reliable and Secure Programs (9780133439540) (nonfree)
- Kotlin in Action (9781617293290) (nonfree)
- Learning Concurrent Programming in Scala (9781783281411) (nonfree)
- Mastering Java9 (9781786468734) (nonfree)
- Programming Kotlin (9781787126367) (nonfree)
- Programming Scala, 2nd Edition (9781491949856) (nonfree)
- Scala for Java Developers (9781783283637) (nonfree)
- Scala for Machine Learning (9781783558742) (nonfree)
- Scala for the Impatient, 2nd Edition (9780134540658) (nonfree)
- The Definitive ANTLR 4 Reference, version p2.0 (9781934356999) (nonfree)
- Android Application Development Cookbook - Second Edition (9781785886195) (nonfree)
- Android Programming for Beginners (9781785883262) (nonfree)
- Cocos2d-x Game Development Essentials (9781783987863) (nonfree)
- Creating Dynamic UIs with Android Fragments - Second Edition (9781785889592) (nonfree)
- Learning Material Design (9781785289811) (nonfree)
- LibGDX Game Development By Example (9781785281440) (nonfree)
- Mastering Play Framework for Scala (9781783983803) (nonfree)
- Play Framework Essentials (9781783982400) (nonfree)
- Machine Learning: End-to-End guide for Java developers (9781788622219) (nonfree)
- Java tutorials (oracle) (free)
- Other Java documentation
- JavaScript Concurrency (9781785889233) (nonfree)
- Mastering Node.js (9781782166320) (nonfree)
- Node.js Essentials (9781785284922) (nonfree)
- Hands-on Machine Learning with JavaScript (9781788998246) (nonfree)
- The modern JavaScript tutorial (free)
- You Don't Know JS book series (open-source)
- Learning PHP7 (9781785880544) (nonfree)
- Mastering PHP7 (9781785882814) (nonfree)
- Beginning F# 4.0, 2nd Edition (9781484213742) (nonfree)
- Expert F# 4.0, 4th Edition (9781484207406) (nonfree)
- Mastering F# (9781784393434) (nonfree)
- The Book of F# (9781593275528) (nonfree)
- Programming Perl, 4th Edition (9780596004927) (nonfree)
- Learning Perl: Making Easy Things Easy and Hard Things Possible (9781491954324) (nonfree)
- Intermediate Perl: Beyond The Basics of Learning Perl (9781449393090) (nonfree)
- Mastering Perl: Creating Professional Programs with Perl (9781449393113) (nonfree)
- Go Design Patterns (9781786466204) (nonfree)
- Go Programming Blueprints - Second Edition (9781786468949) (nonfree)
- Go Systems Programming (9781787125643) (nonfree)
- Learning Go programming (9781784395438) (nonfree)
- Learning Go Web Development (9781785282317) (nonfree)
- The Go Programming Language (9780134190563) (nonfree)
- Writing an Interpreter in Go (ISBN unknown) (nonfree)
- Writing a Compiler in Go (ISBN Unknown) (nonfree)
- Beginning Haskell: A Project-Based Approach (9781430262503)
- Haskell from the Very Beginning (9780957671133)
- Programming in Haskell, Second Edition (9781316626221)
- Real World Haskell: Code You Can Believe In (9780596514983)
- Effective Debugging: 66 Specific Ways to Debug Software and Systems (9780134394886) (nonfree)
- Information Security Handbook (9781788478830) (nonfree)
- Mazes for Programmers: Code Your Own Twisty Little Passages (9781680500554) (nonfree)
- MySQL, Fifth Edition (9780133038538) (nonfree)
- Using SQLite: Small. Fast. Reliable. Choose Any Three. (9780596521189) (nonfree)
- Learning Network Forensics (9781782174905) (nonfree)
- Mastering Mobile Forensics (9781785287817) (nonfree)
- Practical Digital Forensics (9781785887109) (nonfree)
- Practical Mobile Forensics - Second Edition (9781786464200) (nonfree)
- OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 4.5 with SPIR-V (9th edition) (9780134495491) (nonfree)
- OpenGL Shading Language (3rd edition) (9780321637635) (nonfree)
- OpenGL Superbible: Comprehensive Tutorial and Reference (7th edition) (9780672337475) (nonfree)
- Google Cloud AI Services Quick Start Guide (9781788626613) (nonfree)
- Machine Learning for Developers (9781786469878) (nonfree)
- Mastering Machine Learning Algorithms (9781788621113) (nonfree)
- Mastering Zabbix - Second Edition (9781785289262) (nonfree)
- CCNA Routing and Switching 200-125 Official Cert Guide Library (9781587205804) (nonfree)
- ZeroMQ: Messaging for Many Applications (9781449334437) (nonfree)
- Cryptography Engineering: Design Principles and Practical Applications (9780470474242) (nonfree)
- Practical Linux Security Cookbook (9781785286421) (nonfree)
- Mastering Linux Security and Hardening (9781788620307) (nonfree)
- A Practical Guide to Linux® Commands, Editors, and Shell Programming, 3rd Edition (9780133085082) (nonfree)
- The Debian Administrator's Handbook (9791091414050) (free)
- The Design and Implementation of the FreeBSD Operating System, Second Edition (9780133761832) (nonfree)
- The Official Ubuntu Book, Ninth Edition (9780134512495) (nonfree)
- Getting Started with PowerShell (9781783558506) (nonfree)
- Mastering Windows PowerShell Scripting (9781782173557) (nonfree)
- Quantum Computing for Computer Scientists (9780521879965) (nonfree)
- Quantum Computing since Democritus (9780521199568) (nonfree)
- Learning Docker (9781784397937) (nonfree)
- Mastering Docker (9781785287039) (nonfree)
- Web Developer's Reference Guide (9781783552139) (nonfree)
- Learning Linux Binary Analysis (9781782167105) (nonfree)
- AWS Administration - The Definitive Guide (9781782173755) (nonfree)
- CompTIA A+ Certification Guide (220-901 and 220-902) (9781787127302) (nonfree)
- CompTIA Linux+ Certification Guide (9781789344493) (nonfree)
- CompTIA Project+ Certification Guide (9781789534498) (nonfree)
- CompTIA Security+ Certification Guide (9781789348019) (nonfree)
- Mastering Linux Kernel Development (9781785883057) (nonfree)
- Identity & Access Management: A Systems Engineering Approach (9781499357066) (nonfree)
- The elements of computing systems: building a modern computer from first principles (The MIT Press) (9780262140874344) (nonfree)
- Awesome lists
- Code: The Hidden Language of Computer Hardware and Software (nonfree)
- Clean Code: A Handbook of Agile Software Craftsmanship (nonfree)
- Digital Transformation: Survive and Thrive in an Era of Mass Extinction (nonfree)
- Other great books for IT professionals (all nonfree)
- Security Engineering: A Guide to Building Dependable Distributed Systems (9780470068526) (nonfree)
- Why We Sleep: Unlocking the Power of Sleep and Dreams (9781501144318) (nonfree) (not really relevant to the dev room, but posting it because I love it)
- Serious Cryptography: A Practical Introduction to Modern Encryption (9781593278267) (nonfree) (Review by Gregory Parfitt, Application Security Specialist)
- Computer Organization and Design MIPS Edition: The Hardware/Software Interface (9780124077263)
- Computer Organization and Design ARM Edition: The Hardware Software Interface (9780128017333)
- Computer Organization and Design RISC-V Edition: The Hardware Software Interface (9780128122754)
- Computer Graphics: Principals and Practice (9780321399526) (nonfree, PDF) (By far the best book on computer graphics programming available.)
- Operating Systems: Design and Implementation, 3rd Edition (9780131429383)
- Unix: a History and a Memoir (no ISBN) (nonfree) (The history of Unix and how it took over the world by Mr. Brian Kernighan himself)
- Game Audio Programming: Principals and Practices (ISBN unknown) (nonfree)
- Game Audio Programming II: Principals and Practices (9781138068919) (nonfree)
Though these aren't books, here are some good IDEs and text editors for programming:
- Notepad 2 (and Notepad 3): my favorite editor on Windows. I use Notepad 2, not Notepad 3; they both appear to be identical in functionality (or maybe I'm missing something). Both are fully accessible.
- Notepad++: a very good editor indeed for programmers. Fully accessible.
- Visual Studio: by far the premeer IDE on windows. Accessible, though it can be very slow at times.
- VS Code: Not really an IdE, though you can turn it into one. Accessible (depending on what you do and who you ask).
- Eclipse: A very powerful and extensible IDE written in Java using the SWT widget toolkit. Fully accessible on Windows (though I believe its also accessible on Linux). Does not support Python out of the box. Note -- the installer is not accessible; use the downloadable zip files.