That's why it's part of this project to move TrueCrypt to the same "deterministic build" process that TOR uses. Anyone should be able to build from the source, download the binary, and get an exact match. That has become a necessary part of any security software, and a basic failing of TrueCrypt today.
it seems clear that you have either not used a public library in quite some time or choose to ignore the large selection of services on offer. Hint: internet access, rural, and low-income patrons.
All of which can be offered at far lower cost without the stacks of paper books. Libraries can still thrive, but the "paper book archive" service has gone from core to legacy and is a significant cost.
I didn't think anyone still said "Global Warming", I thought it was all "Climate Change: we're still right even without warming!".
Anyhow, if is so happens that the Quaternary Ice Age is ending, we know what a warm earth looks like, and it's not some disaster. There's an economic trade-off to discuss - cost of replacing costal cities vs cost of trying to emit less carbon - but the science is very far from having precise numbers like that.
Sure, but there's usually a good choice available. Rolling your own approach to dealing with the DB because ORM just won't work for a project is one thing (and that's often true because most ORM is too inflexible), but that's not "rolling your own framework". If what you're about to write will end up looking like an ORM framework, then just don't - do the research and pick one the meets your needs. If what you're about to write will look nothing like an ORM framework than maybe. (Or similar logic for other sorts of frameworks - you have to be far off the beaten path before giving in to NIH makes sense.)
BTW, I do find it hard to take seriously anyone who uses the phrase "design pattern" - while your use here is unobjectionable, mostly people mean "I read about this really cool pattern and I'm looking for any excuse to use it!" That never ends well. I think you mean "It's critical to understand the correct design before" and not "I've memorized this set of patterns, and this one matches best!".
It's exasperating. You can always choose instead to use a framework where all the DB stuff is generated from text files, and use proper source control and build processes - but you'd have to find those things important in the first place.
Says you. I remember the days before catalytic converters were common. Bad then you would have had a point - the air was actively dangerous in cities, and worldwide the problems were accumulating. Coal is just terrible without modern techniques that our bizarre regulatory mess makes is too difficult to convert to (back in the day, my college roommate was an environmental engineer - he actually left the field and found a new line of work, partially because the regulatory hurdles to doing the right thing were so high).
But modern cars are amazingly clean. Natural gas burns quite clean even without expensive emissions controls (and is now so cheap that it will be used wherever possible). It's gotten to the point now where people have to pretend that CO2 is pollution in order to keep beating the same old "your high standard of living makes you a bad person because pollution" drum.
There it is, that's exactly what you get. A better remaster that isn't made for the radio or the car and so doesn't have the dynamic range squashed down to compete in the loudness war, where details are actually preserved.
The dynamic range on CD is already ridiculously high - vastly beyond what any given minute of music requires. It's enough for symphonies, where the overall volume of the piece can change tremendously over 20 minutes (or for movie audio with special effects) - the sort of thing that makes you turn the volume down if you have neighbors. And there's still headroom there in the dynamic range.
As far as a better remaster, in pop music, only the classics will be worth someone's time to remaster, and most are still from before the loudness war - but for those that do get remastered, you can usually find the same content on CD, if you look around.
Now, if you're talking about the mastering process itself, there you do want more bits per sample, so that the rounding errors that come from the mixing process stay below what will be written to the CD - but then that would be true regardless of the CD format. You always want somewhat better quality during mastering than you'll deliver at the end.
You got suckered in by assuming one man's personal experience counted as fact. It doesn't. I recognize that in his particular line of work, he runs into these problems all the time, but that doesn't mean they were bad choices at the time they were made... it means that by the time it got to him, it had become a problem. And that's all.
Crap code is crap code.
these are ideals to strive for, not things we can actually achieve on every single project.
Right - sometimes when the crunch is on we write crap code. Hopefully there's time to clean it up. But the crunch doesn't make the crap code good, it merely makes it necessary.
My own experience is that a mind intent on something refuses to admit to better things.... I've come to refer to this as target fixation
Well understood frameworks tend not to be highly optimized. If you are dealing with something where performance is absolutely critical, writing it 'from scratch' will probably get you better performance than taking one of those 'well-understood frameworks' out for a drive.
Sure, of course, why not. It's not like your time is valuable or anything. And naturally, you will make this decision before coding starts, and thus before any measurements that the framework was actually slow, or for that matter that it was part of the perf bottleneck of the system. Nothing says "job security code" like elaborate cryptic algorithms to improve asymptotic performance of some in-memory task on a system where CPU never got above 5% in the first place.
Let's not forget how bug free a framework used widely by thousands will be - there's no job security there at all if there's no bugfixing! But if we write our own, then there will surely be some horrific bug in the field that we can work until 4AM to fix, and management will call us heroes!
The main thing, of course, when writing your own replacement for some common library that some new hire would already know is to avoid any documentation, and ideally abandon the effort halfway through, because the project ran out of time, only ever use 10% of what you wrote, and never document which 10% - heavens no!
To make doubly sure that no new hire could ever support this code, remember to follow this key element of Abject-Oriented Programming:
Documentation
It's said that code should be written for people to read, so it follows that documentation is written for no one to read. Documentation should be written for every new module and then maintained as changes are put into production, or at least the next time thereâ(TM)s a lull in the workload.
A good time to write documentation is when someone in the department gives two-weeks notice: use that time to make sure the departing team member documents all of their code.
Cluttering up the source code with lots of comments explaining what the code is trying to do is distracting and slows down the compiler. That's why abject shops that follow "best practices" keep documentation in a document management system where programmers can't accidentally delete it.
Sage advice, I'd say.
Bottom line here is that this 'list' is just the logical conclusion of a career of mediocrity spent shifting blame around instead of working the problem. Real programmers can use anything
Perhaps you missed the part that the author of TFA makes his living answering panicked calls to bugfix production legacy code, presumably because some "real programmer" did in fact "use anything", and this advice is based on long experience of what makes code unmaintainable. My own experience/advice lines up with his rather well in this area, I'd say.
There's nothing wrong with being the first to offer a new format if it does something new. Minidisc was a mystery at the time - it was the first time Sony had gone crazy (not the novel format, which was actually neat and useful, but in injecting noise in the output to ruin digital copies, but plainly audible), and we couldn't understand why. But the crazy just kept coming after that, sadly.
Which has nothing to do with paying property taxes. Schools are mostly funded by property taxes, and people with expensive property pay more.
(Also, the IRS has greatly cracked down on that sort of thing: forget about it for personal property, though for property owned by the corporation not the CEO it might happen. You'll also find that in some states you'll lose the ability to deduct even normal mortgage interest before you even reach 1%er income.)
Recovering oil has become so easy (at current prices) that "supply is not an issue". Current oil prices are historically high, to be sure, but supply cost is unlikely to increase. Technological progress has made natural gas fantastically cheap, not more expensive. There's not really a "peak oil" scenario here - supply will keep increasing, just as it has kept increasing for decades, until something better comes along (which is certain to happen eventually).
We're in the coffin corner now, printing our own debt, as predicted. Buying votes with bennies always ends badly. The EBT glitch showed us, once again, what sort of people we're made of now.
American Exceptionalism is a genuine phenomena. We're about to prove it again by imploding ourselves. It won't be like Europe; angry protesters briefly painting signs and throwing rocks while the adults finally impose reality. We've bred millions of hate filled, feral animals and they're going to get hungry fast.
Before anyone starts getting scared by the Wal-Mart riot, look again at the "people of Wal-Mart". If they went on a rampage they'd make it, what, 30 yards before being too out of breath to continue? Just head up the nearest flight of stairs, you'll be fine.
I believe the current government shutdown is a sign of the "end times": beyond planning to help my parents out when the SS checks stop coming regularly (or stop being worth much: same outcome), I doubt I'll see any effect except on the news when either the federal government or the dollar (could go either way) collapses for a few years. And then it will be back, with no lessons learned.
I find that the most disappointing part of all this boondoggle. Fast neutron power is just a non-starter now - we'll never have public buy-in to "more radioactive waste" power systems. Plus DT can never scale down to Mr Fusion, so really what problem does it solve?
It's not like we couldn't do both - US government spending is in no way limited by funding these days. And, heck, maybe the Iraq war did some little good: Iraq is still holding itself together as a democracy, however tenuously. What good did handing $1T to bankers in "bailouts" do us?
But as a nation we seem incapable of spending on infrastructure these days. I think we've passed our peak.
They claim they'll have a 100 MW reactor ready in 4 years. Fundamental research kept secret from everyone else in the field, or utter bullshit - which do you think is more likely?
With any luck, we won't run out of fossil fuels before they manage it.
We've been 20 years away from running out of fossil fuels for about as long as we've been 20 years away from fusion - many decades. No worries - there's a big working fusion reactor in the Blue Room, and if fossil fuels run low we'll just start putting up collectors.
Fusion is really only interesting for mobile applications (which will be 20 years away once we have industrial fusion power), until/unless our civilization moves beyond Type I on the Kardashev scale.
Yeah, but that's all cheap care anyhow. It's the care you get when you're incapacitated and can't negotiate where you get ganked. However, that catastrophic plan provider would be doing a lot to help you in that case.
Obamacare seems destined to destroy actual health insurance (plans like yours, AKA "major medical") in favor of plans for people with no savings, which is a shame really. Why can't we have both?
DVD Audio is one more audiophile scam - Normal CD audio has the needed fidelity for human hearing. Of course, if you can get better remasters on DVDA (best abbreviation ever) than CD, more power to you.
Not quite true - front and back directionality come in part from the shape of the ear. Those clues can be modeled in software of course, but you'd have to do that. Mostly though people assign front and back to sounds based on their mental model of the space around them, so I'm not sure surround really adds much if you have 2 good lateral speakers. But then, many speakers are crap.
I don't have a center channel speaker on my home theater system - don't need one - but 3 cheap speakers do the job of positioning cheaper than 2 good speakers. The same may well be true of headphones, but then the surround headphones are all expensive so I doubt it.
That's why it's part of this project to move TrueCrypt to the same "deterministic build" process that TOR uses. Anyone should be able to build from the source, download the binary, and get an exact match. That has become a necessary part of any security software, and a basic failing of TrueCrypt today.
it seems clear that you have either not used a public library in quite some time or choose to ignore the large selection of services on offer. Hint: internet access, rural, and low-income patrons.
All of which can be offered at far lower cost without the stacks of paper books. Libraries can still thrive, but the "paper book archive" service has gone from core to legacy and is a significant cost.
I didn't think anyone still said "Global Warming", I thought it was all "Climate Change: we're still right even without warming!".
Anyhow, if is so happens that the Quaternary Ice Age is ending, we know what a warm earth looks like, and it's not some disaster. There's an economic trade-off to discuss - cost of replacing costal cities vs cost of trying to emit less carbon - but the science is very far from having precise numbers like that.
Sure, but there's usually a good choice available. Rolling your own approach to dealing with the DB because ORM just won't work for a project is one thing (and that's often true because most ORM is too inflexible), but that's not "rolling your own framework". If what you're about to write will end up looking like an ORM framework, then just don't - do the research and pick one the meets your needs. If what you're about to write will look nothing like an ORM framework than maybe. (Or similar logic for other sorts of frameworks - you have to be far off the beaten path before giving in to NIH makes sense.)
BTW, I do find it hard to take seriously anyone who uses the phrase "design pattern" - while your use here is unobjectionable, mostly people mean "I read about this really cool pattern and I'm looking for any excuse to use it!" That never ends well. I think you mean "It's critical to understand the correct design before" and not "I've memorized this set of patterns, and this one matches best!".
It's exasperating. You can always choose instead to use a framework where all the DB stuff is generated from text files, and use proper source control and build processes - but you'd have to find those things important in the first place.
Says you. I remember the days before catalytic converters were common. Bad then you would have had a point - the air was actively dangerous in cities, and worldwide the problems were accumulating. Coal is just terrible without modern techniques that our bizarre regulatory mess makes is too difficult to convert to (back in the day, my college roommate was an environmental engineer - he actually left the field and found a new line of work, partially because the regulatory hurdles to doing the right thing were so high).
But modern cars are amazingly clean. Natural gas burns quite clean even without expensive emissions controls (and is now so cheap that it will be used wherever possible). It's gotten to the point now where people have to pretend that CO2 is pollution in order to keep beating the same old "your high standard of living makes you a bad person because pollution" drum.
There it is, that's exactly what you get. A better remaster that isn't made for the radio or the car and so doesn't have the dynamic range squashed down to compete in the loudness war, where details are actually preserved.
The dynamic range on CD is already ridiculously high - vastly beyond what any given minute of music requires. It's enough for symphonies, where the overall volume of the piece can change tremendously over 20 minutes (or for movie audio with special effects) - the sort of thing that makes you turn the volume down if you have neighbors. And there's still headroom there in the dynamic range.
As far as a better remaster, in pop music, only the classics will be worth someone's time to remaster, and most are still from before the loudness war - but for those that do get remastered, you can usually find the same content on CD, if you look around.
Now, if you're talking about the mastering process itself, there you do want more bits per sample, so that the rounding errors that come from the mixing process stay below what will be written to the CD - but then that would be true regardless of the CD format. You always want somewhat better quality during mastering than you'll deliver at the end.
Awesome, you might be on to something. Start with the fat scooter, add armor and a sink plunger, hmmm, it does all make sense!
You got suckered in by assuming one man's personal experience counted as fact. It doesn't. I recognize that in his particular line of work, he runs into these problems all the time, but that doesn't mean they were bad choices at the time they were made... it means that by the time it got to him, it had become a problem. And that's all.
Crap code is crap code.
these are ideals to strive for, not things we can actually achieve on every single project.
Right - sometimes when the crunch is on we write crap code. Hopefully there's time to clean it up. But the crunch doesn't make the crap code good, it merely makes it necessary.
My own experience is that a mind intent on something refuses to admit to better things. ... I've come to refer to this as target fixation
You are still talking about code, right?
Is that "whooshing" sound you hear familiar to you? I suspect you've heard it before.
Well understood frameworks tend not to be highly optimized. If you are dealing with something where performance is absolutely critical, writing it 'from scratch' will probably get you better performance than taking one of those 'well-understood frameworks' out for a drive.
Sure, of course, why not. It's not like your time is valuable or anything. And naturally, you will make this decision before coding starts, and thus before any measurements that the framework was actually slow, or for that matter that it was part of the perf bottleneck of the system. Nothing says "job security code" like elaborate cryptic algorithms to improve asymptotic performance of some in-memory task on a system where CPU never got above 5% in the first place.
Let's not forget how bug free a framework used widely by thousands will be - there's no job security there at all if there's no bugfixing! But if we write our own, then there will surely be some horrific bug in the field that we can work until 4AM to fix, and management will call us heroes!
The main thing, of course, when writing your own replacement for some common library that some new hire would already know is to avoid any documentation, and ideally abandon the effort halfway through, because the project ran out of time, only ever use 10% of what you wrote, and never document which 10% - heavens no!
To make doubly sure that no new hire could ever support this code, remember to follow this key element of Abject-Oriented Programming:
Documentation
It's said that code should be written for people to read, so it follows that documentation is written for no one to read. Documentation should be written for every new module and then maintained as changes are put into production, or at least the next time thereâ(TM)s a lull in the workload.
A good time to write documentation is when someone in the department gives two-weeks notice: use that time to make sure the departing team member documents all of their code.
Cluttering up the source code with lots of comments explaining what the code is trying to do is distracting and slows down the compiler. That's why abject shops that follow "best practices" keep documentation in a document management system where programmers can't accidentally delete it.
Sage advice, I'd say.
Bottom line here is that this 'list' is just the logical conclusion of a career of mediocrity spent shifting blame around instead of working the problem. Real programmers can use anything
Perhaps you missed the part that the author of TFA makes his living answering panicked calls to bugfix production legacy code, presumably because some "real programmer" did in fact "use anything", and this advice is based on long experience of what makes code unmaintainable. My own experience/advice lines up with his rather well in this area, I'd say.
There's nothing wrong with being the first to offer a new format if it does something new. Minidisc was a mystery at the time - it was the first time Sony had gone crazy (not the novel format, which was actually neat and useful, but in injecting noise in the output to ruin digital copies, but plainly audible), and we couldn't understand why. But the crazy just kept coming after that, sadly.
Not every programmer was around when C was new. Everyone needs to learn these lessons, and preferably not the hard way.
I'm mean, you'd think anyone starting a major project today would use version control, that shouldn't even be a question, right? Right?! Sigh.
Some of his other stuff on his page is quite entertaining as well, like this one on Abject-Oriented programming.
Which has nothing to do with paying property taxes. Schools are mostly funded by property taxes, and people with expensive property pay more.
(Also, the IRS has greatly cracked down on that sort of thing: forget about it for personal property, though for property owned by the corporation not the CEO it might happen. You'll also find that in some states you'll lose the ability to deduct even normal mortgage interest before you even reach 1%er income.)
Recovering oil has become so easy (at current prices) that "supply is not an issue". Current oil prices are historically high, to be sure, but supply cost is unlikely to increase. Technological progress has made natural gas fantastically cheap, not more expensive. There's not really a "peak oil" scenario here - supply will keep increasing, just as it has kept increasing for decades, until something better comes along (which is certain to happen eventually).
What I see is a bunch of freeloaders not paying taxes to support the educational system that benefits them.
Wait, what? I'm sure these CEOs have quite nice and expensive houses, and pay way more property tax than I do.
We're in the coffin corner now, printing our own debt, as predicted. Buying votes with bennies always ends badly. The EBT glitch showed us, once again, what sort of people we're made of now.
American Exceptionalism is a genuine phenomena. We're about to prove it again by imploding ourselves. It won't be like Europe; angry protesters briefly painting signs and throwing rocks while the adults finally impose reality. We've bred millions of hate filled, feral animals and they're going to get hungry fast.
Before anyone starts getting scared by the Wal-Mart riot, look again at the "people of Wal-Mart". If they went on a rampage they'd make it, what, 30 yards before being too out of breath to continue? Just head up the nearest flight of stairs, you'll be fine.
I believe the current government shutdown is a sign of the "end times": beyond planning to help my parents out when the SS checks stop coming regularly (or stop being worth much: same outcome), I doubt I'll see any effect except on the news when either the federal government or the dollar (could go either way) collapses for a few years. And then it will be back, with no lessons learned.
I find that the most disappointing part of all this boondoggle. Fast neutron power is just a non-starter now - we'll never have public buy-in to "more radioactive waste" power systems. Plus DT can never scale down to Mr Fusion, so really what problem does it solve?
It's not like we couldn't do both - US government spending is in no way limited by funding these days. And, heck, maybe the Iraq war did some little good: Iraq is still holding itself together as a democracy, however tenuously. What good did handing $1T to bankers in "bailouts" do us?
But as a nation we seem incapable of spending on infrastructure these days. I think we've passed our peak.
They claim they'll have a 100 MW reactor ready in 4 years. Fundamental research kept secret from everyone else in the field, or utter bullshit - which do you think is more likely?
With any luck, we won't run out of fossil fuels before they manage it.
We've been 20 years away from running out of fossil fuels for about as long as we've been 20 years away from fusion - many decades. No worries - there's a big working fusion reactor in the Blue Room, and if fossil fuels run low we'll just start putting up collectors.
Fusion is really only interesting for mobile applications (which will be 20 years away once we have industrial fusion power), until/unless our civilization moves beyond Type I on the Kardashev scale.
Yeah, but that's all cheap care anyhow. It's the care you get when you're incapacitated and can't negotiate where you get ganked. However, that catastrophic plan provider would be doing a lot to help you in that case.
Obamacare seems destined to destroy actual health insurance (plans like yours, AKA "major medical") in favor of plans for people with no savings, which is a shame really. Why can't we have both?
DVD Audio is one more audiophile scam - Normal CD audio has the needed fidelity for human hearing. Of course, if you can get better remasters on DVDA (best abbreviation ever) than CD, more power to you.
Not quite true - front and back directionality come in part from the shape of the ear. Those clues can be modeled in software of course, but you'd have to do that. Mostly though people assign front and back to sounds based on their mental model of the space around them, so I'm not sure surround really adds much if you have 2 good lateral speakers. But then, many speakers are crap.
I don't have a center channel speaker on my home theater system - don't need one - but 3 cheap speakers do the job of positioning cheaper than 2 good speakers. The same may well be true of headphones, but then the surround headphones are all expensive so I doubt it.
Sony was a different company once. Last millennia they made good gear, and were really innovative. That's not today's Sony.