Because I procrastinated due to the overwhelming complexity overloading my mind with the myriad scenarios resulting from those two necessary lines and my lack of experience with this scenario depriving me of the intuition necessary to prune the aforementioned tree of mental complexity in an efficient manner.
My first boss and my boss two positions ago both thought that way. It was incredibly frustrating. Along with: If only you programmers would stop putting in bugs we'd ship perfect software every time. (When most of the "bugs" were specification errors and not program logic errors.)
// return the maximum value from an array
return array.min();
Specification error:
Only users with role X can access this content.
[where X should've been Y]
In the former case, a test should catch it (because the code isn't doing what we believe, per spec, it should be doing). In the latter case, only validation (confirming with customers) can catch it. Any test that is run against the code will be based on the spec which tells us to do the wrong thing.
Though we usually didn't run into the latter case, ours were mostly embedded systems. So the problem was more like: You implemented this against Industry Standard 1234-A, but we're implementing against Industry Standard 1234-B which says that message Foo word 15 now has a range of 1-20, not 1-19, and 20 means "cease operations", and 18 has been changed from "cease operations" to "halt and catch fire".
So one system was developed per one spec, and another per a slightly different spec. The other common scenario was that the specs weren't created from thin air, but rather based on a preexisting system. And the authors of the spec misinterpreted what the preexisting system did and gave an incorrect specification for a behavior. When testing against the old system (or with the old system as these were mostly communication systems) you'd see a difference in behavior or failure to communicate. But since tests were never truly comprehensive, many of these errors could make it out into the world.
I generally consider system stability an assumed part of the specification. Your system should handle most input errors from users more gracefully than a crash. Specifications are never as detailed as the program. So a description of what it should accept implies what it shouldn't. The questions for the programmer when faced with invalid input are:
1. Should it crash? (almost always no)
2. Should it process the garbage input as though it were valid? (pushing the input validation problem further down and potentially causing issues in random locations of the program)
3. Should it reject the input and request a different input? (probably)
Once you get to 3 you've got a number of ways to re-prompt the user or indicate that the input is invalid in a way that won't crash the program. You may need to go back to the customer to figure out their preferred resolution. But crashing is almost certainly not what they want and a sign of a program error (not specification error).
I would classify it as a specification error if they told us X1 would work, and then supplied X2 in a way that was close enough to pass most validation, but not close enough to work correctly.
Like, "The data format is a series of messages. Each message consists of up to 512 16-bit words. Word 0 specifies the length of the message, including itself." and then it turns out that word 0 specifies the length excluding itself causing us to not grab enough data in the first message, and then random amounts of data after that.
> France, Germany, Denmark, Britain and others have decided to take over the payrolls of struggling companies, so that workers don’t get laid off. The hope is that by paying people to stay home, governments can slow the virus’s spread while also averting an economic depression.
> Since many European countries had similar social safety net programs already, albeit in far more limited form, the salary supports were relatively easy to expand, almost literally overnight in many places, amid widespread consensus. When they imposed their economically devastating lockdowns, countries were thus able to signal to workers that their livelihoods would remain intact and to businesses that they wouldn’t immediately implode.
You're confusing the object for the verb. The sex habit is "jerking off" not "to internet porn", and all it takes is a simple youtube search for "bonobos jerking off" to see that you're wrong.
That's like saying humans have evolved radically different behavior compared to 200 years ago because back then they couldn't travel to another celestial body.
I would argue jerking off to Internet porn and jerking off to a fantasy are both exhibiting the same behavior, just like a polar explorer from the 19th century and a lunar explorer from the 20th century are exhibiting the same behavior.
We have very little actual knowledge of pre-historic humans to speculate about their sexual behaviours (and as with all other human behavior, I'm sure there is and has been great variance in this).
In any case bonobos would not write Kama Sutra even in 20,000 years. Your timescale and argument is way off.
It's called "Regulatory capture". They're trying to slow down / hinder competition, while at the same time benefiting from loopholes sewn into the legislation their lobbyists helped to create.
That would be a good thing, not a bad thing. It would force colleges to conform to the rules of capitalism, making the market for education sane again.
Student loans should not be handed out as easily as they currently are.
> Student loans should not be handed out as easily as they currently are.
I would argue that 'student loans should not be handed out as equally as they currently are' -- in that loan terms are independent of major selection (and career prospects).
By all means continue to mandate that loan terms be familial-wealth blind (and institution-blind), but allow lenders to differentiate with rates on the basis of area of degree earned.
It's a lagging indicator, but it's insane that we specifically break market signals between the actual job market and the primary methods by which students finance their education.
If someone wants to get a degree in medieval plant philosophy, then they can bloody well self-finance that.
> but allow lenders to differentiate with rates on the basis of area of degree earned
This makes little sense in the current system, where many students don't even declare a major for their first year (or two, sometimes). They'd be halfway through college by the time they were able to know which degree they'll earn.
Intended major is just as bad of a metric. I think we all know many people who intended to go into one major and ended up in another.
So I’ll double major in biology and something else I’m actually interested in, say my intended career is medicine (even though it’s not), and maintain my low interest rate for four years (or even longer)?
> By all means continue to mandate that loan terms be familial-wealth blind (and institution-blind),
Student loan terms (private and public) are blind to neither of these factors.
> but allow lenders to differentiate with rates on the basis of area of degree earned.
Lenders outside of the federally guaranteed system are allowed to do this, as well as to consider all of the other factors you suggest loans should “remain” blind to. The only lender inside the federally-guaranteed system is the federal government itself (and it is also not blind to the factors you suggest it should remain blind to, since both are factors already.) Further any argument for major sensitivity is a much stronger argument for much additional weighting by institution, since all the market factors that apply to majors also apply to institutions.
(Clarification: I'm talking about the US loan program)
> Student loan terms (private and public) are blind to neither of these factors.
They are negatively blind, in that I cannot charge someone with family wealth in excess of $1M a lower rate than someone with negative family wealth. Correct me if I'm wrong.
> Lenders outside of the federally guaranteed system
I'm limiting these statements to the federal loan system, because that where a huge chunk of debt is created.
> The only lender inside the federally-guaranteed system is the federal government itself
Apparently this was changed in 2010? Prior to that, this was absolutely not the case via FFELs [1].
> and it is also not blind to the factors you suggest it should remain blind to, since both are factors already
See clarification about positive vs negative blinding.
> Further any argument for major sensitivity is a much stronger argument for much additional weighting by institution, since all the market factors that apply to majors also apply to institutions.
Not intrinsically. The problem with allowing rate sensitivity is making it outcome-sensitive while avoiding it becoming pre-existing wealth-sensitive.
I think everyone would feel it's unfair if Harvard loans charged 2% interest, while Community College loans charged 25%, because the acceptance demographics and underlying default rates supported that difference.
> They are negatively blind, in that I cannot charge someone with family wealth in excess of $1M a lower rate than someone with negative family wealth. Correct me if I'm wrong.
Private student loans (which, like federally guaranteed loans, have reduced bankruptcy dischargeability since 2006) have no such restriction.
Federal loans do have such a restriction, but that obviously doesn't exist to influence lender behavior, if it ever did, since the entity imposing the rule is also the only lender now permitted to issue such loans.
The U.S. spends basically the same amount of public money on universities as Germany: https://data.oecd.org/eduresource/public-spending-on-educati.... 0.91% of GDP versus 1.0% of GDP. That works out to about $550 per man, woman, and child in the U.S. versus $450 in Germany.
Attending a state university as a resident is actually well within reach for almost everyone. And people who can’t afford it usually qualify for financial aid and grants. The problem is that too many people overspend on higher education. And most people are only able to do this with access to humungous student loans.
Right, the problem is higher education is required. Reform secondary education so higher education is not required, and only fund public institutions that give people additional skills to help 'live on.' As long as public money is subsidizing 4 years of 'drama camp' or whatever it those kids do, we should be investing in people that want to do actual work for a living.