railsbridge / docs

Curriculum for RailsBridge workshops
docs.railsbridge.org
Other
3.41k stars 454 forks source link

Changes to Ruby Language section in Intro to Rails Tutorial #635

Open CZagrobelny opened 6 years ago

CZagrobelny commented 6 years ago

This PR changes the 'Ruby Language' section of the 'Intro to Rails' tutorial. These changes came out of the NYC Chapter iterating on the Intro to Rails curriculum over the course of a year. These changes have been working great in our workshops and we would love to get them merged upstream.

  1. Adds a 'hash' section. Reason for Change: We found hashes to be a critical underlying concept for understanding Rails code where a hash is passed in as an argument and understanding the format of Active Record objects.

  2. Additional explanation around the concept of 'chaining' methods. Reason for Change: We found that this was an area of confusion for students.

  3. Replaces wrap up question with an optional problem to solve in small groups. Reason for Change: We found students learned the most when challenged to work together with a partner to solve a problem.

  4. Spacing changes to enhance readability for developers editing these docs, no impact when rendered.

CZagrobelny commented 6 years ago

@javierjulio @maxjacobson please take a look!

javierjulio commented 6 years ago

These changes look good so far. I’m not on my Mac though but I’ll take a look again once I am. One suggestion is we should use squiggly heredoc <<~ instead as that way you can format how you like in the file but when rendered the content is right on the left edge.

CZagrobelny commented 6 years ago

@javierjulio I'm not totally following your suggestion re: formatting. If it's quick, when you take a look on your mac, could you push a commit with the change you had in mind? Thanks for looking at it!!!

javierjulio commented 6 years ago

Sure, no problem. Sorry, I’m arriving at JFK ato pick up my mother. I’ll follow up tomorrow. Thanks!

maxjacobson commented 6 years ago

I think Javier is recommending using this Ruby 2.3 feature: https://infinum.co/the-capsized-eight/multiline-strings-ruby-2-3-0-the-squiggly-heredoc

I don't think it's necessary here, because the helper method already uses strip_heredoc which accomplishes the same thing: https://github.com/railsbridge/docs/blob/2a5c52fea35b940aee3855f7b13a03cb90de8b54/lib/step.rb#L245

This PR looks great to me -- these tweaks have all helped us out in New York, and getting them merged upstream will make it easier for us to deprecate our fork.

CZagrobelny commented 6 years ago

@rachelfenn would love to get a review on this when you have a chance! Please let me know if you have any questions! Thank you!