Skip to content

Comment on You Don't Want to Think Like a Programmerparent

Comments

>Thinking like a programmer is really near to mathematical thinking

Some people say that but I've never understood it myself. To me, programming is nothing like mathematical thinking, especially at an intro level. It's more about giving super precise instructions to a stupid machine that has to be told every little thing. There are lots and lots of successful, competent programmer who don't know much math or logic as academic fields.

Edit; maybe a more relevant discussion would be talk about what is meant by 'mathematical thinking'.

I would argue that giving many super precise instructions is exactly an example of mathematical thinking. It's like the old algebra problem of "Prove 23=6". It's blatantly obvious to everyone over the age of two, but the proof is quite long and tedious.

    2*3=(1+1)*3  |  Definition of 2
    2*3=1*3+1*3  |  Distributive property
    2*3=3+1*3  |  Identity of Multiplication
    2*3=3+3  |  Identity of Multiplication
    2*3=3+(2+1)  |  Definition of 3
    2*3=3+(1+2)  |  Commutativity of Addition
    2*3=3+1+2  |  Associativity of Addition
    2*3=(3+1)+2  |  Associativity of Addition
    2*3=4+2  |  Associativity of Addition
    2*3=4+(1+1)  |  Definition of 2
    2*3=4+1+1  |  Associativity of Addition
    2*3=(4+1)+1  |  Associativity of Addition
    2*3=5+1  |  Definition of 5
    2*3=6  |  Definition of 6
It's the exact same set of logical skills to take a fixed set of tools and see how those tools can take you from where you are to where you want to be. It's not that programmers need Category Theory and Partial Differential Equations (however fun and useful they can be), but rather that someone who can't prove that 23=6 probably can't code.
AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.