maybe both are related.
I never understood people that create a function only to set a flag or a set of flags in another and pass everything else.
Also sometime doing code that looks like this
>
> if a:
> getting_started(d,e)
> if a and c:
> maybe_prepare(f,g)
> common(d,e,f,g)
>
Instead of
>
> getting_started(a,b,c,d,e)
> maybe_prepare(a,b,c,d,e)
> common(a,b,c,d,e)
>
Usually I leave branching for the leaf code. It's maybe just me.