Hacker News new | ask | show | jobs
by deklerk 2460 days ago
Let's please not upvote this. It is _not_ a "standard" go project - it doesn't even have a go.mod. Furthermore, it is in an org called "golang standards", when in reality it and its projects are not standards - they're just some opinions of some programmers.

Let's please not make getting started with golang more confusing to beginners by falsely claiming standards.

Also, see numerous similar complaints in this project's issue tracker: [ex1 https://github.com/golang-standards/project-layout/issues/38) [ex2 https://github.com/golang-standards/project-layout/issues/38].

2 comments

While I do agree that this particular case may have some issues I still think that having a good starting point for people newly introduced to the ecosystem is invaluable.

Cookiecutter's pypackage repo [0] isn't necessarily standard either but it does provide a lot of helpful boilerplate and 'best-practices' that are hard to integrate after the fact.

[0] https://github.com/audreyr/cookiecutter-pypackage

Although I respect that this shouldn't be confused as a standard, as a Go beginner with some very small attempts at creating Go projects[1] I would appreciate some sort of guidance on organizing code for a larger project. I've considered rewriting some of my larger NodeJS side projects in Go and I, possibly misguidedly, feel like the biggest barrier to entry is understanding the correct way to organize everything (i.e. directory structure). Is there any documentation, tutorials, anything that you or others would recommend for larger Go projects?

[1]

https://github.com/whatl3y/argv

https://github.com/whatl3y/cdd

https://github.com/whatl3y/odds

I'm curious - what you feel is specifically the barrier? Which parts of your Node project you want to port to Go and don't because you don't know where to put them?