read.engineerscodex.com/p/4-software-design-principles-i-learned/comment/54609936

Preview meta tags from the read.engineerscodex.com website.

Linked Hostnames

2

Thumbnail

Search Engine Appearance

Google

https://read.engineerscodex.com/p/4-software-design-principles-i-learned/comment/54609936

Josh on Engineer’s Codex

Not bad ideas here but I think there's some issues that need addressed. Don't confuse DRY with bad design. The idea behind DRY is to abstract and encapsulate in case you need code later, not create bad design trying to make the perfect function or class. The example provided actually breaks SOLID principles so it should never happen if DRY is applied correctly. You should also never setup local servers in unit tests. I don't care what Google says. Google has hundreds of developers that do nothing more than write internal tooling. Have you seen a large CI/CD pipeline with in-memory servers running? It can take up to 20 minutes for a deployment depending on the size of the project. Especially if you're a monorepo team taking advantage of GitOps, in-memory anything will be a nightmare to handle.



Bing

Josh on Engineer’s Codex

https://read.engineerscodex.com/p/4-software-design-principles-i-learned/comment/54609936

Not bad ideas here but I think there's some issues that need addressed. Don't confuse DRY with bad design. The idea behind DRY is to abstract and encapsulate in case you need code later, not create bad design trying to make the perfect function or class. The example provided actually breaks SOLID principles so it should never happen if DRY is applied correctly. You should also never setup local servers in unit tests. I don't care what Google says. Google has hundreds of developers that do nothing more than write internal tooling. Have you seen a large CI/CD pipeline with in-memory servers running? It can take up to 20 minutes for a deployment depending on the size of the project. Especially if you're a monorepo team taking advantage of GitOps, in-memory anything will be a nightmare to handle.



DuckDuckGo

https://read.engineerscodex.com/p/4-software-design-principles-i-learned/comment/54609936

Josh on Engineer’s Codex

Not bad ideas here but I think there's some issues that need addressed. Don't confuse DRY with bad design. The idea behind DRY is to abstract and encapsulate in case you need code later, not create bad design trying to make the perfect function or class. The example provided actually breaks SOLID principles so it should never happen if DRY is applied correctly. You should also never setup local servers in unit tests. I don't care what Google says. Google has hundreds of developers that do nothing more than write internal tooling. Have you seen a large CI/CD pipeline with in-memory servers running? It can take up to 20 minutes for a deployment depending on the size of the project. Especially if you're a monorepo team taking advantage of GitOps, in-memory anything will be a nightmare to handle.

  • General Meta Tags

    17
    • title
      Comments - 4 Software Design Principles I Learned the Hard Way
    • title
    • title
    • title
    • title
  • Open Graph Meta Tags

    7
    • og:url
      https://read.engineerscodex.com/p/4-software-design-principles-i-learned/comment/54609936
    • og:image
      https://substackcdn.com/image/fetch/$s_!iq1T!,f_auto,q_auto:best,fl_progressive:steep/https%3A%2F%2Fengineercodex.substack.com%2Ftwitter%2Fsubscribe-card.jpg%3Fv%3D-769361568%26version%3D9
    • og:type
      article
    • og:title
      Josh on Engineer’s Codex
    • og:description
      Not bad ideas here but I think there's some issues that need addressed. Don't confuse DRY with bad design. The idea behind DRY is to abstract and encapsulate in case you need code later, not create bad design trying to make the perfect function or class. The example provided actually breaks SOLID principles so it should never happen if DRY is applied correctly. You should also never setup local servers in unit tests. I don't care what Google says. Google has hundreds of developers that do nothing more than write internal tooling. Have you seen a large CI/CD pipeline with in-memory servers running? It can take up to 20 minutes for a deployment depending on the size of the project. Especially if you're a monorepo team taking advantage of GitOps, in-memory anything will be a nightmare to handle.
  • Twitter Meta Tags

    8
    • twitter:image
      https://substackcdn.com/image/fetch/$s_!iq1T!,f_auto,q_auto:best,fl_progressive:steep/https%3A%2F%2Fengineercodex.substack.com%2Ftwitter%2Fsubscribe-card.jpg%3Fv%3D-769361568%26version%3D9
    • twitter:card
      summary_large_image
    • twitter:label1
      Likes
    • twitter:data1
      7
    • twitter:label2
      Replies
  • Link Tags

    31
    • alternate
      /feed
    • apple-touch-icon
      https://substackcdn.com/image/fetch/$s_!on6a!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6df5c8bb-6896-426e-92ae-aef74c5cff0a%2Fapple-touch-icon-57x57.png
    • apple-touch-icon
      https://substackcdn.com/image/fetch/$s_!SKfc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6df5c8bb-6896-426e-92ae-aef74c5cff0a%2Fapple-touch-icon-60x60.png
    • apple-touch-icon
      https://substackcdn.com/image/fetch/$s_!zC2k!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6df5c8bb-6896-426e-92ae-aef74c5cff0a%2Fapple-touch-icon-72x72.png
    • apple-touch-icon
      https://substackcdn.com/image/fetch/$s_!V0UK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6df5c8bb-6896-426e-92ae-aef74c5cff0a%2Fapple-touch-icon-76x76.png

Links

13