An analogy would be genetic algorithms. Once you evaluate the fitness, you perform crossover. By making the code public, teams are free to pick up the best ideas from the others, and build on each others' work.
Take a look at how RoboCup soccer works. They have made great strides in the last couple of years, and a lot of that is due to the spirit of cooperation in the setup.
The simulator needn't simulate the sensor very accurately; but it would present "ideal world" conditions that can be used to filter out the weak contestants. If you can't design algorithms that'll work in a simulator, what makes you think you'll be able to make them work in the real world?
Using a black-box approach, you could simulate the output of a "perfect" laser rangefinder, LIDAR, etc. In fact, black-box approaches are great for isolating bugs and system testing.
The point I'm trying to make is: if you limit the participants only to the well-heeled, you are not going to fully "unleash the entrepreneurial spirit", as was the stated goal of the competition.
I submitted the following as a story for some discussion, but it got rejected; so I'll just post this for discussion.
Just like 1000s of geeks worldwide, I watched this with great interest. But the whole organization thing left me with a funny taste in the mouth.
It seemed as if the group that could throw the most money at the "problem" would win. Take the CMU team for example: they paid for a high-res survey of the area; had undergrads map out each and every obstacle in all of the possible paths; etc. Now, if the goal of this "grand challenge" was to unleash the entrepreneurial spirit, then it failed. Money != Entrepreneurial spirit.
Taking lessons from the RoboCup people, I would have preferred that DARPA organize it as follows:
Create a simulator for the sensors, and design a small (virtual) course for this simulator. Let people develop algorithms using this simulator, and have a competition in this virtual simulator to select a set of (say) 30 teams.
Provide each of these teams a platform: a humvee equipped with the sensors (actual ones from (1) above). Of course, if a team wants, it can add its own sensors.
After some time, hold a "grand challenge".
Analyse the approaches taken by the various teams, and (important) share the code among the teams. If a team designs a new sensor that is useful, get copies made and share with the teams for the next iteration.
Go back to step (1) above, and repeat.
Preference could be given to schools or efforts involving students, as not only is this a great learning experience, but also it will be a great motivator.
Just look at the technology gap between CMU and the rest of the entrants. It is quite an achievement that someone was able to equal CMU in performance.
There are a lot of smart hackers out there who would love to take a crack at this problem, but the lack of hardware is a serious hurdle.
Someone there has to want you -- no, they have to NEED you -- OR you have to be bringing with you a big suitcase of cash to start a business. Journeyman techies need not apply. It's interesting that Indian immigration policies are more restrictive than U.S. immigration policies. There is no true Indian equivalent, for example, of our H1-B work visas.
Cringely is mistaken. I've gone through the H1-B program; you need a job offer from a US company to get the H1 visa.
The rules are more-or-less similar.
What people refuse to understand (or care about) is the simple fact that the US has a history of immigration, and because of that, has put in place time-tested means for coming here, working, etc. India, on the other hand, is just beginning to realise that someone might want to actually emigrate to India and work there. Give them time, and they'll iron out the kinks in the system.
WTF? Carrying a knife illegal in Australia? But.. but... Crocodile Dundee carries a huge machete-szed bowie around, and nobody says anything to him! Is it 'cause he's a big movie star and all that?
I withheld midterm grades of our course, pending the outcome of QID, since this is a third of the grade. Since QID went well, grades will be good, and it will be a pleasure to assign these.
Withold the grades, and students will do anything. (Note to Theory profs out there: withhold grades until someone proves P != NP )
EV1 isn't buying any insurance for the "little guy"; the little guys were never liable anyways! All EV1 just did is payoff SCO to go and sue one of EV1's main competitors.
EV1 wins by (a) getting its name in the press; (b) by sicing SCO onto its competitor.
SCO wins by (a) getting a "customer" for its IP, and (b) getting some money.
See, both win.
EV1 just found a new weapon in the cutthroat wars that are the hosting business these days.
The question is: will enough people leave EV1 to cause them some pain? Will customers be able to break their contract based on this? Will some other hosting company jump in to provide the same deal to existing EV1 customers if they switch?
Intel would be nuts to mention AMD in any press release
Why? Intel could just come and take the high road, and claim that they are keeping their chips instruction-set compatible with AMD64 to "preserve the customers' investment" or some such marketing-speak. Good marketers never let the facts or the truth get in the way of a good spin.
There's a very important lesson hidden in here, which I hope the other hardware vendors will see and take note.
Linksys is a hardware company. They make money by selling hardware. By opening up the software (and making their hardware "hackable"), they will increase their hardware sales.
My hope is that other hardware companies (you name 'em: ATI, nVidia, Intel, Broadcom, Logitech, etc. etc.) will see this, and make their drivers (and associated software) open-source, thereby making their products "hackable" ==> increased sales.
I hope the "media" will take note of this, and put it out in plain words so that the PHBs who make the decisions will learn the lesson.
New York State uses a PDF417 barcode too at the back of the license.
I remember when it first started being used, and we happened to be working on a PDF417 decoding program.
We ran the license's barcode through our decoder, and found that the only "encryption" used in the barcode was to store the data in binary mode, instead of the text (alphanumeric) mode.
NYS also puts PDF417s on the car registration stickers.
I wonder what use are these, without a PGP (or similar) signature?
... and you dragged this "fact" out of your nether regions ?
Here's a fact for you: multinational companies have been doing business in India for decades. Many of the top managers, etc. in MNCs are non-Indians, on temporary worker visas.
Each country has its own rules and regulations. Just because you have one set of rules, it does not mean the rest of the world has to follow your rules.
US is a country built on immigration. The US govt has, over the period of nearly a century, put in place streamlined ways to enter the country to work, immigrate, etc.
India is 56 years old. Till recently, people wanted to get out of India; noone ever thought that there'd be people lining up wanting to get in to work. Give them time, and they will formulate rules and regulations to facilitate this.
Just like the US and Russia got nuked by each other?
Just because there are nukes in the neighborhood it does not mean they could get 'nuked anytime'.
India has clearly told Pakistan: they can take a strike or two, but Pakistan will be wiped off the face of the earth if they pull anything like this.
YAD (Your Assured Destruction), anyone?:)
Here's what they had on their jobs page last year:
Jobs
Join a world class team. Build potent software. Strangeberry Inc. is looking for smart, independent people who thrive at startups. Here are some of our openings:
GRAPHIC / USER INTERFACE DESIGNER
Graphic designer with experience building interface for consumer digital media applications. Must be creative and a good communicator. Qualified candidates have 3-4 years experience with interactive design and typographic skills. Knowledge of Photoshop and Illustrator required. DVD / Game UI experience a plus.
APPLICATION ENGINEER
Developer with experience creating user interfaces. Must be comfortable with C/C++, Java, Windows and Unix. No VB, please. Qualified candidates have 4-5 years experience building applications.
KERNEL ENGINEER
Linux kernel developer with experience writing device drivers under x86. Qualified candidates have 2-3 years experience working on the kernel. Knowledge of framebuffer internals a plus. Codec experience smiled upon.
We also would like to keep it inexpensive (sub $10,000). Any help would be appreciated."
Hello? Why not pay some some small firm to come up with something suitable, released under GPL? You kill 2 birds with 1 stone: support OSS, and add to the GPL pool.
In general, people: if you have some control over a pool of money for some small tasks like these, throw them in the direction of OSS people!
From the article: .... news media quoted Northwest officials responding to the JetBlue incident. "We do not provide that type of information to anyone," Northwest spokesman Kurt Ebenhoch was quoted as saying in the New York Times on Sept. 23.
An article in the following day's St. Paul (Minn.) Pioneer Press said: "Northwest Airlines will not share customer information, as JetBlue Airways has, Northwest chief executive Richard Anderson said Tuesday in brief remarks after addressing the St. Paul Rotary."
Somebody should ask Dick Anderson, what exactly did he mean by his statement? If that is not a bald-faced lie, then I don't know what is.
I hope the shareholders hold this guy accountable.
As the former owner of a Nortwest Frequent Flyer card (which I just cut up on reading this story), I'd just like to say "sayonara!" to Northwest.
It was not the sharing of the data that was bad; it was lying about it and the "cross my heart, swear to God we don't do that" that pissed me off.
I can understand the need for exploring new security options. How hard would it have been to anonymize the data? Just run it through a one-way hash function, and you can provide the data without invading anyone's privacy.
This was so absurdly over-zealous that I know people who had just one similar (not equal) function and had 0 due to that.
That, obviously, is wrong.
Look, a technology like this anti-plagiarism service is just a tool. It may flag an assignment as havng been plagiarised; and having flagged that, it should present the evidence to the teacher who should be the one deciding whether it warrants action or not.
I have been a TA and a teacher. I have caught plagiarists. Usually, if it is just a small code fragment, you just let it go. After all, all of the students are reading from the same books, and looking a the same sample code, and hence could come up with similar snippets. The problem comes when large chunks of the program are the same. Or, if there's been an obvious attempt to hide the copying (changing every variable "i" to "ii").
Often, what used to give the game away was the use of an odd data structure, or an odd language feature. For example: 95% of the students would use a "for" loop, and then 2 assignments would show up with a "repeat until" or a "do while". When asked, the original author would have a pretty good explanation; but the cheater would not have any.
Coming to this case: the student has no right to gripe about this. Saying that he's being considered "guilty until proven innocent" is asinine. By the same token, his assignments shouldn't be graded either: he should just get an "A" to start with!
Would it have been better if the professor had taken his assignment and submitted it to the service? After all, the professor can use whatever tools he likes to help him do his job. And catching plagiarists is a part of his job, unfortunately.
An analogy would be genetic algorithms. Once you evaluate the fitness, you perform crossover. By making the code public, teams are free to pick up the best ideas from the others, and build on each others' work.
Take a look at how RoboCup soccer works. They have made great strides in the last couple of years, and a lot of that is due to the spirit of cooperation in the setup.
Using a black-box approach, you could simulate the output of a "perfect" laser rangefinder, LIDAR, etc. In fact, black-box approaches are great for isolating bugs and system testing.
The point I'm trying to make is: if you limit the participants only to the well-heeled, you are not going to fully "unleash the entrepreneurial spirit", as was the stated goal of the competition.
Just like 1000s of geeks worldwide, I watched this with great interest. But the whole organization thing left me with a funny taste in the mouth.
It seemed as if the group that could throw the most money at the "problem" would win. Take the CMU team for example: they paid for a high-res survey of the area; had undergrads map out each and every obstacle in all of the possible paths; etc. Now, if the goal of this "grand challenge" was to unleash the entrepreneurial spirit, then it failed. Money != Entrepreneurial spirit.
Taking lessons from the RoboCup people, I would have preferred that DARPA organize it as follows:
- Create a simulator for the sensors, and design a small (virtual) course for this simulator. Let people develop algorithms using this simulator, and have a competition in this virtual simulator to select a set of (say) 30 teams.
- Provide each of these teams a platform: a humvee equipped with the sensors (actual ones from (1) above). Of course, if a team wants, it can add its own sensors.
- After some time, hold a "grand challenge".
- Analyse the approaches taken by the various teams, and (important) share the code among the teams. If a team designs a new sensor that is useful, get copies made and share with the teams for the next iteration.
- Go back to step (1) above, and repeat.
Preference could be given to schools or efforts involving students, as not only is this a great learning experience, but also it will be a great motivator.Just look at the technology gap between CMU and the rest of the entrants. It is quite an achievement that someone was able to equal CMU in performance.
There are a lot of smart hackers out there who would love to take a crack at this problem, but the lack of hardware is a serious hurdle.
Cringely is mistaken. I've gone through the H1-B program; you need a job offer from a US company to get the H1 visa. The rules are more-or-less similar.
What people refuse to understand (or care about) is the simple fact that the US has a history of immigration, and because of that, has put in place time-tested means for coming here, working, etc. India, on the other hand, is just beginning to realise that someone might want to actually emigrate to India and work there. Give them time, and they'll iron out the kinks in the system.
For the money ($1MM), I think its not a bad investment.
I withheld midterm grades of our course, pending the outcome of QID, since this is a third of the grade. Since QID went well, grades will be good, and it will be a pleasure to assign these.
Withold the grades, and students will do anything. (Note to Theory profs out there: withhold grades until someone proves P != NP )
EV1 wins by (a) getting its name in the press; (b) by sicing SCO onto its competitor.
SCO wins by (a) getting a "customer" for its IP, and (b) getting some money.
See, both win.
EV1 just found a new weapon in the cutthroat wars that are the hosting business these days.
The question is: will enough people leave EV1 to cause them some pain? Will customers be able to break their contract based on this? Will some other hosting company jump in to provide the same deal to existing EV1 customers if they switch?
Stay tuned!
Why? Intel could just come and take the high road, and claim that they are keeping their chips instruction-set compatible with AMD64 to "preserve the customers' investment" or some such marketing-speak. Good marketers never let the facts or the truth get in the way of a good spin.
Linksys is a hardware company. They make money by selling hardware. By opening up the software (and making their hardware "hackable"), they will increase their hardware sales.
My hope is that other hardware companies (you name 'em: ATI, nVidia, Intel, Broadcom, Logitech, etc. etc.) will see this, and make their drivers (and associated software) open-source, thereby making their products "hackable" ==> increased sales.
I hope the "media" will take note of this, and put it out in plain words so that the PHBs who make the decisions will learn the lesson.
I remember when it first started being used, and we happened to be working on a PDF417 decoding program.
We ran the license's barcode through our decoder, and found that the only "encryption" used in the barcode was to store the data in binary mode, instead of the text (alphanumeric) mode.
NYS also puts PDF417s on the car registration stickers.
I wonder what use are these, without a PGP (or similar) signature?
Here's a fact for you: multinational companies have been doing business in India for decades. Many of the top managers, etc. in MNCs are non-Indians, on temporary worker visas.
Each country has its own rules and regulations. Just because you have one set of rules, it does not mean the rest of the world has to follow your rules.
US is a country built on immigration. The US govt has, over the period of nearly a century, put in place streamlined ways to enter the country to work, immigrate, etc.
India is 56 years old. Till recently, people wanted to get out of India; noone ever thought that there'd be people lining up wanting to get in to work. Give them time, and they will formulate rules and regulations to facilitate this.
Just because there are nukes in the neighborhood it does not mean they could get 'nuked anytime'.
India has clearly told Pakistan: they can take a strike or two, but Pakistan will be wiped off the face of the earth if they pull anything like this. YAD (Your Assured Destruction), anyone? :)
I'm hoping this website isn't sitting on some guy's motorbike. Please be gentle, folks: we don't want to slashdot a biker.
Jobs
Join a world class team. Build potent software. Strangeberry Inc. is looking for smart, independent people who thrive at startups. Here are some of our openings:
GRAPHIC / USER INTERFACE DESIGNER
Graphic designer with experience building interface for consumer digital media applications. Must be creative and a good communicator. Qualified candidates have 3-4 years experience with interactive design and typographic skills. Knowledge of Photoshop and Illustrator required. DVD / Game UI experience a plus.
APPLICATION ENGINEER
Developer with experience creating user interfaces. Must be comfortable with C/C++, Java, Windows and Unix. No VB, please. Qualified candidates have 4-5 years experience building applications.
KERNEL ENGINEER
Linux kernel developer with experience writing device drivers under x86. Qualified candidates have 2-3 years experience working on the kernel. Knowledge of framebuffer internals a plus. Codec experience smiled upon.
If it responds with "invalid e-mail address", then you struck out; if not, score!
Now, next thing to do is to automate this with your mailbox, and then see which of your "friends" didn't invite you!
Hello? Why not pay some some small firm to come up with something suitable, released under GPL? You kill 2 birds with 1 stone: support OSS, and add to the GPL pool.
In general, people: if you have some control over a pool of money for some small tasks like these, throw them in the direction of OSS people!
An article in the following day's St. Paul (Minn.) Pioneer Press said: "Northwest Airlines will not share customer information, as JetBlue Airways has, Northwest chief executive Richard Anderson said Tuesday in brief remarks after addressing the St. Paul Rotary."
Somebody should ask Dick Anderson, what exactly did he mean by his statement? If that is not a bald-faced lie, then I don't know what is.
I hope the shareholders hold this guy accountable.
As the former owner of a Nortwest Frequent Flyer card (which I just cut up on reading this story), I'd just like to say "sayonara!" to Northwest. It was not the sharing of the data that was bad; it was lying about it and the "cross my heart, swear to God we don't do that" that pissed me off.
I can understand the need for exploring new security options. How hard would it have been to anonymize the data? Just run it through a one-way hash function, and you can provide the data without invading anyone's privacy.
This ineptitude and lying really irritates me.
That, obviously, is wrong.
Look, a technology like this anti-plagiarism service is just a tool. It may flag an assignment as havng been plagiarised; and having flagged that, it should present the evidence to the teacher who should be the one deciding whether it warrants action or not.
I have been a TA and a teacher. I have caught plagiarists. Usually, if it is just a small code fragment, you just let it go. After all, all of the students are reading from the same books, and looking a the same sample code, and hence could come up with similar snippets. The problem comes when large chunks of the program are the same. Or, if there's been an obvious attempt to hide the copying (changing every variable "i" to "ii").
Often, what used to give the game away was the use of an odd data structure, or an odd language feature. For example: 95% of the students would use a "for" loop, and then 2 assignments would show up with a "repeat until" or a "do while". When asked, the original author would have a pretty good explanation; but the cheater would not have any.
Coming to this case: the student has no right to gripe about this. Saying that he's being considered "guilty until proven innocent" is asinine. By the same token, his assignments shouldn't be graded either: he should just get an "A" to start with!
Would it have been better if the professor had taken his assignment and submitted it to the service? After all, the professor can use whatever tools he likes to help him do his job. And catching plagiarists is a part of his job, unfortunately.