Monday, January 10, 2011

Week One Response

Of expert knowledge and learning...

One of the things that the readings for this week most strongly reminded me of was the transition between the Intro to Computer Science with Robots and the Data Structures classes at my undergraduate institutions. The intro course was focused on learning the fundamentals of Python and basic programming. The class was extremely easy if you could give a clear set of simple, step-by-step directions, and if you could recognize that the problems that were asked on the tests were actually the same as the ones that were done as homeworks and in class, just with different names for the various parts, the same way that you can use the same equations to solve word problems that seem to be about completely different things in lower-level math classes. On the face of it, this would seem to be an example of the expert-level grouping problems around general principles instead of around surface characteristics treated on pages 37-39 of the textbook. It was recognizing that the algorithms underlying the problems were in fact very similar, although the way in which the problems presented themselves seemed on first look to be entirely different.

However, the transition between the intro CS course and Data Structures was difficult for me, showing that perhaps I had not learned as much from the class as I had thought. Where the intro CS course was focused on learning Python and being able to write programs that did something and that worked, Data Structures was much more about understanding how computers represented data on an abstract level and with understanding the reasons why someone would choose to use a particular data structure for a particular application, and then moving from an abstract data model to a representation in the computer's language. I felt lost for the first few weeks, since I felt that very little I learned from the intro class prepared me for working at this level. Being able to figure out that all the word problems asked on the test were really the same problem is an entirely different kind of abstraction than being able to understand how a computer is storing your data in order to design an efficient and logical program.

No comments:

Post a Comment