Configure a view to display nodes that match a term value of the container node I have two content types:


Programs 
Events


I have a vocabulary:


Programs


I have a view that displays Events, and I place the view in my Programs nodes.

Both Programs and Events have a field_term_programs that references the Programs vocabulary. If I place the view in a Programs node, I want it to display any Events assigned to the same Programs term as that Programs node.  I have tried to set this up using contextual filters but have had no luck thus far.  The views block is displayed in the Programs node, but no nodes are displayed within the block.
The request to show sibling nodes through Taxonomy is one of the most common Views requests. 

You case seems to be the simplest one, you can use the Has taxonomy term ID Contextual filter. 


Create your Views listing Events
Add the Has taxonomy term ID Contextual filter and configure it: 

When the filter value is NOT available
Provide default value
Taxonomy term ID from URL
Load default filter from node page, that's good for related taxonomy blocks
Filter to items that share any term
When the filter value IS available or a default is provided
Specify validation criteria
Taxonomy term ID
[your vocabulary]
Single ID
Place your Block Display on Programs nodes and configure Block settings for the contextual filter.