Egad, It’s User Hostile

I started to write this post as “User Friendly,” but after reading all sorts of blogs on that subject, I changed it.

Each of these blogs proposed a list of four or five features that describe user-friendly software. Here is my own summary:

  1. Simple
  2. Clean
  3. Intuitive
  4. Reliable

There were many words surrounding these four. In some blogs there appeared to be some meaning associated with those words. In many there was none. All seemed redundant. [Sort of like describing sympathetic as having sympathy—KD]

Simple is perhaps the most difficult. How often have you confronted a simple idea that you wanted to internalize and discovered as you wrestled with it exactly how complicated is was?

Clean follows simple. As I read, I kept finding clean described as simple. Part of me wants to make clean a complement to simple or perhaps combine them. A clean and simple interface. I can’t imagine either clean or simple without the other.

Reliable is a new concept. Does the software always do what it is supposed to do? Is it buggy?

Intuitive is last. Every blogger believed that a user-friendly interface will allow the user to know just by looking at the screen what to do next.

Merriam-Webster defines intuition as (1) “the power or faculty of attaining to direct knowledge or cognition without evident rational thought and inference,” (2) “immediate apprehension1 or cognition” (https://www.merriam-webster.com/dictionary/intuition) I’m the wrong person for this idea. I won’t say that I don’t ever get flashes of insight; I do. I also know that those flashes come only after a struggle of rational thought and inference. Athene has not sprung full-grown and fully armed from my brow.

1 Apprehension here is used in MW’s third sense: perception, comprehension. It has nothing to do with fear.—KD

As I struggled with the concept of user friendliness, I thought I ought to look again at Excel, in some minds the epitome of user friendliness. [What a crock. I could tell stories…—KD] So I rebooted my machine from Debian to Windows (always painful) and started Excel. Once I had a spreadsheet loaded and was contemplating how to test friendliness, it struck me. One of my bloggers had offered up MS Office as an example of user hostility. His issue was the ribbons that Microsoft implemented several years ago and the struggle their user base had adapting.

How often is change used to simulate innovation? How often has Microsoft labeled change as innovation? [Microsoft is a piker compared with the textbook publishers; I could name a few textbooks whose six editions all had the same material. Way to kill the aftermarket, guys.—KD] I went back to Debian.

I remember switching to Quattro Pro from Lotus 1-2-3. At first it was dollars and cents. Quattro Pro was less than one fifth the cost of Lotus 1-2-3. I remembered the joy I felt using Quattro Pro. It had more features, but was it user friendly?

I found an old backup of Quattro Pro [The triumph of the hoarder—KD] and copied it onto my hard drive. This, it turned out, was all the installation I needed. Debian provides DOSBox, a DOS emulator. I used it to start Quattro Pro. I tried building a simple spreadsheet to remind myself how it worked.

Things were turned around. If I wanted to copy, I first selected copy from the menu; typed in the upper left and lower right corners of the source block and typed <ENTER>. I then typed in the upper left corner of the destination and <ENTER> again. I’m used to highlighting the source block with my mouse, right-clicking for a menu, and selecting copy.

While the mouse and the GUI interface changed how software worked, the keyboard procedure was easy to understand and to use. The latest version of Excel has many enhancements, some of which speed up construction of a spreadsheet. It also has a lot more functions on its ribbons—if only I could remember which ribbon and what the pictures on the ribbon actually mean.

How long did it take you to understand what a pivot table is? Can you find it on a ribbon on the first try?

I left out one idea that my research uncovered: the principle of least astonishment. “The behavior [of the software] should not astonish or surprise users.” (https://en.wikipedia.org/wiki/Principle_of_least_astonishment)

In my use of APL I’ve been struck over and over again how easy it is to type in a line of code and have it do exactly what I thought it would. APL uses an old-fashioned teletype-like interface to do powerful things. Because of the simplicity and cleanliness of its design, I can do those powerful things.

Posted in Uncategorized | Comments Off on Egad, It’s User Hostile

Making Music

I am (used to be) a member of the Newtown Recorder Consort. I’ve played with the consort since 1995. In the beginning I was on soprano. At some point I switched to the alto, which I’ve played since Christmas 1959. A couple of years ago we lost our bass player and I switched again.

We stopped practicing in 2020 with the pandemic because wind instruments are especially good at virus transmission. The recorder, like any whistle, is a device to accelerate the performer’s breath to get a sound. With four of us, it meant the air was full of whatever viruses we had. Alas, we haven’t resumed.

The loss has been driving me nuts. For over twenty years and on most Tuesday nights we played. We didn’t limit ourselves to just baroque and classical music. We played folk tunes. We played jazz. I don’t remember playing Beethoven. I do remember Bach, Vivaldi, and Hayden.

We’re silent now, and there seems to be little impetus to start up again.

So I’ve been accompanying myself. I found a program, Audacity. I count out a preceding measure and then start playing. Audacity records it all. It will then play back in my headphones what I’ve recorded while it records what I’m playing now. I have a five-part arrangement of “Simple Gifts.” I recorded myself playing all five parts, and Audacity mixes them all together.

I started on lullabies for my grandson, aged seven months. It made up for the fact that I can’t remember lyrics. I can get the first two lines of the first verse out but then—nothing. This is not old age. It’s years of playing instrumental music. I’ve played “All Through the Night” with my sister since we were kids. I can get through “Sleep, My Child, l Let Peace Attend Thee” and then nothing. Recorder music rarely has the words. So now I play it in four parts through Audacity.

Barbershoppers have a goal called the fifth voice. It occurs when the harmony is so tight the the harmonics of the various voices combine to produce that fifth voice.

It works with recorders too, although I’ve heard it as a third voice playing duets. It doesn’t work with Audacity. I have the feeling that it’s a live performance thing.

You can hear the Daly Recorder Consort at https://dalywebandedit.com/music/AllThroughTheNight.mp3

No reviews, please.

Posted in Uncategorized | Comments Off on Making Music

APL Library

I’ve been staring at a list of workspaces that make up APL Library (https://sourceforge.net/projects/apl-library) for more than a week trying to get inspired. Why did I start this thing in the first place?

I remember discovering GNU APL. I had purchased a copy of STSC APL thirty years ago. I still have it, and with a Linux DOS emulator I can still run it. I spent $500 for a license. At odd moments I’d go to IBM’s website to see what a license costs these days and then move on to something else.

Suddenly, all I had to do was download GNU APL and compile it. I was sold right there.

I found a printout of an editor I wrote in 1983. I tediously typed it into a new GNU APL workspace. I haven’t used it since I got it working. I like Emacs better.

I started work on APL Library almost immediately. My first pass was porting utilities that I had written in the STSC days. I discovered that porting was not exactly what I had to do. Retyping is a better description. As I learned APL2, which has features not present in the old APL, I discovered that many of these utilities weren’t relevant.

∆TAB is a good example. I copied this function out of APL: A Design Handbook for Commercial Systems, by Adrian Smith, Wiley, 1982. Its left argument is the delimiter used in its right argument. It returns a character array in which each item in the right argument is a line in the array.

Now I just enter the list ‘First item’ ‘Second item’ ‘Third item.’ Aren’t nested arrays a wonderful thing? (In APL each character string is an array. In APL2 one can combine several character strings into a nested array.)

I soon discovered that APL2 addressed many of the things I’d struggled with so much I abandoned the whole project.

At the same time there were many things I needed and an equal number of things that were just neat. utf8∆saveVar is a good example. This function writes a new workspace to disk with the code to generate one variable in the current workspace.

I spend way too much time keeping books. At the end of each quarter I do a bank reconciliation. It’s a tedious task, and with luck, having proved my work for that quarter, I’ll never have to look at that work paper again.

I am not a lucky guy, so I save the reconciliation with utf8∆saveVar.

APL Library is a combination of the flashes of insight like utf8∆saveVar and the tedious struggle to set up plebeian things like my date workspace. All in all it serves me well.

Posted in Uncategorized | Comments Off on APL Library

Drucker

I’ve been keeping this quotation in my Ideas folder for quite some time:

1. What is the manager’s job?

It is to direct the resources and the efforts of the business toward opportunities for economically significant results. This sounds trite—and it is. But every analysis of actual allocation of resources and efforts in business that I have ever seen or made showed clearly that the bulk of time, work, attention, and money first goes to problems rather than to opportunities, and, secondly, to areas where even extraordinarily successful performance will have minimal impact on results.

2. What is the major problem?

It is fundamentally the confusion between effectiveness and efficiency that stands between doing the right things and doing things right. There is surely nothing quite so useless as doing with great efficiency what should not be done at all. Yet our tools especially our accounting concepts and detail focus on efficiency. What we need is (1) a way to identify the areas of effectiveness (of possible significant results), and (2) a method for concentrating on them. —Peter S. Drucker, https://hbswk.hbs.edu/archive/peter-drucker-on-managerial-courage

Until today I’d see the file; sometimes I’d even open it and reread it. I’d shake my head and go on to something else.

Why I never read Drucker when I was at Wharton is a mystery. (Probably for the same reason the entire Western world ignored Deming.—KD) Its not just his wellreasoned and wellwritten ideas. Drucker continues to be clear and concise when he lays out the limit of his ideas. In this piece on managerial courage he says, “I know of no [third job of management].”

I was attracted to this piece for an entirely different reason. “You can’t manage what you can’t measure” is attributed to Drucker, if only because of his insistence on setting measurable goals. Accordingly, I was always troubled by his assertion that accountants don’t supply information that management needs. I finally found that perspective in these words.

We’ve all cursed the bean counters when we’re required to choose efficiency at the expense of all other goals. We blame the bean counters because they provide the data to support the emphasis on efficiency. We should blame those who choose the easy decision.

And while we blame the bean counters, we ignore much of the information they actually provide. A complete set of financial statements includes four reports: the balance sheet, the income statement, the cash flow statement, and the statement of changes in equity. That’s more than just a list of expenses.

Is the opportunity under consideration a new product? That opportunity will increase revenues and expenses. It may require investments in new production facilities and markets. The evaluation will require projecting revenues, expenses, and investments. The current revenue, expenses, and investments are set forth in those financial statements.

Is the opportunity a new market? Like a new product, it will require investments, and we must project those new revenues and expenses.

Is the opportunity new technology? Like a new product or new market, it will require investments and a projection of revenue and expense.

The key phrase from Drucker is opportunities for economically significant results.This is not economics; its management, and economic significance is measured by accountants, as are the investments we must make to pursue the opportunity.

Don’t let the pursuit of efficiency cost you good opportunities to make money.

Posted in Uncategorized | Comments Off on Drucker

Web Site Logs

I’ve been working on a new APL workspace to read the access logs for this site. Most web hosts make such a log available. Network Solutions, our host, also provides web pages with fancy graphs displaying the number kind of web pages requested by users.

These logs can be a valuable tool in promoting your web site. Once you decipher the file you can determine how many requests you’ve gotten for each post to your blog; you can determine how many users you have; and you may determine what posts were worth your time and effort.

The new workspace is called Web Logs and you can download it with APL-Library at https://sourceforge.net/projects/apl-library.

It took me a while to get to something useful. I kept finding requests that I didn’t think should be counted to get to basic numbers like total numbers of hits. If you look at the top of this page you’ll see the Daly Web and Edit logo, an image. Each time your browser requests a page, it can potentially request that JPEG file. That second request is in the access file along with the first for the HTML. We only want to count one.

I kept writing predicates, which what the computer scientist call a function that returns true or false. The truth that I was seeking feels more like an opinion than a matter of fact. Computer programs deal only in facts.

On one day last week we posted ‘Clerk of Bucks Quarterly Meeting’. I wrote the post and returned to edit it several times. Then I turned it over to Kate who edited the posts again saving it several times. I could guess that many of the requests logged that day were actually Kate and I preparing the post for publication. How to exclude? I noticed that all the requests came from the same web address. A little looking and I concluded that the address must be our router so I excluded them.

On the same day, about the same time there were requests I just didn’t understand. All from the same web address all calling a program ‘/wordpress1/wp-cron.php’. I did some research on WordPress. Apparently WordPress needs to do housekeeping on occasion. WordPress triggers this housekeeping when actual requests are made. I excluded these based on the web address.

I came up with four rules.

1. An actual web page was returned. Errors occur and there is a code for success.
2. The request is not a search engine spider. This predicate is beyond the scope of the blog. Its probably not right either, but I haven’t caught it in any errors
3. Exclude style sheets and graphics
4. Exclude requests from the Daly’s and those created by WordPress itself.

I get a result which I like to believe. I still think the whole thing is a matter of opinion while all I have is facts. Some of those facts are past opaque. One datum delivered with each entry is the agent. As best that I can tell this is the name of the program that actually made the request. Its how I identify the search engine requests. Looking at the actual data, especially the entries that survive my four tests, there is much more to this field if only obfuscation.

If I look at the fancy colored graphs the Network Solutions provides, I get comparable results to my own algorithms. It settling for that.

Posted in Uncategorized | Comments Off on Web Site Logs

Clerk of Bucks Quarterly Meeting

I agreed to be the clerk of Bucks Quarterly Meeting, an unpaid position. For those of you who come to this site with little or no knowledge of Quakers, this posting explains what clerking a quarterly meeting means.

I’d like to say that Quakers organize themselves into yearly (meets one per year), quarterly (meets four times a year), and monthly (meets monthly for business) meetings. But being Quakers, they are not tied to any dogma, and beliefs vary widely.

The local congregation is usually called a monthly meeting because it meets monthly to address business issues. Generally the local congregation meets weekly on First Day (Sunday in the real world) for worship. Many hold additional meetings for worship. Mine meets Fourth Day (Wednesday) evening for worship.

Some local congregations call themselves churches. These are generally programmed Quakers, those who have clergy. We unprogrammed Quakers have no clergy.

Yearly meetings meet once a year for worship, business, and socializing. The geographic area of a yearly meeting varies, does not follow political boundaries, and in some instances follows practice more than geography.

The quarterly meeting is a collection of local congregations that meet four times a year for worship, business, and socializing. Several quarterly meetings make up a yearly meeting.

Not all yearly meetings have quarters. Some consist of local congregations; others have associations rather than quarters. Some yearly meetings have monthly meetings unaffiliated with any quarter.

All meetings consider their members to be the members of each local congregation.

All this leads to Bucks Quarterly Meeting, Middletown Monthly Meeting, and Philadelphia Yearly Meeting. Philadelphia Yearly Meeting has members in eastern Pennsylvania, southern New Jersey, Delaware, and Maryland’s Eastern Shore. All of the local congregations call themselves a monthly meeting and are members one of thirteen quarterly meetings.

What then is a clerk? Quaker practice includes two important ideas. Independence means there is no one giving orders. While any organization requires officers, Quaker officers may bear witness to the decisions taken but do not make decisions on their own. In strict practice, the clerk doesn’t participate in the discussion or contribute to the sense of the meeting.

Listening for holy spirit is translated into not voting. Decisions are made by the sense of the meeting, that is, we look for general agreement among all Friends before deciding a course of action (or inaction).

The clerk’s job is to produce the agenda of a business meeting, lead the meeting, and then to voice the sense of the meeting on matters under discussion. Usually, this means repeated questioning of what that sense is. Often the sense of the meeting is that we’re not ready to decide yet.

CPAs are attracted to the accounting profession in part to voice their professional opinion—definitely not to continually seek, much less defer to, the opinions of others.

I have my work cut out for me.

Posted in Uncategorized | Comments Off on Clerk of Bucks Quarterly Meeting

Why APL?

Why APL? Because it’s faster, easier to use, and less error-prone than Excel.

Excel is learned by use, by problem solving. There is a manual behind the help entry in the menu. Sometimes it’s helpful. There is a completion engine that makes suggestions from what you’ve typed. And, oh yes, there is the world wide web. Many days of problem solving can be just trying things until something works.

There are, however, many days when Excel just doesn’t. If I have a complicated model to build, I quickly get a spreadsheet of too many pages, too convoluted to be useful. I like to think of this as the one-to-many problem.

The one-to-many problem occurs with two lists when for any entry in list 1 there are many related entries in list 2. An accountant’s trial balance is a good example. A trial balance starts as a list of the accounts together with their balances. The trial part is adding up all those balances to demonstrate that the debits do equal the credits (the accountant’s holy grail; don’t ask). It is followed by adjustments. That is, the accountant concludes that some of these balances have to be adjusted for some reason and uses the trial balance to recalculate. There may be more than one adjustment to some of these accounts.

In Excel this means inserting lines and entering new formula. It is tedious and error prone.

Enter APL. APL is an interpreted computer language. That means you can type in a calculation and APL will execute it and display the result. It is an array-processing language. That means you can perform calculations on an entire array.

Let’s go back to that trial balance. This list of accounts becomes any array of four columns, with a line for each account. The columns are account number, account title, debit, and credit, much like those I put on one page of my Excel spreadsheet. The proof that the debits equal the credits is one line of code.

For years I avoided APL, as the annual license fees were prohibitive. Recently, GNU has released an interpreter that is free and open software. I use it rather than Excel. If you’d like to try it out, download it from https://gnu.org/software/apl. I have an example trial balance at http://www.dalywebandedit.com/workspaces/trial_balance.apl

Instructions for installing and using GNU APL are included in the archive you download. Set up a directory in your home directory, name it work spaces, and place trial_balance.apl in it.

The point of using APL rather than Excel is that APL will do a lot of work fast without proliferating your work spaces. Tools tend to fall along a curve: at one end they are easy to learn but hard to use; at the other end they’re easy to use but hard to learn. Excel and Google Docs are easy to learn but a pain to use. APL and Word are a lot harder to learn but much, much, much easier to use. You’ll be surprised at how fast that steep learning curve pays off.

Posted in Uncategorized | Comments Off on Why APL?

Ground Hog Day 2019

We’re half way through winter. The temperature outside is 24. The weather men are forecasting mid 50s by the middle of next week.

In keeping with our family traditions, I am preparing my new year’s resolutions.

At the top of my list is doing something about FACEBOOK, APPLE and GOOGLE. Today I learned that Apple had shutoff all iPhone developer applications over a privacy breach. Both Facebook and Google were effected. The emergency is over and the coders at all three went back to useful work.

The first question I asked my self was: Why should Apple be able to control some program I use on equipment I own?

My second was: Can Google do this too? (My phone uses the Android operating system.)

Lets not labor these points. Its not an issue of how to control the behavior of these behemoths. The issue is: Why do we let them in the first place? There are other alternatives on the web, we should use them.

So I’m undertaking to find these alternatives and will start with a web site.

Daly Web and Edit has two: www.dalywebandedit.com and DWE-Accounting.com. Both sites try to provide information about our businesses and what you can expect from us. They were not difficult to set up nor maintain. Their cost is modest.

That’s the first issue. Are you willing to spend a small amount of money to free yourself from the tyranny of Apple, Google and Facebook? There are any number of hosting companies and their fees are modest. Many of them have easily learned systems to create and manage your website.

For the non-technical user, this blog is a good alternative. Our host for DalyWebAndEdit.com offers WordPress. Orignally blogging software, wordpress also can act as a content management system. http://wordpress.org has some sample websites to inspire you.

A slightly more difficult solution is the ftp site. On these sites one writes the web pages on one’s computer and transfers them to the hosting site. Many hosts have a web based file management system to compliment using an ftp client on your own computer.

I code the html directly, it isn’t difficult. There are plenty of html editors, including microsoft word, that provide a wysiwyg interface. Your browser will show you the pages on your local disk drive as well as your website.

You could create a page today. When I finally got the pictures off my phone and onto my computer I created this: http://www.dwe-accounting.com/illustrations.html

Posted in Uncategorized | Comments Off on Ground Hog Day 2019

Let’s Ban Whom

I mean, face it. Whom is superfluous to requirements, and no one knows how to use it.

Well, maybe you do, if you were taught rigorous sentence parsing, or diagramming, in elementary school and remember all about it.

Now, I confess to a liking for whom. I do use it. But when I see it in print, it is used incorrectly more often than correctly. Take this example: She directed her complaint to whomever ate the pizza. That’s incorrect. Whomever is not the object of the preposition to; the object is the entire clause whomever ate the pizza, and whomever is the subject of the verb ate. So it should be to whoever ate the pizza.

While we’re on pronoun case (usage in the sentence determines case, that is, whether it’s I or me, she or her, they or them), it shouldn’t be to she who ate the pizza; it should be to her who ate… In this example, she her is the object of the preposition, and who ate the pizza is in apposition (an identifying or explanatory word or phrase) to her.* Again, it’s not her whom, because her is an object and who is a subject. And yes, it looks inconsistent to use her who, but it is correct.

Ogden Nash wrote a delightful little ditty, grammatically correct, about artichokes that starts out,

I seek in anonymity’s cloister

Not him who ate the first raw oyster…

Got it? No? That’s why we should just stick with who.

*A simpler example of an apposition is “the poet Burns…” per Merriam-Webster Unabridged online.

Posted in Uncategorized | Comments Off on Let’s Ban Whom

Excel? Really?

I find myself in marketing mode, and as usual, I keep going to the job boards, even though the likelihood of something from them is the same as winning the lottery.

I keep seeing the same requirement: Excel.

Really? I know of no accountant who cannot use Excel, including the newly minted auditors fresh from the university. My problem, of course, is how to address my use of Excel in the material I upload to various websites.

What I have found is that two skills, basic work paper technique and plain old consistency, are in short supply.

TECHNIQUE

Basic work paper technique is the same regardless of the medium, Excel spreadsheet or ledger paper. Each work paper should have a heading showing the name of the client, a description of the work, the as-of date of the work (that is, when the data were produced), the author, and the preparation date. Too often I find some or all of these items missing.

The work paper should set forth the work one is trying to document. Calculations should include a description of each entry—in the column heading, on the line, or usually both. The work paper should be organized so that the nature of the calculation is clear.

All of this is independent of the medium used to produce the document.

CONSISTENCY

I was hired to clean up an Excel file to project income and cash flow for a clothing company. There were two major issues. The first was why accounts payable changed over the period of the projection. The answer was simple. The model plugged in payables to make the balance sheet balance. I spent way too much time redesigning the model to ensure that it stayed in balance. I then could explain the change in payables, but now no one cared because the model kept income and cash flow in a consistent relationship.

The second issue, available credit, was never addressed. My client issued letters of credit to its suppliers all over the world. Under generally accepted accounting principles (and the model I designed), one recognizes this liability when the goods ship, perhaps months after the letter of credit was issued. The bank recognized this liability when the letters were issued. All during production of the season’s clothes, my client had difficulties arising from never considering—let alone knowing—how much credit he needed.

Projections of this complexity would not be possible but for the computer. However, I can think of other tools that do the job better than Excel. I use Excel in consideration for the accountants who will follow me. (You’re welcome.)

Excel is not the issue. It will do the job. Or I could, given adequate time, do this job by hand and turn out a nice set of work papers. But no matter how the calculations are done, the model must be designed right and the assumptions correct.

And so Mr. Client, yes, I know how to use Excel.

Posted in Uncategorized | Comments Off on Excel? Really?