Hacker News new | past | comments | ask | show | jobs | submit login
The Architecture of Open Source Applications (aosabook.org)
116 points by ryanatallah on April 22, 2015 | hide | past | favorite | 15 comments



Take a look at the pricing page. The ePub and PDF versions are a fraction of the cost of the paperbacks. Finally someone with a clue! It's always annoyed me to no ends that Amazon only provides a small discount for their Kindle version compared to a paperback.

http://aosabook.org/en/buy.html


It's always annoyed me to no ends that Amazon only provides a small discount for their Kindle version compared to a paperback.

That's entirely up to the publisher. A lot of books that are self-published have a significant price difference, e.g. Kindle version at something under $5, paperback something over $10. I get the impression that at least some of the new publishing houses that are establishing themselves are following this model for the titles they will also offer in print.


This is a fantastic book. I recommend both the section on Google Chrome [1] and GHC [2]. Regardless of your level of interest in web browsers or compilers, they are both really educational and interesting reads.

[1] http://aosabook.org/en/posa/high-performance-networking-in-c... [2] http://aosabook.org/en/ghc.html


Huh? I've read many articles from it before, but haven't seen Chrome before. Did they add that later on?


It's from a more recent addition to the series, focused on performance. I reviewed that chapter and it's very well written.


This seems like a great resource to read about the architecture behind a lot of great applications and tools (nginx, scalable web architecture, nosql databases, git just to name a few). Definitely going to bookmark for later.

Related to that, I wonder if there are similar resources for learning about Blender's architecture (open source 3d modeler that has its own tiled UI system and integrates with an internal python interpreter) or the Linux kernel. I feel like those could be immensely useful for studying/understanding those large codebases for newcomers.


There are several documentation projects about the Linux kernel, of wildly varying quality. Honestly, though, I believe you'd be better served by the Stevens books and the Tanenbaum MINIX book, if you're not already familiar with kernels or the UNIX architecture, in general. The Stevens books are, bar none, the best books about UNIX programming and TCP/IP network programming, and as far as I can tell every serious Linux developer has a working knowledge of Stevens, and many have referenced Stevens when discussing implementation details. And, of course, Linux was originally developed as kind of a response to MINIX and shares many characteristics, and was designed as a teaching operating system (there are other teaching operating systems, but none are probably closer to Linux than older MINIX versions).

Here's some Linux kernel specific stuff:

http://tldp.org/LDP/tlk/tlk.html

http://www.kroah.com/lkn/

http://www.amazon.com/Linux-System-Programming-Talking-Direc...

The first two have some age on them, but are still relatively reflective of the overall architecture of Linux, even if a lot of detail has changed. Anyway, these three are of reasonable quality. Some of the other stuff out there is pretty rough.


This is also an excellent book on the subject: http://man7.org/tlpi/


Where did you conclude from Linux was designed as a teaching operating system?


I was speaking of MINIX. I can see how my language wasn't clear, though. Linux was not designed as a teaching operating system. Though Linus did hint that he was using it to learn about operating systems.



Interesting work. The part on scalable web architecture is very nicely written and the advice there is very valuable. http://aosabook.org/en/distsys.html


I went thru that section, and it's all concepts I learnt on the job in the last 4 years. It would have been good to have read this at the beginning of my career.


This series of books has been a great resource and I have been reading them for some time.

Thanks to the authors and editors for creating such an awesome resource. A must read for engineers who want to learn.

Some of my favorites have been http://aosabook.org/en/nginx.html http://aosabook.org/en/sqlalchemy.html http://aosabook.org/en/distsys.html from the first volume.

http://aosabook.org/en/graphite.html http://aosabook.org/en/llvm.html http://aosabook.org/en/asterisk.html from the second volume.

The new volume on Performance is also very good with the http://aosabook.org/en/posa/high-performance-networking-in-c... and http://aosabook.org/en/posa/secrets-of-mobile-network-perfor...

being my favorites.


My favorites so far:

* http://aosabook.org/en/sqlalchemy.html

* http://aosabook.org/en/llvm.html

* http://aosabook.org/en/asterisk.html

I have no opinion on the performance book yet, however if you're interested the architecture, look at those books one and two.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: