Wednesday, August 16, 2017

All-Or-Nothing Rhetoric, and Why I Dislike It

PC enthusiasts are a danger to society.  Let me explain.

As we have all seen, Homosexuals and Bisexuals fought long and hard to earn a few important rights for decades, and won those rights, which we call LGB rights.

Soon, the media and minority rights proponents insisted that those same rights should be extended to Transsexuals, Queers, and other members of the alphabet soup, and today, LGB has been replaced by LGBTQI....  This tendency to piggyback these issues on top of issues that were decided favorably is something I deplore.  This is not the time to examine the cases for extending whatever rights were given to LGB individuals to Transsexuals; I personally feel that the jury is yet out on those questions.  But there's no doubt that there is a tendency to go from zero to 100% in these matters, which unscrupulous politicians and lobbyists exploit, to their detriment. 

Consider the current uproar over the lack of condemnation of NAZIs from the White House.  What I'm hearing in the media seems to carry the subtext that the NAZIs are guilty whatever they're accused of.  Those of us who are reasonable know that this is not the case.  But the rhetoric certainly seems to suggest that.

What do we mean when we call someone a NAZI?  Obviously, if they call themselves NAZIs, we're allowed to do the same.  To be definite, they may want to eradicate all non-whites from a particular geographic region.  They may want to destroy all non-whites from a region.  They may want to deport all non-whites from a region.  They may want to incarcerate all non-whites.  They may want to reduce all non-whites to a second-class citizen status.

Unfortunately we seem to have given over all our important thinking to a few uneducated morons, who will conveniently lump all those groups into one.  "You know what?  Anyone who wants to reduce non-whites to second-class status is a Nazi!"  Clearly, though, while certain sectors of the population, such as the KKK and other bloodthirsty murderers may want to purify the nation by any means necessary, others merely deplore the erosion of the privileges they enjoyed when whites were the absolute majority, and all others were here on sufferance.  I mean, there are those who even resent women being permitted the vote.  It is misleading to call these people NAZIS.  It is propaganda.

Painting everyone by the same brush, though convenient, is wrong.  Just as we should not grant all privileges to everyone thoughtlessly, so must we not condemn everyone who does not want illegal immigrants to have all rights that citizens have.  This is why there is so much resentment against liberals among the members of the population whom the Alt-Right seeks to provide leadership for: Liberals have for decades run headlong into sociological china shops.

Someday, I am sure, all this LGBTQIJZ nonsense will become irrelevant, just as genetically modified corn will be accepted.  But that day is not today; there are issues that need to be ironed out.  Similarly, it is by no means obvious that illegal immigrants deserve all rights that citizens deserve--anyone who asserts this is not thinking clearly, and may not actually mean what they say--but we can agree on some aspects of that extreme position: for instance, we could agree that immigrant children, have many more rights than adult immigrants.  The case of immigrants is strengthened by the fact that American industries enjoy the lower wages paid in Mexico, which is what drives Mexicans across the border in the first place.  We can't have it both ways.  We cannot exploit the depressed economy of Mexico, and at the same time morally impose draconian measures against illegal immigrants.

Having said all that, I suspect that Trump may have set out to appease die-hard white chauvinists with a few anti-immigrant sops.  He has quickly found out that being president is not as easy as declaring a casino bankrupt.  He probably doesn't quite understand the seriousness of his position, but he certainly knows that it is humiliating.  Unfortunately, the humiliation initiative is overshadowing serious steps that need to be taken to halt the chaos that is slowly overtaking the nation.  Liberals and Democrats are too easily satisfied with ridiculing the president.  Ridiculing Trump is no great achievement.

Let me finish with a plea for (1) careful use of language, (2) careful adherence to law and logic, and (3) a focused, responsible, patient approach to politics and leadership.  The Democratic party was on autopilot this last election, and now it's time for actual thinking.


Monday, July 17, 2017

Words: Another Argument for a Real Education

We were talking about Education for several years, and I was limping along, trying to explain why some things I was doing were not working, and why both teachers and students are frustrated by the process of education, with the education system we have.  And then Trump happened.

You see, one of the most enormous problems we have in explaining things to each other is words.  A lot of the time, if we're talking about recipes for Strawberry Pie, or something relatively simple like that, there is no difficulty.  What you mean when you say Strawberry is probably pretty close to what I mean by that word, and what I mean when I say pie is pretty much what you probably mean.  (Even here, there's some room for confusion, especially if you've never really made or eaten a Strawberry Pie, but more on that later.  Much later!)

Many of those who have gone to college are likely to suspect that the reasons why being President so confuses Donald Trump is probably education.  But wait; he has had a college education: a Master's degree from the University of Pennsylvania, if we're to believe the news reports.  What has gone wrong?

Why did such a large number of people jump on board the Trump Wagon?  Again, the culprit might seem to be education.  But are we sure?

A significant skill one learns in a quality education is to use words with precise meanings.  What does education mean to you?  The obvious answer is that in college one learns a lot of things, and so it depends on which of those things we're focusing on.  We have to have a major, and we could have a minor, and any number of general education courses, and we could take all sorts of electives, which are neither for your major or your minor, but just for the heck of it; and we could play varsity athletics, and so on, and so forth.  Which of these does one mean when one talks about someone being educated, and someone else not being educated?

The skill that the Trump Administration and all its beleaguered members seem to trip over, is that of using the right word in the right place.
They read the Constitution, and they don't understand the words.  Of course the Founding Fathers meant different things than we do when they said "The right to bear arms," or when they use the words "All men are created equal", or similar expressions that must be understood in context.  Even experts in constitutional law disagree in how these terms should be applied: whether we must take them as they would have been understood in the 18th Century, or whether we should use them in some sense that has been translated to the 20th or the 21st century, where Arms could mean anything from a Flintlock to a Bazooka.  But there appears to be confusion in understanding the meaning of even quite unambiguous language.
Then, they look at an understanding that does not have the force of law directly, but does so indirectly, such as the proscription against retaining control of a business that can profit because of the owner being President; it does not seem illegal.  This is a different kind of blindness.

Almost more important are the words that are needed to exactly explain what the administration is thinking.  Trump thinks of speaking as merely spewing advertising copy.  He is accustomed to addressing an audience that has, up to now, been perfectly satisfied to take at face value his words that "It's going to be great.  It's going to be the best you ever saw."  But at least a few of his followers are now ready for two things: One: How exactly is it going to be great?  and two:  Can we have some input into it?  The hallmark of a great administration is its ability to explain to the public what they're planning to do, and why.  And How.

A third sort of skill, and unfortunately many college graduates never quite get this, is that a good education should make it easier for a young person to understand and deal with ever increasing levels of complexity.  Every year, the kids are able to tolerate less and less complexity, until colleges are driven to stick simply to the syllabus of high schools.  Unfortunately, the area of Business Management is notorious for being one in which there is no real penalty for those who want to oversimplify things.  This is especially true if one has a lot of money to throw around, because one can always buy one's way out of trouble.  Trump's numerous bankruptcies send up a red flag to those who know: Trump has not taken into account where things could go wrong.  Things could go wrong when trying to set up a casino.  How much more can things go wrong when trying to set up health care for a nation of 350 million people?

There is very little that stands in the way of Medical Insurance Companies raising their premiums as high as they like.  This is America; businesses are allowed to make profits, and Health Insurance companies are businesses.  But yes, there are a few regulations (far too many, in the view of the Insurance Industry) that hold back the rates to levels that just barely make it possible to afford them.  Big businesses must find ways of paying the ridiculous premium rates that the Insurance Industry demands, to allow them to take home the profits to which they have become accustomed, and now everyone must pay the premiums, under "Obamacare", not just the chronically sick folk.  Then there is the pre-existing condition problem, Medicare and Medicaid, and prescription drugs, and the Death Committees, and so on.  And of course, Family Planning.  It is complex.  But to someone who has merely a business degree, almost any complexity is too much complexity.

What about the complexity of International Relations?  Once a bunch of politicians (whose only claim to fame is that they have wealthy friends) take control of any government, they get into a spiral of systematic oversimplification that leads to (1) reduction of services, (2) escalating racism and xenophobia, and maniacal nationalism, all in the name of (3) reducing taxes, all of which is supposed to (4) give business a shot in the arm, but which instead leads to cultural chaos and civic unrest and general alienation.

Almost any time Trump says something to a foreign leader, it seems to cause unhappiness somewhere else, not least right here in the good old US.  What is this, he's probably thinking, I can't hardly say anything without bothering somebody!  Nobody seems to be happy with his banning Islamic visitors wholesale.  Nobody seems to be happy with his choice of Secretary of State.  Nobody seems to be happy with how he deals with Russia, and those jokers seem to want to fool around with US elections, something that seems never to have happened before.  And though the fooling around was in favor of Trump, the president is not happy with all that.  Every time he pokes the balloon on one side, it pops up on another.  Welcome to international diplomacy.

What exactly is alienation? It is a condition where a person does not understand the motivations of another person.  A lack of empathy of frightening proportions.  Back in the early fifties, when McCarthyism was in high gear, half the people empathized with the socialists, including those who viewed Franklin Roosevelt's social and economic reforms as lifesaving, while the other half considered any sort of social welfare as driven by communist influences.  Over a decade, half the population was determined to go into Vietnam and do some serious communist butt-kicking, while the other half was aghast at the prospect of having to go into a foreign country and kill people who seem to have a perfectly good right to choose a communist government if they wanted to.  What we ended up with was acute alienation, where personal values were so different from person to person that young people simply could not subscribe to the values of their parents.  Today, too, the Democrats are preoccupied with Trump and his offspring meeting with Russians.  These meetings, in my view, are really insignificant.  The important things are the new Health Care bills.  They cannot be any better than the existing ACA a.k.a. Obamacare, which does not prevent the Insurance Industry from ripping off the people anyway.  But I can hardly conceive the GOP being any tougher with the Insurance Industry than Obama was.  We cannot have decent affordable health care until Insurance Companies are all shut down, and obviously replacing their services with a government-run agency simply means Medicare for all, which nobody minds, except that the GOP would view that as total defeat.  However, though many of us have difficulty subscribing to the values of Trump supporters, we do not elevate this phenomenon to the point of calling it alienation.

There are other things that education provides apart from an appreciation of language, and a degree of comfort with complexity, but sufficient unto the day are the evils thereof, as a great man once said.

Arch, exhausted.

Thursday, July 6, 2017

Computer Education for Everyone, Part 0: History

When I first went to college, I had four interests: physics, mathematics, computer science, and music.  These are still my interests, but I want to focus on two of them.

Mathematics has been around for millennia; I mean, the Egyptians (whoever they were; they might or might not have been the ancestors of those hanging out in the UAR today) used it, and so did the Arabs, for instance to cross the desert.  We know that the ancient Greeks knew a lot of mathematics, and we also know how they taught it.  The art of teaching mathematics is also several thousand years old, so there are new fashions in how to teach mathematics, but they have a tough job competing against ancient methods.  In contrast,

Computer Science only arrived in our midst about a century ago, but since then, the techniques of programming, and teaching computer science have changed furiously, so it is incredibly difficult to keep up.  Back when I first started working, I taught the first several courses in computer science using methods and tools that seemed very simple to me.  But in 1995, everything changed.  When Windows was created, and shortly afterwards, the Windows_95 operating system that was native to the newer PCs, the programming game had to change.  This is, in retrospect, not hard to explain, though I was never happy with these changes.

The elements of Programming
The computer is a clever device that has two aspects to it.  Firstly, it has storage, which is a huge number of places on the computer chip that can remember numbers.  Secondly --and this is the clever part--it has a unit that can obey instructions.  This is the part that boggles the mind of non-computer people: how can a computer obey instructions?

(By the way, the storage (or the memory locations) are numbered from 1 to 1,048,576 (or something like that; it depends).  It's an enormous block of apartments, each of which holds a number.)

Back to instructions.  Essentially, the basic computer chip obeys instructions such as: "Go put this number in location 3."  More interesting instructions are like: "Check the number in location 7; if it is 0, go to step 8,  otherwise, continue with the next instruction."  The wonderful thing is that, with a little work, several hundreds of this sort of instruction can play a Netflix movie for you, or solve an equation, or put an astronaut on the moon.

Back when I was teaching computer science (we were already past the punched cards stage), the only way to get any instruction into the computer, at the level at which we were teaching, was through the keyboard.  The only things you could get out of the computer, was on the screen.  This made things simple.

Still, many fun things could be done with these simple tools.  By packaging large sets of instructions together, we could make our own super-instructions.  For example, we could set it up so that the computer could sort a list of numbers in increasing order!  But if we got tired of having it do that, we could have it sort 25 lists of numbers, and sort each one.  Okay, that's pretty tame, but the interesting thing here is that once you solve a basic problem, like sorting, you could package that solution into what is called generically a module, and use that module in a more complex program.  You could call your module sort, and use it as if sort was an instruction, just like Put this number in location 3 was.  You could add to the language.

Objects.  In addition to these super-instruction modules, we could invent various gadgets.  For instance, using numbers, we could make gadgets called characters!  Remember, the basic things a computer uses is numbers.  But making characters is easy; we basically say something like 65 stands for A, 66 stands for B, and so on.  So, as long as the computer knows that you're interested in characters, when you say 69, it knows you want E.

A second ago, we were talking about lists of numbers.  Well, we can really do nice lists of numbers; it only takes a bit of careful organizing (which, mercifully, the programmer does not need to do; the programming language easily takes care of it); it only needs to know how big your list is.  We can do better.  For instance, I could invent a gadget called a student record, which has a mixture of different sort of simpler gadgets: A name, a homework score, four test scores, a final score, and an average.  Now, you have seen things very much like this: this looks like a row in a spreadsheet, if you've used one of those.  Well, a spreadsheet is pretty much a huge rectangle of multi-purpose gadgets, set up so that each place can be one of several sorts of gadgets.

When Windows came along, the gadgets aspect of programming completely took over.  The new generation of gadgets were far more complex than just a name, or a score, or a list.  For instance, Microsoft programmers invented a thing called a Window that had various parts: the title bar, the width, the height, the position on the screen, any boxes in the window into which you might want to type things, how you move the window, what color the background is, and so on and so forth.  Further, Microsoft provided the gadgets it wanted you to use: it was called the Windows API,  which is short for application programming interface.  At that point, students were taught to use built-in gadgets (objects), and learn how to solve various problems with the objects that were available.  They could advance to creating their own gadgets, and fairly soon.  But now the gadget tail, or the objects, were wagging the programming dog, which was a little difficult to adapt to.  Many computer science teachers have made the transition with ease (and I, too, have taught a few courses using the new object-oriented paradigm for special purposes), but the added layer of Windows seems, to me, to obscure the transparency of the programming process.

I must be one of a small minority that rues the progress of the computer science environment.  The proportion of people going into programming has fallen off, it seems to me; most people are satisfied to just use computers, and not program them.  So millions of people are able to use word processors, such as Word or WordPerfect.  (There are others, and for free, too: Open Office Write, for instance.)  Or browsers, or spreadsheets, or PowerPoint.  I'm not even sure what the generic word for software such as PowerPoint is; something like slide show, no doubt.)

Peripherals.  The programming setup of Windows changed other things as well.  The output was still the screen, but instead of being set up to show just letters of the alphabet, it could now show pictures.  Pretty soon, it could play music, and send out messages along the lines: email.  All this could have been handled with basic object-oriented programming, but once the fully-object-oriented paradigm came to dominate the programming environment, and the accompanying languages, C, C++ and Java became the only games in town, you had to come to terms with the vagaries and peccadilloes of those languages.  Among other things, this encouraged bad programming habits among weaker programmers, because there were short cuts that they began to take en masse, which made it difficult to repair broken programs, and upgrade programs to keep up with user and hardware demands.

Operating systems did not impinge on the attention of the average citizen until a few decades ago.  These were initially supervisor programs that allowed a number of users to use the same mega-computer.  You "logged in", and used the same computer as several dozen others around you.  The operating system ran programs for you on request, such as an email program, or an editor, or a browser, or whatever.  Nobody paid much attention to what it was called.  Then, the innovators at Bell Labs designed a highly flexible operating system called UNIX, which was practically a program language on its own; you could chain together UNIX commands to make it do more interesting things.  For the record, as per Wikipedia, it was designed and implemented by Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas McIlroy, and Joe Ossanna, and intended to be a sandbox in which they played at Bell Labs.  But somehow, UNIX began to spread throughout the computer science university community, becoming something of cultural artifact; nobody could call himself a computer scientist back in the later decades of the last century and still be ignorant of UNIX.  Teaching UNIX to sophomores was important, because it could be used to illustrate problems with file management, security systems and passwords, and so on.  For some reason, almost all operating systems began to look like UNIX, for example the DOS operating systems of Microsoft, and later, the Apple operating systems.  It was always considered open source; in other words, anyone was permitted to port it to their computers, within limits.

Today, of course, we are familiar with Android, the operating system developed by Google, which is a descendant of UNIX, via Linux, which is an adaptation of UNIX to the PC architecture.  (In fact, UNIX has been adapted to most computers available today.)

The task that computer educators face today is to find a balance between (*) teaching the cultural environment of programming versus programming, (*) general principles of programming problem-solving versus specific solutions, (*) applications in a peripheral-rich environment versus those in an environment of a simple set of outputs and inputs, (*) choosing between a programming environment specifically designed for beginners, and a trivial application for real-world hardware, such as a smart phone.

It used to be that, at my school, we taught basic programming to even nursing students.  The board that accredited nursing degrees required that every graduate nurse had to have a certain minimum of exposure to computers, since they could not anticipate in which direction medical technology would advance over the next few years.  Today, of course, nurses would never consider learning programming, but would settle for experience with hospital software of various kinds.  Regrettably, programming is evolving into a game for specialists only, and I am rooting for this process to be slowed, halted, or reversed.

Finally, women in computer science are increasingly alarmed at the drop off in the proportion of women going into the math and computer science area.  It has been found that women make excellent programmers.  In fact, some of the earliest applied mathematicians and computer scientists were women, at a time when we would not have expected women to go into any technical field at all.  (In fact, Hedy Lamarr, a well known Hollywood actress, invented a method for disguising the control signal of torpedoes in WW2.  Aspects of her work is said to be used in wireless security technology, but I might have misunderstood this piece of information.)

Into this environment comes the Raspberry Pi, a tiny computer you can buy for around $35, which was intended to encourage British kids to get interested in computer programming.  The very fact that it was an absolutely stripped-down piece of circuitry made it completely flexible.  It was to hardware what Linux was to software.  Now, four years after the first model was introduced, the third generation has even Bluetooth built in.  So much for basics!  On the plus side, more people are likely to get into it (already 8,000,000 Raspberry Pi devices have been sold, worldwide), which means that interest in programming could rise.


Thursday, June 29, 2017

Klass: Grata and Non-Grata Personae in the New Order

In the chaotic world of the current calendar year, some patterns are emerging.

President Trump's hallmark is apparently inconsistency.  At one time I sincerely believed that it was a signature characteristic that was carefully engineered, but it appears that it emerges naturally; in the Brownian Motion of Trump's responses to media reports, the randomness of the editorial angle on the news of the day is amplified by Trump's irrational understanding of those angles.  But another characteristic property is also emerging: prejudice.

There are blocks of the population that Trump likes, and those he does not like, and he is not shy about being found out.  We know he prefers what he views as Traditional Americans : White, Anglo-Saxon citizens (in contrast to immigrants and blacks).  He prefers men around him in the White House, except for departments that he thinks of as being inessential, such as Education.  In fact, he prefers people who stick to any prejudices similar to his own, and if they do not care to defend those prejudices, so much the better!

But, on second glance, there are a good many Hispanics and other ethnicities not considered traditionally WASP in his circle.  What has qualified these people to work for him?  They're affluent.  So you can be a member of a minority, as long as you're rich.  In a recent statement he said that he preferred to put people with money in charge of social services because they're accustomed to handling money.  Unfortunately, his phrasing of this criterion was somewhat tactless.  It boiled down to: do you want to have someone who's never handled a lot of money being in charge of these things?  Of course you don't!

How can we simplify this sorting of people into two groups: those allowed to take government responsibility, and everybody else?  It appears to be based on his assessment of some kind of class. We all have our own idea of what constitutes class in the sense of "That guy has class."  Of course we're talking about president Trump here, so many of us use the word differently than he does.  He has the class of an oil sheikh making a cash offer for your wife.  "How much?  How about $1000? No?  $10,000?  OK, $100,000, and I'll throw in a Mercedes."  So, if you have money, you automatically have class.  Let's spell it Klass, to distinguish it from the usual kind.

People who need Medicaid, evidently, are of the No Klass kind.  In fact, if you don't have a job, you're Low Klass.  If you had to actually apply for a job, you're probably Lower Klass than if you got one from your dad.

Politicians of the last several decades have tried very hard not to appear to be influenced by class politics (except of course economic class politics, which is impossible to avoid; Reagan and Romney had to dog-whistle-ize economic class politics).  When prejudice becomes an open issue in any campaign, the tone of the campaign goes right through the floor, and we've seen that happen.  Even many of president Trump's supporters are not happy with race politics, which gives me hope.

This is all very confusing to me, because I was brought up Methodist (though I am not one now), and according to our trade union rules, gambling was a sin.  This makes it very hard for me to take any sort of Casino King seriously.  Every time I see Trump in the news, I immediately see a slot machine. But I'm trying; this is serious stuff.


Wednesday, June 14, 2017

Practical Suggestions for Improving Things

This post is going to draw together a number of different ideas from a variety of subjects, so it's going to look pretty scattered, but ultimately, it is a common sense way of thinking.  The conclusions are also applicable to many different situations, so stay with us, in case the application that's relevant to you doesn't pop up right away.

Whenever anyone goes into a new job, or undertakes a new task that has to be done repeatedly, such as, for instance, a new teacher who has to teach some low-level class every semester, or a programmer who has been assigned to churn out an entire pile of little programs, all of very similar type, (the similarity aspect is not really pivotal,) there is a tendency to make little adjustments to the task, to make it easier on the worker.

Often, junior employees get assigned the less interesting jobs, because (for obvious reasons) the other jobs have been long desired by more senior workers, and they jump on them the minute they become available.  Initially, the new worker takes on his or her new task with some enthusiasm, but fairly soon the tedium of it sets in, and presently all s/he wants to do is to get the job off his/her desk, get the item off the agenda, get the idiot kids out of his/her classroom.  S/he'll never see them again, and good riddance!

But life is unfair, and one fine day, the employee gets to work on a new task, where the old work, shoddily done, suddenly reappears.  "Who taught you guys Trigonometry?"  You did, teacher.  Or "Who wrote this crappy piece of code?", or Who passed this zoning ordinance?  Or Who set this fracture?  You never expected that shaving that little bit out of the unpleasant task long ago would affect your future performance.

It's not just that shoddy work is, well, shoddy, which is obvious.  But rather that a new employee does not realize that shoddy work is not only bad in principle, but that it is a liability for him or her in an immediate way.  A new teacher might fall back on tweaking the details of a course to make things easier for herself.  But the consequences of the tinkering affect those who inherit the same students in future courses, that is, downstream.

The same principle holds, even if the tinkering is a well-meant improvement.  In actual fact, the phenomenon is part of a larger picture and a larger problem: How can one improve an entire multi-step process, without precipitating a domino-effect serial catastrophe?

Most people are not familiar with the idea of computer programming, except in the most general way, but, you know, it is such a useful concept that it should interest everybody.  Just a few examples will get the idea across.

A central idea of a program is the sequence of steps.  Not every segment of code proceeds sequentially (one step, followed by the next step); sometimes the sequence has to be changed in response to some situation that crops up, and a good program anticipates these, and has these responses built-in.  But ultimately, sequential code is the backbone of programming.  Here below is an image of a pseudocode program that does something symbolic, I believe.  (Many programming languages have a somewhat common design, so that generic programs in a sort of fictitious language can represent a solution to a programming problem.  This language is called pseudocode.)
As you can see, the program proceeds in steps, though some steps are compound instructions that require repetition (such as Step 6, for instance), and other steps are also repetition steps, where that loop has been manually set up with jumps, such as Step 5 through Step 12.  (It could have been done with a FOR instruction, as you might have guessed.)

A junior programmer might only need to dash off a short program, and never see it again.  But depending on various circumstances, the program may need to be tweaked.  In fact, most experienced programmers will tell you: tweaking is almost all there is.  By this they mean that the vast majority of programs need to be adjusted, either to improve efficiency, or handle outmoded hardware being replaced with new hardware, or obscure faults in the code that were never revealed for years (or many days, anyway).

Imagine a programmer staring moodily at a long program, which has to be modified to do the same job in a slightly different way.  As you can easily see, changing the last few steps of the program is much easier than changing the first few steps.  The downstream steps can be more easily changed, and in fact the code can be trial-run.

[Note: we are not advocating just changing the last few steps only.  If the changing is to be done a little at a time, changing the last few steps first, and then checking that the whole program works, makes sure that at least that last segment is fault-free, after which you can go on to look at the earlier steps, incrementally, working backwards to the beginning of the program, or block of code.]

Another analogy.  Suppose a school or college has decided to do away with a certain course.  Before the course is actually removed from the catalog, it is best to modify the most downstream courses to respond to the planned removal.  If you start at the lowest-level courses that depend on the course that is planned to go away (the upstream courses), the downstream courses must respond not only to the course targeted for axing, but the other altered courses as well!  Particularly, if the changes are to be made one course at a time, you have to start at the highest level course.  In fact, the highest-level courses can be changed without any domino effect, as is obvious.  (Changing the highest-level course, the last course in that stream that a student is likely to take, could certainly change the overall effectiveness of the curriculum, but it will probably not interfere with the preceding courses.)

Now for something slightly different.  A decision can be made on either theoretical grounds, or based on experience.  Experience, of course, is the greatest teacher.  If you lie down on the railway tracks, just for fun, and get run over, you're obviously never going to do that again.  But we can be taught to avoid risky behavior, and that is what we call education.  Education gives us a tool chest of theoretical principles that obviates the need for experience.  Unfortunately, when it comes to making changes, the experienced worker is in a better position to figure out in what sequence changes can be safely made, because the theoretical analysis of the situation can only work if every possible factor is taken into account, something that an inexperienced worker will find very, very difficult.

An area in which it is very difficult to see all the factors that impinge on a decision is, surprise: local government.  In fact, any sort of government.  Suppose it is desired to save money by reducing the services provided to abused women.  (Presently, at least in Pennsylvania, many counties provide temporary housing for abused women and their infants, until arrangements can be made for them to find secure homes for themselves.)  If the number of shelters are gradually reduced, abused women in the future will need to live in the abusive relationship for lack of a place to go to, and if the abuse escalates (as it often does), firstly, police officers will be called upon, to defend the victims; secondly, hospital emergency rooms will see an increase in the incidence of battered women needing treatment, thirdly, school truancy officers will need to investigate whether children are not attending school for truancy or for a parent unable to get them ready for school.  So it is very possible that a change intended to save money, actually results in an overall increase in costs, possibly placing more of a burden on other departments somewhere else.  (Some politicians are perfectly satisfied with this Moving Expenses To Other Departments game, but it is foolish and immature, and such politicians must be removed speedily.)

Those of us who have no occasion to be familiar with these matters have no inkling of how, for example, issuance of zoning variances could affect the noise level in a neighborhood (of course, the plutocrats who can afford homes far from the industrial zone do not care, and they expend great effort to ensure that they control the decisions of whose consequences they are immune), or how industrial effluent can hurt fishing streams, unless it is carefully treated, or how rural roads can be degraded by heavy trucks going to and from the industry.  The big picture is important.  But some big pictures are really too big, because the smaller pictures are more complicated, but the big-picture dreamers are very intolerant of complexity.  Some of the "small stuff" does need to be sweated.

Lots of things to think about.


Sunday, June 11, 2017

Wonder Woman: Multiple Thumbs Up [Note: A Few Tiny Spoilers]

Yes, we went to see Wonder Woman last night, and had a spanking good time.

Don’t get me wrong: I could see spots here and there that I felt could have been done differently, and better.  But man, it was just a lot of fun!

I’m not going to spill a whole pile of spoilers, but I need a little something on which to base my explanation of the features of the movie.

Firstly, the star of the movie is Gal Gadot, who has already played Wonder Woman in an earlier movie, Batman vs. Superman, or something like that.  The interesting point is that she has a slight Israeli accent, but she exaggerated it a little for the role, and all the actresses who played Amazons (a legendary —or mythical— tribe of women) adopted a slightly exotic accent, which made beautiful sense, because the one thing we could say with confidence is that Wonder Woman would not have an accent from the American Midwest!

Gal Gadot, secondly, is a beautiful woman, neither annoyingly slim nor dreadfully muscle-bound.  She did not look like a body-builder, nor an athlete (which would probably have been fine), but rather like a dancer.  She was supposed to look like a typical woman, who was of course a trained fighter, without any obvious physical peculiarities.  She had medium-short hair, the bright eyes you find in someone who is confident and aware and curious about the world around her.  But you discover very soon that she is not a genius.

Mini Spoiler No. 1:  The Amazons live in an island (or cluster of islands; traditionally Atlantis, but I think they changed its name for the movie) which is magically hidden away from the rest of the world.  After Zeus, father of the Gods, created the world, and mankind, and his fellow-gods, in the course of time, apparently, mankind and the other gods unleashed destruction on the Earth, the chief agent of which was War, the god of which was Ares (which they pronounce “Aries” in the movie).  Ares was unstoppable, and, says the narrator, things got so bad that Zeus had to create a tribe of women with special powers, to guard against the eventuality that Ares would arrange for the destruction of Mankind through cataclysmic wars.  (Of course, just as the Amazons were hidden from the rest of the world, the World was hidden from them, so it was unclear how they would find out what that bastard Ares was up to.  But they do . . .)

Mini Spoiler No. 2:  The story is set in the last weeks of World War I, which was called “The War to End All Wars” at that time.  A plane crashes into the water just offshore from where the Amazons lived, and our girl Diana is, as always, prowling around, exploring in the night, and sees the crash, and that there is a person entangled in the wreckage.  Unable to get free, the occupant and the remnants of the plane sink into the water, and Diana  fearlessly dives in to rescue the pilot.

Mini Spoiler No. 3:  Against the wishes of the Queen of the Amazons (Hippolyta), Diana’s mother, Diana sets out to escort the rescued airman to his people.  She is clothed in typical Amazonian gear, basically boiled leather armor (or perhaps some magical armor), the golden lasso, a magical sword, called the God-Slayer, and a headband, which Hippolyta gives Diana at the last minute.  On this journey, the airman explains to Diana what is going on: some bad guys are unleashing death and destruction on vast numbers of innocent people.
Wide-eyed Diana gasps, and says that this has to be the work of Ares.  “You must take me to him,” she says seriously, and declares that she will fix matters right up.

This is the charm of this movie.  There is a minor clash of cultures: the bronze age environment that still pervades the island of the Amazons, versus the machine-gun, airship culture of World War I.  Rather than the tribal wars that ravaged the world of the ancient Greeks, ostensibly orchestrated by Ares, there is modern warfare with huge collateral damage and civilian casualties, with groups of nations arrayed together against other groups, with fighting forces on each side numbering a thousand times the entire population of the Greek world.

Diana blinks, but she clings to the belief that the principle is the same.  People would not fight if Ares would not incite them to violence.  Ares is still orchestrating the war.  If Diana destroys Ares, the war will fizzle out.

Straightening this out is the sub-plot of the movie, or perhaps the main plot.  The airman brings Diana to London, which is the center of civilization as far as he is concerned, and Diana must deal with the cultural dislocation head on.  It begins with having to equip Diana with late Victorian clothing that is appropriate for a woman of her rank and habits, a way of covering up the enormous long-sword that she tends to constantly brandish, and the magical gauntlets that go up her forearm.  (The movie manages this with style, though the calf-length dress skirt is very innovative for the times, outside a playing field.)

It is fascinating to watch Diana’s expression closely as the Origins of the Amazons is drilled into her.  She looks frankly a little skeptical, I think, and even a little amused.  But when she sees the horrors of the front line first hand, her dismay is absolutely unfeigned.  That alone, I believe, qualifies the acting in this movie as either brilliant acting, or the directing as brilliant directing.  Diana is not a fool.  But the audience is always a couple of steps ahead of her, as it should always be in good drama.

The airman, Steve Trevor, puts together a team of specialists to get them to the front, where Steve wants to destroy an armaments factory, and, of course, Diana wants to confront Ares, whom she is confident about finding where the fighting is thickest.  While they lie and cheat their way to no-man’s land, the men browbeat her into doing it their way, but once they get close enough, Diana is not having any more of these namby-pamby war conventions.  She wants to get in there and have a confrontation with the real problem boys.

Ultimately she must conclude that war is a human thing.  The tales of the Greek Gods are ponderous attempts to anthropomorphize human tendencies, strengths and failings, and Diana must confront the fact that even if she destroys the embodiment-of-war-of-the-moment, war continues.  Steve tries to explain that fighting for peace is a lifetime commitment, but he does not have the time.

However, even when she is kicking serious butt, Diana is all fluid grace, even if it is very determined fluid grace.  Perhaps real wars cannot be fought like that, but man, if we had a choice, and if the cameras are on, that would certainly be the way I would like to kick butt.  Whoo!

If there is going to be a sequel, sell me a ticket.


Thursday, June 1, 2017

Another Two Cents' Worth

It is annoying to face each day beginning with a deluge of vitriol about the Trump Administration.  Not that they don't deserve a lot of vitriol, but that it is saddening to realize that those who feel obliged to give us this information and opinion do not realize how wearying it is.

There are many lessons to be learned from the events of this most recent (leading up to November 2017) campaign season, but we must be careful that we learn the right lessons.

1. Electoral College.  Some disgruntled (or any similar word; pick your own) liberals and / or Democrats are thinking that the Electoral College should be dumped.  I, for one, am not sure that this is a good thing.  If the Democrats had come out and voted, it would not have been an issue.

2. Some disgruntled liberals and Democrats (SDLD) blame the fact that the Democrats lost the election on picking the wrong horse; in other words, if Bernie had won the nomination, they feel, Trump would never have won.  On one hand, this could be true, because younger liberals are not happy with the path the Democrats have taken since Bill Clinton; there seems to be too much compromise with Business, Wall Street, and Big Banks.  But remember: any choice by the Democrats that removes the private sector as a source of employment will see problems.  Unfortunately, the private sector, by its very nature, hates to increase employment, which they think we don't know.  So this is a problem, without a ready solution.  It is hard to see how Bernie Sanders would have handled the employment problem quickly or efficiently.

3. If anyone thought that a typical business mogul would find running Washington D. C. a piece of cake, we now know the answer.  It does not help that Donald Trump was not the smartest businessman who ever lived; he was just good at winning by intimidation in his chosen area.  The presidency does not respond to that sort of approach.  On the other hand, the constant stream of disinformation pouring out on Twitter and Fox News does have a disruptive effect.  We must wonder: can laws be passed to limit the amount of fake news that can be put out, or are we stuck with disrupting media stories for henceforth?  This is a serious problem, because if lies cannot be battled with truth, it is almost impossible to arrive at valid conclusions.

4. One of Trump's biggest failings, (taking him, for a moment, seriously as a President) is his propensity--with a lot of his like-minded followers--for demanding a simplified view of the world.  Of course, it is natural to want to simplify the messy world we live in.  But it can't be simplified to the level that Trump likes, without losing lots of essential properties that need to be looked at.  The same is true of everybody.  We're surrounded with unreasonable demands for simplification, and we just can't deliver.

[To be continued.]

Final Jeopardy

Final Jeopardy
"Think" by Merv Griffin

The Classical Music Archives

The Classical Music Archives
One of the oldest music file depositories on the Web


A weekly cartoon clip, for all superhero wannabes, and the gals who love them.

My Blog List