My Best Teaching Is One-on-One

一対一が僕のベスト

Of course, I team teach and do special lessons, etc.

当然、先生方と共同レッスンも、特別レッスンの指導もします。

But my best work in the classroom is after the lesson is over --
going one-on-one,
helping individual students with their assignments.

しかし、僕の一番意味あると思っている仕事は、講義が終わってから、
一対一と
個人的にその課題の勉強を応援することです。

It's kind of like with computer programs, walking the client through hands-on.
The job isn't really done until the customer is using the program.

まあ、コンピュータプログラムにすると、得意先の方に出来上がった製品を体験させるようなことと思います。
役に立たない製品はまだ製品になっていないと同様です。

Showing posts with label revelation. Show all posts
Showing posts with label revelation. Show all posts

Thursday, May 11, 2017

Visions and Pioneering and Responsibility to Family

I was talking with some members of the Forth community on comp.lang.forth about using floating point numbers in a Forth language, and thinking about how I really don't much care for floating point math in programming languages.

Arbitrary precision is much more what most people want. It's a little slower than floating point, but it has fewer surprises. (There are still some surprises induced by the fact that computers do not easily extend precision, where we on the other hand are quite happy to grab another piece of paper and keep going until our wrists get sore or we fall asleep -- or get bored.)

Fixed precision is much faster and much lighter on computer resources. With 64 bit math on modern computers, we can easily do math to 18 decimal places. That would cover most peoples yearly budgets, easily.

But, for all that fixed precision would cover most daily calculation needs, it requires us to keep track of precision ourselves. That's why arbitrary precision and floating point are useful.

Floating point would be a bit easier if it weren't for all the bit fields that have to be extracted from memory that don't fall on easily addressed boundaries.

Then I had this idea about having the exponent be in one integer and the fractional part be in another. That would give ridiculous range for 16-bit CPUs (like 10 followed by more than 16,000 zeros). The fraction part would give us one part in 65536, or a bit more than four digits on the right of the decimal point, which isn't enough for some things, but is plenty for others.

On 32 bit CPUs, the range would be even more ridiculous, but we would have about nine digits on the right of the decimal. Which is why floating point fields don't fall on even boundaries.

On 64 bit CPUs, the range would be beyond ridiculous. Billions of zeros. But the fractional part would be more than 18 digits, which is pretty decent.

The discussion on comp.lang.forth focused on the problem of knowing just how wide a floating point number on the top of the stack of recently used numbers is. When working on the stack, you need to know the size of the numbers that are on the stack so you can get them off the stack and get around them to other numbers, and so forth.

It occurred to me that a floating point number that could tell the programmer how wide it is would be rather useful.

And this first-blush byte format came to mind, just before I went to bed:

8888 8888
length = 0
(8 bits)
exponent (24 bits)fraction (32 bits)

And, in fact, it kept me up a bit, re-thinking things:

8888 8888
sign
(high bit),
length = 0
(7 bits)
exponent (24 bits) fraction (32 bits)

And then it was

8888 8888
sign
(high bit),
length = 0
(7 bits)
exponent
(8 bits)
fraction
(16 bits)
------
sign
(high bit),
length = 1
(7 bits)
exponent (24 bits) fraction (32 bits)

Where length of 0 would be a special case, with the whole floating point number contained in a single 4 byte (32 bit) unit.

From length 1 on, the length would be the count of 32 bit units containing the fractional part (or mantissa, I have to figure out details later), and the three bytes after the length byte would be the exponent.

Checking the IEEE floating point specs on Wikipedia, none of the most common formats have more than 15 bits of exponent. The standard 32-bit format has only 7 bits of exponent, and the standard 64-bit format has only 11 bits of exponent. So 24 bits of exponent is plenty.

Maybe I can scrape the top two bits of the exponent off for flags of some sort. 22 bits of exponent still gives an exponent range of 10 followed by two million zeros.

Speaking of zeros, being able to specify up to 127 times 32 bits of mantissa means ( 127 × 4 == 508 bytes, or 1016 nibbles) better than 1100 decimal digits worth of accuracy in decimal terms.

That's going to be enough to satisfy most mathematical needs for primary grades through college, except for certain engineering purposes.

Mathematically, it's a loose fit, but, with everything falling on nice byte boundaries, it's going to be a lot less work up front.

A similar approach could be used for decimal or other base digits, which is something to think about later.

It will be a little slow, since it will be implemented in software, but you can extend the numbers, mid calculation, to avoid losing precision.

And, randomly associating, a similar approach could be taken with text strings, if we had a better way of representing numbers in the middle of text (a topic which I really want to rant on sometime).

You can probably get a sense of what this has to do with pioneering (ergo, new or less-explored computer/data techniques), but what does this have to do with visions and responsibility to families?

I really should not be typing this.

I really should be running around like a chicken with its head cut off trying to scrounge up work for when my savings runs out in another month.

I am being irresponsible.

I woke up this morning at three thirty, still thinking about this stuff.

And I was thinking about Nephi, in the Book of Mormon, 1 Nephi 17: 9, asking God where to go to get ore to make tools to build the ship with.

Now we have to understand the story. Nephi had been helping his father get their families moved across the desert towards the sea. He had done his part in making sure that the women and children had enough to eat. They had found a nice place on the sea shore to settle down and maybe be safe from the Babylonians and others whom the prophets had been foretelling would be coming to take Jerusalem down for real this time.

Now, he was getting inspired to take the whole group on a long adventure into the unknown, across the sea to a land he and his father had seen in dreams.

His older brothers were upset, and we can understand why.

I am being inspired to take my family on a long adventure into uncharted territory with my writings and other dreams, visions, fantasies, and delusions such as the above. My family is understandably upset.

(Delusions. Ask pretty much anyone, and they will tell you that someone like me should not working with all the wonderful technology that is out there for the using. We have floating point. We have arbitrary precision math. We have the Unicode character set. We have programming languages and CPUs.

What need have we of more of these?

(Other than that it is a deliberate mess, designed to keep the riff-raff like you and me from using it to make the world a better place.)

Well, Nephi asked God where he should go to get ore for tools.

I have been asking God where I should go to get funding.

There is a bit of difference.

Nephi had done his part in securing food and a place for his family. My family and I are on the brink.

He was looking for ore for tools. I am looking for money for a place, for food, and for tools.

This is scary business.

Visions, pioneering, and responsibility to family.

Friday, August 9, 2013

subconscious vs. unconscious vs. pre-conscious vs. ...

Went to wikipedia to look for a Japanese equivalent of the subconscious mind and was rudely reminded that the argument about the existence of the unconscious elements of the mind are not at all resolved. (I knew that, why was I surprised?)

Freud talked about the unconscious and the pre-conscious.

The unconscious is the suppressed elements of the mental processes, and the preconscious is the parts which are not yet either expressed or suppressed.

And he argues that the "subconscious" is too ambiguous a term to be meaningful.

I'll give him one on that last, but I wanted him to admit that "unconscious", "preconscious" and "conscious" are also rather ambiguous classifications, not forming a true partition.

What we suppress changes from moment to moment. So does what slides in-and-out of focus.

If I wanted to make the divisions he makes, I would do it this way:
  • deliberate thought processes
  • non-deliberate thought processes
And I would note that the partition is not hard. Sometimes we intend to think a thing and sometimes we think that thing without intending to.

I would make another set of classifications, cutting across the first set, dividing by the topics they cover:
  • topics of focus
  • topics out of focus
  • suppressed topics
  • forgotten topics
The first two are clear. It's like the top of our desks; we constantly move things on and off the desk.

But the third is not just a subset of the first two. Whether we have deliberately suppressed a topic or not, the question of focus cannot be answered reliably. This may be somewhat the class Freud was intending by pre-conscious.

Forgotten topics are not just out-of-focus. They are in cold storage.

In a computer system, the first class of topics would somewhat correspond to data in cache. (Except there are hard limits to computer cache, not so much to our minds' cache.) The second class of topics would be data in high-speed store (RAM, in current systems). The fourth would be data stored on disk (or tape, etc.) in persistent store, indexed and addressable, but it takes a while to get at it.

The third would be discarded data, results that seemed, at the time, to unnecessary or even counter to the goal of solution. If a computer system is capable of bringing the discarded data back, it is data that must be regenerated, recalculated, re-indexed, etc.

This is one of the remaining differences between human cognition and mechanical reasoning -- Humans generally can, if they have enough motivation, bring suppressed topics into memory and into focus. Computer systems generally (still) require human intervention to do so.

There are at least four more classes of thoughts that need to be considered:
  • instinct
  • social consciousness
  • divine revelation
  • false revelation
Instinct, I think, will be somewhat acceptable to scientists.Social consciousness would cause some raised eyebrows, but if I talk about the patterns we build in our though processes as a result of nurture, I think the eyebrows will settle i recognition for the moment.

Revelation, of course, is off the board when it comes to scientific discussion.

Wait. I want to refine this last list:
  • internal thought processes
  • socially imposed thought processes
  • other beneficial thought processes
  • other anti-beneficial externally thought processes
This list forms yet another partition that cuts across the first two partitions. It may seem a little more acceptable to science. I am sure it is not.

Internal thought processes includes the following:
  • instinct from patterns in our genetic material, 
  • para-instinctual patterns from our existence in the pre-birth spiritual realm, 
  • habitual and other patterns from our mortal lives to the present,
  • and our own active thoughts, the ones we are most responsible for.
The first two of those include some of what is recognized as common sense.

Socially imposed thought processes include
  • trained patterns -- most of what we refer to as "common sense",
  • lessons of social propriety -- obligation and duty, etc.,
  • reactive thought processes -- analytic, semi-analytic, confirmative, etc.,
  • rebellion processes,
  • etc.
While the thought processes themselves are internal, the patterns are from outside us. In a sense, they are not exactly our own, unless we internalize them, unless we make the patterns our own. Our primary responsibility towards these patterns is what we choose to do with them.

By "other beneficial" I mean various forms of revelations from good sources -- words of warning and encouragement from angels, some of whom are mortal and some of whom are not. Also, scripture, and the more direct revelation from what the Christians call the Holy Spirit.

Mortal angels would include friends and family in their positive moments, some church members who influence us for good, influential teachers, and so forth. They may not be official messengers from God, but they do bring us good and helpful things to think about, and the confirmative feelings by which we generally recognize that there is something worth listening to, checking, pursuing.

I'm not going to talk about immortal angels because God will do what He will do, and there really is not much use talking about that. For the same reasons these sorts of things are not subject to scientific inquiry, they are not generally of much use except to those who receive them.

But I will say this, they are more common than we generally recognize. We have a certain blindness.

The Holy Spirit is, among other things, the primary source of our conscience. I won't say much about this either, except that if you believe there is anything true and good, it is by the power of the Holy Spirit that you believe it. I'm not saying you are a closet Christian, I'm saying that the Holy Spirit is so universal, so ubiquitous. And we often can't see the forest for the trees.

If we believe in love and truth and good, the influence that gives us the confidence to believe is what I call the Holy Spirit. If we find ourselves questioning the errors and excesses of certain religionists, partisans, politicalists, charismats, it may be the same Holy Spirit telling us that they've gone too far.

Anti-beneficial external influences? Well, yes, I did mean to talk about the adversary of our souls and those who follow him. Father of lies -- 99% truth so as to pervert it all and undo it all with that 1% lie.

But refraining from talking about the devil is a good idea, anyway. Much more beneficial to talk about good things and good influences and our relationships to them.