Changes

From Nordan Symposia
Jump to navigationJump to search
1,843 bytes removed ,  21:00, 10 October 2009
Line 60: Line 60:     
Gregory Chaitin, a noted computer scientist, propounds a view that comprehension is a kind of data compression[1]. In his essay [http://www.umcs.maine.edu/~chaitin/sciamer3.html ''The Limits of Reason''], he argues that 'understanding' something means being able to figure out a simple set of rules that explains it. For example, we 'understand' why day and night exist because we have a simple [[model]] - the rotation of the [[earth]] - that explains a tremendous amount of [[data]] - changes in brightness, temperature, and atmospheric composition of the earth. We have 'compressed' a large amount of information by using a simple model that predicts it. Similarly, we 'understand' the number 0.33333... by [[thinking]] of it as one-third. The first way of representing the [[number]] requires an [[infinite]] amount of [[memory]]; but the second way can produce all the data of the first representation, but uses much less information. Chaitin argues that 'comprehension' is this ability to compress data.
 
Gregory Chaitin, a noted computer scientist, propounds a view that comprehension is a kind of data compression[1]. In his essay [http://www.umcs.maine.edu/~chaitin/sciamer3.html ''The Limits of Reason''], he argues that 'understanding' something means being able to figure out a simple set of rules that explains it. For example, we 'understand' why day and night exist because we have a simple [[model]] - the rotation of the [[earth]] - that explains a tremendous amount of [[data]] - changes in brightness, temperature, and atmospheric composition of the earth. We have 'compressed' a large amount of information by using a simple model that predicts it. Similarly, we 'understand' the number 0.33333... by [[thinking]] of it as one-third. The first way of representing the [[number]] requires an [[infinite]] amount of [[memory]]; but the second way can produce all the data of the first representation, but uses much less information. Chaitin argues that 'comprehension' is this ability to compress data.
 +
 
==Quote==
 
==Quote==
 
Throughout this [[glorious]] age the chief pursuit of the ever-advancing [[mortals]] is the quest for a better '''understanding''' and a fuller [[realization]] of the comprehensible elements of [[Deity]]--[[truth]], [[beauty]], and [[goodness]]. This represents man's effort to discern [[God]] in [[mind]], [[matter]], and [[spirit]]. And as the mortal pursues this quest, he finds himself increasingly absorbed in the experiential study of [[philosophy]], [[cosmology]], and [[divinity]].
 
Throughout this [[glorious]] age the chief pursuit of the ever-advancing [[mortals]] is the quest for a better '''understanding''' and a fuller [[realization]] of the comprehensible elements of [[Deity]]--[[truth]], [[beauty]], and [[goodness]]. This represents man's effort to discern [[God]] in [[mind]], [[matter]], and [[spirit]]. And as the mortal pursues this quest, he finds himself increasingly absorbed in the experiential study of [[philosophy]], [[cosmology]], and [[divinity]].
  −
==In programming==
  −
In a Thesis Book called "A study of Quality Improvements By [http://en.wikipedia.org/wiki/Refactoring Refactoring]" made at the University of Antwerp on 2006 by Bart Du Bois (Phd) and promoted by many notable professors, the [[author]] explains that for a programmer to understand how to work with a new piece of code or a new system, five levels of abstraction have to be understood.
  −
  −
This is done by simply asking these five questions: (the following table was first plotted by Nancy Pennington in 1987 in a book called Comprehension Strategies in Programming)
  −
  −
*'''Function''' – What is the overall [[function]]ality? (i.e. Will an average be computed?)
  −
*Data Flow – Where does a [[data]] object get updated? (i.e. Will the [[value]] of variable x affect the value of variable y?)
  −
*Control Flow – Describe the sequence of execution (i.e. Is the last record in file x counted in variable y?)
  −
*Operations – What does a particular line of code compute? (i.e. Is variable x initialized to zero?)
  −
*State – What is the [[content]] of a data object at a particular point in execution? (i.e. When label x is reached, will variable y have a particular known value?)
  −
  −
The study defines understanding as conquering of all of the five abstractions. Since this model works for any type of software, as it is more about the programmer's mind than about the computer functionality, and software can repeat almost anything human, this model is very close to the ultimate definition of understanding of anything thinkable.
  −
  −
Lack of awareness of this pattern for evaluating abstractions, may bring about many Cognitive biases when complex ideas are explained. The idea of Refactoring in software is similar in the cognitive field to the repetition of an argument, with minor focus changes/enhancements to the argument each time.
      
[[Category: Psychology]]
 
[[Category: Psychology]]
 
[[Category: Philosophy]]
 
[[Category: Philosophy]]
 
[[Category: Computer Science]]
 
[[Category: Computer Science]]

Navigation menu