Monday, November 16, 2015

Page layout and its influence on understanding

Experienced programmers know that a program can be more readily understood if it is well layed out with indentation, and even a little colour.
Users of UltraEdit asked the vendor to provide a "bird's eye view" of programming sources, so that they could easily find a part of the program they were maintaining. And this feature is now builtin.

But how often do you see a mathematics text that is badly formatted?
I have a book with wonderful sentences called Linear Algebra Done Right. Its only problem is that the page layout leaves a lot to be desired.

I'm only guessing here, but I suspect that good presentation of a mathematics text can
help someone understand the general flow of the exposition, because the mind remembers a map of the text and uses it to find its way around in the concepts.

So-called mind mapping software is obviously guided by this idea too.

It's time to do a little experimenting to corroborate this idea.

I'm also willing to speculate that finding the appropriate page layout is hard work, with lots of iterations.


Tuesday, July 2, 2013

Putting order into your understanding

It seems that sometimes you don't understand something because you have made an erroneous assumption about what it is.
Sometimes too the subject can just be too complicated to understand: you lose track
of the complex structure. This is where, it seems you can tell smarter people from the less fortunate. Prior training can also help make it easier to grasp some concepts
because prior structures act as scaffolding.

But it can also be the case that you don't understand a small subject because you have not put some order into your view of it and you have in fact contradicting views about different parts of it. Or your view might be not sufficiently developed.
In such a case it is a good idea to try to write up your explanation of the subject.
It has often been said that there is no better way to understand a subject that to teach the subject, presumably because it forces you to put some order on the subject.
Without going so far as teaching the subject, writing a small documentation is a good way of putting some order. It follows that thinking is not good enough on its own.
It's like pencil and paper for a mathematician: without pencil and paper most mathematicians are far less efficient.

I do think that there are a lot of professionals out there who do not take the trouble to put some order and clarity into their concepts by writing it up.
As a technical writer I have noticed that I had to help them clear their ideas up.
I think they should have learned to do this on their own, and the gain in productivity thanks to clearer ideas would have offset the time trying to comitt it to paper.

And yet it also seems that there are some ideas that we do not know how to explain, and yet we seem to manage to deal with a lot of the problems in practice.
This can be due to the fact that the ideas are very difficult to express, given the culture at the time which does not provide the support to express these ideas.

Still that should not be used as an excuse not to try.

Saturday, May 11, 2013

A good video

I just saw a good video on understanding and teaching. It's even funny in places.
The first is here
I think the take-home message is that the teacher needs to say what the teacher is trying to explain, and get all students to actively engage in solving problems and thus prepare the student for the exam.
That's a very superficial assessment, and I might rewrite this blog.

Friday, May 10, 2013

So you think you have explained something?

I was just reading the description by a computer scientist of how his programming language executes.
I could not help thinking that the description was very incomplete, and yet the author was probably convinced that he had explained it well enough.

This is somewhat troubling:
  Are our minds geared to thinking that we have explained something well enough when this is in fact wrong?

I cannot help to think of how we fall for logical traps.

It seemed to me that the author had gone through the following strategy: he wrote down what came to mind when thinking about the execution of the subject. Yet, because the community in that field is tiny and because there is supposed to be a reference to that subject anyway it seemed to him that he had done enough. This is illustrative of what goes on in a small community of researchers: if you don't understand them then you should go and work with them for a certain time and it will sink in.

But there is another aspect: this being a programming language that is available, one can always go and try it out and it will sink in that way.

One of the things that I am trying to point out is that the explanation must be understood in the context of
what resources there are in the community for further explanation.


Friday, May 3, 2013

Concepts that take a long time to get

In my life I have on occasions found concepts that seemed hard to understand.
In retrospect I think that I had not assimilated the background to prepare myself, but whatever the reason
I'll put commit some of these of these to my blog, because I know that it is going to be hard to ask other people for such concepts. Teachers are the ones who have the biggest collection of concepts that are hard to get because they meet these in their students all the time.

One concept I found very hard to figure out was the notion of datum in geography.

Another concept I had trouble was with Universal Element in Birkhoff and Maclane's book on Algebra.
It was very hard to remember even if the definition was very short, whats more it seems to mix ideas
from different levels that should not be there: an element of a set and category theoretic ideas which I thought should have existed at another level.

The various kinds of joins in SQL were rather hard to get at first. I felt I should "get back to those later".


I also remember a friend having a lot of difficulty explaining what he meant by the "time value of money".
I think it was also because I refused to accept his conceptual starting point.



I do know that a lot of people have trouble with pointers in the C language.

I have been told that students have many problems with the notion of limits in Calculus. I never had problems here.

I have seen peole have huge problems with how loops could work in computer "functional languages".


Sunday, April 28, 2013

A priori ideas and metaphors

One of the obstacles to understanding is the existence of incorrect a priori ideas and metaphors.
I offer a technical example:
  In TCP network programming there is an idea of a server and a client. People are often told that a good metaphor for a connection is a telephone call. They might then come to the conclusion that in a communication between two sockets neither is a server because it does not look like there is a server role when you ring someone: "both are in the same situation"

Another one, easier, concerns drag and drop operationson file icons in a Windowing interface.
In some cases it means copy and in other cases it means move. You can imagine that it is not a priori obvious that there should be this distinction.

Anybody teaching should try and identify potential a priori ideas so as to correct them.


Friday, April 19, 2013

Communities

It's been a long time, decades since I have read Michael Polanyi's famous book
"Personal Knowledge" but I believe it's relevant.
I shall risk trying to explain some of the ideas that remain:
Knowledge and the attendant understanding is an affair of communities.
The quantum mechanics community is relatively separate from the pure mathematics community etc...
Each community not only has its assertions and theories but they also have
tacit knowledge that is transmitted by living and working in those communities.
You just cant pick up a book and expect to understand easily by turning the pages.
Communities probably even have different criteria for what passes as truth.
It's that deep.

More later.