Fortunately for strict constructionists, they have been endowed by God with the super-human gift of being able to read the minds of people who died 200 years ago. Naturally, they use this power only for good.
If a practice was conspicuous at the time the Constitution, or the relevant amendment, was ratified, often no mind reading is required. If, in the decade or so following ratification, the courts and even the authors of the Constitution/amendment didn't find that said practice to be in violation of the Constitution or amendment, it's pretty obvious that said practice is NOT in violation of the Constitution or relevant amendment. An example of this is that the establishment clause was obviously not interpreted as meaning what the Federal courts currently interpret it as.
Obviously there are times when it is necessary to interpret the Constitution in light of technology or situations that did not exist at the time of ratification. Examples of this would be the invention of the telephone, radio, TV, internet where.
What if the answer cannot be found in the constitution?
Assuming the question is a constitutional one (as opposed to interpreting otherwise constitutional Federal laws), the Federal government has no business involving themselves in it.
If the Constitution doesn't address the issue, then it's generally not within the scope of Federal power. That pesky list of Congressional powers in Article 1, Section 8 and the pesky ninth and tenth Amendments are fairly clear on this point (obviously there are other sections of the Constitution, including the (pre Incorporation Doctrine) 14th Amendment that also infer some rights on the Federal government).
Sadly, all branches of the Federal government became a bit confused on this point during the last century.
Although I only worked at Xerox at the tail end of the disaster (I had an Alto on my desk, but that was only because no one else still wanted them!), the claims in this book seem consistent with what I heard on the internal grapevine when I was there.
Cheap shot: if Microsoft is such a great, innovative company, why's it taken them 20 years to catch up to 30-year-old software in this area?:)
To some extent MS been hobbled by their own success. As each new generation (DOS, Win3.x-Win98, WinNT-XP) and version of MS "OS" came out, application compatibility with the previous OS version was of great importance. Given the large user base that MS built (I'd guess there were more machines running DOS in 1985 than there are machines running any version of *nix even today - 20 years later). There are also many more applications available for MS systems than for *nix systems, which further compounds the problem (even MS can only test a small percentage of these applications for compatibility). In addition, most *nix machines are administered by "professionals" or geeks whereas many (maybe the majority?) of MS machines are administered by less trained/knowledgable individuals who don't accept that "I paied $20 for this application 10 years ago, how dare MS release a version of OS which breaks it - even though the application developer probably didn't follow "best practices" of development)
What about housing - should new houses have sales tax on them?
In general, while I agree that a consumption tax of some sort is ideal, there's a serious transition problem that needs to be dealt with. Most middle class folks who have built up assets over the years have already paid taxes on most of those assets (initially via income taxes on wages and later via income taxes on capital gains, interest, and dividends). These folks get taxed again via the sales tax that replaces the income taxes they already paid. If some (unfortunately complex) scheme is not put in place to give "sales tax" credits to assets already taxed before the transition from income to sales tax, it's doubtful that we will see a national sales tax replace income tax. Remember, it is the boomer generation most affected by this and they are a strong voting block and they will be particularly opposed to this double taxation.
(Of course, when one considers the screwy tax subsidies we have in the U.S. for real estate - tax deduction for mortgage interest payments and general sheltering of capital gains on housing, the transition scheme becomes even more complex because these are portions of many people's assets which have NOT been taxed yet and, when spent, these should be subject to sales tax. On a related note, the transition to a sales tax might drive the real estate market down at long last so young wage earners can afford a home again once Uncle Sam is no longer subsidizing absurd mortgages for middle-high income individuals.)
No, the correct way to do it is to test all your functions/methods/subroutines/whatever enough so that this kind of shit never happens.
A lot of this depends on the context your code is being used. My experience is limited to kernel development in DBMS (and related) servers and the tradeoffs are likely different than those in coding user libraries.
However, there will always be cases where the memory you're dealing with (either your object or other memory with contextual value) got corrupted by a wild pointer somewhere in the 10 million lines of code in the system - or, in a few cases I've dealt with, by the disk controller or occasional memory errors due to faulty or incorrectly designed hardware. In any event, the problem is not a result of any error in the code you're responsible for (and, quite possibly, not in the code of the caller or ancestors). These problems are almost always timing related and transient - and very difficult to track down (esp. while the CIO of a Fortune 50 company is yelling at your CEO that he can't run his business until the problem is fixed:( ).
Using the term "assert" loosely (I've never worked on a system where we actually used the runtime assert() provided by the compiler vendor) to refer to any test which, if it fails, results in the process/task "crashing" and with diagnostic information (crash dump/core file) being captured. Judicious usage of assert() is very valuable in production (optimized) code in these cases as the only thing that will usually help resolve the problem is to examine a core dump(s).
Also, in these cases, the safest thing to do is to reset the application as this will reduce the chances that the corruption will propagate from just being in memory to corrupting data on stable storage (i.e., transactional logs and/or user data). Even if the stable storage data is already corrupted, the reset gives the system a chance to recover and begin using an alternate version of the data.
Also, in my experience, code that attempts to actually do something useful with "can't happen" errors is rarely implemented correctly, virtually never tested well, and nearly always atrophies as new features are added. This led me to preach the following hierarchy when bringing new developers into my organization: When faced with an "impossible situation" in the code: (1) Don't corrupt the data, (2) Don't return the wrong answer with the correct data, (3) Don't cause the system to deadlock or hang, (4) Oh yes, don't crash the system - but only if preventing a crash does not increase the odds of failing to follow rules 1 through 3.
The First Amendment (along with the rest of the Bill of Rights) was not intended to expand rights but to clarify rights that already existed.
Some of the Founders felt that the Bill of Rights was unnecessary because the Federal Government's role was so limited by the body of the Constitution that it wasn't possible for the Federal government to impose on any of the rights itemized in the Bill of Rights. At the time, there were concerns (valid, as it turns out) that itemizing a subset of one's rights in the Bill of Rights could lead to actually limiting the rights of states and individuals to those listed (although the Ninth and Tenth Amendments tried to address these concerns, they have not met this goal very successfully as they have been increasingly ignored by the courts).
The adoption of the Bill of Rights was mostly to address the concerns of the Antifederalists and "take the wind out of their sails". By the time the Bill of Rights was ratified, there was relatively little interest in it since the Federalists had prevailed already -- but since they had prevailed, in part, based on the promise to consider a Bill of Rights, it went ahead. I think today we might consider the Bill of Rights as something arising from "cloakroom politics".
Sooner or later one of these will crawl off into a traffic path and the alarm's owner (stumbling out of the room in a drowsy fog) will trip over it and break his/her neck. The liability insurance alone will be more than the projected $20 cost!
Good? Here in BC we get 90% of our power from Hydro; a clean, infinitely renewable resouce.
Maybe America just needs to catch up
First, one needs geographic and weather patterns to support hydro - my guess that that per capita, BC has more suitable hydro locations than the U.S. does.
Second, one needs to be able to convince people to destroy ecosystems and endangered species to build dams. I don't know much about BC politics but it sounds like there must be less sensitivity to ecosystem and endangered species in BC than in the U.S. Indeed, in the U.S., there are calls to remove dams to restore ecocsystems.
...who else would argue that a student reading an unaffiliated forum and coming across an unidentified person describing a technique to view documents that they did not otherwise have access to could possibly have thought, "Gee, nothing shady going on here,...
Fortunately we DO have logical thinking lawyers in this country who would observe that an applicant might have gotten an email from a friend saying:
"Hey Daemonik, HBS released the acceptance and rejection letters. After you logon, just go to http://..."
In this case, the applicant would have no idea that the letters were NOT released - any more than someone who follows a link from/. generally knows or checks if they are accessing something "hidden" that is not intended for public viewing.
Umm... Hacking a bank machine is ILLEGAL (perhaps even a Federal crime?). I fail to see what is illegal about what the HBS applicants did. I suggest that this may be an indication that many people DO consider the two to be morally distinct.
In addition to the excellent response by Aglassis...
Even in this "small problem" case, if someone had not figured out that the swap had happened, there could have been (and maybe already has been) substantial effort wasted on analysis that needed to be redone. It also seems possible that if the swap had not been detected, that invalid conclusions could have been drawn resulting in bad science and possible additional cost in future missions to more science just to "resolve the unexpected finding".
It seems that an investigation should be done - this is not the same as saying "NASA/JPL are a bunch of idiots who screwed up". It is simply appropriate engineering process to learn from errors and prevent them from recurring. To NOT correct the process that results in the error may just mean that later there will be a "big problem" that could have been avoided. Also, without an investigation, it is not possible to reach agreement/understanding if the root cause of the problem possibly has other, much more serious, consequences. This is obviously more important with critical/hard to repair systems than, say, a user interface that occasionally leaves bits of GUI Poop in a window.
Some states generate less wealth per capita than others, and there are not-unreasonable arguments that throwing poorer states upon their own resources is un-neighborly.
Redistributing the wealth among the states via Federal taxation reduces the motivation of less successful states (i.e., the voters in the state) to fix their problems since it is easier to get more Federal welfare than to actually increase their state's per-capita productivity. If there is some state that is unable to take care of its basic needs, it would be neighborly for other states to help them. However, I'm not aware of any state that is incapable of supporting itself at a minimum level without Federal aid (of course, there would be a period of pain during the process of weaning states from the current misguided redistribution system). More importantly, last time I checked the United States Constitution, I don't recall seeing anything that explicitly authorizes the Federal government to force wealth redistribution among the states.
The value of Federal government involvement in areas such as education is a waste of resources. The redistribution process increases total costs while reducing agility and innovation in local education. If a group of states voluntarily decide to cooperate with each other, that's fine and they might choose to do so (for example, to pool costs of textbook development and standards) but there is no place for the Federal government in this process. I've never heard the elected officials of any state say something to the effect of "We are too stupid to run our own education system - we need the help of the smart Federal government to force us to educate our children properly". Instead, state officials often complain about the imposition of things such as standardized testing mandated by Federal programs while simultaneously complaining that they need more Federal money to fund education in their state.
But we still have to interview them anyway, and no one else I work with seems to care about how the resumes look. Is this just my company, or is this a growing trend?
It seems to be becoming increasingly acceptable to have errors in resumes and I agree that many developers and development managers seem to overlook it.
Personally, if a candidate can't be bothered to spell check their own resume, I become concerned that the person may also be sloppy about code correctness as well and they enter my office with a strike against them.
I'm a bit more tolerant of awkward grammar or occasional grammar errors because I recognize that English is often a second language and grammar checkers are not nearly as effective as spell checkers (i.e., no matter how careful the candidate was, they would never see the awkwardness or error - which is usually okay because I'm not hiring writers)
Saddam never presented such a threat, and probably never would have (no access to huge war machine such as Germany had).
It is instructive to note that in recent history, Saddam is one of the few (actually, right off hand, I can't think of another example, but they may exist) leaders of a substantial country to invade, without provocation, and completely conquer and occupy another substantial sovereign nation (Kuwait). This in spite of the fact that an objective outsider at the time would have found it extremely likely that (1) the U.S. and possibly many other nations would respond and that (2) Saddam's military really had no chance against a modern military response.
The degree of threat a leader poses is, in part, dependent on if they behave rationally (and hence predictably) - and Saddam has a dangerous history of behaving irrationally (even Kim Il Sung hasn't done anything as stupid as Saddam did in invading Kuwait - and Kim Il Sung doesn't seem to be the most centered human on the planet). Assuming (perhaps incorrectly - I'll leave that up the Freudians to debate) that Saddam's goal wasn't to fail, he appears to be a very bad judge of international politics and possibly has delusions of grandeur. Indeed, in the run-up to the Iraqi war, he again appeared to be irrational. I believe that well past the time that many, if not most, Americans would have bet that the U.S. was going to invade Iraq if Saddam didn't back down (after all, the U.S. had a Texas Cowboy wannabee in the White House) Saddam seemed to cling to the irrational notion that (1) the U.N. was relevant (note to Saddam - bribe people who are relevant, you're wasting your money bribing those that are not) and (2) he could play the current Administration like a violin just because he had been able to do so with the previous Administration (note to Saddam, if you plot to kill someone's daddy, it can create a bit of animosity).
Given Saddam's irrational and aggressive history, it was very difficult to predict what he might do. If, in fact, Saddam did have (or was able to fairly quickly acquire) WMDs (esp. nuclear fission weapons), there's little reason to believe based on his past history that he would not use them in an irrational manner and, by doing so, could cause a great deal of damage/loss of life without a "huge war machine".
It would have been nice if the U.S. intelligence agencies had not screwed up wrt WMDs. Intelligence is, however, a very problematic business which makes software development look pretty elementary (the CPU rarely fails to do exactly what it is asked, and it never intentionally does something wrong just to deceive the developer - still there are many unsolved bugs). Errors in intelligence are not only likely, they are to be expected and it's rare that intelligence can yield a 100% guaranteed answer so leaders must, by necessity, act on uncertain information or they would rarely act (and hence, would not respond to any threat - for example, even today I doubt that it is known to 100% probability that OBL was linked to the World Trade Center attack, but it seems to be almost universally agreed that OBL is "fair game").
I personally would prefer that the U.S. had not gone into Iraqi, but it was much more justified than many military actions the U.S. has engaged in previously so it's not at the top of my list of "missteps" by the U.S. Also, I'm quite convinced that the Iraqi people will be substantially better off in the ten-year timeframe because of the U.S.'s action (but, really, that was their problem to solve - it's called a revolution and hundreds of thousands might have died, but IMHO it's not the U.S.'s role to project military force for foreign humanitarian reasons).
Actually, this is an argument why individuals should have access to weapons of the same class as the military. I know, this could start the "should individuals have access to strategic nukes argument?" - the answer is probably "no" because such weapons have no use in defense of your own territory (tactical nukes may be a different matter however).
Note that only a tiny fraction of the Iraqis are part of the "insurgency" and, frankly, they are being quite effective given their numbers - note a primary reason is because they are armed. Imagine if 20% of the population were active armed (RPGs, IEDs etc) "insurgents" - our military would be gone (either because of a political decision or, lacking that, because they were unable to deploy an effective force using the surviving personnel).
As long as a military attempting to suppress a people is relatively small compared to the population to be suppressed, it is not necessary that the people be quite as well armed as the military - "close enough" will suffice. In these cases the military is outnumbered and not as familiar with the landscape which gives the people an advantage. More importantly, the existence of deadly force in the hands of the people escalates the conflict to the point where the military must kill others like themselves in order to prevail - which dramatically increases the odds of defection in the ranks (how many people would kill their own father, brother, or child - or anyone appearing to be like same - because they were "ordered" to?)
Is there no room for critical re-examination of these cornerstones to see if we, as a people, have evolved past them? I have a hard time believing the founding fathers thought they would be interpreted so literally hundreds of years later.
The Founding Fathers understood that the Constitution needed to adapt over time. Thus, they provided a process to do so -- by amending it (see Article V). This process intentionally requires a broad consensus -- it was believed it should not be undertaken lightly. In spite of the difficulty, it is obviously possible to amend the Constitution -- as evidenced by the fact that there are now twenty-seven amendments (it is probably reasonable to subtract the ten comprising the Bill of Rights from the analysis since the inclusion of the Bill of Rights was a condition on which the Constitution was ratified by some states - although it is interesting that the Twenty-Seventh Amendment was sent to the state legislators at the same time as the Bill of Rights but was not ratified until 1992!)
Is there any evidence that our Founding Fathers expected the Constitution to become interpreted less literally as time passed? Doing so sets a precedence for current or future generations to "reinterpret" whatever your favorite clause is. Overall, such a philosophy is scary (albeit, prevalent in the jurisprudence of the past fifty years) as it sets the stage for a tyranny of the majority.
"...allowing a family to acquire massive wealth and pass it on unfettered to one generation after another is how you create an aristocracy, and each subsequent generation tends to be more pathetic than the last because they are born with silver spoons in their mouths(like the Bush family). "
And, in the interests of fairness, don't forget the Kennedy clan - most notably JFK and Teddy whose political aspirations were clearly advanced by their wealth. More to the point of this thread, don't forget the next generation of elitists born with silver spoons in their mouth - including Robert F Jr. who is a big fan of wind power -- as long as it's not in his precious Nantucket Sound (presumably, wind farms are better situatated where the "little people" live).
Agreed that folding A with BafterA has been compromised is a nonstarter.
However, isn't there merit to the general idea of combining two 'dissimilar' (i.e., the theoretical basis for the 'security' of each share as few attributes as feasible) hash functions X and Y where both X and Y are currently though to be 'secure'?
In those very common cases where the hash is protecting something with decreasing time value (such as software binaries which become obsolete in a few years) or where the original source is secure and it is only alterations of copies that are a concern (perhaps historical legal documents), this buys time if X or Y (but not both) is compromised (or seem more likely to be compromised - as MD5 is now)?
For example, if X=MD5, the concerns about MD5 would result in an effort to discontinue its use and replace it with a new hash function Z and start using Y+Z. While the community switches to a new combination, everything is still pretty safe (as safe as Y in this case) during this transition period.
It seems that in the private sector (spooks aside), it's quite unlikely that X and Y would both be effectively compromised simultaneously and with little warning unless the notion of dissimilarity is also compromised. Fortunately, the skills needed to compromise such functions seem to be concentrated in the guys with the white hats so they tend to publish their preliminary results.
Disclaimer: I'm not a cryptomaniac so my observations are worth substantially less than you paid for them.
If the GPA is not on the resume of a candidate with two or less years of experience, I am suspicious due to its absence (maybe it was poor?). Alternatively, if the GPA is on the resume of a candidate with ten years of experience, I am suspicious due to its presence (if nothing else, the candidate should know that with ten years experience, I'm looking for commercial successes, not potential).
For a freshout, especially from a lesser school, I look very closely at the GPA - if someone isn't smart enough or motivated enough to get a 4.0 (in major) from a lesser school, why would I expect them to be smart enough or motivated enough to figure out a timing window in their code which is holding up a multimillion dollar release? This may seem unfair, but I don't have time to talk to every candidate to hear the sob story about why they couldn't excel at an easy school.
[My comments are relative to my 25 years of experience in server development -- almost all at startup companies that grew into larger companies through various combinations of success and acquisition. I've toggled between hiring manager and developer about 50/50. If you're looking at IT or Applications Programming opportunities or want to work "eight-five" at a big company, my observations may be irrelevant. There are, of course, also exceptions to all the "rules" below - but in my experience they are fairly rare.]
BOTTOM LINE: GO TO THE BEST CS SCHOOL YOU CAN SUCCEED AT - THE SCHOOL MAY SET THE TONE FOR THE REMAINDER OF YOUR CAREER.
I've reviewed quite a few (probably nearly 10K) developer resumes over the years - most of which were prescreened by recruiters to my specific requirements. Even with the "prescreening", a resume probably gets an average of one minute of attention unless something particularly turns me off (in which case, it gets less than one minute) or particularly excites me (in which case it gets more time and may eventually end up in a hire). The more years of experience a candidate has, the less relevant the source and major of the degree is (although, if someone under about 50 doesn't have a B.Sc., preferably in CS or math, that's a red flag because such degrees were commonplace by 1980). But, for candidates with less than three or four years of experience, both the source and major of the degree is a very significant factor.
I've also been involved in a fair amount of on-campus recruiting over the years and the reality is that GPA and school are VERY important. From a "lesser" school (say, without the intent of offense, most Cal State schools) anything much less than a 4.0 "in major", 3.7 overall, and a preference for "hard" classes (i.e., CS classes to build credits, not Psych 101A) usually gets the resume routed to the "no on-site interview" pile - this is because it is relatively easy to get a 4.0 in-major from such a school unless one is lazy or not very sharp (neither of which is promising in a candidate for a job!). From a "better" school (say, without the intent of offense, UC Berkeley), seeing one or two A-'s or B+'s for a CS class is not completely off-putting (a B- or lower is cause for substantial investigation however). Even with prescreening of transcripts and resumes, from a lesser school I am happy if one on-campus interview out of 15 advance to an offer of an on-site interview. On the other hand, I expect as many as four or five from a top school to advance to an offer of an on-site interview.
One problem I have found with candidates from "lesser" schools who are at the top of their class is that usually they haven't been challenged by peers, coursework, and professors as much as they would have been at "better" schools. This "large fish in small pond" syndrome is a problem for a couple of reasons. First, they often think they are better than they are (after all, they are better than most everyone around them - but the people around them turn out not to be very good) and don't interview well due to this disconnect. Second, they often just haven't been exposed to some of the trickier concepts so in a 45 minute interview, it's hard to find a common ground from which to probe their intellect. This is sad because I'm sure some of these candidates would have been more qualified if they had been challenged more -- but perhaps could not afford to attend a better school or screwed up their verbal SAT scores and didn't qualify for admission to a better school.
Although one can rationalize "I will stay at a lesser school and get the experience I need at the first couple of jobs and then move into better jobs", I don't think this works well in practice. It's been my experience that the first job or two often sets the tone for the remainder of developers' careers. By the time you're "ready" for the better job, all the other people competing for the job already have three or four years of better experience so you're still beh
Fortunately for strict constructionists, they have been endowed by God with the super-human gift of being able to read the minds of people who died 200 years ago. Naturally, they use this power only for good.
If a practice was conspicuous at the time the Constitution, or the relevant amendment, was ratified, often no mind reading is required. If, in the decade or so following ratification, the courts and even the authors of the Constitution/amendment didn't find that said practice to be in violation of the Constitution or amendment, it's pretty obvious that said practice is NOT in violation of the Constitution or relevant amendment. An example of this is that the establishment clause was obviously not interpreted as meaning what the Federal courts currently interpret it as.
Obviously there are times when it is necessary to interpret the Constitution in light of technology or situations that did not exist at the time of ratification. Examples of this would be the invention of the telephone, radio, TV, internet where.
What if the answer cannot be found in the constitution?
Assuming the question is a constitutional one (as opposed to interpreting otherwise constitutional Federal laws), the Federal government has no business involving themselves in it.
If the Constitution doesn't address the issue, then it's generally not within the scope of Federal power. That pesky list of Congressional powers in Article 1, Section 8 and the pesky ninth and tenth Amendments are fairly clear on this point (obviously there are other sections of the Constitution, including the (pre Incorporation Doctrine) 14th Amendment that also infer some rights on the Federal government).
Sadly, all branches of the Federal government became a bit confused on this point during the last century.
- "Fumbling the Future: How Xerox Invented, Then Ignored, the First Personal Computer"
(http://www.amazon.com/exec/obidos/tg/detail/-/15Although I only worked at Xerox at the tail end of the disaster (I had an Alto on my desk, but that was only because no one else still wanted them!), the claims in this book seem consistent with what I heard on the internal grapevine when I was there.
Cheap shot: if Microsoft is such a great, innovative company, why's it taken them 20 years to catch up to 30-year-old software in this area? :)
To some extent MS been hobbled by their own success. As each new generation (DOS, Win3.x-Win98, WinNT-XP) and version of MS "OS" came out, application compatibility with the previous OS version was of great importance. Given the large user base that MS built (I'd guess there were more machines running DOS in 1985 than there are machines running any version of *nix even today - 20 years later). There are also many more applications available for MS systems than for *nix systems, which further compounds the problem (even MS can only test a small percentage of these applications for compatibility). In addition, most *nix machines are administered by "professionals" or geeks whereas many (maybe the majority?) of MS machines are administered by less trained/knowledgable individuals who don't accept that "I paied $20 for this application 10 years ago, how dare MS release a version of OS which breaks it - even though the application developer probably didn't follow "best practices" of development)
Food, clothing, and medicine exempted,
What about housing - should new houses have sales tax on them?
In general, while I agree that a consumption tax of some sort is ideal, there's a serious transition problem that needs to be dealt with. Most middle class folks who have built up assets over the years have already paid taxes on most of those assets (initially via income taxes on wages and later via income taxes on capital gains, interest, and dividends). These folks get taxed again via the sales tax that replaces the income taxes they already paid. If some (unfortunately complex) scheme is not put in place to give "sales tax" credits to assets already taxed before the transition from income to sales tax, it's doubtful that we will see a national sales tax replace income tax. Remember, it is the boomer generation most affected by this and they are a strong voting block and they will be particularly opposed to this double taxation.
(Of course, when one considers the screwy tax subsidies we have in the U.S. for real estate - tax deduction for mortgage interest payments and general sheltering of capital gains on housing, the transition scheme becomes even more complex because these are portions of many people's assets which have NOT been taxed yet and, when spent, these should be subject to sales tax. On a related note, the transition to a sales tax might drive the real estate market down at long last so young wage earners can afford a home again once Uncle Sam is no longer subsidizing absurd mortgages for middle-high income individuals.)
No, the correct way to do it is to test all your functions/methods/subroutines/whatever enough so that this kind of shit never happens.
:( ).
A lot of this depends on the context your code is being used. My experience is limited to kernel development in DBMS (and related) servers and the tradeoffs are likely different than those in coding user libraries.
However, there will always be cases where the memory you're dealing with (either your object or other memory with contextual value) got corrupted by a wild pointer somewhere in the 10 million lines of code in the system - or, in a few cases I've dealt with, by the disk controller or occasional memory errors due to faulty or incorrectly designed hardware. In any event, the problem is not a result of any error in the code you're responsible for (and, quite possibly, not in the code of the caller or ancestors). These problems are almost always timing related and transient - and very difficult to track down (esp. while the CIO of a Fortune 50 company is yelling at your CEO that he can't run his business until the problem is fixed
Using the term "assert" loosely (I've never worked on a system where we actually used the runtime assert() provided by the compiler vendor) to refer to any test which, if it fails, results in the process/task "crashing" and with diagnostic information (crash dump/core file) being captured. Judicious usage of assert() is very valuable in production (optimized) code in these cases as the only thing that will usually help resolve the problem is to examine a core dump(s).
Also, in these cases, the safest thing to do is to reset the application as this will reduce the chances that the corruption will propagate from just being in memory to corrupting data on stable storage (i.e., transactional logs and/or user data). Even if the stable storage data is already corrupted, the reset gives the system a chance to recover and begin using an alternate version of the data.
Also, in my experience, code that attempts to actually do something useful with "can't happen" errors is rarely implemented correctly, virtually never tested well, and nearly always atrophies as new features are added. This led me to preach the following hierarchy when bringing new developers into my organization: When faced with an "impossible situation" in the code: (1) Don't corrupt the data, (2) Don't return the wrong answer with the correct data, (3) Don't cause the system to deadlock or hang, (4) Oh yes, don't crash the system - but only if preventing a crash does not increase the odds of failing to follow rules 1 through 3.
The First Ammendment expands your rights.
The First Amendment (along with the rest of the Bill of Rights) was not intended to expand rights but to clarify rights that already existed.
Some of the Founders felt that the Bill of Rights was unnecessary because the Federal Government's role was so limited by the body of the Constitution that it wasn't possible for the Federal government to impose on any of the rights itemized in the Bill of Rights. At the time, there were concerns (valid, as it turns out) that itemizing a subset of one's rights in the Bill of Rights could lead to actually limiting the rights of states and individuals to those listed (although the Ninth and Tenth Amendments tried to address these concerns, they have not met this goal very successfully as they have been increasingly ignored by the courts).
The adoption of the Bill of Rights was mostly to address the concerns of the Antifederalists and "take the wind out of their sails". By the time the Bill of Rights was ratified, there was relatively little interest in it since the Federalists had prevailed already -- but since they had prevailed, in part, based on the promise to consider a Bill of Rights, it went ahead. I think today we might consider the Bill of Rights as something arising from "cloakroom politics".
What, there's a manual? Pls post a link (I've been working by trial and error for 25 years - what a waste of time).
while (1) {usepreviewbuttontothwartspellingnazis();}
You're probably touching the wrong button.
Your probably touching the wrong button.
Sooner or later one of these will crawl off into a traffic path and the alarm's owner (stumbling out of the room in a drowsy fog) will trip over it and break his/her neck. The liability insurance alone will be more than the projected $20 cost!
Good? Here in BC we get 90% of our power from Hydro; a clean, infinitely renewable resouce.
Maybe America just needs to catch up
First, one needs geographic and weather patterns to support hydro - my guess that that per capita, BC has more suitable hydro locations than the U.S. does.
Second, one needs to be able to convince people to destroy ecosystems and endangered species to build dams. I don't know much about BC politics but it sounds like there must be less sensitivity to ecosystem and endangered species in BC than in the U.S. Indeed, in the U.S., there are calls to remove dams to restore ecocsystems.
In this case, the applicant would have no idea that the letters were NOT released - any more than someone who follows a link from
Morally, yes, yes they are.
Umm... Hacking a bank machine is ILLEGAL (perhaps even a Federal crime?). I fail to see what is illegal about what the HBS applicants did. I suggest that this may be an indication that many people DO consider the two to be morally distinct.
In addition to the excellent response by Aglassis...
Even in this "small problem" case, if someone had not figured out that the swap had happened, there could have been (and maybe already has been) substantial effort wasted on analysis that needed to be redone. It also seems possible that if the swap had not been detected, that invalid conclusions could have been drawn resulting in bad science and possible additional cost in future missions to more science just to "resolve the unexpected finding".
It seems that an investigation should be done - this is not the same as saying "NASA/JPL are a bunch of idiots who screwed up". It is simply appropriate engineering process to learn from errors and prevent them from recurring. To NOT correct the process that results in the error may just mean that later there will be a "big problem" that could have been avoided. Also, without an investigation, it is not possible to reach agreement/understanding if the root cause of the problem possibly has other, much more serious, consequences. This is obviously more important with critical/hard to repair systems than, say, a user interface that occasionally leaves bits of GUI Poop in a window.
And you call yourself a geek! It's probably not what it seems - the outhouse is probably out back.
Some states generate less wealth per capita than others, and there are not-unreasonable arguments that throwing poorer states upon their own resources is un-neighborly.
Redistributing the wealth among the states via Federal taxation reduces the motivation of less successful states (i.e., the voters in the state) to fix their problems since it is easier to get more Federal welfare than to actually increase their state's per-capita productivity. If there is some state that is unable to take care of its basic needs, it would be neighborly for other states to help them. However, I'm not aware of any state that is incapable of supporting itself at a minimum level without Federal aid (of course, there would be a period of pain during the process of weaning states from the current misguided redistribution system). More importantly, last time I checked the United States Constitution, I don't recall seeing anything that explicitly authorizes the Federal government to force wealth redistribution among the states.
The value of Federal government involvement in areas such as education is a waste of resources. The redistribution process increases total costs while reducing agility and innovation in local education. If a group of states voluntarily decide to cooperate with each other, that's fine and they might choose to do so (for example, to pool costs of textbook development and standards) but there is no place for the Federal government in this process. I've never heard the elected officials of any state say something to the effect of "We are too stupid to run our own education system - we need the help of the smart Federal government to force us to educate our children properly". Instead, state officials often complain about the imposition of things such as standardized testing mandated by Federal programs while simultaneously complaining that they need more Federal money to fund education in their state.
But we still have to interview them anyway, and no one else I work with seems to care about how the resumes look. Is this just my company, or is this a growing trend?
It seems to be becoming increasingly acceptable to have errors in resumes and I agree that many developers and development managers seem to overlook it.
Personally, if a candidate can't be bothered to spell check their own resume, I become concerned that the person may also be sloppy about code correctness as well and they enter my office with a strike against them.
I'm a bit more tolerant of awkward grammar or occasional grammar errors because I recognize that English is often a second language and grammar checkers are not nearly as effective as spell checkers (i.e., no matter how careful the candidate was, they would never see the awkwardness or error - which is usually okay because I'm not hiring writers)
Saddam never presented such a threat, and probably never would have (no access to huge war machine such as Germany had).
It is instructive to note that in recent history, Saddam is one of the few (actually, right off hand, I can't think of another example, but they may exist) leaders of a substantial country to invade, without provocation, and completely conquer and occupy another substantial sovereign nation (Kuwait). This in spite of the fact that an objective outsider at the time would have found it extremely likely that (1) the U.S. and possibly many other nations would respond and that (2) Saddam's military really had no chance against a modern military response.
The degree of threat a leader poses is, in part, dependent on if they behave rationally (and hence predictably) - and Saddam has a dangerous history of behaving irrationally (even Kim Il Sung hasn't done anything as stupid as Saddam did in invading Kuwait - and Kim Il Sung doesn't seem to be the most centered human on the planet). Assuming (perhaps incorrectly - I'll leave that up the Freudians to debate) that Saddam's goal wasn't to fail, he appears to be a very bad judge of international politics and possibly has delusions of grandeur. Indeed, in the run-up to the Iraqi war, he again appeared to be irrational. I believe that well past the time that many, if not most, Americans would have bet that the U.S. was going to invade Iraq if Saddam didn't back down (after all, the U.S. had a Texas Cowboy wannabee in the White House) Saddam seemed to cling to the irrational notion that (1) the U.N. was relevant (note to Saddam - bribe people who are relevant, you're wasting your money bribing those that are not) and (2) he could play the current Administration like a violin just because he had been able to do so with the previous Administration (note to Saddam, if you plot to kill someone's daddy, it can create a bit of animosity).
Given Saddam's irrational and aggressive history, it was very difficult to predict what he might do. If, in fact, Saddam did have (or was able to fairly quickly acquire) WMDs (esp. nuclear fission weapons), there's little reason to believe based on his past history that he would not use them in an irrational manner and, by doing so, could cause a great deal of damage/loss of life without a "huge war machine".
It would have been nice if the U.S. intelligence agencies had not screwed up wrt WMDs. Intelligence is, however, a very problematic business which makes software development look pretty elementary (the CPU rarely fails to do exactly what it is asked, and it never intentionally does something wrong just to deceive the developer - still there are many unsolved bugs). Errors in intelligence are not only likely, they are to be expected and it's rare that intelligence can yield a 100% guaranteed answer so leaders must, by necessity, act on uncertain information or they would rarely act (and hence, would not respond to any threat - for example, even today I doubt that it is known to 100% probability that OBL was linked to the World Trade Center attack, but it seems to be almost universally agreed that OBL is "fair game").
I personally would prefer that the U.S. had not gone into Iraqi, but it was much more justified than many military actions the U.S. has engaged in previously so it's not at the top of my list of "missteps" by the U.S. Also, I'm quite convinced that the Iraqi people will be substantially better off in the ten-year timeframe because of the U.S.'s action (but, really, that was their problem to solve - it's called a revolution and hundreds of thousands might have died, but IMHO it's not the U.S.'s role to project military force for foreign humanitarian reasons).
Actually, this is an argument why individuals should have access to weapons of the same class as the military. I know, this could start the "should individuals have access to strategic nukes argument?" - the answer is probably "no" because such weapons have no use in defense of your own territory (tactical nukes may be a different matter however).
Note that only a tiny fraction of the Iraqis are part of the "insurgency" and, frankly, they are being quite effective given their numbers - note a primary reason is because they are armed. Imagine if 20% of the population were active armed (RPGs, IEDs etc) "insurgents" - our military would be gone (either because of a political decision or, lacking that, because they were unable to deploy an effective force using the surviving personnel).
As long as a military attempting to suppress a people is relatively small compared to the population to be suppressed, it is not necessary that the people be quite as well armed as the military - "close enough" will suffice. In these cases the military is outnumbered and not as familiar with the landscape which gives the people an advantage. More importantly, the existence of deadly force in the hands of the people escalates the conflict to the point where the military must kill others like themselves in order to prevail - which dramatically increases the odds of defection in the ranks (how many people would kill their own father, brother, or child - or anyone appearing to be like same - because they were "ordered" to?)
Is there no room for critical re-examination of these cornerstones to see if we, as a people, have evolved past them? I have a hard time believing the founding fathers thought they would be interpreted so literally hundreds of years later.
The Founding Fathers understood that the Constitution needed to adapt over time. Thus, they provided a process to do so -- by amending it (see Article V). This process intentionally requires a broad consensus -- it was believed it should not be undertaken lightly. In spite of the difficulty, it is obviously possible to amend the Constitution -- as evidenced by the fact that there are now twenty-seven amendments (it is probably reasonable to subtract the ten comprising the Bill of Rights from the analysis since the inclusion of the Bill of Rights was a condition on which the Constitution was ratified by some states - although it is interesting that the Twenty-Seventh Amendment was sent to the state legislators at the same time as the Bill of Rights but was not ratified until 1992!)
Is there any evidence that our Founding Fathers expected the Constitution to become interpreted less literally as time passed? Doing so sets a precedence for current or future generations to "reinterpret" whatever your favorite clause is. Overall, such a philosophy is scary (albeit, prevalent in the jurisprudence of the past fifty years) as it sets the stage for a tyranny of the majority.
And, in the interests of fairness, don't forget the Kennedy clan - most notably JFK and Teddy whose political aspirations were clearly advanced by their wealth. More to the point of this thread, don't forget the next generation of elitists born with silver spoons in their mouth - including Robert F Jr. who is a big fan of wind power -- as long as it's not in his precious Nantucket Sound (presumably, wind farms are better situatated where the "little people" live).
Agreed that folding A with B after A has been compromised is a nonstarter.
However, isn't there merit to the general idea of combining two 'dissimilar' (i.e., the theoretical basis for the 'security' of each share as few attributes as feasible) hash functions X and Y where both X and Y are currently though to be 'secure'?
In those very common cases where the hash is protecting something with decreasing time value (such as software binaries which become obsolete in a few years) or where the original source is secure and it is only alterations of copies that are a concern (perhaps historical legal documents), this buys time if X or Y (but not both) is compromised (or seem more likely to be compromised - as MD5 is now)?
For example, if X=MD5, the concerns about MD5 would result in an effort to discontinue its use and replace it with a new hash function Z and start using Y+Z. While the community switches to a new combination, everything is still pretty safe (as safe as Y in this case) during this transition period.
It seems that in the private sector (spooks aside), it's quite unlikely that X and Y would both be effectively compromised simultaneously and with little warning unless the notion of dissimilarity is also compromised. Fortunately, the skills needed to compromise such functions seem to be concentrated in the guys with the white hats so they tend to publish their preliminary results.
Disclaimer: I'm not a cryptomaniac so my observations are worth substantially less than you paid for them.
For a freshout, especially from a lesser school, I look very closely at the GPA - if someone isn't smart enough or motivated enough to get a 4.0 (in major) from a lesser school, why would I expect them to be smart enough or motivated enough to figure out a timing window in their code which is holding up a multimillion dollar release? This may seem unfair, but I don't have time to talk to every candidate to hear the sob story about why they couldn't excel at an easy school.
[My comments are relative to my 25 years of experience in server development -- almost all at startup companies that grew into larger companies through various combinations of success and acquisition. I've toggled between hiring manager and developer about 50/50. If you're looking at IT or Applications Programming opportunities or want to work "eight-five" at a big company, my observations may be irrelevant. There are, of course, also exceptions to all the "rules" below - but in my experience they are fairly rare.]
BOTTOM LINE: GO TO THE BEST CS SCHOOL YOU CAN SUCCEED AT - THE SCHOOL MAY SET THE TONE FOR THE REMAINDER OF YOUR CAREER.
I've reviewed quite a few (probably nearly 10K) developer resumes over the years - most of which were prescreened by recruiters to my specific requirements. Even with the "prescreening", a resume probably gets an average of one minute of attention unless something particularly turns me off (in which case, it gets less than one minute) or particularly excites me (in which case it gets more time and may eventually end up in a hire). The more years of experience a candidate has, the less relevant the source and major of the degree is (although, if someone under about 50 doesn't have a B.Sc., preferably in CS or math, that's a red flag because such degrees were commonplace by 1980). But, for candidates with less than three or four years of experience, both the source and major of the degree is a very significant factor.
I've also been involved in a fair amount of on-campus recruiting over the years and the reality is that GPA and school are VERY important. From a "lesser" school (say, without the intent of offense, most Cal State schools) anything much less than a 4.0 "in major", 3.7 overall, and a preference for "hard" classes (i.e., CS classes to build credits, not Psych 101A) usually gets the resume routed to the "no on-site interview" pile - this is because it is relatively easy to get a 4.0 in-major from such a school unless one is lazy or not very sharp (neither of which is promising in a candidate for a job!). From a "better" school (say, without the intent of offense, UC Berkeley), seeing one or two A-'s or B+'s for a CS class is not completely off-putting (a B- or lower is cause for substantial investigation however). Even with prescreening of transcripts and resumes, from a lesser school I am happy if one on-campus interview out of 15 advance to an offer of an on-site interview. On the other hand, I expect as many as four or five from a top school to advance to an offer of an on-site interview.
One problem I have found with candidates from "lesser" schools who are at the top of their class is that usually they haven't been challenged by peers, coursework, and professors as much as they would have been at "better" schools. This "large fish in small pond" syndrome is a problem for a couple of reasons. First, they often think they are better than they are (after all, they are better than most everyone around them - but the people around them turn out not to be very good) and don't interview well due to this disconnect. Second, they often just haven't been exposed to some of the trickier concepts so in a 45 minute interview, it's hard to find a common ground from which to probe their intellect. This is sad because I'm sure some of these candidates would have been more qualified if they had been challenged more -- but perhaps could not afford to attend a better school or screwed up their verbal SAT scores and didn't qualify for admission to a better school.
Although one can rationalize "I will stay at a lesser school and get the experience I need at the first couple of jobs and then move into better jobs", I don't think this works well in practice. It's been my experience that the first job or two often sets the tone for the remainder of developers' careers. By the time you're "ready" for the better job, all the other people competing for the job already have three or four years of better experience so you're still beh