I agree completely. Trying to calibrate to the specific signals from the human brain is solving the wrong problem. The most awesome capability that our brains have is the ability to adapt. Spend more time on processing the signals in the arm-end for execution, and in sending tactile feedback signals back. It might be nearly impossible for a person to use for a while, but once the brain figures it out and starts rerouting itself, it will seem perfectly natural.
An analogy: if you have a car, and you're trying to build a better road, you should focus on improving the surface of the road, not on a mechanism that reaches up to help push the car along. The "move the car" problem is sufficiently solved that your efforts will probably just get in the way.
I know about extreme programming, and I've really enjoyed some team programming sessions, but when it comes down to it, I think one reason some people hold a much deeper level of knowledge than their peers is that they spend extreme amounts of time alone.
Some people: --get really good at coding --get really good at math --get really good at video games --read large numbers of books and finally some people watch a lot of television
The people who read a lot of books sometimes gain a better understanding of other people, the people who watch a lot of TV have an increased repertoire of small talk, and in today's world, video games are increasingly a team sport. All of those things facilitate increased human contact.
People who are fascinated with math and coding tend to have fewer peers who can understand what they are doing. Is this a bad thing? I don't think so. Maybe I grew up as more of an introvert in some regards, but in other ways I'm socially adjusted. I guess the challenge is to guide young people to seek out their peers (those who are fascinated with the same things), and to make friends without making everything into a competition. It's hard for young nerdlings to recognize a peer intellect without wanting to prove themselves better. There is a place for ambition, but that instinct can be a hinderance.
What you're describing is called "simulated annealing". My AI professor described it as "shaking up the whole system".
If you think of the solution space as a 3D map, you can envision the local maxima as little mountain peaks. You run until you get an optimal solution (possibly a local optimum), then completely change all the parameters to something far away from the solution. If the hill-climber goes back to the same peak, it's still a candidate for the global optimal solution.
I know there's no good karma to be had here (both figuratively and literally) by going after someone else's grammar, or by replying to a post rated zero. But I'm going to throw my lot in with the parent. The proliferation of misuses of "its" and "it's" is accelerating. I saw a post on WSJ the other day that corrected the writer of the article on this matter, only the correction was incorrect!
It's a similar decision to "should I change lanes because that other one is going faster". See the intro to 'Office Space' for the inevitable result.
In other words: if you want to minimize your exposure to backwards-incompatibility, shouldn't you just stay in the language that just got it out of the way? Of course, my logical flaw is the assumption that language migrations of this sort are uniformly distributed, in reality it's probably a function of the languages' owners.
Pretty sure the parent was joking, fwiw. The comic itself refers to the simplified syntax of print "Hello, world!" as a primary example of python's superiority. Lot's of irony!
Well that was paraphrased from the book, but the point is that surely an almighty god could come up with a less humiliating mechanism. A better example is probably destructive parasites.
Not easy questions. There are no easy answers, but I recommend two fun books for you:
The first book is "The Mind's Eye", by Douglas Hofstadter. It has some interesting discussions about the nature of consciousness and some ethical dilemmas that rise re: AI.
The second book deals with some questions about the ethics of God. If we posit the existence of a Creator/God/Intelligent Designer/etc, is it ethical to create a life, given the life will experience limitations and misery? The book is "Catch-22", by Joseph Heller. There's a line in the book that sums up the question, something like: "If God is so great and powerful, and yet kind and wonderful, why do we have snot?"
It raises some interesting philosophical questions, I think.
What if the wind blows at X 80% of the time, and gusts above X 20% of the time?
You're assuming that they're trying to squeeze more energy from the low end of the range, I think they're actually trying to catch the period gusts that are above the normal range. Increasing the resistance will make the windmill safer (and more effective) to operate at higher speeds, until a certain limit is reached where it just has to be shut down for safety.
I don't believe this would be as useful for hydroelectric. The real advantage of this technology is that it can deal with highly variable flows, which is what you get with wind. With a hydroelectric dam, you can control the flow rate mechanically.
The big difference is that with wind, if you restrict the flow you get less energy. With water behind a dam, if you restrict the flow you still get to use energy later.
they should have been improving their product to the maximum extent possible anyway, regardless of what MS did or didn't say or promise
I disagree.
First of all: not every product is 'top of the line', there are trade-offs made between performance and price. By requiring HP to have a feature, MS required them to spend more money, even if HP didn't necessarily believe consumers would spend more money to buy that particular feature.
Secondly: The consumer didn't request this feature, MS requested it. If they wanted to improve hardware, HP could have selected a different dimension on which to upgrade.
HP and other companies are competing for customers. They each try to invest in a card that they believe will maximize (what consumers will pay - their costs). Some consumers will only look at a product that has MSs Vista Blessing attached, other consumers will use different criteria. HP is trying to appeal to both crowds. Every dollar they spend on a Vista criterion is a dollar less to spend on features that will differentiate them in other ways.
Don't go nuts with trying to resolve the arrow then figuring out where it's pointing. That can be fairly hard because you're dealing with a bitmap that you have to convert to vectors. I think the best approach is more simple: 1. Use the webcam to film the meters. What you want is to record at least one full revolution of one of the dials. You want a set of images that show the dial in just about every position. Ideally you'll have enough images that the dial could never be completely between two images, i.e. the dial overlaps itself in subsequent images. Write your java code to read each one of these into an array of Image objects, and store the corresponding value of each Image in a Hashmap (this is the most tedious part of the project, I think) 2. Does the webcam have an api to snap an image? If not, you'll need to have the webcam take an image and save it to a dir every x minutes, then use java to read the image. 3. The image that you grab in (2) will have several dials that you want to read. Play around until you isolate the regions that contain each dial. Photoshop is actually the best way to do this, you can just move the cursor to the area you want and read the coordinates. The idea here is that you want to read each dial in such a way that it looks exactly like the others. You create a new Image from the first for each dial, the images should look almost exactly the same except for the position of the dials. 4. The images you got in (1) should be stored in an array. When you need to read each dial Image that you got in (3), just loop through the stored dials and XOR each one as a Bitmap with the one you're trying to read. Then sum the resulting 1's. The lowest total is the closest image, use it's value. After you try this a few times you can tweak it by dumping the results of all the comparisons to a csv and using a spreadsheet to look at what's happening. If it's fairly consistent you might be able to get away with some performance optimization such as getting rid of some Images or stopping when you get a recognized hit.
I majored in Computer Science. I learned nothing but theory and UNIX programming in C/C++ in school, couldn't have told you a SCSI card from a network card from a video card. Didn't know anything practical. I started by working tech support, I learned hardware and more about different operating systems. I did Java and Windows programming tasks on the way. I went from there to doing mostly teaching Java programming. I had to troubleshoot network problems in front of a class full of people, which means very quickly. I had to answer questions from people who were used to windows, unix, novell, os2--people who were mainframers and had no concept of OO programming--I had to learn about why SmallTalkers consider themselves superior to Java programmers, and why the most important skill to a really good applet programmer is trigonometry. Every year I get better. When I graduated, I was making $20 an hour. I felt lucky, like I was pulling off some kind of scam. Every year since I've doubled that amount, and I'm still amazed at how much I don't know. (I just turned 26, by the way) The long and drawn out moral is that experience is what you make of it. I've never rested on my laurals. There's a copy of "The Essentials of Linear Algebra" to the right of my laptop right now, and a folded-open copy of Larry Wall's "Learning Perl" on my left. I work as hard as I can, the more my employers see fit to pay me, the more I feel that I should work to earn it. If I don't learn something new today, I wasted the day, and that includes _every_ day. That's what life is for. You don't take a break from learning--LEARNING IS FUN AND GOOD FOR YOU!!! anyway, I'll not rant anymore. I've had a bunch of beers and I'm ready to pass out now. (hey, nobody's perfect!) -t.
I agree completely. Trying to calibrate to the specific signals from the human brain is solving the wrong problem. The most awesome capability that our brains have is the ability to adapt. Spend more time on processing the signals in the arm-end for execution, and in sending tactile feedback signals back. It might be nearly impossible for a person to use for a while, but once the brain figures it out and starts rerouting itself, it will seem perfectly natural.
An analogy: if you have a car, and you're trying to build a better road, you should focus on improving the surface of the road, not on a mechanism that reaches up to help push the car along. The "move the car" problem is sufficiently solved that your efforts will probably just get in the way.
-t.
I know about extreme programming, and I've really enjoyed some team programming sessions, but when it comes down to it, I think one reason some people hold a much deeper level of knowledge than their peers is that they spend extreme amounts of time alone.
Some people:
--get really good at coding
--get really good at math
--get really good at video games
--read large numbers of books
and finally some people watch a lot of television
The people who read a lot of books sometimes gain a better understanding of other people, the people who watch a lot of TV have an increased repertoire of small talk, and in today's world, video games are increasingly a team sport. All of those things facilitate increased human contact.
People who are fascinated with math and coding tend to have fewer peers who can understand what they are doing. Is this a bad thing? I don't think so. Maybe I grew up as more of an introvert in some regards, but in other ways I'm socially adjusted. I guess the challenge is to guide young people to seek out their peers (those who are fascinated with the same things), and to make friends without making everything into a competition. It's hard for young nerdlings to recognize a peer intellect without wanting to prove themselves better. There is a place for ambition, but that instinct can be a hinderance.
My two cents,
-t.
What you're describing is called "simulated annealing". My AI professor described it as "shaking up the whole system".
If you think of the solution space as a 3D map, you can envision the local maxima as little mountain peaks. You run until you get an optimal solution (possibly a local optimum), then completely change all the parameters to something far away from the solution. If the hill-climber goes back to the same peak, it's still a candidate for the global optimal solution.
-t.
WORD!
I know there's no good karma to be had here (both figuratively and literally) by going after someone else's grammar, or by replying to a post rated zero. But I'm going to throw my lot in with the parent. The proliferation of misuses of "its" and "it's" is accelerating. I saw a post on WSJ the other day that corrected the writer of the article on this matter, only the correction was incorrect!
-t.
It's a similar decision to "should I change lanes because that other one is going faster". See the intro to 'Office Space' for the inevitable result.
In other words: if you want to minimize your exposure to backwards-incompatibility, shouldn't you just stay in the language that just got it out of the way? Of course, my logical flaw is the assumption that language migrations of this sort are uniformly distributed, in reality it's probably a function of the languages' owners.
-t.
Pretty sure the parent was joking, fwiw.
The comic itself refers to the simplified syntax of
print "Hello, world!"
as a primary example of python's superiority. Lot's of irony!
-t.
Well that was paraphrased from the book, but the point is that surely an almighty god could come up with a less humiliating mechanism. A better example is probably destructive parasites.
-t.
You don't even have to RTFA, it's right there in the summary.
I'm just saying.
-t.
Not easy questions. There are no easy answers, but I recommend two fun books for you:
The first book is "The Mind's Eye", by Douglas Hofstadter. It has some interesting discussions about the nature of consciousness and some ethical dilemmas that rise re: AI.
The second book deals with some questions about the ethics of God. If we posit the existence of a Creator/God/Intelligent Designer/etc, is it ethical to create a life, given the life will experience limitations and misery? The book is "Catch-22", by Joseph Heller. There's a line in the book that sums up the question, something like: "If God is so great and powerful, and yet kind and wonderful, why do we have snot?"
It raises some interesting philosophical questions, I think.
-t.
It seems like just a matter of semantics, but for the record an engine is not necessarily an internal combustion device.
A motor is a subclass of engine. Really an electrical generator is a motor in reverse, so again...who cares?
Also, the article uses the term generator anyway...uhm...am I feeding a troll!?!? ^&#$!!!
-t.
What if the wind blows at X 80% of the time, and gusts above X 20% of the time?
You're assuming that they're trying to squeeze more energy from the low end of the range, I think they're actually trying to catch the period gusts that are above the normal range. Increasing the resistance will make the windmill safer (and more effective) to operate at higher speeds, until a certain limit is reached where it just has to be shut down for safety.
-t.
I don't believe this would be as useful for hydroelectric. The real advantage of this technology is that it can deal with highly variable flows, which is what you get with wind. With a hydroelectric dam, you can control the flow rate mechanically.
The big difference is that with wind, if you restrict the flow you get less energy. With water behind a dam, if you restrict the flow you still get to use energy later.
-t.
they should have been improving their product to the maximum extent possible anyway, regardless of what MS did or didn't say or promise
I disagree.
First of all: not every product is 'top of the line', there are trade-offs made between performance and price. By requiring HP to have a feature, MS required them to spend more money, even if HP didn't necessarily believe consumers would spend more money to buy that particular feature.
Secondly: The consumer didn't request this feature, MS requested it. If they wanted to improve hardware, HP could have selected a different dimension on which to upgrade.
HP and other companies are competing for customers. They each try to invest in a card that they believe will maximize (what consumers will pay - their costs). Some consumers will only look at a product that has MSs Vista Blessing attached, other consumers will use different criteria. HP is trying to appeal to both crowds. Every dollar they spend on a Vista criterion is a dollar less to spend on features that will differentiate them in other ways.
-t.
Don't go nuts with trying to resolve the arrow then figuring out where it's pointing. That can be fairly hard because you're dealing with a bitmap that you have to convert to vectors. I think the best approach is more simple:
1. Use the webcam to film the meters. What you want is to record at least one full revolution of one of the dials. You want a set of images that show the dial in just about every position. Ideally you'll have enough images that the dial could never be completely between two images, i.e. the dial overlaps itself in subsequent images. Write your java code to read each one of these into an array of Image objects, and store the corresponding value of each Image in a Hashmap (this is the most tedious part of the project, I think)
2. Does the webcam have an api to snap an image? If not, you'll need to have the webcam take an image and save it to a dir every x minutes, then use java to read the image.
3. The image that you grab in (2) will have several dials that you want to read. Play around until you isolate the regions that contain each dial. Photoshop is actually the best way to do this, you can just move the cursor to the area you want and read the coordinates. The idea here is that you want to read each dial in such a way that it looks exactly like the others. You create a new Image from the first for each dial, the images should look almost exactly the same except for the position of the dials.
4. The images you got in (1) should be stored in an array. When you need to read each dial Image that you got in (3), just loop through the stored dials and XOR each one as a Bitmap with the one you're trying to read. Then sum the resulting 1's. The lowest total is the closest image, use it's value. After you try this a few times you can tweak it by dumping the results of all the comparisons to a csv and using a spreadsheet to look at what's happening. If it's fairly consistent you might be able to get away with some performance optimization such as getting rid of some Images or stopping when you get a recognized hit.
-t.
I majored in Computer Science. I learned nothing but theory and UNIX programming in C/C++ in school, couldn't have told you a SCSI card from a network card from a video card. Didn't know anything practical. I started by working tech support, I learned hardware and more about different operating systems. I did Java and Windows programming tasks on the way. I went from there to doing mostly teaching Java programming. I had to troubleshoot network problems in front of a class full of people, which means very quickly. I had to answer questions from people who were used to windows, unix, novell, os2--people who were mainframers and had no concept of OO programming--I had to learn about why SmallTalkers consider themselves superior to Java programmers, and why the most important skill to a really good applet programmer is trigonometry. Every year I get better. When I graduated, I was making $20 an hour. I felt lucky, like I was pulling off some kind of scam. Every year since I've doubled that amount, and I'm still amazed at how much I don't know. (I just turned 26, by the way) The long and drawn out moral is that experience is what you make of it. I've never rested on my laurals. There's a copy of "The Essentials of Linear Algebra" to the right of my laptop right now, and a folded-open copy of Larry Wall's "Learning Perl" on my left. I work as hard as I can, the more my employers see fit to pay me, the more I feel that I should work to earn it. If I don't learn something new today, I wasted the day, and that includes _every_ day. That's what life is for. You don't take a break from learning--LEARNING IS FUN AND GOOD FOR YOU!!! anyway, I'll not rant anymore. I've had a bunch of beers and I'm ready to pass out now. (hey, nobody's perfect!) -t.