There is a LITTLE bit of difference in behavior, but really not much. They already use Python, which has great cross platform support. OpenGL works flawlessly on each. They're doing Civ, so you don't need advanced physics libraries or anything (although ODE is completely cross-platform as well). Throw in stl port just to ensure compatibility, SDL (or GLUT if you like pain) for windowing and input, and bam... cross platform with not a lot of work.
Like I said, you just have to know which libraries work cross platform and which don't. I'm not just talking out my ass here... some friends and I actually made a 3d RTS over a semester at school, and we did it developing simultaneously on windows and linux. The ONLY special case in our code was to include windows.h. We used Subversion and SCons for the build system, so even that was completely cross-platform. It's really. Not. That. Hard.
B) It lets you get rid of windows entirely, instead of keeping it around soley for games.
C) Lack of games is one of the biggest obstacles stopping Linux from being much more popular among the non-tech crowd.
D) With a tiny amount of planning at the beginning of a project, and using the correct cross-platform libraries, making a game run both on linux and windows is an essentially negligible problem.
Totally agreed. If a TA has an accent, fine, but if it's so bad that they can't make themselves understood enough to answer a problem... well, they're not really acting as an aide to teaching anymore, are they?
Yeah, moving them isn't that big a deal... the precision with which the structures were built is, though. The great pyramid at Giza is still the most precise structure in the world by a factor of 10... and it's the largest structure in the world as well. So it's a question of not only HOW did they manage to build the most precise structure in the history of the species with only copper tools, but why bother?
Yeah, they spent the money... but the weapons still aren't nearly good enough (witness multiple thousands of civilian collateral deaths in Iraq as the latest example)... doesn't make them pause when thinking about going to war anyway.
Did you happen to notice that there was a mailroom somewhere nearby at which you could go take any of the things you listed above which you actually NEEDED, rather than them wasting the time to have put them on your desk where they would likely sit without being touched?
Well, if you're only qualified to work in one area, I guess you're fucked, huh?
Good thing that the basic principles of coding, like OOP, algorithms, etc. apply in many different areas. And that many people are interested in different areas. Being good at kernels doesn't mean you're automatically no good at CSS. And with such a wide variety of projects to choose from (everything in computing but your one area) there's likely something else you'll like to do.
If you're only good at/interested in kernels, and you feel the need to work on the linux kernel while being payed to work on the vista kernel, one might wonder whether you shouldn't just quit and go work on the one you obviously care about more.
It don't think it's actually in their contract... it's just a "strong recommendation" from their legal department. That, combined with the "termination without reason" clause can pretty much add up to a ban on it, but that's not really surprising. All it takes is one kernel developer looking at the wrong bit of code, and suddenly a bunch of potential lawsuits are opened up. They're just protecting their IP, since they're based exclusively on closed-source.
Wouldn't stop you from working on OSS as soon as you quit, though, depending on how the non-compete clause affects it. And that's going to jack OSS AND payed work the same.
You're completely right. In fact, not only SHOULD they be able to, they ARE able to. The employee contract for most businesses states that employee code written in free time belongs to the employing company ONLY if it derives significantly from the work the employee is doing for pay. That means that while someone working on the Vista kernel wouldn't legally be allowed to contribute code to the Linux kernel, they're more than welcome to work on Firefox, for example, or GIMP, or basically any other product that doesn't parallel kernel programming.
Before I get flamed, let me point out that I realize there's also usually a clause that states you can't compete with the employing companies products in your outside work, so Firefox would be out of bounds for a MS employee. The point remains, though.
Right, but that's because they haven't been educated. It's a cycle... like someone posted a couple weeks ago, the windows OS has hidden the full path and file extension from users by default for years, so now nobody understands the concept of a file system, so now they have to make ever more abstracted "search" features culminating with WinFS... when they could have just not hidden the information from the users.
Coupled with the fact that the more automated a system becomes, the harder it is to get it to do what you want if what you want wasn't explicitly anticipated by the designers... I'd rather people make systems as secure as is reasonable, and then rely a bit more on user education than they do now, rather than trying to turn doing something advanced with your system into an active struggle against the security setup.
While I agree with some of his other points, I think it's really dangerous to just give up on the idea of educating users. In the long run, no matter how secure you make the rest of your system, the user is always going to be a potential weak point -- they can disable or work around your carefully implemented "perfect security" because they NEED this ability to be able to use the system. On home systems, for example, even if you go with a white list, default deny policy, the user still has to be able to add new programs. Watch them download x fancy new shareware game, give it execute and net access permissions, and totally screw your entire careful security setup.
To make a point using the author's own analogy... while flying on an airplane, it's basically common knowledge that you don't want to walk up to the door and pull the big silver lever. Bad things happen if you do. However, if the plane has crashed and you need to get out, that's exactly the action you want to take. We don't have fire sensors that only enable the handles if the plane cabin exceeds a certain temperature... we rely on user education to make people only use this option at the right time.
Even the author's own solution, of scraping off all email attachments and saving them via url doesn't help. If someone sends out a virus, and it gets saved to a remote server, the user can still copy it to their system and run it. But if the user is educated about the kinds of thing that can happen when they do this, and about the dangers of running software from unknown or even partially untrusted sources...
I'm not positive on the chemical reaction, but if you open up a canister of methane and light a match, you're going to have oxygen present from the surrounding air;-). In fact, if it burns slowly instead of just exploding, that would indicate that only some of the methane is igniting at once, likely the methane next to the surrounding air, and thus mixed with oxygen...
There was a researcher a couple years back who managed to triple the lifespan of fruit flies in about 20 generations by preventing them from breeding until halfway through their life cycle. The explanation was something along the lines of, age-related diseases, the equivalents of alzheimers and cancer in humans, would tend to kill off the more susceptible individuals before they had a chance to breed. The remaining ones were resistant to old age, basically.
Something about your post reminded me of that. We could pursue a eugenics program to basically stave off death, and it wouldn't even involve preventing anybody from having children based on some politically arguable traits such as IQ or hair color or whatever.
Yeah, but nobody really practiced it for long enough to EXPECT to see results, either. Yes, two geniuses can produce an idiot child, but the PROBABILITY is that they will not. When you let the process run over several generations, you'll start to see a higher percentage of geniuses being born than if you didn't have the program, and the more generations you go, the stronger the selected traits become.
You can't really call it a "debunked pseudo-science" when it takes several hundred years to show real results, and it ran for what, maybe 40 years total?
Surprisingly, it's not that difficult when you bring lethal diseases to which the natives have no immunity (usually intentionally, by giving them infected blankets in trade), and work the survivors to death mining gold for you to send back to Europe. Not to mention the 60-odd other wars which the USA fought against Indian tribes up through the mid 1800s.
I'm not saying that people should know every intimate detail of assembly language on up. But knowing that files on modern computers are stored in a heirarchical structure is the equivalent of knowing that your car uses oil to lubricate the engine and it needs to be occasionally changed. It's not some arcane detail, it's an element of the USER INTERFACE.
And yes, Jane Double-Chin SHOULD know enough about her car to understand its oil and cooling systems to some extent. Cars AND computers are both ridiculously complex pieces of machinery, and you can expect them to work better when you understand them and know how to take care of them properly. What people like you want from a UI is the equivalent of a car that will, upon getting a flat tire, levitate itself to the nearest auto repair shop after dropping the kids off at soccer practice while you play with a little toy wheel and beep the horn and think you're driving.
I've seen some patents that were basically "a deviced to do this", and then didn't go into the actual means in even vague detail.
There is a LITTLE bit of difference in behavior, but really not much. They already use Python, which has great cross platform support. OpenGL works flawlessly on each. They're doing Civ, so you don't need advanced physics libraries or anything (although ODE is completely cross-platform as well). Throw in stl port just to ensure compatibility, SDL (or GLUT if you like pain) for windowing and input, and bam... cross platform with not a lot of work. Like I said, you just have to know which libraries work cross platform and which don't. I'm not just talking out my ass here... some friends and I actually made a 3d RTS over a semester at school, and we did it developing simultaneously on windows and linux. The ONLY special case in our code was to include windows.h. We used Subversion and SCons for the build system, so even that was completely cross-platform. It's really. Not. That. Hard.
A) It's more convenient to have it run in the OS.
B) It lets you get rid of windows entirely, instead of keeping it around soley for games.
C) Lack of games is one of the biggest obstacles stopping Linux from being much more popular among the non-tech crowd.
D) With a tiny amount of planning at the beginning of a project, and using the correct cross-platform libraries, making a game run both on linux and windows is an essentially negligible problem.
Totally agreed. If a TA has an accent, fine, but if it's so bad that they can't make themselves understood enough to answer a problem... well, they're not really acting as an aide to teaching anymore, are they?
yeah... yeah, that's not really the answer we're looking for...
Yeah, moving them isn't that big a deal... the precision with which the structures were built is, though. The great pyramid at Giza is still the most precise structure in the world by a factor of 10... and it's the largest structure in the world as well. So it's a question of not only HOW did they manage to build the most precise structure in the history of the species with only copper tools, but why bother?
And you say this from experience? Or is this just unfounded dismissal?
Apparently a post pointing out that the measures taken to eliminate civilian deaths didn't work is now considered "trolling"... go, slashdot, go.
Yeah, they spent the money... but the weapons still aren't nearly good enough (witness multiple thousands of civilian collateral deaths in Iraq as the latest example)... doesn't make them pause when thinking about going to war anyway.
You are correct sir. This is a slimmer Microsoft, not a more bloated one.
Did you happen to notice that there was a mailroom somewhere nearby at which you could go take any of the things you listed above which you actually NEEDED, rather than them wasting the time to have put them on your desk where they would likely sit without being touched?
Well, if you're only qualified to work in one area, I guess you're fucked, huh?
Good thing that the basic principles of coding, like OOP, algorithms, etc. apply in many different areas. And that many people are interested in different areas. Being good at kernels doesn't mean you're automatically no good at CSS. And with such a wide variety of projects to choose from (everything in computing but your one area) there's likely something else you'll like to do.
If you're only good at/interested in kernels, and you feel the need to work on the linux kernel while being payed to work on the vista kernel, one might wonder whether you shouldn't just quit and go work on the one you obviously care about more.
It don't think it's actually in their contract... it's just a "strong recommendation" from their legal department. That, combined with the "termination without reason" clause can pretty much add up to a ban on it, but that's not really surprising. All it takes is one kernel developer looking at the wrong bit of code, and suddenly a bunch of potential lawsuits are opened up. They're just protecting their IP, since they're based exclusively on closed-source.
Wouldn't stop you from working on OSS as soon as you quit, though, depending on how the non-compete clause affects it. And that's going to jack OSS AND payed work the same.
You're completely right. In fact, not only SHOULD they be able to, they ARE able to. The employee contract for most businesses states that employee code written in free time belongs to the employing company ONLY if it derives significantly from the work the employee is doing for pay. That means that while someone working on the Vista kernel wouldn't legally be allowed to contribute code to the Linux kernel, they're more than welcome to work on Firefox, for example, or GIMP, or basically any other product that doesn't parallel kernel programming.
Before I get flamed, let me point out that I realize there's also usually a clause that states you can't compete with the employing companies products in your outside work, so Firefox would be out of bounds for a MS employee. The point remains, though.
You, sir, are fucking hilarious :-)
Right, but that's because they haven't been educated. It's a cycle... like someone posted a couple weeks ago, the windows OS has hidden the full path and file extension from users by default for years, so now nobody understands the concept of a file system, so now they have to make ever more abstracted "search" features culminating with WinFS... when they could have just not hidden the information from the users.
Coupled with the fact that the more automated a system becomes, the harder it is to get it to do what you want if what you want wasn't explicitly anticipated by the designers... I'd rather people make systems as secure as is reasonable, and then rely a bit more on user education than they do now, rather than trying to turn doing something advanced with your system into an active struggle against the security setup.
While I agree with some of his other points, I think it's really dangerous to just give up on the idea of educating users. In the long run, no matter how secure you make the rest of your system, the user is always going to be a potential weak point -- they can disable or work around your carefully implemented "perfect security" because they NEED this ability to be able to use the system. On home systems, for example, even if you go with a white list, default deny policy, the user still has to be able to add new programs. Watch them download x fancy new shareware game, give it execute and net access permissions, and totally screw your entire careful security setup.
To make a point using the author's own analogy... while flying on an airplane, it's basically common knowledge that you don't want to walk up to the door and pull the big silver lever. Bad things happen if you do. However, if the plane has crashed and you need to get out, that's exactly the action you want to take. We don't have fire sensors that only enable the handles if the plane cabin exceeds a certain temperature... we rely on user education to make people only use this option at the right time.
Even the author's own solution, of scraping off all email attachments and saving them via url doesn't help. If someone sends out a virus, and it gets saved to a remote server, the user can still copy it to their system and run it. But if the user is educated about the kinds of thing that can happen when they do this, and about the dangers of running software from unknown or even partially untrusted sources...
They'll have to kill Matthew Lillard and Angelina Jolie, too...
So Mr. God... would you care to explain how my laptop, which had never before, and has never since, BSODed within the first 5 minutes of playing Halo?
I'm not positive on the chemical reaction, but if you open up a canister of methane and light a match, you're going to have oxygen present from the surrounding air ;-). In fact, if it burns slowly instead of just exploding, that would indicate that only some of the methane is igniting at once, likely the methane next to the surrounding air, and thus mixed with oxygen...
just sayin...
There was a researcher a couple years back who managed to triple the lifespan of fruit flies in about 20 generations by preventing them from breeding until halfway through their life cycle. The explanation was something along the lines of, age-related diseases, the equivalents of alzheimers and cancer in humans, would tend to kill off the more susceptible individuals before they had a chance to breed. The remaining ones were resistant to old age, basically.
Something about your post reminded me of that. We could pursue a eugenics program to basically stave off death, and it wouldn't even involve preventing anybody from having children based on some politically arguable traits such as IQ or hair color or whatever.
Yeah, but nobody really practiced it for long enough to EXPECT to see results, either. Yes, two geniuses can produce an idiot child, but the PROBABILITY is that they will not. When you let the process run over several generations, you'll start to see a higher percentage of geniuses being born than if you didn't have the program, and the more generations you go, the stronger the selected traits become.
You can't really call it a "debunked pseudo-science" when it takes several hundred years to show real results, and it ran for what, maybe 40 years total?
Surprisingly, it's not that difficult when you bring lethal diseases to which the natives have no immunity (usually intentionally, by giving them infected blankets in trade), and work the survivors to death mining gold for you to send back to Europe. Not to mention the 60-odd other wars which the USA fought against Indian tribes up through the mid 1800s.
You, sir, are an idiot.
Columbus wiped out about 8 million Haitians on his second voyage alone, not to mention the millions of Natives that died in the 300 years following.
I'm not saying that people should know every intimate detail of assembly language on up. But knowing that files on modern computers are stored in a heirarchical structure is the equivalent of knowing that your car uses oil to lubricate the engine and it needs to be occasionally changed. It's not some arcane detail, it's an element of the USER INTERFACE.
And yes, Jane Double-Chin SHOULD know enough about her car to understand its oil and cooling systems to some extent. Cars AND computers are both ridiculously complex pieces of machinery, and you can expect them to work better when you understand them and know how to take care of them properly. What people like you want from a UI is the equivalent of a car that will, upon getting a flat tire, levitate itself to the nearest auto repair shop after dropping the kids off at soccer practice while you play with a little toy wheel and beep the horn and think you're driving.