Yeah, I agree the article sucks, but it does hint at an interesting issue. There are notions in there about what happens when so much is automated that only those who can program machines or be artistic are useful econimically. This may be something that we encounter, much more than we do now, in around fifty to a hundred years. We build machines that can harvest crops, make meals, clean, and build other machines, and then what is left for the majority of people who are doing these manual labor jobs now? Mass wellfare?
I see no reason why the majority of people in the world need to learn in order to keep up in society.
Sure...the majority of people, but your attitude is really scary. As a CS major you must understand how a microprocessor, and therefore machine code, works. There is rarely a sitution, other than writing compilers, where you need to work at that level, but being able to think at that level is critical. Leaky abstractions are everwhere, and without a solid understanding of a computer from top to bottom you will never be able to debug problems when the abstractions built for you in languages like C++ and Java break down. I could give you tons of examples, but as just a bit of advice, you don't have to pick whether to learn how to do things the "hard way" (e.g. assembly) or the "easy way" (Java). Once you know assembly, Java is patty cake and you will be more productive with it.
Seriously, is there anything that XML doesn't do? You can use XML to structure your documentation such that creating multiple presentations of it is automated. However, creating modular documentation that can be pieced together to create totally seperate documents is a whole other problem, and much more difficult.
Ahh...modded up as insightful when it's clearly a joke. It is clear to everyone here that this is a joke right?!
Perhaps this is just confirmation of my long held suspicion that there are people out there with the "All I ever needed to know about programming I learned from/. and when I grow up I want to be a caffein addicted code cowboy" attitude. Truly...deeply...scary. You should all be ashamed of yourselves.
As explained in the technical explanations of nuclear power in space that were linked to in the post, you use nuclear power to propel matter. So, like a nuclear power plant, the reactor heats something and then uses the pressure/velocity of that matter to turn a turbine or "push" something in space. You can also use it to generate electricity and then use that electricity to propel matter in some way.
After the third time that I read that a company when bankrupt on the path to creating what is now MorphOS, I began to think that maybe this isn't such a good idea. But what do I know about business, I'm an engineer!
If you read the spec you will find that they have implemented a method for interface checking. You can require that a template parameter have a certain base class and/or implement a set of interfaces. Here is an example:
interface Iterable<T> {
Iterator<T> iterator(); } interface List<T> implements Iterable<T> {...} interface Set<T> implements Iterable<T> {...} class Test {
void <T,S implements Iterable<T>> printList(S s) {
Iterator<T> it = s.iterator();
while (it.hasNext())
System.out.println(it.next());
} }
The careful reader will also note that they fixed the requirement that >'s have to be seperated by whitespace.
Put out efforts toward making a few projects truly great, not having a huge number of mediocre projects.
Obviously you don't get why people create programming languages in the first place, or most of the open source software for that matter. They do it "just for the hell of it" or to "scratch an itch". Their goal is not to take over the world with a massive project to create the language to end all languages. In fact, the idea of working on a massive project full of documentation, debugging, and huge libraries may not appeal to them (not the cast for SmartEiffel of course). They just wanted to experiment with somes ideas they've been throwing around.
That brings up my second point...experimentation. How are you supposed to come up with the "truly great" projects without messing around for a really long time. It is impossible for someone to just sit down and pull the ideal programming language for any given problem out of their ass.
"While the first 32-bit processor came out in 1995, the average PC used 1 MB of memory, so 4 GB was both unaffordable and generally not needed. But the recent advent of Windows XP and digital media has changed all of that."
When I worked for Audiogalaxy (yeah, I'm another ex-Audiogalaxy programmer). I had a discussion with the music reviewers of creating a "Dancing Penis" page inspired by the hampster variant. Unfortunately because of time constraints I was not allowed to implement this wonderful feature.
He must have taken a wrong turn somewhere. Clearly, a man this intellegent ment to be going to the only University of Texas. Seriously, that's what we're called THE University of Texas. This A&M place must be some sort of a hoax.
This is not a troll. Just the results of four years of constant propaganda. Sorry, can't help it.
Traditionally, chess programs have a database of lines of play in the early game (an "opening book"). Chess programmers carefully craft this database with a percentage attached to each move at each possible point in the opening. Therefore, for the first move, as white, a program might be told to play 'e4' 50%, 'd4' 25%, 'Nf3' 10%, etc. A traditional random number generator can be used to make this decision.
When two human players match up they'll spend months preparing for the games by studying each others style, from past games. In the same way, before a high profile computer vs. human chess match, the author of the chess program will adjust these percentages to try to guide to program in a direction that he/she thinks would be advantageous against this certain opponent.
The way computers play chess is almost completely unrelated to real world tasks.
Moves are generated by representing the chess board as a set of 64-bit integers, where each bit of the integer represents a yes/no property of one of the 64 squares (i.e. is this square occupied by a white pawn?). By using boolean algebra on these integers (called bitboards) you can perform most of the operations required very efficiently. For example, to see which white pawns could advance you might take the white pawn bitboard and left shift it by 8 (moving each pawn up one row) then AND that bitboard with the logical NOT of a bitboard with the OR of all the pieces on the board. Does this sound like any day-to-day applications you know of (zero floating-point)? Didn't think so.
In fact the instruction set of most CPUs aren't well suited for some of the more difficult parts of move generation (like bishop, rook, and queen moves), so Deep Blue used specially made "chess chips" from IBM. They probably did more than just move generation, but the details are a little thin.
Beyond move generation, these programs use a very sophisticated set of heuristics to decide which moves should be analyzed first and which lines of play are not worth exploring too deeply. It's these algorithms that make the big difference between one program and another, not hardware.
So, these results will say something about which chipset is better, but it's in a very narrow area that doesn't matter too much.
Judging by the responses to this article, if I was Microsoft, I would ship an entire collection of Britney porn with the next Windows. That would be quite the Easter-Egg!
Maybe they could replace the Blue Screen Of Death (TM) with some sort of sweaty hard nippled clip of her singing "Oops...I Did It Again."
I built my own system about 4 years ago. Recently, it became obvious that the time had come to upgrade. Instead of buying a whole new system, I just replaced the motherboard, CPU, and RAM. This cost me $500 (P4 1.8 GHz, 512MB). I'm not a gamer and my hard drive is big enough (11GB). So, I had no need to replace the video card, sound card, hard drive, CD-ROM, case, etc. This obviously saved me a ton of money, and the new box has more power more than I need. I highly recommend that everyone looks at this option before replacing their whole system.
Why did you have to go and remind me about Age of Empires 2? Now I'm going to have to go for two weeks without sleep as I get my fix. This will most likely cause me to have to retake all the classes I'm taking this summer. Thus, I wont graduate on time! Good job buddy!
As processing power increasse to 10-100 times what it is now, what will the role of software developers become? Will the additional power allow developers to ignore perfomance more and more, and focus on correctness and features? Or, will developers tackle bigger and bigger problems, and therefore require better asymptotic performance of their algorithms? I don't think computer science will ever die, but it's something to think about.
The downside??? There is no downside! (Except for that whole living in Alaska where it's colder than a nun's buns (old grandpa humor, sorry) and giving up your old life thing).
"In an attempt to combat the growing problem of children listening to used CDs the record industry today recommended a 'Used CD Tax'. An additional 50% tax should be applied to the sale of all used CDs. Similar actions have been taken for alchohol and tabacoo, but this is the first such action that confronts this growing problem." A.P.
"Kids these days are beginning to buy used CDs at a younger and younger age. This is depriving me.....I mean.....the artists of their well deserved income," said Harry Buttes, V.P. of Money Grubbing at Great Tune$ Record$.
Now, this may be an ideal that doesn't hold up in practice. But, from the limited patent law that I know, doesn't the existence of "prior art" void a patent? Therefore, by putting code in the public doemain all ideas contained within it can never be patented. Assuming that the code is released before the patented application is filed of course.
Yeah, I agree the article sucks, but it does hint at an interesting issue. There are notions in there about what happens when so much is automated that only those who can program machines or be artistic are useful econimically. This may be something that we encounter, much more than we do now, in around fifty to a hundred years. We build machines that can harvest crops, make meals, clean, and build other machines, and then what is left for the majority of people who are doing these manual labor jobs now? Mass wellfare?
I see no reason why the majority of people in the world need to learn in order to keep up in society.
Sure...the majority of people, but your attitude is really scary. As a CS major you must understand how a microprocessor, and therefore machine code, works. There is rarely a sitution, other than writing compilers, where you need to work at that level, but being able to think at that level is critical. Leaky abstractions are everwhere, and without a solid understanding of a computer from top to bottom you will never be able to debug problems when the abstractions built for you in languages like C++ and Java break down. I could give you tons of examples, but as just a bit of advice, you don't have to pick whether to learn how to do things the "hard way" (e.g. assembly) or the "easy way" (Java). Once you know assembly, Java is patty cake and you will be more productive with it.
According to physics a hundred years ago, yes, but quantum mechanics says differently.
Seriously, is there anything that XML doesn't do? You can use XML to structure your documentation such that creating multiple presentations of it is automated. However, creating modular documentation that can be pieced together to create totally seperate documents is a whole other problem, and much more difficult.
Ahh...modded up as insightful when it's clearly a joke. It is clear to everyone here that this is a joke right?!
/. and when I grow up I want to be a caffein addicted code cowboy" attitude. Truly...deeply...scary. You should all be ashamed of yourselves.
Perhaps this is just confirmation of my long held suspicion that there are people out there with the "All I ever needed to know about programming I learned from
As explained in the technical explanations of nuclear power in space that were linked to in the post, you use nuclear power to propel matter. So, like a nuclear power plant, the reactor heats something and then uses the pressure/velocity of that matter to turn a turbine or "push" something in space. You can also use it to generate electricity and then use that electricity to propel matter in some way.
After the third time that I read that a company when bankrupt on the path to creating what is now MorphOS, I began to think that maybe this isn't such a good idea. But what do I know about business, I'm an engineer!
Put out efforts toward making a few projects truly great, not having a huge number of mediocre projects.
Obviously you don't get why people create programming languages in the first place, or most of the open source software for that matter. They do it "just for the hell of it" or to "scratch an itch". Their goal is not to take over the world with a massive project to create the language to end all languages. In fact, the idea of working on a massive project full of documentation, debugging, and huge libraries may not appeal to them (not the cast for SmartEiffel of course). They just wanted to experiment with somes ideas they've been throwing around.
That brings up my second point...experimentation. How are you supposed to come up with the "truly great" projects without messing around for a really long time. It is impossible for someone to just sit down and pull the ideal programming language for any given problem out of their ass.
"While the first 32-bit processor came out in 1995, the average PC used 1 MB of memory, so 4 GB was both unaffordable and generally not needed. But the recent advent of Windows XP and digital media has changed all of that."
First typo in the history of Slashdot. You got me!
When I worked for Audiogalaxy (yeah, I'm another ex-Audiogalaxy programmer). I had a discussion with the music reviewers of creating a "Dancing Penis" page inspired by the hampster variant. Unfortunately because of time constraints I was not allowed to implement this wonderful feature.
He must have taken a wrong turn somewhere. Clearly, a man this intellegent ment to be going to the only University of Texas. Seriously, that's what we're called THE University of Texas. This A&M place must be some sort of a hoax.
This is not a troll. Just the results of four years of constant propaganda. Sorry, can't help it.
I just installed it; 2.4.18.
This is Yet Another Reason Why I Want To Have Google's Children (YARWIWTHGC), they clearly disclose "Sponsered Links" and "Shameless Self-Promotion".
Traditionally, chess programs have a database of lines of play in the early game (an "opening book"). Chess programmers carefully craft this database with a percentage attached to each move at each possible point in the opening. Therefore, for the first move, as white, a program might be told to play 'e4' 50%, 'd4' 25%, 'Nf3' 10%, etc. A traditional random number generator can be used to make this decision.
When two human players match up they'll spend months preparing for the games by studying each others style, from past games. In the same way, before a high profile computer vs. human chess match, the author of the chess program will adjust these percentages to try to guide to program in a direction that he/she thinks would be advantageous against this certain opponent.
The way computers play chess is almost completely unrelated to real world tasks.
Moves are generated by representing the chess board as a set of 64-bit integers, where each bit of the integer represents a yes/no property of one of the 64 squares (i.e. is this square occupied by a white pawn?). By using boolean algebra on these integers (called bitboards) you can perform most of the operations required very efficiently. For example, to see which white pawns could advance you might take the white pawn bitboard and left shift it by 8 (moving each pawn up one row) then AND that bitboard with the logical NOT of a bitboard with the OR of all the pieces on the board. Does this sound like any day-to-day applications you know of (zero floating-point)? Didn't think so.
In fact the instruction set of most CPUs aren't well suited for some of the more difficult parts of move generation (like bishop, rook, and queen moves), so Deep Blue used specially made "chess chips" from IBM. They probably did more than just move generation, but the details are a little thin.
Beyond move generation, these programs use a very sophisticated set of heuristics to decide which moves should be analyzed first and which lines of play are not worth exploring too deeply. It's these algorithms that make the big difference between one program and another, not hardware.
So, these results will say something about which chipset is better, but it's in a very narrow area that doesn't matter too much.
Judging by the responses to this article, if I was Microsoft, I would ship an entire collection of Britney porn with the next Windows. That would be quite the Easter-Egg!
Maybe they could replace the Blue Screen Of Death (TM) with some sort of sweaty hard nippled clip of her singing "Oops...I Did It Again."
I built my own system about 4 years ago. Recently, it became obvious that the time had come to upgrade. Instead of buying a whole new system, I just replaced the motherboard, CPU, and RAM. This cost me $500 (P4 1.8 GHz, 512MB). I'm not a gamer and my hard drive is big enough (11GB). So, I had no need to replace the video card, sound card, hard drive, CD-ROM, case, etc. This obviously saved me a ton of money, and the new box has more power more than I need. I highly recommend that everyone looks at this option before replacing their whole system.
Why did you have to go and remind me about Age of Empires 2? Now I'm going to have to go for two weeks without sleep as I get my fix. This will most likely cause me to have to retake all the classes I'm taking this summer. Thus, I wont graduate on time! Good job buddy!
As processing power increasse to 10-100 times what it is now, what will the role of software developers become? Will the additional power allow developers to ignore perfomance more and more, and focus on correctness and features? Or, will developers tackle bigger and bigger problems, and therefore require better asymptotic performance of their algorithms? I don't think computer science will ever die, but it's something to think about.
Alaska might not be as cold as you think.
:-)
I'm from Texas, it is as cold as I think. I think 70 F (aka 21 C, to people with sane measurement systems) is cold
The downside??? There is no downside! (Except for that whole living in Alaska where it's colder than a nun's buns (old grandpa humor, sorry) and giving up your old life thing).
"In an attempt to combat the growing problem of children listening to used CDs the record industry today recommended a 'Used CD Tax'. An additional 50% tax should be applied to the sale of all used CDs. Similar actions have been taken for alchohol and tabacoo, but this is the first such action that confronts this growing problem." A.P.
"Kids these days are beginning to buy used CDs at a younger and younger age. This is depriving me.....I mean.....the artists of their well deserved income," said Harry Buttes, V.P. of Money Grubbing at Great Tune$ Record$.
Now, this may be an ideal that doesn't hold up in practice. But, from the limited patent law that I know, doesn't the existence of "prior art" void a patent? Therefore, by putting code in the public doemain all ideas contained within it can never be patented. Assuming that the code is released before the patented application is filed of course.