As I am multiracial, I guess being a racist would also require that I be self-loathing.
For the record, I don't tolerate them; however, until Slashdot sees fit to actually do something about the all-too-common and overt racist, sexist, homophobic, fascist, and religiously dogmatic comments present in every batch of comments, I see no reason to give them a greater audience by engaging them.
The one thing you don't do with a troll is tell them they're wrong. It only encourages them to be more wrong.
In a September 26, 2005 hearing, Michael Brown was questioned by Republican members of Congress about FEMA's response. During that hearing, Representative Stephen Buyer (R-IN) inquired as to why Bush's declaration did not include Orleans, Jefferson, or Plaquemines parishes. (In fact, the declaration did not include any of Louisiana's coastal parishes, whereas the coastal counties were included in the declarations for Mississippi and Alabama.) Brown testified that this was because Governor Blanco had not included those parishes in her initial request for aid, a decision that he found "shocking." After the hearing, though, Blanco released a copy of her letter, which requested assistance for "all the southeastern parishes including the New Orleans Metropolitan area and the mid state Interstate I-49 corridor and northern parishes along the I-20 corridor that are accepting [evacuated citizens]."
You'll note on the Wikipedia page that there are indeed citations on this section.
As for the changes to Posse Comitatus, don't be so quick to cheer the ability of the federal government to deploy troops without the consent of a state or its citizens. That kind of power while useful for emergencies like Katrina can also be used by less-than-scrupulous politicians in the future for purposes far less noble. The changes were a net loss for us as a country as far as I'm concerned, and a great deal because a president appointed a man who judged horse shows to be the head of federal emergency management.
Do you live in a different country than that ocean?
Didn't think so. Power generated within the same country could be considered "local" compared to foreign imports.
Setting aside the fact that basically all oceans are outside national borders -- why they're called international waters -- have you heard of Enron and power "deregulation" in California a few years back. Yeah, that was fun.
In addition, are you aware of how large the US is? Do you know of any power lines that stretch over 1,000 miles between a power station and a home? Being a state away is by no means local. The prices may be regulated, but electrical loss and electrical resistance do not give a rat's ass about in-state vs. out-of-state vs. international.
...the best minds in the world are at work.
And this is perhaps my biggest gripe: relying on others to solve our problems. Far more problems would be solved if some of those lazy social science majors would get off their collective asses and take some "hard" science and/or engineering courses. At least then it would dawn on people that hydrogen is not an energy source.
Since we're throwing around Wired links, try this one about thorium reactors. Not all "nukes" are trying to replicate Chernobyl contrary to popular belief, and I don't see us running out of thorium anytime soon. If we can't figure out fusion before then, maybe we as a species deserve to die. Who knows?
Bottom line: too many people. Conserve all you want, and I applaud you for doing so; however, unless we can reduce our population substantially, even the most efficient home times a few billion is more than wind and solar -- and maybe even nuclear -- can bear. I don't see a huge number of people in the US putting up quite the same effort in staying childless, but I guess that's just a little too much to ask.
People invented this thing called the "battery" about 100 years ago...
A battery that will hold a couple of days' worth of charge with minimal loss? Please give an example.
Along the same lines, even on still days where you live, there's probably a south-facing hill nearby that's always windy about, oh, 80 feet above the ground.
See this map? See all the white areas? In most of that area, 80 feet up ain't gonna help you too much. Maybe 8,000.
Cloudy days still let current solar cells work at about 25% efficiency, and the thousands of square feet of roof your home or apartment building has can generate a surprising amount of energy, provided you're not wasting anything.
That's 25% of what they normally give, which is ~15% of 1kW per square meter. Aside from the fact that I live in a 700 square foot (not meter!) space, that's not all that much power. Combined with much of the roof sloping away from the sun at any given time and a great deal of tree cover (you're not suggesting I cut down a bunch of old redwoods, are you?), 25% of next to nothing is worth next to nothing.
Don't get me wrong, I actually think we should put more energy (no pun intended) into alternative forms of electricity generation. However, misguided "expending a little bit of effort" rants such as yours tend to make me resent the fact that we're ostensibly on the same team.
Do the math for how many solar cells would be needed to provide enough energy for a single electric car that seats four people to run for 100km. The results are disheartening.
Too many people is the problem. The solution will therefore be extremely messy no matter what we do. And unless you're ready to step up to the plate and declare that you will never have any children, don't be so quick to chastise others for their lack of commitment.
Amazing how you can spell a Latin phrase but fail to correctly spell your own nationality. Considering the poor use of grammar and punctuation, I'll take it that the Latin phrase was a fluke.
Don't worry, I blame the US public education system, not you. It's not your fault you're an ignorant blowhard with a temper.
Who is going to write these open source textbooks?
How has calculus changed in the last fifty years? Why do we need new editions every five years? How about general chemistry, physics, and the like? I could see the argument for some upper division work, but c'mon! For literature, it's not like Frankenstein and Don Quixote require regular updates.
If folks have to pay for a $200 item, let it be an eBook that can hold every one of the above examples after a free download.
Exercises? For the sciences, it had better be in their own handwriting and in pencil. For the humanities, there are already facilities to detect plagiarism.
It's a shame the illuminated manuscripts (big business college textbooks) are going to take a serious hit, but the printing press (The Wired and Digital Age) is here now. We couldn't turn back the clock even if we wanted to.
Vector graphics are window dressing. XBL is where it's at. With XBL you don't need any extra span tags in your main markup to act as a crutch for mismatches between your page structure and CSS. Just bind the element with XBL in your CSS and specify as many span tags as you like behind the scenes.
Combined with robust CSS support this also opens up possibilities for making HTML largely obsolete for web apps in favor of the markup syntax that best fits the problem at hand. What is a "p" tag after all but just some padding, margin, and perhaps some indentation on a block displayed element?
Once all is said and done, those vector graphics will make everything including online charts and games look nicer, but XBL 2.0 is the real main course.
Heh, and I was just thinking about how COM enforced the separation of interfaces and implementation so that MI wasn't as necessary. Or I guess hiding the bodies better.;-)
Most of the world who can code C++ would disagree with you. As for "implementing the same code over and over using interfaces," the point of interfaces is to decouple the implementation from the interface, which has maintainability and flexibility advantages that far outweigh a little extra typing during the design phase of your project.
That's a library implementation issue. Once again, there is no reason why QFrame and QMenuData couldn't be interfaces with an implementation class behind the scenes that has an instance of both classes for implementation.
For you, as a user of Qt, you would still just extend from QPopupMenu or QMenuBar. As a library user, nothing would have changed for you. Surely you don't expect to extend from both QMenuBar and QPopupMenu?
On the contrary, I find that many Java programmers write their C++ using the style learned from Java. I also find that C coders tend write their Java like C, ignoring the standard Java style guides.
To say that learning with a language that enforces style will have no lasting effects once they leave that language is ridiculous.
Writing the following:
foo->getBar() was C++ likely written by a coder who started in Java.
class Foo { int my_var; } is an example of the opposite.
These examples are common all over the place, both at work from new employees to gobs and gobs of open source code on the net.
As for me, I know x86 and MIPS assembly, but since I don't write device drivers, I haven't had much use for it in general. Rather than spending my free time pushing and popping the memory stack, I prefer to write apps that actually make other people's lives easier.
But whatever floats your boat. For the record, I have said similar things during job interviews. They lead to interesting discussions and other topics related to tech. That said, I also adapt my code formatting to the language and, more importantly, to whatever style the team I join has decided on. But if I were in an interview with someone who claimed code clarity was akin to 'hand holding,' I likely would look elsewhere for work barring special circumstances.
Computers don't care if whitespace is present or not. Only humans find it easier to parse. Therefore a stylistic change to code does not affect the code's efficiency or efficacy. If you, as a coder, cannot adapt to a stylistic change, you are showing signs of inflexibility. Inflexibility is not an attribute I would be looking for in a coder.
But you still haven't listed alternatives available at that time. If not NFS, then what alternatives AVAILABLE AT THAT TIME?
As for NFS being a de-facto standard, how did that happen? Did other systems have to reverse engineer the protocol -- as was the case with SMB, at least with regards to compatibility with Windows, its most prominent user -- or did Sun publish specs that others could realistically implement?
Many times, I consider documentation and clear specs more important than code. Almost anyone can hike with a map. Far fewer can without a map. And fewer still can make a map.
The map that Sun gave everyone may have had flaws and inaccuracies, but it was still better than not having a map in the first place.
If there were better alternatives to NFS, why didn't people use them or create newer, better ones? With all the faults of NFS, I don't know of alternatives that magically make all of those problems go away. Locking on remote resources that you want to be performant is a hard problem. WebDAV certainly doesn't solve that problem. And speaking of WebDAV, how would that have solved the NFS problem when it hadn't even been invented yet? Nor had HTTP 1.1 for that matter. Nor had HTTP 1.0 for that matter. Nor had XML, which it uses for metadata.
Saying that WebDAV or AFS should have been used back in the heyday of NFS sounds like someone suggesting that DOS shouldn't have been used in 1981 because Linux would be created ten years later. You could certainly give other examples to replace DOS in '81 like CP/M, but the fact that you don't realize that NFS was first leads me to believe you are too young to remember what it was like. To give you an idea, an implementation of AFS was only released as open source in 2000 by IBM. Where were the alternatives before then?
Answer: there weren't any good ones. And speaking of Samba, unlike CIFS/SMB, the NFS docs that Sun released actually matched up well with the protocol unlike what Microsoft released and Samba reverse engineered.
FYI: "NFS v4 (RFC 3010, December 2000; revised in RFC 3530, April 2003), influenced by AFS and CIFS, includes performance improvements, mandates strong security, and introduces a stateful protocol. Version 4 became the first version developed with the Internet Engineering Task Force (IETF) after Sun Microsystems handed over the development of the NFS protocols." - Wikipedia
You have limits in any language whether they be the inclusion of a semicolon at the end of a statement, the enclosure of a conditional in parentheses, or curly braces to denote scope.
To say that those constructs built into languages are acceptable but enforced indentation is not is an arbitrary distinction. It has nothing to do with its worth or lack thereof. You have decided what you prefer and are fitting an argument to that conclusion. Philosophy does not enter into it.
A computer doesn't care whether your programming language enforces indentation. All the computer needs is an ordered sequence of bits and bytes in just the right combination to return a desired output. Computer languages were meant to be a human-readable alternative -- their sole reason for existence. If you don't think that the indentation makes the code readable, that's a valid argument though I would disagree with it.
However, I don't believe you have a "philosophical problem" with indentation on the basis of enforcement. Enforcement has nothing to do with readability, and readability is all that really matters with a language. Anything else is personal preference, which is perfectly valid, just don't frame it in the guise of a more noble cause.
And if code bases never changed, I might agree with you. However, what happens when a superclass is changed, e.g., a new method is added? Much of the time, nothing. But what happens with MI when one superclass adds a method that already exists by name in another superclass? You end up in exactly the same solution as with SI; you use composition to arbitrate the ambiguity.
When interfaces collide, there is no issue. If a method is added to a superclass in single-inheritance, it rarely affects the subclass unless that subclass is too tightly coupled with private variables (the implementation) of the superclass; you'd be hosed with any change in the superclass.
MI may result in slightly fewer lines of code, but it makes for code that's harder to understand and more brittle in the long run. In short, it's little more than syntactic sugar with no programmatic benefits but several drawbacks with regard to complexity.
I don't know jacks smirking reven, but I know people that do, and just about every one I have talked to systematically abhors the troll and affirms that there is the consumption of babies.
But then, I don't listen to hearsay. There's a reasonable possibility that jacks smirking reven is a pretty nice person, and I'll reserve judgment for when we actually meet.
God forbid that someone's code should be readable! Perish the thought! Everyone should code in Perl; it's like nuking readability from orbit -- the only way to be sure.
If your editor cannot alter the visual spacing to a tab, you need to get a new editor. C'mon! That was a solved problem in the early 90s if not earlier.
In Java, you can do so at compile/design (most of the time, that's when you should be doing it). JavaScript's great for small projects, but if you have multiple people working on a codebase, swapping things out at runtime tends to get messy very quickly.
That is, unless each of your team members clearly and comprehensively documents everything they're doing. Then again, a coder that writes good documentation is more rare than a Windows developer who wishes they had fork().
Quick and dirty coding techniques work for quick and dirty projects, not much else.
As I am multiracial, I guess being a racist would also require that I be self-loathing.
For the record, I don't tolerate them; however, until Slashdot sees fit to actually do something about the all-too-common and overt racist, sexist, homophobic, fascist, and religiously dogmatic comments present in every batch of comments, I see no reason to give them a greater audience by engaging them.
The one thing you don't do with a troll is tell them they're wrong. It only encourages them to be more wrong.
Wikipedia:
You'll note on the Wikipedia page that there are indeed citations on this section.
As for the changes to Posse Comitatus, don't be so quick to cheer the ability of the federal government to deploy troops without the consent of a state or its citizens. That kind of power while useful for emergencies like Katrina can also be used by less-than-scrupulous politicians in the future for purposes far less noble. The changes were a net loss for us as a country as far as I'm concerned, and a great deal because a president appointed a man who judged horse shows to be the head of federal emergency management.
Setting aside the fact that basically all oceans are outside national borders -- why they're called international waters -- have you heard of Enron and power "deregulation" in California a few years back. Yeah, that was fun.
In addition, are you aware of how large the US is? Do you know of any power lines that stretch over 1,000 miles between a power station and a home? Being a state away is by no means local. The prices may be regulated, but electrical loss and electrical resistance do not give a rat's ass about in-state vs. out-of-state vs. international.
And this is perhaps my biggest gripe: relying on others to solve our problems. Far more problems would be solved if some of those lazy social science majors would get off their collective asses and take some "hard" science and/or engineering courses. At least then it would dawn on people that hydrogen is not an energy source.
Since we're throwing around Wired links, try this one about thorium reactors. Not all "nukes" are trying to replicate Chernobyl contrary to popular belief, and I don't see us running out of thorium anytime soon. If we can't figure out fusion before then, maybe we as a species deserve to die. Who knows?
Bottom line: too many people. Conserve all you want, and I applaud you for doing so; however, unless we can reduce our population substantially, even the most efficient home times a few billion is more than wind and solar -- and maybe even nuclear -- can bear. I don't see a huge number of people in the US putting up quite the same effort in staying childless, but I guess that's just a little too much to ask.
A battery that will hold a couple of days' worth of charge with minimal loss? Please give an example.
See this map? See all the white areas? In most of that area, 80 feet up ain't gonna help you too much. Maybe 8,000.
That's 25% of what they normally give, which is ~15% of 1kW per square meter. Aside from the fact that I live in a 700 square foot (not meter!) space, that's not all that much power. Combined with much of the roof sloping away from the sun at any given time and a great deal of tree cover (you're not suggesting I cut down a bunch of old redwoods, are you?), 25% of next to nothing is worth next to nothing.
Don't get me wrong, I actually think we should put more energy (no pun intended) into alternative forms of electricity generation. However, misguided "expending a little bit of effort" rants such as yours tend to make me resent the fact that we're ostensibly on the same team.
Do the math for how many solar cells would be needed to provide enough energy for a single electric car that seats four people to run for 100km. The results are disheartening.
Too many people is the problem. The solution will therefore be extremely messy no matter what we do. And unless you're ready to step up to the plate and declare that you will never have any children, don't be so quick to chastise others for their lack of commitment.
Amazing how you can spell a Latin phrase but fail to correctly spell your own nationality. Considering the poor use of grammar and punctuation, I'll take it that the Latin phrase was a fluke.
Don't worry, I blame the US public education system, not you. It's not your fault you're an ignorant blowhard with a temper.
Cheers
How has calculus changed in the last fifty years? Why do we need new editions every five years? How about general chemistry, physics, and the like? I could see the argument for some upper division work, but c'mon! For literature, it's not like Frankenstein and Don Quixote require regular updates.
If folks have to pay for a $200 item, let it be an eBook that can hold every one of the above examples after a free download.
Exercises? For the sciences, it had better be in their own handwriting and in pencil. For the humanities, there are already facilities to detect plagiarism.
It's a shame the illuminated manuscripts (big business college textbooks) are going to take a serious hit, but the printing press (The Wired and Digital Age) is here now. We couldn't turn back the clock even if we wanted to.
Vector graphics are window dressing. XBL is where it's at. With XBL you don't need any extra span tags in your main markup to act as a crutch for mismatches between your page structure and CSS. Just bind the element with XBL in your CSS and specify as many span tags as you like behind the scenes.
Combined with robust CSS support this also opens up possibilities for making HTML largely obsolete for web apps in favor of the markup syntax that best fits the problem at hand. What is a "p" tag after all but just some padding, margin, and perhaps some indentation on a block displayed element?
Once all is said and done, those vector graphics will make everything including online charts and games look nicer, but XBL 2.0 is the real main course.
Heh, and I was just thinking about how COM enforced the separation of interfaces and implementation so that MI wasn't as necessary. Or I guess hiding the bodies better. ;-)
"Complexity is minimal."
Most of the world who can code C++ would disagree with you. As for "implementing the same code over and over using interfaces," the point of interfaces is to decouple the implementation from the interface, which has maintainability and flexibility advantages that far outweigh a little extra typing during the design phase of your project.
That's a library implementation issue. Once again, there is no reason why QFrame and QMenuData couldn't be interfaces with an implementation class behind the scenes that has an instance of both classes for implementation.
For you, as a user of Qt, you would still just extend from QPopupMenu or QMenuBar. As a library user, nothing would have changed for you. Surely you don't expect to extend from both QMenuBar and QPopupMenu?
http://www.artima.com/lejava/articles/designprinciples4.html
Erich Gamma's seems more to agree with me. And I agree with Gosling that abstract classes (partial interface/partial implementation) were a bad idea.
Your interface and your implementation should remain separate.
On the contrary, I find that many Java programmers write their C++ using the style learned from Java. I also find that C coders tend write their Java like C, ignoring the standard Java style guides.
To say that learning with a language that enforces style will have no lasting effects once they leave that language is ridiculous.
Writing the following:
foo->getBar() was C++ likely written by a coder who started in Java.
class Foo { int my_var; } is an example of the opposite.
These examples are common all over the place, both at work from new employees to gobs and gobs of open source code on the net.
As for me, I know x86 and MIPS assembly, but since I don't write device drivers, I haven't had much use for it in general. Rather than spending my free time pushing and popping the memory stack, I prefer to write apps that actually make other people's lives easier.
But whatever floats your boat. For the record, I have said similar things during job interviews. They lead to interesting discussions and other topics related to tech. That said, I also adapt my code formatting to the language and, more importantly, to whatever style the team I join has decided on. But if I were in an interview with someone who claimed code clarity was akin to 'hand holding,' I likely would look elsewhere for work barring special circumstances.
Computers don't care if whitespace is present or not. Only humans find it easier to parse. Therefore a stylistic change to code does not affect the code's efficiency or efficacy. If you, as a coder, cannot adapt to a stylistic change, you are showing signs of inflexibility. Inflexibility is not an attribute I would be looking for in a coder.
But you haven't shown why MI is superior to object composition in this case. The latter can still be used in a template.
But you still haven't listed alternatives available at that time. If not NFS, then what alternatives AVAILABLE AT THAT TIME?
As for NFS being a de-facto standard, how did that happen? Did other systems have to reverse engineer the protocol -- as was the case with SMB, at least with regards to compatibility with Windows, its most prominent user -- or did Sun publish specs that others could realistically implement?
Many times, I consider documentation and clear specs more important than code. Almost anyone can hike with a map. Far fewer can without a map. And fewer still can make a map.
The map that Sun gave everyone may have had flaws and inaccuracies, but it was still better than not having a map in the first place.
Firefox requires a MIME type, which is not available when loading from the filesystem. Yes, it's lame, but that's the state of things.
An interview with Erich Gamma.
If there were better alternatives to NFS, why didn't people use them or create newer, better ones? With all the faults of NFS, I don't know of alternatives that magically make all of those problems go away. Locking on remote resources that you want to be performant is a hard problem. WebDAV certainly doesn't solve that problem. And speaking of WebDAV, how would that have solved the NFS problem when it hadn't even been invented yet? Nor had HTTP 1.1 for that matter. Nor had HTTP 1.0 for that matter. Nor had XML, which it uses for metadata.
Saying that WebDAV or AFS should have been used back in the heyday of NFS sounds like someone suggesting that DOS shouldn't have been used in 1981 because Linux would be created ten years later. You could certainly give other examples to replace DOS in '81 like CP/M, but the fact that you don't realize that NFS was first leads me to believe you are too young to remember what it was like. To give you an idea, an implementation of AFS was only released as open source in 2000 by IBM. Where were the alternatives before then?
Answer: there weren't any good ones. And speaking of Samba, unlike CIFS/SMB, the NFS docs that Sun released actually matched up well with the protocol unlike what Microsoft released and Samba reverse engineered.
FYI: "NFS v4 (RFC 3010, December 2000; revised in RFC 3530, April 2003), influenced by AFS and CIFS, includes performance improvements, mandates strong security, and introduces a stateful protocol. Version 4 became the first version developed with the Internet Engineering Task Force (IETF) after Sun Microsystems handed over the development of the NFS protocols." - Wikipedia
You have limits in any language whether they be the inclusion of a semicolon at the end of a statement, the enclosure of a conditional in parentheses, or curly braces to denote scope.
To say that those constructs built into languages are acceptable but enforced indentation is not is an arbitrary distinction. It has nothing to do with its worth or lack thereof. You have decided what you prefer and are fitting an argument to that conclusion. Philosophy does not enter into it.
A computer doesn't care whether your programming language enforces indentation. All the computer needs is an ordered sequence of bits and bytes in just the right combination to return a desired output. Computer languages were meant to be a human-readable alternative -- their sole reason for existence. If you don't think that the indentation makes the code readable, that's a valid argument though I would disagree with it.
However, I don't believe you have a "philosophical problem" with indentation on the basis of enforcement. Enforcement has nothing to do with readability, and readability is all that really matters with a language. Anything else is personal preference, which is perfectly valid, just don't frame it in the guise of a more noble cause.
And if code bases never changed, I might agree with you. However, what happens when a superclass is changed, e.g., a new method is added? Much of the time, nothing. But what happens with MI when one superclass adds a method that already exists by name in another superclass? You end up in exactly the same solution as with SI; you use composition to arbitrate the ambiguity.
When interfaces collide, there is no issue. If a method is added to a superclass in single-inheritance, it rarely affects the subclass unless that subclass is too tightly coupled with private variables (the implementation) of the superclass; you'd be hosed with any change in the superclass.
MI may result in slightly fewer lines of code, but it makes for code that's harder to understand and more brittle in the long run. In short, it's little more than syntactic sugar with no programmatic benefits but several drawbacks with regard to complexity.
I don't know jacks smirking reven, but I know people that do, and just about every one I have talked to systematically abhors the troll and affirms that there is the consumption of babies.
But then, I don't listen to hearsay. There's a reasonable possibility that jacks smirking reven is a pretty nice person, and I'll reserve judgment for when we actually meet.
God forbid that someone's code should be readable! Perish the thought! Everyone should code in Perl; it's like nuking readability from orbit -- the only way to be sure.
LISP is cool because it uses parentheses; therefore, if a language uses parentheses, it is cool.
I agree that make is atrocious, but that has no bearing on any other technology just because it shares a single idiom.
Correlation does not equal causation.
If your editor cannot alter the visual spacing to a tab, you need to get a new editor. C'mon! That was a solved problem in the early 90s if not earlier.
More like 1999. The Hotspot VM was introduced in 2000, and I consider that the real turning point for speed in the VM.
If you mean Swing, the date's closer to 2004 or even more recent than that with regard to real graphics acceleration.
In Java, you can do so at compile/design (most of the time, that's when you should be doing it). JavaScript's great for small projects, but if you have multiple people working on a codebase, swapping things out at runtime tends to get messy very quickly.
That is, unless each of your team members clearly and comprehensively documents everything they're doing. Then again, a coder that writes good documentation is more rare than a Windows developer who wishes they had fork().
Quick and dirty coding techniques work for quick and dirty projects, not much else.
That was a joke. ;-)