Thursday, October 2, 2014

No hablo java...o

What is all this stuff???
In his introduction to my coursera class Programing Mobile Applications for Android Handheld Systems my instructor said "this is a class for juniors and seniors majoring in computer science who are already familiar with the java programing language". My immediate reaction... what have I gotten myself into? After watching the first three lectures of the course it was clear that I was in over my head. I took my first class about a programing language three months ago where I learned the basics of html and css. I was happy with how fast I picked it up and thought to some extent that knowledge would transfer easily into java. I was wrong!

I was able to install the programs needed to get started (the java development kit and android studio), followed instructions and created my first android project, I set up a virtual device so I could run the apps I create and see how they look and perform on various android devices. However, after the instructor went through install and set up he started talking a different language... one I did not understand. The most overwhelming part of this was the file tree that is automatically created when you create an android project. It was like being stuck in the middle of the Alps with no map or directions.

By the end of the lectures it was evident my learning goals needed adjustments.

  1. Find a resource for learning the basics of Java.
  2. Learn what the files in an android app do and how they interact with each other.
Java tutorial at codecademy.
To solve the first problem I went to a familiar tutor: codecademy.  This website was really helpful in getting extra practice in html and css.  It has been good to help understand the basics of java.

I have not found a great way to achieve my second goal.  I did watch about two hours of youtube videos on android programing but none of them have explained the basic relationship to the files created by default in my android project.


I made two connections to my experience this week and the content of my Learning theory class at Utah State.  The first was Csikszentmihalyi's concept of flow--his name is a good example of what java is to me... a bunch of jumbled letters that don't compute :) . Flow can be described as being so consumed by an activity that everything else drops away and all your attention is on the task at hand. "Flow is experienced whenever there is a good match between the difficulty of the task and the ability of the performer... and an optimal level of challenge."  I had experienced flow over the summer in my html class.  I had a few nights where I was up til 4am and didn't realize it.  This didn't happen until I got to a good understanding of html basics. As I gained ability the website I was creating was enjoyable yet challenging and I reached somewhat of a state of flow as I designed it.  There was no flow this week because of my lack of ability.

A second connection was Bandura's self-efficacy, which in this case relates to my self-assesment of my ability to accomplish the task of android app programing.  Bandura points to four things that can influence our self-efficacy one of them being verbal persuasion--encouragement from a mentor.  One reason why learning html was a great experience for me was because of a great teacher.  Travis was awesome at communicating, providing feedback, and answering questions.  That verbal persuasion helped motivate me as I learned something new.  My coursera teacher is no where near as accessible; he has 700 students enrolled from all over the world and has little authentic stewardship over our learning because it is a free class and the lectures are pre-recorded from some time ago.

My journey is taking a detour.  I will have a few more stops along the way but my destination remains.




No comments:

Post a Comment