Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ESSS/awesome-dev-articles

A curated list of articles selected by the ESSS Dev team
https://github.com/ESSS/awesome-dev-articles

List: awesome-dev-articles

hacktoberfest

Last synced: about 1 month ago
JSON representation

A curated list of articles selected by the ESSS Dev team

Awesome Lists containing this project

README

        

# Awesome Dev Articles [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome)

A curated list of articles selected by the ESSS Dev team.

Inspired by the [awesome](https://github.com/sindresorhus/awesome) list thing.

## Articles

### Basic

* [Empty - The Codeless Code](http://thecodelesscode.com/case/6) - Qi
* [How to Make Your Code Reviewer Fall in Love with You](https://mtlynch.io/code-review-love/) - Michael Lynch
* [How to do a code review](https://google.github.io/eng-practices/review/reviewer) - Google Engineering Practices Documentation
* [The 10 Commandments of Navigating Code Reviews](https://angiejones.tech/ten-commandments-code-reviews) - Angie Jones
* [How to Write a Git Commit Message](https://chris.beams.io/posts/git-commit/) - Chris Beams
* [Steps to better code](https://medium.com/@isaaclyman/steps-to-better-code-e6c3cce0c7f9) - Isaac Lyman
* [The Biggest Mistake I See Engineers Make](https://thezbook.com/the-biggest-mistake-i-see-engineers-make) - Zach Lloyd
* [The Grug Brained Developer](https://grugbrain.dev/) - _unknown author_
* [The Opposite of Fitts' Law](https://blog.codinghorror.com/the-opposite-of-fitts-law/) - Jeff Atwood
* [The Little Book of Python Anti-Patterns](https://quantifiedcode.github.io/python-anti-patterns/) - QuantifiedCode
* [The most critical Python code metric](https://stevedower.id.au/blog/most-critical-python-metric) - Steve Dower
* [Python Design Patterns](https://python-patterns.guide)

### Intermediary

* [Flaky tests](https://docs.pytest.org/en/stable/explanation/flaky.html) - pytest documentation
* [Design in Construction](http://aroma.vn/web/wp-content/uploads/2016/11/code-complete-2nd-edition-v413hav.pdf#page=110) - Chapter 5 of Steve McConnell's book "Code Complete"
* [Move Fast and Fix Things](https://githubengineering.com/move-fast/) - Vicent Martí
* [Python API Checklist](https://devchecklists.com/checklist/python-api-checklist/en) - Flávio Juvenal da Silva Junior
* [PyQt Gotchas](https://stefanoborini.com/pyqt-gotchas/) - Stefano Borini
* [SOLID principles in Python](https://realpython.com/solid-principles-python) - Real Python
* [Writing Python like it is Rust](https://kobzol.github.io/rust/python/2023/05/20/writing-python-like-its-rust.html) - Kobzol's blog

### Advanced

* [Notes on structured concurrency, or: Go statement considered harmful](https://vorpus.org/blog/notes-on-structured-concurrency-or-go-statement-considered-harmful/) - Nathaniel J. Smith
* [Lessons from 6 software rewrite stories](https://medium.com/@herbcaudill/lessons-from-6-software-rewrite-stories-635e4c8f7c22) - Herb Caudill
* [Timeouts and cancellation for humans](https://vorpus.org/blog/timeouts-and-cancellation-for-humans/) - Nathaniel J. Smith

### Culture

* [Code culture problem](http://fraustollc.com/blog/shit_code/) - Nolan Frausto
* [How To Write Unmaintainable Code](https://web.archive.org/web/20171224114025id_/https://www.thc.org/root/phun/unmaintain.html) - Roedy Green
* [Python Culture](https://svn.python.org/projects/sandbox/trunk/dev/culture.rst) - python.org historic document
* [TechnicalDebt](https://martinfowler.com/bliki/TechnicalDebt.html) - Martin Fowler
* [The Joel Test: 12 Steps to Better Code](https://www.joelonsoftware.com/2000/08/09/the-joel-test-12-steps-to-better-code/) - Joel Spolsky
* [The Ugly American Programmer](https://blog.codinghorror.com/the-ugly-american-programmer/) - Jeff Atwood
* [Top 7 programmers bad habits](https://web.archive.org/web/20110803100310/http://www.makinggoodsoftware.com/2011/05/23/top-7-programmers-bad-habits) - Alberto Gutierrez
* [When Good Software is Enough](https://www.liamwho.com/wp-content/uploads/When-Good-Enough-Software-Is-Best.pdf) - Edward Yourdon

### Communication

* [The XY Problem](https://xyproblem.info/)
* [No Hello](https://nohello.net/)

## Talks

* [Inventing on Principle](https://www.youtube.com/watch?v=PUv66718DII) - Bret Victor
* [The End Of Object Inheritance & The Beginning Of A New Modularity](https://youtu.be/3MNVP9-hglc) - Augie Fackler & Nathaniel Manista
* [The Naming of Ducks: Where Dynamic Types Meet Smart Conventions](https://www.youtube.com/watch?v=YklKUuDpX5c&list=WL) - Brandon Rhodes
* [Transforming Code into Beautiful, Idiomatic Python](https://www.youtube.com/watch?v=OSGv2VnC0go&t=0s&list=PLRVdut2KPAguz3xcd22i_o_onnmDKj3MA&index=4) - Raymond Hettinger
* [Write Less and Test More with Data Regression Testing](https://www.youtube.com/watch?v=YBuVGx3EYSY) - Igor T. Ghisi

## Books

* [Architecture Patterns with Python](https://www.cosmicpython.com/) (a.k.a. Cosmic Python) - Harry J. W. Percival & Bob Gregory
* [Fluent Python](https://www.oreilly.com/library/view/fluent-python/9781491946237/) - Luciano Ramalho

### How to Contribute

The goal is to create a reading list of important articles for any developer. This is NOT a "pool of interesting articles"
(otherwise, it'd grow endlessly). We can think in it more like a _must read_ list. To stick with this principle, we might
limit the number of articles in the near future.

Some criteria we used to create the list:

1. The article/talk is a well done summary of one or more good programming practices (e.g., [Steps to better code](https://medium.com/@isaaclyman/steps-to-better-code-e6c3cce0c7f9))
2. The article/talk presents a very clever solution for some problem (e.g., [Move Fast and Fix Things](https://githubengineering.com/move-fast/))

To contribute, if you are outside ESSS Org, edit this file (you can do this through the GitHub UI), add the
title/link/author in the correct position to keep the list sorted and submit the change as a PR.

If you are inside ESSS Org, first share the article/talk via Chat or on Dev mailing list. If you get some thumbs up, submit the PR as explained above.