I don’t want to remember nothing

Posted in General | No Comments »

Cypher

Cypher

One of my favorite parts of The Matrix, for the sheer delight in the level of nonsense, is this bit, when we see Cypher actually selling out Morpheus and his crewmates:

Agent Smith: Do we have a deal, Mr. Reagan?
Cypher: You know, I know this steak doesn’t exist. I know that when I put it in my mouth, the Matrix is telling my brain that it is juicy and delicious. After nine years, you know what I realize? Ignorance is bliss.
Agent Smith: Then we have a deal?
Cypher: I don’t want to remember nothing. Nothing. You understand? And I want to be rich. You know, someone important, like an actor.
Agent Smith: Whatever you want, Mr. Reagan.
Cypher: Okay. I get my body back into a power plant, you insert me into the Matrix, I’ll get you what you want.

Once upon a time, three years ago, I got a Windows Mobile smartphone with an unlimited data plan. Then they stopped subsidizing them at work, and I (like everybody else) canceled the data plan. Fast forward to now, I have changed wireless carriers (and addresses), and my old HTC Wizard is on its last legs, not surviving more than 2-3 days without a reboot. (What a great idea, to make our phones the same way we make our unreliable computers.)

I feel like Cypher, because I just made a deal with the devil (I mean Steve Jobs) and reinserted myself into the power plant that is a monthly data plan. I got an iPhone 3G.

I love it. It’s the most locked-in, anti-freedom piece of computing machinery I have ever seen, much less owned, and I really, really love it.

Ignorance is bliss. I don’t want to remember what it was like to have a phone that was semi-open, but so very underpowered. And this steak tastes really good.

Birthday greetings

Posted in General | No Comments »

I would like to wish a happy birthday to CalvinDude. And hearty wishes that he will make YouTube videos with his new talking W doll.

I guess he won’t come today

Posted in General | No Comments »

This quote can be found all over the web, in one form or another. My father emailed it to me yesterday, and I hadn’t seen it before. It is worth your consideration.

The great Scottish essayist and historian Thomas Carlyle married his secretary, Jane Welsh. She continued to work for him but when she got ill, Carlyle, who was deeply devoted to his work, didn’t seem to notice, so he allowed her to keep working. But she had cancer and eventually she was confined to bed. Although Carlyle truly loved her, he found that he didn’t have much time to stay with her or much attention to give to her. Then she died. After the funeral Carlyle went up to Jane’s room, noticed her diary lying on the table, picked it up and began to read. On one entire page she’d written a single line: “Yesterday he spent an hour with me and it was like heaven: I love him so much.” A reality he had somehow been too blind to see now revealed itself with crushing clarity. He’d been too busy to notice how much he meant to Jane. He thought of all the times he’d been preoccupied with his work and simply failed to notice her. He hadn’t seen her suffering. He hadn’t seen her love. Turning to the next page, he reads words he’d never forget: “I’ve listened all day to hear his steps in the hall, but now it’s late and I guess he won’t come today.” he put her diary back on the table and ran out of the house. Friends found him at the side of her grave, covered with mud. His eyes were red from weeping; tears were rolling down his face. “If only I’d known, if only I’d known,” he cried. After Jane’s death, Carlyle made little attempt to write again.

I don’t want to be the one who didn’t know, and didn’t come.

your next youth ministry guest speaker

Posted in General | 2 Comments »

I hope it’s not this guy. I would have laughed but I was cringing too much. HT: Doug Wilson.

In which Van Til bites me again

Posted in General | 2 Comments »

I was thinking on my way to work (listening, oddly enough, to Within Temptation’s song “The Truth Beneath the Rose,” a funny little liberal ditty about how bad holy wars are — sorry, it’s not meant to be funny, though), and I was once again struck by the strange influences and confluences that God used to make me who I am.

Despite not having any really good answer for the things that Steve Hays says all the time on Triablogue — I’ll be honest, I try not to let other people get away with thinking something without having a good reason for it — I have been very resistant to theonomy. Yes, I believe that God’s Law is the basis of all of men’s good laws, and men’s concepts of good and evil are entirely borrowed from the one that came standard with the image of God and the revealed truth of the Word, however twisted it has been in this world. And yet, I have not been willing to think that it would be a good thing for the nation to become a “Christian nation,” because I have associated that with a lot of bad things.

But who will I trust? What is happening in the West, as Islam gears up to outnumber us in a generation or two? Are we ready for a democratically elected Congress and President who sign Shari’a into law? We may agree on as much as 90% of our moral codes, in terms of the details, but we don’t agree on the Source of that law. And therefore Allah, the one who defines good law in Islam, and who also declared that it is appropriate and necessary to subjugate other religious traditions and demand conversion to Islam, could end up being the God of America and/or Europe. I didn’t sign up for that.

But let’s look at the other alternative, which is the erosion of our self-determination. The liberals in this country are willing to let us believe what we want, but they are less willing every year to let us teach it to our children, or attempt to persuade others (even through rhetoric and vigorous debate) of our views. It is becoming hate speech to declare that God hates homosexuality, but the people who shout most loudly that this is hate speech either don’t believe in any personal God, or believe in one who is vastly different from the One we preach every Sunday. Despite the fact that we are declaring the words (so our critics maintain) of a nonexistent Being, we may not say what we want about this.

People can believe in Ascended Masters, Earth Mothers, or djinn, and that’s fine, but when we declare that God is One and He has spoken, we get in trouble. And we aren’t the ones demanding with force of law, or on pain of imprisonment or punishment or death, that others believe. We wield the one thing we have: the truth. A Holy God is offended and justice must be served. If you give Him your life, then your justice has already been served on His Son, Who loved you and died on your behalf. No guns to the head, swords to the neck, chains on the ankles, just a scary vision of eternity without God and a message of hope for anybody who hears it.

Soon it will be considered child abuse to teach this to our children.

What is the alternative? A more confederate system like the early United States had, in which communities largely determined these things on their own? Sounds good on its face. Liberty is served by like-minded people banding together in communities and enforcing their own rules. Let the local judges determine what is and is not within the moral purview of the people, and let the people determine who will be the judges. If you want something more liberal or more conservative, move someplace else, or start your own fringe group, and maybe you can form a community around you. It sounds pretty good, right?

Two problems with that, though. First, as Christians, we have to get the gospel out to the world. That’s not something one can do when one surrounds themselves only with like-minded individuals. We’re already too insular (perhaps I’m only speaking for myself, though). Second, we have the people who really are hurting others. Are you cool with the next city over practicing euthanasia or abortion, or lowering the age of consent to 12, or (worse) marrying off multiple young girls to the religious man in charge of the community? I mean, if we don’t like it, we don’t have to live there, right?

But we can’t let those kids be hurt. And here’s the problem; we just said what the liberals say about us, when we “brainwash” our kids into believing that God created the world in a very short time, a relatively short time ago, and that God was pleased to crush His Son to save those who would call on His name. We all agree that we must, as Mrs. Lovejoy always said, “think of the children,” but what we think about them is very different. We in our turn hate the idea that the liberals are shrugging about kids being kids as they get into sex and soft drugs at ages when we were still playing with Legos and reading comic books, and they hate the idea that we are pressing them into our ancient molds when we could be giving them the freedom to become their own people.

Ultimately, we’re right; children (and others) must be kept from harm, and liberty can only be preserved alongside protection for the weak. And I’m left admitting what I would have known all along, if I’d taken the time to think about it: the only solution is for everybody to admit that we’re right, to submit to the Christian ethical system. I believe that the Christian morality is the only one that actually protects the weak and maximizes liberty; all the others tip the scales one way or the other, and the result is always tyranny and persecution.

And therefore we must, insofar as we have political power (mostly the right to vote, anyway), wield it to put Christians who will pass and enforce Christian laws into office. And we should recognize that certain things are more important than others; for example, abortion is an accessible single issue that makes or breaks a candidate’s viability. You would agree, if we cast this in terms of “murder of children” rather than “abortion.” Who wants to be in favor of the wholesale slaughter of innocent children who were already born? If you agree that there is no ethical difference between those and the unborn children, then you can perhaps see why I would consider voting for a Communist if he were radically pro-life over a pro-choice but otherwise conservative Republican. (No, I don’t know of any pro-life Communists, I was going for an extreme example.)

However, I do at least still maintain one thing from how I felt about this before; there is no political solution that will produce this. There is only a spiritual solution: revival. The government cannot effect this change, but the people can. Therefore we must change the people, and the only way to do that according to Scripture is to preach the Gospel and wait on the Lord of the Harvest to give new hearts in the place of the old ones. Then sanctification will begin to produce a community in which we can protect and train up our children.

There is only one standard for good. Pretending that anybody else’s standard is good enough is a dangerous game, with regard to both eternity and the future of the West.

Upgrade, theme change, and so forth

Posted in General | No Comments »

I upgraded to Wordpress 2.8 this morning; it was painless. I went ahead and changed the theme and the tagline, too.

If I have not correctly conjugated or declined the Latin phrase “Ego delendus sum,” I would appreciate somebody letting me know. I don’t know from Latin, but I know what I’m trying to say.

New reading plans for ESV API

Posted in General | No Comments »

The ESV Bible Blog announced new reading plans for their web API. They are now supported in esv.el, Emacs support for the ESV API.

Is it too much to ask that they detail somewhere, like on their reading plan page maybe, what the “Outreach Bible” and “Outreach NT” are? (Yeah, I’m hoping they’ll notice the pingback.)

Me sister is in to songs

Posted in General | Comments Off

This showed up on my family’s internal Wiki yesterday (yes, we have an internal Wiki, don’t act surprised):

Willy Wonka is so cool. Its about this one family who is VERY poor and There son Charlie Bucket and His Grandfather gets to go to a Chocolate Factory and wins the WHOLE factory. And is very fun. We are doing a play based on it. And My sister Kayla is a reporter named Phineouse Trout But since its a girl playing Phineouse they changed the name to Penelapee Trout. And I am one of Charlie’s Grandparents Named Georgine. She is very hard to impersonate. But it’s fun. And there are 3 more grandparents. I’m having fun with the rehearsals though. Some people don’t like having the rehearsals but its fun. Me sister is in to songs and they are called: “I eat more” she sings that song with two ather people but only one of them has a name and she is Augusta Gloop. And the parent is just Mrs. Gloop. And another song with two other people latter in the play and its called “I See It All On TV”. She sings it with two people named Mechelle and her mom Mrs. Teavee. And I sit in a bed the whole time. But its gonna be fun I know that. The rest you will find out in the play.

My youngest can spell much better when she cares to try. But somehow I thought this was an interesting take on the whole thing. If you’re wondering, there are a lot more girls than boys doing this musical, hence the feminization of half the parts.

I am always amused at the almost German capitalization of nouns in casual writing.

Another product of the Burnt-over District

Posted in General | Comments Off

From Wikipedia’s article on Elizabeth Cady Stanton:

Early during her student days in Troy, Stanton remembers being strongly influenced by Charles Grandison Finney, an evangelical preacher and central figure in the revivalist movement. His influence, combined with the Calvinistic Presbyterianism of her childhood, caused her great unease. After hearing Finney speak, Stanton became terrified at the possibility of her own damnation: “Fear of judgment seized my soul. Visions of the lost haunted my dreams. Mental anguish prostrated my health. Dethronement of my reason was apprehended by my friends.” Stanton credits her father and brother-in-law, Edward Bayard, with convincing her to ignore Finney’s warnings and, after taking her on a rejuvenating trip to Niagara Falls, restoring her reason and sense of balance. She never returned to organized Christianity and, after this experience, always maintained that logic and a humane sense of ethics were the best guides to both thought and behavior.

Women’s suffrage = good. Scaring people with the bad news of hell without preaching the powerful good news of the gospel = bad. Don’t let Finney off the hook, who was part of the chain that led Ms. Stanton eventually to pen The Woman’s Bible, driven by ideology like this: “We have made a fetich of the Bible long enough. The time has come to read it as we do all other books, accepting the good and rejecting the evil it teaches.”

If it were anything like “all other books,” maybe she’d have a point.

April is the cruelest month

Posted in General | No Comments »

Well, I didn’t post in April, at any rate. My excuse?

jakebluesHonest… I ran out of gas. I had a flat tire. I didn’t have enough money for cab fare. My tux didn’t come back from the cleaners. An old friend came in from out of town. Someone stole my car. There was an earthquake. A terrible flood. Locusts. It wasn’t my fault, I swear to God!

Actually my hosting was kind of iffy for the last couple of weeks, but I’m hopeful it’s going to start working today. (It’s my fault for not reporting it to tech support.)

Transcript of the Ehrman debate

Posted in Asides | 2 Comments »

AOMin has posted the transcript of the White/Ehrman debate.

Supernatural bestiary

Posted in General | 8 Comments »

So, we’re in Romans 8 in our small group, and we’re talking about the revelation of the sons of God (that’s us, believers, etc.). The lesson plan we’re using encouraged us to go to a couple other places to see what the resurrection really entailed, but all our Bible versions used big words and we’ve got a few teens in the group, and I wanted to make sure that it made sense.

So, knowing the propensities of this group, I asked, “what immediately springs to mind when I say the word ‘immortal’?” Dead silence (so to speak). Somebody tried to give me a definition, but I didn’t want that; I wanted connotation this time. “What do you think of? The first thing that pops into your head!”

Finally somebody asked, “Do you mean like Twilight?” I happen to know that a couple of the families in our church are really into these vampire books; I haven’t read them myself, but I admit to being curious. I nodded. “Oh, vampires.” That was the answer I was looking for, and we talked just for a minute to try to separate the world’s picture of the weary multi-centenarian wanderer from God’s picture of the unbelievable joy of eternal life. Good stuff, I’m glad the Lord made me think of it.

“What else were you thinking of?” somebody asked. I responded, “in this culture, there are only two things that pop into people’s heads when we say ‘immortal’.”

“‘Beloved’?” somebody said. (Oops, I guess there were three.)

“No, I wasn’t thinking of that. I think it’s vampires, or Highlander.”

“What’s that?”

I can’t believe that nobody knows about Highlander anymore. “Well, see, it’s a pretty good movie, that was followed by a really really really bad movie, followed by a TV show…”

Then one young lady spoke up. “Are werewolves immortal too?”

And with that, I declared that my small group would not become a supernatural bestiary, and read the next question in the study guide.

Thoughts on the Cult of Done Manifesto

Posted in General | 5 Comments »

Jeff put me on to something I hadn’t seen before: the Cult of Done Manifesto.

This is Worse is Better taken to, well, not a new level, but perhaps some of its logical conclusions. I am so much the MIT kind of guy (not a statement about my education, you have to have read “Worse is Better” to get it) when I think, but my doing is a lot more like the New Jersey style. I have had to figure out whether in my life it is better to create the perfect thing, or to create, period. Because the first one doesn’t happen, at least not to us mortals. (Knuth doesn’t seem to count as a mortal, but because I don’t believe in post-Christian theophanies… well, I don’t know what he is.)

Let’s talk through these, just so you can see what I’m talking about. Maybe you can figure out whether you need to think along these lines or not.

1. There are three states of being. Not knowing, action and completion.

This is for everything you think you have to do. You either have no idea whether you can or should do it or not, you are in the middle of the task, or it is over. The idea here is to remove back burners from your stove altogether. David Allen would suggest that they cause stress that you didn’t know you had. I think I agree. Note the implications: if you’re not doing it, then it doesn’t exist. This might be a big key to actually accomplishing things. I will grant that this seems to have no room for the higher perspectives on things, but I tend to think that the people who find this manifesto are people who are not tasked with having the higher perspective, usually. Certainly that’s true in my case.

2. Accept that everything is a draft. It helps to get it done.

In other words, if I may translate for myself, there are no dead ends, or false starts. Even before you have touched it, if you are between “not knowing” and “action,” it’s still the first draft. Even if you’re almost done, you can’t think of it as almost done, because then you might be tempted to put it off. It’s a draft, not a beta, not a release candidate. Keep drafting.

3. There is no editing stage.

Do what you’re doing now with a view to the final outcome, because you will never get to the editing stage, or overcome the fear of failure when you see the size of the editing task, if you have not already honed and polished your work. This is one of the points of this manifesto that really highlight the fact that some people do not need this, and do not work this way, but are quite successful in others. I am not one of those people; I think I need this. Especially as I have worked on my novel, the enemy of getting it done sometimes was the thought that editing would destroy so much of the work I was doing now. NaNoWriMo is a good example of the Cult of Done; it’s all about an artificial goal, and not at all about editing.

4. Pretending you know what you’re doing is almost the same as knowing what you are doing, so just accept that you know what you’re doing even if you don’t and do it.

I have despised people who came into a job pretending to know, rather than knowing. But by and large, they have stayed, and learned, and done, and I, always wanting to learn more before starting… never started. Who was right? The judges like those who try better than those who don’t, almost every time. But they prefer those who succeed to either. Still, the succeeders (successful, I suppose, is the word) usually learned the hard way, by doing, rather than the Right Way, to grasp and then do.

5. Banish procrastination. If you wait more than a week to get an idea done, abandon it.

This is probably the hardest one for me. How do you do this? There are so many things I want to do… but I guess I didn’t want any of them enough to do them right away, and that’s the problem. You’ll notice that it doesn’t really banish procrastination; it actually elevates it to the ultimate test of whether something is, shall we say, action-worthy. This one, like a lot of these, assumes that you’re the kind of person who gets multiple ideas in a week. I would assume that, if you only had one idea a month, you might change this to one or two months, or something like that. But who doesn’t have a lot of projects that they’d like to do, crossing their path regularly? (Somebody who doesn’t use a feed aggregator, that’s my guess.)

6. The point of being done is not to finish but to get other things done.

So, you never sit back with a sigh when you’ve finished something, because all you did was free yourself up to do something else? Maybe this is really more to make clear something that doers are all afraid of… that getting things done is really the only point to their lives. In some ways GTD and the Cult of Done are like logical conclusions to Ecclesiastes, except turned upside-down in some respects; a frenetic drive to accomplish replaces the search for meaning. Heaven help you if your list of things to do includes books on why we do things.

7. Once you’re done you can throw it away.

I tend to enshrine finished projects, partially because there are so few of them, and partially because I’m convinced that all that work was an investment in a future in which I will be that much farther along on a similar project. But reality belies this, unless you are one of the people writing gcc or something like that. The projects that I do have an investment that pays off in my mind, in knowledge and in expertise, but almost never in reusable product.

As an example, I have done a lot of work in Clojure lately, mostly because I can get away with it at the moment, and for a long time I was religiously saving snippets of useful code and storing them away for when I needed them again. That’s silly; I should have simply put it in a directory or git archive that I could grep when needed, because that’s really the only way I used them, and even then, it was more often that I rewrote something with the original as a guide, then actually reusing it.

8. Laugh at perfection. It’s boring and keeps you from being done.

Who doesn’t need to hear that? Perfection does indeed keep you from getting done. 100% is an asymptote, not a goal, and the longer you spend, the closer you’ll get, but the returns always diminish. “Good enough” is the real “perfect” for most of us, most of the time.

9. People without dirty hands are wrong. Doing something makes you right.

Lazarus Long said it this way: “Always listen to experts. They’ll tell you what can’t be done and why. Then do it!” Speaking as somebody who has spent at least half his professional career being an expert without dirty hands, I have to say I agree. You will learn more trying and failing than the expert knows of the history of failure before you.

10. Failure counts as done. So do mistakes.

Don’t cry if it didn’t work out. And don’t feel like it was a complete loss if things didn’t go exactly as planned. This is really another take on perfection. Remember that most successful businessmen fail multiple times before they succeed. That is almost certainly true of programming projects and works of art.

11. Destruction is a variant of done.

I’m not sure what to make of this one. Maybe this is just a statement about the next level of failure, when you have nothing to show for what you’ve done. I really don’t know. But destruction is certainly the end of a task, when it is part of a task at all.

12. If you have an idea and publish it on the internet, that counts as a ghost of done.

This could be good, this could be bad. I guess it depends on whether you’re happy with just the ghost of done. Sometime you are, sometimes you’re not.

13. Done is the engine of more.

More what? Hard to say. This could be #6 again in different language, but it’s not just the next task, serially; it’s more than that. More tasks, more important tasks, maybe more of whatever reward you get from this, too. I think this is one of the most subjective ones, and it is certainly fitting to wrap up the discussion.

I liked this symbolic take on the manifesto, and I have that and the manifesto poster on my wall in my cubicle. I think it has helped, a little bit.

Well, this article is done. There is no editing stage.

Gene Wilder vs. Johnny Depp (Chokolat Kombat)

Posted in General | No Comments »

Who do you like better, Gene Wilder’s Willy Wonka, or Johnny Depp’s? This one I did entirely on my own. It’s only two minutes long, so you have time to watch it.

I admit that Johnny Depp’s new Wonka was more like the book, but Gene Wilder turned that character into his own art; Willy Wonka in the old version is almost the devil himself. It was funny how few really angry or violent shots I could get from either of them, though; context is everything, as you will see in the video above.

Real work

Posted in General | 9 Comments »

Thought some of you might be remotely interested in what the world looks like to me at any given time at work. This has been what the last few weeks have looked like:

real-work1

Yes, I am using Emacs as my MP3 player. *smiles*

Video editing insanity

Posted in General | No Comments »

So, for some reason I no longer recall, I decided to see how hard it would be to edit a little video together in Linux. The result was this: the kids and I each made a music video with LiVES, and Tracey did one in iMovie. Our oldest is hosting these on her YouTube account. (To be fair, I didn’t make all the editing decisions on my video on my own; the kids helped with that too. But everybody else’s was pretty much their own editing work. Yay fair use!)
Read the rest of this entry »

The nitpicker strikes again

Posted in General | No Comments »

I just got an email from a vendor who serves religious organizations in the IT field, that started like this:

Just as faith without works is incomplete, we at deleted believe consulting without implementation is incomplete.

And my first response was, say what? In context, James says that “faith without works is dead,” and it makes sense. But to suggest that faith without works is incomplete suggests either that:

  1. Faith and works together bring salvation, or
  2. One can have a real faith without works, but it should have something more.

I violently disagree with the first, and I don’t think the second says enough to be meaningful.

Now, we are told that Abraham’s faith was completed by his works, but there’s a lot of baggage in that word “incomplete” that doesn’t come across in the tagline above. I hate it when people try to use theology as a sales pitch, although sometimes it is very telling. Somehow I can’t imagine somebody making this mistake who really cares a lot about sola fide.

But it would be strange indeed to say that consulting without implementation is dead. Maybe they just shouldn’t use Scripture as an analogy for their services. Certainly the difference between faith and works is more than the difference between telling you what you should do and doing it for you (if for no other reason than that we didn’t pay Christ to die on the cross on our behalf). It just seems to me to cheapen the whole discussion of faith and works (but maybe that’s because I’ve been obsessed with them lately).

None too deep

Posted in Asides | No Comments »

From Spurgeon, via Pyro: “Until we know the power of divine grace, we read in the Bible concerning eternal punishment, and we think it is too heavy and too hard, and we are apt to kick against it, and find out some heretic or other who teaches us another doctrine; but when the soul is really quickened by divine grace, and made to feel the weight of sin, it thinks the bottomless pit none too deep, and the punishment of hell none too severe for sin such as it has committed.”

WWDMLJD?

Posted in Asides | No Comments »

What Would D. Martyn Lloyd-Jones Do? (Read it, it’s funny, then tell your pastor to test himself.) HT: Steve Weaver.

Fractal beauty

Posted in General | 3 Comments »

Bus WindowI love things like this, something that is fascinatingly complex purely because of the laws of physics. I shot this with my cell phone; it’s the bus window in front of me this morning.

Click the picture to see it full-size. My cell phone camera stinks, I know. And no, I wasn’t there when it happened. I’m kind of glad.

Great quote about Emacs

Posted in General | 1 Comment »

From Steve Yegge, about the original engineers at Amazon.com:

They all used Emacs, of course. Hell, Eric Benson was one of the authors of XEmacs. All of the greatest engineers in the world use Emacs. The world-changer types. Not the great gal in the cube next to you. Not Fred, the amazing guy down the hall. I’m talking about the greatest software developers of our profession, the ones who changed the face of the industry. The James Goslings, the Donald Knuths, the Paul Grahams, the Jamie Zawinskis, the Eric Bensons. Real engineers use Emacs. You have to be way smart to use it well, and it makes you incredibly powerful if you can master it. Go look over Paul Nordstrom’s shoulder while he works sometime, if you don’t believe me. It’s a real eye-opener for someone who’s used Visual Blub .NET-like IDEs their whole career.

Emacs is the 100-year editor.

The whole article is pretty good, and it’s about lots of computer languages, not just Emacs.

Always a better way (VBScript REPL v2, now with less Emacs)

Posted in General | No Comments »

Well, it didn’t work well enough to be useful, so I came up with something better, that was more natively hosted. It’s not perfect, but it actually worked more often. I give you the VBScript REPL, hosted in VBScript.

To Eval something instead of Executing it, you have to preface the line with ReplEval. Sorry, that’s the breaks, change the script if you want it shorter.

I was able to send email from Outlook via VBA from the REPL. I consider that pretty close to mission accomplished. You can do multi-line entries just like in a script, ending lines with _. Subs and Functions are automatically entered at a special multiline prompt, which all executes at once when you do “End Sub” or “End Function”.

Next I’m going to update my VBScript REPL support for Emacs (done, see EmacsWiki for those changes), and then I might actually get some work done. We’ll see whether it was worth the time invested, for the savings.
Read the rest of this entry »

A REPL for VBScript

Posted in General | 15 Comments »

Being a little sysadminny as I am (that’s “minny,” not “ninny,” thank you very much), I have found an increasing need to use VBScript to automate things. Well, that’s fine, just another scripting language that is too powerful to be a batch file and not powerful enough to do really amazing things, at least not the way it works from the command line. Having access to some of the other VB-whatever objects gives you a little more power, but for that matter it’s still just a really clunky kind of shell.

Except that it isn’t a shell. You can’t just sit and run VBScript commands; you have to write them into a file, then run the file with one of the VBScript interpreters (wscript for GUI, cscript for command line), and then tweak what’s wrong, then run it again. Oh, look, another error message. OK, what does that mean? Make a change, save the file, run it. I totally understand this when you’re dealing with a compiled language, and essentially that is what this claims to be, deep down. But the fact is, it doesn’t have to be. Why not set up what is called a Read-Eval-Print-Loop, or REPL for short, and then you can make changes on the fly?

But as far as I can tell, that’s not built in to VBScript. I haven’t looked at PowerShell yet so maybe that capability is there, but for the moment I need things that will run on all our Windows XP boxes, and even Windows 2000 servers. So, either I continue to face the pain of developing (most people who write sysadmin scripts in VBScript appear to be using Notepad or some nonsense like that, by the way, don’t miss that), or I get a decent development system for VBScript (they exist, I’m told, but not in our corporate budget), or I make a REPL for it.

Yeah, you know what I did, even if you didn’t look at the title. And I’ll bet that you can guess pretty quickly what application is hosting it, too. Starts with an “e”…

Let me point out something else. The old hands with BASIC (remember, VBScript stands for Visual Basic Script) might remember their old machines of the seventies and eighties. Yeah, you remember those, right? They all had REPLs, essentially, although they didn’t always Print what they Evaled automatically. My particular platform was the affectionately-nicknamed Trash-80, the TRS-80 Color Computer. Most of my friends these days were Commodore 64 types back in the day. To enter a program, you started each line with the program number line. You remember these things:

10 PRINT "HELLO, WORLD!"
20 GOTO 10

But, you could do that right at the command line, too. If you wanted to see how PRINT worked, you could just type it right at the prompt:

OK
PRINT "HELLO, WORLD!"
HELLO, WORLD!
OK

Sometimes you need to just sit at a command prompt, and run commands, especially when you’re troubleshooting code. This REPL does that, with VBScript. I’m totally serious. Oh, it’s way more painful; now it looks like:

WScript.Echo "Hello, world!"

…but still it’s basically the same thing. You can lift the VBScript REPL hosting code right out of my Emacs Lisp file and run it on its own, but the power is when you’re developing VBScript in Emacs. You want to try that function? Select the function and hit C-c C-r which means vbs-execute-region, and boom, the function has been defined. Now you can go to your REPL window and try the function out. Or you can just tap out a line to test it real quick in your .vbs file, and hit C-c C-e to execute the line.

Oh, you don’t need to do a lot of PRINT, I mean, WScript.Echo, to see the results, either. You can type something like this, executing it line by line (I cut and pasted this right from my Emacs buffer):

x = "asfd"
y = "fdas"
x & y

And when you execute the last line, you get asfdfdas in the REPL buffer.

Anyway, check it out when you get the chance. It’s already making my job a lot easier.

Life imitates XKCD again

Posted in General | 16 Comments »

From the Emacs 23 pretest (yes, it’s almost here!):

butterfly is an interactive autoloaded Lisp function in `misc.el'.

(butterfly)

Use butterflies to flip the desired bit on the drive platter.
Open hands and let the delicate wings flap once.  The disturbance
ripples outward, changing the flow of the eddy currents in the
upper atmosphere.  These cause momentary pockets of higher-pressure
air to form, which act as lenses that deflect incoming cosmic rays,
focusing them to strike the drive platter and flip the desired bit.
You can type `M-x butterfly C-M-c' to run it.  This is a permuted
variation of `C-x M-c M-butterfly' from url `http://xkcd.com/378/'.

See this XKCD for the background.

I haven’t tried it yet; I’m afraid of what the butterflies will do, until I have time to go look at the elisp file.

Oh, sorry I didn’t mention it, but we’re back online.

The Value of Christ

Posted in Asides | No Comments »

I preached the sermon at GCBC today: The Value of Christ.

Bad Behavior has blocked 391 access attempts in the last 7 days.