Add when to use blocks, delegates or data source