Live data from Hacker News

Ask HN: Books that teach programming by building a series of small projects?

news.ycombinator.com

161–170 of 204 posts

Re: Ask HN: Books that teach programming by building a series of small projects?

#161
Python Programming for the Absolute Beginner (https://smile.amazon.com/Python-Programming-Absolute-Beginne...) has you make a game at the end of every chapter with the concepts you've learned so far. I've bought this book for a number of people, though perhaps Automate the Boring Stuff with Python: Practical Programming for Total Beginners (https://smile.amazon.com/gp/product/1593275994/) is better if you don't want to make games.

Re: Ask HN: Books that teach programming by building a series of small projects?

#162
post #35
post #9

There’s quite a few: - Zed Shaw’s Learn More Python the Hard Way[1] - Brian Hogan’s Exercises for Programmers (best for beginners or for learning a new language)[2] - Hal Fulton’s The Ruby Way[3] - Chris Ferdinandi’s Vanilla JS Academy[4] - Marc-Andre Cournoyer’s Great Code Club (it’s old, and the community doesn’t exist anymore, but i think he still maintains it)[5] - A few python books from No Starch Press (notably…

Specifically "Automate the Boring Stuff with Python" is my favourite Al Sweigart book.

Best explanation of Regex that I have ever seen

Re: Ask HN: Books that teach programming by building a series of small projects?

#163
post #109

If we're talking a complete beginner with maybe only "hello world" level skills I recommend the Lego BOOST set: https://www.lego.com/en-fi/product/boost-creative-toolbox-17... It teaches you step by step the basics of programming (loops, function calls etc) using a scratch-like programming language.

Any alternative to this? I think lego stopped making it.

the Mindstorms Robot Inventor is a bit more advanced (Scratch-like vs Scratch Jr on the Boost) and twice as expensive: https://www.lego.com/en-us/product/robot-inventor-51515

Re: Ask HN: Books that teach programming by building a series of small projects?

#165
post #97

Earlier quoted context omitted.

To force myself “to figure out the code,” I typically do the tutorial in a different language. I wanted to get familiar with Java last year, but all the books/tutorials were boring to me. What I ended up doing was going through a book that showed how to write a backend in Go (which was also unfamiliar to me at the time) while simultaneously porting it to Java (using Vert.x). Probably sounds inefficient tackling two l…

I was looking for golang in this thread and this is the only reference I found. Would you mind linking the Go book you reference? Thanks

Sure thing:

https://lets-go-further.alexedwards.net

That book is a follow-up to an easier book [1] that I also bought, but ended up skipping since I was only interested in writing JSON APIs.

[1] https://lets-go.alexedwards.net

Re: Ask HN: Books that teach programming by building a series of small projects?

#166
post #50

While on the topic, how about any books or courses that teach building a 3D game engine from scratch? I'm language agnostic, so any language is fine.

I think pikuma.com has a course about implementing a 3D rasterizer from scratch in C.

The best!!!

Re: Ask HN: Books that teach programming by building a series of small projects?

#167

For beginners, Daniel Holden's Build Your Own Lisp[1] is excellent material for learning C. It's a very succinct book. For intermediate programmers, Build Your Own Redis[2] is a WIP book I am currently writing. [1] https://buildyourownlisp.com/ [2] https://build-your-own.org/

Build your own redis sounds like a good idea, but I found the title confusing as C and C++ are different languages and you're using the old "C/C++" phrasing. I immediately wondered, "well, which is it?"

So I dug into it a bit, and from the introduction I see it's "mostly C with some C++ features". But if you're going to require C++ features/libraries and a C++ compiler, then it's not C. So why not just say it's C++? I guess another way to ask is: what makes it "mostly C"? Is it a market capture decision? Is there some interesting language tradeoff involved?

Re: Ask HN: Books that teach programming by building a series of small projects?

#168
Thought the question was regarding specific books that teach programming via small projects it's worth mentioning a related topic here.

A Common Sense Guide to Data Structures and Algorithms by Jay Wengrow * 2nd Edition * not only covers the theory really well but goes on to provide code examples in popular high level languages explaining when and how best to use them usefully. At the end of each section are prompts where you extend the lesson into a small project and each chapter builds on the last. The author has a github repo so you can compare your project solution to his. It made a rather dry topic extremely fun and approachable.

Re: Ask HN: Books that teach programming by building a series of small projects?

#170

My favourite is "Practical Common Lisp" by Peter Seibel ( https://gigamonkeys.com/book/ ) Not only is the book free to read (although I would suggest to pay for it if you like it!) The code to parse binary files actually "inspired" my design of an actual production application which was very flexible, succinct and, most importantly, so fast I had to spend a lot of effort convincing people the numbers are actually tru…

I was going to suggest this. It's cool that you build a file based database (IIRC) and query language in the third chapter!

Also with so little actual code. This cemented my interest for Common Lisp at the time I was reading it.
Post reply on HN