New opera ‘Orphan Train to Iowa’ brings a dark but hopeful history to the Coralville stage

Children and adult performers are collaborating on ‘Orphan Train.’ — Jason Smith/Little Village

A little-known piece of Iowa history is coming to the stage in a one-night-only opera from the Crescendo Children’s Choir.

Child and adult singers, including professional opera stars, will perform Orphan Train to Iowa: For the Love of Pete on Saturday, June 18 at 7:30 p.m. in the Coralville Center for the Performing Arts.

The original opera is based on Ethel Barker’s novel For the Love of Pete: An Orphan Train Story.

Donald and Nancy Macfarlane, a married couple who met singing in a Philadelphia church choir, bumped into Barker, an Iowa City-based writer, at a party and they got to talking about Barker’s book.

They eventually decided to commission Barker to turn her story into an opera.

“I said, ‘Well can you write the libretto?’” said Donald Macfarlane, the stage director. “And she said, ‘Well yes,’ and then she thought on it and said, ‘What’s a libretto?’”

Barker collaborated with Donald and Nancy Macfarlane to convert her story into songs, and Kevin Allen, a composer from Chicago, wrote the music.

The play follows Pete and his friends Rosie and Iris, who are sisters. The three travel from New York to Iowa, where they are placed with families.

The orphan train was a real system that placed children from places like New York and Boston with rural families in a time before federal programs for orphaned children. According to the Social Welfare History Project, between 1854 and 1929 an estimated 200,000 children were moved across the country. The concept was invented by Charles Loring Brace, a minister who thought the orphanages were overcrowded and that children would benefit from family life. Brace thought this would be mutually beneficial to families who needed extra hands to tend their farm.

There are some dark elements of this history, as the families were not vetted by any modern standard and some adoptees were only looking for free labor. Additionally, not all children on the orphan trains were actually orphaned.

The opera touches on these elements. For example, the character Old Man Olson wants to adopt Pete just to have him work, and doesn’t care about him emotionally. The play also shows the sisters Rosie and Iris being separated from each other.

“Although it’s sort of written for young teenagers … they’re dealing with very real, very human issues,” Donald said of the book. “And when you start to explore very real, very human issues, the various characters in the book sort of came alive to us, and it’s those characters that actually drove it.”

Donald Macfarlane directs a mix of child and adult opera singers in rehearsal. ‘Orphan Train to Iowa: For the Love of Pete’ features professional talent coming from out of the state, a full orchestra, two acts, and an original libretto. — Jason Smith/Little Village

Ultimately, though, Allen says it’s an uplifting story.

With professional talent coming from out of the state, a full orchestra, two acts, and an original libretto, Nancy Macfarlane, Crescendo’s founder and artistic director, said this production has grown beyond their imagination.

“This became much bigger than anything I ever planned,” she said. And suddenly we’ve got people coming from all over to sing the roles and it is a great deal larger than anything I’ve ever done before.”

It’s also become a family event for Donald and Nancy Macfarlane. Their daughter is an opera singer in Chicago who will be singing in the show and their son who performs in the Chicago Lyric Opera orchestra will be playing violin. Donald said they are also planning to squeeze eight of their nine grandchildren on stage.

Composer Kevin Allen works with young singers at a rehearsal of ‘Orphan Train to Iowa: For the Love of Pete.’ The opera is an original work, which Allen wrote the music for. — Jason Smith/Little Village

Nancy said she hopes people appreciate that the opera tells an original story based on Iowa’s history.

“It was really something, there was no foster care, there was no anything in those years, and it was I think it ran for 70 some years,” she said. “The train didn’t stop until I believe it’s 1929. So it was really a monumental thing and a lot of people in the Midwest are related to people that did ride the orphan train.”

Allen said he hopes Orphan Train to Iowa can serve as an entry point for people who haven’t seen opera before.

“I’m quite confident they will be probably more first time opera-goers in this production, I’m sure,” Allen said. “And for that, I hope that it will be a very easy way into this kind of repertoire because it’s an American story.”

Attendees can find information about tickets for Saturday’s show through the Coralville Center for the Performing Arts website.

Composer Kevin Allen (right) works with young singers at a rehearsal of ‘Orphan Train to Iowa: For the Love of Pete.’ — Jason Smith/Little Village

[gravityform id="17" title="false" description="false" ajax="true"]
<div class='gf_browser_unknown gform_wrapper your-village-form_wrapper' id='gform_wrapper_17' ><a id='gf_17' class='gform_anchor' ></a><form method='post' enctype='multipart/form-data' target='gform_ajax_frame_17' id='gform_17' class='your-village-form' action='/orphan-train-to-iowa-opera-coralville/#gf_17'> <div class='gform_body'><ul id='gform_fields_17' class='gform_fields top_label form_sublabel_below description_below'><li id='field_17_7' class='gfield gfield_html gfield_html_formatted gfield_no_follows_desc field_sublabel_below field_description_below gfield_visibility_visible' ><h3 style="font-weight:800; font-size:34px;">Let's get started</h3> <p style="font-size:18px;">Fill out this form and we'll contact you with information about marketing with Little Village!</p></li><li id='field_17_4' class='gfield field_sublabel_below field_description_below gfield_visibility_visible' ><label class='gfield_label gfield_label_before_complex' for='input_17_4_3' ></label><div class='ginput_complex ginput_container no_prefix has_first_name no_middle_name has_last_name no_suffix gf_name_has_2 ginput_container_name gfield_trigger_change' id='input_17_4'> <span id='input_17_4_3_container' class='name_first' > <input type='text' name='input_4.3' id='input_17_4_3' value='' aria-label='First name' tabindex='2' aria-invalid="false" placeholder='First name'/> <label for='input_17_4_3' >First</label> </span> <span id='input_17_4_6_container' class='name_last' > <input type='text' name='input_4.6' id='input_17_4_6' value='' aria-label='Last name' tabindex='4' aria-invalid="false" placeholder='Last name'/> <label for='input_17_4_6' >Last</label> </span> </div></li><li id='field_17_5' class='gfield gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible' ><label class='gfield_label' for='input_17_5' ><span class='gfield_required'>*</span></label><div class='ginput_container ginput_container_text'><input name='input_5' id='input_17_5' type='text' value='' class='large' tabindex='6' placeholder='Company name' aria-required="true" aria-invalid="false" /></div></li><li id='field_17_3' class='gfield gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible' ><label class='gfield_label' for='input_17_3' ><span class='gfield_required'>*</span></label><div class='ginput_container ginput_container_email'> <input name='input_3' id='input_17_3' type='text' value='' class='large' tabindex='7' placeholder='Your email address' aria-required="true" aria-invalid="false"/> </div></li><li id='field_17_8' class='gfield gform_validation_container field_sublabel_below field_description_below gfield_visibility_' ><label class='gfield_label' for='input_17_8' >Email</label><div class='ginput_container'><input name='input_8' id='input_17_8' type='text' value='' /></div><div class='gfield_description'>This field is for validation purposes and should be left unchanged.</div></li> </ul></div> <div class='gform_footer top_label'> <input type='submit' id='gform_submit_button_17' class='gform_button button' value='SUBMIT' tabindex='8' onclick='if(window["gf_submitting_17"]){return false;} window["gf_submitting_17"]=true; ' onkeypress='if( event.keyCode == 13 ){ if(window["gf_submitting_17"]){return false;} window["gf_submitting_17"]=true; jQuery("#gform_17").trigger("submit",[true]); }' /> <input type='hidden' name='gform_ajax' value='form_id=17&amp;title=&amp;description=&amp;tabindex=1' /> <input type='hidden' class='gform_hidden' name='is_submit_17' value='1' /> <input type='hidden' class='gform_hidden' name='gform_submit' value='17' /> <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' /> <input type='hidden' class='gform_hidden' name='state_17' value='WyJbXSIsIjlmNzc1YTEyZmZjNmYyODk5Mzk0NDM3ZjRlOGYyZDNmIl0=' /> <input type='hidden' class='gform_hidden' name='gform_target_page_number_17' id='gform_target_page_number_17' value='0' /> <input type='hidden' class='gform_hidden' name='gform_source_page_number_17' id='gform_source_page_number_17' value='1' /> <input type='hidden' name='gform_field_values' value='' /> </div> <p style="display: none !important;"><label>&#916;<textarea name="ak_hp_textarea" cols="45" rows="8" maxlength="100"></textarea></label><input type="hidden" id="ak_js_1" name="ak_js" value="206"/><script>document.getElementById( "ak_js_1" ).setAttribute( "value", ( new Date() ).getTime() );</script></p></form> </div> <iframe style='display:none;width:0px;height:0px;' src='about:blank' name='gform_ajax_frame_17' id='gform_ajax_frame_17'>This iframe contains the logic required to handle Ajax powered Gravity Forms.</iframe> <script type='text/javascript'>jQuery(document).ready(function($){gformInitSpinner( 17, '' );jQuery('#gform_ajax_frame_17').load( function(){var contents = jQuery(this).contents().find('*').html();var is_postback = contents.indexOf('GF_AJAX_POSTBACK') >= 0;if(!is_postback){return;}var form_content = jQuery(this).contents().find('#gform_wrapper_17');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_17').length > 0;var is_redirect = contents.indexOf('gformRedirect(){') >= 0;var is_form = form_content.length > 0 && ! is_redirect && ! is_confirmation;if(is_form){jQuery('#gform_wrapper_17').html(form_content.html());if(form_content.hasClass('gform_validation_error')){jQuery('#gform_wrapper_17').addClass('gform_validation_error');} else {jQuery('#gform_wrapper_17').removeClass('gform_validation_error');}setTimeout( function() { /* delay the scroll by 50 milliseconds to fix a bug in chrome */ jQuery(document).scrollTop(jQuery('#gform_wrapper_17').offset().top); }, 50 );if(window['gformInitDatepicker']) {gformInitDatepicker();}if(window['gformInitPriceFields']) {gformInitPriceFields();}var current_page = jQuery('#gform_source_page_number_17').val();gformInitSpinner( 17, '' );jQuery(document).trigger('gform_page_loaded', [17, current_page]);window['gf_submitting_17'] = false;}else if(!is_redirect){var confirmation_content = jQuery(this).contents().find('.GF_AJAX_POSTBACK').html();if(!confirmation_content){confirmation_content = contents;}setTimeout(function(){jQuery('#gform_wrapper_17').replaceWith(confirmation_content);jQuery(document).scrollTop(jQuery('#gf_17').offset().top);jQuery(document).trigger('gform_confirmation_loaded', [17]);window['gf_submitting_17'] = false;}, 50);}else{jQuery('#gform_17').append(contents);if(window['gformRedirect']) {gformRedirect();}}jQuery(document).trigger('gform_post_render', [17, current_page]);} );} );</script><script type='text/javascript'> if(typeof gf_global == 'undefined') var gf_global = {"gf_currency_config":{"name":"U.S. Dollar","symbol_left":"$","symbol_right":"","symbol_padding":"","thousand_separator":",","decimal_separator":".","decimals":2},"base_url":"https:\/\/\/wp-content\/plugins\/gravityforms-asdf111aasdfffs-nope","number_formats":[],"spinnerUrl":"https:\/\/\/wp-content\/plugins\/gravityforms-asdf111aasdfffs-nope\/images\/spinner.gif"};jQuery(document).bind('gform_post_render', function(event, formId, currentPage){if(formId == 17) {if(typeof Placeholders != 'undefined'){ Placeholders.enable(); }} } );jQuery(document).bind('gform_post_conditional_logic', function(event, formId, fields, isInit){} );</script><script type='text/javascript'> jQuery(document).ready(function(){jQuery(document).trigger('gform_post_render', [17, 1]) } ); </script>