Monthly Archives: June 2012

SPITBOL/Linux V3.8.1 Now Available

I promised the first release of SPITBOL for Linux by the end of the month.

Here you go:

SPITBOL/Linux git


You can follow the project as @spitbol at twitter.


The SNOBOL Chance in Hell Software License

A few days ago, while working on SPITBOL, I looked up Wikipedia’s SNOBOL entry. While perusing it I came across a section about the history of the name SNOBOL that was new to me. It linked to a blog post by Dave Farber, one of the creators of the language WORTH READING Wikipedia entry on SNOBOL — the TRUE story NOT Wikipedias. I found it immensely amusing.

By the way, when I mentioned this to my friend Peter Capek, he said the story was new to him also, and that he knows Dave Farber. (No surprise there — he knows EVERYBODY.)

I smiled, and moved on. But I’ve just found a way to make use of that charming story, so here we go…

As part of my work on SPITBOL I’m putting together a “library” of documents and example programs: github daveshields/spitbol-library.git.

I’ve started with files obtained from Mark Emmers exellent SNOBOL site, via FTP.

All of these files have been available from the site via anonymous (available to anyone) FTP for at least a decade, some for more than two decades.

Mark either wrote the sample programs or obtained permission to distribute them, but as yet there is no license associated with them.

I plan to include the appropriate license language — most likely two-clause BSD — as time permits, but I see no reason not to put them out now.

However, I know folks are more comfortable with some license language, so until further notice here is license in effect for the examples:

You may copy, distribute, or alter this code as you see fit. It has been freely available for over a decade.

Thus, we are confident there is a SNOBOL Chance in Hell that trouble will come your way by doing so.

Would OSI approve this? I’d like to think so, but I won’t put them to the test.

Expert Advice on Choosing a Content Management System (CMS)

Yesterday I sent the following note to about 40 of my 150+ connections on LinkedIn. These were the folks with the most programming background. Some are now very senior executives in the IT industry.


I’ve been asked by someone close to me to help put together a website start a new business.

Part of that business involves setting up events, entering them on a calendar, allowing folks to sign up, filing after-action reports by those who attended, and so forth.

Routine stuff. Yes, to you likely, but the the person I’m helping is *very* important me, hence this request for assistance.

I’m thinking of using Drupal 7. I’ve tried DrupalGardens. I have some knowledge of Drupal, but not very detailed.

A crucial part of this business is the calendar/scheduling part. It must be rock-solid and accessible via mobile.

Would Drupal 7 be your preferred choice for a CMS?

If not, what would you recommend?

Reply just me if you can help, or feel free to call any day except Saturday, from 9AM to 10PM.

I heard back from several people, most from my IBM days. Here is what they said.

From a former IBM Research Staff Member (that means a Ph.D.) who left IBM ten years ago to start a company, and is still an entrepreneur:

We used to use Joomla but I have recently become a strong fan of WordPress and am finding it quite elegant and easy with which to work.

I’m using it on my new site and am very pleased.

Here’s the reference to their calendar plugin: WordPress events calendar plugin

From a former Courant colleague who helped put J.P. Morgan on the internet back in the 80’s and is now an iOS developer:

I would second using WordPress unless you have a lot of e-commerce related stuff. Drupal is very popular but its code base is pretty chaotic. Also, you have to very carefully choose your plugins/modules, there are a lot of potential conflicts in and among Drupal modules. But at the end of the day, Drupal is widely used, it has a very deep community whose primary users are people with ecommerce sites of some kind, as opposed to WordPress who primary function is as a blog.

For all of these things, it always comes own to how much time you are willing to invest in tweaking someone else’s code (true for Joomla, WordPress as well as Drupal) versus writing the thing that’s exactly what you need from scratch…

From a programmer at IBM’s LTC (Linux Technology Center) who has a great track record of building communities and their associated web sites; for example, a thriving Linux User Group:

I’ve been using Drupal 6, moving my first site — a Linux User Group — to 7 this week. I find the calendaring is pretty good, just realize you’ll need to get to know the code a little to make it do exactly what you want.

I remain with Drupal as my CMS (though not Blog) of choice. We also have a local Drupal Users Group.

From a former IBMer now a senior person at Acquia, the leading company in supporting and promoting the use of Drupal:

Hi Dave, let me give you a more accurate lay of the open source CMS market.

Choose WordPress if:

  1. Content editing and management and administering is your primary activity including site development.
  2. Choose WordPress if you will be doing the site development yourself and your technical skills are limited to downloading plugins through the UI and doing site building through configuration only.
  3. You are prepared to deal with upgrades as frequently as every six months and plug in quality can potentially be hazardous.
  4. Your content will mostly be listed sequentially and you don’t have a lot of needs for rich meta-data and relationships in the presentation of your content.

Choose Joomla if:

  1. You have on a few content editors and site administrators and their differentiation in permissions in the site is small.
  2. When you want to add functionality by purchasing a plug-in for $50-$150 to get complete functionality e.g. buying a full store front.
  3. UX of the site building administration is paramount.

Choose Drupal if:

  1. You want a CMS that’s going to allow you or your developers to build custom applications key to your business
  2. You don’t want a CMS that’s going to introduce a cliff of limitations suddenly when your business needs to add more features in custom way that’s critical
  3. You or your technical consultant thinks powerful and flexible is exciting and you or your developer has got time or interest in becoming a site developer.
  4. You are interested in leveraging a custom application like the conference organizing distribution of Drupal ( which has tons of event management features and your business can really grow off that platform.

From a former colleague at IBM Research. She’s a graduate of MIT:

I’ve been using Drupal 7 for the better part of a year for my pet project. In general, I am very happy with it, though there have been a few glitches over the months.

  1. Drupal 7 is a known database hog. I had to upgrade my web hosting service to handle database accesses even when very few folks were hitting at it.
  2. The out-of-the-box leaves much to be desired. Be prepared to add modules galore. For example, dates and urls are module add-ons
  3. It is based on PHP, a language that leaves me luke warm. It’s good in that I’m finally forced to look into the Web stack, but the language is all over the place.
  4. I’ve had, on average, to do security upgrades every 2-3 months (roughly).
  5. It is very flexible, and hence can be slow.
  6. Modules often need to be patched (about 1 in 5 or so in my experience), though the community tends to make this easy and the modules really help get function going quickly.

However, I would not have gotten everything done without such a framework, and the community is really active and supportive. Short of my core function, everything I’ve wanted to do, I’ve found that someone else had already done so I could just leverage their work. The model they use for adding function is fairly robust (though can be slow as mentioned above), and I think is easy to comprehend – once you get used to it. They are now working on Drupal 8, which will hopefully clean up some code, though I’ve not looked into it yet.

In short, I’m fairly happy with what I’ve managed to accomplish with Drupal 7.

There is another CMS/Portal, one based on Java/Tomcat, called Liferay. I used it (lightly) about 2 years ago and it could be an alternative if you prefer to stay away from PHP.

From a former IBMer who has held senior executive positions in IBM, Google, and Microsoft, in the BRIC country where she now resides:

I am a fan of Drupal. What people here say is true, that it takes customization of modules to get it right, but it is powerful and has
authorization and access-management/security capabilities that WordPress does not. Once I got my head around Drupal, I can bring up a new site in a weekend.

Don’t rule out Drupal 6, which is not as bad of a database hog, is not as slow, and works even with some cheaper web hosters. I run 3 sites on Drupal 6.

From a former IBMer who played a key role in IBM’s involvement with Apache over a decade ago, and has since held several senior executive positions:

My thoughts go along with (the Acquia person’s) summary. But if a conference is what you are trying to organize, use open source conferencing software
like Described

Or I might use Ruby on Rails, and bolt on a calendar app. See Five Best Open Source Calendar Servers For Linux.

Drupal is very powerful, but you have to wrap your head around nodes.

My experience is once you are over the learning hump, you can really customize it. This is a tool for rapid site development.

Don t use Liferay for its calendaring. It is my companies Intranet and is good for that, but you would have to either build you own calendaring, or fix theirs. (it is java, so you could easily do that).

Not knowing what you are designing, Google for an open source package that does what you want and modify. That usually works for me. Surprising what you will find.

Just after sending the note out I realized I had left unsaid an additional requirement: since there will be lots of user-generated content, the CMS must support roles and privileges. I didn’t send a followup to point this out, as that would have favored Drupal.

I expected mention of WordPress. I’ve been a big fan of WP for years. That’s why I use it to write this blog.

I expected more mention of frameworks such as Zend, Zope, Joomla, Rail, and such.

The net? The clear winner is Drupal.

I tried Drupal via DrupalGardens in March of last year. I only played with the free version, sort of losing interest when I read all the blog entries and noted the absence of Calendar support.

That was no surprise. The change from Drupal 6 to Drupal 7 was not just another version upgrade. It is a major change that requires extensive recoding.

Happily, things are now much better. I brought a month-by-month “professional” account from DrupalGardens last night, and in just an hour trying things out I concluded that the situation is *much* improved.

What are we going to do?

We’ll use Acquia Drupal, so we make use of the plugins we need. We will let Acquia do the hosting.

If any code needs to be written, then we’ll get in touch with our friend in the BRIC country, and outsource development to someone she trusts.

If this results in any new code of general interest, then we’ll contribute it back to the Drupal community.

SPITBOL Status and Plans

Yesterday I sent the following note to many of my colleagues at LinkedIn, to let them know of My Software Sabattical and my plans now that is over.

Dear Colleague,

As you may — or more likely may not — know, I haven’t had much of web presence for almost three years.

The sabbatical is now over, and I’m back coding, so here’s a short note about recent work.

I am now the maintainer of SPITBOL. Mark Emmer kept the project going for over 25 years. He’ll still be involved, but not as the maintainer.

SPITBOL/Linux will be posted shortly. Mark did most of it: I just tied up some loose ends. This will be the first release of SPITBOL for Linux, and the first SPITBOL update/release of any kind, in over a decade.

The code will soon appear at Github daveshields/spitbol-linux, hopefully before July 1. I’ve also created a twitter account, so you can follow @spitbol for news and such. I’ll be using twitter instead of the usual mail list(s).

The first release is for Linux with 32 bit words, 8 bit characters. I’ve been using Ubuntu 12.04. The port for other Unices should be straightforward.

My current plans include the following:

  • Convert from gas to nasm as assembler for 386
  • Clean up translator from Minimal to assembler
  • Port to iOS
  • Provide 64 bit word, 8 bit character, versions
  • Provide 16 bit character versions, i.e., support Unicode
  • Consider port to Arm
  • Investigate use of lua as basis for development of apps using Spitbol
    for both iPhone and Android

In case you’re not familiar with Macro SPITBOL, it is one of the most amazing programs I have ever seen, a true software tour-de-force.

The work of Professor Robert B. K. Dewar of New York University and the late ProfessorAnthony A. P. “Tony” McCann of the University of Leeds, Macro SPITBOL is written in the Minimal assembly language, an assembly language for an abstract machine carefully defined to allow efficient implementations on actual hardware.

By efficient I mean “very, very efficient.” You have to use it to appreciate its speed.

SPITBOL is a minor extension of SNOBOL4. With the release of SPITBOL/Linux I hope to spur renewed interest in one of the original — and still one of the most original in its power and elegance — programming languages.

SNOBOL4 has maintained its charm and power for over fifty years now. It would be good for more folks to know about it and use it.

Apart from its charm and power, working with Macro SPITBOL — either as implementor, user, or both — provides more fun than any other programming language/project I can think of.

Who most profits by the Supreme Court Decision on Health Care?

Broccoli farmers.

As it happens, my wife and I spent the morning in the Bronx Botanical Garden, to see what was new at the Monet Garden exhibit. This exhibit runs through the fall, and they change the plants every two months or so to follow the seasons.

We then went to lunch at Dominick’s on Arthur Avenue — our favorite Italian restaurant for several decades. I had cold antipasto and a cup of tomato sauce to sop up with the bread. My wife had grilled red snapper with broccoli. (emphasis added)

Earlier this evening we watched the coverage of today’s Supreme Court Decision, which supported the bill, save one part of the Medicaid enhancement.

After watching this coverage, which was especially good on NBC Nightly News, we watched some discussion on the PBS News Hour.

There was some discussion about who won and who lost, with focus on the presidential race.

As for me, there’s no doubt which group was most pleased by the decision, and stands to benefit to boot.

That would be the folks who raise broccoli.

Tomorrow little mention will be made of the trusty green vegetable save as part of the now discredited argument made against the law by the very people — conservatives — who came up with idea of the mandate in the first place.

Every broccoli farmer tonight will go to bed happily, thinking of the millions of comments — largely derogatory — of their fair vegetable that would have been said or written had the decision gone the other way.

Postscript: Friday, June 23rd

Today’s New York Times Letters To The Editor contains the following missive from Mark R Godburn:

To the Editor:

I’ve been following all the health care reporting and punditry very closely for the past few years, and now, in light of the Supreme Court’s decision, there’s just one thing I don’t understand. How much broccoli do I have to buy to be in compliance, and what’s the penalty — I mean the tax — if I don’t?


North Canaan, Conn., June 28, 2012

To which I respond:

Dear Mr. Godburn,

You may buy and eat as much broccoli as you wish, even to the point of heartburn.

Today’s edition also has a story Roberts Shows Deft Hand as Swing Vote on Health Care by Adam Liptak. It says in part

Although the decision did not turn on it, the back-and-forth between Justice Ginsburg’s opinion for the four liberals and the joint opinion by the four conservatives — Justice Kennedy and Justices Antonin Scalia, Clarence Thomas and Samuel A. Alito Jr. — revisited the by-now-familiar arguments. Broccoli made a dozen appearances.

“Although an individual might buy a car or a crown of broccoli one day, there is no certainty she will ever do so,” Justice Ginsburg wrote. “And if she eventually wants a car or has a craving for broccoli, she will be obliged to pay at the counter before receiving the vehicle or nourishment. She will get no free ride or food, at the expense of another consumer forced to pay an inflated price.”

The conservative dissenters responded that “one day the failure of some of the public to purchase American cars may endanger the existence of domestic automobile manufacturers; or the failure of some to eat broccoli may be found to deprive them of a newly discovered cancer-fighting chemical which only that food contains, producing health care costs that are a burden on the rest of us.”

Alas poor broccoli. The Court doth protest too much.

Fear not, broccoli fans. Another story in today’s Times brings the welcome news that world-wide media attention will soon focus to a new vegetable.

Here’s to you poor tomato, Flavor Is Price of Scarlet Hue of Tomatoes, Study Finds. You’re up next, and you are already red in the face.

Why am I not surprised at this pending brouhaha? After all, The Supreme Court has been involved with tomato issues for over a century: Nix v. Hedden.

Yes, trouble is Hedden our way. But we’ve seen this before: SCOTUS nixes Nix’s picks.

Spitbol for Linux Coming to Github

As I noted in my previous post, I took a ‘software sabbatical,’ that is an extended vacation from serious programming, starting in September 2009.

The sabbatical is over, and I’m back coding away.

My first goal is to finish the port of Macro Spitbol to Linux. Mark Emmer sent me a tarball with his latest work in early September, 2009.

It turns out he had basically got the job done. I found a few errors, mostly due to the need to download some appropriate libraries to enable gcc and gas to compile the generated code correctly.

Further work on Spitbol for Linux will continue at Github daveshields/spitbol-linux.

I am able to buid a 32-bit spitbol executable that can translate the Minimal source to assembler.

However, I still need to add the GPL license info to the source files, and do some tidying up.

I hope to post code within a week or so, and will let you know via this blog when it is available.


Software Sabbatical: September 2009 to June 2012

I parted ways from IBM as a full-time employee at the end of February, 2009. I was brought back a few weeks later for a part-time gig working on a compiler design. That lasted until early September 2009.

I then decided to take a break from programming. Having put the bread on the table working as a programmer and research scientist for over forty years, I stepped back from my terminal to see what life was like on the other side.

Life was good — it still is.

I felt no urge to do any serious coding until recently, when one of my children suggested an interesting software challenge. Since attacking it will mainly involve lots of string processing, and to help bring my programming skills, such as they are, back up to snuff, I have decided to begin by resuming work on the port of Macro Spitbol to Linux.


I’ll write about that effort in the next post.


In any event, hope to see you soon on github.



  • Pages

  • June 2012
    M T W T F S S
    « Aug   Jul »
  • RSS The Wayward Word Press

  • Recent Comments

    dave porter on On being the maintainer, sole…
    daveshields on On being the maintainer, sole…
    Paul Tallett on On being the maintainer, sole…
    mrrdev on On being the maintainer, sole…
    KT on On being the maintainer, sole…
  • Archives

  • Blog Stats

  • Top Posts

  • Top Rated

  • Recent Posts

  • Archives

  • Top Rated