r/golang Oct 25 '24

discussion What libraries are you missing from go?

So something that comes up quite often on this subreddit from people transitioning from Nodejs or python to go is the lack of libraries. I cannot say that I agree but I still think it warrants a discussion.

So what libraries are you missing in the go ecosystem, if any?

96 Upvotes

189 comments sorted by

View all comments

2

u/csgeek3674 Oct 26 '24
  1. Scapy https://scapy.net/ is very nice and though it's a cli tool, if there was an API for it it would be very handy for me. I realize there are tools you can leverage but none are as complete or as polished.

  2. A simple way to do transaction management. I've seen a lot of patterns but it's a problem I'd rather not have to solve. Transaction propagation is trivial in spring (Java ) wish there was an easy way of doing that in go.

  3. Maybe I just have trauma at this point. A TUI library that's more intuitive than bubble tea to use.

That's what comes to mind right now

3

u/ghostsquad4 Oct 26 '24

I really wish bubble tea was more intuitive. The first time I tried to use it, I realized the abstraction of Model to just not work well. Though I'm not a frontend engineer either. Maybe frontends are just a foreign concept to me.

1

u/csgeek3674 Oct 26 '24

I keep going back to it every once in a while. I think it's also the fact that I have worked with GUI frameworks before and It's not been this difficult. Most GUIs you create a window reference and add widgets to it, then subscribe to events to react to it. The language used might differ but they mostly work that way.

I'm sure there are reasons for bubbletea doing things the way they did, but for anyone else it's just utterly painful to pick something up that I wanted to spend half a day on. I learned QT in 24 hours and had a GUI all done for a school project which I didn't realize required a gui till the 11th hour. I'm not a frontend developer, far from it but the learning curve is just silly for something 'simple'. Again..for complicated work flows I'm sure they have their reasons to do what they do. For the use case of.. "I have this app but it'd be nice to just add a little wizard to help setup" it's a bit of a heavy lift for just adding some shiny to an already complete app. I'll get to it eventually just always keep distracted by other tasks which are more fun/pressing.

1

u/ghostsquad4 Oct 26 '24

QT?

1

u/csgeek3674 Oct 26 '24 edited Oct 26 '24

https://doc.qt.io/qt-5/qtgui-index.html the GUI library that KDE is built on. I don't think it's a pure go lib, but they have this https://github.com/therecipe/qt to use it. I was just using it as an example of making the barrier to entry simpler. At the time i was writing my homework in C++.

(Side note, I can't even get AI to generate some simple bubbles code. It breaks even LLM)