DEV Community

Cover image for CoDe SmElL 159 - mIxEd_cASe
Maxi Contieri
Maxi Contieri

Posted on • Originally published at maximilianocontieri.com

2

CoDe SmElL 159 - mIxEd_cASe

Serious development is done by many different people. We have to start agreeing.

TL;DR: Don't mix different case conversions

Problems

  • Readability

  • Maintainability

Solutions

  1. Choose a case standard

  2. Hold on to it

Context

When different people make software together they might have personal or cultural differences.

Some prefer camelCase🐫, others snake_case🐍, MACRO_CASE🗣️, and many others.

Code should be straightforward and readable.

Sample Code

Wrong

{
    "id": 2,
    "userId": 666, 
    "accountNumber": "12345-12345-12345",
    "UPDATED_AT": "2022-01-07T02:23:41.305Z",
    "created_at": "2019-01-07T02:23:41.305Z",
    "deleted at": "2022-01-07T02:23:41.305Z"
}
Enter fullscreen mode Exit fullscreen mode

Right

{
    "id": 2,
    "userId": 666, 
    "accountNumber": "12345-12345-12345",
    "updatedAt": "2022-01-07T02:23:41.305Z",
    "createdAt": "2019-01-07T02:23:41.305Z",
    "deletedAt": "2022-01-07T02:23:41.305Z"
  // This doesn't mean THIS standard is the right one
}
Enter fullscreen mode Exit fullscreen mode

Detection

[X] Automatic

We can tell our linters about our company's broad naming standards and enforce them.

Whenever new people arrive at the organization, an automated test should politely ask him/her/.. to change the code.

Exceptions

Whenever we need to interact with out of our scope code, we should use the client's standards, not ours.

Tags

  • Naming

Conclusion

Dealing with standards is easy.

We need to enforce them.

Relations

More Info

All naming conventions

Disclaimer

Code Smells are just my opinion.

Credits

Photo by Wolfgang Hasselmann on Unsplash


If you have too many special cases, you are doing it wrong.

Craig Zerouni


This article is part of the CodeSmell Series.

Image of Timescale

🚀 pgai Vectorizer: SQLAlchemy and LiteLLM Make Vector Search Simple

We built pgai Vectorizer to simplify embedding management for AI applications—without needing a separate database or complex infrastructure. Since launch, developers have created over 3,000 vectorizers on Timescale Cloud, with many more self-hosted.

Read more →

Top comments (0)

The best way to debug slow web pages cover image

The best way to debug slow web pages

Tools like Page Speed Insights and Google Lighthouse are great for providing advice for front end performance issues. But what these tools can’t do, is evaluate performance across your entire stack of distributed services and applications.

Watch video