Life of a view and what and where to hook or alter

Often I have a need to alter a bit output of a view, either the markup or just query, it's important to know where to hook in a life of a view, here is the list of hooks and alters.

views_get_view($view_name str)
$view->execute_display($display str, $args, arr)
$view->set_display($display str)
$view->pre_execute($args arr)
hook_views_pre_view(&$view obj, &$display str, &$args arr)

arguments added to view object

hook_views_pre_build(&$view obj)

arguments, filter, sorting, grouping processed and preliminary query built

hook_views_query_alter(&$view obj, &$query obj)
hook_views_post_build(&$view obj)
hook_views_pre_execute(&$view obj)
hook_query_alter($query obj)
hook_query_TAG_alter($query obj)
hook_views_post_execute(&$view obj)
hook_views_pre_render / theme_views_pre_render(&$view obj)
hook_views_post_render / theme_views_post_render(&$view obj, &$output str, &$cache obj)

You will usually use hook_views_post_execute or hook_views_pre_render to edit $view->result array to change markup of fields output.