Live data from Hacker News

Ask HN: Any advice on how to learn good software architecture practices?

news.ycombinator.com

11–20 of 27 posts

Re: Ask HN: Any advice on how to learn good software architecture practices?

#12
There are a lot of good books here: https://pragprog.com/categories/architecture-design-and-test...

I second the comment (https://news.ycombinator.com/item?id=48327571) recommending How to Design Programs (HTDP) and Structure and Interpretation of Computer Programs (SICP). The former has an edX course (https://www.edx.org/learn/coding/university-of-british-colum... and https://www.edx.org/learn/coding/university-of-british-colum...) and the latter has online lectures (https://www.youtube.com/watch?v=-J_xL4IGhJA&list=PLE18841CAB...)

Head First Architecture (https://www.amazon.com/Head-First-Software-Architecture-Arch...) is good.

Reading about systems thinking would be useful.

Learning programming languages that have been well designed is helpful. I suggest Programming Erlang: Software for a Concurrent World and Elixir in Action.

Re: Ask HN: Any advice on how to learn good software architecture practices?

#17
> I realize I don’t have much knowledge about the best way to architect applications

There is no “best way”, it always depends on what you are building.

The main advice I would give is to always remember that there’s trade-off’s in every architectural choice…

I guess some general tenants might be… “great architectural solutions…”

- Allow new features to be added, without much complexity

- Have reliable and clear abstraction layers

- Allow tests and typing to validate it’s correctness

- Manage clearly understood limitations, rather than implicit surprise limitations

Post reply on HN