Jump to content


Senior Members
  • Posts

  • Joined

  • Last visited

About Ndi

  • Birthday 07/25/1979

Contact Methods

  • Website URL


  • Baryon

Ndi's Achievements


Baryon (4/13)



  1. Math in CS/Programming is just like having the right tools for the job. You can do it both ways, you can fix it with duct tape, or you can use a titanium hinge that will outlast the planet. Both are solutions, except one is better and doesn't require constant maintenance. A good understanding of the math behind a problem will allow you to understand, solve and optimize your solution, and only code in the minimal, slim, elegant solution. Not having a good grasp on Math will keep you from putting down elegant, simple, fast solutions and making the computer do more work, with complex code. This applies to all secondary specializations. Having a good grasp of economics means your accounting software will have a nice, simple interface, all the needed tools and will be slim and fast. Having no idea, you rely on instructions from someone who doesn't know how computers work. Generally, the result will be messy and complex; and complex is buggy. KISS isn't just a band. So, to answer your question, yes, it matters that you can understand and solve the problem BEFORE you write the code. The computer is there to automate the solution, not to find it. You will only be as good as the worst of your grades in a field. You can be 10/10 programmer, but if you only rate as 3/10 in engineering, your engineering software won't ever grade over 3 or 4, even with help. An excellent engineer with mediocre CS skills will write an ugly program everyone will use. So, if you're not good with math, pick something else and go with that. There are plenty issues that need solving, not all require a deep understanding of calculus. You WILL need the basics. Here's a basic example: There are 20 people in the room. They all need to say good bye to each other, and shake hands. How many handshakes? No math: Readln('how many people?', X); cnt := 0; for i := 1 to X do for j := 1 to X do if j>i then inc(cnt); // 1 shakes hands with all, then 2 with 3-20, then 3 with 4-20. Writeln(cnt); Math: // Combination problem; C=X(X-1)/2 Readln('how many people?', X); Writeln(X*(X-1)/2); For 20 people, nobody can tell the difference. Now, if there are one million people in the room, you get to do 10^14 loops, I do 1. You need a 64 bit machine, with a 64 bit compiler, for storing the counter, whereas I don't. And finally, the first code does (at minimum) 2 INC and 2 CMP/JZ per cycle, plus the counter, that's 5 cycles, and that's 5*10^14. At 3 GHz, that takes 166 seconds (way more in real life). Mine is instant. Better yet, knowing that 2 consecutive numbers have at least one even number, the result of the multiplication is always integer, even, so a SHR (>>) is in order. If your code is designed to run on an (e.g.) ATMEL, that tidbit is the difference between the small and the large CPU, because division will ramp up your code from 400 bytes to 3.7K. That means forever barred from using the small, efficient CPU that sleeps at a microAmp. Mine will run 2 years from a battery, yours will do 2 weeks. Even on a Core i7, optimized to the teeth, division is ~115 cycles, INT division is 26 cycles, SHR is 1. Point is, it does me no good to know SHR is faster unless I know the math behind that tells me that X*(X-1) is always even. Handling a problem poorly will forever bar you from high end algorithms, like image matching, sound analysis, media, hardware development, any application where every bit counts (like devices/automation) and, not by chance, the best paid positions. Can you be a surgeon without a scalpel? Yes. Will you be doing any brain surgery? Not likely. I've celebrated my 20th year as a programmer, and know many successful people in the IT industry. Of those, only one is a pure, dedicated degree, CS graduate. Everyone else has a different specialization, ranging from accountant, to aeronautical engineer, to power distribution. Most if not all can solve differential equations unaided. Most have a good grasp of physics, electronics, logic. Also as a side note, not all of them had these while in school, so don't sweat it. You wanted advice from a good programmer with mediocre math (hi!). Here it is: get familiar with at least one other industry branch, preferably a lucrative one. It's not all math. You can have a great career with mediocre math. You cannot have one with mediocre everything.
  2. 1. On another planet in sci-fi, yes, BUT: You commit to new laws of physics, all materials affected by the field would behave very differently. And that's a lot of materials. Water included. Water is in organisms. Very complicated. A field that powerful will likely make people hover (more likely, slam into the ground). 2. Yes, BUT: Magnetic forces vary a LOT with distance. For every meter in length you'll probably have to add another zero to the power and, frankly, by 5 meters you'll probably be better off just putting an engine on it. 3. Not likely. Assuming a model where these rocks are part of the outer crust (otherwise it'd just be silly zeroes everywhere), then the crust would need to be smooth and aligned for this to work (otherwise you'd wobble around like a car on a bad road). If it's smooth then you will be aligned to it or unstable (depending on field alignment) unless aided by aerodynamics. You could lose altitude with wings attached, and thus move forward, then regain it. The power requirements, however, would be enormous, as lost altitude does not put any more gas in your tank - you'd have to bench-press the ship. So, no, basically by the time you put all this together you kill so much of physics you'll have trouble explaining how plants don't jump from the ground. If you want to work with magnetism, go small distances, it will make it workable. If you want giant ships, I suggest you go with magic density atmosphere. A reasonable engine that takes advantage of this soup will be able to hover relatively easily, and copy the aerodynamics from blimps and subs. If you just want cool-sounding sci-fi stuff, make the atmosphere magnetic-responsive. You could use a powerful field inside a static engine to compress the atmosphere to a tiny fraction of its size, lure it into another, lower part of the engine, and let it rip. It would look like a static fan, and would make a killer cover - the engines would look like huge wedding rings, with plasma inside from the heat generated by the compression. Add some lightning for the power surging from the superconducting coils and you're set. Google Images "no blades fan"
  3. Well, matter has since been tested by the Mythbusters (Season 8 ep 07 - Mythssion Control, aired May 5). Small scale test and full crash, nicely done. Turns out physics still works, the crash was equivalent to single speed, not double. Sorry for popping the question and disappearing, the forum was supposed to notify by mail? Huh. I must've messed it up.
  4. Why would I change reference frames? Ground seems like a good idea. Also, how would that change anything? If my reference would be a satellite in orbit, one car would go 10100 and the other 9900. Resulting acceleration during impact would still be the same? Also, how does crumple zones change anything (in the context of the original question)? Both cars crumple the same, so the net effect on the passengers regarding peak acceleration is the same in both cases? @swansont: Me or them?
  5. Yeah those are mine. Just stuff them with whatever it is you have in your glass and send them over.
  6. If it's a conservation of energy, then it should be difference squared. I assume energy is divided directly by masses, so the difference is speed should be relatively simple?
  7. Still, Private Messages: Unread 0, Total 1. I'm using 1 one message. Notification's gone, however, it's much better now
  8. Hi. I have this nagging issue with people's physics in all kinds of movies and shows and even on the street in which they claim that if you have a frontal collision between two cars, the speeds add up. Basically, there's car A, going 100m/s that way --> and car B, going 100m/s that way <--. Frontal ideal collision. I hear people say that it's worse than hitting a wall (ideal, concrete, immovable wall), because the speeds add up, essentially people actually smash at 200m/s. I think they're nuts. My problem with this is: Car a is in a crash. Essentially, all its energy is converted into molten crash juice (deformation, mostly), equal to speed difference (100 to 0, 100), divided by stopping time (let's assume 10 ms), basically this means that one gets a negative deceleration of 100m/s in 0.01s, which is -what- some 1000G? Math is unimportant. However, the same thing happens to car B, assuming identical cars. It also goes from 100 to 0 in the same space and time, basically, there is no difference between an impact of 100m/s to a wall or to another car coming at you at the same speed the wrong way, the acceleration is the same (assuming that's what kills you). Now, if car A throws a rubber ball out the window, the ball goes from 100m/s to -100m/s, effectively adding the speeds and thus the impact (divided by mass ratio). Am I wrong? Is some energy transferred to the wall I'm not adding up?
  9. Sorta Inbox contains 0 messages. You have 1 messages stored, of a total of ... I now have Inbox (0), Sentbox(0), but usage is 1. Can't access it though. Oh, and, I also have one notification, which is kind of bugging TBH.
  10. Hi. I have a PM stuck in my Inbox (don't remember if I had one and got corrupted or it's new). It has no subject, no sender, no nothing. Date is 01-01-1970 (Unix 0 IIRC) With no subject it's unclickable and attempting to get the message via txt or csv gives me an error page. I haven't tried deleting it in case anyone wants to investigate. Error page contents follow: ------------------- Warning: Invalid argument supplied for foreach() in [path]/private.php on line 849 Warning: Cannot modify header information - headers already sent by (output started at [path]/includes/class_core.php:3254) in [path]/includes/functions_file.php on line 147 Warning: Cannot modify header information - headers already sent by (output started at [path]/includes/class_core.php:3254) in [path]/includes/functions_file.php on line 148 Warning: Cannot modify header information - headers already sent by (output started at [path]/includes/class_core.php:3254) in [path]/includes/functions_file.php on line 149 Warning: Cannot modify header information - headers already sent by (output started at [path]/includes/class_core.php:3254) in [path]/includes/functions_file.php on line 150 Warning: Cannot modify header information - headers already sent by (output started at [path]/includes/class_core.php:3254) in [path]/includes/functions_file.php on line 151 Warning: Cannot modify header information - headers already sent by (output started at [path]/includes/class_core.php:3254) in [path]/includes/functions_file.php on line 152 Date,Folder,Title,From,To,Message "1970-01-01 03:00","Inbox","","","Ndi",""
  11. Hum. Well, since nobody tackled this, I'll give it a try. I was always taught to take the easy path, so every time I see a pressure issue i simplify (to volume) - it can be added, unlike pressure. Oh, and, also, I'll ignore imperial units since they make math too odd. I didn't even know physics was taught in Imperial. Your equations must be mighty odd. Anyway. a) If one tank, A, has 100 m3 and one bar, that's 100 m3 of air at normal pressure (1). You can multiply by density to get actual air in grams but we'll skip that. Now, should we cram twice the air in there, we get twice the pressure. So at 2 bar, we have 200 m3 of air in an 100 m3 enclosure. When you open the valve, you make the two tanks a single tank. Thus, sum of volumes over sum of contents. A is 100 m3 at 2 bar (200), the second is 10 m3 at 20 bar (200). So now you have 400 m3 of air on 110 m3, for a nice 3.63 bar. You see it's a lot closer to the large tank, which makes sense. b) Again, volume. To push a 100 m3 from 1 to 2 bar, you need 100 m3 of air at standard pressure. That means that the first tube will lose that, meaning you now have 100 m3 at 10 m3 tank (pressure = 10), the new one will have 200 on 100 (pressure 2). c) well, you get the point. Get actual quantity, do the math, re-apply into original. Note, however, that none of this will work in real life as it should. Even in the classical interpretation of _ideal_ volumes, PV=k, and your tanks have different "k". Also, upon compression collisions go up and heat starts to really mess things up growing a tanks of air into a branch of physics. The above is an approximation of 1880's approximation of gases. Actual graphs are in 3d and quite curved, and that's ideals only. But since you said you are now discovering Boyle's, I assume you just want a feel at the basics. Don't quote me on anything.
  12. My analogy is valid. In the year 1012, some experiments were outside of what current physics could explain. So a possible interpretation would be "God did it". While fine at the time, we have now learned that "God did it" is unfalsifiable, meaning you can throw anything to God and nobody can tell you it's false. (since then, people redefine God's intervention to fit this). You seem to give interpretations and models some power. They have NONE. NONE. I see a tree and my interpretation is it was beamed by Scotty. It's mine, I believe in it and I may or may not be a crackpot (*). If I find more people to believe this load then what I have is religion not truth. *) This one of the straw men you throw along with the other fallacies. What you do here is make an unjustified parallel between being wrong and being a crackpot. I can be sane AND wrong. E.g. I ask if you took my lighter and you reply "I'm not a thief! You think I'm a thief?". You might have taken it by mistake, that means that you are not a thief AND you have my lighter. Also, I screamed it once and I'll scream it again. Appeal to authority. Just because X believes something _has_zero_bearing_on_reality_ or truth. The summed up opinion of all the humanity equals zero. Unless there's proof, a theory, falsifiable text, it means nothing. If Michael Jordan thinks I can win against O'Neill in 1-on-1 does NOT make it so. You forget that 90% of the 7 billion believe they were put here by deity? (or did at some point). Did that make a difference? If Einstein said he believed in the flying spaghetti monster, would that make it real? And don't fall in the trap of "more" true. Making it believable doesn't make it more true. See, there's the problem. You confer this interpretation thing power. It has none. Someone sees some light in the window. Their interpretation is "OMG it's a ghost". The complete sum of all interpretations precisely null. You seem to round off corners of concepts. If a sentence is unfalsifiable then it's unfalsifiable. If someone comes up with something that determines/falsifies it then we were wrong in calling it unfalsifiable. _Unbreakable_ means unbreakable. Actually unbreakable. Don't confuse it with "hard to break" "I can't break it" or "nobody has ever broken one". The former are theoretical concepts, they have sharp corners. Implying something is true means nothing. Tomorrow someone proves if untrue and all your implications are zero. Tomorrow someone proves if true and all your implications are still zero, because it's trube sinceproven, not implied. I mean that the person in a white coat that did the experiment never said that the world blinks when you close your eyes or that the particle knows it's being watched. If he/she did, s/he should have the license removed. I think that someone twisted "it works as if the particle knew" oversimplification for the masses and turned into "there is a bond between our consciousnesses". Sigh. Interpretations explain nothing. Interpretations are imaginary tales based on the facts. We have them because it helps us conceive the future experiments. I see a tree. My interpretation is it's Gods' hands who planted it. Thus I make an interpretation model in which a huge hand plants it. This is falsifiable. How? I wait and see. Later, a new tree grows with zero huge hands. Into the bin it goes. Total value if the interpretation? Zero. The only thing it helped me with is hint at an experiment that will ruin it. I do it. I ruin it. The more I try and don't ruin it, the closer it's assumed to be to the truth. You see, if it's unfalsifiable I can't do an experiment. It's an axe with no blade.
  13. Yes, well, the key difference here is that my ... belief as you put it is a falsifiable theory whereas yours is not. My theory that the equipment/application of experiment was faulty is verifiable, and at some point in the future it WILL be proven right or wrong. This is the difference between tackling a problem and explaining it away. Our theories are nor equivalent. The experimenters? Probably not, I doubt people pushing the borders of science are crackpots, but we are not talking about them, now are we? We discuss several interpretations of the observed experiments. If Newton decided that gravity is mass multiplied by gravitational acceleration, conducts an experiment and makes a (reasonable for classical thinking) theory, then good for him, up in the hall of fame he goes. We should NEVER confuse his experiment with an outside person (the crackpot) who sees gravity as not the apple falling down attracted by earth, but pushed by the tree. Or that claims that if Newton weren't there, the apple would have never fallen, or that apples don't fall unless there's a human there to see it. I scream appeal to authority. -- On a lighter note, maybe I missed it but I don't remember anyone arguing towards the following: In the first experiment, without the observer, the particles form a wave pattern. Is this experiment not observed, even if indirectly? Are the physicists now aware of the particles' behavior and is their consciousness not there in the mix? Sure they don't check EACH particle, but hey, human glory is human glory, I mean, the tree might not fall in the woods if nobody sees it, but we SEE IT in the first experiment - just not directly, but by the effect. When the tree falls, it makes a sound because we hear the air waves it produces. We see it because the light it reflects. These are indirect observations, we don't put a bell under the tree to directly measure the tree. A particle behaving like a wave is a particle observed (that's why we know it's there), it's not the observance that changed, it's the measuring mode. I blame the measuring mode.
  14. And this is where you make your mistake - you ignore evidence and choose to BELIEVE. Look, I wasn't kidding, someone call Occam. If you make a random number generator that yields over-50, then it's busted. Then you do it again, with pre-recorded data that HAS been observed and fixed (some guys in white coats somewhere KNOW what the numbers will be). You again get over-50. My first guess is you blew it. Bug in siftware, bug in generator, you name it. You might not be an experienced person with random numbers but as a 15yr+ programming experience, I'll let you in on a few secrets: a) random number are never random. They are extracted from the decimals of a function with a very long period. Better systems have a recorded set and work with that b) random numbers are repeated if you take the same seed. In PCs and similar implementations, Randomize() skips in the decimal string at current time(). If you set the clock at 1:00:00, 19-06-2009 and call randomize() then Random(3), you get 1. Reset time and call again, it again 1. Not only that, but the sequence restarts. I can write you a program that calls Random() 50.000 times, draws a graph and tomorrow morning when you re-run, it will reproduce exactly. Once little bug in code and you have a shot experiment. c) Random numbers all sum up to zero (or whatever they collapse to). There is no obligation for them to be UNIFORM, though. Perfect random numbers are: 1,1,1,1 ...., 1, -300000. This sequence is random (not determined by a function), averages 0 and it's 300.001 numbers long. Perfect (statistical) string but only works if you take 300.001 samples. Any other subsample and you get skewed results. c.2) As a result of c), if you draw the graph of random sum function RS, with Rs begin RS(x) := RS(x) + Random(1,-1) (or Signum(-100 + Random(200)) if you will), then the function will hover around zero at some point or other. While it WILL go through zero several times and the sum of the values will tend to be zero, any subsection of the function will look full-positive or full-negative because in that section numbers will tend to be negative, but the sum is positive. What I'm trying to say if I didn't put you all to sleep is that (ESPECIALLY WITH HUMAN-PC EXPERIMENTS) these things mean squat unless you do many, many, many permutations. PC Random() will settle statistically after 2^31 extractions(signed 32 bit because Randomize() takes such a number. Anything less and you get positive-exceeded or negative-exceeded results. The problem with humans is that that can only do a few. A thousand is a good guess before they go nuts, and focusing hard wears them out in an hour or so, with a number every 3 seconds that's roughly one thousand. 2^31 is 2 billion. Divided by 1000, it's (we'll say 1024), that 2^21, or 2 million (roughly). Brought into real time, this is the equivalent of someone getting an idea of what you do in a day by observing you for 41.1 milliseconds. This is roughly the time it takes a flash from a photo to light, expose and die off. From a statistical point of view, you are hanging in mid air, frozen. You think people who play lottery, slots, etc don't WANT to win? There's a reason they never made the news, don't win lottery, don't play blackjack, etc. There are games that lean 51-49 for the house. They'd be rich, now wouldn't they?
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.