Computer literacy is the most important social problem of today. At least, it’s the most important problem relative to the amount of time we spend talking about it. That makes it the most underrated social problem, and probably the one where we can achieve the most long-term improvements per unit of effort spent, but for some reason we don’t.
As computers have become more and more important, most jobs are now impossible to do without some sort of IT system in there, and that has resulted in people who used to be competent, confident and creative in their jobs throwing their hands in the air, saying “it’s a software problem, what can you do“ as automation increasingly dictates their workflows and makes them unable to even do things they used to be able to accomplish manually.
Somehow, the modern world is full of computers, and they are more important than ever, but as software has become more complicated and more difficult to use, people have become worse at using computers.
Over the last twenty years, we didn’t really get better at computer use. Instead we got used to not being able to understand what’s going on. We are also used to not being in control. Programs update themselves. Web apps change their UI. Web sites change their URL structure and invalidate all your bookmarks. Phones become obsolete in a way that makes it impossible to even run the versions of apps that used to work.
When I talk about complexity, I don’t mean the “internal” complexity of software, as in code complexity, build dependencies, software architecture, and all the tooling to manage this somehow. I mean user-visible complexity: Software is no longer an .exe file on your hard drive, but a self-updating app with a small icon that needs an online account and starts itself when your computer starts. Data is no longer a file on a floppy disk, but a collection of rows in an SQL database somewhere in %APPDATA%, or worse, a collection of rows in an SQL database in the cloud behind a REST API that is actually not REST but just RPC over HTTP.
Computer literacy is a moving target. That makes it difficult to teach. I suspect that the software industry wants it that way.
In their quest to “simplify“ software, vendors turn every application into a black box or a walled garden, denying users ways to re-use knowledge gained from other apps. Can you share the document you are editing with your friends by sharing the URL in your browser? If it was a file, you could save it and share the file with a friend. Online, all bets are off. Maybe the URL thing works, maybe the application has its own internal sharing system that requires your friends to make accounts, so you can “connect“ with them, and only then can you select them from a drop-down menu to share your document with, or maybe the application automatically scrapes your friends from facebook.
When I was in 7th grade, I had “basic computer lessons“, sponsored by Microsoft. We learned how many bits there were in a byte, how to send e-mail with hotmail.com, and what to use Word, Excel, and PowerPoint for. What we did not learn was how to uninstall software, how to burn a CD, or how to send e-mail attachments. The “child-proofing” software installed on the school computers prevented us from accessing the file system.
Important tasks such as
connecting to a wireless network
printing on a shared network printer
getting your PowerPoint to display on an external screen or projector
verifying that an e-mail is indeed coming from your friend or your bank
were left out.
(Aside: Why don’t banks sign their mail with PGP?)
In the mean time, what has gotten worse was not education. It was software itself. Software has gotten more and more hostile to computer literacy. Some software is actively hostile to deep understanding now, and increasingly it’s also becoming hostile to shallow understanding and muscle memory. Good luck with your new iPad air, we have moved all the buttons around, and have hidden basic functionality behind gestures. Tapping this does nothing, maybe try swiping it, pinching it, shaking it, with three fingers, swipe from the edge of the screen, whoops you switched apps now. It’s no longer possible for an end user to understand software. It’s no longer possible for third parties to even write “the missing handbook” of Slack or Google Docs or Spotify or Dropbox or indeed the iPad. It will be obsolete before it hits the shelves.
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.
Reimagining Infrastructure Operations Priorities for 2025.
Sanjay Kumar Mohindroo
Sanjay Kumar Mohindroo. skm.stayingalive.in
Transforming IT from Reactive Fixers to Strategic Innovators
Discover a fresh take on Infrastructure Operations Priorities for 2025—where IT shifts from reactive tasks to proactive innovation.
A New Dawn in IT Operations
Setting the Stage for a Bold Future
The world of IT is changing. Today, infrastructure and operations…
Do you have a business continuation plan that deals with the current COVID-19 pandemic facing us today? Hogan can help. Contact us today at 219-921-1141.
Enhancing end-user experience for a California State Government Agency
Anunta’s Onboarding Services enables a California State Government Agency to integrate applications with its Cloud implementation and significantly improve end-user experience.
End-client execution the executives are exceptionally basic to making VDI an effective activity. From an end-client point of view, the client is searching for most extreme proficiency and isn't worried about HOW that is accomplished or WHAT innovation is utilized.
End-client execution the executives is exceptionally basic to making VDI an effective activity. From an end-client point of view, the client is searching for most extreme proficiency and isn't worried about HOW that is accomplished or WHAT innovation is utilized. Much the same as how a cell phone client does not think about whether his telephone utilizes GSM or CDMA innovation as long as it comprehends its purpose.
As often as possible, business heads and groups oppose VDI dependent on the way that the well-known box close them has been removed. We saw a great deal of obstruction when we took off VDI couple of years back, however we discovered an answer for demonstrate and measure its execution. In the end, we made these execution measurements accessible for all to see with the goal that new clients who challenge VDI have solid information to allude to.
The methodology we have adopted is a blend of innovation and procedures. Our monitoring structure began from the end-user application measurements and climbed the layer to the genuine VDI in the server center (in opposition to the customary methodology of simply seeing execution counters). With this methodology we had the capacity to effectively relate the application execution toward the end-client level to the needy parameters of focal infrastructure. We made business views which acquired all the dependent architecture together yet at the same time confronted a test of mimicking genuine end-user computing.
We at that point created application test systems which could plan the application access at specific times of great importance and feed the execution numbers (identical to use case situations and key strokes of the clients). This was again interlinked to the different system edges like Network, WAN, SAN IO, Virtual stage and wound up with the last VDI session execution following. Any deviation in the edge would feature the conceivable causes which are being observed day in and day out by the NOC team. With this we have possessed the capacity to reliably accomplish client fulfillment and in addition begin conveying application execution assurances to our clients - and free business heads and end-users of their VDI-related feelings of dread all the while.
Visit us to find out about our most recent End-User Computing contributions.