Comment Re:3D programming requirements (Score 1) 616
Matrices are absolutely *critical* to 3d graphics, and any non-trivial 2d graphics. Those photoshop plugins are *heavily* based on linear algebra.
The code might not be written in mathematical matrix form, or be hidden behind libraries, but if you have 3-vectors (i.e. points relative to the origin in 3-space), any global linear transformation is represented by a matrix multiplying each vectors. Rotation, skew, scale, projection (shadows and reflections) and scaling are all linear transformations.
It's like saying matching text doesn't require state machines. It does, you've just never used them in their raw form. Meanwhile, learning the actual theory of how regular expressions and compilers actually work requires that you understand state machines (because that's what lex and yacc actually spit out, or what your higher level language actually dynamically constructs based on the regex). Likewise, understanding the core theory behind computer graphics necessitates learning linear algebra.
Comment Re:DRM DRM DRM (Score 1) 229
Netflix and Amazon both use it.
Comment Easy (Score 1) 842
Comment Re:Here's the article (Score 1) 211
Comment Re:Wait, physics doesn't work either? (Score 2) 214
On the other, I can now rephrase my question thusly: "in terms of what other system could we try to explain the observed phenomena that we call entanglement?"
Math. Specifically, complex linear algebra.
Comment Re:Swift (Score 1) 365
Comment Re: Swift (Score 1) 365
Ternary statements are better in certain situations because you can place (limited) logic of what you are assigning close to what is being assigned, and do not clutter up the scope with numerous temporary variables.
new object { SomeField = flag ? value1 : value2; OtherField = flag2 ? someValue : otherValue; }
If you start constructing objects with many fields, the if/else blocks create further and further separation between the logic of what's being assigned, and what it's being assigned to. Considering each if/else can take from 5 to 8 lines of code depending on bracing style, you start running into trouble where you can't keep it all within eyeshot at once. With the ternary statement, you can do it all inline.
I will agree that anyone nesting/chaining ternary operators more than twice is not a good idea.
Comment Re:better odds with the lottery (Score 1) 217
Comment Re:I disagree (Score 1) 217
Comment Re:As long as they're not forced (Score 1) 217
Not to mention basic set logic using Venn diagrams (All feebs are groobs, and some groobs are neeves, so are some feebs neeves?), and I'm sure some elementary propositional logic is still taught (i.e. your standard Boolean stuff) at some point.
If you really think about it, what is good programming but reading and writing complex arithmetic and logic (along with short prose comments, one would hope) in a clear and concise manner? Thought of that way, is not programming the culmination of all the basic skills we are taught in school?