Library / SDK
loganthorneloe/ai-for-software-engineers avatar
loganthorneloe/ai-for-software-engineers

ai-for-software-engineers is a reading list, not a curriculum or a codebase

AI foundations for software engineers.

1,369 stars162 forksUnknownMIT

At a glance

What is it?
A curated set of books, videos and repos for programmers who want AI foundations, organised into four sections and published under MIT. The hard part is not the links, it is that nothing here runs, so the guide's value depends entirely on how well its annotations match your existing background.
Who is it for?
Adopt this if you are a working programmer who wants a short, opinionated shortlist of AI material and you are willing to buy books, because most entries are commercial titles from O'Reilly, Manning and Packt rather than free courseware. Do not adopt it if you need runnable exercises, a syllabus with deadlines, or a single free path from zero to deployed model: the README is a list of links, and the only code it points at lives in other people's repositories.
Can I use it commercially?
Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository last received commits 20 days ago.
What is it written in?
GitHub does not report a main language for this repository.

Answers come from the project's GitHub data, last synced on September 15, 2026, and from our analysis. They are not legal advice.

DEEP OPEN-SOURCE ANALYSIS

The problem it addresses: engineers arriving at AI with a software background and no map

The README states the premise directly: this repository contains the resources software engineers need to build a foundational understanding of AI, and it assumes the reader has prior experience with programming. That assumption is the whole design constraint. A computer science graduate who has shipped services but never trained a model faces a specific problem, which is not a shortage of material but an oversupply of it, most of it written for either mathematicians or data scientists. The guide answers that by picking one or two entries per topic rather than listing everything available. The audience is narrow on purpose: people who already program, who want depth rather than an API tour, and who are willing to read books. If you want a notebook you can run in ten minutes, the structure here will frustrate you, because the entries are primarily commercial books and video series hosted elsewhere.

Four sections and the ordering logic behind them

The repository splits into General Resources, ML Foundations, LLMs, and Engineering. The General Resources section is marked optional in the README, and it contains a single entry: Hamming's The Art of Doing Science and Engineering, with a shorter essay version linked for readers who prefer that. The annotation explains the inclusion, arguing that AI is fundamentally a research discipline and that continued learning matters as much in AI as in software engineering. That is a claim about temperament rather than technique, and it is the one place where the guide editorialises about how to work rather than what to read. ML Foundations covers classical machine learning from the bottom up, with two books. LLMs covers transformer internals, post-training and reasoning. Engineering covers the operational layer. The progression is deliberate: maths and models first, then the architecture that dominates current practice, then the systems work of running any of it. Whether that order suits you depends on your goal. Someone who only needs to call a hosted model API can skip straight to the Engineering section, and the README explicitly permits skipping around.

What the annotations actually commit to, and where they stay silent

Each entry carries a short justification, and the justifications are more useful than the links, which you could find yourself. Hands-On Machine Learning with Scikit-Learn and PyTorch is described as the gold standard for getting hands-on, with the note that you build a project end to end and that the accompanying repo at ageron/handson-mlp includes notebooks and exercise solutions. Mathematics of Machine Learning is framed around linear algebra, probability, calculus and optimisation, with the observation that most engineers skip this part and that the maths becomes more important as AI advances. For LLMs, the 3Blue1Brown neural network series is chosen for visual intuition about attention, Raschka's Build a Large Language Model (From Scratch) for tokenization through fine-tuning, and the RLHF Book for preference data, reward modelling and the tradeoffs in shaping behaviour after pretraining. The Engineering section names Designing Machine Learning Systems for the production loop, AI Engineering for application-layer concerns such as context, evals, agents and retrieval, Designing Data-Intensive Applications for storage, indexing, streams, replication and consistency, Inference Engineering for serving latency, reliability and cost, and How to Scale Your Model for training at scale. What the annotations do not give you is any sense of difficulty gradient, time estimate, or prerequisite chain between entries. There is no indication of which book to read first if you can only read one, and no note on which entries assume calculus fluency. The README also does not say when it was last reviewed, so the currency of the LLM section, which is the fastest-moving area, is something you have to judge from the titles themselves.

Getting it running: there is nothing to install

This is the point that most reviews of this repository would gloss over. There is no package, no build step, no CLI, and no configuration. The repository layout visible in the README is a single document plus an image asset at assets/ai-for-swes.png used as the header. Cloning it gives you a README and a picture. The practical workflow is therefore: read the README, follow the external links, and clone the companion repositories that the entries name when you want code. Those companion repositories are separate projects with their own setup instructions, and this guide does not reproduce them. If you were expecting something like a requirements.txt or a make target, you will not find one here. The only ongoing interaction the README describes is following the author on X and Substack for additional resources, and subscribing to the newsletter at aiforswes.com/subscribe. Treat the homepage at learn.aiforswes.com as the place where any course-like material would live, not the repository.

The maintenance model is a person, not a release cycle

The repository has no releases, and the metadata shows an MIT licence with the default branch set to main. MIT means you can copy the list, fork it, and republish it inside a company wiki without asking, provided you keep the licence text. That is a genuine advantage over courseware with restrictive terms, and it is worth noting that the underlying books are not covered by that licence at all: O'Reilly, Manning and Packt titles are commercial products, and the guide links to purchase pages rather than to free copies. Cost of adoption is therefore the sum of the books you buy, not zero. Maintenance is the weaker side. A curated list decays in two directions: links rot, and coverage drifts as the field moves. The README's only stated update channel is the author's newsletter and social accounts, which means updates arrive as new posts rather than as commits you can diff. There is no changelog, no last-reviewed date in the text, and no contribution guide visible in the material. If you fork it for a team, you are taking on the review work yourself, and the LLM section is where that work will concentrate.

Where it is the wrong tool, and what to use instead

The guide is the wrong tool if you learn by doing rather than by reading, if you need graded exercises with feedback, or if your organisation requires a completion record. It is also a poor fit if you want to start from application code and work downward, because the ordering begins with maths and model internals. A concrete alternative in that space is fast.ai's Practical Deep Learning for Coders, which is built around runnable notebooks and a top-down teaching order: you train a working model in the first lesson and only later examine the mathematics underneath. The difference in approach is not quality, it is direction of travel. This guide says read the maths book first so the models become easier to reason about; fast.ai says build something that works first so the maths has somewhere to attach. Both positions are defensible, and they suit different people. A second alternative, for the engineering half specifically, is the companion repositories themselves. If your goal is production ML rather than foundations, chiphuyen/dmls-book and chiphuyen/aie-book contain chapter summaries, examples and case studies, and reading those directly skips the intermediate layer this guide provides. The guide's value is in the selection and the annotations, so if you already know which books you want, it adds little.

Who should adopt it, and what to check before you commit

Adopt it if you are a working programmer with a reading habit and a budget for two or three technical books, and you want someone else to have already discarded the weaker options. The four-section structure gives you a defensible sequence, and the annotations tell you why each entry is there, which is more than most link lists do. Do not adopt it if you need runnable code, if you are looking for a free path, or if you need the material to be current on a timescale of months rather than years. The LLM and Engineering sections will age fastest, and the guide offers no mechanism for flagging stale entries. Three things to verify before you spend money. First, open each companion repository named in the README and check its last commit, because a book with an abandoned code repository is a harder read. Second, confirm the edition you are buying matches the chapter structure the annotation describes, since these titles have multiple editions with different tooling. Third, check whether learn.aiforswes.com hosts anything beyond a newsletter signup, because if the repository is the entire artefact, then the MIT licence is the only durable thing you are adopting, and the rest is a set of purchase links that will need replacing within a couple of years.

Editorial conclusion

Adopt this if you are a working programmer who wants a short, opinionated shortlist of AI material and you are willing to buy books, because most entries are commercial titles from O'Reilly, Manning and Packt rather than free courseware. Do not adopt it if you need runnable exercises, a syllabus with deadlines, or a single free path from zero to deployed model: the README is a list of links, and the only code it points at lives in other people's repositories. Before committing, verify three things yourself: that the companion repos named in the README (ageron/handson-mlp, rasbt/LLMs-from-scratch, rasbt/reasoning-from-scratch, natolambert/rlhf-book, chiphuyen/dmls-book, chiphuyen/aie-book, cosmic-cortex/mathematics-of-machine-learning-book) are still maintained, that the Packt and Manning editions you order match the chapter structure the annotations describe, and that the homepage at learn.aiforswes.com is live, since the repository itself contains no content beyond the README and an image asset.

Official sources

  1. Issues
  2. License: MIT
  3. loganthorneloe/ai-for-software-engineers on GitHub
  4. Project website
  5. README
Community notes

Community notes