Lessons Learned from Writing a Precalculus CDF eText

Eric Schulz

Walla Walla Community College

Abstract

First we created a CDF eText for our Calculus text, and then we embarked on a new project in 2011 to write a Precalculus eText from scratch (published by Pearson, Fall 2013). Eight chapters, fifty sections, 350 interactive figures, thousands of exercises, solution manuals, print Explorations & Notes, indices, etc. all created, managed, and published with Mathematica and distributed as a CDF eText. Efficient tools and processes were built for publisher and author workflows and will be discussed in the presentation. The mechanics of building a CDF eText are no doubt interesting, but more important is understanding that an author who is able to use both words and interactive figures designed to work together, can create material that breaks through the barriers imposed by static material.

Content Creation

Source Files

Creating an eText section takes place in three source notebooks: exposition in one, coding in a second, and a third for a quick quiz.

A custom eText stylesheet is embedded in every notebook. A shared stylesheet cannot be used in our web-deployed distribution. When a change is made to the stylesheet, all embedded stylesheets are updated programmatically (this is a BIG deal).

The navigation toolbar (DockedCell) is built programmatically using CellTags in the notebook.

Exposition Source Files

Code Source Files

Quiz Source Files

Standalone Interactive Figure Files

The Precalculus eText contains about 350 interactive figures in the narrative and exercise sets (715 iFigs in Calculus). A notebook is created for every iFig and delivered to the publisher so users can use an iFig for teaching/exploration outside of the eText. These standalone iFig notebooks are created programmatically from the source notebooks. Thumbnail images of all iFigs are provided to the publisher for inclusion on web pages.

Exercises, Solutions, and Answers

Exercise sets are numbered programmatically — we choose to not use Mathematica’s counters/autonumbering. Our early decision not to use MA’s autonumbering turned out to be a significant advantage later on!

Every exercise in the exposition notebook is followed with a complete solution and answer — we have written all of our own solutions and answers.

Solutions and Answers

Solution manuals are built programmatically from the exposition notebooks. The exercise statement is included with its solution/answer in the solution manuals. CDF and PDF files are delivered to the publisher. The instructor solution manual is approximately 1000 pages.

Answers files are created programmatically, and answers to all odd exercise are embedded programmatically at the end of the exercise set.

Single source for all exercises, solutions, and answers.

Solution Manuals

Answers to Odd Exercises

Explorations & Notes

We wrote a print supplement titled Explorations & Notes. Boxed content is taken from the exposition files and items are “framed out” for students to fill in. Explorations are focused on the interactive figures and examples.

The Explorations & Notes are delivered as PDF files to the publisher by chapter. Designed for printing two-sided on three-hole paper. The complete set is 232 pages in length.

TIP: These printing options are handy.

SetOptions[nb,
	PrintingStartingPageNumber->pageNumber,
	PrintingOptions->{
		"FacingPages"->True,
		"FirstPageHeader"->True,
		"PrintingMargins"->{{48,48},{72,72}},
		"InnerOuterMargins"->{90,48}}]

Indices

We build three indices for the eText: a regular index, an interactive figure index, and an application index. The regular index and application index are built programmatically from IndexEntry and ApplicationIndexEntry cells inserted throughout the section files. The interactive figure index is built from thumbnails of the iFigs.

Since there are no pages in an eText items in the indices are referenced by section.

Regular Index

Interactive Figure Index

Application Index

Communication

Author-Author

Our custom stylesheet includes a Comment cell style. Comment cells are inserted anywhere in the manuscript via a palette button and are labeled with a date and user name. We can leave comments and conversations in the manuscript as long as needed. Author-Author comments are stripped out when eText files are built for our editor and for users. We Hide and Show comments using a palette if necessary. PRICELESS!

Author-Editor

Our stylesheet includes an EditorComment cell style. These cells are used for conversations and comments with our editor. Author-Editor comment cells are left when building eText files for our editor and deleted when been files for users. PRICELESS!

Our development editor had never used Mathematica before this project. I created an Annotation Assistant palette for her that has been used throughout the production. She has been fantastic to work with and quickly embraced the Mathematica based workflow.

Our copy editors, proof readers, and accuracy checkers still work from print.

Editor eText Files

When eText files are built for our development editor we strip author-author comments, input cells, hide cell tags, etc. and create a label on every cell indicating the date the cell was last changed. This has improved the workflow and made it easier for her to verify and track modifications.

Palettes and Support Code

There are several palettes that have been essential to the project; the Writing Assistant palette in Mathematica and a collection of custom palettes.

Custom commands in a package are essential as well to the production of the eText.

Tips for Building an eText with Mathematica

Master the skill of writing and typesetting in Mathematica. 
Don't expect to write with Mathematica like you write with Word or LaTeX. Thank goodness! Change your writing paradigm and adapt.

Every interactive figure in our eText is built with Manipulate. Master the command, its options, and its controls and their options.

Learn how to build custom palettes with CreatePalette.

Learn how to create custom stylesheets and how to programmatically update embedded stylesheets.

Learning how to programmatically manipulate and process notebooks is ESSENTIAL!

By Spring 2014, I will be producing around 8000 files for our 8 CDF eTexts. It isn’t sane for one person to do this without automation, customized tools, and a programmatically controlled workflow!
	1. Calculus (2010)
	2. Calculus: Early Transcendentals (2010)
	3. Calculus for Scientists and Engineers (2012)
	4. Calculus for Scientists and Engineers: Early Transcendentals (2012)
	5. Precalculus (2013)
	6. Calculus: AP Edition (2013)
	7. Calculus, 2nd edition (2014)
	8. Calculus: Early Transcendentals, 2nd edition (2014)

Advice for Writing

It is time for a new author mindset.

Carefully crafted, engaging, and interactive visualizations supported by well written exposition is a powerful combination.