Is it time to ditch spreadsheets for engineering (education)


I have been teaching an undergraduate engineering course this term, and have beenn very frustrated that the first tool students reach for to solve any quantitative problem is a spreadsheet (generally Excel, but my comments here I think are generic to spreadsheets of all flavors).

I remember when I first used a spreadsheet (Lotus123 anyone!).  It was an eyeopener that one could replace pencil and paper and a calculator to do simple arithmetic manipulations.  After all, it was motivated by business/accounting/financial users where addition, subtraction and perhaps various interest rate calculations were all that were required.

Spreadsheets evolved to where calculations of various levels of sophistication can be performed, and with the ability of some (e.g. using macros) to programming, perhaps highly complex engineering calculations can be done in these environments.  However, just because they can be does not mean that they should be.

Maslow’s Law of the Instrument is quoted as “I suppose it is tempting, if the only tool you have is a hammer, to treat everything as if it were a nail” (  Its use is truly frequent amongst students.  Having learned that they can use spreadsheets for calculations (even if they have also learned how to program) often means that they regard that as their preferred, and even only, tool to do calculations.

I would argue that given the prevalence of numerically sophisticated programming environments, whether your preference is Matlab, Python, Mathematica, or some other platform with high level numerical and graphical capability (for a lot of data analysis, I personally use R), their use is to be preferred. Here are some reasons:

  1. Without a lot of effort in constructing the spreadsheet, commenting, naming variables, etc., it is very difficult to debug or ascertain where a calculation may have gone off the rails.  This becomes very difficult when teaching. A presentation by IBM in the context of statistical analysis notes that 88% of spreadsheets have at least one error.
  2. A corollary to the above is the difficulty in communicating the procedure used to achieve a result either to others, or to some future user — without extensive documentation.
  3. Autocorrect errors in spreadsheets have been documented for data, for example in the field of genetics.
  4. Algorithms are not often fully disclosed or references.  For example, below is the help screen for the Bessel Y function from Office 365.  In contrast, details of the algorithms used for this function are disclosed in Python, R, to a lesser degree in Mathematica,  Unfortunately details for this function’s implementation in Matlab are similarly unclear.
Screen Shot 2022 02 23 at 11 38 19 AM



In contrast, use of a programming language encourages separation of data (e.g. as an input file) from calculations used to process the data.  Algorithms have (generally) been more documented.  The use of actual descriptive variable names (e.g. “volume”  rather that “B2”) makes the logical flow of analysis clearer.  Programming languages also facilitate (and good practice encourages) the use of commenting to walk anyone reviewing the code thru the logical flow.

Engineers still need to pay attention to units.  In spreadsheets this is an issue.  Within programming environments, there are some packages and add-ons that allow consideration and conversion of units — although some of these need further development.

To some degree, I would advocate a “back to the future” approach.  In the days of pencil and paper, laying out the data and a stepwise delineation of computational steps (and assumptions) was an intrinsic skill needed for education of engineering students, and practice.

The availability of spreadsheets, IMHO, has encouraged sloppy thinking in engineering calculations, and has hindered instruction in good practice.

Who is ready to teach an engineering class where spreadsheets for presentation and documentation of calculations are disallowed?  I am seriously thinking that I am.

Bridges and Distillation Columns

Distillation columns are very common in chemical engineering. Bridges are very common in civil engineering.

In chemical engineering, the design of distillation columns have to a very substantial degree been incorporated in software platforms. While students need to understand the key assumptions undergirding the calculations in these software platforms, it has become no longer necessary to do hand calculations. The opportunity for novel research in distillation is low, except as novel materials may require considerations above and beyond those embodied in software platforms.

In civil engineering, design of bridges (except for the very small number of high performance or “signature” bridges) has become routinized with embodiment in codes and standards, and by the use of structural analysis platforms. While students need to understand the key assumptions undergirding the calculations is these codes, standards and software platforms, it has become no longer necessary to do hand calculations. The opportunity for novel research in bridge design is low, except as novel materials and highly unique situations may require considerations above and beyond those embodied in codes, standards and software platforms.

With increasing automation of engineering design, it becomes essential that students be educated for the non-routine problems that will go beyond the capability of extant software, codes and standards. While they must know about the codes, standards and software, this should not be the strong focus of their education. More and more the design and maintenance of the routine, while important (perhaps more so in civil engineering where systems must last a long time) will become the purview of technicians and automation. The role of engineers in these circumstances will be to be alert to, characterize, and modify activity for the unusual.

PS – as an environmental engineer specializing in water, I would say much the same thing for activated sludge, rapid sand water filtration or primary sedimentation. Though there is important work in optimization and in the automated design of resilient systems yet to be done in these contexts.

An Open Reply to “Crossing the Imaginary Line” – Initial Thoughts

My professional friend, David Sedlak has recently published an editorial on “Crossing the Imaginary Line” in Environmental Science & Technology – a highly reputed journal of which he is editor in chief.  My interpretation of the gist of Professor Sedlak’s argument is that when environmental engineering & science researchers, through their scholarship, uncover significant information that merits public attention, they should work through governmental bodies and non-governmental entities such that these latter organizations can take action to effect change.  Doing otherwise, such as going directly to media, according to Sedlak is risky because “an idealistic researcher might just step over the imaginary line that separates the dispassionate researcher from the environmental activist. “  This editorial is provoking discussion in the environmental engineering community, including amongst students as reflected in this student blog.

I would not encourage junior faculty to engage in direct advocacy to the media before establishing a strong record in traditional scholarship, teaching and outreach. However once established, I do not share Professor Sedlak’s view that going to the media is beyond an imaginary line.

Certainly it would be preferable for researchers to use conventional government agencies and non-governmental organizations as “force multipliers” to effect change.  However there can be circumstances where such routes are either non-existent, or perhaps are clogged with inertia or active hostility to action based on well founded data and analyses.  More and more this appears to have been the case in Flint, Michigan

Many of us came into this profession (including myself) because we saw it as a way to have a rewarding career while benefiting people and the environment. There are great examples of environmental engineering and science researchers taking their knowledge from the ivory tower into the public sphere:

Clearly as academics we (are at least perceived by some to) have a privileged role in society.  According to Vesilind, ethical systems derive from moral principles.  The three key moral frameworks involved in engineering, which are combined in what we do, are duty-based (deontological), utilitarian, and virtue-based.  Deontological principles, deriving from Kant, are essentially statements of the golden rule.  Utilitarian principles (the greatest good for the greatest number) underly much of engineering decision making, however we recognize that they must be constrained by the deontological principles. Virtue concepts refer to the traits inherent in persons.

A key source for engineering ethical concepts is the American Society of Civil Engineers, particularly Canon 1, which states:

“Engineers shall hold paramount [emphasis added]the safety, health and welfare of the public and shall strive to comply with the principles of sustainable development in the performance of their professional duties. “

This canon, which should hold equally to the academic as the practicioner tells us that our first duty is to the public.

While some may be focused on developing scholarship in the realm of fundamental research, others in our field are interested in advancing and applying knowledge that maintains and improves public health and the environment. In an ideal world, university research would be immediately used by responsible government entities to effect change.  However all who have been in the field for some time can cite examples where such avenues have been imperfect. We should not shy from the necessity of applying the principle of Canon 1 when it becomes necessary.

As human beings if we witness a mugging on the street, we would perhaps first seek to call the police.  However if they don’t respond in time, we would be morally justified in intervening to stop the crime and perhaps detain the perpetrator.  

When environmental researchers have data to ascertain the likely presence of environmental damage, they should perhaps first seek to involve competent authorities or advocacy organizations.  But it could be perceived as in accordance with the duties inherent in Canon 1 if, when they find such authorities or organizations to be absent or perhaps even ineffectual, they make their findings known to the public directly.  This should not, in my opinion, be regarded as crossing an imaginary line.

Clearly going directly to the public may effect benefits against the environmental damage, but may accrue personal risks to the individuals going this route.  These risks should not include the opprobrium of their professional communities when the message is based on sound factual information and reasoning.  We do not do either our profession or the environment justice by saying that public messaging must wait for community consensus.  There is equal room in the big tent of environmental engineering and science researchers for those who wish to focus on fundamental issues, and for those who are interested in using the results of their knowledge advances to effect improvement to the environment and human health — and NEITHER should be denigrated.


Code of Ethics and Sustainability

The ASCE Code of Ethics, Canon 1 states :

Engineers shall hold paramount the safety, health and welfare of the public and shall strive to comply with the principles of sustainable development in the performance of their professional duties.

Point f under this Canon states:

Engineers should be committed to improving the environment by adherence to the principles of sustainable development so as to enhance the quality of life of the general public.  

A classical definition of “sustainable development” is the Brundtland commission of 1987:

“Development that meets the needs of the present without compromising the ability of future generations to meet their own needs.”

It is an interesting to ask what is the obligation of a civil engineering professional who seeks to uphold Canon 1 and clause f given the definition.  I ask a number of rhetorical questions:

  • Is it unethical to accept a job in which there is an inordinate consumption of non-renewable resources when alternatives (perhaps in the short term more costly) are available?
  • Is there an affirmative ethical obligation to do a life cycle assessment of a project to determine what alternative(s) most closely meets the Brundtland definitions as operationalized? This may require excluding others (even requiring going beyond narrow requirements under particular RFQ’s or RFP’s of clients — making the problem bigger).
  • Do engineers have an affirmative obligation under Canon 1d (“Engineers who have knowledge or reason to believe that another person or firm may be in violation of any of the provisions of Canon 1 shall present such information to the proper authority in writing and shall cooperate with the proper authority in furnishing such further information or assistance as may be required.“) to report others who may not be considering the principles of sustainable development in the performance of their duties?

Engineers need to make problems broad to find good solutions


Sometimes It Pays to Make a Problem Bigger to Solve It

I have become more and more enamored of the quote from Dwight David Eisenhower:

Whenever I run into a problem I can’t solve, I always make it bigger. I can never solve it by trying to make it smaller, but if I make it big enough I can begin to see the outlines of a solution.”

I think this is a very important mindset for engineers. As I approach a new academic year with a number of seniors seeking to do senior design projects, I think this is a most important maxim. Unfortunately, too much engineering practice forestalls the ability to take this type of broader view.

Consider the following three problem statements:

  • A. I need to have a bigger bridge between point A and point B.
  • B. I need to have greater capacity for transport of people and things between point A and point B.
  • C. I need to have a better way for people who live in point A and whose employers are in B to work (and vice versa); I also need better supply routes of material to point A and point B.

Note the difference! Problem statement A admits only one type of solution (a bridge or bridge expansion or renovation). Problem statement B allows for other solutions (rail, an alternative routing, a tunnel, etc.). Problem statement C is the broadest (of the three) and allows for even further options (electronic transmission of work assignments and finished work, 3D printing, alternative suppliers and supply routes).

It may be that by over specifying a problem we do not allow ourselves to see what might be (particularly when multiple objectives are present) the entire robust set of alternative solutions.

Engineers should, in my opinion, be alert to such over specification of a problem and be sure that they express a problem in a broad fashion so as to see a larger set of alternative solutions.