Live data from Hacker News

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

news.ycombinator.com

211–220 of 232 posts

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

#211
post #205

Earlier quoted context omitted.

You might want to read AMOP. It's not build out of macros, but a meta-object system. It also took a decade of research&development to develop CLOS + MOP. From Flavors and LOOPS to AMOP.

I've had it recommended to me before, but never read it. I also wasn't aware of the extreme effort in getting it right. Thank you.

The communication of the standard subgroup which developed CLOS is here:

http://ml.cddddr.org/cl-object-oriented-programming/

The repository spans from 1984 to 1990.

The group also developed a portable CLOS implementation (PCL, Portable Common Loops) to experiment and verify their design with feedback from the community:

https://www.cs.cmu.edu/Groups/AI/lang/lisp/oop/clos/pcl/0.ht...

Flavors and LOOPS were developed around 1980 and were the direct inspirations. The AMOP book was then published 1991.

AMOP is a very good and extremely well written book about the CLOS Meta Object Protocol.

It also is fortunately / unfortunately one of the books with the best Lisp programming style. 'fortunately' because it is really great, 'unfortunately' the great programming style is tied to a slightly esoteric topic - object-oriented meta-object protocols. ;-)

Whatever motivation you have, a) reading a book with great Lisp style or b) learning about the CLOS MOP, the book is highly recommended.

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

#212
post #155
post #80

Earlier quoted context omitted.

I can really recommend this book, I've worked through it and am implementing the interpreter in Rust. I've just finished the latest chapter and am looking forward to the future instalments. Edit: here is the (WIP) intepreter: https://github.com/HarveyHunt/loxr

I'm going through the book implementing the project in Rust too. I'm trying to learn Rust with this project. It's still far from idiomatic but I plan to keep implementing following the book and then refactor later. https://github.com/mariosangiorgio/rulox

Cool, added yours to the README too. :)

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

#213

I dunno why, but I was kind of hoping there would be non-CS answers for this too, like how to woodwork, or like tying flies.

I was hoping someone would ask this. The question made me think of 'Rebuilding the Indian' by Fred Haefele. In an autobiographical work, the author gets respite from and perspective on his emotional issues by focussing on rebuilding an antique motorcycle.

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

#214
post #50

Two decent ones for game development: https://howtomakeanrpg.com/ Walks through building a JRPG-style game with Lua. Pretty impressive for the price, especially with all the royalty-free assets that are included. https://books.google.com/books/about/Programming_an_RTS_Game... A little dated now, (although DirectX 9 isn't quite dead yet), but this one has some pretty interesting topics. Good chapter on procedural terr…

Thanks for sharing! I'm just getting into games and these look really helpful.

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

#217
I already answered about "The Art of the Metaobject Protocol" but then two more language-implementation-centric books came to mind today.

1. "Writing Compilers and Interpreters" by Ronald Mak 2. "Building an Optimizing Compiler" by Bob Morgan

Morgan's book is well sought after and out of print. It's one of the few books in the field for which the print edition prices keep climbing.

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

#218
post #215

Any recommended book in this category about Postgres or Elasticsearch?

https://www.amazon.com/AWK-Programming-Language-Alfred-Aho/d... has you build a database from scratch

Thanks but I'm looking for books whose main topic is Postgres/Elasticsearch. The book you suggested has one chapter that touches database management as an application of Awk. Interesting, but somewhat of a different subject.

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

#219

Big Nerd Ranch books - at least the Android one https://www.bignerdranch.com/books/

The big nerd ranch books often have you build applications across a collection of chapters. I learned iOS development from their book; it's not a single project for the whole book, but there are large chunks that use the same example app that you add functionality to.

I love the the style of learning they advocate: reading the book and typing in every single line of code yourself. It suits my learning style really well.

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

#220
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…

I subscribed to your blog and your newsletter some months ago, and I must say I like what you do. Although I'm focused on C++ now for some courses I'm taking, I still hope to catch up on Go later, and I think your book will be helpful. Personally, I wouldn't mind a hands-on exploration of a programming language having some pages, and links to good resources, on version control. Learning 'git' in such practical way (as part of a project) seems better to me (Harvard's CS50 now takes that approach too: https://github.com/blog/2322-how-cs50-at-harvard-uses-github...).
Post reply on HN