The three virtues of a programmer: Laziness, Impatience, and Hubris. – Larry Wall

Legacy:Tarquin/Trig Rant

From Unreal Wiki, The Unreal Engine Documentation Site
< Legacy:Tarquin
Revision as of 02:36, 2 August 2007 by (Talk) (Um... Slight addition of my own rant to this lovely page.)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

It's funny that no-one ever says "I want to code UnrealScript, but I don't know how to read yet".

So why do people want to work with geometry in UnrealScript and in UnrealEd before they understand basic trigonometry?

It's quite possible to work with UnrealScript and not get involved with vectors and trig.

I guess what I'm trying to say is that it bugs me when people want to understand vectors, rotators, and angles, but still say things like "it's got something to do with that horrible trig stuff I didn't pay any attention to at school, right?".

Well, it is that trig stuff. Go away and learn it. Pay more attention in maths lessons, or get books on it. It's not rocket science (well, okay, it is used for rocket science).

Okay, just to be nice: Wikipedia:Trigonometry

Mychaeel: Unfortunately, "I don't know how to read yet" apparently does apply to a couple of programming newbies as well. Those are the people that program by trial-and-error (copy-paste, maybe randomly replace a couple of symbols, then try to recompile), get an error message and post something along the lines of "I get the error message 'type mismatch in parameter 1', what does it mean?" and never bother to read the error message, let alone any documentation that could tell them how to fix it. 126654 is a sad example of this. (Apart from the fact that the thread's initiator has, by now, posted five different threads on the same subject in the Coding forum, and has ignored my request to stick to one thread with a single subject and use [code]...[/code] for readability.)

Dante: Yeap, I'm Bytekeeper in this thread ;) The problem with Uscript is, that most people think it's very easy, because it's a script-language. So they start out reading a tutorial instead of reading the language reference. If you understand the language, and you got the class-tree, he's problem is very easy. But as he has no idea of what he's doing, he assumes imho to have a pre-basic scriptlanguage with hardcoded spawn() and no objects or so ( just guessing myself here too ;) ) I mean trial-and-error is an approach we all needed ( Not c&p but you always learn from errors ;) ) But you're right, copy&paste behaviour with exchanging one or two lines by copy&paste from another script :rolleyes: is something those people have in common. And what really annoys me that they aware of that we don't need to help them, do they think it's our job or what ? I guess after UT2k3 comes out, I need to c&p "RTFM" very often.

Mychaeel: Yes, you're right about trial-and-error, of course. I actually prefer it a lot if people just try something out before they ask (same applies to myself). What I actually mean is this particular sort of trial-and-error where the guesses are random ones, not more or less educated ones. – By the way, I personally found posting Unreal Wiki links a pretty good substitute for RTFM. It's more helpful and gets the basic idea of RTFM across just as well.  :-D

Dante: You're right, of course :) But I think even with a pointer to Unreal Wiki, they will continue. It's the lazyness of reading manuals. They don't even recognize that they would be faster than waiting for a reply on the forum...

capt. k.: It's not possible that a guy who acts like a 14 year old, has a command of written English like a 14 year old, and doesn't know anything more than a 14 year old could possibly *be* 14 years old, is it?

Mychaeel: Your point being?

Tarquin: I learnt trig at school starting at 13. I have nothing against young er coders. If you want to do stuff that hasn't yet been taught at school, start with books, or better still, convince your school to bump you up a year. :D

capt. k.: My point being that people who say they don't know trig are probably saying that because they don't know trig. I'm not sure what it's like out in everyone else's part of the world, but up my way trig isn't touched till around 10th grade, and vectors aren't covered in anything short of college-level courses. Maybe Tarquin's just gifted, I dunno.  :)

Not trying to be contentious here – and I don't disagree, people should learn to RTFM – but I don't think things like ignorance are usually anyone's fault.

Tarquin: I will afree that my rant is ill-thought-out and badly-formed. It's not a patch on Mych's rants which are sensible and clearly-laid out. What I'm saying is:

  • don't know trig and don't want to do trig? fine.
  • don't know trig but want to do things that require it, and therefore want to learn it? fine.
  • don't know trig but want to do things that require it, but still don't want to learn it? :rolleyes:

Mychaeel: Even as a 14-year-old, I knew (or at least I think I knew) that random guesses are the most inefficient way to get something done, and that the key to understanding other people is listening to them. (I think around that age I started to learn assembler by reading a book about it.) The guy in this thread I linked to seems just not to be reading what other people write (or what the compiler tells him), and doesn't seem to be willing to follow people's pointers for further reading. I see a distinct difference between ignorance and lack of knowledge.

capt. k.: Nah. Ignorance is ignorance. :) The distinction is what one choses to do about it.

Mychaeel: Maybe it's my German background. Unkenntnis (lack of knowledge) states a mere fact, Ignoranz (ignorance, I'd translate) implies a degree of bad will. In any case, "what one choses to do about it" is exactly the difference I'm seeing between the two.

Dirk Fist: Actually the way most text books treat trigonometry, vectors, and matrices is in my opinion needlessly complicated.

Foxpaw: I'd agree with that, to some extent. I believe that those concepts are expressed the way they are so that they more easily translate to other applications in more advanced math courses though.

MythOpus: Well, sadly, I'm only in grade 9 so I'm stuck with boring algebra. No trignometry for me *sigh*

Dirk Fist: Probably, but what really happens is that the student gives up on math totally. And many of the people that do make the effort never really understand what they are doing. (In effect they collect of bunch of recipes that work but they don't understand WHY)

Dirk Fist: Maybe a trig-for-UT page ? Showing all the wonderful simplifications Epic has provided ? Never use PI again! (except as a food ;))

Tarquin: we have one.... somewhere :) ... UnrealScript Vector Maths

Mortal Monkey: I learned my trig thanks to UScript & Wiki. The maths they teach at school here almost appears to be intentionally boring.

Foxpaw: I do have to agree somewhat about people not really understanding what they're learning. A perfect example in my opinion is complex numbers. -1 doesn't have a square root, by definition. Presumably, there's "complex numbers" but I've yet to meet someone who can offer a plausable explanation on what a complex number is. By that token, I don't think anyone really understands what they are (well I do, a figment of your imagination :P) but people have been taking them on faith since their inception. (Granted, they do wonders for some mathematical problems, but that doesn't mean anyone understands them.) A thug doesn't need to understand what makes a blade cut things in order to stab someone.

Tarquin: Actually I understand them :) -1 has a square root once you define one. Complex numbers just fall out from that choice.

Foxpaw: So, in order for it to work, you have to assign an arbitrary value? That sounds like Enron mathematics to me. :P

Tarquin: No... in the real number system, -1 has no root. So we say "suppose it HAS a root OUTSIDE the system". let's CALL that root i. "i" is not an "arbitrary value", it is a label.

Foxpaw: Well, I suppose so. But it's still just made up, right? Since there's no real value that it could ever represent.

Tarquin: Your question is not phrased in a way I can understand. Do you mean "real" as in "real number" or "reality"? i is not a "real number", but it's a "real" number. imaginary numbers are no more fictitious that negatives, for example.

Foxpaw: Oh. Well, what I meant was real as in reality. As far as I can see, imaginary numbers aren't really numbers, just a notation that represents some equation or condition. I don't see any way that they could be used directly for any sort of application without being converted back to the real number system first.

Tarquin: That could be said of all numbers. Think of what "-1" means. The problem seems to be that you're not really sure what you mean, and neither am I. There is nothing 'made up' about i, at least no more than any other number.

Foxpaw: Well, a real number like -1 can be manipulated. Though in theory an imaginary number can be manipulated too, the result will be undefined, so really an imaginary number is just representing something for the sake of representing it in a different form, since once it's there you can't do anything with it.

Tarquin: What do you mean by 'manipulated'? And what do you mean by 'undefined'? You're not making any sense. Are you trolling?

Foxpaw: No, I'm not trolling, I'm just saying, as per the point that was made by Dirk Fist, that I think complex numbers are an excessively overcomplicated method that violate existing rules of mathematics, and as such I don't think that they can be understood properly. Certainately, a person could use them for stuff, but I don't think that makes them a valid mathematical construct.

Tarquin: ok. But 1) they are not complicated b) they don't violate any rules 3) they can be understoof properly 4) there really isn't any such thing as an invalid mathematical construct. I think we'd better leave this discussion at that, because I think you are confusing mathematics with arithmetic.

Dirk Fist:

          a=b         ; pick ANY two equal numbers
        a*a=a*b       ; multiply both sides by a 
    a*a-b*b=a*b-b*b   ; subtract b squared from both sides
 (a+b)(a-b)=b(a-b)    ; factor both sides 
       a+b =b         ; remove common factor 
       b+b =b         ; replace a with b 
         2 =1         ; what happens if b==1

there is no such thing as an invalid mathematical construct.

DeepQantas: (a-b) equals zero. Hasn't anyone told you what happens when you divide something with zero? ;)

Dirk Fist: I think that was my point ;D, division by zero is inherently undefined you can't fix it by saying they're is some magic number K such that K=1/0

Now can you tell me the flaw in Godel's theory ? (Hint : try his reasoning on the set of 3 digit numbers)

DeepQantas: I would, but I wasn't even in the bar where Godel was theorizing... :P

Oh, about those imaginary numbers. The point isn't about just blindly counting square roots of negative numbers. That's just a nifty bonus that comes from the fact that i*i happened to be -1... I also understand that imaginary numbers were developed for, and have a real world use in some high level electronis stuff.

Anyone remember about this more specifically?

Bob_The_Beheader: I'm assuming you ment "electronics." Maybe complex numbers are used in analog electronics, Like for radios and such, but I've never seen it. I'm positive they arn't used in digital electronics.

Tarquin: When I said 'construct' I assumed foxpaw meant it the sense of 'concept', not 'procedure'.

Wormbo: Complex numbers are just a handy extension of the set of real numbers make certain things easier. Hey, take a kid who just learned how to add numbers and tell him or her that you know a number that can be added to e.g. 5 and the result will be less than 5. It's basically the same thing. You simply didn't know the whole thing. In fact, you'll never know the whole thing. Just ook at quaternions. ;)

Foxpaw: Well, I think that agrees with Dirk Fists original comment - the child in question clearly doesn't understand addition, he or she has only learned a "recipe" for the addition of numbers - in this case an incomplete one.

TwelveBaud: I know what 2D vectors are. I know what trigonometry is as related to periodic graphs, triangles, and a unit circle. E.g. sine, cosine, tangent. This is after I've taken all math courses offered in my school system prior to Calc BC. Including the programming and CS ones. So why is it I still don't know how to to any sort of that stuff in UT, even after trying to find the wiki page?

Foxpaw: You might find what you're looking for on Vector or UnrealScript Vector Maths.

Dirk Fist: On the subject of complex numbers I don't understand em. And I wonder if anyone else does either lets take a simple equation which is used throwout vector math X*X + Y*Y = R*R the equation of a circle now lets say that R*R = -5 what shape is it now? In how many dimensions ? Does equality have meaning for complex numbers ? (ie R*R=B*B for multiple values B which are demonstrably different ?) Whats happens when R*R = i ? Square root comes from the definition of area, a negative area would be a hole, saying that the width of the a square hole is a magnitude perpendicular to normal numbers seems unnatural to me.

Wormbo: Don't mix it up. The definitions e.g. for square root have been extended for complex numbers because it was neccessary. Don't try to imagine objects with a complex width or something, that will only cause futher confusion.

Tarquin: Thanks Wormbo :) Good answer. In fact, "Square root" DOESN'T come from the definition of area – that's engineer talk. Area just HAPPENS to nicely fit with squares and square roots.

Dirk Fist: As far as I know the first use of square roots as a concept is the pythagorean theorium Hence the definition of square root does come from the definition of area. As far as complex width or other quantities, you say the definition was extended because it was neccessary, therefore there are real world properties for which these numbers apply. It is also obvious that rather than answer the question, you have responded by essentially saying that it cannot be understood.

Tarquin: Again, don't confuse the application of maths to the real world with the abstract nature of maths. The notion of area may have originally inspired the notion of multiplication, but not necessarilly. Multiplication is just repeated addition.

Dirk Fist: I'm not confusing the application of maths with the abstraction. My Question is NOT how do I use complex numbers, there are plenty of formalulae out there for the multiplication, division etc. of complex numbers. But so far no one here has demonstrated an understanding of them in the abstract, Or for that matter has shown a need for them. As far as I can tell they are essentially a thought experiment that has gotten out of hand. Another non-euclidean method of handling negative roots is the fact that a square root has indeterminate sign (hence ± in front of it) therefore it is equally valid to say that the square of a value with indeterminate sign has indeterminate sign. Under this interpretation the square root of -1 = ±1.

Tarquin: Ok, Dirk and Foxpaw, you both need to understand something: ALL of maths is a "thought experiment". It is a purely logical discipline. It often happens to have useful applications. Until you can accept this fact, things such as complex numebrs will indeed seem incomprehensible to you. And no, it is not "equalyl valid" to say a square has an inderterminate sign. That is completely wrong.

Wormbo: I'd like to add that complex numbers have quite some very useful applications as well. There are cases where calculations with real numbers would actually be much more complex than calculations with complex numbers. (Or something... o_O)

Tarquin: yup, things like residue integration. Also, complex numbers are used to represent stuff to do with quantum particules, IIRC. If you imagine real numbers as a line, and complex numbers as a plane, it just means you have more "elbow room" to do things in. :D

Mychaeel: Indeed, quantum mechanics would be unthinkable without complex numbers – and without quantum mechanics, modern semiconductor physics wouldn't be thinkable, and without modern semiconductor physics, none of us would be able to discuss this matter on the Unreal Wiki...

Dirk Fist: Since ALL maths is nothing more than a thought experiment then viewing roots as having indeterminate sign IS equally valid. Much like Non-euclidean geometry, in which some of the 'LAWS' are assumed to be wrong and the resulting geometries are found to be equally valid, with real world applications. As far as extending numbers to multiple dimensions that's what vectors are for, also since in the end complex numbers are ALWAYS represented as pairs of real numbers ANY application of complex numbers can be accomplished EQUALLY well with real numbers. And still no one can say what the shape of X*X + Y*Y = -5 is ? Or how many dimensions that shape would occupy ?

Tarquin: Dirk, you still don't get it. Complex numbers extend numbers because parts of the numbers system are "missing" until you put them in: the real numbers are not complete, exactly because -1 has no square root. The notion of complex numbers follows on from the basic axioms of number theory. You're right about non-euclidean geometry, but you're not really putting things together properly: to avoid having complex numbers, you'd need to make changes at a much lower level. And complex numbers are "sort of" like vectors in one way, but really, they're not at all. Vectors don't solve problems about numbers, they are a layer on top of them. Now I could really blow your mind and tell you that you can have vectors defined over complex numbers.... :D I suggest you go and learn more about the subject before you generalize things you don't seem to fully understand. Frankly, you're bugging me, you're being n00bish and you're bordering on trolling. (And X*X + Y*Y = -5 is a 4-dimensional shape, if you're defining X and Y to be in the domain of complex numbers. 4-dimensional shapes are useful, don't knock em.)

Ironblayde: Wow, I just found this page for the first time. One hell of a rant. I just want to suggest to Dirk, that talking about complex numbers as being distinct from real numbers isn't really accurate. Complex numbers aren't a completely separate entity, but a generalization. They constitute a larger set of numbers which includes the real numbers as a subset. (Any real number x is the complex number c = x + 0i.) Saying that complex numbers are useless when we already have real numbers is like saying that rational numbers are useless because we already have integers. Also your analogy to non-Euclidean geometries isn't really appropriate either. Non-Euclidean geometries arise from replacing Euclid's parallel postulate with a slightly different version... but that postulate (that given a line L and a point P not on L, there exists exactly one line through P parallel to L) is a statement that cannot be proven. Replacing such a thing with a different assumption is a little different than just redefining a well-established term like a square root to mean what you want it to mean.

On the original topic (as if anyone remembers the original topic by now :)), I agree completely. I'm new to UnrealEd so I haven't seen people making the particular comments Tarquin referred to, but I've seen plenty of people new to game programming in general say similar things. I wish I had a dollar for every time I've tried and failed to talk a would-be hobbyist programmer out of trying to code a 3D engine when he doesn't even know what a pointer is. :rolleyes: Too many people out there worry so much about expanding the breadth of their knowledge as quickly as possible that they forget to be concerned with the depth of what they know, and then they're surprised when the whole pile collapses at the first sign of trouble.

Dirk Fist: If you will refer back you will see I never claimed to understand them. Sorry for being Noobish. On the Quaternion page quaternions are described as 4 dimensional complex numbers with two additional roots for -1 (j and k). Additionally it states that the multiplication of two quaternions is the combination of the rotations specified by the quaternions. So how do you meaningfully multiply i*j, i*k, j*k ? It is obvious that i,j and k are perpendicular (otherwise they would disappear in the sum).

Ironblayde: For multiplying the three imaginary units, i*j = -j*i = k, j*k = -k*j = i, k*i = -i*k = j. So what you said was right; for example, if you think about i, j, and k being unit vectors along the x, y, and z axes, respectively, their cross products evaluate as above.

Quaternions are a great application of complex numbers that are, as far as I know, used pretty often in computer graphics. In addition to not suffering from the problem of gimbal lock as the aforementioned page points out, they're also well-suited for interpolating between two orientations, e.g. getting a camera to follow a smooth path.

Dirk Fist: One of the things that bugs me though is that if this was a four component vector you would still have a cross product without the special treatment for the real component. It is interesting that the cross product of parallel vectors is zero (all terms cancel out) so using vector rules i*i = 0

Tarquin: remember: vectors and complex numbers are not at all the same! Vector are on top of numbers: they are objects that can be multiplied by numbers. Complex numbers are numbers extended to a larger space. There are some similarities (depending on hos you look at them), but for things like multiplication and products, it does not help at ALL to try to compare them.

Dirk Fist: Actually complex numbers are just as much on top of numbers as vectors. Since the alternative is that X*X + Y*Y = -5 is an equation in two dimensions (X,Y) where the dimensions just happen to be two dimensional. Also Wikipedia:complex number lists complex numbers as a special case matrices which is a special case of Wikipedia:Linear algebra

EntropicLqd: Except that in the example above it would actually be (a + bi) * (a + bi) + (d + ei) * (d + ei) (unless you prefer using j I guess).

Tarquin: Dirk, the notion of vector space can be applied to many things. You can choose to write negative numbers as an ordered pair of positives (a,b) with b > a if you like – that makes negative numbers vectors over the positives (to a certain extent – the axioms fail because it's not a field). Stop thinking of vectors as a physical concept; that is only one aplication of them. A vector is an object that you can multiply by a number: that's what I mean by vectors being "over" numbers. Many things can be considered as vectors, not just spatial vectors used in applied maths. The analogy between complex numbers and vectors breaks down when you consider multiplicaiton. At this point, you have to think of complex numbers as just an enlargement of numbers rather than sitting over them.

Dirk Fist: X*X + Y*Y = -5 is an equation in two unkowns it only becomes four unkowns if you CONVERT the complex numbers to pairs of ordinary numbers in which case it becomes the equation a*a+2*a*b*i-b*b+d*d+2*e*d*i-e*e = -5 which can be seperated into the pair of equations (a*a+d*d) - (b*b+e*e) = -5 and a*b+e*d = 0 now at this point a, b,d or e could be complex, which makes the dimensions of this equation potentially infinite.

Tarquin: WHAT??? You can't do that! When you decompose a complex # into two reals, they are REALs. You can't then say "oh, they might be complex". Come on. It's stuff like this that makes me think you're just trolling. If you're this confused about how maths works, go ask a teacher or get a book. You could go read Wikipedia:Fundamental theorem of algebra but it'll probably worry yyou even more ... :D

Dirk Fist: So your saying that once you decompose them into reals the square root of -1 no longer has a solution ?

Darwedu: No. Complex numbers don't stop existing, but you know a,b,d and e are NOT complex. You divided the complex equation into two real equations, and both real equations DON'T have complex coefficients.

Tarquin: Go read something like and STOP TROLLING, Dirk.

Mortal Monkey: So is ±5 != 5 then?

AlphaOne: ±5 is two numbers as in the root of x^2=25. It can also bea range of numbers, which is used in error/precision notation.

Mortal Monkey: An example:

Let's say X = 5². We would then know that sqrt(X) = 5, not ±5, because 5 is positive.
Now let's also assume X = Z². We don't know wether Z is positive or negative, therefore sqrt(X) = ±Z.
Now what happens if someone else later tells us that Z = 5?
5 = sqrt(X) = ±5

Foxpaw: I don't think that SQRT(5²) is 5. To my knowledge, the "solution" would be the complete set of numbers that satisfy the equation. So it would still be ±5. Or so says my Calculus professor.

Tarquin: "square root" is a 2-valued function, so yes, the answer is ±5, or just "5 and -5". But "SQRT" in computing is by convention "the positive of the two square roots", so it's just 5. Likewise the root sign – that also means the positive one, which is why you have to write ±√x in formalae to mean both roots. See Wikipedia:square root.

Mortal Monkey: You are, ofcourse, both correct. Therefore, It is my conclusion that you cannot use common sense in mathmatics.

PS: My connection seems to be acting up, wikipedia keeps giving me 404s. Anyway, how does a power function work? Because (±5)² does not produce {25, 25}, does it?

Foxpaw: I believe that it does, though since one of the 25s is redundant it could be reduced to just 25. Though I think that if it were ±5 cubed, the solution set would be ±125

Tarquin: "±5" isn't a number you can then do further calculations, without keeping in mind that you're really dealing with two possibilities. Do the stupid questions never cease?

Mortal Monkey: Is the moon made of cheese?

WheatPuppet: I'm really tempted to add a "Refactor_Me" to the bottom of the page. Don't make me do it! ;)

Tarquin: Please do. The whole complex number debate just irritates me. Wipe it!

dataangel: Dude, it gets worse. It's not necessarily that these people didn't pay attention in math. In my trig class all we learned about matrices was that a^-1*b can gives you a solution to a system of 3 equations. That's as deep as it ever got, and that's still all I know (although I'm learning). But it can get way worse. Highschool math teachers are often seriously lacking.

Recondite Lol, makes me feel like a failed geek. heh. I grew up in the deep deep south, math education was horrible. Noone ever really explained what f(x) meant in reasonable terms country kids could grok (i still scored a 710 math on SAT, hooray for standardized testing)–but i honestly suck with math either naturally or due to horrible educational conditioning. i dont do vector math or matrices, took one discrete class in college, and it hasnt been high on my priority list to fit math into my skull. that being said, i'm not gonna go messing around with SVG or unreal vector math until i have to, i'm sure i'll get by ok when i do(with a bit of head banging), but it certainly won't be my cup o tea.

Tarquin: I have an idea... perhaps WikiBooks has something on vector maths. If not, perhaps some of us could start something!

dataangel: I'd definitely be willing to help. [1] As you can see, the trig book is seriously lacking, especially when it comes to vectors. Although I'm sure after a certain point vectors becomes its own field of study.

Wormbo: Whatever you are doing when editing pages, please do it in the browser or a plain text editor. You are inserting weird characters into pages. o_O

dataangel: Huh? Post a screeny so I can see. I'm typing this straight into Firefox 0.9.2. Should be straight plain text. Oh.... come to think of it, there seems to be a problem with the connection between Qwest customers and – sometimes the pages I get from the main site and the forums show up garbled. But strangely not on the wiki. Perhaps for the wiki it's backwards? :P Read:


Wormbo: Category:Legacy Text Mangling Alert again. I took a screenshot of your changes so you believe me:


Mortal Monkey: When I was first introduced to the concept of wiki, I imagined something like this was bound to to happen a lot more often.

Bob_The_Beheader: Whao! Cool yourselves people! Bigass math argument alert! Bigass math argument alert!


Note the date on the revision prior to yours.

EricBlade: Wow, I never saw this page before :D In my school system, Trig was 11th or 12th grade material, and vectors were things that you didn't get until college. I also managed to fail Trig twice in high school, and again in my one year in college, I think because simply put, no one had at all a convincing reason as to what one would ever actually use the stuff for. Since I've been thinking about that over the last couple weeks, as I've been learning some of the more useful vector functions, I actually called my high school math teacher, and asked him to give me an example where in the real world, someone would actually use Trig .. the only thing he could come up with was rocketry and aeronautics. On that note, I still haven't seen where I would use Trig anywhere in here (although that might be because I don't -know- trig), but I am learning the ways of using vectors. yay! "Oh no, not another learning experience!"

Mychaeel: The more you know, the higher are the chances that you'll be equipped to solve your actual, everyday problems with a mental tool that actually suits the problem; those are probably the problems you'd otherwise laboriously have to "work around" without even noticing that you're "working around" something ("My, that's a complicated problem!") by having only less-qualified tools at your disposal. I'm not surprised the teacher couldn't come up with a "real-life example"; that's like asking where one might ever see the color "BlanchedAlmond" [3] used on a website.

It's probably possible to build a (metaphorical) house with only a hammer ("If the only tool you have is a hammer, then everything looks like a nail" [4]), but it would certainly cost you a disproportionate amount of effort, time, labor and perhaps even money, and you might end up living in a crooked hut because you just couldn't think of a way to tackle a problem others would find simple and straightforward to solve with the right tools.

Tgusagalpa: I start trig next year, but I went ahead and practiced using it within unreal script. If I ever have a problem, I will go to the library and get a book. If you paid attention in algebra and geometry, then trig is algebra + geometry.

MythOpus: I just finished High School a little over a month ago and I've come out with a few things to discuss, I suppose.

I've been learning Trignometry ever since Grade 1, just not all at once. I feel as far as maths (and probably even sciences go) they really neglect its complexity for anyone under College level maths. Because I've been working with UnrealScript since my later years in Elementary (I think!?) I've been blessed with the knowledge of what a matrix is, what a vector is and most of the terminology involved. Matrices are only ever touched in one math class for about 2 weeks to a month and they rarely go in-depth as to why things are the way they are. From grade 9 and on I've tried to ask a lot of questions, at my classmates dismay, that tried to give clarity to those deeper issues but the teachers tries extremely hard to not give me a very good answer for fear of confusing the class or me or perhaps they never even had a good way to explain it because it would require a University level of math history. They stay away from the complex issues surrounding math and its applications and while in the general scheme of things it lets the majority who apply themselves get good grades and it even lets some of the people who don't apply themselves at all get decent grades. Anyways, the point is I don't think we put much faith in the young in understanding anything remotely complex. In Calculus and C30, I wanted to know how a lot of things would work with the actual addition of the Z-axis. In, I believe B30, some people didn't even know that there was a Z-axis involved and a question that I asked the teacher he actually just told me to come talk to him after class because he said it would throw the entire class off. In Grade 4, we learned Multiplication. What we actually did was memorize a multiplication chart and while it probably did us some good to know what things multiplied to instead of understand the actual theory behind it, I feel it would have prepared us more if he did less memorizing and more learning. I understand that its sometimes good to generalize and dumb things down to ensure that everyone understands it, and even some people who don't have the brain for mathematics and "out of bounds" thinking struggle with the most basic stuff, I feel we should more than just introduce certain aspects of math to students.

Don't get me wrong there are 'special' programs for these 'higher' kinds of math such as the International Baccelaureate (or however you spell it) programs but those are seen as programs only for "smart" people. What I saw more that came out that program was people who were I'd hate to say it, either extremely snobby thinking that they are better than anyone who isn't in the program, or were extremely helpful (and also confusing to those being helped on some occasions) to people in need. The snobby aspect was seen mostly though and I think its needless. The math that they are taught isn't too far over the math that everyone else took and if one was confused with what they were being taught, it would only be because they didn't go indepth in the topics that they covered through Elementary and High School. My calculus teacher was an IB teacher himself and he taught us pretty much the same way he did his IB courses where he would go through a few sheets of paper a bit with us and go through some examples and some questions he would answer about as he was teaching us but a lot of the time if he felt the answer took some class out he would get us to come him, but the point is with that is that the questions and answer were usually not above the class and he made time to answer these questions. We were left to figure things out pretty much on our own instead of having our had held the entire way through our learning experience. Some things I said probably overlapped negatively with other things I said but this is more of a rant so my thoughts on it are probably not too well thought out.

When I started to work a bit with the actual vectors in UScript I did a lot of guesswork even after reading a little material on the subject. I understand that it isn't the job of Elementary or High School teachers to prepare their students for 3d object manipulation and other such things but, it would have been nice to learn about geometry in not 2 but 3 dimensions at least introductorily. Perhaps they should cover other advanced topics very briefly in math/science classes (we got the 2 dimensions treatment in Physics 20 and 30...) which will lead up to optional 'advanced' classes such as Calculus that would go over, indepth, those advanced topics. It could just be that UScript vectors are set up wierdly, that I'm not sure about, but it was slightly confusing walking around in the world of vectors for the first time. And rotators... I was FAR too afraid to touch those at that point. And about the arguments about picking up a book and reading it, for at least me, asking a teacher about a good math book for that sort of stuff was like going to... um... A CIA Agent and asking them how to do some of their advanced stuff, whatever that may be, that they do. The teacher hesitated, or laughed, maybe even tried to suggest a book but wasn't really sure they would. I don't think there were (mind you I never REALLY looked) any 'advanced' math books in our library and if we did the terminology used would probably have thrown me off. I even had the privelage of 'helping' my cousin in University for a bit with vectors but didn't turn out too well because her assignments were due faster then I could understand her textbook and work out the questions. The terminology was just so different from what I was used to and the way they worked with Matrices was so 'odd'. Going down to the actual library was sort of out of bounds for me too because the Librarians would most likely not know about that stuff and what books would be great to learn this or that. I wouldn't know where to start. I think thats all I'll say about that for right now. Sorry if it sounds a bit off-topic but after reading a bit of this page I got the urge to write my views on the Educational system with regards to math... which slightly touches on Trignometry and a students understanding of it...