Sunday, December 18, 2016

How is Jesus Christ the Savior? How does he save?

This time of the year, many of us sing or speak of the birth of Jesus Christ the savior. O Holy Night begins with these lines:
O holy night,
    the stars are brightly shining.
It is the night
    of the dear Savior’s birth.
One verse of Silent Night has a verse which ends: “Christ the Savior is born; / Christ the Savior is born. ”

Even a television show, A Charlie Brown Christmas, broadcast annually for the past half-century, includes an excerpt from Luke’s gospel:

8And there were in the same country shepherds abiding in the field, keeping watch over their flock by night. 9And, lo, the angel of the Lord came upon them, and the glory of the Lord shone round about them: and they were sore afraid. 10And the angel said unto them, Fear not: for, behold, I bring you good tidings of great joy, which shall be to all people. 11For unto you is born this day in the city of David a Saviour, which is Christ the Lord.
So what do we mean when we speak or sing of Christ the Savio(u)r?

Thirty or even twenty years ago I probably would have spouted some evangelical jargon about what happens after you die, the summary being that because of Jesus, your eternal soul’s prospects can be good rather than bad.

Today I think I’d begin instead by talking about life here and now, because that’s what Jesus spoke mostly about. The short version would be that by following him, I can live a fruitful, meaningful life and become a good (well, better anyway) person. After explaining a bit more about that, if by then you don’t think I’m a total whack job, I might mention the hope that I can be with him in the world to come.

I might begin like this. You can read a lot these days about paths to success. Recent articles on Linkedin and in print media describe ways to appear more competent or intelligent. The power of such suggestions comes from the nagging doubts we have: Am I really okay? If I do these things that make other people think I’m competent and intelligent, maybe that will quell my own fears.

Such doubts also energize advertisements: maybe I can feel better about myself if I have these gadgets or clothes or this car, or if I live in this neighborhood. And maybe I can overcome my doubts about parenting if my kids get these grades or go to these schools.

These doubts, these insecurities, can poison my life and my relationships. Maybe I’ll pressure my kids to go to absurd lengths in pursuit of some name-brand school; maybe I’ll try to enhance my self-esteem by taking on a mortgage I can’t afford, or spend so much on cars or clothes or gadgets that my family faces constant financial stress.

About those kids: maybe they’ll rebel against the pressure; maybe they’ll crack; maybe they’ll buy into my anxieties and make them their own. So that when they’re at that name-brand school—or even if they aren’t—they’ll contantly wonder, “Am I okay, really? Am I good enough?” That way my destructive legacy can live on—not a happy prospect.

What I’ve described is a kind of life that we need saving from, and by “we” I mean people like you and me. So how can that happen? How can you and I escape the pressure brought about by our doubts and insecurities?

The promise of salvation in Jesus Christ begins, for me at least, with the knowledge that I’m forgiven. Consider that famous verse from John’s gospel, “God loved the world so much that he sent his only son, that whoever believes in him will not perish, but have eternal life” (John 3:16). I’ll write more about eternal life in a bit; let’s consider the word “perish.”

When I think about “perish,” the image that comes to mind is an overripe banana. Now that’s perishable! In a way, all of us are perishable in the way that a banana is; one day, you and I and everyone we know will get to room temperature, and unless our bodies are burned or something, they will all rot.

There’s a picture, then, of a useless life: we live, we accumulate possessions, we become room temperature, and our bodies are burned or buried. That’s “perish.”

About “believe”: What does it mean to believe in God’s Son? What must we believe when we “believe in” him? Among many things said of Jesus in the gospels, the claim that he takes away sins is pretty important. In John 1:29, John the Baptist refers to Jesus as “the Lamb of God, who takes away the sin of the world.” I’ve written about this elsewhere (also here) but the short version is that unless we believe his promise enough to act on it, then it won’t have much of an effect on our lives.

In other words, it’s not magical in the sense that if I say some special phrase, the gods are compelled to do something; it’s more like if I’m hanging off a cliff by my fingernails and someone dangles a rope in front of me, the rope won’t do me any good unless I believe in it enough to grab it. The promise of forgiveness in Jesus doesn’t do me any good if I’m trying to find redemption through buying a bigger house or more toys, or by pressuring my kids to get better grades to get into a better school, or by looking smarter or more competent. I’ve got to accept forgiveness and stop my frantic pursuit of the false promise of so-called “success,” or I’ll continue to poison my life and relationships…

OK, now about eternal life. I don’t quite understand what form our immortal souls take, or what the world to come is about, but the New Testament authors make quite a big deal about it—almost as big a deal as modern evangelicals do!

All kidding aside, though, something I think of is the promise from 2 Peter 1, which talks about adding knowledge and other virtues to our faith; in verse 8 he writes “For if these qualities are yours and are increasing, they will render you neither useless nor unfruitful…” Let me invert that and say that we can be fruitful and useful with the qualities he mentions: faith, knowledge, goodness, brotherly kindness and so on. The point I want to make, though, aside from those qualities, is the goal of all that, viz., to have a fruitful, useful life.

If my life is fruitful and useful, then the effects will remain after I’ve left this earth. Which may not be eternal life exactly, but would, I hope, be better than having a life whose effects all perish with my corpse.

And that in the end is what I want to be saved from: a life that ends when the undertaker’s bill is paid off. And that’s what Jesus saves me from: by assuring me that my sins are forgiven, he makes it possible for me to become something useful, rather than the alternative of poisoning everything in a wrong-headed attempt to escape my demons.

Wednesday, December 14, 2016

How do you vote?

Frederick Buechner, in his marvelous Secrets in the Dark, recounts a few incidents of the kind Christians like: he receives strange encouragement in a time of stress; an odd phenomenon occurs after a departed friend appears in a dream—this sort of thing. Then he asks us how we would vote on the second most important philosophical question:
On Yes, there is God in the highest, or, if such language is no longer viable, there is Mystery and Meaning in the deepest? On No, there is whatever happens to happen, and it means whatever you choose it to mean, and that is all there is?
Buechner, p. 171sq.
Actually he used the word “bet” (rather than “vote”) but he points out that we actually bet our lives.
We may bet Yes this evening and No tomorrow morning. We may know we are betting or we may not know. We may bet one way with our lips, our minds, our hearts even, and another way with our feet. But we all of us bet, and it’s our lives themselves we’re betting with in the sense that the betting is what shapes our lives. And we can never be sure we’ve bet right, of course. The evidence both ways is fragmentary, fragile, ambiguous. A coincidence can be, as somebody has said, God’s way of remaining anonymous, or it can be just a coincidence. Is the dream that brings healing and hope just a product of wishful thinking? Or is it a message from another world? Whether we bet Yes or No, it is equally an act of faith.
op. cit., p. 172
Indeed, it’s not that Yes takes faith and No takes only courage and reason; it takes just as much faith to vote No as Yes—I might argue it takes more. Bertrand Russell had a lot of faith to bet No, as he expressed in a famous essay:
Man is the product of causes which had no prevision of the end they were achieving; that his origin, his growth, his hopes and fears, his loves and his beliefs, are but the outcome of accidental collocations of atoms; …
I confess mixed reactions to Russell’s view. On one side, if he’s right, then (as the Bible says) “Let us eat and drink, for tomorrow we die”; I can ignore my conscience and exploit anyone for any reason, or no reason …

But Kant says that’s not philosophically consistent, and Mill argues in the generalized version of utilitarianism that it’s a bad idea. Practically, one might feel the need to buy a lot of guns, because if everyone thought and acted that way, it would be like a Wild West sans law enforcement.

But I see two more big problems with Russell’s way of thinking. First, if someone sincerely holds those beliefs, and lives accordingly, what kind of life do they have? What kind of person do they become, if they think that your hopes and fears, your loves and beliefs, are but the outcome of accidental collocations…? A brief thought-experiment tells me that I don’t really want a life like that, and that I don’t want to be around anyone who lives that way either.

Another big problem is, as Lewis wrote, “If thought is the undesigned and irrelevant product of cerebral motions, what reason have we to trust it?” Indeed, Russell claims to be a random text generator, but I don’t actually believe him.

Back to the first question: how do you vote on Buechner’s question? Yes, there is some kind of real meaning in life? Or No, things just happen, and they mean whatever you choose them to mean?

Monday, December 12, 2016

Science and Faith (not by Mary Baker Eddy)

Yesterday's talk on "Science and Faith" was enlightening. A key insight was that some study science for many of the same reasons that some study faith. These sets overlap, as in the case of our speaker, Bishop Katharine Jefferts Schori, an oceanographer and former presiding bishop of the Episcopal Church. (I'll not comment on Jefferts Schori's theology, except to say it came up only peripherally in yesterday's talk.)

So why do people study science? And faith? For one thing, they (we) are inspired by wonder and a desire for understanding. We bring passion to our study: a love of beauty and excellence. An elegant theory is a beautiful one, in both fields.

Both science and faith have history and tradition; both are done in community. And in both fields, advancement comes from questions. (Questions can also bring trouble, which occurs to me just as I type these notes.)

Change is often resisted by the community, but if the community is healthy, new ideas are evaluated according to their merits. The Bereans, for example, upon hearing new ideas from Paul and Silas, judged these ideas for their content, rather than on their political implications (Acts 17:11). Contrast this with the reactions of the Thessalonians in Acts 17:5-7.

Science, too, has good examples and bad. The good examples we consider normative and typical, as we'd like them to be. But bad examples abound. Think of Semmelweis and hand-washing, Galileo and his debunking of Aristotle, or the chilly reception the Big Bang theory got in the previous century.

So religion and science have more similarities than I'm accustomed to think. This puts me in mind of a class Carol and I took some time back, "Encountering the World of Islam," where a key insight for me was that there are a lot more similarities than differences.

Differences there are, to be sure—fundamental differences in fact. But similarities abound. In science and faith, in Islam and Christianity, there are good characters and bad, those motivated by truth and those motivated by self-interest. Well, that's a bit simplistic; we all have mixed motives, but some are more willing, perhaps more able, to accept truth when it surprises them.

Math == Theology?

During the Q&A period after the talk, a man across the room said that with new ideas in science, we can test them via evidence. If people can run experiments similar to yours and get similar results, they can confirm the theory. But for theology, where's the evidence?

The bishop replied that there's the evidence of a life well-lived, but that the time scale is quite different.

But I was stuck on the idea of running experiments. You can run experiments in physics or chemistry or even psychology. Neuroscience. But mathematics? (I studied math in college.)

A mathematical proof is an argument by which you try to force the other guy to accept your claim. Well, all scientific proofs are, I guess, but you can't run math experiments very easily; you appeal to past results, you apply axioms and rules and theorems to one formula to get another, and someone can say you've made an incorrect inference, if you have. But there's no experimenting.

And theology? God doesn't necessarily cooperate with any experiments. You want a control? God won't be controlled.

Postscript: Questions

Jefferts Schori mentioned that advancement comes through questions, and it occurred to me while typing that questions sometimes bring trouble. We see this in Genesis 3, where an accusation comes in the guise of a question—a question asked by the devil in the guise of a serpent! I think honest questions that spring from honest curiosity—or even honest doubt—are great and must be encouraged. But we need to pay attention and to be discerning lest we drift away, as the writer to the Hebrews (2:1) warns.

The Lord himself said, be as shrewd as snakes (Matthew 10:16); the Apostle Paul wrote, "I want you to be wise about what is good, and innocent about what is evil." The Apostle Peter tells us to be on the alert (1 Peter 5:8)—not against questions, but against the accuser.

Sunday, November 27, 2016

Ripping an unplayable CD and burning a new one

We bought an audio CD (stop smirking please) on a recent trip, played it once or twice at home, and... now it won't play.
…which reminds me of John Hartford's "Don't leave your records in the sun" but we didn't leave our CD in the sun.

Anyway, I remembered that there was a program that would try really hard to read damaged CDs, but I couldn't remember its name. After some web searching I was delighted to find the name "cdparanoia" but discouraged to read that development had stopped in 2002. Further searching revealed a 2008 update, so I tried this on Debian jessie:

$ sudo apt-get install cdparanoia
Hooray! It was found! Then after RTFMing I typed:
$ sudo cdparanoia -sQ
cdparanoia III release 10.2 (September 11, 2008)


Table of contents (audio tracks only):
track        length               begin        copy pre ch
===========================================================
  1.    27945 [06:12.45]        0 [00:00.00]    no   no  2
  2.    24852 [05:31.27]    27945 [06:12.45]    no   no  2
  3.    33420 [07:25.45]    52797 [11:43.72]    no   no  2
  4.    29895 [06:38.45]    86217 [19:09.42]    no   no  2
  5.    23468 [05:12.68]   116112 [25:48.12]    no   no  2
  6.    14717 [03:16.17]   139580 [31:01.05]    no   no  2
  7.    15945 [03:32.45]   154297 [34:17.22]    no   no  2
  8.    14255 [03:10.05]   170242 [37:49.67]    no   no  2
  9.    16288 [03:37.13]   184497 [40:59.72]    no   no  2
 10.    20465 [04:32.65]   200785 [44:37.10]    no   no  2
 11.    66120 [14:41.45]   221250 [49:10.00]    no   no  2
TOTAL  287370 [63:51.45]    (audio only)
$
NOTE: the first few times I tried that, it told me it couldn't read the drive/disk. I typed random things and then the above worked. Maybe it was just the -s? Anyway, after more RTFMing I decided to rip the CD into separate files, but first I wanted to find a nice place to put the files. Would the home directory be okay?
$ df .
Filesystem     1K-blocks      Used Available Use% Mounted on
/dev/sda6      882859164 174497320 663492076  21% /home
$ mkdir finland-cd 
$ cd finland-cd
$ 
It occurred to me that maybe it wasn't necessary to say sudo so I tried it without:
$ cdparanoia -B -- -11
cdparanoia III release 10.2 (September 11, 2008)

 
Ripping from sector       0 (track  1 [0:00.00])
          to sector  287369 (track 11 [14:41.44])

outputting to track01.cdda.wav

 (== PROGRESS == [                              | 027944 00 ] == :^D * ==)
… you get the idea
$ ls
track01.cdda.wav  track04.cdda.wav  track07.cdda.wav  track10.cdda.wav
track02.cdda.wav  track05.cdda.wav  track08.cdda.wav  track11.cdda.wav
track03.cdda.wav  track06.cdda.wav  track09.cdda.wav
$
Now, about burning: I didn't remember the command for that, either. A web search led me to brasero, whence
$ type brasero
brasero is /usr/bin/brasero
$ brasero&
I clicked on "Audio Project" or maybe "Audio CD", and fumbled around a bit before noticing the "+" sign near the top; this allowed me to add those 11 files to the project. NOTE THAT the order of tracks reflects way the files appear in the dialog box. So if you've got the file selection box set to show newest-first, then track 1 will be the newest file, etc.

I clicked on "Name" to sort by name (I might have had to click twice), and got track01.cdda.wav as the first track, track02.cdda.wav as the second, etc.

Then I selected Project→Burn, or maybe the "Burn" button in the lower-right corner of brasero's window. It worked perfectly; I'm listening to Bach now.

Sunday, November 06, 2016

The way of power, and the way of love.

This morning's sermon included some words from Henri Nouwen's book, In the Name of Jesus. I didn't quite start crying, though the words obviously made an impression on me—particularly Nouwen's comments about his powerful self vs. the vulnerable self. The powerful self can produce things, accomplish things, prove things, influence things. The vulnerable self finds itself in feeling loved by Jesus.

That's profound, but where I almost lost it was the story of Henri and Bill's trip to Washington DC, which I'll copy/paste from this page:

Once when asked to speak at the Center for Human Development in Washington, D. C., on Christian Leadership in the 21st century, Nouwen decided that to be true to what he was going to say, he should go in partnership — two by two as the Gospel says — with one of his mentally handicapped friends, Bill Van Buren. So he told Bill, “We are doing this together. You and I are going to Washington to proclaim the Gospel.”

Together they flew to Washington, got settled in their hotel, and went to the conference. When the time came for the address, after being introduced, Nouwen took out his handwritten text and began his talk. At that moment, he noticed Bill had left his seat and come up to the podium, planting himself right behind him. Thought Nouwen, “It was clear that Bill had a much more concrete idea about ‘doing it together’ than I did.” Each time I finished a page, he took it away and put it upside down on a small table close by.

When Nouwen began to speak about the temptation to turn stones into bread as a temptation to be relevant, Bill interrupted and said loudly, for all to hear, “I have heard that before!”

When Nouwen came to the second part and was reading the words, “The question most asked by the handicapped people with whom I live was, “Are you home tonight?” Bill interrupted and said, “That’s right, that is what John Smeltzer always asks.”

Then, said Nouwen, “After I had finished reading my text and people had shown their appreciation, Bill said to me, ‘Henri, can I say something now?’” Said Nouwen, “My first reaction was, ‘Oh, how am I going to handle this? He might start rambling and create an embarrassing situation?’”

Bill took the microphone and said, with all the difficulties he had in speaking, “Last time, when Henri went to Boston, he took John Smeltzer with him. This time he wanted me to come with him to Washington, and I am glad to be here with you. Thank you very much.” Everyone stood and gave him warm applause.

On the way back, on the airplane, Bill said, “Henri, did you like our trip?” “Oh, yes,” I answered, “it was a wonderful trip, and I am so glad you came with me.” Bill looked at me attentively and then said, “And we did it together, didn’t we?”

Said Nouwen, “Then I realized the full truth of Jesus’ words, “Where two or three meet in my Name, I am among them” (Matthew 18:20) In the past, I had always given lectures, sermons, addresses, and speeches by myself. Often I had wondered how much of what I said would be remembered. Now it dawned on me that most likely much of what I said would not be long remembered, but that Bill and I doing it together would not easily be forgotten.” (In The Name of Jesus: Reflections on Christian Leadership, Henri J. M. Nouwen, Crossroads: New York, 1989.)

From https://skokiecentralchurch.wordpress.com/2010/08/22/2010-08-22-“all-bent-out-of-shape”-luke-13-10-17/
Love and grace are evident here, in abundance. This story, and Nouwen's words about the powerful vs. the vulnerable self, put me in mind of the words from John 1: and of his fullness all we have received, and grace for grace. For the law was given by Moses [but] grace and truth came by Jesus Christ: truth in the sense of my true self (vs. the powerful yet false self) and grace in particular by being a conduit (not a sink) for the unmerited favor & love I receive every moment of every day. As a conduit of grace, I am called among other things to be gentle: A bruised reed he will not break, as the prophecy says, and a smoldering wick he will not snuff out.

Saturday, October 15, 2016

Collin reads the 2016 California statewide ballot propositions

Can you believe there are seventeen of these? That's as many as republicans who ran for president this year. Herewith my summary and views.
  • 51 school bonds: YES

    Ever since the disastrous prop.13 from the late 1970s, municipalities and school districts have been strapped for funding. I'm not a big fan of bonds, but there doesn't seem to be any way to allocate construction funds in this state (or probably any state).

    Although the argument against says that Governor Brown opposes, I read recently that he's spoken generally about bonds, not specifically against this measure.

  • 52 medi-cal hospital fees: NO

    This makes it harder for the state to respond to any future changes in federal policies around allocation of health care funds. If this measure fails (I hope so) then the legislature will just renew the existing fee program -- guaranteed! Nobody opposes any renewal because it's free money for the state and for hospitals.

  • 53 revenue bonds: NO

    What is the problem this aims to solve? It may create new problems too. For instance, do you want to vote for/against a revenue bond project in a faraway location in California? Would you want them to vote on ours?

  • 54: Legislature must wait 72 hours after posting measure on internet: NO

    It sounds good, but too much "transparency" in government makes it impossible to compromise. Instead we get deadlock and shutdowns and polarization. See this article in the Atlantic on how US politics went insane.

  • 55: extend taxes on income earners over 250K$: YES

    We want the government to provide services, and we have to pay for them. Those of us who make more money should pay a higher share of our income for at least two reasons:

    1. We can afford it.
    2. We have benefited more from services (roads, firefighters, education) than those with lower incomes.
    And my income isn't over 250K$, but the two reasons are true for me, too.
  • 56 cigarette tax: YES

    Raise taxes on cancer sticks to reduce smoking and reduce cancer in the population.

    The tobacco industry makes noise about exempting these revenues from the education budget mandate, but that's not the point! The point is that when cigarettes get more expensive, people smoke fewer of them, with positive results.

  • 57 parole: YES

    Allows nonviolent offenders to be considered for earlier release. The "con" argument is flawed: if this passes, we won't release a flood of axe-murderers and rapists! The parole board still makes the decision. This measure allows more people to be considered; that's all.

  • 58 Bilingual education: YES

    Spanish-speaking parents have been frustrated in the past when their children were not taught English. That was a catalyst for proposition 227 (almost 20 years old). But the best research suggests that teaching children at least part of the time in their native language can actually speed acquisition of the majority language (American English in this case). And at least one educator I respect favors this measure.

  • 59 Overturn Citizens United: I plan to abstain.

    California has no authority to compel Congress or the Supreme Court to change its position on anything. Therefore this measure is a waste of time and money and effort. That said, I think Citizens United was wrong.

  • 60 Condoms in "adult films" and lawsuits: NO

    This measure allows a lawsuit bonanza. Condoms are already required for performers (read the legislative analyst's report) so this doesn't change the law's requirements substantively. The anti-60 people are correct in saying that anybody can file a lawsuit against porn producers.

    I have no love for porn producers, but clogging our courts does not strike me as a good thing.

  • 61 pay no more than the lowest price the VA pays: NO

    The lowest price the VA pays may not be knowable by the State of California. And what if a drug company refuses to sell to us at the same price as they sell to the VA?

    This is impractical and actually un-implementable and dangerous.

  • 62 Death penalty to life imprisonment: YES

    Killing a convict doesn't bring the victims back, and sometimes we convict people wrongly. They sure as hell do in Texas! We have better things to spend money on than trying to kill convicts.

  • 63 Ammo sales: YES

    NRA opposes this measure. Enough said.

  • 64 Marijuana: I don't know

    There are reasonable arguments on both sides. I have no dog in this fight.

  • 65 circumvent the legislature on plastic bags: NO

    This measure tries to contravene SB270, the statewide ban on plastic bags. I wasn't completely sure about this until I saw the source of campaign funds: this measure is funded by the plastics industry--money all came from out of state!

  • 66 kill convicts faster: NO

    We sometimes convict people wrongly. This is heading in the wrong direction.

  • 67 plastic bag ban: YES

    The legislature passed, and the governor signed, SB270, the statewide ban on single-use plastic carryout bags for certain stores. The plastics industry is trying to undo that with prop 65.


A few more, if you live in San Mateo County
and especially if you live in Redwood City

  • Sequoia hospital district: Kane (incumbent), Griffin (R.N.)

    The big question about the Sequoia healthcare/hospital district is, should it be disbanded? Richardson, Harrison and Garcia say that the district was established 70 years ago to build and run Sequoia Hospital, which has since been sold. Hence, they say, the district should be disbanded and should not receive $15 million in property taxes annually.

    But the programs currently funded by those millions: what will happen to them? If we agree those are good programs and should be funded, how would they be funded without the sequoia hospital district? This is a classic democratic/republican divide: should there be more government or less? Should charity be the business of private individuals, or should the state be involved?

    Let's be realistic: in this part of California, with some of the world's wealthiest people, the proportion of income given to charity is among the lowest. We are almost not citizens any more—merely taxpayers. In church this morning (Trinity Episcopal actually), the sermon pointed out that voting is an act of prayer (I think it can be an act of worship). And how would my vote for members of the Sequoia health district board be part of "thy kingdom come, thy will be done on earth as it is in heaven"?

    Imagine the day of judgment pictured in Matthew 25: "Lord, when did we see you hungry and not feed you, thirsty and not give you something to drink, naked and not clothe you, sick and did not visit you?"

    I do not want to hear the answer, "When you dismantled the Sequoia hospital district and de-funded its programs. For what you did not do for the least of these brothers of mine, you did not do for me."

  • San Mateo County measure K, extend sales tax: YES

    Although I dislike the push polling done by this measure's proponents, and although I don't like the idea of pouring yet more money into the real estate market… yet the county is short on funds ever since the disastrous Prop 13 passed in the 1970s. We want the county to provide services for us, and for county residents less fortunate than we are. Those services cost more than the tax revenues would be without this measure's funds. Therefore I support this.

  • Redwood City School District measure U, parcel tax: YES

    I need not repeat what I've said about public services, but $85/year is just not much money to pay to own a parcel of real property in San Mateo County.

Monday, September 12, 2016

Hip rolls and a spiritual exercise

The physical therapist gave me four or five exercises. Six months later, I’m still doing one of them: hip rolls, a set of 30, morning and evening. (This is not a dance move; I do these lying on the floor.)

The other day I thought of how it could be a spiritual exercise, not just a physical one. It would involve slowing down, probably a good idea for a perpetually-in-a-rush guy like me. Here’s the idea: as I begin the first iteration, to remember a phrase or a short passage from the Bible, from chapter 1 of something. On the second, something from chapter 2 of something. And so on. Here’s one possible list:

  1. The word became flesh and dwelt among us, from John 1. This is the astonishing idea that Jesus came to earth and pitched his tent among us. Amazing!
  2. Jesus grew in wisdom and stature, and in favor with God and man (everybody needs to grow: even Jesus needed to!), Luke 2
  3. Trust in the Lord with all your heart…, Proverbs 3
  4. Jesus was tempted in all things as we are, from Hebrews 4
  5. [A priest] can deal gently with the ignorant and wayward, since he himself is beset by weakness, from Hebrews 5 (a good reminder, since we are also priests according to 1 Peter 2)
  6. Seek first his kingdom… from Matthew 6
  7. If anyone wants to do God’s will, he’ll know whether I’m speaking from God or just making all this stuff up: it’ important to be willing to do God’s will, from John 7
  8. What does it profit a man to gain the whole world and forfeit his soul? from Mark 8
  9. And God is able to make all grace abound to you, that always having all suffiency in everything, you may have an abundance for every good work. from 2 Corinthians 9
  10. When words are many, sin is not absent; but he who holds his tongue is wise, from Proverbs 10
  11. He who goes about as a talebearer reveals secrets, but he who is trustworthy conceals a matter. from Proverbs 11
  12. Don’t be conformed to this world, but be transformed by the renewing of your mind: Romans 12
  13. A new command I give you: love one another as I have loved you, John 13
  14. He who has my commands and keeps them… I will reveal myself to him: knowledge through obedience, from John 14
  15. Remain in me, and I will remain in you, John 15
  16. Ask and you will receive, that your joy may be made full, John 16
  17. This is eternal life: to know God and Jesus Christ, John 17
  18. Death and life are in the power of the tongue, Prov. 18
  19. The son of man came to seek and to save the lost, Luke 19
  20. Whoever wishes to be great among you must be your servant… Matthew 20
  21. The king’s hand is in the heart of the Lord… Proverbs 21
  22. A prudent man sees danger and takes cover; the foolish keep going and suffer for it. Proverbs 22
    or My God my God why have you forsaken me Psalm 22. Jesus suffered much.
  23. The Lord is my shepherd; I shall not want
  24. I always do my best to keep a blameless conscience both before God and before men Acts 24
  25. A word aptly spoken is like apples of gold in settings of silver Pr. 25
  26. As a door turns on his hinges, so the sluggard turns on his bed Pr. 26 (probably there’s a better verse somewhere, but that’s what came to mind)
  27. Do not boast about tomorrow, for you don’t know… Pr. 27
  28. I am with you always even to the end of the age Matthew 28
  29. You will seek me and find me, and I will be found by you Jer. 29
  30. Every word of God proves true; he is a shield to all who take refuge in him Pr. 30
There’s already some variation in the verses I use, and sometimes I just murmur, “23” (or whatever number I’m skipping) but it’s good for me to remember these cautions and encouragements and examples, that is, when I remember to remember them.

Monday, September 05, 2016

If Finder (Mac OS X) is sluggish, maybe it's that memory leak; here's how to fix it

Short version: if Finder is hogging RAM, killall Finder in a terminal window. It'll automagically restart and work much better.
The lovely Carol called me from her desk. "There are stories in this folder," she said, indicating the Finder window, "but they don't show up."

The Activity Monitor showed the finder as consuming something like 698MB of RAM. Firefox had something close to 2GB, so Finder wasn't the #1 hog, but still, over 600MB? After a few futile web searches, I came to this article on howtogeek.com, where I spotted:

Currently, the only way to quit the Finder is by typing “killall Finder” in a Terminal window, which is inconvenient.
Whoa! “You had me at ‘Terminal window’!” so I opened one and typed "ps x|grep Finder" followed by "killall Finder"; my plan was to restart Finder via snarf-n-barf of the full path ps(1) had showed me. But Finder restarted all by itself, performing quite snappily and using only a little RAM. Wow! That was easy!

Update: creating the "Quit Finder" menu item

Now, to make it easier for the lovely Carol to fix a sluggish finder herself, I decided to create a "Quit Finder" menu item. The method described in the above article or this one doesn't quite work—at least it didn't for me today:
defaults write com.apple.Finder QuitMenuItem -bool YES
This following works fine, though; it's the same thing except with a lowercase "f" in "finder":
defaults write com.apple.finder QuitMenuItem -bool YES
It's shown in these postings:

Wednesday, August 10, 2016

Open letter to Amit

The other day, someone at work asked me if I had regrets over choosing a career in tech. Here's my response.
Updates 2016-08-11:
  1. Last night, Kesavan (the unnamed guy below) said it was fine to name him.
  2. This morning, I realized that I'd forgotten to mention something really important, perhaps the most important fact about me: I've been extremely lucky. More on this is in the addendum.

Amit,

Thank you for asking about regrets over choosing a career in tech; your question honors me, and I hope my answer doesn't disappoint.

I think I mentioned that my career began over forty (40) years ago, which is a source of great amusement and sometimes astonishment. A few years back I was in a hackathon with Mohit and Katiyar and Narver and one other guy who I won't name… trying to do something in javascript, which I still don't know. And I was mumbling about how I wish I'd learned it in grad school. "But wait," I said, "when I was in grad school, javascript hadn't been invented yet."

The unnamed guy in our hackathon team said, "I wonder how many of us were even born when Collin was in grad school?" and it turned out he was the only one... which is why I don't include his name here :)

But to your question: do I regret my career choice? Well, after my bachelor's degree I needed to do something to pay for rent and groceries. I wasn't good at anything in school except math and circuits and programming. Maybe I could have gone into statistics or become an actuary or something, but frankly the path into a tech career seemed more straightforward.

I have been thinking recently about something Garrison Keillor said in one of his "Lake Wobegon" monologues: "I wonder if perhaps we are less than our parents, and have given less to our children." I think of my dad, who ran out of money and didn't finish college. He got drafted and taught electronics for a while. He got a radiotelephone license and was engineer at a radio station. He was a sales/support guy for IBM and worked under some pretty unpleasant conditions. He switched to working for the FAA, and had to spend months at a time away from home for training. He went out and found work to do on the side: he fixed and built and invented things. He knew how to learn stuff and made the effort to do it. Car repair, electronic equipment repair, remodeling—he did it all. One day when he was in his 60s, he called a plumber for the first time in his life.

In contrast, I've had an easy life. I've had two professional employers—essentially two professional jobs since college. I haven't had to reinvent myself, I haven't had to take a lot of initiative. Have I had to work long hours debugging something? Sure; everybody has. But that's not the same thing as having to invent myself or figure out my next step in life.

I think what I'd say is that I did the best with what I had and with who I was. Sure, sometimes these days when I speak with our friends who go to Mexico and do medical work, I wish I had gone into that field so that I could help people in a more direct, intense, meaningful way. Given my constraints at the time (private college was expensive, even in the 1970s), I needed to finish quickly and start making money soon.

Could I have switched at some point? Maybe, but things got a lot more complicated with a mortgage and children. Shoulda, coulda, woulda—but I'm no hero or sage; it was enough effort to keep all the balls in the air, without also thinking about making a major change. Like many, I never got dissatisfied enough to consider a career change seriously, until getting laid off in 2002.

At that point, I briefly considered becoming a teacher. However, as I have since learned (from teaching Eng101), it would be a YUGE effort for me to become suited to classroom instruction. Also, with two college educations still ahead, it just didn't seem practical to take a significant drop in income.

So as I think back, my career in tech has been a good fit for me. It's a good fit for my personality and my talents. and has enabled my kids to graduate from college with no loans. My wife has been able to spend a lot of time at home when the kids were growing up, and she's now working on a novel and a collection of poetry. We've had some extra money to give to those less fortunate than ourselves.

Now the content of the work hasn't been really significant in itself. It's not like inventing dwarf wheat (Norman Borlaug did that and saved literally over a billion people from starvation); it's just solving problems and writing stuff.

What has been rewarding in my view is learning stuff and helping others. It's like what does a plant do? It grows, it reaches for the sun, it pulls carbon out of the atmosphere, it drops seeds, it provides shade. In doing that stuff, it brings glory to its maker. I don't know if plants know they're created by God, or if when they do what they do they "feel his pleasure," but I certainly do. Feel God's pleasure I mean. The stuff I do isn't grand or terribly significant in a dwarf wheat kind of way, but when my code works, or when I can help somebody learn something, or encourage someone to try one more time, that's a good feeling.

You're near the beginning of your career, a career that I hope will bring you as much stimulation and challenge and learning and joy as mine has. I suppose I could try to tell you to take more risks than I did, or try more new things, or push yourself upward, but I obviously didn't follow that advice, and I'm not sure it's good advice anyway.

No, what's really important in life, in my view anyway, is to be home for dinner, to play with your kids, to manage your boss's expectations so you can live a balanced life. Because really, who's gonna hold your hand when you die? It's not gonna be your boss, or if you're a manager/director/VP, any of the dozens or hundreds of people below you in the org chart. It's your family and your close friends. The patents, the certificates, the quarterly recognition awards, etc. will be forgotten.

OK, that's way too long. Thanks for reading this far. I'd love to hear your story and your thoughts on all this.

      -collin

Addendum: the role of luck in my story
If when you read the above, you think, "he sure was lucky," I'm here to tell you that you are 100% right. Did I work hard? Sometimes. Did I get good genes from my parents? The smartest thing I ever did was to pick the right parents at the right time in history.

Because all the talent and grit and determination and hard work in the world won't get you far if bombs are constantly falling outside your house, or if there's no electricity and you can't go to school because you need to help your parents gather food, or if your parents died in their 20s from AIDS or ebola or something. Robert Frank made a terrific case for the role of luck in this article in the Atlantic. And in the latest Hedgehog Review, Frank quotes David Brooks:

You should regard yourself as the sole author of all your future achievements and as the grateful beneficiary of all your past successes.... As you go through life, you should pass through different phases in thinking about how much credit you deserve. You should start your life with the illusion that you are completely in control of what you do. You should finish life with the recognition that, all in all, you got better than you deserved.... As an ambitious executive, it's important that you believe that you will deserve credit for everything you achieve. As a human being, it's important for you to know that's nonsense.
The Credit Illusion NY Times 2012-08-02 link

Monday, August 08, 2016

Corporate Benevolence and Investment Strategies?

In the 1970s, a company called Merck discovered a cure for "river blindness," a disease that afflicted thousands (millions?) of people in the developing world. The disease was carried by a certain fly, which bites people, introducing bacteria that create tremendous itching and, in severe cases, blindness.

This wasn't an accidental discovery; Merck had another medication that they thought might work if suitably modified. Long story short, they had to spend millions of dollars to develop and test the medicine and prove it safe and effective on humans. There had been some hope that someone (charities, the World Health Organization, somebody like that) might help defray the costs of manufacture and distribution, but it never happened. Merck has given out some hundreds of millions of doses and impacted millions of lives, and never received a penny for this miracle drug.

It wasn't just this one drug, either—that was an extreme example, but Merck were not in the habit of maximizing income to the detriment of patients. In an interview on American Public Media's Marketplace radio program, a former CEO commented that the purpose of Merck was to relieve suffering and cure disease; if they did that, they'd get some money. This CEO did not think it reasonable to raise the price of any medicine any more than the rate of inflation. In his view, it was okay to "leave money on the table," since Merck could get a reasonable return while fulfilling their mission.

What would happen to such a CEO today? Would activist investors take over the board and replace the CEO with someone that would raise prices and stop the giveaways? How can Merck continue to give away medicines in today's climate of fear and greed?

And what, if anything, can I do as an investor to help companies like Merck continue to do acts of benevolence?

One theory of investing says to forget about benevolence and invest for maximum return. But wouldn't that tend to discourage, even extinguish, corporate benevolence of the "river blindness" variety?

One could imagine creating a stock fund concentrating on socially responsible investments, but if the returns aren't there, there won't be enough investors. The system of capitalism tends to concentrate wealth, as many have pointed out—perhaps most notably Professor Piketty in his Capital in the 21st Century; trying to counteract this tendency is like trying to fight the laws of physics.

Yet we must at least think about trying. Philanthropy on the scale of Merck's giveaway of the "river blindness" drug would be exceedingly difficult to get with individual donations or government subsidies. If Merck were of a mind to make money on the drug, no amount of government subsidies would be enough to supply the drug to all who need it. (Government subsidies can barely keep our 20th-century Caltrain system afloat financially.)

So I'm stumped, at least for the moment. I'm sure others have given a lot more thought to this, and from my understanding, Merck are still giving away the "river blindness" medication. So it appears that there's still hope. But a comprehensive answer? I've no idea.

Thursday, July 21, 2016

Saved by… obedience?

For years I've heard (and sometimes said) that salvation comes “by grace alone through faith alone in Christ alone.” So I was a little surprised to read in Hebrews 5 that Jesus “became the source of eternal salvation to all who obey him.” (emphasis added)

What's this about obedience? Does that contradict "by grace alone"? Maybe not.

Suppose you're in the middle of the ocean, after a plane crash or something, and can't see any land. A boat comes along, offering to save you. Sounds like grace to me! But when someone says, “Grab this rope,” you gotta obey and grab it.

If you instead say, “Wait, obedience? I thought this was by grace alone,” then you won't be saved. Silly, I know. But earlier in the letter, we read that faith and obedience come to the same thing.

[T]o whom did God swear that they would never enter his rest if not to those who disobeyed? So we see that they were not able to enter, because of their unbelief.
Hebrews 3:18–19 NIV (1984)

So no, we aren't saved by obedience; it really is by grace alone through faith alone. But if I'm unwilling to obey, that's not a disconnected random bit of information; it speaks to my lack of faith. And without faith … hey, without faith it's impossible to please God! Without faith, grace doesn't do me much good.

So it's not a paradox or a contradiction after all.

Update: the next morning

I opened my reading plan in the "Bible" app, where I read this:
... But the Hebrew word for 'faith' - emunah - is less about KNOWING, and more about DOING.

'Emunah' literally means "to take firm action", so to have faith is to act.

How about that! The Old Testament writers weren't confused at all about this the way we modern evangelicals sometimes are. Guess I shouldn't be surprised.

Tuesday, July 12, 2016

Thoughts on the 3rd lap

It struck me on my third trip around the jogging track how similar the first parts of these verses are:
Therefore, holy brothers, who share in the heavenly calling… (Hebrews 3:1)
Therefore, as God’s chosen people, holy and dearly loved… (Colossians 3:12)
Ignoring the context for a bit, I find it wondrous to think of myself as holy, chosen by God. How did this ever happen to me, of all people? Or you? Yet we are told this over and over in the Scriptures: Jesus says, “You did not choose me, but I chose you….” Paul says that God “chose us… before the foundation of the earth that we should be holy” and “He destined us in love to be his sons through Jesus Christ.” There are many, many more like this. The word “holy” means, basically, to be set apart for some purpose. We’re chosen, in other words, for a purpose.

I’ve heard this many times in sermons as well, but it still takes my breath away, because I know that I’m weak and easily distracted, my mind cluttered with carnal thoughts. I often see myself as a child, tossed back and forth by the waves, blown here and there, wishing I were more grown up. So these passages remind me that God has indeed set me aside for a purpose. Besides being deeply loved, I “share in the heavenly calling,” so I’m not rudderless. God has called me heavenward; he is working in me to fulfill his purpose as I seek him. Good news!

In both passages, this astounding good news of our identity as beloved holy brothers (male and female) is mentioned in passing, an “as-you-already-know”; the authors are about to tell us something even more important. What could that be? And is there any overlap in what follows?

Well, there’s not a lot. Hebrews chapter 2 ends with the encouragement that our brother Jesus knows our sufferings and temptations and can help us; then in chapter 3 we’re told, “therefore,” to consider Jesus, to fix our thoughts on him, and how he’s greater than Moses, worthy of greater honor. The author loves to tell us how great Jesus is: greater than the angels, greater than the priests of the old sacrificial system, and so on.

In Colossians, this reminder of our identity stands in the midst of a list of exhortations to live a holy life (3:5–17). In this letter, Paul seems fond of giving us lists of five: put to death sexual immorality, impurity, lust, evil desires and greed (3:5); to put aside anger, wrath, malice, slander and abusive speech (3:8). And then:

Therefore, as God’s chosen people, holy and dearly loved, clothe yourselves with compassion, kindness, humility, gentleness and patience, bearing with one another and forgiving each other, whoever has a complaint against anyone, just as the Lord forgave you, so also should you.
Colossians 3:12–13
There’s more after that, but what I wanted to notice from these passages is that the implications of our identity (as holy, chosen, beloved, called) involve our attitudes and actions (Colossians 3) and also how we focus our thoughts (Hebrews 3). Turning that around, when I remember I’m holy, chosen, beloved, called, then I’m better equipped in my efforts to fix my thoughts on Jesus and to live a holy life.

In other words, it’s not just the good news itself, but also the remembering of this good news, that enables me to become a good man.

Saturday, July 09, 2016

Stockholm, random notes 2016-07-09 Saturday.

We heard yesterday in Helsinki (where prices are lower!) that one can take a ferry overnight to Stockholm, spend a day here in S-town, and take the ferry back to Helsinki. And, I suppose, the reverse.

Certainly one could travel Helsinki to Tallinn and back -- probably just a few hours each way. On arrival in Stockholm we had a choice of transportation:

  • excursions organized by the cruise ship line (which are more expensive but you get preferential treatment: first off the boat; they'll hold the boat if you're late getting back; if you can't dock in port, that portion of the tour fee is refunded)
  • hop-on hop-off tours:
    • bus: 300 SEK (or SKr?) -- at $1=8.5 SEK, that's about $35
    • boat: 180 SEK or about $21
    • bus+boat: bus+boat, 400 SEK or about $47
  • The above options are offered by red sightseeing and also by the green outfit. Price and itineraries are basically the same, EXCEPT
    • first few departures of the RED boats from cruise ship dock go directly to the Vasa museum. This is a deviation from the published route (wherein you'd make 5? stops before getting there). I don't know if the green boats go there; I suspect not.
    • According to one of our fellow-passengers, the green boats were smaller and fuller -- that is, you might not be able to board!
  • According to one of the guys, boats come every 15 minutes. i don't think this is true: Carol swears we waited 30 minutes at one point. I'm not sure it was quite that long, but it was definitely more than 15 minutes. But every time we saw a green boat, a red boat was not far behind.
WHAT WE DID TODAY
  • Decided to get on the red boat. Because of price we went for boat-only. We got red by pure dumb luck, and went to Vasa museum. Admission 180SEK each, I think. We took the [free] English-language tour; guide was excellent.

    The Vasa was commissioned in 1625 and construction completed in 1628, taking 2+1/2 years to build. King Gustav II Augustus (I might have that name wrong) wanted to have 72 cannon on board--never been done before. The shipwright/architect said it would be unsafe, but as the king wanted that, he got it. Due to the unprecedented weight, the ship was built with very strong+heavy timbers belowdecks (this was usual) but also above (this was not usual) to support the heavy armaments. Turns out only 64 of the requisitioned 72 were ever delivered...

    Vasa was the eldest of four sisters: two big and two smaller vessels. The king was annoyed because Vasa took so long to build: usual construction time was well under two years. Construction of Vasa's sister (whose name I've already forgotten) was halted while all hands were on deck so to speak to complete Vasa.

    Vasa sailed on her maiden voyage, and the 2nd gust of wind tipped her a bit too much, and water rushed into her gun ports. The listing to one side was exacerbated by [1] all the cannon being on one side of the ship (I guess port side but am not sure) to fire a salute to the king, who was not even there to hear it; and [2] ballast in the stern (I think rocks) which shifted to the side, accentuating the list. Water entered the ship through the gun-ports and she sank in 20 minutes, killing we think 30 or 40 souls. Fifteen skeletons were found inside when she was raised in the 1960s; others escaped the ship but were drowned (couldn't swim).

    Vasa's sister was given a hull one meter wider and I think with fewer cannon. She sailed for 30 years (vs 20 minutes), so i guess they did learn something.

    The Vasa was discovered in the late 1950s (1956?) by some guy who was looking for it with a coring tool. After finding black oak in quite a large area, he understood that he'd found Vasa, but it took several years to rescue her from the bottom. Steel cables were placed under the keel, and affixed to pontoons floating on either side. (This was attempted shortly after she sank, but with ships anchored on either side. This is why many anchors were found atop Vasa when she was eventually raised.) The wood began to warp (etc) and they began spraying her with polyethelyne glycol (sounds like Saran Wrap(R) + antifreeze). They replaced her bolts with iron bolts (today most of these have been replaced yet again with stainless steel bolts). Once they got the water out of her, she floated! She was made of wood, right?

    btw she sank in very cold and brackish waters, which contributed to her survival. also there weren't any shipworms (i guess these things eat ships).

    About the sculptures around the boat; the bow has the lion, representing Gustaf ii adolphus/augustus/whatever. Near bow, on starboard side, is a man hiding under a table, supposedly for fear of the lion. The Swedish king was younger brother and protestant to the king of poland, who was Catholic. But Swedes didn't want to be Catholic. Other statues near the bow are the likenesses of Roman emperors; Gustav identified with them.

    At the stern, Gustav is seen (did i take a pic of this?) leading and protecting his people.

    Back to the Saran Wrap + antifreeze stuff; they've stopped spraying that. instead Vasa is kept in a temp/humidity-controlled environment. On many places the ship has reflectors. They want to preserve her for another 100 years (she was underwater for 333 years!) so want to be able to measure when she's deformed by gravity, by the wood's compression as it settles, etc.

    Something like 98% of the wood in Vasa was preserved; there are a few places where it was replaced. The bowsprit is one; the stern-most mast is another. You can tell by the color of the wood (new=lighter). Not all of Vasa is inside the museum; there are three masts visible outside the museum, indicating the full height of the original ship.

  • Afterward, we walked to Skansen, enjoying the beautiful Stockholm weather along the way. We entered Skansen by the not-main entrance (Hazelius?) and walked in. We saw King Oscar's Terrace and the rose garden, then turned to Makaloes (oe=o-umlaut) and followed the path to see reindeer and elk and some other domestic & wild animals.
  • Then we took the 15? minute walk to the hop... boat around to the first stop moderately close to Gamla Stan. The "Miss Behavin'"(?) Bar was right there, and we had 3 hot dogs (the "alex wiener") for SEK175; a cobb salad (another SEK175) and a beer (SEK75? 85?). Yeah, that's like $20 per entree, and about $10 for a beer.
  • At about 2:25 we boarded the boat, arriving at the pier about 3:10. We were on board well ahead of the 3:30pm deadline.

Friday, May 20, 2016

Integrity?

Some years ago, the elder ex-teen (now the mother of two) and I spent some time in Professor Carter’s book integrity, which goes into various areas: intent, due diligence and so on. In other words, integrity means more than simply not telling lies. When put that way it seems obvious, though I don’t usually pay so much attention.

The question of integrity came to mind recently when a friend (I’ll call him “Dieter”) told me about an incident at work. Dieter’s a software guy, like me, and his company’s website (I’ll call the company “JCN”—not the real name) describes a project they did internally. In the article is a statement of why they did this project. The statement is not true; JCN actually did it for a completely different reason than their website says.

JCN’s stated corporate values include words about ethics and integrity, and they have an email “hotline” for that, so Dieter sent them a note pointing out that, paraphrasing, “Our website says the project was ‘first and foremost’ about doing X better, which everybody knows is not true.”

In fact, when the project went “live” at JCN, X was much worse. Dieter admits that today, X is not that much worse than it was before the project. That said, the project really wasn’t about improving X; it was done for a completely different reason.

Dieter acknowledges that this false statement isn’t critical to the company. They’re not promising something their products can’t deliver; nobody’s going to sue JCN or cancel a purchase order because of this statement. But as Dieter told the “integrity” people at his company,

When we make a statement about why we did something, and that statement is not true, that is what makes it a lie.
Please remind me not to get into arguments with Dieter.

JCN’s “integrity” people didn’t see it that way. Dieter was quite bugged by this; he even considered leaving JCN for another employer. But then remembered a couple of things.

  • He’s an American; he knows that his government has killed people in other countries and overthrown democratically-elected governments. But he’s not thinking to become a citizen elsewhere.
  • The prophet Daniel worked for a cruel and arbitrary boss, King Nebuchadnezzar. But would Daniel have quit, given the chance? Probably most bosses at the time were pretty similar, and maybe incompetent to boot. The same thing is probably true of American corporations.
Dieter came to understand that when the company says “integrity,” what they mean is, “Don’t do anything illegal, anything embarrassing, anything that will alienate a customer.” He wasn't happy with that conclusion, but anyway it was a conclusion.

Something else happened that I thought very interesting. After concluding his dialogue with JCN’s “integrity” folks, he told me, “my back stopped hurting!” His back has been complaining (yeah, he’s old enough for that) for some months. The pain hadn’t been debilitating, but he says that was the first afternoon when his back didn’t hurt at all.

What brought relief to Dieter’s back? Was it his acceptance of his employer's Newspeak, like the 5th stage of death and dying, that did the trick?

And what’s the moral of this story? Dieter doesn’t know. Neither do I

Tuesday, May 17, 2016

Confession: taking one for the team

Last week, I sent out a confession at work. I'd read an encouragement to do things like that, and…well, it's pretty self-explanatory. Here's a lightly edited version:
   From: collin <email.address@here>
     To: <recipient-list here>
   Date: Last Tuesday
Subject: Confession

Short version: I did something dumb and confess it.
Busy people can stop reading here, though I hope you read this at some point--maybe while waiting for one of your tests to complete. Details follow.
I picked up a free copy of The Soft Edge when they were being handed out at the cafeteria some weeks back. In it was an encouragement to celebrate successes and also to confess mistakes--especially big successes and big mistakes (cf. “Asoh Defense”).

I saw the power of this a while back when a colleague told me about a mistake, looking somewhat sheepish. “We’ve all done that,” I said. Just to make sure, I added, “I’ve done it myself.”

Well, I’m not the most empathic guy but I felt the weight lift off their shoulders. “You’ve done it?” they asked, incredulous. Yep. It was probably about 20 years ago, but I’ve done stupider things before. And since.

Fast forward to the present. There have been lots of failures in <test case name here>. Some of them happen only when nobody is watching, and have defied analysis. But one of them should have been fixed (by me) right away: burt987303.

It happened in February, then again 8am on May 2. The symptom was a timeout on a “d-volume-create” zapi. “Hey,” I thought, “if the simulator (in this case) can’t come back within 100 seconds, then maybe it died. I could look more, but since it won’t happen again for another 2 months, how much time should I spend on this?”

The answer was: Just a few minutes more--long enough to RTFM and adjust the timeout. You see, it happened again May 4th. You can read <internal document name here>, but the short version is that zsmcli has a “timeout” parameter: I coulda just set that in the command to extend the default 100s timeout.

I’m happy to tell you that I checked in a fix, and that said fix prevented another failure on 5/7 (in <log file name here>, there’s a 118-second d-volume-create execution).

To be clear, the issue was in a test script; the issue wasn’t in the product. I’ve introduced, or incorrectly fixed, product defects before, but this particular issue is in a test case, not in any product sold by my employer.

Is there a moral to the story? Well, the obvious one is to rtfm. Or the help message, as the case may be.

The second is, if you’ve done something like this (it could be more or less dumb; we’re not being precise), don’t feel too bad about it. Performance reviews are over; you could tell somebody. If you’re more senior--or just old--you could tell someone younger; it’ll probably help them feel better. And that in turn might help them think more clearly, too.

cheers,

Why did I say that telling a younger person about your mistake might help them think more clearly? Because when we reduce the pressure they feel to appear perfect (even if the pressure originated inside their own head), they’ll have less anxiety—less stress. Less anxiety, clearer thinking.

It also makes you appear more human, more real. And we need more of that—more live, human connections (as distinct from mere contractural, transactional connections) in the workplace. Out of the workplace too.

Wednesday, May 04, 2016

Too Thorough? part deux

In part 1, I tried to make the point that when a VP or Director calls someone “too thorough,” s/he may mean
“You're giving me too much detail (which I don’t want/need to know); let's get to the high-level information (which I do need to know).”
In other words, sometimes our presentation doesn't match the audience. I resemble this remark, I hope progressively less so as the years have passed.

Another way we're sometimes “too thorough” is that sometimes we spend too much time delving into details that have no bearing on the problem we're trying to address. By the way, I sincerely do mean “we,” as this post attests. About 3/4 of the way through that post, I wrote, “In other words, I was done.” I could have stopped there. Arguably I should have, since I demonstrated that my explanation fit all the facts, and that my code change banished the symptom.

That last sentence is the key. We are not FreeBSD maintainers; we are FreeBSD users. As such, once we know enough to plausibly assert we know what's going on, and to demonstrate that we can make the symptom vanish, we know enough, period.

So why did I continue there? No doubt some of it is a kind of engineering curiosity, not altogether a bad thing. It was exactly that engineering curiosity that drove me to ask my colleague to configure a virtual machine with a disk that could take coredumps, and to find the uninitialized struct component. That is, a certain amount of engineering curiosity is required if we're to make progress. I'll claim it's worse to have too little curiosity than too much, though the truth is probably more nuanced than that.

Early in my career, my manager wrote on a review that I tended to work fast and rely upon experiment. This was a nice way of saying that I sometimes rushed in with an answer without fully assessing the situation. He was right, of course. Back in those days, I would never have written that blog post, because the experimental result would have fully satisfied me; I'd be on to the next thing.

Is it just curiosity then? I guess there's some sort of pride in there, too—the desire for mastery. I love it when I have a complete explanation for how something happened—when I've mastered it. Of course that's not what my employers pay me for; they pay me for solutions to problems that they choose.

The next question for an engineer is: What problems are worth my attention, my curiosity? Senior people are supposed to just know; if something looks odd, is that something worth looking at today, or can it be safely ignored until it becomes a real problem? Is the "obvious answer" truly the answer, or does it simply make the "root cause" harder to find?

Well, we don't know. We need to look far enough to feel confident enough to make a decision, and we need to be lucky enough to not get blindsided too much.

So what's my plan? I'd like to say that the next time I'm hot on the trail of something, I'll stop and think, "Do I truly need to be investigating this?" and make a sober assessment of whether I'm being compulsive, vs. just exercising due diligence.

Maybe that's like saying, "The next time I'm about to say something stoopid, I'll bite my tongue." Does that sound totally useless? Well, if I can remind myself that I have this tendency, or limitation, that's the first step, right? As the engineering guru Clint Eastwood said, "A man's got to know his limitations." Or weaknesses. And of course women do, too.


Well, that was a lame ending. That's because I don't really have this one figured out. Maybe you have some ideas? Leave me a comment :)

Monday, April 25, 2016

Citizens?* Or mere taxpayers?
[* I don't mean Citizens United]

In a recent Harper’s, Marilynne Robinson remarked that whereas our society used to have citizens (who may have a sense of identity based on their country, maybe even pride in or aspirations for their country), we now speak mainly about taxpayers. Both the citizen and the taxpayer are creations of political rhetoric, she wrote, pointing out the power of words to shape our thinking.

But I want to write about paying taxes. As a taxpayer, I’m pleased that my federal and state income taxes are lower than they might be. As a citizen, however, I think it’s outrageous that marginal tax rate is so low for someone with my income.

Back in the 1970s, the top marginal tax rate was about 70% for single taxpayers and about 55% for married couples filing jointly. But ever since the Reagan administration, the top marginal tax rate has been something like 39.6%. I’ve paid this rate. My income hasn’t decreased since that time, but my marginal tax rate for 2015 was 28%. Which is nuts!

Why is the national debt ballooning? Why don’t we have enough money to repair roads and bridges, and to pay our teachers a decent wage? Yes, I know that teachers are paid with state and local taxes, but the federal government also contributed to education funding; these federal subsidies have decreased dramatically since the 1980s.

I also know that we’ve wasted a lot of money fighting wars that we never should have started, and that we have furthermore wasted billions on “security theatre” at the nation’s airports. But if you say, “I’ll support higher tax rates when the government stops wasting money,” you’ll wait forever.

Those are problems I can't solve, but there is an issue I'm considering. I had solar panels installed on my roof last year, and consequently I'm eligible for a tax credit. The question is: Should I ask the federal government (read: "my fellow citizens") to pay for part of my solar panels?

Because tax credits—and, to a lesser degree, tax deductions—are expenditures. A dollar not collected because of tax deductions or tax credits is a dollar not available to fix a road or a bridge; alternately, it's a dollar that can't be used to pay a park ranger, or a dollar we've got to borrow...

Why should I ask my fellow citizens to pay for [part of] my solar panels? I understand the offer is there, and that it's permissible for me to receive it, and as a taxpayer I "should" take it, as I'm entitled to.

But as a citizen, do I really have an obligation to? Following Kant, do I want my fellow citizens to take every legal tax credit and deduction available? As a taxpayer, all I'd care about is myself, but as a citizen...

So there's my quandary.

Sunday, April 24, 2016

Alaska Airlines to Hawaii?

Some folks say that Hawaiian and Alaska are the two best airlines to take to Honolulu. What with Dad's passing last year, I've been making quite a few trips, usually on Alaska; Carol and I just got back from a trip on Hawaiian. Here are a few opinions.
 AlaskaHawaiian
gate experience outbound checkin at San Jose terminal B; your gate may be in terminal A checkin at HNL Hawaiian terminal (can you spell c-r-o-w-d-s?); your gate is in main terminal and may involve quite a hike
Food A wide variety of paid options; usual complimentary beverages; water offered throughout the flight Complimentary meal and glass of wine. Snacks available for purchase; usual complimentary beverages; water offered throughout the flight
in-flight amenities Power outlet at every seat. I saw no power outlets on any leg of this past trip. Safety video (seen on both CA↔HI legs) was particularly entertaining.
baggage Bags come out I think within 20 minutes of landing. Carol's checked bag appeared 30 minutes after we were at the gate at SJC. widebody jet (A330, 2+4+2 seating) means more passengers, hence more bags

Postfix SMTP authentication update

The lovely Carol's blog got hacked, so I updated the password on our ISP account. Mostly this was a matter of changing the passwords on mail clients (Mail.app, thunderbird) but that didn't do it for cron(8)-driven commands that sent mail; for that I needed to update the passwords in old-school files. So now I'm telling you about it, where one of you is my future self :)

On the Mac Mini, the file is sasl_passwd, which I updated using vi(1). After that I had to root around a bit to find out how to update the map, which turned out to be quite simple, once I knew how.

bash-3.2# postmap hash:sasl_passwd
bash-3.2# ls -ot|head
total 440
-rw-------  1 root  16384 Apr 24 10:05 sasl_passwd.db
-rw-------  1 root    XXX Apr 24 10:01 sasl_passwd
-rw-r--r--  2 root  27097 Nov  1 14:32 main.cf
-rw-r--r--  2 root  27097 Nov  1 14:32 main.cf+sasl
-rw-r--r--  1 root  26615 Sep  9  2014 main.cf~orig
-rw-r--r--  1 root     44 Sep  9  2014 custom_header_checks
-rw-r--r--  1 root  26147 Sep  9  2014 main.cf.default
-rw-r--r--  1 root   7443 Sep  9  2014 master.cf
-rw-r--r--  1 root   7443 Sep  9  2014 master.cf.default
bash-3.2# exit
The hint came from http://www.postfix.org/SASL_README.html, particularly this:
  • Use the postmap command whenever you change the /etc/postfix/sasl_passwd file.

And on Debian Wheezy

For some reason the layout is a bit different.
root@p64:/etc/postfix# cd sasl
root@p64:/etc/postfix/sasl# postmap hash:passwd
root@p64:/etc/postfix/sasl# ls -ot
total 16
-rw------- 1 root 12288 Apr 24 10:09 passwd.db
-rw------- 1 root   XXX Apr 24 10:09 passwd
root@p64:/etc/postfix/sasl# exit
collin@p64:~$ echo how about this from p64? | mail -s well? MY.OTHER@EMAIL.ADDRESS
The message was received at my other email address, and I didn't get a bounce.

So apparently I got all this done in under ten minutes. How often does that happen??

Sunday, April 17, 2016

Recovering posts from a toasted wordpress site

The lovely Carol had her wordpress site hacked. Not knowing squat about wordpress except this, I naively thought it would be a Good Idea to pull the posts and the media off the site, blow it away, create a new site on top of it, and put the content back. It wasn't a problem finding the media; I tar(1)ed it up, gzip-ed (in vain) like this:
$ tar -tzf ~/uploaded-images.tgz
wp-content/uploads/
wp-content/uploads/2013/
wp-content/uploads/2013/01/
wp-content/uploads/2013/01/masthead_web.jpg
wp-content/uploads/2013/01/masthead_web-150x150.jpg
wp-content/uploads/2013/01/masthead_web-300x112.jpg
wp-content/uploads/2013/01/masthead_web-1000x288.jpg
wp-content/uploads/2013/01/masthead_web-500x187.jpg
…
But what about the text? I asked the lovely Carol, who said there was no need to capture the comments and a bunch of other stuff. She did, however, want her subscribers.

Following the method shown in that other posting, I went to the database and said

mysql> show tables;             
+--------------------------+
| Tables_in_REDACTED       |
+--------------------------+
| wp_commentmeta           |
| wp_comments              |
| wp_links                 |     
| wp_options               |
| wp_postmeta              |
| wp_posts                 |
| wp_subscribe2            |
| wp_term_relationships    |
| wp_term_taxonomy         |
| wp_termmeta              |
| wp_terms                 |
| wp_usermeta              |
| wp_users                 |       
+--------------------------+
I saved the subscribers off by typing mysql> select * from wp_subscribe2; which will do, because we don't have bazillions of them; a little scripting will get all the email addresses set up as subscribers for the new site.

She doesn't care about saving the old options, or comments, so all I need to do is save the posts and pages. We'll ask the designer who did the original design to please re-do it, once I can give her access.

So, what about saving the posts? It turns out that wp_posts has both the posts and something wordpress calls "pages." My first thought was to save everything into a nice file, like this:

SELECT * INTO OUTFILE '/$HOME/posts-outfile' CHARACTER SET utf8 FROM wp_posts;
which didn't work, because I don't have FILE privilege. Dang.

This worked fine though:

echo -e "use REDACTED\nSELECT post_type, post_date, \
    post_modified, post_title, post_content \
    FROM wp_posts where post_status = 'publish'; " \
 | mysql -h REDACTED -u REDACTED -p | tee $HOME/tempfile
So now I had her posts and "pages"

I then moved everything in the "root" directory of her domain into a subdirectory where nobody will look. By "nobody will look" I mean "nobody has permission." And by "nobody has permission" I mean 0700.

Now getting the data out of the aforementioned temp file was harder than I thought. My first naive thought was to do something like

sed -n 5p TEMPFILE
and just snarf'n'barf the rather long line I got. Bad idea. It almost worked, except for a few things:
  1. a bunch of newline characters, which were represented as "\n"; of course, HTML doesn't care about "\n" and just renders it like that....
  2. Some unwelcome <CR> (aka '\015' or '^M' or '\r') characters, which do a "carriage-return," putting the cursor back at the left margin but without scrolling the window. These caused a jumble of nonsense, but it was over toward the right, where you wouldn't see it without reading the whole thing through
  3. characters with the high-order bit set. These are things in the range 0x91—0x97, which are translated in this chart
I couldn't quite do all this with a shell one-liner, but I tried this:
grep '^page' published-posts-pages.out |sed -n 1p | tr -d '^M' | \
   sed 's/\\n\\n/<p>/g'
which was mostly okay. the bold blue ^M was entered by using <ctrl-V><ctrl-M> I think.

For the "page"s I think I just did the funky characters by hand, addressing (mostly) #1 and #2 in the one-liner. To take care of #3 (the "posts" had a lot more of these than the "pages") I wrote a little Python.

#!/usr/bin/python2.7 -utt
# vim:et:sw=4
import sys

the_line = sys.stdin.read()
sub_table = [
    [ 0x91, '&lsquo;' ],
    [ 0x92, '&rsquo;' ],
    [ 0x93, '&ldquo;' ],
    [ 0x94, '&rdquo;' ],
    [ 0x96, '&ndash;' ],
    [ 0x97, '&mdash;' ],

]
for old_thing, new_thing in sub_table:
    the_line = the_line.replace(chr(old_thing), new_thing)

sys.stdout.write(the_line)
sys.exit(0)
I stuck this into $HOME/bin/chars.py and then, to handle a typical post, said:
$ LANG=C; grep '^post    ' published-posts-pages.out | tr -d '^M' \
   | sed 's/\\n\\n/<p>/g' | sed 's/\\n/<br>/g' | sed -n 12p \
   | ~/bin/chars.py | pbcopy
A few things about this:
  • LANG=C was because I had been trying some other character sets. They didn't work.
  • after translating all the "\n\n"s into "<p>", there were some single "\n"s left, which I translated into "<br>"
  • chars.py of course was to do the right thing with those odd characters
  • I used the Mac OS utility "pbcopy" because the terminal emulator renders unknown characters as '?'. Of course, now that I have chars.py in the pipeline, this was probably superfluous. Well, I could just CMD-v in the wordpress window to add a new post.
That's about it. The site is now ready for the lovely Carol to fine-tune. The .htaccess file currently will allow access only to the IP address of this particular house. When it's ready to publish, we'll remove the IP address restriction.

Saturday, April 16, 2016

I just heard some rembrances of Walt

Walt Gerber had been senior pastor at Menlo Park Presbyterian Church for about 28 years before his retirement early in this millennium. I missed his memorial service a few days ago, but Carol and I watched part of the video recording.

I heard quite a few of Walt's sermons, though I attended MPPC for only about half of his tenure. To tell the truth, I don't remember a lot of what he said, apart from the phrase "hospital for sinners."

No, the biggest impact Walt had on me may have been through the words I heard today. Walt's colleagues recall his love and acceptance, his respect, his belief that God was at work in and through them. Walt always pointed people to Jesus; he talked with Jesus early and often. He knew many of his faults, and he went to Jesus with them.

One of Walt's "faults" was his reluctance to preach. He told us from the pulpit more than once (so I guess I did remember this) that every weekend was white-knuckle time. This became a blessing for the Church in that he would put other staff members into the pulpit quite often; he coached them and put them in front and eventually they graduated to become senior pastors, elsewhere in California, in Washington, in Houston (I think Doug F. has since moved to the east coast) and I don't know where else.

I can't imagine really being like Jesus or Paul, but I sometimes aspire to be like Peter. By this I mean I know I'm not sinless; I'm not self-sacrificial and I don't have as much love as Paul had. But Peter -- when he goofed up, he did it big-time. And when he repented, he did it big-time. I want to be like Peter.

And in the same way, I know I'm not as gifted in the ways I sometimes wish, but I can aspire to be like Walt. So that at my memorial, God willing some decades hence, there will be a few people who will say things like

  • I asked him for advice, and all he said was, "this is how you'll learn to hang on to Jesus";
  • I had written my resignation letter, and he called me out of the blue and said he loved what I was doing, and to keep up the good work;
  • I knew he was talking to Jesus then, because he was always talking to Jesus.
Walt wasn't perfect, but he was God's provision for MPPC--he was God's provision for the Church, and he used Walt at MPPC and turned his "faults" into blessings for the capital-C Church.

Why am I not like Walt today? One reason is that too often, I want you to think I'm clever or competent or something like that; therefore I say things or do things to try to get you to think that about me. If instead my aim were for you to think, "I'm loved" or "Jesus is watching over me to take care of me" or "God is working in everything that happens, so that I can grow up and be like Jesus," then I'd be further along the path toward Walt-ness.

Oh that my faults would become blessings for others through the grace of Jesus Christ, who died for us so that whether we are awake or asleep, we may live together with him!