Friday, November 7, 2014

Learning Blog Week 7

Recomplicating the Process

  This week I learned in Ruby how to do a whole bunch of stuff I already knew how to do.  That's right, I relearned how to do a whole bunch of stuff I already learned how to do... only this time I learned how to do it a different way.  I found this weeks tutorials very frustrating as I felt like I was spinning my wheels a little.  I mean, I have a goal to make and I'm relearning stuff I already know?  And further more, now my understanding of certain processes is all muddled up because I can't keep straight the syntax from method 1 and method 2.  

The Experience

  I suppose I pretty well launched straight into the experience this time above, but let me begin from the beginning (the place where all great beginnings begin).  I sat down after having read the How People Learn chapter all ready to experience some transfer, and to think about how the knowledge and skills I've gained have transferred thus far.  I figured I'd talk a lot about the final project, as there is usually a final project at the end of each tutorial, and how I'd do a short transfer from the tutorial to the final project.  Unfortunately there was no final project this time.  However, as I went through the tutorials, somewhat perplexed by the repetition and muddling of the exercises, I realized that there was a lot of negative transferring going on.  What I knew previously was becoming hazy through the onslaught of my current re-learning.  It became very confusing when I was asked to write code to do something and then received feedback that I had done it wrong, even though the code I wrote performed the task at hand.  My frustration was tempered when I was suddenly reminded of an episode I'd had with my 9-year-old daughter just the day before.  She had come to me in tears because she couldn't get three stars on her typing test.  She could get two stars, but not the three she needed to pass the test.  I had her show me the test and how she was doing it.  I remembered from previous experience that she did not use the home row method of typing.  I'd told her before that at some point she should try to learn to use the home row keys, but she told me it was just more confusing.  I told her, if you learn it now it will save you having to learn it later when you've developed bad typing habits.  She didn't see the point, she felt like she could get by well enough with her own method.  I told her, in the future you'll need to type faster and the home row method is the fastest way to type because it puts your fingers in the proper position to type fast, and it allows your brain to have a script of which finger will push which keys.  It allows for automaticity.  She scoffed at me then.  I didn't feel it expedient to throw that in her face as she was already frustrated by the situation.  I tried as mildly as I could to urge her to learn home row.  She was resistant, telling me she needed to get the test done as quickly as she could.  She said she didn't have time to learn home row.  I told her the long she waits the harder and more time consuming it would become.  It's better to take the time now and do it properly.  
  Long story, but I was all of the sudden sitting at my computer trying to kick against the pricks, trying to avoid the methods that the Code Academy tutorials were telling me would save me heart ache in the future.  The new ways of doing things I already knew were being taught to me to help me deal with more complicated coding situations in the future.  The first way I learned it was to help me understand what was happening, and then we were going back through and learning how to make it work at it's most efficient.  At this point the transfer seems to be negative, as I'm still much more confused now than I have ever been at any point in my learning journey.  However, I think that with work the negative transfer can bloom into a positive transfer.  If I can link the concepts and just keep the syntax straight I think I'll have a more complete picture of how Ruby works.
  Now, at this point near the end of my learning experience I began to question the effectiveness of the tutorials.  I am not quite finished with them, so I must reserve judgement till the conclusion, but I thought about the most effective way to transfer knowledge, and I think one effective way to do it is by abstracting the information.  Giving overarching concepts that relate and apply to all the various specifics that come down the road.  I feel like I've been given a high volume of minutiae without some of the pillar concepts to give them stability.  I think this may be why I am still lost as to how all of this stuff I've learned over the past two months can come together to create a website, or an app or anything!  How do these nuts and bolts fit together to build the rocketship?  I wonder if the tutorial makers are relying on the learner to have previous experience with a different coding language?  I wonder if perhaps I should study basic computer science, or web design before proceeding.  Perhaps transfer would be easier for me if I had more knowledge for this stuff to latch on to?  I think the vertical transfer issues I'm having, combining all these little coding elements into one great whole,  may stem from not having the broad concepts I need.  
  Finally, I decided that I should go back over some of my old programs I've done for this course and try to apply my new methods.  This went well for some, and horribly horribly wrong for others.  I made a mess of several of my programs, and without the tutorial and forums for help I think they're better left to die quietly and together in my recycle bin than to make another effort.  The few I was able to retcon worked great, and I feel like some of those concepts may have cemented in place a little bit after doing this activity.  The horizontal transfer, short as it might have been from in-tutorial to out-tutorial programming was effective and helpful in understanding what I was learning.  

Sorry, no pictures this time as nothing I did this week was worthy of an image.  

A final note, 
    In the tutorials I've been doing, there are hints you can click on to get some help if you are stuck.  Iv'e always classified these as scaffolding, which I still believe they are.  However, the way they are constructed reminds me of graduated prompting.  They begin by giving you vague, open-ended questions that help you think back to what you've been learning and other instances from previous tutorials where you've learned applicable concepts.  Then, there is usually a link that will take you to the glossary where you can read about whatever it is you're supposed to be using.  There is usually also a link to the forums where you can ask specific feedback from experts and fellow students, and then if all else fails it tells you that you're allowed to peek at the final project to see how your code is flawed.  

No comments:

Post a Comment