I agree. My personal experience is that courses, systems do not really matter. What matters are good teachers. If a school system is good, then it encourages the talented to become teachers and allows them to do their best.
I give you that one. You cannot have enough of languages (applies to programming languages, too;) ).
"practical skills like woodworking or metalworking?"
Um, they actually teach those things in my country -- in primary schools definitely, and then in higher schools were the children not interested in math and such go.
"Grammar and history are probably more useful than imaginary numbers whatever else you could say about them."
Imaginary numbers are not taught under university (at least in my country), history is not that relevant for most students at all -- they do not make the mental leap from "boring past events" to the current world around them. Exactly the same problem that they have with mathematics.
"Which is fantastic if you're ever likely to go into a math related profession. For everyone else, far less useful."
That is true but I also had to learn a lot of stuff that I never used since -- it was a tradeoff for me, too. But as time progresses, students specialize more and more, so I do not see this as a huge problem. Also, it is quite common that young people do not realize what they really want to do at about their 20th birthday.
"To everyone else it's a waste of time which could be spent far better learning things which might ever be useful to them."
Exactly what? Grammar, history, geography, physics, basketball? Which one of these is important or useful?
In mathematics the basics are not about being directly important. They prepare your mind for the harder stuff. One of the basic things to learn is exactly that there are things that are NOT easily translated into direct day-to-day practice, but this doesn't mean they are useless. Mathematics is all about abstraction and manipulation of symbols.
On the other hand I agree with you that basic math courses need a major overhaul. Probability theory is a must, I do not even understand why they havent included it in the first place.
There is one problem, though. Achieving a really useful level of math needs about 15 years. Now trim the math from basic education and you are harming those who actually want to use it professionally later. It is like piano -- you have to start learning very early to be able to reach the top. While I understand that this increases the pressure on those students who will never use it, but I think that is an acceptable tradeoff.
I'm not saying that everyone in the optimization business is a fool! I do not even know, where did you get this idea that I think Linux kernel developers are Type 2 fools.
My observation basically is that there are just too many programmers who _think_ they are good at optimizing, but in the end they just mess up everything.
And yes, I am a Java programmer _and_ a C programmer. In fact I am working now on a real-time project and correcting the several mistakes the devs made thinking it improves the speed.
Speed is not about less assembly instructions. And I am quite sure that the Linux kernel devs know this.
There are two types of fools: 1. The fools who trust in the optimization skills of the compiler/JIT compiler 2. The fools who trust in their own optimization skills
My personal experience is that Type 1 fools are harmless, you can speed up their code easily. Type 2-s on the other hand do a lot of mess, code in assembly, whatever and still manage to fuck up performance and it is a pain to correct it later. Modern CPU architectures are extremely complex, and different architectures have different characteristics (e.g Atom vs Pentium 4). There are many programmers that used assembly in their college years and think that those skills apply on current systems.
Most of the people don't realize how useful is the theoretical background they receive. They think like "hey, why do we learn about XY, I will never use it in practice" but in reality we DO use lot of these stuff. Theoretical stuff changes your thinking and extends your abstraction capabilities. Your vocabulary grows as well. Just ask any outsider what do they understand when you start talking about technical matters. Maybe you will never use matroids or Galois fields or Laurent series in your life, but you heard about them and you will know where to search if needed. If you don't know the basics, then you cannot search.
It is not just about how much money was actually received from the parent. Just knowing the fact that there are your rich parents to save your ass if you fuck up your business is a big boost. Also, richer kids have greater ego as well, and that helps them.
Awaken my child, and embrace the glory that is your birthright. Know that I am Richard Stallman, the eternal will of the swarm, and that you have been created to serve me.
I just added a comment in a geeky "hey I'm important, too" style, to show that in practice the signal attenuation can be much faster than the simple theoretical model. That shows the 1500m limit in a different light.
In practice that could be way higher than 2 (or sometimes less). From Wikipedia:
"In the study of wireless communications, path loss can be represented by the path loss exponent, whose value is normally in the range of 2 to 4 (where 2 is for propagation in free space, 4 is for relatively lossy environments and for the case of full specular reflection from the earth surface—the so-called flat-earth model). In some environments, such as buildings, stadiums and other indoor environments, the path loss exponent can reach values in the range of 4 to 6. On the other hand, a tunnel may act as a waveguide, resulting in a path loss exponent less than 2."
"The transparent plane's outer skin would be made of a special futuristic type of ceramic. The push of a button would send electricity flowing through the material, making the main body of the plane see-through,"
If a lot of households have weapons, it means that the criminals are more likely to carry a weapon. If the criminals are likely to carry weapons, it means that even more households will acquire a gun, too. Stalemate.
There is a variant on this, when some researchers dig up physics, biology, etc journals, take models/approaches from them and apply them to CS problems. Because in the CS field these results are not really known, the paper is usually considered interesting. Another effect is that while all of the theories are properly referenced (so no plagiarism happens) the reviewers usually assume more work done by the researcher than what actually was done (reviewers rarely read the cited papers).
1. Find a successful researcher R in your field 2. Find a journal/conference J in your field that anonymizies submitters 3. Make a language profile L(R) of researcher R 4. Make a paper P so that the profile L(P) is similar to L(R) 5. Select a subset of citations from R and cite them in P 6. Submit P to J 7. ??? 8. Profit
Agreed. And don't forget that top conferences have a very low acceptance rate therefore bad reviewers have a more damaging effect. If you accept 15-20% of papers then even the smallest bias is dangerous.
I agree. My personal experience is that courses, systems do not really matter. What matters are good teachers. If a school system is good, then it encourages the talented to become teachers and allows them to do their best.
"Most people don't need the math."
Let's be honest. Strictly speaking most people do not need ANY of what they learn in school except reading and writing and basic algebra.
The problem of history, economics and political science is that many of the sources are actually the work of "manipulative talking heads".
"Languages?"
I give you that one. You cannot have enough of languages (applies to programming languages, too ;) ).
"practical skills like woodworking or metalworking?"
Um, they actually teach those things in my country -- in primary schools definitely, and then in higher schools were the children not interested in math and such go.
"Grammar and history are probably more useful than imaginary numbers whatever else you could say about them."
Imaginary numbers are not taught under university (at least in my country), history is not that relevant for most students at all -- they do not make the mental leap from "boring past events" to the current world around them. Exactly the same problem that they have with mathematics.
"Which is fantastic if you're ever likely to go into a math related profession. For everyone else, far less useful."
That is true but I also had to learn a lot of stuff that I never used since -- it was a tradeoff for me, too. But as time progresses, students specialize more and more, so I do not see this as a huge problem. Also, it is quite common that young people do not realize what they really want to do at about their 20th birthday.
"To everyone else it's a waste of time which could be spent far better learning things which might ever be useful to them."
Exactly what? Grammar, history, geography, physics, basketball? Which one of these is important or useful?
In mathematics the basics are not about being directly important. They prepare your mind for the harder stuff. One of the basic things to learn is exactly that there are things that are NOT easily translated into direct day-to-day practice, but this doesn't mean they are useless. Mathematics is all about abstraction and manipulation of symbols.
On the other hand I agree with you that basic math courses need a major overhaul. Probability theory is a must, I do not even understand why they havent included it in the first place.
There is one problem, though. Achieving a really useful level of math needs about 15 years. Now trim the math from basic education and you are harming those who actually want to use it professionally later. It is like piano -- you have to start learning very early to be able to reach the top. While I understand that this increases the pressure on those students who will never use it, but I think that is an acceptable tradeoff.
I'm not saying that everyone in the optimization business is a fool! I do not even know, where did you get this idea that I think Linux kernel developers are Type 2 fools.
My observation basically is that there are just too many programmers who _think_ they are good at optimizing, but in the end they just mess up everything.
And yes, I am a Java programmer _and_ a C programmer. In fact I am working now on a real-time project and correcting the several mistakes the devs made thinking it improves the speed.
Speed is not about less assembly instructions. And I am quite sure that the Linux kernel devs know this.
There are two types of fools:
1. The fools who trust in the optimization skills of the compiler/JIT compiler
2. The fools who trust in their own optimization skills
My personal experience is that Type 1 fools are harmless, you can speed up their code easily. Type 2-s on the other hand do a lot of mess, code in assembly, whatever and still manage to fuck up performance and it is a pain to correct it later. Modern CPU architectures are extremely complex, and different architectures have different characteristics (e.g Atom vs Pentium 4). There are many programmers that used assembly in their college years and think that those skills apply on current systems.
And new infection vectors for trojans...
"[blink]You are infected!!! [/blink] Your friend recommends this virus scanner".
Try Miss October
Most of the people don't realize how useful is the theoretical background they receive. They think like "hey, why do we learn about XY, I will never use it in practice" but in reality we DO use lot of these stuff. Theoretical stuff changes your thinking and extends your abstraction capabilities. Your vocabulary grows as well. Just ask any outsider what do they understand when you start talking about technical matters. Maybe you will never use matroids or Galois fields or Laurent series in your life, but you heard about them and you will know where to search if needed. If you don't know the basics, then you cannot search.
It is not just about how much money was actually received from the parent. Just knowing the fact that there are your rich parents to save your ass if you fuck up your business is a big boost. Also, richer kids have greater ego as well, and that helps them.
Awaken my child, and embrace the glory that is your birthright.
Know that I am Richard Stallman, the eternal will of the swarm,
and that you have been created to serve me.
Serve the Hive!
"The free space loss exponent is 2"
Of course it is, I haven't denied that :)
I just added a comment in a geeky "hey I'm important, too" style, to show that in practice the signal attenuation can be much faster than the simple theoretical model. That shows the 1500m limit in a different light.
In practice that could be way higher than 2 (or sometimes less). From Wikipedia:
"In the study of wireless communications, path loss can be represented by the path loss exponent, whose value is normally in the range of 2 to 4 (where 2 is for propagation in free space, 4 is for relatively lossy environments and for the case of full specular reflection from the earth surface—the so-called flat-earth model). In some environments, such as buildings, stadiums and other indoor environments, the path loss exponent can reach values in the range of 4 to 6. On the other hand, a tunnel may act as a waveguide, resulting in a path loss exponent less than 2."
It is funny that Slashdot swallows hungarian characters: "Él" is certainly not what you wanted to write :)
Yeah, and his name is Él(Lowercase O-double acute), not Elo, but I understand that "hungarian umlauts" causes significant cognitive stress :)
Even for Slashdot it seems...
They exactly plan something like that:
"The transparent plane's outer skin would be made of a special futuristic type of ceramic. The push of a button would send electricity flowing through the material, making the main body of the plane see-through,"
This is a vicious circle:
If a lot of households have weapons, it means that the criminals are more likely to carry a weapon. If the criminals are likely to carry weapons, it means that even more households will acquire a gun, too. Stalemate.
How do you start disarmament?
Isn't Git Linus' software?
There is a variant on this, when some researchers dig up physics, biology, etc journals, take models/approaches from them and apply them to CS problems. Because in the CS field these results are not really known, the paper is usually considered interesting. Another effect is that while all of the theories are properly referenced (so no plagiarism happens) the reviewers usually assume more work done by the researcher than what actually was done (reviewers rarely read the cited papers).
Wow, this gave me an idea! Researcher mimicry :)
1. Find a successful researcher R in your field
2. Find a journal/conference J in your field that anonymizies submitters
3. Make a language profile L(R) of researcher R
4. Make a paper P so that the profile L(P) is similar to L(R)
5. Select a subset of citations from R and cite them in P
6. Submit P to J
7. ???
8. Profit
Agreed. And don't forget that top conferences have a very low acceptance rate therefore bad reviewers have a more damaging effect. If you accept 15-20% of papers then even the smallest bias is dangerous.
Then it's even worse. This big hype means failure will be bigger, too.
I am really interested in this project, I am just afraid that this hype will backfire.