Nested if, for, while, until, case and begin...rescue statements are key ingredients for making what's known as "Spaghetti code".
if
for
while
until
case
begin...rescue
Such code is hard to read, refactor and therefore maintain.