106 Stories To Learn About Clean Code

Written by learn | Published 2023/04/12
Tech Story Tags: clean-code | learn | learn-clean-code | programming | web-monetization | refactoring | pixel-face | software-development

TLDRvia the TL;DR App

Let's learn about Clean Code via these 106 free stories. They are ordered by most time reading created on HackerNoon. Visit the /Learn Repo to find the most read stories about any technology.

1. A Deeper Look into Clean Architecture: Flutter vs Kotlin

Flutter app vs Kotlin app. MVI Clean Code Freezd and Riverpod

2. A Hacker Tried to Steal $566M by Exploiting a Code Smell, Here's How

Yesterday, 2022 Oct 7th one of the larger blockchains had to be halted. This news was shocking since most blockchains are decentralized by definition.

3. How to Find the Stinky Parts of Your Code [Part XVI]

The most beautiful code, the most beautiful functions, and the most beautiful programs are sometimes not there at all.

4. Hack Your Technical Debt: The 1% Better Every Day Challenge

It's easy for technical debt to grow in our codebase. Commit to spending 20 minutes a day for 30 days to tackling technical debt and get 1% better every day.

5. How to Find The Stinky Parts of Your Code [Part XII]

More code smells for your reading pleasure

6. Is Dry Code Still Relevant Today?

7. Principles of a Clean Relational Database

The article describes how a relational database should be designed to properly work in OLTP mode.

8. How too Much Love for Your Code Can Hurt the Product

A story about how important it is to keep a smooth balance between complexity and simplicity while building software.

9. How to Find the Stinky Parts of Your Code [Part XXII]

Most of these smells are just hints of something that might be wrong. They are not required fixed per se… (You should look into it though.)

10. Decouple Your Go Components by Leveraging Mediator and Event Aggregator Patterns

Decouple your Go components by leveraging Mediator and Event Aggregator patterns. Learn how to use open-source mediator / event aggregator library called mob.

11. NO!! GitHub Copilot Will NOT Steal Your Job

GitHub Copilot is not a threat for great software designers. Just a shortcut for lazy ones.

12. Adopting the Repository Pattern for Enhanced Backend Development With FastAPI

In this article, we'll cover the benefits of utilizing the repository pattern in building backend systems with FastAPI.

13. Using Kotlin Extension Functions: The Good, the Bad, and the Ugly

Extension functions allow you to natively implement the "decorator" pattern. There are best practices for using them.

14. How to Find the Stinky Parts of Your Code [Part XX]: We have Reached 100!

We reached the 100th code smell!

15. Using Guard Clauses to Clean Up Your Conditionals [A How-To Guide]

One of the first techniques developers learn is the if/else statement. For obvious reasons if/else statements are a primary way to create logic trees. This is where we handle calculations differently depending on the input variables. However, complex and nested if/else statements become a cognitive burden to reason about. Therefore, it can be hard for the next developer to understand quickly.

16. Code Trashing Symptom

There are a set of skills and qualities which make the ideal software developer we are all searching to be or searching for to employ. However, right now I am going to emphasize the importance of a quality that is mostly found in senior developers.

17. How to Find the Stinky Parts of Your Code [Part XXI]

Code smells are a classic. It smells because there are likely many instances where it could be edited or improved.

18. Software Engineer Maxi Contieri on writing about “boring” fundamentals

Maxi is a software engineer and teacher from Argentina. Learn about this talented HackerNoon Writer!

19. How to Find the Stinky Parts of Your Code [Part XXVII]

Identifying smells in your code and debugging the easy way.

20. Step by Step Wordle Creation With Codex AI

I transcribe the instructions to create a working wordle using natural language.

21. Learn How To Use Git Submodules on Practice

In this post we learn about concept of Submodules in git by actually troubleshooting a case of embedding multiple git repositories

22. Code like You're Building a Lego Castle

The article compares coding to building a castle with Legos and emphasizes the importance of following best practices to avoid mistakes and build a sturdy code.

23. Making Your Code Look Pretty

When you are new to programming, you’re focused on making your code work—not on making it look pretty.

24. The Clean Code Book for JavaScript Developers: A Quick Summary

This blog post summarizes the book “Clean Code” written by Robert Martin on how to write a readable and maintainable code.

25. Write Cleaner Code with My Top 5 JavaScript Hacks

26. I Wrote More than 90 Articles in 2021 and Here is What I Learned in a Nutshell

This article summarizes my experience as a writer during the pandemic year 2021

27. Refactoring: Remove Setters #CodeSmell

Warning: Setters Considered Smelly

28. The Code Is the Documentation; a Paradox That Rings True

The first time I heard someone say: “the code is the documentation”, I thought it sounded completely wrong, like a lazy excuse for not producing documentation.

29. The Mighty App Developer vs a Pesky Bug

A year ago, I, the almighty mobile application developer, was brought down by a pesky bug that was causing my precious creation to crash frequently for users.

30. How to Find The Stinky Parts of Your Code [Part XV]

We see several symptoms and situations that make us doubt the quality of our development. Most of these smells are just hints of something that might be wrong.

31. Y2K22: The Problem that Caused Millions of Emails Worldwide to go Undelivered

The Y2K22 Bug is the consequence o very bad software design

32. Why You Must Start Refactoring Your Codebase Today

What is refactoring? Why do we go through the trouble of improving code that works?

33. Keeping Your Code in Monorepo -Pros and Cons

34. The Lack of Internal State and How it Makes Your Classes Easier to Test and Refactor

You likely often hear that test-driven development (TDD) or just writing tests can make your code better.

35. Why You Should Always Avoid Encoding Type Into Names

The Rule: When naming a variable, don't encode it's type into its name, even in a dynamically typed language.

36. 5 Ways to Prevent Server Hardware Failure

Use mature tools to make mature software

37. Creating a Strong Code Quality Culture in Your Organization

Learn how to build a culture of code quality to improve maintainability, scalability, and efficiency, and stay ahead of the competition.

38. Continuous Integration (CI) Branching Strategies: What You Need to Know

When you have multiple developers working on the same code, you may face a lot of challenges when merging. That's where branches come in.

39. How to Set Up a Team's Systems and Culture for Strong Code Reviews

All software companies must take an intentional and structured approach to code reviews. Here are some tips on how to do that.

40. The Myths and Realities of Bug-Free Code

41. TDD Conference 2021: Opening Ceremony by Alex Bunardzic

Alex is a software engineering veteran with over 30 years of hands-on professional experience. He is a staunch advocate of Extreme Programming and TDD.

42. Why is This So Hard?

This article explores what good code is and shares some tenets of good structure.

43. Less Dirty Code

Clean Code is a Lie and Nobody Writes it.

44. The Typescript Quirks That Pushed me to Create a New Dependency Injection Library

The Typescript quirks that pushed me to reinvent the wheel by creating a new-brand Dependency Injection library for Javascript.

45. How to Find the Stinky Parts of Your Code [Part XXX]

Most of these smells are just hints of something that might be wrong. Therefore, they are not required to be fixed per se… (You should look into it, though.)

46. How to Find the Stinky Parts of Your Code [Part XXIII]

It smells because there are likely many instances where it could be edited or improved.

47. 4 Ways Software Engineers Organize Their TODOs

TODOs are a tricky subject for developers. Many codebases are guilty of having TODOs linger around while nobody knows who’s responsible for a TODO or even has the required context to tackle it. Yet, should we feel ashamed for our lingering TODOs?

48. How to Find the Stinky Parts of Your Code [Part XXIV]

Most of these smells are just hints of something that might be wrong. They are not required fixed per se… (You should look into it though.)

49. How to Find the Stinky Parts of Your Code [Part XVIII]

More code smells incoming

50. How to Write Clean, Well Maintained Code Using a Static Analyzer and PMD

A static analyzer can reduce the possibility of bugs, such as when you accidentally overwrite a variable with another value.

51. Build Scalable Products by Coding for Future Feature Expansion

How to build scalable products by coding for future feature expansion & code deprecation while maintaining a simplified user interface for complex functionality

52. How to Find The Stinky Parts of Your Code [Part XIII]

We see several symptoms and situations that make us doubt the quality of our development.

53. How to Find the Stinky Parts of Your Code [Part XXVI]

How to debug your code the easy way

54. How to Find the Stinky Parts of Your Code [Part XXXII]

It smells because there are likely many instances where it could be edited or improved. Most of these smells are just hints of something that might be wrong.

55. How to Find the Stinky Parts of Your Code [Part XIX]

New code smells arriving!

56. Let's Stop Calling them 'Bugs' - Software Quality is Our Responsibility

The term Bug sounds like an excuse out of our scope infecting our systems. It is not. Software quality is under our control. It is our responsibility to deliver

57. Using A Switch Statement in Python

Yes, you read that right. If you have been coding for a while and if Python is not the first programming language that you started with, then you definitely know what a Switch statement is, and appreciate how flawless it is, when you need to factor in multiple conditions/cases for a control flow.

58. How to Find the Stinky Parts of Your Code [Part XXXIII]

Most of these smells are just hints of something that might be wrong. Therefore, they are not required to be fixed per se… (You should look into it, though.)

59. 6 Examples to Differentiate Desirable Technical Debts From Undesirable Ones

Technical Debts have been in the center of software engineers debate for quite some time. Not only its analogy to financial terms has been discussed, but also the different contexts and aspects a debt contains.

60. How to Find the Stinky Parts of Your Code [Part XXV]

The smell of code smells is a classic, but you should look at it more carefully if you want to improve your code smell.

61. How to Avoid Code Smells - A NDepend Tutorial

.NET developers can evaluate and visualize the codebase using the robust static analysis tool NDepend. It aids programmers in understanding the quality and main

62. The Meaning, Purpose and Benefits of Code Refactoring

In the article, we cover the topic of code refactoring and discuss the value of the process.

63. How to Find the Stinky Parts of Your Code [Part XXXI]

Beginners are afraid to remove code. And many seniors too.

64. Untangling Heavily Nested Python Code

Reducing the nesting level of code by applying a guard clause.

65. How to Find the Stinky Parts of Your Code [Part XXVIII]

Learn to fish out code smells and debug with ease.

66. To Err is Human, to Test is Divine

We are humans, we forget, we make mistakes, we change things, ideas; This happens when we work solo, imagine when you are in a team!

67. Hack Your Technical Debt: The 1% Better Every Day Challenge

It's easy for technical debt to grow in our codebase. Commit to spending 20 minutes a day for 30 days to tackling technical debt and get 1% better every day.

68. Top 10 C++ Open Source Project Bugs Found in 2019

Another year is drawing to an end, and it's a perfect time to make yourself a cup of coffee and reread the reviews of bugs collected across open-source projects over this year. This would take quite a while, of course, so we prepared this article to make it easier for you. Today we'll be recalling the most interesting dark spots that we came across in open-source C/C++ projects in 2019.

69. How Clean Code is Lowering the Quality of Developers

I believe that software development has a problem with mis-promotion, and over-promotion of "Clean Code".

70. 3 Things Coding And Prose Writing Have In Common According To Cory House

Does your code read like a book?

71. Track & Manage Your Technical Debt To Make Better Strategic Decisions

If you are looking for a tool to start managing technical debt this article will help you make the right decision.

72. Understand the Intent of Patterns And Principles Before Applying Them

TL;DR;

73. 100 Pieces of Programming Advice from the Book Clean Code by Robert Martin

Clean Code by Robert C. Martin is the most recommended programming book of all time. There’s a good reason why.

74. 4 Simple Habits For Engineering Teams To Beat Technical Debt

In the previous article, we looked at the macro trends that make tech debt inevitable. However, even though tech debt is a fact of life, technical bankruptcy doesn't have to be. So this time, let's look at the methods we can employ to avoid technical bankruptcy and save everyone a lot of grief, time, and money.

75. Top Coding Principles To Live By

I want to share basic concepts on how to write robust and good maintainable code. They will allow you to write better and more maintainable code.

76. 6 Awesome Tips To Help You With CSS Selectors

Choosing the right CSS selectors can be a lot of trouble and there’s so much information out there that it can even be a little overwhelming at times. Words like “combinators” and “specificity” get thrown around a lot, you read how greater specificity increases efficiency but then how ID’s (the most specific) should be avoided like the plague, according to some. What’s a poor coder to do as he navigates the cascading landscape of style sheets? Hopefully by the end of this I will have been able to outline some good practices, and provide enough additional resources, to clear this issue up for good.

77. Brace Yourself: Data Cleanup is Coming

It goes without saying that data is the cornerstone of any data analysis.

78. Writing clean code: Naming

Code is read more than it is written. To write code we are constantly reading it. Here are 8 rules for writing cleaner code based by choosing better names.

79. We Should Get Rid of "Hello, World!" Forever💩

Every tutorial I've read for the last 30 years starts with the infamous 'Hello World' example. This could be one of the reasons we write crappy software.

80. How to Find The Stinky Parts of Your Code (Part IX)

Yet more code smells? Aren't them enough?

81. Using Black To Auto Format Your Python

How to stop worrying and embrace Auto Formatting in your python code.

82. Building a Wordle Game Using Test-Driven Development in 25 Minutes

Developing a complete word game is very easy with TDD

83. How To Fail A Coding Interview

A parable about missed deadlines and over-engineering

84. Implement This One Cultural Characteristic to Build A Healthy Codebase

It’s easy to pay lip service to company culture. But few companies actively consider those few cultural characteristics that make a meaningful difference to performance—because that’s the hard part.

85. How to Find the Stinky Parts of Your Code (Part II)

There are more code smells. Let’s keep changing the aromas. We see several symptoms and situations that make us doubt the quality of our development. Let's look at some possible solutions.

86. 40+ Thought-Provoking Software Engineering Quotes

Sometimes a short thought can bring amazing ideas. There are some great quotes I’ve been collecting. I use them as inspiration or motto for some articles.

87. Functional Programming Paradigm in JavaScript

There’s nothing new about Functional Programming. Functional Programming has been around for much longer than OOP as it dates back to the 60s.

88. Helpful Tips for Writing Clean Code

In this short, but nonetheless useful article, I have summarized the most beneficial tips for writing clean code. These rules are independent of the language you use and are invaluable for both beginners and experienced programmers.

89. How to Name Things Properly

Perhaps it is not news to everyone that there are two hard things in Computer Science.

90. How To Create a Python Data Engineering Project with a Pipeline Pattern

In this article, we cover how to use pipeline patterns in python data engineering projects. Create a functional pipeline, install fastcore, and other steps.

91. Leveraging Google's Pinject to Write Loosely Coupled Python Code

Dependency Injection(DI) is a set of software design principles that enable engineers to develop loosely coupled code. This stack overflow post is the best ELI5 description of DI:

92. Maxi Contieri on Clean Code, Refactoring, and Test-Driven Development

I blog about clean code, refactoring and TDD. I have been working on the industry for the past 25 years

93. How to Find The Stinky Parts of Your Code [Part XIV]

More smells on the way.

94. How to Get Rid of Annoying IFs Forever

Why the first instruction we learn to program should be the last to use.

95. 400+ Thought-Provoking Software Engineering Quotes

The most complete curated collection of software and programming quotes

96. How to Find The Stinky Parts of Your Code (Part X)

More code smells. No joke. We see several symptoms and situations that make us doubt the quality of our development.

97. How to Find The Stinky Parts of Your Code (Part VIII)

Yet more code smells? Plenty of!

98. How to Find the Stinky Parts of Your Code (Part I)

The code smells bad. Let’s see how to change the aromas. In this series, we will see several symptoms and situations that make us doubt the quality of our developments. We will present possible solutions. Most of these smells are just hints of something that might be wrong. They are not rigid rules.

99. How To Write Decoupled Code with MediatR: The Mediator Pattern

I recently wrote a blog post introducing some of my favourite NuGet packages: My Top 4 NuGet Packages for ASP.NET Core. In that post, I briefly introduced a package called MediatR. Today, I will dedicate this post to revisiting MediatR in further detail.

100. How to Find the Stinky Parts of Your Code (Part V)

Are we done on code smells? Probably never!

101. How to Find The Stinky Parts of Your Code (Part VII)

We see several symptoms and situations that make us doubt the quality of our development.

102. 📚 Android Components Architecture in a Modular Word

Marvel kotlin sample application using android components architecture in a modular project

103. How to Find The Stinky Parts of Your Code [Part XI]

This another code smell chapter

104. How to Find the Stinky Parts of Your Code (Part III)

There are yet more code smells. Let’s keep changing the aromas. We see several symptoms and situations that make us doubt the quality of our development.

105. How to Find The Stinky Parts of Your Code (Part VI)

Are we tired with code smells? Not yet!

106. The Dirty Code Problem: Improve Your Game with Good Naming Practices

The Rule: Whenever you name a variable, function, or class, ask if it is concise, honest, expressive, and complete.

Thank you for checking out the 106 most read stories about Clean Code on HackerNoon.

Visit the /Learn Repo to find the most read stories about any technology.


Written by learn | Lets geek out. The HackerNoon library is now ranked by reading time created. Start learning by what others read most.
Published by HackerNoon on 2023/04/12