Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/abiodunjames/Awesome-Clean-Code-Resources

An awesome curated list of clean code posts, books and videos
https://github.com/abiodunjames/Awesome-Clean-Code-Resources

List: Awesome-Clean-Code-Resources

Last synced: 3 months ago
JSON representation

An awesome curated list of clean code posts, books and videos

Awesome Lists containing this project

README

        

Awesome Clean Code Resources [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome)
======================================================================

> An awesome curated list of clean code posts, books and resources - learn,
> practice, contribute & most importantly become cleaner!.

If you want your code to be elegant, clean, straightforward and easy to
understand, you will find this list helpful. They are links to posts, videos and
books written by great minds in history and contain a lot of examples to spice
up your day.

 

Table of Contents
-----------------

- [PHP](#php)

- [NodeJs](#nodejs)

- [Java](#java)

- [C\#](#c#)

- [JavaScript](#javascript)

- [Ruby](#ruby)

- [Python](#python)

- [Books](#books)

## PHP
---

| Title | Link |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------|
| [Clean Code Concepts Adapted for PHP](https://github.com/jupeter/clean-code-php) | |
| [The Fundamentals of Writing Clean Code](https://webdevstudios.com/2015/04/09/fundamentals-writing-clean-code/) | |
| [Writing clean, secure and easy to maintain PHP code](https://www.macronimous.com/resources/writing-clean-secure-and-easy-php.asp) | |
| [Keeping your Code Clean](https://codeburst.io/keeping-your-code-clean-d30bcffd1a10) | |
| [Importance of Writing Clean Code](https://dev.to/mohitrajput987/importance-of-writing-clean-code) | |
| [A month of clean code](https://dev.to/gonedark/a-month-of-clean-code-tips-709) | |
| [Clean, high quality code: a guide on how to become a better programmer](https://www.butterfly.com.au/blog/website-development/clean-high-quality-code-a-guide-on-how-to-become-a-better-programmer) | |
| [10 Clean Code Techniques That Every Coder Should Know](http://www.codingdojo.com/blog/clean-code-techniques/) | http://www.codingdojo.com/blog/clean-code-techniques/ |
| [Leave the code cleaner than the way you have found it!](https://codeburst.io/leave-the-code-cleaner-than-the-way-you-have-found-it-58c8e4ab3e83) | https://codeburst.io/leave-the-code-cleaner-than-the-way-you-have-found-it-58c8e4ab3e83 |
| [PHP Standards Recommendations](http://www.php-fig.org/psr/)| http://www.php-fig.org/psr/|
| [Extended Coding Style Guide](https://github.com/php-fig/fig-standards/blob/master/proposed/extended-coding-style-guide.md) | https://github.com/php-fig/fig-standards/blob/master/proposed/extended-coding-style-guide.md|

## NodeJs
----

| Title | Link |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------|
| [Felix Node's Style Guide](http://nodeguide.com/style.html)| | http://nodeguide.com/style.html |
| [NodeJs Best Practices](https://blog.risingstack.com/node-js-best-practices/) | https://blog.risingstack.com/node-js-best-practices/|
| [npm coding](https://docs.npmjs.com/misc/coding-style)| https://docs.npmjs.com/misc/coding-style |
| [ 10 Node.js best practices you should follow](https://www.innofied.com/node-js-best-practices/) | https://www.innofied.com/node-js-best-practices/|
| [Node.js: Style and structure](https://caolan.org/posts/nodejs_style_and_structure.html) | https://caolan.org/posts/nodejs_style_and_structure.html |
| [Node.js Best Practices](http://justbuildsomething.com/node-js-best-practices/) | http://justbuildsomething.com/node-js-best-practices/|
| [ Writing Clean Asynchronous Code In Node.js ](https://www.udemy.com/writing-clean-asynchronous-code-in-nodejs/) | https://www.udemy.com/writing-clean-asynchronous-code-in-nodejs/|
| [Seven Things You Should Stop Doing with Node.js](https://webapplog.com/seven-things-you-should-stop-doing-with-node-js/) | https://webapplog.com/seven-things-you-should-stop-doing-with-node-js/ |
| [Clean Architecture design in NodeJS](https://solidgeargroup.com/clean-architecture-in-nodejs)| https://solidgeargroup.com/clean-architecture-in-nodejs |
| [Clean Code NodeJs : Execute Asynchronous Tasks in Series](https://blog.cloudboost.io/execute-asynchronous-tasks-in-series-942b74697f9c)| https://blog.cloudboost.io/execute-asynchronous-tasks-in-series-942b74697f9c|

## Java
----

| Title | Link |
|----------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------|
| [Java clean code examples](https://gist.github.com/nicholasren/93e6d49f62ad8ed0b596) | https://gist.github.com/nicholasren/93e6d49f62ad8ed0b596 |
| [Writing Good Java Code](https://www.ibm.com/developerworks/library/j-perry-writing-good-java-code/index.html) | https://www.ibm.com/developerworks/library/j-perry-writing-good-java-code/index.html |
| [Clean Code: Java Class Fields](https://www.novoda.com/blog/clean-code-java-class-fields/) | https://www.novoda.com/blog/clean-code-java-class-fields/ |
| [7 tips on writing clean code](http://www.garshol.priv.no/blog/105.html) | http://www.garshol.priv.no/blog/105.html |
| [Clean Code Java](http://cleancodejava.com/) | http://cleancodejava.com/ |
| [Kotlin for Android & Java Developers: Clean Code on Android](https://www.udemy.com/kotlin-andro) | https://www.udemy.com/kotlin-android/ |
| [Java Code Style The Final Decision](http://www.codeaffine.com/2014/04/28/java-code-style-the-final-decision/) | http://www.codeaffine.com/2014/04/28/java-code-style-the-final-decision/ |
| [Clean Code from the Trenches](https://www.javacodegeeks.com/2017/05/clean-code-trenches.html) | https://www.javacodegeeks.com/2017/05/clean-code-trenches.html |
| [11 Mistakes Java Developers make when Using Exceptions](https://nobugsproject.com/tag/clean-code/) | https://nobugsproject.com/tag/clean-code/ |

## C\#
---

| Title | Link |
|--------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------|
| [C\# Developers: Learn the Art of Writing Clean Code](https://www.udemy.com/clean-code/) | |
| [Important Tips To Write Clean Code In C\#](http://www.c-sharpcorner.com/article/important-tips-to-write-clean-code-in-visual-studio/) | http://www.c-sharpcorner.com/article/important-tips-to-write-clean-code-in-visual-studio/ |
| [C\# BAD PRACTICES: Learn how to make a good code by bad example](https://www.codeproject.com/Articles/1083348/Csharp-BAD-PRACTICES-Learn-how-to-make-a-good-code) | https://www.codeproject.com/Articles/1083348/Csharp-BAD-PRACTICES-Learn-how-to-make-a-good-code |
| [Tips for writing better C\# code](https://www.pluralsight.com/guides/microsoft-net/tips-for-writing-better-c-code) | https://www.pluralsight.com/guides/microsoft-net/tips-for-writing-better-c-code |
| [C\# Developers: Learn the Art of Writing Clean Code](https://stackskills.com/p/clean-code) | https://stackskills.com/p/clean-code |
| [Tips for writing clean and best code in C\#](https://gooroo.io/GoorooTHINK/Article/17142/Tips-for-writing-clean-and-best-code-in-C/26389#.Wi53hTe1tPY) | https://gooroo.io/GoorooTHINK/Article/17142/Tips-for-writing-clean-and-best-code-in-C/26389\#.Wi53hTe1tPY |
| [5 Tips for Junior C\# Developers to Write Cleaner C\# Code](https://programmingwithmosh.com/csharp/5-tips-for-junior-c-developers-to-write-cleaner-c-code/) | https://programmingwithmosh.com/csharp/5-tips-for-junior-c-developers-to-write-cleaner-c-code/ |
| [Elegant Code vs.(?) Clean Code](https://blogs.encodo.ch/news/view_article.php?id=167) | https://blogs.encodo.ch/news/view_article.php?id=167 |
| [SOLID C\# Code: Smaller Methods == Clean Code?](http://rlacovara.blogspot.com.ng/2009/07/solid-c-code-smaller-methods-cleaner.html) | http://rlacovara.blogspot.com.ng/2009/07/solid-c-code-smaller-methods-cleaner.html |
| [Coding rules for clean and robust C\# code](http://not-at-school.blogspot.com.ng/2011/03/coding-rules-for-clean-and-robust-c.html) | http://not-at-school.blogspot.com.ng/2011/03/coding-rules-for-clean-and-robust-c.html |
| [How to Write Clean Code in C\# (Less With The Mess](https://www.freelancer.com/community/articles/how-to-write-clean-code-in-c-less-with-the-mess)) | https://www.freelancer.com/community/articles/how-to-write-clean-code-in-c-less-with-the-mess |

## JavaScript
----------

| Title | Link |
|-----------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------|
| [Clean Code JavaScript](https://github.com/ryanmcdermott/clean-code-javascript#clean-code-javascript) | |
| [JavaScript Clean Coding Best Practices](https://blog.risingstack.com/javascript-clean-coding-best-practices-node-js-at-scale/) | https://blog.risingstack.com/javascript-clean-coding-best-practices-node-js-at-scale/ |
| [Clean Code JavaScript with Ryan McDermott](https://devchat.tv/js-jabber/clean-code-javascript-with-ryan-mcdermott) | https://devchat.tv/js-jabber/clean-code-javascript-with-ryan-mcdermott |
| [JavaScript Best Practices](https://www.devbridge.com/articles/javascript-best-practices/) | https://www.devbridge.com/articles/javascript-best-practices/ |
| [Untangling Spaghetti Code: How to Write Maintainable JavaScript](https://www.sitepoint.com/write-maintainable-javascript/) | https://www.sitepoint.com/write-maintainable-javascript/ |
| [Introduction to Clean Javascript Design](https://svendvanderveken.wordpress.com/2012/01/04/introduction-to-clean-javascript-design/) | https://svendvanderveken.wordpress.com/2012/01/04/introduction-to-clean-javascript-design/ |
| [JavaScript — Make your Code Cleaner with Decorators](https://medium.com/front-end-hacking/javascript-make-your-code-cleaner-with-decorators-d34fc72af947) | https://medium.com/front-end-hacking/javascript-make-your-code-cleaner-with-decorators-d34fc72af947 |
| [Four Rules for Clean JavaScript](https://blog.cloudability.com/four-ways-to-keep-your-javascript-clean/) | https://blog.cloudability.com/four-ways-to-keep-your-javascript-clean/ |
| [How to write clean code for cascaded promises](https://hackernoon.com/how-to-write-clean-code-for-cascaded-promises-809de5b950fd) | https://hackernoon.com/how-to-write-clean-code-for-cascaded-promises-809de5b950fd |
| [The Design of Code: Organizing JavaScript](https://alistapart.com/article/the-design-of-code-organizing-javascript) | https://alistapart.com/article/the-design-of-code-organizing-javascript |
| [Clean Code vs. Dirty Code: React Best Practices Clean Code vs. Dirty Code: React Best Practices](http://americanexpress.io/clean-code-dirty-code/) | http://americanexpress.io/clean-code-dirty-code/ |
| [How functional programming helps me write clean code](https://praveer09.github.io/technology/2016/08/05/how-functional-programming-helps-me-write-clean-code/) | https://praveer09.github.io/technology/2016/08/05/how-functional-programming-helps-me-write-clean-code/ |
| [Clean Code](http://www.letscodejavascript.com/v3/episodes/live/182) | http://www.letscodejavascript.com/v3/episodes/live/182 |

## Ruby
-----

| Title | Link |
|--------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------|
| [Clean Code Ruby](https://github.com/uohzxela/clean-code-ruby) | https://github.com/uohzxela/clean-code-ruby |
| [Learn Clean Code](https://thoughtbot.com/upcase/clean-code) | https://thoughtbot.com/upcase/clean-code |
| [How to write a clean code in Ruby on Rails?](https://blog.railwaymen.org/how-to-write-a-clean-code-in-ruby-on-rails/) | https://blog.railwaymen.org/how-to-write-a-clean-code-in-ruby-on-rails/ |
| [Ruby/Rails Code Smell Basics 01](https://code.tutsplus.com/articles/rubyrails-code-smell-basics-01--cms-25261) | https://code.tutsplus.com/articles/rubyrails-code-smell-basics-01--cms-25261 |
| [Clean Code and The Art of Exception Handling](https://www.toptal.com/abap/clean-code-and-the-art-of-exception-handlin) | https://www.toptal.com/abap/clean-code-and-the-art-of-exception-handling |
| [5 Tips to Instantly Write Better Code in Ruby for Beginners](https://medium.com/learning-how-to-code/5-tips-to-write-better-ruby-code-for-beginners-7549bd0793b8) | https://medium.com/learning-how-to-code/5-tips-to-write-better-ruby-code-for-beginners-7549bd0793b8 |
| [5 Awesome Tools to Keep Your Rails Code Clean & Organized](https://codebrahma.com/5-awesome-tools-keep-rails-code-clean-organized/) | https://codebrahma.com/5-awesome-tools-keep-rails-code-clean-organized/ |
| [Clean Architecture in Ruby](https://medium.com/@fbzga/clean-architecture-in-ruby-7eb3cd0fc145) | https://medium.com/@fbzga/clean-architecture-in-ruby-7eb3cd0fc145 |
| [Keeping Your Rails App Clean](https://www.sitepoint.com/keeping-your-rails-app-clean/) | https://www.sitepoint.com/keeping-your-rails-app-clean/ | https://www.sitepoint.com/keeping-your-rails-app-clean/ |
| [Applying Clean Architecture to Ruby on Rails: First Impressions](https://theplainprogrammer.com/applying-clean-architecture-to-ruby-on-rails-first-impressions-3746ed0c9668) | https://theplainprogrammer.com/applying-clean-architecture-to-ruby-on-rails-first-impressions-3746ed0c9668 |
| [Using Services to Keep Your Rails Controllers Clean and DRY](https://www.engineyard.com/blog/keeping-your-rails-controllers-dry-with-services) | https://www.engineyard.com/blog/keeping-your-rails-controllers-dry-with-services |
| [Rails Clean Architecture](https://github.com/reedlaw/rails-clean-architecture) | https://github.com/reedlaw/rails-clean-architecture |
| [7 Patterns to Refactor Fat ActiveRecord Models](https://codeclimate.com/blog/7-ways-to-decompose-fat-activerecord-models/) | https://codeclimate.com/blog/7-ways-to-decompose-fat-activerecord-models/ |

## Python
------

| Title | Link |
|-------------------------------------------------------------------------------------|----------------------------------------------------------|
| [Writing Great Code](http://pythonforengineers.com/writing-great-code/) | http://pythonforengineers.com/writing-great-code/ |
| [How not to write Python](http://eikke.com/how-not-to-write-python-code/index.html) | http://eikke.com/how-not-to-write-python-code/index.html |
| [Clean Code in Python as Presented in EuroPython 2016](https://github.com/rmariano/Clean-code-in-Python)| https://github.com/rmariano/Clean-code-in-Python|
| [Writing clean, testable, high quality code in Python](https://www.ibm.com/developerworks/aix/library/au-cleancode/index.html)|https://www.ibm.com/developerworks/aix/library/au-cleancode/index.html|
| [Code Style](http://docs.python-guide.org/en/latest/writing/style/) |http://docs.python-guide.org/en/latest/writing/style/|
| [Writing Clean Code](http://www.chadvernon.com/blog/resources/python-scripting-for-maya-artists/writing-clean-code/) | http://www.chadvernon.com/blog/resources/python-scripting-for-maya-artists/writing-clean-code/|
| [Write Clean, Professional, Maintainable, Quality Code in Python](https://blog.jetbrains.com/pycharm/2014/06/write-clean-professional-maintainable-quality-code-in-python/)| https://blog.jetbrains.com/pycharm/2014/06/write-clean-professional-maintainable-quality-code-in-python/|
| [A Quick Primer on Writing Readable Python Code for New Developers](https://blog.hartleybrody.com/python-style-guide/)|https://blog.hartleybrody.com/python-style-guide/|
| [7 Golden Rules of Clean, Simple and Maintainable Code](http://shhetri.github.io/clean-code/)| http://shhetri.github.io/clean-code/|
| [Clean architectures in Python: a step-by-step example](http://blog.thedigitalcatonline.com/blog/2016/11/14/clean-architectures-in-python-a-step-by-step-example/) | http://blog.thedigitalcatonline.com/blog/2016/11/14/clean-architectures-in-python-a-step-by-step-example/|
| [Hey, your Python code is unreadable!](http://www.pgbovine.net/python-unreadable.htm) | http://www.pgbovine.net/python-unreadable.htm|
| [Making Clean Code a Part of Your Build Process (And More!)](https://www.caktusgroup.com/blog/2015/08/15/making-clean-code-part-your-build-process/) | https://www.caktusgroup.com/blog/2015/08/15/making-clean-code-part-your-build-process/|
| [Learn to Program: Crafting Quality Code](https://www.coursera.org/learn/program-code) | https://www.coursera.org/learn/program-code|

## Books
-----

| Title | Author | Link |
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------|------------------------------------------------------------------------------------|
| [Code Complete: A Practical Handbook of Software Construction, Second Edition 2nd Edition](https://www.amazon.com/gp/product/0735619670) | Steve McConnell | https://www.amazon.com/gp/product/0735619670 |
| [The Clean Coder](https://www.amazon.com/Clean-Coder-Conduct-Professional-Programmers/dp/0137081073/) | Robert C. Martin | https://www.amazon.com/Clean-Coder-Conduct-Professional-Programmers/dp/0137081073/ |
| [Clean Code: A Handbook of Agile Software Craftsmanship 1st Editio](https://www.amazon.com/gp/product/0132350882/ref=as_li_tl?camp=1789&creative=9325&creativeASIN=0132350882&ie=UTF8&linkCode=as2&linkId=062abecd449cf2c89ebceca010ec9c45)n | Robert C. Martin | https://www.amazon.com/Clean-Code-Handbook-Software-Craftsmanship/dp/0132350882/ |
| [The Pragmatic Programmer: From Journeyman to Master 1st Edition](https://www.amazon.com/Pragmatic-Programmer-Journeyman-Master/dp/020161622X) | Andrew Hunt, David Thoms | https://www.amazon.com/Pragmatic-Programmer-Journeyman-Master/dp/020161622X |
| [Craft of Programming 1st ed. Edition](https://www.amazon.com/Coders-Work-Reflections-Craft-Programming/dp/1430219483/) | Peter Seibel | https://www.amazon.com/Coders-Work-Reflections-Craft-Programming/dp/1430219483/ |
| [Don't Make Me Think, Revisited: A Common Sense Approach to Web Usability (3rd Edition) (Voices That Matter) 3rd Edition](https://www.amazon.com/Dont-Make-Think-Revisited-Usability/dp/0321965515/) | Steve Krug | https://www.amazon.com/Dont-Make-Think-Revisited-Usability/dp/0321965515/ |