Jump to content

Golang shall rise!


habitual

Recommended Posts

A little facetious, but it's my go to for just about everything. Tools, malware, etc. Thread for help and tips/tricks for milking every ounce of performance out of it.  

Link to comment
Share on other sites

Honestly, I prefer python unless I need something with native performance. My typical litmus test is "will it need threads". If no, Python's a go. 

  • Like 6
  • Haha 1
Link to comment
Share on other sites

I love GoLang for many reasons, but in most scenarios I just use python.  Similarly with what Marcus wrote, if I needs performance I'll use GoLang.
I am currently learning Rust, and It's quite a struggle, but I am enjoying it's syntax and how it kind-of forces me to write good code.

  • Like 1
Link to comment
Share on other sites

As a language theory nerd, there's so much about golang I want to love, and so much that rubs we the wrong way. Wish I liked it more, because I love the syntax and support for channels. Closest thing to Erlang that's usable

  • Like 1
Link to comment
Share on other sites

I live in python mostly, but I love that golang compiles down into a raw binary that I can make

FROM scratch

docker containers with.  Python containers always seem so bloated comparatively.

Link to comment
Share on other sites

57 minutes ago, Jimmy said:

Any suggestions for beginners, like a beginner to advanced course? I like tutorials with projects to help grasp concepts but isn't too necessary.

I started by using the playground that go.dev provides 
https://go.dev/tour/welcome/1

That's pretty sufficient for covering the basics, then I moved on to project based learning, choosing something I wanted to make, then googling the pieces I needed to make it work. A classic I usually recommend is some kind of DnD Character sheet. You ending up managing all types of variables, get a user's interaction, saving stuff to file to use again, and much more, as much as you want to pack in. 

  • Like 2
Link to comment
Share on other sites

2 minutes ago, habitual said:

I started by using the playground that go.dev provides 
https://go.dev/tour/welcome/1

That's pretty sufficient for covering the basics, then I moved on to project based learning, choosing something I wanted to make, then googling the pieces I needed to make it work. A classic I usually recommend is some kind of DnD Character sheet. You ending up managing all types of variables, get a user's interaction, saving stuff to file to use again, and much more, as much as you want to pack in. 

Thank you so much. 

Link to comment
Share on other sites

Most projects I've deployed are in server less environments (AWS Lambda, GCP Cloud Function, etc) where you pay for CPU time so I've defaulted to using Go to save 💰. At first there was a little learning curve from other languages but now whenever working in Python I am in pain cause of the lack of good type hints in text editors and native testing support I got used to 🤷‍♂️.

Link to comment
Share on other sites

I really like Golang for anything that has to do w/ a long running client that has to interact with one or many web servers (scraping, enumeration of web resources) or for a server that needs to serve lots of requests quickly. It also makes a decent implant in certain instances 😉

 

Python for anything quick and dirty.

Link to comment
Share on other sites

16 hours ago, Jimmy said:

Any suggestions for beginners, like a beginner to advanced course? I like tutorials with projects to help grasp concepts but isn't too necessary.

not a course but go by example is a really good list of example programs and common patterns in go i found myself referencing a lot when learning: https://gobyexample.com/

Edited by aiakared
  • Like 1
Link to comment
Share on other sites

Golang is pretty fun. I use it at my job as a backend for many of our internal tools. 

I learned basic Golang from the official online tutorial and the book "Black Hat Go"(which has the best art of the Golang gopher IMO).

 

BHG_frontcover_REV_HM.webp

  • Like 3
Link to comment
Share on other sites

I think Go has already established itself as a pretty good alternative for Python when it comes to tooling. Like @MalwareTech said, I also prefer Python tbh but most of the tools I for pentests and bug hunting are written in Go. And I know Go is already at a pretty good level because I've been postponing learning it for so long...

  • Like 2
Link to comment
Share on other sites

On 11/5/2022 at 10:33 PM, Jimmy said:

Any suggestions for beginners, like a beginner to advanced course? I like tutorials with projects to help grasp concepts but isn't too necessary.

I started learning Go with John Leon's "Security with Go" book.  His book teaches it in context to how you'd use it in cybersecurity, if that is your field.  I wrote my first Go program on GitHub from a few chapters of this book (https://github.com/thedunston/troublevent). "Blackhat Go" is another good resource.

The website guru99 walks through the many features of Go, as well: https://www.guru99.com/google-go-tutorial.htmll

  • Like 1
Link to comment
Share on other sites

Golang is cool and I totally understand why people like it. I personally like it too but I've been using python for so long and it seems to have a larger community due to it's age that I just prefer it, like others have said here already. 

  • Like 1
Link to comment
Share on other sites

I have been using Go off and on for a few years now, and it really feels nice to have a gin based microservice just work and give good perf by default.
 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...