2,000 karma · joined August 9, 2012
Asking "the people to have their voice heard" on international organizations and trade agreements is particularly ill advised because those are "how" questions instead of "what" questions, and to a first approximation nobody actually cares about how. People care about whether their job is secure, or their groceries are affordable, or their culture is preserved.
Leaving the EU may or may not be a good idea for Britan, but crucially very few people really know whether it would or not. The level of specialized training necessary to reasonably predict the effects of leaving on any of the core interests that people do actually care about is prohibitively high. Directly asking whether to leave the EU is a bad idea because it doesn't capture what "the people" really want and it forces a specific course of action even when there may be safer and more effective methods for achieving the same ends.
Imagine going off to live in the woods with a handful of other individuals, 100% off the grid and with only the tools you can carry. Inevitably, it wouldn't be long before you start insisting that everyone help out with farming or hunting or repairs or something. It's literally built into our DNA that individuals should contribute some labor to the betterment of the tribe in exchange for the security and comfort the tribe provides.
Now, fast-forward to the modern world. We have much, much bigger tribes called countries, and we have a way of talking about and trading human labor that we call money. But it's still true that you should contribute some of your labor (i.e. money) to the tribe (i.e. your country) in exchange for security and comfort (i.e. civilization).
Taxes are moral so long as the taxed individuals consent to be part of the entity imposing the taxes, and there are very few individuals throughout history who have actually been willing to opt out of civilization. And, since you're reading a page on the internet you are clearly not one of them.
Experience has taught me that it's next to impossible to know what types of queries will be needed for the entire lifetime of a project. If you absolutely must store data like this, please leave a clear migration path for moving some or all of it into well structured tables when (not if) it becomes necessary.
Stakeholders are supposed to present problems to engineers, and engineers are supposed to propose solutions to stakeholders.
The underlying meta-rule is that problems should be solved by the person with the most expertise.
It's still drastic overkill for almost everyone except Google, but it does make sense for their use case.
Evidence of illegal contraband in trash is almost by definition probable cause for a search warrant, and judges tend to be okay with handing out a few false positive warrants. Assuming that the police are professional and the citizens are cooperative, the damage is usually relatively minor.
This seems to be less a case of rules failing and more a case of common sense breaking down. Wasting an officer's time someone's trash because you once saw them leave a gardening store isn't illegal, it's just a dumb waste of resources. And serving the resulting search warrant with a SWAT team is the kind of risk-averse cover-your-ass common sense violation that legal remedies tend to make worse instead of better.
Sure, some founders have gotten filthy stinkin' rich off their startups, but those are lottery-ticket odds. Most founders seem to be aiming for either a self-sustaining small business or an acqui-hire, both of which are middle- to upper-middle-class career paths, but neither are by and large own-your-own-helicopter-class career paths.
Changing the directory structure to encode versions is probably the Right Way in a grand sense, but it's a much more substantial change than just promoting packages by default.
It's terrible practice, but it's not unheard of for an NPM module to monkey patch its dependencies, since before this the library could assume it had sole ownership of its whole subtree.
1. Edit the project's files.
2. Open the (scary and alienating) command line.
3. Run `go build` and hope it works right.
4. Find and stop the old running server process and start the new version
Oh, and you'd better hope step 3 goes smoothly, because a tiny mistake anywhere in your application will cause this weird thing called a "compiler error" that means that the entire thing will break. Editing a Wordpress site, on the other hand, looks like this: 1. Edit the project's files.
2. There is no step 2.
As developers, we're comfortable with the first workflow. We happily accept the added complexity because of all the other nice things it gives us and because we're probably using other tools like version control that end up making our experience much more uniform between the two. But to a user whose primary experience is with editing Word documents there is a huge jump there.Nothing is going to dethrone Wordpress unless it's at least as easy to cargo cult, and anything that does will more or less by definition annoy experienced developers more than what it replaced.
It's worth noting that neither we nor the original interviewee know whether this is repeated bad behavior or not. It might've been a one-time slip-up, or he might be serially abusing his position. We can't know, but his boss can and probably does. Go ahead and report to the folks who are in a position to make an intelligent decision.
The correlation doesn't seem to hold at the high end, and much of the data in the western world confounds population growth due to fertility (still low) with population growth due to immigration (which has upticked across the board in recent years). As far as I know, though, the effect is still strong in the delta range that the Gates foundation is targeting.
[1]: http://en.wikipedia.org/wiki/Demographic-economic_paradox
These are frequently set up on a single server, containing code, database, and any file storage necessary. They're frequently written by cloning and modifying a framework, making reinstalling from a known good copy difficult to impossible. They often have no version control and are frequently configured to allow the webserver to modify code, so there is rarely a known good copy of the site code. In short, what's running on the compromised server is often the only usable iteration of the site's code available.
I hope nobody on HN would willingly set up a site like this, but the fact remains that they exist and need to be maintained. Attempting to clean a system in place is nowhere near 100% effective, but it's much more effective than doing nothing, which is exactly what will happen if you try to tell a client that they have to be offline for days, lose several months of data, and pay someone to rewrite half their site from scratch because you want to format their server and attempt to rebuild it.
No, it really doesn't. "Bad people might use it to do something I don't approve of" is a terrible rationale for not creating something, mostly because it's almost always true. Strong crypto is great for terrorists. Psychology research is wonderful for propagandists in dictatorships. Unlocked cell phones are very useful for drug trafficking rings.
If we, as a species, refused to innovate when we weren't sure of the consequences, we would still be arguing about whether fire was a good idea.
On the other hand, floppy disks haven't been used for anything for a couple of decades now but they're pretty universally understandable as save icons. Most of our icon vocabulary has meanings that we learn by rote memorization more than inferrence from their pictographic representations. I'm not sure that the difference between a "good" and a "bad" icon (as long as they're used consistently) really matters that much beyond first-use experience.
This might just be me, but I don't think an ordered hash is a particularly easy data structure to reason about. Almost all the code that I've seen depend on it in either language has been too clever by half.
Yes, you'll probably end up doing significant rewrites if you do actually win the lottery and get big, but it's nice to know that you're not going to top out at some arbitrary size and have to start turning customers away while you do those rewrites.