FBI seizes riseup.net server - <AUTHOR> https://help.riseup.net/en/seizure-2012-april <comment><USER3> I do not understand the sledgehammer approach the FBI 'cybercrimes' division deals with things with.

The FBI are not police, are not detectives, and are not competent in these matters. I'm sorry but covert monitoring of a server is going to be vastly more beneficial for an operation than taking the server and is going to net more targets and more evidence.

I remember stories of the FBI sitting on a known front for organized crime and waiting until they got someone worth catching before making a move.

It's a universal truth that any action has a reaction. If the FBI shut down a money laundering front, then the Mob would get wise and get more sophisticated and you won't hurt their operation. If you wait until you can link someone important to the Mob infrastructure and _then_ make a move, then you've seriously effected crime in a city.

The FBI does shit like this and Megaupload before they appear to have their ducks in a row. They don't know what they're doing, and don't know what they're looking for so they consistently appear to jump the gun.

My only thoughts with this are that someone with a lot of power and influence is making this happen. What I wonder is what politician or presidential candidate/whatever has a lot vested and a lot to lose from someone finding out they/their kids/their family is pirating, or running anonymous operations, etc. Seriously, it's the only reason I can think of other than incompetency as to why the FBI is consistently jumping the gun.

<comment><USER4> This isn't a "sledgehammer" approach. The operators made an explicit choice to stick a bunch of mailing lists and websites on the same machine as a remailer. A reasonable person would expect the remailer to eventually be used to commit a crime.

It's like keeping your kids school books and a kilo of cocaine both in your cars trunk, then complaining when the FBI takes the whole car into evidence.

<comment><USER5> Whoah whoah whoah! Is a remailer really === a kilo of cocaine? Seems like it's more like a car sans license plates, operating in a state where license plates are optional. (But hey, if you use that car to transport a cool k...)

<comment><USER4> Sure. Because you have no idea if that remailer is going to be used to leak information on civil rights abuses or to plan the assassination of an official.

I run a number of Tor nodes. I follow the Tor mailing list. I understand that what I am doing is not illegal, but is still very risky. What have I done in response to that risk? All my important shit is hosted elsewhere.

</comment></comment></comment></comment><comment><USER6> I have friends involved in Riseup, and I know they do good work. Software projects like monkeysphere and backupninja. Didn't realize they hosted so many mailing lists, apparently 14,000.

This is a good time to <https://help.riseup.net/en/donate> .. lots of options, including bitcoin and flattr.

</comment><comment><USER7> With this rash of seize-servers-first-ask-questions-later, sounds like we're heading for a reprise of the glorious Steve Jackson Games era of blunt-weapon policing tactics when it comes to technology.

<comment><USER8> I'm sorry, but what are you referring to?

<comment><USER9> The FBI raided the offices of Steve Jackson Games because Loyd Blankenship, the author of _GURPS Cyberpunk_ , was the subject of a crackdown for disseminating a (largely non-technical) document about the E911 system on his BBS.

[https://en.wikipedia.org/wiki/Steve_Jackson_Games,_Inc._v._U...](https://en.wikipedia.org/wiki/Steve_Jackson_Games,_Inc._v._United_States_Secret_Service)

<comment><USER10> Check the external links here for free versions of The Hacker Crackdown, a non-fiction account of the whole situation by Bruce Sterling.

<https://en.wikipedia.org/wiki/The_Hacker_Crackdown>

</comment></comment></comment></comment><comment><USER11> So if riseup.net had been hosted on, say, EC2, what would the FBI have seized? The server hosting the VM and many other completely unrelated VMs? Scary thought.

Also, if you haven't done so already I encourage you to read the FAQ at the end of the page. It has one of the best answers to "Doesn't Mixmaster/anonymous remailers enable criminals to do bad things?" I've ever seen.

<comment><USER12> If previous seizures are any indication yes. They identify machines by IP and even if its a virtual machine they seize the server running it.

Can't comment on whether or not its effective, and of course if you have a disaster recovery plan and your site pops back up I don't know what they do, I guess they play whack-a-mole with search warrants.

<comment><USER13> Can you cite any examples of this ever happening? I am curious now.

<comment><USER12> <http://cloudcomputing.sys-con.com/node/1883984>

</comment></comment></comment></comment><comment><USER14> America's online law enforcement shaping up to be pretty much like the war on drugs.

<comment><USER15> In other words, useless?

<comment><USER16> And expensive

And with lots of innocent casualties

And corrupt

And supported by morons

<comment><USER17> And boosting economies outside of the US?

<comment><USER18> Don't worry about economies in EU, we've done a really good job in hamstringing with "social" policies. Compared with other countries law enforcement in US is pretty decent.

</comment></comment></comment></comment></comment><comment><USER19> This seems like a no-brainer to me. The FBI has the duty to find the Pitt bomb threatener. Perhaps Mixmaster truly does make the email untraceable, but it's the FBI's duty to try tracing it - not to take the Mixmaster claims as fact. If the FBI has evidence that criminal emails passed through that server, I absolutely want the FBI to be able to obtain and execute a warrant to seize it and search it for evidence.

Analogy: the cops need to look at a gun store's records to track down a criminal shooter. The cops have reason to believe people with access to the gun store might go in and destroy those records. Should they be able to shut down the gun store (temporarily) and block access to it while they execute a legal search warrant on it?

<comment><USER20> Criminals (and worse) use all sorts of things, including technology, that everyone else uses. By your logic, the FBI should execute seizure warnings against GMail, Yahoo mail and Facebook... every time they have "evidence that criminal emails passed through that server."

Frankly, your logic makes no practical sense.

<comment><USER19> The FBI should absolutely execute a seizure warrant against those companies, if doing so is effective, but:

\- Those companies probably have too many servers and too much data to make seizing all of it productive.

\- Those companies would be less likely to be effected, as they have backups and redundant servers for handling outages.

\- Those companies keep records that they provide to law enforcement when presented with a warrant or subpoena.

It's 100% ok to run an anonymizing remailer, with no backup strategy in place. It's retarded to act surprised and indignant when the server gets seized because it was probably used to commit a crime.

<comment><USER21> _It's retarded to act surprised and indignant when the server gets seized because it was probably used to commit a crime._

Did you read the press release? Riseup was not running the anonymizing remailer, it just happened to be on the same physical machine as some of Riseup's infrastructure/e-mail accounts/listservs/etc.

From the press release:

 _The seized server was operated by the European Counter Network ("ECN"), the oldest independent internet service provider in Europe, who, among many other things, provided an anonymous remailer service, Mixmaster, that was the target of an FBI investigation into the bomb threats against the University of Pittsburgh._

<comment><USER19> Good point. Then it's ok to be surprised. This is a non-obvious risk of shared hosting.

</comment></comment></comment></comment></comment><comment><USER22> The building I work in and practically live in as student was evacuated two hours ago due to a bomb threat, and as of today 11 bomb threats have been made across campus. The total of bomb threats made is now 126. It is ridiculous.

I do not agree with the FBI confiscating servers to figure out where the anonymous bomb threats have been coming from, but I'm kind of glad they are and feel bad for that.

<comment><USER23> When was the last time a bomb threat was followed up with an actual bomb in the US? Maybe it's time to stop blindly evacuating buildings in response to anonymous messages.

<comment><USER24> 1993 World trade center

And today is the anniversary of the 1995 Oklahoma city bombing.

However I am uncertain if a "threat" was ever called in for either.

This is evidence that a called in thread will likely never be real - <USER2> attacks aren't called in with warnings.

<comment><USER25> Just because those didn't come with threats doesn't mean all attacks come without threats. Also it doesn't prove that all threats won't be followed by an attack.

The unibomber is one example. He would send mail bombs if newspapers didn't heed his threats and publish his ramblings.

</comment></comment></comment></comment><comment><USER26> I met Jamie and some others associated with May First/People Link while volunteering to support the first US Social Forum. I was really impressed with their ideals and how they applied them to their work as technologists. I hope everything works out well for them and that this seizure brings more attention to what they are doing.

</comment><comment><USER21> _In total, over 300 email accounts, between 50-80 email lists, and several other websites have been taken off the Internet by this action._

I hope Riseup posts a list of those 300 e-mail accounts that were taken offline, so the owners know that they are now on an FBI watch list.

<comment><USER27> You're recommending a breach of trust/privacy by making this public — obviously the right thing to do is contact them directly & privately.

</comment></comment><comment><USER28> Learn from the pirate bay. It's no longer a matter of protecting your business from hackers, but also from corrupt governments. When you start a business you better have contingencies in place to switch domain, server, country, etc seamlessly.

</comment><comment><USER29> FBI actually has some good agents, but the only ones I've met were on counterterrorism, either in the us or overseas trying to find foreign links to us terrorism. I know most of the other law enforcement funding got repriorirized after 9-11, and I could imagine it is still attracting the better agents. Most of the really stupid FBI stuff originates from their bush league regional offices or is pushed by idiot US Attorneys in those places (e-gold, mmj raids, etc). The Secret Service, at least on computer crime, is far more uniformly competent.

</comment><comment><USER30> The American version of SOPA already passed in 2008. It's called the Pro IP Act. That's how they are able to seize "local" domains like .com and .net, and I think .org, too.

</comment><comment><USER31> I can understand the need to stop the bomb threats, but the FBI also should have respected the other users of the seized server and not removed it. And besides, nothing is stoping the person from using other anonymous email hosts.

<comment><USER21> This seizure is especially chilling because Riseup is used primarily by activists.

</comment></comment><comment><USER25> Again? Didn't they get all their servers seized back in the late 90s early 00's too?

<comment><USER21> I want to say that they had servers seized running up to the 2004 Republican convention in Minnesota. However, I'm having a hard time finding news links about this.

I also went to check their wikipedia page to see if there was a history section, and Riseup doesn't seem to have one.

Now I'm going to go soothe my paranoia.....

<comment><USER25> If I remember correctly... it was because they were offering free hosting to political groups and someone was using it to host bomb plans without them knowing.

I'm sure the time I'm thinking of had to have been before 2004 because I remember not even having a drivers license at the time.

</comment></comment></comment><comment><USER32> There are a lot of comments here, but I don't see anybody asking one particularly important question (and please forgive my ignorance of Riseup.net). Why did removing one server cause so much disruption? Do they not have back-ups? Redundant servers?

If this stuff is so gosh-darn important, I feel these users have put their faith in the wrong hosting organization...

<comment><USER33> it is an important question, but it's far away from the issue. that's why nobody is asking that, because it's not important in this specific issue.

riseup is a collective driven isp that is focused in social change activists, so they do have values and principles different than making money. the issue here is not the disrupt, it's the attack on those values.

i hope you now understand why nobody ask about that, it is important, but not the issue about this. also it's because this values people put faith in them and not in google, amazon or another money focused company, me included :)

</comment></comment><comment> echo-unity What recourse do the people have when voter fraud occurs? How much monitoring is done through those channels?

*I know it is not a react quickly because human lives could be at stake - but considering anything tied to a presidential election could lead to a person voted to office that could jeopordize a nation.

</comment><comment><USER34> > "In total, over 300 email accounts, between 50-80 email lists, and several > other websites have been taken off the Internet by this action."

Dramatic description aside, I really hope that what they mean is - lost one copy of it, waiting for DNS change to propagate... Am I hoping for too much?

</comment><comment><USER35> "[. . .] search warrant issued by the FBI,"

Doesn't a judge have to issue a warrant?

</comment><comment><USER36> Pretty cheap R&D by the FBI for anonymized communications techniques.

<comment><USER37> It's not like Mixmaster (and presumably everything else running on that host) isn't FOSS. This isn't R&D; it's swatting a fly with a thermobaric device.

</comment></comment><comment><USER38> From a forensic evidence perspective, can an image or a drive clone suffice?

And does anyone know what was this about, e-mail threat to do ... ?

<comment><USER19> The warrant was (according to riseup) related to the recent rash of bomb threats against the University of Pittsburgh.

[https://www.google.com/search?q=university+pittsburgh+bomb+t...](https://www.google.com/search?q=university+pittsburgh+bomb+threats&tbm=nws)

</comment></comment><comment><USER24> This is a testament to why you would want to use AWS virtual instances and never have "a server" - point your domain at a new instance should one machine get ordered off by the FBI.

<comment><USER39> Wow, you place an awful lot of faith in amazon.

<comment><USER24> Not really actually, I just mean having a discrete server that can be "seized" is not a particularly robust solution.

<comment><USER39> ... and what do you think an Amazon slice is? It sits on a physical machine that can be identified, located, and handed over by Amazon given a lawful request, all without the site operators knowing.

You think they give a fuck about the other 4 slices on your server? No. They don't. In fact it says so right in their SLA.

<comment><USER24> I used the word ROBUST

If you are trying to defy the FBI, and 100% of your site architecture resides within Amazon's infrastructure you are not robust.</comment></comment></comment></comment></comment>


Ask HN: Is it time to switch your acquaintances to Riot.im? - <AUTHOR> With the recent Facebook scandal, many people are thinking of closing their account and looking for alternative services. The problem in switching a social service is that you can do it only if most of your contacts switch at the same time; but a time like this opens a window of opportunity for a competitor to gain a foothold, and make a significant dent in the share of clients for IM and "social sharing".
Since e-mail and news groups, there has never been a decentralized and open source communication protocol popular with the general public (IRC came close, but its interface is too arcane for most people).
Riot.im is a decentralized open source IM client which is mature enough, flexible enough, user-friendly enough and available at enough platforms to be a viable replacement for basic social interactions between non-technical people.
Is it a good idea to promote its use among my contacts right now, maybe setting a local Matrix server for my close group? I don't want to burn my bridges; if this doesn't pay off now, I won't be able to convince them in the future. <comment><USER2> I work on Riot.im but can try to give a balanced & unbiased answer:

Pros:

* Riot is all open source and built on the Matrix open standard for decentralised comms, so you can run your own server if you want (which is about as painful as running & maintaining your own mailserver, although it's getting better - especially with Synapse 0.27 being released tomorrow. It is a bit of a resource hog still, but we had a potential breakthrough on that last week which could reduce memory usage by 5x or so - it'll be a few weeks before it lands though). If you don't want to run your own server, we're also working on providing dedicated hosted servers in the coming months.

* We're just about to release Riot/Web 0.14 this week (first major release in a few months), which adds the ability to rapidly filter your rooms by community - a bit like Slack workspaces or Discord servers. It also has lots of performance work which reduces RAM use by 30-40% and speeds things up by about the same. It also fixes several major classes of bugs which meant that the keys weren't available in end-to-end encrypted rooms to decrypt messages (e.g. switching from localstorage to indexeddb for crypto data, avoiding situations where localstorage could get corrupted by multiple tabs accessing it simultaneously...)

* Android & iOS are entirely native apps, built on matrix-android-sdk & matrix-ios-kit/matrix-ios-sdk respectively, which means they often have a better native experience than using React Native or similar.

* We have lots of nice features (perhaps too many), like animated read receipts, read markers, Jitsi video conferencing, end-to-end encryption, the Modular appstore of integrations/widgets/bots/bridges, etc. However, we don't have message editing, threading or emoji reactions yet :(

* The Matrix community is (i hope) generally supportive and helpful for newbies :)

Cons:

* UI/UX on Riot in general is still quite geeky and poweruser-centric. We contracted a UX/UI designer a few weeks ago who is already coming up with some _really_ nice stuff which frankly looks more attractive and usable than Slack/Discord/etc. But this won't land for a few months yet, as it's effectively a total rework of the app's look & feel.

* It's easy to end up in _lots_ of Matrix rooms. I'm in 1,600 atm on my main account, and this can slow down clients - Android is particularly slow to launch. Most of the time is spent dealing with room members though - e.g. my account can see 214,199 right now. We're currently working on a solution to lazy-load room members, which should speed everything up by somewhere between 5x and 20x depending on your account size ([https://docs.google.com/document/d/11yn-mAkYll10RJpN0mkYEVqr...](https://docs.google.com/document/d/11yn-mAkYll10RJpN0mkYEVqraTbU3U4eQx9MNrzqX1U)).

* E2E encryption in a decentralised network is _hard_. We've been steadily working through classes of bugs where you can't decrypt messages because keys are not available, but there are probably still some edge cases where you may end up with a message but not have the keys to decrypt it. Riot/Web 0.14 adds a panic button for this situation which re-requests the keys, but it's still not perfect. That said, these errors are quite unusual these days and tend to only happen in larger rooms with lots of new devices, rather than typical encrypted 1:1 chats.

* Key management UX for E2E encryption is a particular problem - device verification UX is still a train-wreck, and we need to implement cross-signing devices so you don't have to keep manually verifying new devices. We also are working on giving the option to back up your E2E keys (encrypted) serverside if desired. Lots of preparatory work has been done on this, but it hasn't landed yet.

* Riot/Desktop is an electron app, which some folks don't like for efficiency reasons. However, there's an increasingly mature set of alternative Matrix clients for the Desktop: nheko (Qt5/C++), Fractal (GTK3+/Rust), Quaternion (Qt5+QML/C++), WeeChat etc which are _very_ usable. I've been using all of them recently whenever my Riot/Web is stuck doing a heap dump...

* Finally, Matrix doesn't currently protect metadata - your server admins can see who you talk to and when (but not what you say, assuming the room is encrypted). This is a similar level of protection to email+PGP. So you make sure you trust whoever's running your server :)

So, TL;DR: Maybe? Hopefully? It's certainly worth a shot, especially if your friends are fairly geeky or prepared to be patient with some quirks. We're not yet a drop-in replacement for FB Messenger or WhatsApp or Slack, but we're trying as hard as we can, and we're improving rapidly enough that even if there are stumbling blocks today, there should be very noticeable improvements in the coming months.

<comment><USER3> I tried switching a few months ago, but failed. The UI is really complex for non tech people. And if you try to enable end-to-end encryption, then it's unusable for them.

I'd like to try again once these issues are solved.

<comment><USER4> While I agree that the end to end encryption has quite a few UI/UX issues that can be problematic, I did successfully move my non-techy family to matrix/riot. We're all pretty happy with it. (that is to say, I don't really get complaints and it works quite well.)

It does help that I host the server, so I don't mind talking without end to end encryption with people who can't figure it out.</comment></comment></comment>


Show HN: Automatic Network Testing Tools - <AUTHOR> https://iptools.co/ <comment><USER2> Putting a captcha in front of the tools takes the fun from playing with the site.

</comment><comment><USER3> nice tools</comment>


Biohack The Planet Science 2019 Las Vegas 8/31-9/1 - <AUTHOR> https://mailchi.mp/theodin/biohack-the-planet-science-conference-in-las-vegas?e=36c588555f <comment><AUTHOR> The biohacking community is a bit like the personal computer community was thirty years ago, exciting, rapidly growing, and vibrant. I keep looking for a kit that will let my grandkids grow glow-in-the-dark bunnnies.</comment>


Satellite Internet gets a fresh look, cash infusion - <AUTHOR> http://www.ctvnews.ca/sci-tech/satellite-internet-gets-a-fresh-look-cash-infusion-1.2594345 <comment><USER2> I don't think anything wireless(besides free space optics) will ever be able to match the bandwidth of fiber. There just isn't enough radio spectrum available. Using currently available COTS equipment you can easily push 100+gb/s over a single fiber. Such capacity isn't feasible even for terrestrial based wireless at this time.

That being said, I hope one of these projects takes off. Most of the undeveloped world would benefit greatly from even just 5mb/s of internet.

<comment><USER3> > I don't think anything wireless(besides free space optics) will ever be able > to match the bandwidth of fiber.

This isn't really the goal of the project. SpaceX needs to create a com link with Mars. Also, it can cheaply laucnch sattelites so it will be able to connect the world via satelite uplink. The goal isn't to beat wired networks but provide redundancy and in some cases primary connections.

SpaceX is betting on itself achieving reusability which will lower costs from ~$60M to a marginal cost of something like ~$600K. As a byproduct of the cellphone wars nanosats have become insanely cheap due to commoditization and miniturization of hardware. Making this more feasible

The reason they are doing this is to establish communications between earth & mars. Even a 50mbps connection could bring huge swathes of the world online and create a race for infrastructure to compete.

So if we could get 1-5gbps connections terrestriallydue to some market penetration and competition, it would bringlots of people online. The goal of the project is lofty, but would provide a lot of positive things.

Downsides: * personal satelites and the proliferation of spying. * space debris could lock us out of orbit. * space debris/launch failures could cause issues. * something like radiation or an unexpected externality could make this non-feasible. * we could literally create skynet.

I am pumped on it though, and those reasons, along with the many others I have assuredly missed make me really really excited to see this happen. We need a secondary network anyway and terrestrial speeds won't improve without competition so I would roll the dice on skynet for that.

<comment><USER2> I was mostly addressing the comment that the signal could bounce from satellite to satellite 'effectively faster than fiber.'

datenwolf did the math and answered it in greater detail than I.

Didn't Iridium try to do this a while back? Launch a constellation of LEO satellites to provide low latency data and cell communications? Hopefully the reduced launch and operation costs expected will give these current projects more success.

<comment><USER4> Iridium is currently doing this - they should begin launching a new LEO constellation later this year.

</comment></comment></comment></comment><comment><USER5> The bad thing about satellite that makes it unsuitable for many use cases will always remain to be latency, not speed or availability. 1.5 second ping is perfectly usable for web browsing, but it is painful for many other workflows.. And there's no current way with our technology we can "fix" this problem. It boils down to speed of light issues.

I for one am still hoping we'll eventually get quantum internet that goes through the earth rather than around it.

<comment><USER6> I'm using sattelite internet from Cambodia (WiMax). Ping to 22.214.171.124 is around 8ms, and I pay $25 a month for 4mbit. Relability is better than the ADSL or Fiber options over here, due to countries like these being absolutely horrible at wiring cables.

<comment><USER7> WiMAX is not delivered over satellites, it uses ground-based basestations.

The lowest latency satellite systems, using LEO orbit satellites, are around 40ms roundtrip.

<comment><USER6> I stand corrected -- after some Googling, I now realize it's more like 4G/LTE than anything else. Thanks for clearing that up!</comment></comment></comment></comment>


Wireless charging tech harvests your phone's wasted radio waves - <AUTHOR> https://www.engadget.com/2016/07/28/wireless-charging-harvests-wasted-radio-waves/ <comment><USER2> Very interested. With processors becoming less power hungry, maybe in the future phones will be able to charge via surrounding 802.11 signals.</comment>


A Shocking Truth About CSS - <AUTHOR> http://blog.twoalex.com/2010/02/26/a-shocking-truth-about-css/ <comment><USER2> Please, using more CSS selectors than DOMs isn't going to kill a site. In fact, it isn't even close to being a bottleneck. We are talking milliseconds. If you want speed gains, properly compress your images!

<comment><USER3> Wait, are you saying that a computer capable of executing millions of instructions per second doesn't take very long to do a few comparisons on a dozen or so elements? It takes me a long time to do by hand, so I figured the computer would be really slow too!

<comment> Tuna-Fish > a computer capable of executing millions of instructions per second

Billions, not millions.

<comment><USER4> Billions of cycles per second. But executing an instruction frequently takes 20 cycles or so. That reduces instructions to hundreds of millions.

<comment><USER5> Except that pipelining, multiple cores, and hyperthreading then bring it back up. So, let's not get overly pedantic here.

</comment></comment></comment></comment></comment><comment><USER6> Scroll to the botom, and:

11:44:33 AM Alex K: that makes it sound like it may not be worth huge optimization?

11:44:46 AM Alex M: no, not really

<comment><USER7> Steve's final conclusion:

"For most web sites, the possible performance gains from optimizing CSS selectors will be small, and are not worth the costs. "

[http://www.stevesouders.com/blog/2009/03/10/performance- impa...](http://www.stevesouders.com/blog/2009/03/10/performance-impact-of- css-selectors/)

<comment><USER8> Exactly. I have an obsession with "optimized" markup, that means avoiding unnecessary elements, ids and classes. Let's not forget that all this stuff sits in markup and gets downloaded on each request. Even if that does not add up to much, I still want to have my code "clean". There is one particular site that inspires me: <http://camendesign.com/> — take a look, not a single id or class.

<comment><USER9> He did this, however, at the expense of convoluted selectors, pseudo-elements, and pattern matching. Personally, I don't find his implementation to be very clean. I guess it's better to have the mess in your closet than wide out in the open, though.

</comment></comment></comment></comment><comment><USER10> Google describes this and a bunch of other great stuff about how to optimize page rendering: [http://code.google.com/speed/page- speed/docs/rendering.html#...](http://code.google.com/speed/page- speed/docs/rendering.html#UseEfficientCSSSelectors)

</comment><comment><USER11> Can anyone point to where this is required by the css specification? Or is this an implementation detail? The reality may be that all the browsers do it this way, but why couldn't someone add some more smarts to choose selectors based on selectivity, just as a SQL query planner would?

<comment><USER12> It's quicker to walk up a DOM tree than it is to walk down - that's the root reason why browsers have all implemented it this way.

<comment><USER13> Yeah, but if we do something like this:

        #alert > p { background: yellow }

Surely the intelligent thing for the CSS engine is to look for the one-and- only #alert, rather than work backwards from all the <p>'s? (I am assuming that nodes with ids have their own fast index.)

<comment><USER14> It's a little trickier when you do it left to right.

Suppose you have a DOM tree like this:

        div #alert - p, p, p
               - div #alert - p [lots of children]
                            - p - div #alert [lots of children]

[right to left]

In order to find all Ps with an #alert parent, you first get a set of all paragraph elements. Most likely a list of all paragraphs is kept in memory, so it can be enumerated quickly. Since DOM trees are generally well balanced the number of parents of any one paragraph is going to be roughly O( 2log(|DOMSIZE|) ) and it can be enumerated in C, so this is basically nothing (compared to how grossly inefficient javascript is). Total complexity: O( |P NODES| * 2log( |DOMSIZE| ) ). Memory complexity: 1 linked list of size of result set.

[left to right]

If we were to look at it from left to right, it gets trickier. You have to find all #alert nodes (easy & fast), but then you have to take all children of all #alert nodes. Every sub-tree of the DOM can be a significant fraction of the entire DOM tree, or perhaps the _entire_ dom tree. Not only that, but you CANNOT filter for all "p" children, because then you'd need to have lookup tables for every level in the tree (hugely inefficient). So you're left with one solution, that is to enumerate all children (and a DOM node can have a few thousand child nodes easily). But, wait, one #alert contains another #alert. We're already looking at O( |DOMSIZE| * |DOMSIZE| ), and now we have to consider uniqueness as well. We cannot alloc a hash map to keep track of uniqueness, because that would completely fragement your memory space; you'd end up allocating&deallocating hashmaps for every selector call. So you end up having to traverse the result set linked list for every node you add, to see if it isn't already in there. This, needless to say, is another O(N^2) detour. Total worst case complexity for M selectors:

        O( M * |DOMSIZE|^2 + M * |RESULTSET|^2 ).

Memory complexity: M + 1 linked list.

Difference becomes more profound as complexity increases:

        #uniq p p span b

(R2L) find all "b" nodes, append those with matching parents to linked list. Return linked list

(L2R) find all #uniq nodes, enumerate all "p" children. Make sure all "p" children are unique. Take all children of these "p" nodes, filter for "p" children, make sure result set is unique. Take all children of these "p" nodes, filter for "span", make sure.... and so it goes.

So that's why.

<comment><USER15> Your examples aren't valid HTML, so that approach is fine for quirks mode. But what about valid pages that declare a DOCTYPE? Shouldn't those be parsed from left to right, so the first matching ID that is encountered wins (with any other matching IDs considered errors and disregarded)?

OT, this was one of the problems XHTML was supposed to solve, since it was originally assumed by many that pages that weren't well-formed XML would not be rendered at all, forcing the developers to fix the code. This didn't happen, and developers are still at the mercy of how individual browsers implementat quirks mode.

<comment><USER14> You have to write R2L parsing logic anyway, because it's what you want most of the time (e.g. "div span a.quote"). Yes, in the special case where #uniq identifiers are used _and_ you know the page to be valid (X)HTML _and_ you know that you get a substantial speedup by filtering on the #uniq node first L2R parsing is preferable. But how realistic is that, really?

Isn't it just easier to teach web developers to write their DOM selectors in a specific way? The R2L approach is (a) easy to understand (b) has predictable (and stable) performance (c) doesn't malloc (d) is easy to implement. I see this as a simple case of "good enough".

</comment></comment></comment></comment></comment></comment><comment><USER16> (from the header:)

 _The Two Alexs

Alexes? Alex's? Alexi? Alexim?_

In hackanonical form, Alexen. As in oxen, vaxen, boxen.

<comment><USER17> IIRC oxen is a vestigial dual (not plural) form, so quite appropriate.

<comment><USER18> According to <http://www.etymonline.com/index.php?term=ox> \-- "Oxen is the only true survival in Mod.Eng. of the O.E. weak plural."

From what I can tell, it looks like OE nouns could have either "strong" or "weak" declensions, and this is different from the dual form. Someone on another forum claims that "brethren" is another example.

<comment><USER17> may well be true, my source is an old State of the Onion talk from Larry Wall, which although a linguist is probably not the most qualified in the world :)

</comment></comment></comment></comment><comment><USER19> micro optimization... blah.

Why do I really doubt Alex's yoga site needs to worry about this.

</comment><comment><USER20> John Resig (of jQuery fame) talks about why this approach was taken in the design of the sizzle engine that powers jQuery. Its towards the end of this talk (which is quite good by the way), I would find the exact time but my work internet thinks its inappropriate content and won't let me watch the video :(

<comment><USER21> could you post a link to it?

</comment></comment><comment><USER22> Reminds me of how you may optimize your javascript DOM/style manipulations to avoid re-calculating the styles too often. It was mentioned in this Google I/O session on GWT performance: <http://www.youtube.com/watch?v=q9hhENmVTWg#t=32m38s> (slides located here: [http://code.google.com/events/io/2009/sessions/MeasureMillis...](http://code.google.com/events/io/2009/sessions/MeasureMillisecondsPerformanceTipsWebToolkit.html) )

This is where Speed Tracer comes in handy ( <http://code.google.com/webtoolkit/speedtracer/> )

</comment><comment><USER23> If you want to know how much CSS selector matching (sometimes called Style Recalculation) is affecting your site you can try Speed Tracer:

[https://chrome.google.com/extensions/detail/ognampngfcbddbfe...](https://chrome.google.com/extensions/detail/ognampngfcbddbfemdapefohjiobgbdl)

It's Chrome-only but you can sometimes get cross-browser insights. It's also a lot easier to conduct a cursory investigation using this tool than it is to start changing your selectors.

</comment><comment><USER24> I do not like their blog gimmick.

<comment><USER25> FWIW, the post is a slightly cleaned up version of an actual conversation I had with my husband. (I'm K, he's M.) It's not a format I'm likely to reuse (or have used before), but it fit the occasion and captured very well our feelings of surprise at learning how CSS parses selectors.

Plus, it's always fun to try out new formats, even -- or maybe especially -- if they don't stick.

</comment></comment><comment><USER26> The definitive guide to this was written by then-Mozilla dev Dave Hyatt:

<https://developer.mozilla.org/en/Writing_Efficient_CSS>

That's from April 21st, 2000 - almost a decade ago.

</comment><comment><USER27> 11:44:33 AM Alex K: that makes it sound like it may not be worth huge optimization? 11:44:46 AM Alex M: no, not really 11:44:56 AM Alex M: I'm a purist though 11:45:18 AM Alex M: so this makes my world

Last two lines scares the hell out of me.

</comment><comment><USER28> I don't want to read several pages of badly spoken chat english to find the conclusion. Could someone be so kind and explain what the ___shocking truth_ __is?

<comment><USER29> That tables really are the best, CSS is good for changing fonts all at once though. I read it all for you so don't worry about double checking.

<comment><USER28> Thanks!

</comment></comment></comment><comment><USER30> The "Two Alexes" are just discovering (Feb 2010) what Steve Souders explained in detail at [http://www.stevesouders.com/blog/2009/06/18/simplifying- css-...](http://www.stevesouders.com/blog/2009/06/18/simplifying-css- selectors/) [which is probably the site you want to visit on "How CSS strategies affect site performance"] (June 2009).

<comment><USER31> Being "scooped" by a mere 6 months, on a 10 year old technology doesn't really make their realization dated.

It's new to me, and I bet it's new to most news.yc-ers.

<comment><USER3> /me mumbles something about Reading The Fine Source. Then you don't have to guess what your browser is doing.

<comment><USER24> Trying to figure out HTML from reading the Firefox source is kind of insane.

<comment><USER3> Yeah, OK. So just be ignorant instead.

<comment><USER32> do you read the source of the linux kernel to understand how to use bash? how about the source of a wifi driver before connecting to a network?

your premise is rediculous.

<comment><USER3> I don't do those things, but that's not because it's a bad method, but because I don't care. If there was some bug in some system call, or if I needed to investigate why hardware is misbehaving, of course I'd read the Linux source. That's one of the great things about open source software; you don't have to treat it like a black box. You can just look at the internals and see how they work.

(And I have proof that I do actually do this; I had a misbehaving joystick, and the linux fork in my github contains the fix.)

Anyway, in conclusion, if you want to know what algorithm Firefox uses to process CSS selectors, just read the Firefox source code. If you don't give a damn, then don't do that instead. But if you care and you do nothing, that's just silly.

</comment></comment></comment></comment></comment></comment></comment><comment><USER27> Don't think about how fast it is unless you have solid evidence that it is slow.</comment>


Show HN: Remote Jobs (our answer to "Who Is Hiring Remote Workers?") - <AUTHOR> http://remote-jobs.com We're giving away coupon codes for a free month-long posting.  Just email me at evan AT remote DASH jobs DOT com.  The first few folks win!<p>I'm one of the founders of Remote Jobs -- also the same shlub who posted the first "Ask HN: Who Is Hiring Remote Workers?" http://news.ycombinator.com/item?id=1857051. <comment><USER3> charging before you have mass adoption is a recipe for disaster...you should wait until you have mass adoption then make a premium listing and charge for that.

As it stands now, you'll have a dozen or so jobs, interest will fade, and employers will stop posting when they get few resumes

<comment><USER4> Sorry, I respectfully disagree. If the market will bear it, you can charge for a service before "mass adoption"

<comment><USER3> not when the service suffers from a chicken and egg problem.

Why would someone pay money to list their job on a site with no traffic?

Why would someone go to a site like that if you only have a dozen jobs?

This can be something good...but they are shooting it in the leg by being greedy

<comment><AUTHOR> To be clear, greed certainly isn't our intent. As Dave (djbrowning) wrote, we're concerned about the quality of the content on the site.

We're also giving away coupon codes right now (see my post below) to drive job posters to the site.

<comment><USER3> If quality was your only concern, you'd just charge a one time $5 fee. So I'd say greed is at least somewhat involved.

And yes giving away coupon codes is good and well...but then you run into the quality problem that you use as an excuse to charge from the start.

Don't get me wrong, there is nothing wrong with greed...provided it doesn't cause you to kill your business before it gets the chance to get off the ground.

<comment><USER5> Business exist to earn money and the best way to convince others of the value of your service is to charge for it. You can argue that it isn't good business sense, but calling it greed is a judgmental call that you have no evidence of.

<comment><USER6> I think a good strategy is to get your minimum viable product out as soon as possible and call it a beta. Don't charge for the beta and provide plenty of warning to existing clients by signalling early on your intention to charge for some/all features when you are out of beta. After a private beta period, this is how I'm planning to handle Mighty CV, a resumé building app with hacker leanings that I've been working on. I'm looking for private beta users to kick the tyres a bit, so if you feel inclined then you can sign up for the private beta at <http://www.mightycv.com>.

I always remember being impressed with the way Heroku did things in the early days. After beta feedback it must have become clear to them that it made sense for them to rewrite from the ground up. This left them with a beta platform which they gracefully continued to support, renamed herokugarden, whilst also rolling out the paid for service. They then provided plenty of info on how herokugarden users could migrate to the new Heroku platform for free too. I'm sure they learnt a lot early on about what direction they needed to take the Heroku platform. Anyone remember the web based code editor? Without the early feedback from beta users perhaps they would have pushed more in that direction instead of changing course towards the Heroku we all know and love today.

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> as someone said in a previous "who is hiring" thread, there's a reason why people post their job opportunities on hacker news and not on the dozens of job board websites (hint: it's not because they don't want to pay $75).

</comment><comment><AUTHOR> I'm one of the founders of Remote Jobs -- also the same shlub who posted the first "Ask HN: Who Is Hiring Remote Workers?" <http://news.ycombinator.com/item?id=1857051>.

We're giving away coupon codes for a free month-long posting. Just email me at evan AT remote DASH jobs DOT com. The first few folks win!

<comment><USER8> As a now country-side based programmer, I will definitely use your site :) Thanks!

<comment><AUTHOR> Oh? Where are you? Would love to chat about Ruby nerdery sometime when we may be in the same place.

<comment><USER8> I'm in a rural area in west of France :) <http://bit.ly/fEjBxk>

<comment><AUTHOR> Oops misunderstood your use of "country". You meant "rural" -- like me. ;)

<comment><USER9> He did mean rural. :)

</comment></comment></comment></comment></comment></comment><comment><USER10> Seems a shame the unhyphenated domain name has been parked for 10 years. The good news is it expires in August.

The trademark for it is dead as well: [http://tess2.uspto.gov/bin/showfield?f=doc&state=4007:lt...](http://tess2.uspto.gov/bin/showfield?f=doc&state=4007:ltdp75.2.1)

The trademark registrant and domain registrant might be related or one in the same. Both were registered in 2001. Looks like it was intended for a remote job entry app.

Worth watching.

<comment><AUTHOR> Awesome research thank you!!!!

<comment><USER11> Except it's owned by Marchex, one of the largest domain holders in the world. They aren't letting it expire. They do sell domains though.

</comment></comment></comment><comment><USER12> Maybe it's just me but I think it'd be great to see where the company is based (the country) in the initial list. At least that'd be handy if you get more job offers. As I am in Europe, I'd prefer jobs where I can call someone up during Euro working hours. (Then again, my sleeping patterns are way off anyway.)

Just a suggestion though, the site looks sweet!

<comment><AUTHOR> Good idea.

I also tend to prefer work that is not too many time zones distant.

</comment></comment><comment><USER13> Site looks nice. Right now there aren't a lot of jobs, so a good feature to attract seekers is some way to track jobs as they come in - email/sms/mobile updates, or even a simple RSS feed of jobs. This works well for other infrequent job sites like Top Ruby Jobs.

<comment><USER14> RSS feed is now added, thanks for the suggestion!

<comment><USER13> Great! Bonus points for generating a custom feed for a saved search (not much of an issue until you have tons of jobs).

</comment></comment></comment><comment><USER15> Finally, I hate the stigma people have with remote workers. I have made 90% of my income over the past 10 years this way, but it is tough to find people willing to work like this.

<comment><USER16> similar here, for last 3 years. commutes are a thing of the past. highway rush hour. cubicles. enterprise meetings and Watercooler Bob the Chitchat Parasite (TM), the whole nine yards. all gone. now, just work (mostly) and money (mostly). heaven.

</comment></comment><comment><USER17> Really nice site. Any chance of EU-based jobs on there in the future, or is it strictly USA?

<comment><AUTHOR> We'll look into it. I believe our job posting editor and credit card info form may prevent it right now.

Good feature request. Thanks!

<comment><USER18> EU based jobs would be highly appreciated.

</comment></comment></comment><comment><USER19> <http://telesaur.com> is another telecommute job board.

<comment><USER20> Looks nice, but who would bother creating an account to see if there are any job offers on that site? What's the point of forcing candidate registration if access is free?

</comment></comment><comment><USER21> > _1-3_ on the front-page display for <http://remote- > jobs.com/jobs/32_NLP___ML___Python_contractor>

1-3 what? Hours per day? Years? Months? Fortnights? Somewhere / somehow, you should inform what unit you're using. Add it on the end, or maybe a mouse- over. Or, if there were enough listings to make it clear (ie, a 4-5h/day entry), it'd be fine-ish the way it is.

Similarly, I notice that the Mobile Developer falls into a second line - <USER2> it, inform it's been trimmed (...), and a mouse-over would be useful.

All in all, looks quite nice, and fast to use from a consumer standpoint. I'll have to keep an eye on it!

</comment><comment><USER22> how many qualified individuals visit that site? i can pay about 2x as much and get a listing on linkedin for 30 days, which is, well, better..give me the value prop for this site and if it is good, i will post several jobs.

<comment><AUTHOR> We're here to serve a previously under-served market: remote workers. LI will case a (very) wide net.

However, how many talented folks still use LI? You can call me biased but, seriously, I've hardly used LI since a good friend of mine there left the company about a year ago. I don't find value in it. Therefore, when looking for a hire, you'd never reach me.

I've heard similar anecdotes from several other people in my "cohort" of Ruby/Rails nerds.

 _EDIT_ : We're probably reaching a _different_ audience. If it's an audience that interests you, we may be able to help you. If not, then perhaps not. We serve a niche.

</comment></comment><comment><USER23> It would be great if you required companies to post pay ranges. Some jobs that I may not find interesting might become interesting if the pay is right. Without pay, it's very hard to determine which are worth pursuing.

<comment><USER24> I agree. That has been a core policy / goal of <http://WheresTheRemote.com/> (although the site has not really gotten off the ground yet). As a professional I don't want to waste my time reading and replying to ads that aren't worth my while, that don't offer appropriate compensation for example, so I want to know what the advertiser is willing to pay. One of the principles of WheresTheRemote.com has been to require advertisers to provide a rate or range and pay a fee based on the highest advertised rate, to encourage accuracy. In my experience, requiring advertisers to include rate information is not a common feature of job sites.

</comment></comment><comment><USER25> A related question, but slightly off topic: People who have worked on or built job boards, what do you think of a Shopify for job boards?

It seems that all job board shares 90% of the functionality, but the best choice is still to develop one from scratch. You'd never think of developing an online store from scratch anymore, but I don't think job boards should be any different. Then you'll get all the customization and metrics that Shopify gives you for products. I'm in the process of validating this idea.

</comment><comment><USER26> Looks cool. RSS feeds would be nice.

<comment><USER14> Great suggestion, we just added RSS!

</comment></comment><comment><USER25> Question related to charging: Did you charge for the initial posts on there now?

I think the best strategy is to publicly advertise that you charge $75 for a post, but to get content up (and it looks like you have) give it away for free strategically (again, sounds like you're doing this).

Also, to make sales, tell potential posters that you'll put in an inordinate amount of advertising for their job to drive overall traffic.

</comment><comment><USER27> Love the design and the idea.

<comment><USER28> Agreed, the design is gorgeous.

As said above though, the pricing might be a bit high for a brand new site without a large userbase.

<comment><USER29> Maybe. He's competing with headhunters, often at $30k+ per developer found.

His charges look pretty modest if he has even a minimal success rate.

</comment></comment></comment><comment><USER30> I like it, and think it's a great idea. Site looks pretty nice. One general design comment: The search bar is a bit hard to notice.

</comment><comment><USER21> Down? I'd love to check it out, but I'm getting a "We're sorry, but something went wrong." message every time.

<comment><AUTHOR> TL;DR: Fixed and happy again.

Our sluggified SEO friendly job posting URLs choked on a more interesting job post.

</comment></comment><comment><USER31> tip: add an "operations" category, for sysadmins and so on

<comment><AUTHOR> I dig it.

</comment></comment><comment><USER24> Interesting discussion here. I've also been working on a remote jobs website: <http://WheresTheRemote.com/>. I've had the idea for years, but it "opened for business" last year. I've considered many of the issues raised here.

It's definitely a chicken and egg problem. Allowing free ads might help get the ball rolling, but I've resisted that since I'm concerned it will lead to low quality, which is one of the problems I have with other job sites. I don't want to hurt the site's reputation right out of the gate.

Moderation is one way to address that, but one of the core ideas of my site, which I think sets it apart from a lot of other job sites, is to require advertisers to include rate of compensation in their ads, and encourage accuracy by basing the fee for posting the ad on the advertised rate.

Trying to charge for something like this right off the bat without a lot of traffic is a difficult proposition, in my experience. But people seem to be willing to use mediocre web services and job sites, so allowing free ads to begin with, even if it results in low quality ads, might be a more realistic way to get something like this started.

So far I haven't compromised any of the original ideas for my site, but it hasn't gotten any traction either. I hoped that offering a money back guarantee would encourage a few advertisers to give it a shot and get the ball rolling, but so far that hasn't been enough. It's also difficult to figure out where / how to advertise something like this to even reach the right audience and make potential advertisers aware of it, at least without spending a ton.

If I'd known that all it takes to get people to start advertising jobs is to post the site on Hacker News, I would have done that months ago! I suspect that the activity on remote-jobs.com also has to do with the coupon offer though.

I'm considering making some changes to my site to get the ball rolling and then start charging or return to the original ideas for the site if and when there's enough traffic, as some have suggested. I don't think there's anything greedy about charging for such a service. If people are willing to pay it right off the bat, great, if not, that's another story. It might be more realistic to not charge or charge a small fee at first, and I agree that even charging a small fee would help to weed out the worst kind of posters who have free reign on some other sites.

I have problems with all of the job sites I've seen and the goal of my site is also to provide a better venue for finding remote jobs, and to try to level the playing field for job seekers, e.g. by requiring rate information in ads, backing that up with the fee structure, limiting the time ads are displayed moreso than most sites to reduce the opportunity for lazy or busy advertisers to waste job seekers' time with stale ads, etc.

</comment><comment><USER32> Great idea! Whenever I include the "Who is Hiring" posts in my Hacker Newsletter it always has a high click rate. Another great resource to send people to now if you can keep it going.

</comment><comment><USER33> Love your work guys!</comment>


Show HN: Pantry – Free JSON Storage for Personal Projects - <AUTHOR> https://getpantry.cloud/ <comment><USER2> Looks useful. I really dislike the "Download Postman and then you will have documentation" approach. Documentation lives on the web, and there are better alternatives to Postman anyway.

<comment><USER3> I'm curious: what are your top alternatives to Postman?

<comment><USER4> cURL, with some bash aliases to help things along.

<comment><AUTHOR> I prefer this as well.

Rather not go down the road of having examples for every major platform.

</comment></comment></comment></comment><comment><AUTHOR> I'm so excited to finally be able to share this with you!

Pantry is a free cloud storage service that I've been building for the past few weeks. You can use the API to store & retrieve data for you and your users online for free.

Looking forward to seeing what you all think of it, and please feel free to post suggestions or AMA.

Thanks!

<comment><USER5> \- How would you sell me on Pantry vs. AWS S3? (You can use S3 in much the same way ... throwing up JSON at a path and fetching it. The cost some would argue is neglible)

\- How do you deal with CORS?

\- How do you deal with authentication?

Is this intended to be like the take a penny leave a penny jar? You put stuff here knowing anyone could come and destroy it at any time?

I did not sign up, I am only going off your API docs.

<comment><USER6> > How would you sell me on Pantry vs. AWS S3?

Is this question really appropriate? The developer is sharing a pro bono offering, where does selling anyone on it against a commercial service even come into play?

It looks like a project that must have been fun to make and could be useful for storing non-sensitive data with very little hassle. Long bucket IDs appear to leave little chance for name collision.

If you are building a piece of software that deals with anything remotely like PII or has specific availability requirements, I sincerely hope this is not something you are seriously considering (otherwise, pardon me, I hope I won't be your user or customer), starting from the fact that you aren't paying for it and there is no SLA.

<comment><USER7> Of course it's appropriate! From the docs this service doesn't even meet the "viable" part of MVP! Ok a user can post some json that's public (no authentication) and doesn't even work across domains (CORS).

Suppose adding those things and targeting "mobile backend as a service" or even more general "backend as service" there is still a lot to be desired. Like static html, ok you're competition is Firebase.

How's Firebase doing these days?

</comment></comment></comment></comment><comment><USER8> I've done something similar for some of my students to test restful apis at [http://mockrest.com](http://mockrest.com).

It is quite similar to this although you just write your own data on a textarea, and get/post/put/delete to modify it.. Then you can copy-paste the result json from the backend to a text file or something like that..

It dynamically finds your objects (even nested ones) and you can CRUD them..

</comment><comment><USER9> Is the pantry GUID the only form of security for all objects? Can this be rotated should it be compromised?

<comment><AUTHOR> Great question!

Currently, the PantryID (uuidv4) is the only form of security, I am thinking that in a future release perhaps another form of authorization may be required.

Do you have any suggestions - I'm all ears!

<comment><USER9> Yeah, I imagine this is okay for testing, since UUIDs are fairly impossible to guess, however, you probably want a slightly more elaborate "authenticated session" based structure to ensure someone malicious who has obtained the UUID does not have an unlimited time window to exploit it.

</comment></comment></comment><comment> 1-more I had this exact idea the other day with a tiny twist. This is rad. Might use it for my little project. TY

<comment><AUTHOR> Thanks for the kind words, this means a lot to me :)

I hope you find some good use out of Pantry, very excited to see what you come up with!

</comment></comment><comment><USER10> Very cool! I was looking for something like this about a month ago when I was building an example web application for firmware developers. Firmware engineers aren't expected to know anything about databases and usually don't, so I just wanted some dumb JSON store in the cloud that didn't need any provisioning.

In the end, I went with Heroku and it's included PostgreSQL offering and stomached the complexity, but along the way I found [https://jsonbox.io/](https://jsonbox.io/), which I thought was neat and seems very similar.

<comment><AUTHOR> Thanks for the kind words! You're essentially the use-case that I had in mind when I was developing Pantry!

How did your project turn out btw, did the firmware developers get their mind blown by web tech?

<comment><USER10> Project/Article turned out very well. It was more of a proof of concept with the code open-sourced so people can have something to start with to track firmware binary sizes on a commit-by-commit basis.

[https://interrupt.memfault.com/blog/code-size- deltas](https://interrupt.memfault.com/blog/code-size-deltas)

Unsure if their minds were blown, but I at least know that mine would have been if I showed it to myself a couple of years ago. During that time, I had never touched databases, migration files, or devops in general. Now that's changed, but I still try put myself in those shoes.

<comment><AUTHOR> Wow, this is pretty neat!

I have some friends who are into firmware development so ill pass this along.

Love how verbose your docs are - good stuff!

</comment></comment></comment></comment><comment><USER11> What are the rate and size limits for the API? Also what is the data retention (how long before you delete the buckets)?

<comment><AUTHOR> Great question!

Size limits are pretty small, a little over 1mb per basket.

As for data retention, the account has a TTL of 5 days, baskets 3. Any activity on the account/bucket will result in the TTL's being refreshed.

<comment><USER11> Some API requests get a JSON response (Retrieve Account, Get Basket). Others get a plain text response (Create Account, Create Basket). Errors seem to get an HTTP response with an HTML page. Is this documented anywhere?

<comment><AUTHOR> Ouch that is confusing. And no, I haven't added these details to documentation yet. This is a bit of an issue at the moment, having everything return in one format is the right thing to do.

Will be addressing this in the near future - thanks!

<comment><USER11> The Retrieve Account API seems to always return an empty baskets array, even if baskets with data exit. fyi,

<comment><AUTHOR> Oh yeah, this definitely needs to be addressed and is currently an active issue on GitHub. Thanks for reporting!

</comment></comment></comment></comment></comment></comment><comment><USER12> How do you prevent someone from spamming you and filling your cache up with abusive documents?

<comment><AUTHOR> I have a basic rate limiting implemented, but nothing that prevents people from really abusing the storage platform.

Accounts and Baskets that are stale are automatically removed, however, so there's that?

Will look into alternative methods of spam prevention - any tips?

</comment></comment><comment><USER13> I love the graphics and web design! It looks like a simple service, and more alternatives in the space are welcome!

Full-disclosure, I also develop a "competing" (if you can call it that) service: [https://kvdb.io](https://kvdb.io) \- my landing page isn't as nice. Our buckets offer some atomic operations on keys and Lua-based scripting (you can spit out arbitrary text or HTML and handle basic GET/POST requests with parameter parsing), which might be useful for prototyping.

You should figure out how to sustain this kind of service on $FREE. In my experience, I've found a lot of people sign up but don't use it for anything serious. One of my first customers signed up and demanded a refund immediately after he discovered "oh, your simple key-value store doesn't support SQL queries?"

Good luck!

<comment><USER14> Is this a monetized redis?

</comment></comment><comment><USER15> I'm currently building something very similar but with a usage based payment system (not implemented yet). [https://quickstash.io](https://quickstash.io)

<comment><AUTHOR> Very exciting, I really like your website - especially the API docs!

Awesome work!

<comment><USER15> Hey thanks! I guess we'll have some friendly competition. :)

<comment><AUTHOR> Looking forward to it!

</comment></comment></comment></comment><comment><USER16> A mozilla alternative is Kinto

* Used e.g. for profiles sync

* Deploys to heroku - 1 click

[https://www.kinto-storage.org/](https://www.kinto-storage.org/)

</comment><comment><USER17> The API docs page is only scrollable if your mouse is over the docs text. If you try to scroll on either side nothing happens (OSX, Chrome Canary).

<comment><AUTHOR> Ouff - good catch!

Will fix soon, thanks!

</comment></comment><comment><USER18> Where are you sourcing the clip art? You are the 3rd startup I have seen with the zen woman in the past week.

<comment><AUTHOR> I found these great illustrations here - [https://www.opendoodles.com/](https://www.opendoodles.com/)

They're really well done!</comment></comment>


Why police lie under oath - <AUTHOR> http://www.nytimes.com/2013/02/03/opinion/sunday/why-police-officers-lie-under-oath.html <comment><USER2> My brother is in prison for murder. He did it and confessed to it. Still, during the trial the detectives saw fit to lie under oath, and bring forth evidence of his character (his diary) obtained illegally (they lied and said it was obtained via a neighbor who found it in a trash can in his house 0_o). All of this even though they had an open and shut case. It blew my mind that in a case that they had in the bag and where the evidence of the crime itself was enough to put him away forever they still did all of that. The story of the diary was especially ridiculous. It's not like the detectives told some whoppers just to make things easier on themselves. They lied about all sorts of small things, like how his arrest actually happened. From that I learned to fear the system. If they'll do that with a slam dunk case, what will they do to get a conviction when the case is a tough one? How many men has this state (Texas) executed as a result of this system?

<comment><USER3> I'm not involved with anything remotely illegal but I still watched this all the way through because of the police situation in the US:

"An law school professor and former criminal defense attorney tells you why you should never agree to be interviewed by the police."

<http://www.youtube.com/watch?v=6wXkI4t7nuc>

It's quite fascinating really. The police officer he has come up to speak talks about some of the tricks they use to get people to confess and they talk about word tricks they use to get convictions even of innocent people. It's pretty terrifying.

What I find interesting is how many TV shows depict suspects running their mouths to the police like they're all buddies. You're NEVER supposed to do that. Even innocent people can very easily incriminate themselves, as they show in the above video.

Speaking of Texas and executions, have you ever read about Todd Willingham?

[http://www.newyorker.com/reporting/2009/09/07/090907fa_fact_...](http://www.newyorker.com/reporting/2009/09/07/090907fa_fact_grann?printable=true)

Willingham was convicted of "multiple infanticide" for burning his house down with his daughters still inside. He maintained his innocence until the end, and finally found a fire investigator to review the case shortly before he was scheduled to be executed. The investigator provided conclusive evidence that he DID NOT start the fire, but the Board of Pardons and Paroles apparently didn't even read it:

"The only reasonable conclusion is that the governor's office and the Board of Pardons and Paroles ignored scientific evidence."

And so, sadly, he was executed.

There are so many WTFs in this case, which is probably partly why the article is so long. One thing that stood out is how the witness testimony changed from "he was frantically trying to put the fire out" to "he didn't seem to be doing much of all" after he was charged with starting the fire (the witnesses became biased). And how the fire investigators could be high school drop outs with minimal training, and how they used gut feelings and super outdated science while investigating the case. Their investigation is really what caused him to be convicted. Pretty sad story, and it seems to happen a lot like this, especially in Texas.

</comment></comment><comment><USER4> My sister in law is a public defender, she has managed to get cops that lie under oath fired. We're not talking capital crimes here, we're talking stupid traffic citations where the officer would rather lie than admit they made a bad call.

Her belief is that lying is like cocaine, you use it once to get through the case because you know that even though its not strictly the truth the right thing will happen, and then you use it because you really didn't prepare enough, and suddenly its not a 'big deal' in your mind, after all these are people committing crimes right? We're protecting the 'good' people from these scumbags. And you lose yourself.

Exceptionally sad.

<comment><USER5> Why managing to get them fired is considered a good result?

Perjury is a serious crime and should be prosecuted as such. Cops should [be made to] understand that lying in court even in small cases carries a risk of criminal charges (in USA, up to 5 years IIRC) instead of internal disciplinary action.

<comment><USER4> Yes it is, which is why I really felt President Clinton should have resigned when he was proven to have perjured himself in the Monica Lewinsky investigation. But as we saw with him, Barry Bonds, and others, it is not effectively prosecuted. This is in part because the English language is so malleable to interpretation that 'reasonable doubt' becomes a massive impediment to conviction.

</comment></comment></comment><comment><USER6> I was arrested when I was 18 after a guy I was with was caught selling mdma at a gathering in the desert. The police report was filled with lies. The officers approached me during the night(it was 10F) and asked to sit in my car. I was having a heart to heart with my girlfriend but obliged because they were obviously cold and being welcoming is part of that subculture. They made some lewd inappropriate comments about my gf and then asked to buy drugs. I told them I didnt have any. They begged. I said sorry I dont have any.

I read the police report and they wrote that i wanted to sell them drugs but told them I had just taken the last of mine and recommended them to my friend.

They were rude and total dicks to everyone. In court the judge admonished them for grinding up on underage girls on their surveillance videos.

<comment><USER7> Wholeheartedly agree with the erosion of personal freedoms in the favor of laws made by people 'who know better.' Speeding is a perfect example--any law that 80% of people on the freeway break is a terrible law.

<comment><USER8> _any law that 80% of people on the freeway break is a terrible law._

They are actually supposed to be set so that 80-90% of the people are obeying the limit (see MUTCD), but that often results in limits that are perceived as being too high by communities.

<comment><USER9> Why have speed limits at all then? I've heard anecdotes of professional drivers getting out of massive speeding tickets because they know how to handle a vehicle at that speed (and presumably had the good sense not to be driving way faster than traffic if there even was any) and its certainly possible to get a speeding ticket when traveling under the limit if conditions do not permit.

Seems to me that they should be treated as good-weather guidelines (legally; that's already more or less the case in practice), and focus on the people driving recklessly - weaving in and out of traffic, going 10mph+ faster than everyone else, tailgating, etc.

<comment><USER10> > professional drivers getting out of massive speeding tickets

That seems unlikely.

> Why have speed limits at all then?

To reduce the frequency and severity of crashes.

To give people a baseline for safe speed. If most people's usual driving speed is "10 mph over the limit," then the effective speed limit is simply N+10 mph, where N is the number on the signs.

> tailgating

It's easy to deal with this effectively on your own. If you're being tailgated, just take your foot off the gas until you're 10mph _under_ the limit. The tailgater will pass you at the very first opportunity. It's magic!

<comment><USER11>
      If most people's usual driving speed is "10 mph over the limit,"
      then the effective speed limit is simply N+10 mph,
      where N is the number on the signs.

A big "if". As I recall, when speed limits were raised on some of the highways in Maryland from 55 mph to 65 mph, the traffic kept going at 72 mph.

In a society where everybody drives, speeds are set not so much by some kind of a law but more by the natural course of human actions.

<comment><USER12> Yep, traffic is largely self-regulating. Most people know how fast it's safe to drive and do it anyway. The others don't care about the "speed limit". Net effect, the actual posted speed limit and associated laws and corrupt bureaucracy are totally useless.

And never mind that "speed limits" are reverse engineered from observations of the natural speed of traffic in a given area in the first place.[1]

[1]: <http://www.ite.org/standards/speed_zoning.pdf>

</comment></comment></comment></comment></comment></comment></comment><comment><USER13> The whole system is blatantly fucked up and I'm more stunned by people's non- chalant reaction or 'it's the law reaction'.

I live in a small town in New Jersey where my mom works for the town.. recently there was a police 'strike' around contract negotiations, where, to prove the town should give them a raise they stopped writing tickets to show the town how much money the police department makes them. What this means to me (and I'm pretty sure is obvious) is that they stopped writing stupid 'money making' tickets and were actually... doing their job of protecting its citizens.

The worst thing about all of this is I have no idea how to fix it.

I can rant on shit like this for a long time but I'll ask one question that hopefully someone will be inclined to share their opinion.

I think one major problem (that most seem to disagree about) is the slowly creeping loss of personal freedom 'for the publics best interest' I think speed limit's are against this freedom, is it really that inconceivable to believe we can't judge what is a safe speed? (obviously reckless driving would still be a thing that police would be used for) or even smaller... Why is it a law that I must wear a seatbelt? Or even drugs.. why does any law care if I want to smoke crack?

this may have been off topic sorry.

<comment><USER14> I generally agree with this, but it gets tricky when you factor in social services.

If a society decides that it should support health or medical services with public funds then there is a line of logic that conditions based on that support (such as a seatbelt laws, drug laws, or even banning soda) should be allowed.

I don't agree with this, but if I was arguing for that side that would be how I'd frame it.

The seatbelt law is particularly weird to me considering that motorcycles are perfectly legal.

<comment><USER15> Interesting point about motorcycles. I wonder though, would motorcycles actually benefit from seatbelts? In an accident a car will provide a substantial amount of protection to the driver, so it's in the driver's interest to be fastened in place. Perhaps it's actually better for the motorcyclist to be separated from the bike as opposed to bring dragged along..

<comment><USER16> This is getting a bit off topic, but no, motorcycles would not benefit from seatbelts. They would actually be a huge detriment. You're right with the idea that it is advantageous to be separated from the motorcycle in a crash. Not just due to not wanting to be dragged along however.

When I started riding a motorcycle several years back I took a proper safety and rider training course. One of the strategies that could be employed for an imminent crash was literally referred to as a "Superman Dive". Basically, you see you're about to hit a car/truck so you put your feet on the footpegs, hands on the gas tank and jump over the vehicle you're about to hit and then do your best to roll when you hit the ground on the other side. A seatbelt would naturally prevent this.

While hitting the ground on the other side of the vehicle and then going for a roll is far from a good day, it beats going from whatever-speed-you're-at to zero instantly when you're flung into the other vehicle. Since there is no metal box around you on a motorcycle, rather than be a safety feature, a seatbelt would limit or prevent actions that could seriously reduce the chances and severity of injuries.

</comment></comment></comment></comment><comment><USER17> Nearly the entire job of police is to collect evidence of crimes being committed. (Actually stopping crimes in progress is secondary at best).

Falsifying evidence is the _opposite_ of this job. Not just not doing the job, but doing its inverse. Provably falsifying evidence even one time should be enough to be banned from ever being entrusted to carry out this role again.

<comment><USER18> Forget banned, they should be jailed, if not worse. They are undermining the entire legitimacy of the justice system, a cornerstone of our society. There are few worse crimes than undermining our ability to punish crime itself.

Extraordinary responsibility should be balanced with extraordinary liability.

<comment><USER19> >Extraordinary responsibility should be balanced with extraordinary liability.

I agree on principle. I think it's quite corrupt and defeatist to think otherwise, but on the other hand they are just people --as fallible as anyone. Other than watchmen for the watchmen ad infinitum, I don't know that this kind of problem would ever be eradicated. (something like Google Glass for the police could work, if people allow that police work necessitate some ugliness at times (i.e. realize that sometimes drugged out people or domestic abuser need to be knocked out, for example. I mean that occasionally, there is an ugliness people might not want to admit exists but is necessary.)

I think one has to consider the human factor in this and be aware of that when designing policing solutions.

<comment><USER20> > but on the other hand they are just people -- as fallible as anyone.

Responsibilities, privileges, and risks should be clearly presented to anyone applying for the position.

Imagine, for example, we applied the same argument to ATC controllers. "Oh they are just human, so they let the planes collide once in a while. No biggie. Maybe 10 days paid vacation" -- No way, right? There would be talks of manslaughter charges, putting better processes in place. Shorter shifts.

I can see "they are just people" excuse being used for those who are involuntarily stuck in the situation. Police works is still voluntary employment.

Also don't buy the "just a few bad cases" excuse. It is not just those few cops that are corrupt that are bad, everyone who sees, but doesn't say anything, is also part of the "spoiled bunch". I would guess most cops by now have seen their colleagues do questionable things and didn't say anything. So by this definition there are very few "good cops"

<comment><USER19> >Imagine, for example, we applied the same argument to ATC controllers.

One can't honestly compare the rigor and checks for a order of magnitudes larger workforce. It's like saying the same rigor applied to space vehicles should be taken to build cars or appliances. I mean, it's possible, but not economically viable. Also, it's not the same kind of adrenalin inducing scenario (i.e you're not thinking, "is this the plane that's coming for me"? i.e. is this the guy who's going to take me down?)

>Also don't buy the "just a few bad cases" excuse.

Ok, but I never made any point about this.

I'm only saying that a system which relies on humans but does not account for their fallibility will have a weakness which needs to be acknowledged and addresed in order to be effective.

>So by this definition there are very few "good cops"

By that definition, there would be very few good people. People tend to give people they know or work with "the benefit of doubt" or even "turn a blind eye".

<comment><USER21> They might be good people but still be horrible cops. But being horrible cops means they must not be cops.

Would you have such an accepting stance on teachers refusing to turn in a rapist teacher? Betraying a trust must mean you lose your position immediately, but it must also cost enough to make it honestly unattractive.

By not having strong and effective punishments for this we create perverse incentives to betray others.

</comment></comment></comment></comment></comment></comment><comment><USER22> On a historic note, Stalin's first, bloodiest purges were also governed by quotas and the heads of various departments of the secret police (NKVD) trying to one up each other, exerting pressure on their subordinates, and in the absence of judicial oversight. Stalin ended up replacing over-enthusiastic NKVD chiefs twice, and the last one, the one we remember the most and whose name, Beria, we come to associate with the oppressive force, was actually less brutal then the previous two (Yagoda and Ezhov).

<comment><USER23> It's veering a bit off-topic, but there's a fascinating historical debate on the Purges going on since the opening of many Soviet archives post-1990. Some historians (though not all) are moving away from the traditional view of Stalin as mastermind in complete control of the situation, and are putting more emphasis on machinations within the NKVD, which seems to have been the source of a lot more independent activity than we had thought, with Stalin often not appearing to be in the loop. In the strong form of the interpretation that's led some to argue that the purges were primarily a function of the bureaucratic machine, with Stalin mostly riding the wave and trying to stay on top of the chaos. In fact they argue that the traditional view, of Stalin as Machiavellian mastermind, was largely an invention of Stalin himself, who was trying to appear in complete control of the situation. Other interpretations revise the traditional view somewhat less, but most do seem to be putting more emphasis on what was going on in the NKVD.

<comment><USER24> Makes sense. Bureaucracies are soulless moral-free machines good at crushing individuals in some mindless goal of self-perpetuation. In fact, makes perfect sense!

</comment></comment></comment><comment><USER25> When I worked on a student newspaper in Montreal, a photographer of ours was once detained by Metro (subway) cops and beaten in a back room.

I did the followup and a cop read the police report to me over the phone. It detailed how the photographer had aggressively interfered with the police in the performance of their duties, quoting the French profanities he had uttered.

Problem: the photographer was a unilingual English-speaker from Ontario.

When they told me that, I got a little too excited about getting them to give me these exact quotes from the report. The police officer suddenly said he'd call me back. Fifteen minutes later, he called me back, opening with "aaah, actually we don't know exactly what he said."

This isn't even the most interesting case of cops lying that I know of, but you always remember your first.

</comment><comment><USER26> "Not just because the police have a special inclination toward confabulation, but because, disturbingly, they have an incentive to lie."

Actually there have been studies showing that police lie much more than the general public. E.g. here is a summary of one such study showing that:

[http://www.erowid.org/psychoactives/statistics/statistics_ar...](http://www.erowid.org/psychoactives/statistics/statistics_article2.shtml)

<comment><USER27> Studies have also shown that high status people lie more; police are high status.

<comment><USER28> > police are high status

And ... that's pretty much the problem.

In the UK, policing is meant to be consensual, by the "people" for the people. The first police were intentionally recruited from lower classes to avoid the whole high-status issue. It's not a well-paid job. Police Dramas like "The Wire" in the US glamorise police work, where in the UK, we have "The Bill" which makes it look dull as hell...

<comment><USER29> Point of clarification: While many US television shows glamorize police work, "The Wire" is definitely not one of them.

"The Wire" shows a lot more of the police/political system trying to sweep things under the rug than anything else. There is even a large portion of one season dedicated to an officer falsifying evidence for his own personal obsession with a completely different case.

</comment></comment></comment></comment><comment><USER30> Link is broken for me. But it should be obvious...the reason cops do anything that is illegal is that they are not subject to any consequences.

<comment><USER31> They are free to do what they want and rarely get any punishment. The only thing they get is Leave Without Pay for some time and that's only when they screwed up really bad.

<comment><USER30> If by bad you mean they committed mass murder.

</comment></comment></comment><comment><USER32> There's a typo in the link, the one that works for me is: [http://www.nytimes.com/2013/02/03/opinion/sunday/why- police-...](http://www.nytimes.com/2013/02/03/opinion/sunday/why-police- officers-lie-under-oath.html?pagewanted=all)

<comment><AUTHOR> Bummer. Is there any way to go back and edit a submitted link? HN won't let me resubmit the corrected link.

<comment><USER32> I think only mods can edit submissions, maybe they'll notice if this stays on the homepage long enough

</comment></comment></comment><comment><USER33> One of the things privileged members of society have a hard time understanding is the cynical viewpoint of the underprivileged. What does one think when the "justice" system commits fraud and one grows up realizing that you're too poor to afford facts being facts and the truth being the truth? It's George Orwell's "ultimate insult," writ savage.

 _> Research shows that ordinary human beings lie a lot — multiple times a day — even when there's no clear benefit to lying._

Years ago, I mentioned the notion of never lying in front of my girlfriend's mom, and she laughed out loud. I was shocked. Is this what most people are really like? I'm beginning to think that I don't like most people.

</comment><comment><USER34> Story about people lying is exclusively based on interviewing a few people and trusting that they are telling the truth about people lying.

I'm sure it happens, I'm sure it's terrible, but I'm sure interviewing people isn't a useful means of doing anything about it. The whole premise is that people lie and are incentivized to do so, but somehow this is magically not true of the people telling you about the lies?

<comment><USER35> You must have missed the part about hundreds of drug cases being thrown out because of such lies. Here it is from the OP

> _The New York City Police Department is not exempt from this critique. In > 2011, hundreds of drug cases were dismissed after several police officers > were accused of mishandling evidence. That year, Justice Gustin L. Reichbach > of the State Supreme Court in Brooklyn condemned a widespread culture of > lying and corruption in the department's drug enforcement units. "I thought > I was not naïve," he said when announcing a guilty verdict involving a > police detective who had planted crack cocaine on a pair of suspects. "But > even this court was shocked, not only by the seeming pervasive scope of > misconduct but even more distressingly by the seeming casualness by which > such conduct is employed."_

<comment><USER34> You actually think this is a good article? Most of that case was also just testimony, this time people saying people are lying.

The article backs up its case with: 1) Article written by a former police commissioner. 2) Quote about one actual case that apparently had some videotape proving a lie. 3) Bronx district attorney decides that the means to deal with lying is to interview the cops who are supposed to be lying about whether they are lying or not. 4) Back to former police commissioner again. 5) Passing reference to 'numerous scandals' 6) Interviews with 'numerous officers' by Urban Justice Center's Police Reform Organizing Project

The former police commissioner writing an article, the supreme court justice, the police being interviewed about their lying, the folks investigating the 'numerous scandals', and the Urban Justice Center's Police Reform Organizing Project -all- have their own agendas, but everything they say is blindly taken as fact in the same article that claims humans lie every day. If you want to mistrust cops because their funding is tied to arrests, you should probably mistrust the urban justice police reform project because their very name is tied to proving the cops are wrong. Why is one side automatically trustworthy? Solely because they support the premise?

I feel like this could be an interesting topic, but approaching it from a he- said/she-said interviewing standpoint is laughable, it should be obvious that interviewing people about lying is downright counterproductive.

<comment><USER35> Ah yes, you're right. Anytime someone accuses cops of lying, those cops usually go straight to jail, and judges rip them a new one. That is most definitely how the system is stacked up, especially in New York.

And a few years ago, when an officer secretly taped his bosses deliberately fudging statistics, that was just another case of biased recording devices...chronic issue, for sure. <http://en.wikipedia.org/wiki/Adrian_Schoolcraft>

I wonder why the author of that piece couldn't devote 30,000 exhaustive words for the article. Another conspiracy of course.

</comment></comment></comment></comment><comment><USER36> The three word answer to this article is buried several paragraphs down:

 _because they can_

</comment><comment><USER37> > In this era of mass incarceration, the police shouldn't be trusted any more > than any other witness, perhaps less so.

At least in Maryland where I live, whether you trust the police less (or more) so than other witnesses is one of the half dozen standard things they ask you in voir dire, and saying yes will exclude you from serving on a jury.

</comment><comment><USER38> Disclaimer: my experience with US police officers is limited to being asked questions by a couple of cops at the airport and watching _The Wire_.

Assuming that cops do actually have quotas, and that their bonus are tied to achieving these quotas, this effectively creates a for-profit police force. Which mechanically leads to aberrations like the DEA agent mentioned in the Caswell case[1] who was paid taxpayer money to find private properties for seizing. And who watches the watchmen?

Note this situation is not unique: in France, the former right wing government put a heavy emphasis on crime statistics, and since the new "left wing" interior minister seems to follow the same policies, it's probably still the case.

1: [http://whowhatwhy.com/2013/01/17/carmen-ortizs-sordid-rap- sh...](http://whowhatwhy.com/2013/01/17/carmen-ortizs-sordid-rap-sheet/)

<comment><USER39> Please don't base your judgments of real life policing on Hollywood productions.

<comment><USER40> Did you actually read the comment you replied to? It doesn't base anything at all on said productions; it was just a cute way of saying lack of exposure to US police.

</comment></comment></comment><comment><USER41> Your link is broken. Here is a corrected one:

[http://www.nytimes.com/2013/02/03/opinion/sunday/why- police-...](http://www.nytimes.com/2013/02/03/opinion/sunday/why-police- officers-lie-under-oath.html)

</comment><comment><USER42> ...how expensive would it be to have all policemen use something like mini- cameras with mikes on them and have a full video archive of all police actions? If things like Google-glass catch on, the cost of a one way system without the projector, plus a streaming system via mobile phone app will make this disposable cheap (yeah, then we'll get into the privacy matter - like a video of you being stopped for speeding with a hooker in your car risking to get on youtube for your wife to see... but still)

</comment><comment><USER43> I've witnessed a police officer lying under oath. I think it was a combination of bad recollection and justifying the lies as minor compared to the overall situation.

</comment><comment><USER44> In the US perjury is a felony and provides for a prison sentence of up to five years.

Does that somehow not apply to the police? If a cop's performance is measured by number of arrests or convictions, and the repercussions of lying under oath is maybe a suspension with pay or worst case being fired, I do not see how this is going to change.

IMHO, law enforcement officials should be held to higher standard.

</comment><comment><USER45> Gopros for police officers?

</comment><comment><USER46> Why aren't lie detectors used in court on a regular basis? Even if it didn't work 100% of the time, it would be better than having to read posts like this.

<comment><USER10> They aren't reliable.

If I was a suspect or witness testifying in a trial that could result in myself or someone I know getting the death penalty or going to jail for a long time, I'd be really nervous and maybe fail the lie detector even if my answers were completely truthful.

OTOH a police officer who's used to lying to suspects (it's the main tool police have in countries where torture or police brutality isn't allowed), or a hardened psychopath criminal who doesn't see anything wrong with lying to protect his own interests, may be so cool that he/she can easily pass the lie detector.

</comment></comment><comment><USER47> youtu.be/6wXkI4t7nuc

</comment><comment><USER48> Well it is a known QA practice: never base incentive on metrics or people will cheat one way or another with the metrics. If your dev have a prime based on SLA or tickets solved guess what? You are giving them an incentive to cheat. You will have nice figures to show your investors, ypur stock options' values will raise and coder will be better paid. Everyone is happy, who cares about the truth, the unfairness, the lie. This is just mis placed moral. Stats that can be tricked are the prozac of our society. It make the metrics describing a situation improve with mutual benefits for (almost) all the stakeholders.

Who cares about the customers or minorities anyway? I mean not on the paper but honestly?

<comment><USER49> Is even worse in NY -- quotas are illegal, yet they exist. But there is no record of what quotas are assigned to a given detail of officers.

</comment></comment><comment><USER50> Well, as soon as the first commandment goes down the drain, all other commandments are quick to follow: "Thou shalt not bear false witness against thy neighbour." Exodus 20:12. It is the general public who is to blame, because they are not willing to enforce this. Police officers caught using force on behalf of the politicians or their servants to transgress on Exodus 20:12 must be served a final extermination order without trial, procedure or ceremony, executable by whoever happens to available and/or willing, because such is the will of the supreme being.</comment>


Show HN: Vigènere Cipher with Emojis - <AUTHOR> http://benklebe.github.io/crypto/ <comment><USER2> Neat! As a note: looks like it's converting the key to lower case for encrypting but not decrypting (or vice versa), so using a key with any capital letters in it won't decrypt to the original encrypted input.</comment>