Categories

## Mathematicians write like novelists

As I attempt to teach myself something about stochastic calculus, I have been reading a great many articles, and several textbooks, on the subject. It has left me with the distinct notion that mathematicians hate to spill the plot too early in the story. Each proof builds upon clues that have been scattered throughout the text, just as a writer might have the butler passing down a hallway in the second chapter for no apparent reason. Lemmas and sub-theorems that, to all outward appearances, are wholly unrelated to the general theme begin to appear. Then slowly, sometimes painfully, these logical manipulations are pulled together as the proof draws to a conclusion. But even so, the mathematician is reluctant to come out and say, “the butler did it.” Rather, phrases like “it is clearly obvious,” and “it is easily proven” are used to inform the reader that the point of mathematics is the mental challenge of figuring out how the pieces fit together.

There is no enjoyment in reading a novel that lays out the entire plot in the first paragraph. So a plot is simply a literary construct used by authors to evoke emotion, just as sculptors do with statues, and dancers with physical movement. Likewise, spelling out every mathematical truism and trick would make a proof lengthy and boring, with no pleasure left to be savored, right? So I think that mathematicians must write proofs (whether intentionally or not) in a manner intended to allow other mathematicians to sense the thrill of unraveling a logistic knot.

Sometimes I enjoy this artistry. Today I do not. 🙁

Categories

## Secret Tools of the Engineering Grad Student, Part 2: LaTeX

If you are going to write a dissertation (or any other paper for that matter) with significant mathematical content, you will discover that the typesetting of your equations proceeds much better if you use LaTeX. While there is a steep learning curve, you will save a good bit of time down the road if you get comfortable with LaTeX (pronounced “Lay-tech”) early on. Here’s an equation for the Fourier transform rendered with this typesetting system:

F(f) = \int_{-\infty}^\infty f(t) e^{-j2\pi ft} dt

This equation is created with the following code:

 F(f) = \int_{-\infty}^\infty f(t) e^{-j2\pi ft} dt

As you can probably figure out, mathematical symbols are created in LaTeX with text keywords preceded by a backslash. In addition to the improved typesetting, this means that you can quickly update many equations at once by simply searching for, and replacing, text strings. Thus, if you wanted to convert the above equation to be a function of g, instead of f, a simple text replacement would update all the equations in one fell swoop. Contrast this to the equation-by-equation corrections required if one is using MathType to typeset mathematics inside a Microsoft Word document.

While there are many benefits to using LaTeX, it does take a little getting used to. In particular, you may find yourself trying to control a lot of factors (margins, paragraph spacing, etc.) that are easy to modify in a word processor, but difficult to adjust in LaTeX. In the beginning, don’t worry about trying to control the output; focus instead on getting your equations to typeset correctly. Also, expect to spend some time searching for documentation. While most everything you will want to do has been done already, it sometimes takes a while to hunt down the correct command. (Hint: If you absolutely must play with the margins, use the geometry package.)

Significant time savings occur with LaTeX because templates for most publications types have already been defined. Thus, if I want to publish an IEEE paper, I simply drop my document into an IEEE template. Same paper in ASME format? Simply change to the appropriate ASME template. Need advanced math formatting commands? Use the AMS package. While similar templates are typically available for Microsoft Word as well, I often find myself hunting from paragraph to paragraph in Word, trying to discover why the formating has gone askew midway through the document. This is rarely a problem in LaTeX. And to produce my dissertation? Simply use the appropriate thesis style (your university may have its own format).

On my XP system (yes, I’m a dinosaur), I’ve had good luck using MikTex as my LaTeX implementation. One of the nicest features about the MikTex software (other than it being free) is that, when it encounters a package name it does not have, it goes out on the net and attempts to find the package for you. This has frequently saved me from having to install such code manually. While any text editor will work to generate LaTeX documents, I’ve always used WinEdt. Although WinEdt is not free, I’ve not regretted the \$30 it cost me for a student license, as it integrates quite nicely with MikTeX.

If you are interested in learning more about using LaTeX, there is some decent documentation on getting started available from the LaTeX project site, as well as the WikiBooks site. When you see references to “LaTeX2e,” this simply indicates the current version of the LaTeX program. Similarly, “LaTeX3” refers to the next generation of the LaTeX software. Learning LaTex is initially frustrating, but you’re an engineering grad student. You’re not the type to choose the easy path. So download the software and give LaTeX a try. I suggest starting with a study sheet of equations for an upcoming exam. You’ll learn how to construct equations without needing to worry about paragraph formatting.

[Hint: Find an equation you like in Wikipedia? Right click on the equation and access the image properties. The associated text will be the LaTeX code used to generate the equation.]

Categories

While trying to get more informed on how engineering education can be improved, I thought I’d post my “newbie” perspective on what subject material needs to be added to the core engineering curriculum. As illustrated above, there are at least six areas that I think deserve greater attention. These are, in no particular order:

• Software Skills: As I mentioned in Programming the Physical World, I think that software skills are going to become exponentially more important in coming years. I’m not talking about knowing a particular language syntax, per se, but rather an awareness of issues such as code storage (revision control), quality assurance (unit testing), and complexity reduction (refactoring). It’s far too easy to create software that gets the job done, but leaves gaping holes with regard to access, usability, and security. Just look at the constant stream of code updates from big players like Microsoft, Apple, and Adobe—these companies have access to world-class programmers, yet there remains an unending flow of corrections to fix previously undetected errors. Just this week, Microsoft admitted to a security bug that’s been in their code for 17 years! As we start programming the physical world, it won’t just be bits and bytes that are compromised. It could conceivably be bridges and electrical stations and chemical plants that are compromised as the result of poor programming practices. As with so many things related to engineering, a small mistake can lead to disastrous results. It seems to me that an instructional program like Software Carpentry would go far in helping engineers improve their software skills.
• Individual and Group Behavior: We train engineers to be great problem solvers, yet much of the difficulty in implementing solutions is not technical, but rather social. Further, we want engineers to operate devoid of emotion, and to think in a purely rational manner. Yet a quick glance at popular books like Predictably Irrational and Sway: The Irresistible Pull of Irrational Behavior indicates that most people operate in anything but a rational manner.  At the very least engineers should be aware of:
1. Their own limitations in perceiving and evaluating the world around them.
2. Human tendencies to respond in certain ways to external inputs; for example, our innate tendency to want to reciprocate favors, to be part of the majority, to be consistent in our actions, etc.
3. Methods used by marketers and politicians to sway both personal and group decision-making.

If engineers are going to be effective in advising society about our increasingly complex world, they need to be aware of human tendencies in evaluating information, and in responding to requests for action. I’d like to see a semester-long program like Software Carpentry address these issues. Primary texts for this class would be Influence by Robert Cialdini, and Yes!, 50 Scientifically Proven Ways to Be Persuasive by Noah Goldstein, Steve Martin, and Robert Cialdini. A text on negotiation skills might also be appropriate here.

• Technical Communications: If the preceding class on human behavior provides the strategy for effectively communicating an engineering perspective, then this class would be focused on the technique of delivering a targeted message. Engineers need to have a sense of how non-engineering audiences process information if they are going to counter the emotional appeal of most marketing campaigns. An investigation of information graphics would include texts ranging from Tufte’s classic book, The Visual Display of Quantitative Information, to the more casual Back of the Napkin. The Challenger Incident could serve as a case study in the importance of clearly deliniating the important engineering issues at hand.

Methods for presenting a clear, concise message would be covered, referencing texts such as Presentation Zen and slide:ology. Also included would be a discussion of presentation styles such as the Lessig and Takahashi methods, as well as the Pecha Chua and Ignite formats. An introduction to LaTeX may be appropriate as well, as few things are uglier than presentation slides showing equations that have been typeset using Microsoft products (IMHO).

• Risk Management: It is rare in most industrial settings to find individuals who can keep up with the mathematical skills of a fresh engineering graduate. So when an engineer is asked to make a calculation, the boss rarely wants to know how the calculation is performed. Rather, the boss wants to know if a particular product or process will operate in a desired manner. However, given the variability in all materials and methods, there is never an exact answer to such a question.

For some engineering problems, such as elevator construction, there will be a safety factor that is specified by code. However, no particular safety factor is given for most industrial tasks; an engineer must determine the appropriate safety factor for each situation. To do so effectively, an engineer must be cognizant of the risks that are inherent with his or her assumptions, and know how to convey the risk of those assumptions to others, who will likely possess less technical knowledge. This is especially critical given that all of us usually make poor estimates of inherent risk. It appears that Virginia University’s Center for Risk Management of Engineering Systems is attempting to address some of these issues.

Update: A possible text for this material is Judgment under Uncertainty: Heuristics and Biases. Referenced in this post by John Cook.

• Physical Problem Solving: Engineering problems would take forever to solve if each engineer had to develop their own theory of calculus. Yet we leave engineers to come up with new designs without giving them any hint as to how the work of prior generations could help them solve their problems. If the engineer doesn’t stumble upon the connection to prior work by happenstance, then each new design effort is simply an educated guess.

Inventor Genrich Altshuller and his colleagues studied the trends found in Russian patent filings starting in 1946. They developed a theory known as TRIZ, which translates from Russian as an acronym for “the theory of solving inventor’s problems.” The TRIZ methodology offers users a means for examining “new” problems in terms of existing solutions, thus often leading to quicker results. Although much of the TRIZ theory has been extended by private firms that keep their methods close to the vest, there do exist some open-source resources for learning this approach. There are also numerous books on this subject, including one by TRIZ developer Genrich Altshuller himself. Instruction in the TRIZ method could be enormously beneficial in improving the effectiveness of tomorrow’s engineers.

• Design Thinking: If the prior class defines how to produce a technical solution, this topic seeks to identify how to successfully implement a human solution. There is usually a large disparity between what people say they want or need, and what they actually use, do, or buy. Thus design thinking, in essence, is a focus on identifying human needs. As noted in a recent post by Stanford professor Bob Sutton, design thinking was developed by engineers. It is now being incorporated into other areas of study, including medical schools and MBA programs. However, many engineering schools fail to introduce their students to even the basics of design thinking. In addition to instructional material available from Stanford’s d.school website, there a lot of information available from the website of design leader IDEO. Perhaps books like The Art of Innovation and Change by Design could serve as reference texts.

So what is going to be thrown out of the core engineering curriculum to permit these courses to be taught? My current thought is that there must be a way to more quickly bring students up-to-speed. Perhaps the “lecture, study, homework, test” cycle of traditional education can be improved upon. If so, I bet the solution will rely heavily on the six skills areas outlined above.