I decided I wanted to learn #golang a little while back. I really want to expand my skill set. I've been a #PHP developer for a really long time, and I really like PHP, but I need to branch out some more.
I had an idea for a #fediverse project, and decided that this project would be the perfect way for me to learn go.
But, I'm finding it really hard to make any headway on the project because there's so much to learn to make it work well.
Meanwhile, I'm finding that I really want to make this project a success, and with the extremely slow pace of building it in go, I'm thinking that maybe I should give up on that right now and build it in PHP after all. I could probably have a working MVP in a few weeks if I did it in PHP. And then tackle a less ambitious project in go later.
I can't decide which way to go. Maybe I could even build it in PHP and later rebuild it in go.
@dolmen @danjones000 I could lend a hand as well 😃
But yeah, if your fediverse project's urge is bigger than learning a language, do it in a tech you know already.
Worst case scenario, you'll rewrite it in the new language once you've gotten at ease with it more. But already with the design mistakes you could avoid in this rewrite (even though, some tech design might not port well to the new language as well. Though, the domain design should be good)
@dolanor @danjones000 On the other hand, being project driven is the best way to make learning progress quickly.
@danjones000 for the less ambitious Go project, try building a small TUI to solve problem you have. A small company called Charm has several TUI libraries in Go. Their site is https://charm.sh
@danjones000 Reading this, your primary target was to learn golang; not to build a fediverse project. So I'd stick to it and let success be determined by how much golang (and its limits) you learn, rather than by the project being a success ( ;
I personally gave up on golang quite quickly as it didn't click with me. It felt like an experiment that didn't have maintainability in mind. As Cliff Berg's quote of one of golang's authors in http://valuedrivenit.blogspot.com/2015/12/to-go-language-is-mess.html suggests, that may be accurate.
@danjones000 I’ve started learning #golang last week after 8 years of #java and 8 years of #nodejs.
I like tris language and begin to feel autonomous.
I write my journey in a GitHub project : https://github.com/jbuget/explore-golang (FR_fr 🇫🇷)
If you want to learn new things, do it in Go. If you really want to test and push your idea, do it in PHP.
@danjones000 interesting, I had a similar experience when starting with Go. But I started building a really small app (DevLorem) which had a small scope and I could get a first version published quite fast.
If you want to push out your project and find yourself struggling, I would go with PHP and start with something small to get into Go first.
@danjones000 Is it an application that fits well with PHP? (Some do, some don't.) If so, go with what you know. If not, then it's worth building in something you don't know.
@danjones000 Do it in Go!
I'll be glad to coach you if have issues.
Also, use the Gophers' Slack.