Hacker News new | past | comments | ask | show | jobs | submit login

Go saved me from EntityFramework.

About 8 years ago, I was writing some app in C#, and the recognised way of doing things was EntityFramework. I duly wrote a bunch of code around EF, only to notice that sometimes it wasn't populating with the data correctly. Digging into the documentation, I found that EF didn't actually do lazy loading properly, and that if you really wanted to be sure that the data was populated, you should call a method to check that the property you wanted had been populated, and if not, call another method to populate it.

I threw Windows in the bin after that. I uninstalled Windows, installed Linux, and started looking around for another language to code in. I found Go. It's total lack of magic, utter transparency and attitude of simplicity made complete sense to me.

<10 years later I'm still happily coding in Go. Thanks guys, this is awesome!






How does Go solves your EF issue? Or, what would you use to write that app today in Go?

Sounds like throwing the baby out with the bathwater.

Today I have to write the SQL, and pull the results of the query into a struct, which implements relevant interfaces. It's more code to write, but it's simple, and straightforward, and it does exactly what it says it does, and no more. It's easier to write and understand, and trust. Most of all, trust.

Entity Framework is just an ORM. Every ORM has their quirks. It's unclear why you ditch a whole language, and even the OS just because you didn't enjoy using an ORM.

If you want to write pure SQL and pull the results into a struct with interfaces, you could do that in C# also.


It became a symbol for the entire C# coding attitude/worldview/paradigm at the time. I lost it with EF because it just didn't do what it said it did, and all the documentation lied about what it was actually doing. It became the straw that broke the camel's back, the poster child for everything that was wrong with .Net and C# (at the time - I gather things have got better since).

Go became the antidote, the "way things should be", and moving from Win/C# to Linux/Go was eye-opening and very healing.

YMMV. I'm totally happy I found Go right then, when I needed it




Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact

Search: