Wednesday, June 28, 2017

--- Notes on animals ---

The difference in mind between man and the higher animals, great as it is, certainly is one of degree and not of kind. We have seen that the senses and intuitions [including reason]... of which man boasts, may be found in an incipient, or even sometimes in a well-developed condition, in the lower animals.

Charles Darwin

I will insert a resignation, though, that this doesn't adequately capture the diversity in the animal kingdom. And it's not "just" a matter of degree. Wolves don't have thumbs. Gorillas and raccoons do and gorillas, unlike wolves, do use tools. I suspect that raccoons can also pick locks. That's the only way I can explain how they can get into things as adroitly as they do.

Still, as vociferous as prairie dogs can be, humans, I suspect, are the only animals capable of technical communications. I would think that to be the big distinctive of humans in the animal kingdom.

Well, I've blogged about animals before and you can search the blog, so I won't belabor that point. I'm sure I'll return to the topic again.

I assume that they are not less or more mentally than I am. They obviously think. They feel pain and fear. They plan and connive. Some use tools; some communicate quite well. I suspect that they are all different, just like hominids. I assume, instead that they are simply different - alien in the sense that they think differently enough that we might have a difficult time grasping what's going on inside their heads. Sometimes, I think that my neighbors minds are just as alien. And, of course, that would imply that my mind is just as alien to them.

--- Structuring programs ---


My big project is a software package programmed into Calc, the LibreOffice spreadsheet component. The strength of this approach is that the statistics package already has all the utilities of a powerful spreadsheet. I call it DANSYS - the Data ANalysis System.

I'll be using DANSYS to talk about how to program in LibreOffice Basic. The manual, available at the LibreOffice website, is useful but there's a lot it doesn't explain how to do, and I've picked up a lot of tricks and workarounds over time. I'm working on an expanded version of DANSYS and I'll take you along on the journey.

I had to decide whether I wanted to just keep expanding DANSYS or make two versions: a basic version that does the most common statistical procedures and the expanded version that's much bigger and clunkier but will do many, many more cool things. I decided to go with the two version plan and both will be available on my other website ( as I develop them. Currently, DANSYS and a statistics decision tree and glossary are available. I'm working on a user's manual for DANSYS and you'll see my progress on DANSYSX here.

Programming is a lot easier if you take a structured approach. Some languages (like Python) requires you to structure your programs. Others, like modern BASIC make it easy to structure programs but do not require it. Structured programming uses indentation to indicate levels of code (that will become much clearer as we go along). It also helps if you add notes to your code as you go along. This documentation serves two big functions: it reminds you what sections of code do if you need to go back and modify the code (which you often will), and it allows other people who use your code to understand what you've done.

I will admit that I sometimes slack off when it comes to documentation, but I will try to be responsible with the code in DANSYSX.

I try to maintain a five section structure for my LibreOffice Basic programs. The first section is the header. The first line of LibreOffice Baisc code names the program, tells whether the program is a subroutine or a function, and passes all the necessary information into the program.

The second section defines all the variables I'll be using in the program using DIM (DIMension) statements. I usually precede this section with a long comment explaining the program.

The third section initializes whatever variables need to start with some specific value.

The fourth section is where all the good stuff happens. It contains the works of the program.

The fifth and last section formats and outputs the data from the program.

Flow charts are useful to some people to help plan out complicated programs. I tend more to plot the way the program is supposed to work in pseudocode. Pseudocode describes the working of a program in descriptive English, line by line. For instance, if I want to add 1 to the variable bx over and over until it reaches 15, I might describe it with the following pseudocode:

When bx reaches 15, jump out of the following loop
Add 1 to bx
Continue looping

More often, I type a scaffold of comments before I even start programming and then fill in the code. A comment in LibreOffice Basic looks like this:

'This is a comment. Notice that it begins with an apostrophe.
'LibreOffice Basic will ignore any statement beginning with an apostrophe.

Wednesday, June 21, 2017

--- Notes on love ---

Life has taught us that love does not consist in gazing at each other but in looking outward together in the same direction.

Antoine de Saint-Exupery

Again, I must sternly remind the reader that "love" at a very base level, is, in fact, a four letter word. Much confusion with the problems of love arises from the fact that we are quite free to define the word as we wish and we are quite free to forget that the word is not the thing. That makes the thing much more flexible than it should be.

Several writers (such as C. S Lewis in "The Four Loves") have made much of the idea that the Greeks had multiple words for "love". Lewis' "four loves" were storge (affection), philia (friendship), eros (erotic love), and agape (unconditional love).

I beg to differ. In point of fact, the Greeks had four loves for four different things and English speaking people just happened to translate them all into the word "love" - an unfortunate happenstance.

Because the three words, storge, philia, and eros acceptably stand in for three kinds of affection, that is, liking. They are emotions. Agape is not a related category. It is not an emotion but an intention. I would define agape as the intention that an other have a good life and that you are part of the reason that life is good.

So, since storge, philia, and eros are in the same category of "affection", and agape is not, I propose that the term "love" be reserved for agape, only. That would straighten out a lot of the confusion.

For instance, it would eliminate the phrase that makes me cringe every time - "No one should be able to tell me who I can love." That phrase horribly confuses sex and love, for, obviously, sex is not, by any stretch of the imagination, love.

People who love each other sometimes engage in sexual activity as a form of intimate entertainment, it is true, but so do rapists, who almost never have love in mind when perpetrating their crime. Then, there is a panoply of casual connections that could be called "sex" that would never be construed as "love".

The way we use language does make a difference and such discombobulations can only lead to problems.

--- Flatirons Crossing ---


Flatirons Crossing is a shopping district in the town of Superior, Colorado. I have been there several times when I lived in nearby Broomfield and a House brother works in Superior so, planning for my endurance hike, and needing to get back in shape after the hot summer, which is my off season for hiking, I decided to take a long hike in the high plains between Superior and the Flatirons.

The Coalton Trail is a nice, broad, dirt trail. The most demanding part is the grade up Davidson Mesa. Once on top, it's pretty flat all the way to highway 128. The primary draw through most of the year is the view of the Flatirons, a steeply folded series of dark sedimentary rocks that loom over Boulder, Colorado. The flat, platelike shapes give them their name. In the spring, I'm told, this area is a great hike for looking at wildflowers. The Coalton Trail ends at the Boulder Alternative Energy Research station at Rocky Flats, the site of a controversial weapons grade fissionable materials factory in the last half of the 20th Century. I carried a dosimeter along but it didn't twitch. Evidently, they did a good job cleaning it up.

A short road walk brought me to the Flatirons Vista trailhead. It is similar to, but a little hillier than the Coalton Trail and it leads to a great overview of the southern end of the Flatirons and the Eldorado Canyon area.

On the way back, I decided to take an alternate path, instead of the road walk. That was a big mistake. The High Plains trail, in the first place, isn't a trail - it's a rut that winds crazily through cow pastures. It is very narrow, deep and has a curved bed that destroyed my hiking shoes. This same model of shoes lasted me for five years of regular walking and extreme hiking and a new pair is gone in less than half a year. The rocks in the rut were like gravel you might find in a terminal moraine of a glacier. About half way back to the Coalton trail, I gave up and took a farm road back to the less demanding, ankle pounding asphalt of highway 128.

A friendly biker evidently thought that I looked like I wouldn't make it back to Superior, so he gave me a lift back to the other end of the Coalton Trail. While I was recuperating, I had a conversation with a lady who was preparing for an Ironman Triathlon and I was gratified to note that she evaluated the High Plains Trail as "brutal". That made me feel much less like a whiner.

Anyway, I got my money's worth. The hike was great, except for the terminal moraine and I feel ready to stand up to a hike out to Waterton Canyon.


DANSYSX Version 1.0 is finished and has been posted on the Timeline:

This update includes extensive complex math and combinatorics functions, graphic routines that allow you to specify and generate graphic objects on the spreadsheet or programmatically, 2-way and 3-way crosstabulation routines, ntile conversion, and Monte Carlo generation of sampling statistics (a way to convert misbehaving statistics from non-normal distributions to more civilized values.)

There's also a programming language that allows you to code directly on a spreadsheet. It looks sorta like assembly language and is more a toy for me than anything else and, at present, doesn't work well enough to actually use for anything. The looping structure doesn't work yet, but, if you want to play around with it, the macros are accessible.

I'm working on a user guide to the basic DANSYS and I'll be working on one for this update of DANSYSX. When those are done, I'll post them. In the meantime, all the functions are documented on the DANSYS Functions sheet.

Have fun!

Sunday, June 18, 2017

This is a special post. I won't be backing it up into my archives. I, frankly, don't want to look back and remember it.

I'm pretty pleased with myself. From the inception of this blog, I have managed to post at least two articles a week - usually three. I'm going to slow down now. I have  several archived articles (the ones I label "2016") stocked up that I can use to bridge the gap, but in a few months I'll be back up to normal.

We'll be moving over the next few months and I'll be focusing on that. I won't be in Bear Creek Valley, but I'll still be visiting it - I'll just have a much broader range since we're probably moving into Denver proper and, even if we veer off in another direction, the Denver transportation system is pervasive enough that I ought to be able to move around as much as I want. The Rockies are still well in reach.

So, this will still be the Bear Creek Commentaries and I will look forward to returning to full function when this dislocation is over with. I hope you continue to enjoy Adventuring. Stay well.


Thursday, June 15, 2017

--- Ubiquitous BASIC ---


I have another range - cyberspace. Specifically, I explorer the more abstract corners of the world by programming.

I originally learned to program using BASIC. "BASIC" stands for "Beginner's All-purpose Symbolic Instruction Code" and it was developed by John G. Kemeny and Thomas E. Kurtz at Dartmouth College. It was designed to be a computer language that is similar to English so that beginning programmers could easily learn to program. It quickly became a popular, all-purpose language. In fact, it is often included in other software as a macro language.

In college, I programmed for other people and never had a problem adapting to other languages (except for - shudder- COBOL). More recently, I've played around some with Python but mostly use LibreOffice's version of Basic. LibreOffice uses a trimmed down version of BASIC to allow users to program their office productivity software.

Friday, June 9, 2017

--- Memory tricks ---

I often need to remember things on the trail - usually directions, addresses or license numbers. Given that my memory has never been particularly powerful, at 63 years (almost 64), it is even less reliable - I need all the help I can get. I use the same system that got me through 10 years of college. It's the extended version of the Major system published by Jerry Lucas and Harry Lorrayne under the title, The Memory Book. It's still in publication, so, do yourself a favor and go out and buy a copy.

After learning the ten mnemonics for the digits and establishing your own standard mnemonics for the 26 letters, you can remember almost anything - long numbers, strings of letters and numbers (such as automobile tag numbers), positions on maps or latitude and longitude positions measurements, directions, instructions, just about anything but passages.

The Major system isn't to useful for prose, poetry, or the like, or it hasn't worked that well for me. I use other tricks for that.

Honestly, what has worked best for me in memorizing things like song lyrics or parts in plays (I used to get sucked into community plays with disturbing frequency) is over-memorization. After you've gone over Macbeth's soliloquy a couple of hundred times ("Tomorrow and tomorrow, and tomorrow creeps in this petty pace from day to day...." yadda, yadda, yadda...) it never leaves you. You wake up reciting Shakespeare. But there is an aid that is much older than Shakespeare and can even be fun for hikers.

It's called the locus method and it was used by Roman orators way back before the birth of Christ. It involves visualizing a very familiar place, such as your villa, and associating each phase of your speech with a part of the place as you pass through. Why not use your favorite trail?

At the plaza on the far side of the South Platte from where the Bear Creek Trail joins the South Platter Trail, I imagine a huge calendar flapping hard to blow people off the bridge. ("Tomorrow and tomorrow and tomorrow.."), but I ease by it stealthily and gain the other side ("creeps in this petty pace from day to day"), but - oh, no! - I'm attacked by syllables! ("Until the last syllable of recorded history."). And there's a big spotlight - what's that prison tower doing there? ("and all our yesterdays have lighted fools the path to dusty death"). Hack, hack! and all this dust - gotta get away! so I turn down the trail and run toward the plaza on the trail, but everything is cast into blackness and I turn to see that the guard tower was lit by a big candle which has gone out. ("Out, out, brief candle!") I'm almost knocked down by a strutting fret board (guitar or violin - I don't know.) worrying about the lack of a shadow ("Life is just a walking shadow, a poor player, strutting and fretting his last hour upon the stage.") I get past the fret board into a brief silence ("And then is heard no more.") But then there's this stupid loudspeaker amplifying the sound of the weir dam into a cacophonous roar (It is a tale told by an idiot, full of sound and fury,"), but I make it past that, eardrums intact and continue down the trail to home ("signifying nothing.")

I guarantee that there is a high school student somewhere trying to memorize this very passage, and I've had numerous requests to do it in my best redneck accent (not difficult since I grew up in the South and am, in fact, a redneck.)

Believe it or not, it works. Give it a try sometimes.

Thursday, June 8, 2017

--- Getting started in programming ---


There are still plenty of reasons to program computers.

Most software products have a limited bag of tricks. The developer has tried to figure all the features that a typical user would want from their program but there is no truly typical user. Sooner or later, everyone is going to gaze dreamily into the distance and say, "I sure wish this program could....(fill in the blank.)" The answer is to be able to program the computer to do what you want it to do.

A lifelong learner has much more reason to program. Programming a concept into a computer - teaching the computer to do what you're learning how to do - requires that you take the concept apart (analysis) and then put it back together in a form a computer will understand. You get to see the inner workings of the concept. How can you help but to learn?

There are many very accessible languages available to the beginner.

In fact, BASIC stands for Beginner's All-purpose Symbolic Instruction Code. It is designed to be easy to understand and easy to use. Even better, most of the office productivity suites like Microsoft Office, LibreOffice, and WPS uses a version of BASIC as a macro language. If one of these suites doesn't do something you want it to do, you can teach it to do the task and it will happily oblige you.

I like LibreOffice Basic because LibreOffice is a free, full powered office suite and, if you are using it to look at my Excursion documents, which are LibreOffice documents, then you're already set for programming with LibreOffice Basic.

There are programs that are designed to be fun and useful.

Scratch is a programming language consisting of blocks that you snap together. It was originally designed to manipulate graphic images in a learning environment, but with Custom Blocks, you can program it to perform more typical computer tasks.

If you want to play around with Scratch, you can find it here:

Two languages that provide instant feedback as you program are Python and LiveCode. Both show you what your statements do as you type them in.

Python is a very popular, but fairly typical language. It seems too be very easy to  learn using supplied tutorials and user guides. You can find it here:

A modern version of a cool, old language (it was way before it's time back in the 70s) is LiveCode, an update of a language called HyperCard. It's also an object oriented language that will manipulate graphic objects, but it does much, much more. It's intended to be able to work with many platforms. Look at it here:

A similar such language also designed to be multiplatform (you can write programs to be used with many different systems - they're even working to make their product compatible with smartphone operating systems) is Xojo and here is their website:

In future articles, I will be giving you some tips for programming in LibreOffice Basic, primarily because it is very accessible, and most of the work I'm doing now is in that language, but, certainly, if you decide you like programming, look at these other languages and you might even want to spread out and play with some of the many (many!) other languages like C, FORTRAN, or (Whoa!) the assembly language for your processor.

--- Notes on self-centeredness ---

Selfishness is not living as one wishes to live, it is asking others to live as one wishes to live.

Oscar Wilde

Humans are conservative. I guess it's evolutionarily advantageous - change is bad because it requires adaptation, but then there's Ashby's Law of Requisite Variety. There's a balance required between avoidance and acceptance of diversity.

In my life I have seen a lot of change. The world forces change on us.

When Martin Luther King was looking for support, he traveled north to Chicago, hoping that he would find a more friendly environment. I remember the reports. What he found was a whole new level of virulent hatred. I lived in the South through most of that. Maybe we changed or maybe we didn't but things certainly changed around us.

Many didn't change, obviously. They just squirreled their animosities away. Probably at home where they could rant at leisure, because with the advent of the Trump Administration, they evidently thought that they had found new license for hatred.

I lived through the age of Gay acceptance. When I was in college, homosexuality was still in the DSM as a form of mental illness - now it's vanished and people rarely ever think about it. There was some rhetoric about the Bible, that book that Christians seldom read and rarely study. But most of what I heard was rhetoric about "our way of life."

And so, back to Mr. Wilde's quote above. The tacit assumption is that, if we allow others to live the way they want to, we will not be able to live the way we want to.

America is a melting pot - it always has been. Diversity has been the norm.

Maturity brings much change into a person's live. We are born selfish creatures. A baby wants what they want now and every other thing in their environment is there to supply their needs. It has to be that way because babies can't supply their own needs. But we can't continue to live like that. Other people do not want to be our overseers. They have their own lives to live and, where we do have to rely on our neighbors to a certain extent, at least we must rely on their good will, we are expected to be self-sufficient as adults.

There has been a serious disconnect. Where, even 50 years ago, when I was a child, people had to establish relationships with others in their world for purposes of survival,. Now, security and self-validation is drawn from technology and we feel that we no longer need others. It's a delusional security and I'm afraid that we will be disabused in a most inconvenient way.

Friday, June 2, 2017

--- Why I talk to "animals" ---

People may think I'm crazy, greeting all the dogs on my hikes with "Hey guy!" and carrying on my one-sided conversations with them. But there is method to my madness.

If you want a good read into the mind of the nonhuman, I suspect that you couldn't do much better than to get Temple Grandin's and Catherine Johnson's  Animals in Translation. Ms. Grandin writes from a personal perspective since, she says, there are many similarities between the way a person with autism thinks and the way a nonhuman animal thinks. And she is autistic.

I also suspect that there are things that she gets wrong because, despite the similarities she sees, nonhuman animals are not autistic humans (and I will emphasize that she expresses the same in the book, so I am not contradicting her.). But it seems to me that she gets a lot of things right.

Pet owners and animal trainers are aware, have always been aware, of how stupid the Cartesian idea that nonhumans are only automatons, is. Beside that, I almost respect the Skinnerian idea that humans are also automatons. At least Skinner recognized that like implies like. If what nonhumans are doing things that look like what humans do (e.g., think), then it make more sense to posit, at least unless it has been shown to be otherwise, that they are, at least, quite similar. If it looks like a duck, and it quacks like a duck....

Regardless of what a dog thinks I'm doing when I give out a hearty, "Hey, guy!", it at least registers in it's doggy brain that I'm not aggressive and that I'm not afraid of it. There are several dogs in the neighborhood that sounds like, if they ever were to get out of their enclosure, they could do some real hurt to whoever is available. I hope it's someone like me because, at least I will be starting at a point of recognized equanimity.

I had a friend many years ago who trained his chows (in my memory, there were four) to attack on command and he wanted to demonstrate their training to me so he asked me to stand at a point in his yard and he let the dogs out of their enclosure and then he said, "Get him!".

I don't know what he planned to do to keep them from "getting me," but it was a non-issue.

They advanced on me, snarling and snapping, and I stared at them and growled. They stopped in a line and continued snarling and snapping, but they came no closer. My friend was furious and rushed them back into their fenced yard.

I think that people die in encounters with vicious dogs because the situation is so seemingly alien. Dogs are short and furry and their passion looks almost demonic. People don't seem to realize that, yes, they can fight back. They might get bit, but dogs don't enjoy being battered in the face any more than anyone else. They don't enjoy being kicked or punched in the kidneys. They're not the automatons that Descartes said they were.

--- Notes on law ---

The life of the law has not been logic; it has been experience. The felt necessities of the time, the prevalent moral and political theories, intentions of public policy..., even the prejudices which judges share with their fellow men, have a good deal to do... in determining the rules by which men should be governed.

Oliver Wendell Holmes Jr.

As a social psychologist, I look at organizations as I do individuals. I look at the law as a conscience of a country. I have said before that, if an organization is to have a conscience, a sense of morality, it has to be built in from the inception, and like a moral compass in a person, that conscience, that body of law, can be lost in time.

As a person's ethic embodies their development (as the older folks say, "Their upbringin'"), a nations laws embodies its history.

I'm not sure what good the idea that laws should be just does. Laws can be just but that's not their purpose. Laws exist to attempt to establish internal equilibrium in a social organization. If the "central nervous system", the governmental bodies that provide whatever central control to the organization, thinks that accommodating the powerful individuals in the body is what is required to maintain equilibrium, then that is what they will do. If they are wrong, it leads to disequilibrium. But, evidently (to any reader of history), the "revolution" that follows in the organization is as likely to lead to more disequilibrium before it dies down to "business as usual."