Reading this makes me a bit sad about the state of web apps in Go. It seems to be missing so many things that are table stakes in the world of web frameworks. There’s assorted third-party libs to provide much of it, but IMO that doesn’t help all that much - a big part of what makes a mature, maintainable web app framework is that there are standard choices for as many things as possible, and standard ways to add in extra things. If I take over a webapp project, I don’t want to have to spend a month digging around in the codebase and reading up on third-party libs to figure out how it does basic stuff like session management, routing, logging, DB access, user auth, etc.
I think Go really needs a web framework with the mindshare and completeness of Rails. I think Rails does a much better job of having standard choices for all of these parts, so you’re likely to know how they work in any given Rails app. Along those lines, Rails greatest weakness is that Ruby is a little too flexible, leading some gem writers particularly to get things done in weird ways that go against that standardization.
Reading this makes me a bit sad about the state of web apps in Go. It seems to be missing so many things that are table stakes in the world of web frameworks. There’s assorted third-party libs to provide much of it, but IMO that doesn’t help all that much - a big part of what makes a mature, maintainable web app framework is that there are standard choices for as many things as possible, and standard ways to add in extra things. If I take over a webapp project, I don’t want to have to spend a month digging around in the codebase and reading up on third-party libs to figure out how it does basic stuff like session management, routing, logging, DB access, user auth, etc.
I think Go really needs a web framework with the mindshare and completeness of Rails. I think Rails does a much better job of having standard choices for all of these parts, so you’re likely to know how they work in any given Rails app. Along those lines, Rails greatest weakness is that Ruby is a little too flexible, leading some gem writers particularly to get things done in weird ways that go against that standardization.