Live data from Hacker News

Ask HN: What are some books where the reader learns by building one project?

news.ycombinator.com

161–170 of 232 posts

Re: Ask HN: What are some books where the reader learns by building one project?

#162

Linux From Scratch: http://www.linuxfromscratch.org/lfs/ Goes through building a Linux system from the ground up, and gives a pretty thorough overview of why everything is working the way that it is.

I did this a couple years ago. It was pretty enjoyable and I learned quite a bit about Linux that I still apply almost every day.

Re: Ask HN: What are some books where the reader learns by building one project?

#163
This is a slightly different response from others, but I think fits the intent of the question: The Better Explained Guide to Calculus: https://betterexplained.com/calculus/

Kalid basically iterates the series around the concept of deriving the formula for the area/perimeter of a circle, and then builds up to deriving the surface area/volume of a sphere. The focus throughout is the building up of an intuition of calculus before leaping into formulas. Even with uni-level calculus, I did strengthen my intuition of what's going on by reading through his book.

It's pretty fun, and I actually spent some time visualizing the calculus of geometric solids afterward i.e http://www.trinco.io/blog/derivative-of-x3

Re: Ask HN: What are some books where the reader learns by building one project?

#164

Orchestrating Docker. I don't know if it's one of the best, but it teaches Docker concepts with a single project, and as you progress through chapters, you will find different ways you can deploy applications using Docker containers. https://www.packtpub.com/virtualization-and-cloud/orchestrat...

I know India's a big place but it's a bit of a coincidence that you and the author are from the same city ;)

Re: Ask HN: What are some books where the reader learns by building one project?

#165

What a delightful coincidence! I just posted the next chapter on my in-progress book "Crafting Interpreters" which walks you through implementing an interpreter (well, two actually) from scratch, a chapter at a time: http://www.craftinginterpreters.com/ I really liked "Build Your Own Lisp" too. Fun book. :)

Thank you for the tutorial. I've scoured the Internet for lighter introductions to interpreter development, and yours is the only one that's worthwhile. Great job!

Re: Ask HN: What are some books where the reader learns by building one project?

#166

"Physically Based Rendering" walks you through the theory behind, and the implementation of, a photo-realistic rendering system (not real-time). An extremely thorough guide to ray tracing. https://www.amazon.com/Physically-Based-Rendering-Third-Impl...

I don't like that this book is posted. Sure, it shows you an actual renderer. But it doesn't show you how to incrementally build said renderer. That is probably what a lot of people are looking for. Peter Shirley has written three short books about raytracing that I would recommend as an alternative.

Re: Ask HN: What are some books where the reader learns by building one project?

#168
post #14

Michael Hartl's Rails tutorial ( https://www.railstutorial.org/ ) is a great example of this. It'll run you through building a twitter clone and introduce you to git, heroku, a bit of CSS/HTML, and even goes into AJAX a bit. I can't recommend it enough to people looking to get into rails.

This is the inspiration behind the book I am working on - Web Development with Go (see https://www.usegolang.com).

Michael's book is fantastic and I really wanted something similar for people getting into go. My book doesn't cover git or testing but that is because rails is a framework with tons done for you, and in my book you basically build all of that from scratch. You learn a ton, but it is long and adding git or testing would have made the book like 600 pages (instead of ~400ish).

If you are interested in Go I'd love to get your feedback :)

Re: Ask HN: What are some books where the reader learns by building one project?

#169
Web Development with Go (see https://www.usegolang.com) is based on starting with pretty minimal Go and web development experience and walking you through the process of building a complete web application.

I find this approach works well because you don't have to ask "why did he make that design decision" but instead I intentionally make common mistakes a beginner would make, wait until they become an issue, and then I demonstrate how we can fix that issue. As a result you really get to understand not only how to create a web app in Go but also why developers tend to follow different design patterns.

I said this in another comment, but it is based on Michael Hartl's Rails Tutorial. I think showing someone how to go from nothing to a full app is a great way to help them get into web development without the frustration that comes from piecing together blog posts/docs/trial&error.

If you are interested in Go I'd love to get your feedback :) and if it isn't obvious, I am the author of the book.

Re: Ask HN: What are some books where the reader learns by building one project?

#170
> Each chapter builds on the last by adding something new to the same project

I bet this is what you are looking for:

https://www.amazon.com/Compiler-Construction-Using-Java-Java...

This book taught me how to write a compiler.

Here is its description from its website:

* Comprehensive treatment of compiler construction.

* JavaCC and Yacc coverage optional.

* Entire book is Java oriented.

* Powerful software package available to students that tests and evaluates their compilers.

* Fully defines many projects so students can learn how to put the theory into practice.

* Includes supplements on theory so that the book can be used in a course that combines compiler construction with formal languages, automata theory, and computability theory.

If you already know C or C++ or Java then this book is for you. In my opinion, you can learn many computer science concepts and be able to apply to your field. The book will teach you how to write a grammar then write a parser from it then eventually be able to improve it as you go on reading and doing the exercises. It was a great moment when I feel comfortable writing recursive functions since grammars are composed of recursive functions. You'll also learn a nice way on how you can get your compiler to generate assembly code. Another feature of the book is the chapter on Finite Automata wherein you'll learn how to convert between regular expressions, regular grammars and finite automata and eventually write your own 'grep' which was for me is a mind-blowing experience. There are lots of other stuffs in this book that you could learn. Thank you Anthony J. Dos Reis for writing great books for people like me.

Post reply on HN