Join our creative team! Hiring multiple positions. APPLY NOW!

Hornady: 'Building' a Book

How we used web technology to wrangle thousands of pages of data.

The Project

The client, Hornady Ammunition Manufacturing, hired us to create the 9th edition of their reloading manual.

The Challenge

The manual contains nearly a thousand pages. It has almost 250 sections. Each section contains, on average, three to four sub-sections. Each subsection contains up to nine items, consisting of an image and technical information. Each subsection usually contains at least one table of data, containing up to nine columns and nine rows. When no data table is present, the subsection is cross-referenced with another subsection.

The Approach

We knew we could create a database containing the necessary information, and we knew we would be using inDesign for our publishing tool. We started the process by evaluating publishing plugins for inDesign. After looking at several products, we settled on EZ-Catalog by 65bit. We then created some mock .csv data files, and worked with the 65bit support to team to tackle our primary layout issues. When we felt comfortable that EZ-Catalog would be able to accomplish our goals, we started designing the database and data-entry application.

The Solution

We created a database of ten tables. The design of the database wasn't particularly interesting or challenging, but creating an interface to allow non-technical users to input highly-related data was.

We build almost all of our websites using the MODx CMS, so we had a good foundation of technical experience to build on. We built the interface as a Custom Manager Page in MODx Revolution, using ExtJS for the client-side scripting. We used the xPDO ORM model to handle all of the database interation.

The result was a fuctional and expandable method of data entry.

We then wrote a handful of PHP scripts that would query the database and generate downloadable .csv files that EZ Catalog could use to automatically generate hundreds of pages of content.

The Benefits

  • Design Changes: We can now quickly iterate design changes. If we need to add a design or data element to section, subsection, or individual item, we can make the change to a handful of inDesign library items instead of manually making changes on each page.
  • Proofing: We can now do a certain amount of proofing at the database level. We can run queries to find inconsistent or incomplete data instead of manually proofing every page.
  • Data changes: Changes to data values can now be entered into the database, exported to a .csv, and synced directly to the inDesign document.
  • Reusable Data: During the development of this solution, we were able to use the data, technology, and processes we developed to complete three other projects that previously would have been created from the ground up in isolation.
  • Consistency: Previously unrelated pieces can now use the same verified data. This ensures a consistency across pieces and materials.

Conclusion

This project required a significant investment, but now that the infrastructure is in place we are in position to create future projects more quickly, efficiently, and accurately. The potential long-term benefits are great.

 

Browse Topics.