Add diversity and DDD

This commit is contained in:
Charles-Axel Dein 2017-10-19 14:27:36 +02:00
parent 2e60fada94
commit f9c5174614

View File

@ -20,6 +20,7 @@
- [Design (visual, UX, UI)](#design-visual-ux-ui) - [Design (visual, UX, UI)](#design-visual-ux-ui)
- [Design (OO modeling, patterns, anti-patterns, etc.)](#design-oo-modeling-patterns-anti-patterns-etc) - [Design (OO modeling, patterns, anti-patterns, etc.)](#design-oo-modeling-patterns-anti-patterns-etc)
- [Dev environment & tools](#dev-environment--tools) - [Dev environment & tools](#dev-environment--tools)
- [Diversity & inclusion](#diversity--inclusion)
- [Documentation](#documentation) - [Documentation](#documentation)
- [Dotfiles](#dotfiles) - [Dotfiles](#dotfiles)
- [Editors & IDE](#editors--ide) - [Editors & IDE](#editors--ide)
@ -171,6 +172,7 @@ Here's a list of good books:
* [Design Patterns: Elements of Reusable Object-Oriented Software](http://www.amazon.com/dp/0201633612/): dubbed "the gang of four", this is almost a required reading for any developer. A lot of those are a bit overkill for Python (because everything is an object, and dynamic typing), but the main idea (composition is better than inheritance) definitely is a good philosophy. * [Design Patterns: Elements of Reusable Object-Oriented Software](http://www.amazon.com/dp/0201633612/): dubbed "the gang of four", this is almost a required reading for any developer. A lot of those are a bit overkill for Python (because everything is an object, and dynamic typing), but the main idea (composition is better than inheritance) definitely is a good philosophy.
* [Patterns of Enterprise Application Architecture](http://www.amazon.com/dp/0321127420/?tag=stackoverfl08-20): learn about how database are used in real world applications. Mike Bayer's SQLAlchemy has been heavily influenced by this book. * [Patterns of Enterprise Application Architecture](http://www.amazon.com/dp/0321127420/?tag=stackoverfl08-20): learn about how database are used in real world applications. Mike Bayer's SQLAlchemy has been heavily influenced by this book.
* [Domain-Driven Design: Tackling Complexity in the Heart of Software](https://www.amazon.com/Domain-Driven-Design-Tackling-Complexity-Software/dp/0321125215), Eric Evans
Articles: Articles:
@ -180,6 +182,7 @@ Articles:
* O'Reilly's [How to make mistakes in Python](http://www.oreilly.com/programming/free/files/how-to-make-mistakes-in-python.pdf) * O'Reilly's [How to make mistakes in Python](http://www.oreilly.com/programming/free/files/how-to-make-mistakes-in-python.pdf)
* [Education of a Programmer](https://hackernoon.com/education-of-a-programmer-aaecf2d35312): a developer's thoughts after 35 years in the industry. There's a particularly good section about design & complexity (see "the end to end argument", "layering and componentization"). * [Education of a Programmer](https://hackernoon.com/education-of-a-programmer-aaecf2d35312): a developer's thoughts after 35 years in the industry. There's a particularly good section about design & complexity (see "the end to end argument", "layering and componentization").
* Google's [API Design Guide](https://cloud.google.com/apis/design/): a general guide to design networked API. * Google's [API Design Guide](https://cloud.google.com/apis/design/): a general guide to design networked API.
* [Domain-driven design](https://en.wikipedia.org/wiki/Domain-driven_design), Wikipedia.
I maintain a [list of antipatterns](https://github.com/charlax/antipatterns) on another repo. This is a highly recommended read. I maintain a [list of antipatterns](https://github.com/charlax/antipatterns) on another repo. This is a highly recommended read.
@ -201,6 +204,11 @@ Tools
* [tmux: terminal multiplexer](http://tmux.github.io/) * [tmux: terminal multiplexer](http://tmux.github.io/)
* [htop: an interactive process viewer for Linux](http://hisham.hm/htop/) * [htop: an interactive process viewer for Linux](http://hisham.hm/htop/)
### Diversity & inclusion
Checkout my [list of management
resources](https://github.com/charlax/engineering-management).
### Documentation ### Documentation
* [Documentation-Driven Development](https://gist.github.com/zsup/9434452) * [Documentation-Driven Development](https://gist.github.com/zsup/9434452)