Explain to someone that programming isn't just all "if"s and "else"s I have a friend who, in his mind, has the wrong image about programming. Whenever I mention that programming is fun and that one can enjoy it very much especially if they like solving problems (both math and algorithm related), he stares at me and repeats "if this then do this.. what's so hard or fun about writing that?" and that's just annoying. It is as if one would say "ah well, maths.. 1+1 = 2 there u go!".

Is there a way I can make him paint a better picture in his mind regarding this field?

About 10 years ago when he was younger, he did try basic programming and that's what I believe he is basing his judgement on.

(Not sure if this is the right place to post this but let's see... )
Obviously your friend is using a bit of hyperbole, and in truth, however annoyed you may be by his blithe dismissal of our entire field, he may not be open to being persuaded.  You may have to resign yourself to not "winning" this argument.  From what you've written, this is what I suspect is the real answer.

For what it's worth, he's not, strictly speaking, wrong.  Data storage and branching are a huge portion of what computers actually do.

But if you still want to attempt to capture him, you might point him towards image recognition.  Sure, it's "if this then do this" in theory, but two different images of birds will share not a single pixel in common, so how do you teach a machine that can only look at one pixel at a time to identify one?


  "Computer Science is no more about computers than astronomy is about telescopes." -misattributed to Edsger Dijkstra


Of course, even if he concedes the complexity of the problem, that's still a ways away from seeing the joy in trying to solve it. I'm not sure there's truly a way from here to there if he's not interested in taking an honest look.