Why not ignore the rest after 'a' and go to the Else?
Because if the condition (firstLetter == a) evaluates to false, the term on the other side of the OR operator has to be checked to see if it is true.
Consequentially, the value 'e' is true. In fact, every character except the NUL byte'\0' is true in a boolean context. Since 'e' is true, no other conditions are checked, per the short-circuiting rules, and the true-statement is executed.