by v_ignatyev on 9/2/24, 10:50 PM with 8 comments
I'm a software developer with decades of experience making web apps and various side gigs (mostly Python, JS, TypeScript, Kotlin, Java).
I spent a whole year (from time to time) learning Rust and Tokio and finally decided that I can't find a job, because opportunities around Rust are either crypto- or hardware- related, all out of my focus.
How could I start as a Golang developer? I passed few tutorials and have got familiar with Golang syntax and felt in love with Goroutines. I am currently reading the Designing Data-Intensive Applications by Martin Kleppmann.
What is the best way to kickstart my path as Gopher? Thank you.
by alejo on 9/3/24, 12:23 AM
I paid close attention to learning how to write idiomatic Go. I also read a bunch of code from the std lib.
Then after a few days I jumped right into coding. I started with a simple CLI to do some heave lifting in our Ci/CD pipelines (for work) and then I also started coding some web apps for my perdonal use.
After this, I started designing and building a few systems that were needed internally at my workplace and I also started training other folks in Go.
That was back in 2017. Today we have several big systems running in production and a strong team of engineers all working and enjoying Go :)
I would recommend to anyone a similar path:
- learn the basics
- build and release things
- teach others who may be interested
At that time my background was as software engineer (~17 years) mainly writing Java and some Javascript
by jshawl on 9/3/24, 1:00 AM
Another thing I did was implement a common tool like `ls` or `tree` or `grep` using go. This will allow you to compare the output and performance of your program against the binaries provided by the OS.
Lastly, there are some really cool libraries out there (see https://charm.sh/) with great communities. Try building something small and ask for feedback in the Discord channel.
by dansult on 9/3/24, 6:56 AM
If you feel you're already past that point of learning then I'd just create little projects. Re-write one of your old ones in Go, and things like that.
by purple-leafy on 9/3/24, 5:34 AM
I’ve been following along and it’s pretty powerful as you’re coming at go with a fresh programming paradigm, which helps the language features to take hold in your mind
by cdaringe on 9/4/24, 3:25 PM
Given your background go should be easy to pickup.