Live data from Hacker News

The best Go framework: no framework?

threedots.tech

131–140 of 185 posts

Re: The best Go framework: no framework?

#131
post #117

Earlier quoted context omitted.

That’s because your premise is weak. You argue that Django is the wrong choice for lots of projects but the counter factual is that our job is to figure that out. We have to choose the lesser evil. It’s not convincing to just call everyone stupid. Everything is a trade off. You have no idea what those could be in any particular situation so that’s why your whole argument falls apart Then you focus on construction and…

This reminds me of an debate I was having with another dev who said python was "pointless" and that there was a better, more elegant way to do things. I asked him what is a better way to quickly/easily stand up microservices/apps for clients (90% of my job), if not Django (or Flask/FastAPI, etc). His response was "django is great, but it could have been written better and in another language" ... well, sure, great...…

Yeah, it’s a smart guy with a bad idea. Story of all of us in HN!

There’s always a better way to do things but we live in a fallen world. Some bullshit will always arise to make your life more complicated.

It’s like you said, when you hit whatever limitation, you’ll have to figure out a way around it.

Re: The best Go framework: no framework?

#132
post #23

I couldn't disagree with this any harder. I'm a Java BE Engineer who joined a Go shop, so I have a direct comparison. Both are microservice environments for products of similar complexity. It is insane to me how much less productive Go is for your average microservice enterprise environment. I'm sure it's great for systems programming or tool development. I like the simplicity. But the ecosystem is borderline useless…

I expected to see some juicy golang bashing from someone used to sane error handling, pattern matching, and powerful collections libraries. But complaining about "GRPC and Protobuf are overengineered and underdocumented" just doesn't make sense to me.

Those things were basically first implemented in Java. We could argue about subtle differences between Avro and Protobuf but I'm not aware of any credible competitor to gRPC on the JVM in the last 10 years. Thrift and Avro RPC libraries died out years ago, Akka clusters are rather exotic.

Re: The best Go framework: no framework?

#133
The main beef I have with frameworks isn't actually with the framework. It's teams fork lifting / re-writing to the "next best thing" to fix a problem instead of polishing what they have.

You wind up with a perpetual revolving door of immature implementations instead of incrementally improving something with known flaws.

Re: The best Go framework: no framework?

#134
post #51

Earlier quoted context omitted.

Yup, I was the author of go-micro. It was very much a standalone Go framework aka common interfaces grouped together for distributed systems development. By using interfaces they effectively became pluggable abstractions for infrastructure. Unfortunately I don't think a Go library alone solves the problems I was trying to solve so it got merged into Micro which is platform that includes a CLI, API, Runtime, etc. It p…

What if any is the relationship between https://m3o.com/ and https://micro.dev/ ?

We used Micro to build and offer Micro services on M3O. Every API to you see there is powered by the open source equivalent Micro service here https://github.com/micro/services

Re: The best Go framework: no framework?

#135
post #13

Earlier quoted context omitted.

However maybe also learn to love a language that embraces them at the same time so you don't come away with a poor experience because of only trying a language that has poor frameworks (Go, JS/TS, etc). Definitely try something like Python + Django, Ruby + Rails, Java/Kotlin + Spring to get a feel for what a mature framework can really do. Then if you find you still don't like frameworks and the style of programming…

Agreed and well put. Lack of a decent Rails/Django option for JS/TS is part of the issue IMO, since that ecosystem is so popular atm. I also wonder if you have to get burned a few times rolling your own and that's just part of the journey :)

I’m really surprised there isn’t a solid batteries loaded framework in JS. There’s just no way I could use node + express over Rails / Django

Re: The best Go framework: no framework?

#136

Earlier quoted context omitted.

Spring Boot is actually a VERY easy to use framework. So much so that Netflix shifted out of writing their own libraries to using Spring boot. For example, the code below is a complete Spring Boot application with all of the default configuration in place. It will take just a couple of minutes to have this running and it provides quite a lot of features under the hood - which you don't need to worry about. @SpringBoo…

I write Spring full time these days. You may have Stockholm at this point (like me), but Spring is terrible in two areas: - when things go wrong - onboarding newer / more junior devs For point 1, there are so many layers of abstraction and 20 page stack traces that you could fill an entire log buffer with just one NPE... Kidding aside, I can't tell you how many times I've wrestled with the auto-configure magic. The r…

I'm a competent dev in a dozen languages including Java, I am not a professional Java developer. I've had several instances where I've had to work on a project using Spring and every time it was a freaking nightmare. Not because I am not capable, not because it didn't work, because Spring took everything and shoved it behind 15 layers of abstraction and told me to figure out the magic incantations to get it to do what I wanted. When I tried to figure out how Spring actually worked it was like trying to figure out a whole new language.

My contention is Spring is great for those who have been initiated into it's ways and like to be the members of the Martian priesthood that sing canticles to the Omnissiah, but for those who want to understand what is going on and why Spring is anathema.

Re: The best Go framework: no framework?

#137

For junior developers reading this: frameworks are great, learn to love them, they will save you much time and stress when shipping real products.

For junior developers reading this: frameworks are useful if the tradeoffs they make are right for your current situation. They are good tools when used wisely. However, developers who are heavily invested in a specific framework will often try to sell them as "great" but recognize that their investment biases them and may result in "when all you have is a hammer, everything looks like a nail" syndrome, causing these one-trick ponies to advocate their favored framework even in situations where other frameworks or even no framework is a more sensible solution.

Re: The best Go framework: no framework?

#138

Go having a standard library that is so good for building simple services is what sets it aside from all the other languages that have come out in the last while in the same space. It has a great collection of community libraries but I so rarely need to fall back to them as I can usually cobble together whatever I need to pretty easily just using the standard library. It makes it easy to get started on a project as t…

Having such a large standard library to me smells like you can't build one as nice as that with the language. Since it missed generics until recently I can figure out why the STD library is that good and large and why there weren't that much framework. I've used Java before it had generics too.

Re: The best Go framework: no framework?

#139
post #23

I couldn't disagree with this any harder. I'm a Java BE Engineer who joined a Go shop, so I have a direct comparison. Both are microservice environments for products of similar complexity. It is insane to me how much less productive Go is for your average microservice enterprise environment. I'm sure it's great for systems programming or tool development. I like the simplicity. But the ecosystem is borderline useless…

There's no word as meaningless as "enterprise-y".

It means literally nothing. A huge company making lots of money has no relation to the quality of its code, processes or tools.

That's not only true for non-tech companies, but even the heavily tech ones whose all products are software.

Re: The best Go framework: no framework?

#140
Go's standard library already provides functionality that is provided by "frameworks" in other languages. So "no framework" isn't actually a thing.

Also what I like most about Django and Django Request Framework is that it saves me so much writing and reading in almost every case. Not sure how you're supposed to achieve that without something that looks like a framework or how writing ten times the amount of code is more sustainable and maintainable.

Post reply on HN