10 September 2013
Have been thinking a lot recently about an absolutely brilliant post by Philip Guo on how programming is done in the real world, and therefore how it should probably be taught. The whole concept can be summarized by the sequence forage, tinker, weld, grow, doubt, and refactor.
Some people would call the essence of a hack, but notice that I am using the word hack here is one of the highest possible levels of a compliment.
I like this post so much that I think the whole concept can be further expanded to cover the connection between programming and any area outside of programming. This means once you reached the stage when you are done tweaking the code your foraged, you could potentially bring in pieces of non-programming methods. Here is an example: let's say that I decided to run some Big Data experiments using a method called latent semantic analysis (LSA). Blatantly oversimplifying things, LSA will extract concepts within free text that are highly associated and infer that they are all pointing to a higher construct. For example, if the concepts of grades, intelligence, diligence, and persistence keep clustering across units of text, I might infer that these concepts probably have something in common from the perspective of the writer.
Now, following the forage-refactor sequence from Philip, I would grab a piece of LSA code, play with it a bit, insert my own data and make it work, and then could maybe bring in a chunk of graphical source code to illustrate my brand new LSA analysis. This is all good, but instead of bringing in another piece of code, I could also blend my initial analysis with some qualitative research, meaning to conduct an interview with the writer and see whether my analysis does make sense. The difference between inserting yet another chunk of code and introducing a qualitative methodology is subtle but, I think, important. It means that one of the essential components of novelty is to blend skills that are usually distant. In my example, almost every data scientist who knows LSA likely knows how to graphically display data, but a far smaller number of them are intimately connected to qualitative research.
Some clarification is probably in order:
by Ricardo Pietrobon
My name is Ricardo Pietrobon and I am interested in big data and situated cognition applied to immersive distance education.