Somehow I doubt that was original intent of the Founding Fathers.
Pornography certainly did exist during the time of the Founding Fathers (heck, it probably dates back to the first cave paintings). I imagine if they didn't want free speech protections to apply to porn, they could have said so.
Disclaimer: I have a lot of trouble getting interviews, so I've only tried this out once or twice.
When someone asks for a code sample, show some interesting bugs you've fixed.
My personal favorite is a place where someone strcpy'd into a buffer gotten from malloc(strlen(src)) (bug: 1 should be added for the terminating null), and the bug only showed up when the string's length was an exact multiple of 16, because the platform's malloc() implementation rounded allocation up to multiples of 16. Oy, that was a tough one to track down.
I've also seen and whacked a depressingly large number of instances of strcpy(foo, NULL) in my current day job (the clueless attempting to zero out a buffer). It doesn't necessarily have to be a full-on WTF like that, though.
Usually these kinds of things can be generalized enough that they don't really reveal anything proprietary.
please provide an easy way to turn this misfeature off
In my experience, cars that have door auto-locking do have a way to turn it off. Don't know about easy. Usually it's some kind of "rain dance".
Example: My 2001 Silverado can be set to lock the doors at speed or not, and to unlock (no doors | driver's door | all doors) when the ignition key is removed. To set this, you flip the ignition key on and off some certain number of times, while hitting the door lock button in a certain way, with your left foot out the driver's window, and the truck parked facing east. It's in the manual somewhere...
True. I've always supposed that I could have easily done as bad of a job as Carly Fiorina did with HP. It would have taken a lot less to pay me to leave than it did her, a win-win for everyone.
A former manager of mine had an insightful take on this:
Back in The Good Old Days(tm), employees (including top execs) would work for a single company for many years, then retire, drawing a pension. Because of that, there was built-in incentive to make sure the company had long-term stability.
Nowadays, executives are disposable employees like you and me. Therefore, they have no reason to care whether the company is long-term profitable. They know they'll be elsewhere in a few years, so why not plunder the company in the meantime?
Where you run into problems is precision machined steel parts of an engine and transmission. Replacing also those with electrics is the way to go.
That's one of the things I like about the Prius. The
Prius transmission is rather simpler than the typical tranny, and, because of the two motors and one engine involved, doesn't need a clutch (the gear connected to the wheels can be held still even when the engine is spinning, by counter-spinning the motors).
You've got to make sure that at least some of your screening is random, though.
Otherwise, if you only screen the Arab guys (yes I know Arab != Muslim, but you can see Arab, and can't see Muslim, so that's the way profiling would actually work), if The Terrorists recruit one white guy, he slips right through.
I love to blame the system, and in this case I think it's justified.
Suppose I was a legislator (ha!) and was unnaturally clueful. Angry parents of victims get together and demand Something Be Done to Protect The Children (and I don't blame them at all). Our fear-mongering society then spreads this outrage to paranoid parents and even ordinary or clueful parents. Therefore I have to look like I'm Doing Something, so I introduce a bill to "crack down on preverts".
Other legislators are pretty much required to vote for it. Can you imagine the attack ads next election: "My opponent voted against cracking down on child molestors. Why does he hate the children?"
The same sorts of effects applied to drunk driving over the last decade or two.
My employer, a routing software company, just got bought by a chip company.
The forms I currently have to fill out (as a "new employee") require authorizing a credit check. You never know what a kernel developer with bad credit will do, I guess.
Credit checks bother me even more than the more-invasive checks (arrest (not conviction) records, medical history, etc.) because of the downward-spiral potential. When substantially all employers are using them (which of course will happen soon enough), if you get bad credit, you won't be able to get a job.
With bad credit, things cost more, and now your job prospects are limited. Good luck climbing out of the debt.
It's just one of those things that seems to make good sense for every individual employer (like another pet peeve of mine, not training people but expecting them to arrive fully-experienced), but when everyone does it, has significant negative societal impact.
Don't worry about that; it's pretty much inevitable in every area.
Big business runs the country, and they do everything to maximize short-term profit. Usually this involves "tragedy of the commons" results - like "eating your seed corn".
(Putting aside all the other reasons this is bad...)
Anyone who's had to maintain a database can tell you they get crufty over time. Since there's no way to spot or correct inaccuracies, inaccuracies will just build up until the system is useless.
Good point, though in their cases, the part that gets the commercial treatment is usually a small part of the product, rather than the whole product, mitigating the effect.
To take a random example, RedHat creates kernel patches for various purposes. Those kernel patches are subject to most of the usual commercial-development pressures I mentioned, so they don't get the usual open-source quality boost. (I don't actually know if they're good or bad quality; let's for the sake of discussion assume the worst case, that they're shoddy on the usual scale of commercial off-the-shelf software).
That's only true at release time, though. As the patches enter the community and live on, they can be improved by the community, asymptotically approaching open-source quality.
Also, the base product does have the open-source quality boost. In a pure closed-source product, the whole product has been subjected to these commercial pressures throughout its lifetime, so the overall product quality will be less.
A digression - that's something I've never understood... I didn't think money ever left the economy. Rich people don't just hoard their money in vaults (for the most part), it gets invested in stuff, which keeps the economy moving. Likewise, when the government collects taxes, they don't just bury the money, they spend it on stuff (in this case, doctors, drugs, etc.) which keeps the economy moving.
Take your current health insurance cost, increase it by 50% to 100%
Good point - total costs might go up. Might go down too, though the studies on this are no doubt too ideologically slanted (in either direction) to really know, without conducting experiments.
There certainly are downsides, both certain and uncertain, to socialized medicine. There are also benefits. We can trim down the staff required at every health-care provider that deals with billing, collections, figuring out which patients are covered under which plans, figuring out the requirements of each of those plans, etc. There will always be private medicine, for those who can afford it, so innovation can continue. The societal benefits, of course, would be large, but are hard to convert to dollars to compare to the expenses.
I'm not sure that I agree that costs for drugs will go down if everyone must pay for them out-of-pocket. It seems to me that that would reduce the market for every prescription drug (as there will be more people who do without). (Example: I would certainly go without my ADD meds and antidepressants, if I had to pay directly for them. They do play a large part in keeping me employable, though; ask some managers who knew me before I got medicated). Drug companies have to recover R&D cost that doesn't scale per-unit, so they'd have to raise per-unit prices to make the same profit. That would seem to also discourage pharmeceutical innovation, since more propsective drugs would have a small-enough market that the drug company wouldn't be able to make a profit, so those drugs would not get made.
Open source is more secure given an equal number of bugs, and probably has fewer bugs. Here's why:
Scenario: A piece of software contains some exploitable bug.
Closed source software: Bad guys reverse-engineering the code probably find the bug before it is found by the general public (the only other possibility is that it's found and fixed by the vendor's QA). It becomes known after it starts getting exploited in the wild. People notice they're getting hacked, put pressure on the vendor. The vendor needs to pull some programmer(s) off of the next version to investigate and fix the bug, then roll out a patch. They will resist this as long as possible, because to them it's a pure cost (and may impact The Schedule of the next release).
Open source software: Bug may be caught by bad guys reviewing the code, or by good guys reviewing the code. Once caught, and brought to the attention of the public, whoever is motivated can make and distribute a fix. In practice, this leads to patches being available very quickly.
The other dimension: Open Source software probably has fewer exploitable bugs.
Anyone with some experience in software development (not necessarily even as a programmer) can easily see why: Open Source projects never need to rush out a release to meet quarterly-revenue targets or arbitrary market windows.
Ballot box stuffing is handled other ways - having precnct officials account for all ballots they were issued, making sure the number of auth-to-vote forms issued from the poll books match the number of ballots, having precinct officials of multiple parties so they keep an eye on each other, etc.
As to the grandparent poster, the "official" reason for all of the touch-screen mumbo-jumbo is so that the blind, people who can't hold pens well, etc. can vote without having to bring in a trusted able-bodied friend to do their ballot marking. Maybe that would be better solved by having a pair of poll workers (one from each party) be the trusted assistants.
While I agree that this is a good way to help save the planet, I don't think it's possible in today's "throwaway employee" job market.
Jobs just don't last long enough to use them to make detailed decisions about where to live. For example, I live in northeast Raleigh, NC, and currently work in Morrisville (about 25 miles away). Before that I worked in RTP (~30 miles) and on NCSU Centennial Campus (~10 miles). I could certainly move to Cary or Apex and be significantly closer to work. However, what happens when I get laid off and my best local job option is in Wake Forest? I'm right back in the same long-commute situation.
(This assumes you can even stay local, of course; some people have a hard enough time of it that they have to pick up and move at every job change. I don't see the number of those people getting smaller.)
That's my take on socialized medicine: my tax rate could go up quite a bit before I'd end up paying as much more in taxes as my health insurance costs. Heck, it could probably double. I'd probably be actually financially better off with socialized medicine, and we wouldn't have these worries.
My rather extreme example of this negotiated discount:
I have BCBS of NC. My daughter was born 6 weeks early, and in the NICU for 5 weeks 2 days ("apnea of prematurity" meant she had to stay monitored). The hospital bill (not counting the neonatologists) was $58000. They wrote off $52000, BCBS paid their 90% at $5.mumblek, and I paid $662.
So BCBS can get all that care (1/4 of a nurse, 24 hours a day, 37 days), for $6k. I would have had to pay $58k had I not had insurance (=years-to-a-lifetime of bankruptcy). The socialist in me is disgusted that it's that much more expensive to be poor. The poor person in me is glad that I didn't have to pay $6k for my 10%, though.
Some places already have partial solutions to this problem. What follows is specific to Wake County, NC; your laws may vary:
At poll closing time, the optical-scan machine prints multiple copies of a totals tape, showing total ballots cast (which bloody well needs to match the number of authorization forms issued), and totals for each race.
Two of these results tapes go back to the BoE by different means (in addition to the scanner sending in its results electronically). A third is posted at the polling place.
Therefore, you can check up on the official, precinct-by-precinct, certified results by going around to the precincts and copying down these numbers. If the official tallies differ by more than the number of absentee and provisional voters in the precinct, there's a problem.
This will catch central-tallying anomalies (like someone hacking the central database). It doesn't catch problems with the individual precincts' scanners, but some random percentage of those are hand-count audited after each election to check up there.
Not content with offshoring everything that can be offshored, big business now wants to import people from those same places, to do the jobs that can't be offshored.
I know it's considered paranoia if you think "they" are out to get you personally. What about when "they" are out to get a large group/class of people, that happens to include you?
Winston Groom, the author of the "Forrest Gump" novel, ran into a similar situation, handled similarly. Since the studio, as is standard, showed that the movie made no profit, Groom has refused to sell the rights to the sequel novel, Gump & Co. He says that he couldn't in good conscience sell the rights to the sequel to a commercial failure.
You could buy a reference platform kit from network ASIC manufacturers. I know of the Broadcom XGS ones (chips that do L3 routing, L2 switching and ACLs in hardware), as my day job is at a company that uses these to do switch/router application software. The software's proprietary, of course, but Linux does run on those boxes.
That's probably many kilobucks, though, and you'd face the task of dealing with the awfully complex chip to get it to do what you'd want.
Another option would be to buy/license LVL7's software, of course:-), then build on top of that whatever custom application you'd need, to run alongside the software doing the switch/router stuff. Also many kilobucks, so not the sort of thing you'd do to save money, but the sort of thing you'd do to start a company selling boxes that do whatever it is you need to do that commercial router boxes don't.
We should see news stories about large IT projects that aren't big boondoggles.
"Large New System, in development to replace working system foo, way over budget, doesn't work, no fixes in sight" isn't news, any more than "Airline flight arrives without crashing" isn't news.
Another example: In my state Senate district race, the Dem was somewhere center-right, but not too bad. His opponent said in his profile in the local paper, that his first priorities if elected would be: Get an anti-gay-marriage amendment passed, increase funding for charter schools, deport all illegal immigrants from the state, require abstinence-only sex ed in schools, and lower the corporate tax rate. *plonk!*
Find a publication you agree with on some/most issues (in my case, the local alt-weekly), and check out their endorsements. Even if you don't go along with their endorsements, you'll get at least enough information to know who to vote *against* in a lot of races. (A publication opposite to you in the political spectrum can help in this area as well. I know the political spectrum is not one-dimensional, this is just an approximation).
Pornography certainly did exist during the time of the Founding Fathers (heck, it probably dates back to the first cave paintings). I imagine if they didn't want free speech protections to apply to porn, they could have said so.
Disclaimer: I have a lot of trouble getting interviews, so I've only tried this out once or twice.
When someone asks for a code sample, show some interesting bugs you've fixed.
My personal favorite is a place where someone strcpy'd into a buffer gotten from malloc(strlen(src)) (bug: 1 should be added for the terminating null), and the bug only showed up when the string's length was an exact multiple of 16, because the platform's malloc() implementation rounded allocation up to multiples of 16. Oy, that was a tough one to track down.
I've also seen and whacked a depressingly large number of instances of strcpy(foo, NULL) in my current day job (the clueless attempting to zero out a buffer). It doesn't necessarily have to be a full-on WTF like that, though.
Usually these kinds of things can be generalized enough that they don't really reveal anything proprietary.
In my experience, cars that have door auto-locking do have a way to turn it off. Don't know about easy. Usually it's some kind of "rain dance".
Example: My 2001 Silverado can be set to lock the doors at speed or not, and to unlock (no doors | driver's door | all doors) when the ignition key is removed. To set this, you flip the ignition key on and off some certain number of times, while hitting the door lock button in a certain way, with your left foot out the driver's window, and the truck parked facing east. It's in the manual somewhere...
True. I've always supposed that I could have easily done as bad of a job as Carly Fiorina did with HP. It would have taken a lot less to pay me to leave than it did her, a win-win for everyone.
A former manager of mine had an insightful take on this:
Back in The Good Old Days(tm), employees (including top execs) would work for a single company for many years, then retire, drawing a pension. Because of that, there was built-in incentive to make sure the company had long-term stability.
Nowadays, executives are disposable employees like you and me. Therefore, they have no reason to care whether the company is long-term profitable. They know they'll be elsewhere in a few years, so why not plunder the company in the meantime?
That's one of the things I like about the Prius. The Prius transmission is rather simpler than the typical tranny, and, because of the two motors and one engine involved, doesn't need a clutch (the gear connected to the wheels can be held still even when the engine is spinning, by counter-spinning the motors).
You've got to make sure that at least some of your screening is random, though.
Otherwise, if you only screen the Arab guys (yes I know Arab != Muslim, but you can see Arab, and can't see Muslim, so that's the way profiling would actually work), if The Terrorists recruit one white guy, he slips right through.
I love to blame the system, and in this case I think it's justified.
Suppose I was a legislator (ha!) and was unnaturally clueful. Angry parents of victims get together and demand Something Be Done to Protect The Children (and I don't blame them at all). Our fear-mongering society then spreads this outrage to paranoid parents and even ordinary or clueful parents. Therefore I have to look like I'm Doing Something, so I introduce a bill to "crack down on preverts".
Other legislators are pretty much required to vote for it. Can you imagine the attack ads next election: "My opponent voted against cracking down on child molestors. Why does he hate the children?"
The same sorts of effects applied to drunk driving over the last decade or two.
My employer, a routing software company, just got bought by a chip company.
The forms I currently have to fill out (as a "new employee") require authorizing a credit check. You never know what a kernel developer with bad credit will do, I guess.
Credit checks bother me even more than the more-invasive checks (arrest (not conviction) records, medical history, etc.) because of the downward-spiral potential. When substantially all employers are using them (which of course will happen soon enough), if you get bad credit, you won't be able to get a job.
With bad credit, things cost more, and now your job prospects are limited. Good luck climbing out of the debt.
It's just one of those things that seems to make good sense for every individual employer (like another pet peeve of mine, not training people but expecting them to arrive fully-experienced), but when everyone does it, has significant negative societal impact.
Don't worry about that; it's pretty much inevitable in every area.
Big business runs the country, and they do everything to maximize short-term profit. Usually this involves "tragedy of the commons" results - like "eating your seed corn".
(Putting aside all the other reasons this is bad...)
Anyone who's had to maintain a database can tell you they get crufty over time. Since there's no way to spot or correct inaccuracies, inaccuracies will just build up until the system is useless.
Good point, though in their cases, the part that gets the commercial treatment is usually a small part of the product, rather than the whole product, mitigating the effect.
To take a random example, RedHat creates kernel patches for various purposes. Those kernel patches are subject to most of the usual commercial-development pressures I mentioned, so they don't get the usual open-source quality boost. (I don't actually know if they're good or bad quality; let's for the sake of discussion assume the worst case, that they're shoddy on the usual scale of commercial off-the-shelf software).
That's only true at release time, though. As the patches enter the community and live on, they can be improved by the community, asymptotically approaching open-source quality.
Also, the base product does have the open-source quality boost. In a pure closed-source product, the whole product has been subjected to these commercial pressures throughout its lifetime, so the overall product quality will be less.
A digression - that's something I've never understood... I didn't think money ever left the economy. Rich people don't just hoard their money in vaults (for the most part), it gets invested in stuff, which keeps the economy moving. Likewise, when the government collects taxes, they don't just bury the money, they spend it on stuff (in this case, doctors, drugs, etc.) which keeps the economy moving.
Good point - total costs might go up. Might go down too, though the studies on this are no doubt too ideologically slanted (in either direction) to really know, without conducting experiments.
There certainly are downsides, both certain and uncertain, to socialized medicine. There are also benefits. We can trim down the staff required at every health-care provider that deals with billing, collections, figuring out which patients are covered under which plans, figuring out the requirements of each of those plans, etc. There will always be private medicine, for those who can afford it, so innovation can continue. The societal benefits, of course, would be large, but are hard to convert to dollars to compare to the expenses.
I'm not sure that I agree that costs for drugs will go down if everyone must pay for them out-of-pocket. It seems to me that that would reduce the market for every prescription drug (as there will be more people who do without). (Example: I would certainly go without my ADD meds and antidepressants, if I had to pay directly for them. They do play a large part in keeping me employable, though; ask some managers who knew me before I got medicated). Drug companies have to recover R&D cost that doesn't scale per-unit, so they'd have to raise per-unit prices to make the same profit. That would seem to also discourage pharmeceutical innovation, since more propsective drugs would have a small-enough market that the drug company wouldn't be able to make a profit, so those drugs would not get made.
Open source is more secure given an equal number of bugs, and probably has fewer bugs. Here's why:
Scenario: A piece of software contains some exploitable bug.
Closed source software: Bad guys reverse-engineering the code probably find the bug before it is found by the general public (the only other possibility is that it's found and fixed by the vendor's QA). It becomes known after it starts getting exploited in the wild. People notice they're getting hacked, put pressure on the vendor. The vendor needs to pull some programmer(s) off of the next version to investigate and fix the bug, then roll out a patch. They will resist this as long as possible, because to them it's a pure cost (and may impact The Schedule of the next release).
Open source software: Bug may be caught by bad guys reviewing the code, or by good guys reviewing the code. Once caught, and brought to the attention of the public, whoever is motivated can make and distribute a fix. In practice, this leads to patches being available very quickly.
The other dimension: Open Source software probably has fewer exploitable bugs.
Anyone with some experience in software development (not necessarily even as a programmer) can easily see why: Open Source projects never need to rush out a release to meet quarterly-revenue targets or arbitrary market windows.
Ballot box stuffing is handled other ways - having precnct officials account for all ballots they were issued, making sure the number of auth-to-vote forms issued from the poll books match the number of ballots, having precinct officials of multiple parties so they keep an eye on each other, etc.
As to the grandparent poster, the "official" reason for all of the touch-screen mumbo-jumbo is so that the blind, people who can't hold pens well, etc. can vote without having to bring in a trusted able-bodied friend to do their ballot marking. Maybe that would be better solved by having a pair of poll workers (one from each party) be the trusted assistants.
While I agree that this is a good way to help save the planet, I don't think it's possible in today's "throwaway employee" job market.
Jobs just don't last long enough to use them to make detailed decisions about where to live. For example, I live in northeast Raleigh, NC, and currently work in Morrisville (about 25 miles away). Before that I worked in RTP (~30 miles) and on NCSU Centennial Campus (~10 miles). I could certainly move to Cary or Apex and be significantly closer to work. However, what happens when I get laid off and my best local job option is in Wake Forest? I'm right back in the same long-commute situation.
(This assumes you can even stay local, of course; some people have a hard enough time of it that they have to pick up and move at every job change. I don't see the number of those people getting smaller.)
That's my take on socialized medicine: my tax rate could go up quite a bit before I'd end up paying as much more in taxes as my health insurance costs. Heck, it could probably double. I'd probably be actually financially better off with socialized medicine, and we wouldn't have these worries.
My rather extreme example of this negotiated discount:
I have BCBS of NC. My daughter was born 6 weeks early, and in the NICU for 5 weeks 2 days ("apnea of prematurity" meant she had to stay monitored). The hospital bill (not counting the neonatologists) was $58000. They wrote off $52000, BCBS paid their 90% at $5.mumblek, and I paid $662.
So BCBS can get all that care (1/4 of a nurse, 24 hours a day, 37 days), for $6k. I would have had to pay $58k had I not had insurance (=years-to-a-lifetime of bankruptcy). The socialist in me is disgusted that it's that much more expensive to be poor. The poor person in me is glad that I didn't have to pay $6k for my 10%, though.
Some places already have partial solutions to this problem. What follows is specific to Wake County, NC; your laws may vary:
At poll closing time, the optical-scan machine prints multiple copies of a totals tape, showing total ballots cast (which bloody well needs to match the number of authorization forms issued), and totals for each race.
Two of these results tapes go back to the BoE by different means (in addition to the scanner sending in its results electronically). A third is posted at the polling place.
Therefore, you can check up on the official, precinct-by-precinct, certified results by going around to the precincts and copying down these numbers. If the official tallies differ by more than the number of absentee and provisional voters in the precinct, there's a problem.
This will catch central-tallying anomalies (like someone hacking the central database). It doesn't catch problems with the individual precincts' scanners, but some random percentage of those are hand-count audited after each election to check up there.
Obligatory link
Not content with offshoring everything that can be offshored, big business now wants to import people from those same places, to do the jobs that can't be offshored.
I know it's considered paranoia if you think "they" are out to get you personally. What about when "they" are out to get a large group/class of people, that happens to include you?
Winston Groom, the author of the "Forrest Gump" novel, ran into a similar situation, handled similarly. Since the studio, as is standard, showed that the movie made no profit, Groom has refused to sell the rights to the sequel novel, Gump & Co. He says that he couldn't in good conscience sell the rights to the sequel to a commercial failure.
You could buy a reference platform kit from network ASIC manufacturers. I know of the Broadcom XGS ones (chips that do L3 routing, L2 switching and ACLs in hardware), as my day job is at a company that uses these to do switch/router application software. The software's proprietary, of course, but Linux does run on those boxes.
That's probably many kilobucks, though, and you'd face the task of dealing with the awfully complex chip to get it to do what you'd want.
Another option would be to buy/license LVL7's software, of course :-), then build on top of that whatever custom application you'd need, to run alongside the software doing the switch/router stuff. Also many kilobucks, so not the sort of thing you'd do to save money, but the sort of thing you'd do to start a company selling boxes that do whatever it is you need to do that commercial router boxes don't.
We should see news stories about large IT projects that aren't big boondoggles.
"Large New System, in development to replace working system foo, way over budget, doesn't work, no fixes in sight" isn't news, any more than "Airline flight arrives without crashing" isn't news.
Background: I'm somewhere to the left of Noam Chomsky, and live in Raleigh, NC.
Here, in most every race, there are two choices: a right-wing nutjob (e.g. the Republican candidate for US House in my district) and someone else.
Another example: In my state Senate district race, the Dem was somewhere center-right, but not too bad. His opponent said in his profile in the local paper, that his first priorities if elected would be: Get an anti-gay-marriage amendment passed, increase funding for charter schools, deport all illegal immigrants from the state, require abstinence-only sex ed in schools, and lower the corporate tax rate. *plonk!*
Find a publication you agree with on some/most issues (in my case, the local alt-weekly), and check out their endorsements. Even if you don't go along with their endorsements, you'll get at least enough information to know who to vote *against* in a lot of races. (A publication opposite to you in the political spectrum can help in this area as well. I know the political spectrum is not one-dimensional, this is just an approximation).