WestMichiganRubyTraining / discussion

Create issues on this repository to open discussion threads in the Issue Tracker!
2 stars 0 forks source link

Feel the Stoke #11

Open billgathen opened 11 years ago

billgathen commented 11 years ago

The following is a comment by Steven Harms on the Ruby Rogues "Parley" mailing list. The original post was about how to help someone get started with programming in ruby.

The style is kind of trippy, but I think it really hits on the idea of getting excited about something and really going "all-in" to use a poker term.

I'd love everybody's feedback on what gets you stoked about coding and what we can do in our training sessions to get everyone as stoked about ruby as I am. Have we done some things that really got you going? Have some of the things killed your spirit? Let us know.

I felt a lot more energy in our last session: several people had that crazed look in their eyes that I know so well from looking in the mirror every morning. :-) Let's see if we can multiply that in the future.

I've thought about this topic a lot. I've been a Railsbridge teacher and have a girlfriend who writes code. I've been through several rounds of thought on this and would like to give a contrary perspective. It isn't so much to you, per se, Michael, but to us, Parley-ists and communicators of programming technique en general.

Many people who love programming, like you and me, have the love. To borrow from my surf school: we have "felt the Stoke." The trouble is this, like the Matrix, no one can tell you what the Stoke is, you have to feel it for yourself.

This holds true for coding education. Often those who love the source, well-intentioned though they may be, mistake teaching the coding from infusing the Stoke and these are two different, and occasionally opposingly positioned, goals.

If given a choice, assist the Stoke and minimize the source. If someone has the Stoke he will troll fora and read API docs; if she has the source but lacks the Stoke, she will do neither.

From your post you are at a different place, you're at a seasoned programmers place, it's, oddly enough, the Boddhidharmic center where you realize all languages are more or less the same and that like ancient geometers we're not really measuring the earth with all those trigons and arcs, but we're doing something more like reifying thought strategies into patterns. And this is what, I suspect, most of us love about the kraft.

But, again, like the Matrix, this cannot be told to those recently unplugged, er, pluggin-in. They are best served, I believe, by not being told that they can dodge bullets, but by being told that they can do some wicked kung-fu; the applicability of the nominal awesomeness (i.e. the Stoke) must be substantiated into the phenomenal experience of "I made the computer blinkies to blinky there!" Blinky lights are, and to the credit of _why and Hackety, the key for germinating the seed of The Stoke.

And you cannot push the stoke. No books, no amount of taking their painfully cobbled code and frobnicating it into well-factored OO zen (don't do that, btw) will take your Stoke at seeing their code and allow you to pump it back into them. This is were I have seen many well-intentioned teachers go horribly off the (ahem) rails.

Like the spark that is true love, the other amant must let air and space nurture the spark into flame, the flame unto conflagration. Therefore while I applaud your efforts (and hope everyone's girlfriends and moms learn Ruby), I would like to encourage all readers and would-be teachers to make sure that they are serving their friends' stoke above our own need to feel the stoke and preach the source.

jasonrwagner commented 11 years ago

I look at it this way... You can build a kitchen cabinet out of plywood and screws, or carefully sanded mahogany and hand cut joints with no nails. Both will serve the same function but one is quick and gets the job done and the other is a work of art that I can be proud of. Therefore I can know about the source (nails, wood, tools,etc) but it is the thought and craft that goes into it. If I don't love the art of woodworking I'll make a plywood mess. The same is for coding. If I know some source, and can check doc's to learn more, I can free up my mind to be stoked about making something worth looking at and sharing.

I am stoked...even for fizzbuzz. I know I will get better as time goes on. I want to soak up as much as I can so that I can become a craftsman with Ruby. So far I think we are all stoked to learn. After we get through the beginning tasks we can start crafting projects that we can all add to and learn from. How stoked will we be when we are coming up with projects and deciding not to go the plywood route but to craft something to be proud of.

Allerka commented 11 years ago

To be honest, the stoke is all that keeps me going, and there's not enough yet, I don't think. Programming has always been a huge challenge for me. I'm only trying to learn Ruby because of the semi-obscure game maker I'm using. Feeling some kind of stoke for coding definitely helps me stay motivated with the entire project, because there is a LOT of work for me to undertake by myself.

Thankfully, the new edition of the maker I'm using has vastly better community support, and I've loaded a bunch of pre-built scripts into my game that, unlike the last edition, actually work! So, really, all I need to do is learn how to configure/customize them, and not have to rebuild half the script from scratch because it's broke (I guess one could almost think of it as an average car owner having to rebuild an engine himself!).

With that reduced learning curve, it definitely makes me feel more enthusiastic about learning to code Ruby, because it actually feels like something obtainable. The enthusiasm and coordination of this group is also a huge boost, and it's a great feeling to come in for a couple hours, and feel like I'm actually making progress.