Live data from Hacker News

The language brain matters more for programming than the math brain? (2020)

massivesci.com

331–340 of 465 posts

Re: The language brain matters more for programming than the math brain? (2020)

#331

Earlier quoted context omitted.

Math major here. 'is' is a reflexive relationship. If math is language, therefore language is math. I believe clearly language is not math, therefore math is not language. Math is described with language, Math itself is not language. It is a 'has-a' relationship vs a 'is-a' relationship.

> Math major here. You say that like you think it's a qualification? You're not making it look good. A common use of be is to express set membership rather than identity. For example, "two is an even number" or "tigers are cats". We may hope that one day you'll come to realize that set membership is not reflexive, and - more to the point - also not symmetric.

You're saying that "Math" and "Language" are 'sets'? And that the phrase "Math is Language" should be interpreted as expressing the relationship between sets?

If we do want to talk sets, that seems far more interesting. The statements like "Math is a language", or "Math has equivalence classes within languages", or "Mathematics are a Language" are slightly more interesting to consider IMO.

>> Math major here.

> You say that like you think it's a qualification?

Agree, appeal to authority fallacy. I take that over mis-framing any day though.

Any old-timers might appreciate that we're arguing over the meaning of the word "is" =D

Re: The language brain matters more for programming than the math brain? (2020)

#332

Personally, I find ruby one of the most readable languages because of the language and its DSLs. To be fair, the DSLs are very readable, but the lines can blur between what is ruby and what is a DSL.

I have really come to enjoy using LINQ queries (specifically with lambda syntax) in the C# language. Although I’m a little biased because I work mostly in C#.

Re: The language brain matters more for programming than the math brain? (2020)

#333

Earlier quoted context omitted.

> Most coding doesn't need much of any math past boolean logic and very basic set operations Coding IS math. Not "coding uses math", I mean it is math. Mathematicians do not deal in objects, but in relations among objects; they are free to replace some object by others so long as the relations remain unchanged. Content to them is irrelevant; they are interested in form only. - Poincare[0] I don't know how you code, b…

forming relationships between objects This is vague and doesn't mean anything. People can't even agree what 'objects' are and people did a lot of programming before the term 'object' was invented. Programming is about is fundamentally about instructions and data. Yin and yang of two things that are completely different, even if people can occasionally mix them and conflate them.

Category theory is often jokingly called the study of dots and arrows. What's a dot? Anything. What's an arrow? A relationship.

I'm surprised I hit a nerve with so many people. I'm quoting someone who's considered one of the greatest mathematicians. Obviously I don't know the backgrounds of people but it seems like programmers have strong opinions on what math is that disagrees with what mathematicians say they do.

https://en.wikipedia.org/wiki/Category_theory

Re: The language brain matters more for programming than the math brain? (2020)

#334

Earlier quoted context omitted.

How much math is in a typical CS program these days? Calc 1-3 (maybe 3, varied by school), Linear Algebra, Statistics (inconsistent across programs), Discrete were pretty much it when I was in school 25+ years or so ago. That's only 4-6 courses depending on the university, though some where the CS dept was more strongly associated with an engineering college might have added Diff Eq and others. (I got interested in C…

It was my grades in math that ultimately failed me out of my undergraduate CS program. My university had: Calculus 1, Calculus 2, Linear Algebra, Vector Geometry, Multi-Variable Calculus, Applied Combinatorics, Discrete Math, Differential Equations and maybe more that I don't remember. So many that CS majors could take one more math class and get a minor. Yeah, I never thought this made sense, but so many people did;…

That program makes sense if you want to be a Computer Scientist, or study machine learning / AI.

You chose CS but really wanted Software Engineering. Discrete Mathematics was all you needed for that.

Re: The language brain matters more for programming than the math brain? (2020)

#335

Earlier quoted context omitted.

> It doesn't take math to perform CRUD operation Yes it does. Just because the objects you are working with aren't numbers doesn't mean it isn't math. In fact, that's my entire point. It is why I quoted Poincare in the first place. He didn't say "numbers" he said "objects".

Sorry but you are wrong. "CREATE, READ, UPDATE, DELETE" operations are not mathematical in nature. It doesn't matter what the data is or how esoteric you want to get with it - a programmer doesn't need any math at all for simple CRUD. You're trying to move the goalposts all the way back to the 1800s to win a pointless internet argument.

I understand you have strong opinions, I just don't understand why.

In math are highly concerned with structures and abstraction. We have things called operators. They aren't just addition and multiplication. We also use those words to describe different operations. They have things like groups, rings, fields, and algebras. Yes, plural.

The purpose of these things is to create logical frameworks. It matters not what the operators are. Nor does it matter what objects we operate on. Poincaré is explicitly saying this.

The part you're not understanding is the abstraction. This is what math is about. It is also why the Programming Language people are deeper in the math side and love Category Theory (I have a few friends who's PL dissertations are more math heavy than some math dissertations I've seen). It's no surprise. What's a function? How do you abstract functions? How do you define structure? These are shared critical questions. PL people are more concerned with types but I wouldn't say that makes them any less of a mathematician than a set theorist.

We can perfectly describe the CRUD operations with set theory. Do most programmers need concern themselves with this? Absolutely not. But is it something people designing those operations and systems is thinking about? Yes.

I'd encourage you to learn some set theory, abstract algebra, and maybe a bit of cat theory. It'll make these things pretty clear. But I'd caution about having strong opinions on topics you aren't intimately familiar with. Especially when arguing with those that are. Frankly, CRUD is a terrible example. I'm confident a quick google search (or asking a GPT) would quickly point you to relational algebra. It's discussed in most database classes. It certainly was in the one I was an assistant for.

Re: The language brain matters more for programming than the math brain? (2020)

#336

Earlier quoted context omitted.

Sorry but you are wrong. "CREATE, READ, UPDATE, DELETE" operations are not mathematical in nature. It doesn't matter what the data is or how esoteric you want to get with it - a programmer doesn't need any math at all for simple CRUD. You're trying to move the goalposts all the way back to the 1800s to win a pointless internet argument.

I understand you have strong opinions, I just don't understand why. In math are highly concerned with structures and abstraction. We have things called operators. They aren't just addition and multiplication. We also use those words to describe different operations. They have things like groups, rings, fields, and algebras. Yes, plural. The purpose of these things is to create logical frameworks. It matters not what…

You could say that math is behind the structure of a leaf, but the farmer doesn't care about that. Keep moving the goalpost all you want, I don't have time to argue these pointless things, and I stopped reading after the first sentence of your comment. I'm done here.

Re: The language brain matters more for programming than the math brain? (2020)

#337

Earlier quoted context omitted.

>All of that code is a series of logical statements and expressions. Mathematical logic. Which code? The machine code that underlies everything? Or the lines of simple high-level CRUD that don't even need a single number or logic statement to function? Not all programming has to be mathematical or even logical at a high enough level, and I say this as someone who's been coding assembly language for 40 years.

> Or the lines of simple high-level CRUD that don't even need a single number or logic statement to function? Those lines ARE mathematical logical statements. Each line defines logical operations that are executed by the computer. Same for high level or low level programming. It's all logic.

Storing a string in some abstraction is not a mathematical operation. I'm done with this thread, it's going way too far down too many rabbit holes. The quarks that make up the matter that the computers are made of are pure "math". There, now I've moved the goalposts.

Re: The language brain matters more for programming than the math brain? (2020)

#338

Earlier quoted context omitted.

> Or the lines of simple high-level CRUD that don't even need a single number or logic statement to function? Those lines ARE mathematical logical statements. Each line defines logical operations that are executed by the computer. Same for high level or low level programming. It's all logic.

Storing a string in some abstraction is not a mathematical operation. I'm done with this thread, it's going way too far down too many rabbit holes. The quarks that make up the matter that the computers are made of are pure "math". There, now I've moved the goalposts.

That is a narrow perspective of mathematics and computer science.

Assigning a variable is a mathematical operation. It is a logical state transition. This is formalized in Programming Language Theory.

We are not talking about quarks. We are talking about lines of code which are objectively mathematical statements, no matter how non-mathematical they seem to you subjectively.

You start with a practical problem to solve, and a computing machine that can perform logical operations on data. Your job is to figure out a correct sequence of logical operations that will solve the problem. The program that you have written is a mathematical structure. It is mathematics.

https://en.wikipedia.org/wiki/Semantics_(computer_science)

Re: The language brain matters more for programming than the math brain? (2020)

#339

Earlier quoted context omitted.

I understand you have strong opinions, I just don't understand why. In math are highly concerned with structures and abstraction. We have things called operators. They aren't just addition and multiplication. We also use those words to describe different operations. They have things like groups, rings, fields, and algebras. Yes, plural. The purpose of these things is to create logical frameworks. It matters not what…

You could say that math is behind the structure of a leaf, but the farmer doesn't care about that. Keep moving the goalpost all you want, I don't have time to argue these pointless things, and I stopped reading after the first sentence of your comment. I'm done here.

You seem really angry at the field of Computer Science for some reason.

We are talking about textbook CS fundamentals.

https://en.wikipedia.org/wiki/Semantics_(computer_science)

Re: The language brain matters more for programming than the math brain? (2020)

#340

Earlier quoted context omitted.

Its very rare imo that computational problems emerge fully formed & ready to be tackled like proofs. Usually even deciding what the problem is is in part an art, requires an act of narrativization, to shape and form concepts of origin, movement, and destination. A good problem solver has a very wide range of abstract ideas and concepts and concrete tools they can use to model and explain problem, solution, & destinat…

> Its very rare imo that computational problems emerge fully formed & ready to be tackled like proofs. In my generation, the perfect example is Python's Timsort. It is an modest improvement upon prior sorting algorithms, but it has come to dominate. And, frankly, in terms of computer science history, it was discovered very late. The paper was written in 1993, but the first major, high-impact open source implementatio…

The a capital example of an exception that prove the rule.

I absolutely value & have huge respect for the deeply computational works that advance us all along!

But this is an exceedingly rare event. Most development is more glue work than advancing computional fundamentals. Very very very little of the industry is paid to work on honing data structures so generally.

Post reply on HN