Excel, Word, Access, Outlook
Previously on computer literacy: A Test For Computer Literacy
If you’re a computer programmer, you sometimes hear other programmers complain about Excel, because it mixes data and code, or about Word, because it mixes text and formatting, and nobody ever uses Word and Excel properly.
If you’re a computer programmer, you frequently hear UX experts praise the way Excel allows non-programmers to write whole applications without help from the IT department. Excel is a great tool for normal people and power users, I often hear.
I have never seen anybody who wasn’t already versed in a real programming language write a complex application in an Excel spreadsheet. I have never seen anybody who was not a programmer or trained in Excel fill in a spreadsheet and send it back correctly.
Computer programmers complain about the inaccessibility of Excel, the lack of discoverability, the mixing of code and data in documents that makes versioning applications a proper nightmare, the influence of the cell structure on code structure, and the destructive automatic casting of cell data into datatypes.
UX experts praise Excel for giving power to non-programmers, but I never met a non-programmer who used Excel “properly”, never mind developed an application in it. I met non-programmers who used SPSS, Mathematica, or Matlab properly a handful of times, but even these people are getting rarer and rarer in the age of Julia, NumPy, SymPy, Octave, and R. Myself, I have actually had to learn how to use Excel in school, in seventh grade. I suspect that half of the “basic computer usage” curriculum was the result of a lobbying campaign by Microsoft’s German branch, because we had to learn about certain features in Word, Excel, and PowerPoint on Windows 95, and non-Microsoft applications were conspicuously absent.
Visual Basic and VBS seemed like a natural choice to give power to end users in the 90s. People who had already used a home computer during the 8-bit/16-bit era (or even an IBM-compatible PC) were familiar with BASIC because that was how end-users were originally supposed to interact with their computers. BASIC was for end users, and machine code/compiled languages were for “real programmers” - BASIC was documented in the manual that came with your home computer, machine code was documented in MOS data sheets. From today’s point of view, programming in BASIC is real programming. Calling Visual Basic or .Net scripting in Excel “not programming“ misrepresents what modern programmers do, and what GUI users have come to expect after the year 2000.
Excel is not very intuitive or beginner-friendly. The “basic computer usage” curriculum was scrapped shortly after I took it, so I had many opportunities to observe people who were two years younger than me try to use Excel by experimenting with the GUI alone.
The same goes fro Microsoft Word. A friend of mine insists that nobody ever uses Word properly, because Word can do ligatures and good typesetting now, as well as footnotes, chapters, outline note taking, and so on. You just need to configure it right. If people used Word properly, they wouldn’t need LaTeX or Markdown. That friend is already a programmer. All the people I know who use Word use WYSIWYG text styling, fonts, alignment, tables, that sort of thing. In order to use Word “properly“, you’d have to use footnotes, chapter marks, and style sheets. The most “power user” thing I have ever seen an end user do was when my father bought a CD in 1995 with 300 Word templates for all sorts of occasions - birthday party invitation, employee of the month certificate, marathon completion certificate, time table, cooking recipe, invoice, cover letter - to fill in and print out.
Unlike Excel, nobody even claims that non-programmer end users do great things in Word. Word is almost never the right program when you have email, calendars, wikis, to-do lists/Kanban/note taking, DTP, vector graphics, mind mapping/outline editors, programmer’s plain text editors, dedicated novelist/screenwriting software, and typesetting/document preparation systems like LaTeX. Nobody disputes that plain text, a wiki, or a virtual Kanban board is often preferable to a .doc or .docx file in a shared folder. Word is still ubiquitous, but so are browsers.
Word is not seen as a liberating tool that enables end-user computing, but as a program you need to have but rarely use, except when you write a letter you have to print out, or when you need to collaborate with people who insist on e-mailing documents back and forth.
I never met an end user who actually liked Outlook enough to use it for personal correspondence. It was always mandated by an institution or an employer, maintained by an IT department, and they either provided training or assumed you already had had training. Outlook has all these features, but neither IT departments nor end users seemed to like them. Outlook is top-down mandated legibility and uniformity.
Lastly, there is Microsoft Access. Sometimes people confused Excel and Access because both have tables, so at some point Microsoft caved in and made Excel understand SQL queries, but Excel is still not a database. Access is a database product, designed to compete with products like dBase, Cornerstone, and FileMaker. It has an integrated editor for the database schema and a GUI builder to create forms and reports. It is not a networked database, but it can be used to run SQL queries on a local database, and multiple users can open the same database file if it is on a shared SMB folder. It is not something you can pick up on one afternoon to code your company’s billing and invoicing system. You could probably use it to catalogue your Funko-Pop collection, or to keep track of the inventory, lending and book returns of a municipal library, as long as the database is only kept on one computer. As soon as you want to manage a mobile library or multiple branches, you would have to ditch Access for a real SQL RDBMS.
Microsoft Access was marketed as a tool for end-user computing, but nobody really believed it. To me, Access was SQL with training wheels in computer science class, before we graduated to MySQL and then later to Postgres and DB2. UX experts never tout Access as a big success story in end-user computing - yet they do so for Excel.
The narrative around Excel is quite different from the narrative around Yahoo Pipes, IFTTT, AppleScript, HyperCard, Processing, or LabView. The narrative goes like this: “Excel empowers users in big, bureaucratic organisations, and allows them to write limited applications to solve business problems, and share them with co-workers.”
Excel is not a good tool for finance, simulations, genetics, or psychology research, but it is most likely installed on every PC in your organisation already. You’re not allowed to share .exe files, but you are allowed to share spreadsheets. Excel is an exchange format for applications. Excel files are not centrally controlled, like Outlook servers or ERP systems, and they are not legible to management. Excel is ubiquitous. Excel is a ubiquitous runtime and development environment that allows end-users to create small applications to perform simple calculations for their jobs.
Excel is a tool for office workers to write applications to calculate things, but not without programming, but without involving the IT department. The IT department would like all forms to be running on some central platform, all data to be in the data warehouse/OLAP platform/ERP system - not because they want to make the data legible and accessible, but because they want to minimise the number of business-critical machines and points of failure, because important applications should either run on servers in a server rack, or be distributed to workstations by IT.
Management wants all knowledge to be formalised so the next guy can pick up where you left off when you quit. For this reason, wikis, slack, tickets and kanban boards are preferable to Word documents in shared folders. The IT department calls end-user computing “rogue servers“ or “shadow IT“. They want all IT to have version control, unit tests, backups, monitoring, and a handbook. Accounting/controlling thinks end-user computing is a compliance nightmare. They want all software to be documented, secured, and budgeted for. Upper management wants all IT to be run by the IT department, and all information integrated into their reporting solution that generates these colourful graphs. Middle management wants their people to get some work done.
Somebody somewhere in the C-suite is always viewing IT as a cost centre, trying to fire IT people and to scale down the server room. This looks great on paper, because the savings in servers, admins, and tech support are externalised to other departments in the form of increased paperwork, time wasted on help hotlines, and
Excel is dominating end-user computing because of social reasons and workplace politics. Excel is not dominating end-user computing because it is actually easy to pick up for end-users.
Excel is dominating end-user computing neither because it is actually easy to pick up for non-programmers nor easy to use for end-users.
This is rather obvious to all the people who teach human-computer interaction at universities, to the people who write books about usability, and the people who work in IT departments. Maybe it is not quite as obvious to people who use Excel. Excel is not easy to use. It’s not obvious when you read a book on human-computer interaction (HCI), industrial design, or user experience (UX). Excel is always used as the go-to example of end-user computing, an example of a tool that “empowers users”. If you read between the lines, you know that the experts know that Excel is not actually a good role model you should try to emulate.
Excel is often called a “no code“ tool to make “small applications“, but that is also not true. “No Code” tools usually require users to write code, but they use point-and-click, drag-and-drop, natural language programming, or connecting boxes by drawing lines to avoid the syntax of programming languages. Excel avoids complex syntax by breaking everything up into small cells. Excel avoids iteration or recursion by letting users copy-paste formulas into cells and filling formulas in adjacent cells automatically. Excel does not have a debugger, but shows you intermediate results by showing the numbers/values in the cells by default, and the code in the cells only if you click.
All this makes Excel more like GameMaker or ClickTeam Fusion than like Twine. Excel is a tool that doesn’t scare users away with text editors, but that’s not why people use it. It that were the reason, we would be writing business tools and productivity software in GameMaker.
The next time you read or hear about the amazing usability of Excel, take it with a grain of salt! It’s just barely usable enough.











