hanami / guides

Hanami Guides
https://guides.hanamirb.org
53 stars 82 forks source link

Expand Getting Started guide #14

Open jodosha opened 5 years ago

jodosha commented 5 years ago

Here's some feedback collected from @aeden

I think the getting started doc could be expanded to include the rest of the CRUD operations. I had to dig around a bit to figure out how to properly build the delete and update operations. The update operation could include a demonstration of moving form generation into the view classes (which, btw, is pretty awesome). It would also demonstrate how to override the default form method (using PATCH instead of the default POST). Finally, the delete would show how a form could be used for the delete button (unless there's a better way) and reinforce how to override the default form method it would also help demonstrate the need to continue updating the route that was refactored into a resource. because by default the new route will be appended to the routes file, and it will not work automatically.

olivierlacan commented 11 months ago

This kind of falls into precisely the feedback I gave @timriley yesterday:

The link between Actions, Views, and Templates deserves special focus in the guides I think. Something like an integration spec version of a doc, following a request.

I think this post on Discourse from @dcr8898 does an excellent job at diagraming the very high-level differences between Hanami 1.x and 2.x which I think are also fundamental for anyone migrating from a framework in a different language or from Rails.

For the record this is how I introduced newcomers to Rails-flavored MVC pattern in my high-level intro course, even before I delve into the classes. It's a great suggestion from @aeden but IMO should only happen after you describe the structure from a bird's eye view.

image

Granted, I abstract a lot and I don't have the same need to be as technically accurate as official docs when it comes to what actually ends up rendering the response. But one tool we frequently employed at Code School when teaching Rails, Ruby, or any full-stack web technology with lots of hidden complexity was to omit or obfuscate at least some of the terminology and concepts that may involve to much mental load for the sake of getting the overall mechanism described succinctly enough to be effectively understood.

In a weird way it's just like physics at different scales: what works and makes intuitive sense at a large (universe) scale doesn't necessarily work at the infinitesimal scale (atoms).

To further this point, here's a screenshot of the Hanami Guides when you land on them (after one too many clicks, https://guides.hanamirb.org should show this, not a marketing page). There's a missing opportunity here for some (simple!) high-level architecture diagram.

Screenshot 2023-11-12 at 1 25 52 PM