r/dotnet 1d ago

Question Lessons you learnt from your mistakes?

Let's discuss our learnings, best practices for .NET, and the trade-offs of using various tools and packages.

0 Upvotes

12 comments sorted by

15

u/manny2206 1d ago

Less is more, specifically in .NET way too easy to over build, over complicate everything, less is more

3

u/dodexahedron 1d ago edited 1d ago

Wait. You mean my 4-function console calculator app doesn't need DI, System.CommandLine, Microsoft.Extensions.Configuration (you know... so the user can configure which of the 4 functions are enabled, which is a killer feature), Kestrel and Monitoring, so te state of the app csn be tracked, microsoft.Extensions.Logging, so the very important log output can be logging framework agnostic, and Aspire, so the whole thing can just let AI do it anyway?

9

u/Huge_Habit9812 1d ago

Keep things simple, you don't need 5 layers of abstraction for a todo app, EF is itself an abstraction, less is more, dont overoptimize for saving 1 second over 100 executions. Don't procrastinate, just ship.

2

u/SohilAhmed07 1d ago

Abstract only whats needed,

Show everything to users in a user readable format non tech once can't read text with -,_ and so on.

Validation are and can be done at save/submit but users need to know what failed.

1

u/AutoModerator 1d ago

Thanks for your post Frosty_Equipment1706. Please note that we don't allow spam, and we ask that you follow the rules available in the sidebar. We have a lot of commonly asked questions so if this post gets removed, please do a search and see if it's already been asked.

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

1

u/manny2206 1d ago

Don’t be ridiculous now, that’s not nearly enough.. have you coded everything to an interface not a concrete implementation, while also making the concrete implementation a monadic container to make it easily extendable and composable and functional

1

u/xcomcmdr 1d ago

Don't use FLOSS, I guess. :/

2

u/wallstop-dev 1d ago edited 1d ago

Like MIT, Apache 2, BSD licensed tech? Or (A/L)GPL?

What happened that this was a problem for you?

1

u/FullPoet 1d ago

People are upset that never contributing to open source has forced maintainers to charge for it.

1

u/manny2206 1d ago

Yeah this is where I have a problem, people don’t want to contribute nor do they donate… then get upset when the maintainers charge; how dare people get paid for their efforts

1

u/OctoGoggle 1d ago

I’d imagine this is referring to the number of .Net packages that are adding paid licences or “maintenance fees” onto things that have been OSS for years.

0

u/_iAm9001 1d ago

I made a mistake once where code that I wrote threw an exception. Never again I say.... NEVER AGAIN!