Open billgathen opened 10 years ago
If we are focusing on breaking down the barriers to entry for Ruby dabbling, we might want to introduce nitrous.io as a tool. That way, people can code from the cloud and don't have to install Ruby to have their own project.
@billgathen . I think you have a great "class zero" starting point here. As far as discoverability goes, it would be really cool to have something interactive and open ended that people could play with before they started their first challenges. This http://codecombat.com/ is a really interesting approach. I'm not saying we should take on a project that size, but simple games are a good way to encourage exploratory learning.
I definitely think this could be a good starting point to introduce newbies to the language. I'm assuming the thought with this is that the newbie would also be new to OO, and likely programming? I kind of gathered that from some of the explanation. I think that's great, but also wonder if maybe that would be better suited broken out into a different document if that's the case? Just from my perspective, I got a bit caught up in the section titles and explanations of the concepts.
From two angles, I would either already know what iteration is, just not how to implement it in Ruby, or I would have no idea what iteration is, and maybe get caught up in that versus implementation. Or trying to understand that a hash is a "named group" and what that represents. If that were broken out, I could say, ok, I understand what a hash is, and here I see what its implementation. Maybe I'm over thinking it, but that's just a bit of feedback on an otherwise solid intro! :)
@atkolkma I think Bill does link to repl.it so you could dip your toes in without having the barrier to entry right off the bat. I personally think it's important to eventually have everything setup and understood locally, but do agree that nitrous.io does seem like a good resource!
I've been doing a lot of reading about teaching/learning (what else is new, eh?) and something I think is missing from the newbie curriculum and teaching yourself Ruby in general is "discoverability". If you open an
irb
prompt or a text file in an editor, Ruby does nothing to give you ideas on what to try. What can Ruby do?The Discover Ruby repo is my first whack at a tool to ignite newbies to dig into Ruby and start discovering things for themselves.
My plan is that this is the "on ramp" to 7 Degrees of FizzBuzz, but even there it leaves a few things to be discovered. You'll notice links to external resources on most of the topics, so they can drill deeper when they need to, but my intent was to not to bog them down with all the information I have on each subject.
I believe good examples and mixed with a bit of commentary to highlight the interesting parts will go a long way. That means there are some obvious holes in the descriptions, which ideally they will stumble across and research themselves when they need something more.
It's as much designed to raise questions as to answer them, while not leaving them completely at sea. This is "Just In Time" learning as opposed to "Just In Case", which is how school is structured: they try to teach you absolutely everything conceivable about a subject and then let you go try it out.
With all of the above in mind, I'd love to hear what everyone thinks. This could be "class zero" of the Ruby training that newbies could poke through while they waited for the next meeting to roll around.