The App I Used to Break Into My Neighbor's Home - <AUTHOR> http://www.wired.com/2014/07/keyme-let-me-break-in/ <comment><USER3> I feel like this is a complete misunderstanding of the threat model here. Keys are not "like passwords", because to use a key you need to physically go up to someone's door, whereas with a password, you can generally do so from a computer terminal anywhere in the world, potentially using anonymizing proxies.

If anyone in the world could anonymously try and open my doors and, if they succeeded, could steal my valuables, _locks would have been found insecure a long time ago_.

Yes, the author here doesn't know how to use lockpicks or a crowbar to break into a house. The author also has presumably never tried to steal something from a house. Houses are generally just secure enough that the casual passer- by can't easily get into them, but not secure enough that if you really wanted to you couldn't get in. Most people who pick locks will tell you that picking locks is not a particularly good way to break into a house to steal things because breaking into a house is _easy_ when you don't mind destroying someone's property. If you're a criminal you don't need anything more sophisticated than a crowbar (and even then you might just walk around until you find a door that's not locked at all).

So sure, maybe this makes one particular attack marginally easier (not really all that much easier than it was before), but illicit key duplication is still not the weakest part of your physical security by a long shot, so I don't think there's anything to worry about.

<comment><USER4> You seem to only care about theft. What about restricting access to those who have other reasons to break into someone's property? Spurned lovers, coworkers, friends you can't really trust... The kind of people who would actually have access to take photographs of your keys to begin with?

<comment><USER3> This only adds the ability to copy keys with momentary access to your keys. Anyone with sustained access to your keys can just take them down to the hardware store, so this doesn't really change the "spurned lovers" equation.

I don't see why the other people would want to break into my house if they weren't interested in stealing my things or hurting me (and if they are just breaking in to like, hang out in my house, that's a bit weird but not really something to lose any sleep over). If they do that habitually, I think they'd find breaking into the house _without_ using a credit card to buy a copy of my key is quicker and less risky than using KeyMe. I am not particularly worried about the extremely rare threat model of being my non-criminal friend or coworker's first break-in, where they decide opportunistically to break into my house because I left my keys somewhere and they know they can easily make a copy of them at a kiosk.

</comment></comment></comment><comment><USER5> "Parking valets suddenly require a ludicrous level of trust"

They always have. It was always possible to take a blank key and just copy it with a file. You could use a softer material to expedite the process and then copy it again later...

Which is why, most cars come with a __valet parking key __that only turns the ignition, and doesn 't open your trunk. You're not supposed to hand the valet your entire keyring. That's ludicrous (although a lot of people do this)

Though with the availability of this app we're going to see a lot more crime committed this way.

<comment><USER6> 1) The trunk can be opened without a key from the drivers seat of most every car, no?

2) The value of contents of my trunk is rarely within two orders of magnitude of the value of my car.

<comment><USER7> My Honda has a lockout that disables the lever used to open the trunk from the driver's seat. Of course, many cars have a fold down rear seat (mine doesn't) meaning any valet that really wants to check out your trunk will still be able to.

<comment><USER8> My 15 year old Honda has locks on all of those things, that you cannot unlock with the valet key. There is a lock on the trunk lever, a lock on the shelf in the back window for the seats, and a lock inside the armrest cubby in the back for the fold-down cup-holder stowaway door thinger.

</comment></comment></comment></comment><comment><USER9> Killer escaped prison after being issued picture of master key to all locks.

A former prison officer said the design of the master key - which could open every lock in Berrimah jail in Darwin - was printed on the front of the prisoners' information handbook.

[http://www.news.com.au/national/killer-escaped-prison- after-...](http://www.news.com.au/national/killer-escaped-prison-after-being- issued-picture-of-master-key-to-all-locks/story-fncynjr2-1226629878591)

</comment><comment><USER10> To spare people time reading:

It's KeyMe, a service that lets people make copies of keys from a vending machine, using photographs of keys. He got the photos because his neighbor let him handle the keys.

No particular high-tech involved. (Even though he claims they're 3d-printed in the vending machine, i suspect they're simply cut from a raw.)

<comment><USER11> Minor nitpick: The author indicated that custom styled and mailed keys were 3d printed, and the kiosks cut the keys from a blank. (end of 4th paragraph)

Otherwise an accurate and brief summary. The article is relatively short and worth the read, though.

</comment></comment><comment><USER12> for those playing along at home, the app he used to break into his neighbor's home is called "my neighbor gave me a key to their home".

if we are willing to call this a "break in" then the app is not the operative concept, it's the social engineering that enabled the guy to give you the fucking key.

might as well have written about the shoes you used to break in with.

<comment><USER13> The article also says:

\- The app makes it in 30s,

\- "Do Not Reproduce" keys can be reproduced,

\- Lock nerds can reproduce keys from a 60-feet picture.

All 3 imply a change of the possibilities and thus, newsworthy.

<comment><USER12> > The app makes it in 30s

it says he "spent about 30 seconds in the stairwell scanning his keys". the app doesn't "make" anything in 30 seconds.

> "Do Not Reproduce" keys can be reproduced

"do not reproduce" does not mean "can not reproduce".

> Lock nerds can reproduce keys from a 60-feet picture.

i read "One group of researchers ... could reproduce keys photographed from nearly 200 feet away and at an angle." this is without the app. which is more to my point.

moving on, if the person trusts you enough to give you a key, you don't need it.

</comment></comment></comment><comment><USER14> I think that this article, and many of the comments, show a misunderstanding of what robbing houses is really all about. Not that I've done it, but it seems pretty obvious when you think about it from the robber's perspective.

Anything to do with locks is not really relevant to robbery, since virtually none of the houses in the world have good enough security to resist anyone even moderately determined and willing to break things. Why bother with some elaborate charade to copy keys when a crowbar, or usually a boot, will get you into any house?

What is actually relevant is information about the house and what's in it. First, information about whether there is anything stealable in there - <USER2> that's easy to transport out and can be sold in a grey market for a good price without being easy to track back to the thief. Most houses don't have a lot of stuff like this, and there's probably a pretty stiff haircut on the price you can get when moving stolen goods through fences. I'm guessing that you'd want trustworthy information that there's stuff you can take and move for at least $1,000 or so to make it worth your risk to break into a specific house.

You'd also want solid information about who can be expected to be at the house, and when. Any chance at a confrontation is going to add a lot of risk.

Threats like the valet copying your keys don't really make any sense. Yeah, he has the keys, and information that could lead to an address, like registration and license plate. But he doesn't know anything about what's in the house or who's there. Why should he care that, after going through a complex and risky process to get a copy of the keys and the address, he has slightly easier access to a house of unknown quality?

Worry instead about people who have access to that information. Repairmen, exterminators, maids, anybody who has a legitimate reason to go around your house. And be wary of letting untrusted people know when your house might be empty for an extended amount of time.

</comment><comment><USER15> There's a minor inconsistency with car keys.

In contrast to "stupid" ordinary house locks, which are not powered, car keys these days incorporate RFID chips so that the key at least cannot be used to steal the car. Granted, you can still empty it, but at least better than losing the car altogether.

<comment><USER16> I think the OP was implying that valets could photograph the house keys, then later go and rob the home of the car owner.

A locked door to a home is rarely a deterrent for a determined thief.

I mean, heck, the valet could just as easily steal the garagedoor codes from a garage door opener, right?

<comment><USER17> Except, how would the valet know where you live?

<comment><USER18> He'd get your address from the car's registration documents, which will typically be in the glove box or clipped to one of the visors.

<comment><USER19> Or he could possibly check the GPS location list for 'Home' or the GPS trace if this data is stored.

</comment></comment></comment></comment></comment><comment><USER20> So what if there's an app? Copying keys has been done for centuries and it's trivial. I forgot my personal storage locker key once at home when working at one metal company. It didn't take too long to call my dad, as details about the key, and creating a working copy. It was a Abloy Classic key, so it was trivial to copy of it from bolt using lathe and a bandsaw. With some key types you might also need a drill. All this work can be done bit slower using plain hand tools, you don't need even electric power for copying keys. And the lathe was only needed, because I naturally didn't have a right 'blank'. Copying keys has been always trivial if you have access to key you want to copy. I guess it's now ok to confess that I also had a teachers set of keys at school. Of course a copied set. One teacher borrowed me their keys once, and that's it. And this was 20 years ago and before copying the keys needed for personal locker at work.

</comment><comment><USER21> Apparently 95% of USA home locks use SC1 or KW1 keys... and OpenSCAD files can be downloaded to easily generate a 3D model of any key configuration using a statement like this for example: sc1([3,3,1,7,2]); [http://www.thingiverse.com/thing:8925/#files](http://www.thingiverse.com/thing:8925/#files) ... then send it to your 3D printer

</comment><comment><USER22> News story in 2006:

Jail keys changed after TV lapse

All the locks and keys at Feltham Young Offenders' Institution have had to be replaced after security was compromised during a media visit last week.

[http://news.bbc.co.uk/1/hi/england/london/5145026.stm](http://news.bbc.co.uk/1/hi/england/london/5145026.stm)

</comment><comment><USER23> What happens if the "Key" DB gets hacked and stolen? Is the company required to buy everyone new locks?

</comment><comment><USER24> Only tangentially related, but: It would be interesting to consider physical(ish) methods of federated authorization.

Hand the valet a key fob that you've enabled for use within a 1 mile radius and two car starts?

<comment><USER25> > and two car starts?

That's a great way to have your dinner interrupted or end up waiting forever for your car.

</comment></comment><comment><USER26> DEF CON 18 - Schuyler Towne & datagram - Attack the Key, Own the Lock

[http://www.youtube.com/watch?v=_ctWJAdeHPU](http://www.youtube.com/watch?v=_ctWJAdeHPU)

<comment><USER27> Oh, it's that guy from the kickstarter I backed four years ago that still hasn't delivered.

[https://www.kickstarter.com/projects/schuyler/lockpicks- by-o...](https://www.kickstarter.com/projects/schuyler/lockpicks-by-open- locksport)

<comment><USER28> The dude is suffering from a major depression and is about to go on medication, give him a break. Anyone who invests in a kickstarter must understand there's just one guy behind a lot of them and there's a massive risk they'll fail to deliver.

And Jason Scott is on the case to get things righted, you can't get a much more trustworthy caretaker than that...

[https://www.kickstarter.com/projects/schuyler/lockpicks- by-o...](https://www.kickstarter.com/projects/schuyler/lockpicks-by-open- locksport/posts/903690)

<comment><USER27> Why yes, in the latest episode of the soap opera it seems both of them conform to the "Ever feel not perfect? Ask your doctor about..." American pharmaceutical stereotype. It has been almost worth it backing just to read the excuses. Almost, but not. Funny how in traditional societies people just go get some exercise or something and don't need chemical crutches with lists of side-effects scarier than the original so-called symptoms. Having lived in a few countries, to me it's clear: US mental health issues are partly socio- psychosomatic. Warm fuzzies and all that, but four years is a long time.

<comment><USER28> This is not the time or the place for this discussion so I'll _try_ to keep it brief and non-argumentative.

As a non-American, I agree the U.S. is way overmedicated.

That said, some people still _do_ need medication. If you read the post you'll see the guy himself has avoided the medication until now due to a bad episode of being misdiagnosed and medicated as a child. He has literal first-hand experience of what you're complaining about.

I'm in Japan now, and this place is the exact opposite. Mental illness "doesn't exist" and half the medications prescribed in the US are illegal here. And hey, 3 train jumpers a day. "Hey pussy, pull yourself up by your bootstraps" doesn't work either.

</comment></comment></comment></comment></comment><comment><USER29> Nice link-bait on the headline but for most people the only thing preventing an intruder is a very thin piece of glass.

Also, does KeyMe, et al, really not email/notify you when a dupe is made?

<comment><USER30> They don't know who a key belongs to, they trust that you are the owner of said key when you upload it.

<comment><USER29> Oh, right, silly me.

</comment></comment></comment><comment><USER31> Wasn't something like this already being done in the pre-iPad era with bars of soap or wax?

If you loose possession of your keys for a time someone can copy them. Did someone not know this?

</comment><comment><USER32> This is why I use 2 factor on my front door.. Mainly fingerprint backed by a code or key. Noting is 100% safe..but I prefer ease of use in making a decision.

<comment><USER33> If you're trying to prevent a burglar, it's overkill. They'll just use a crowbar.

<comment><USER34> Does the fact that a burglar used a crowbar vs. entered silently via a copied key play into how easy it is to deal with your homeowners insurance provider? (Genuinely curious, and couldn't find anything via a brief Google search.)

</comment></comment></comment><comment><USER35> I know people who made keys from photos in high school (I attended boarding school, there was a lot of free time). It is not hard to do, even without KeyMe.

</comment><comment><USER36> Yep. And this is why I have an easy way to separate my car keys from the rest of my keys. I don't hand anyone my house keys, ever.

</comment><comment><USER6> Like magnetic stripe credit cards, keys need to die. The security model is broken for the same reason - anyone who handles or even looks at the token has free reign on whatever is protected by the secret. The secret should instead remain encapsulated, used only to sign encrypted, replay-attack-proof authorizations.

It's 2014. Smart cards need to be everywhere. Even my college dorm had contactless smart card authentication.

Keys still have a place for manual override in outages, but that should be rare and set off alarms.

<comment><USER7> I agree about the smart cards. My college had chipped id cards (like modern non-USA credit cards) in 1992!

I just stayed at a hotel in New York with smart card locks. It was so nice to be able to just hold my wallet against the door rather than pull the card out of my wallet and try to remember which way the magstripe goes, etc.

The reader on the elevator was placed low enough that I just needed to stand within a few inches of it to "unlock" my floor.

<comment><USER37> Do keep in mind that hotel doors are anything but secure, regardless of the kind of lock. It doesn't even take a sophisticated exploit to unlock the door, just a simple metal gadget.

[http://shop.riftrecon.com/products/under-the-door- tool](http://shop.riftrecon.com/products/under-the-door-tool)

</comment></comment></comment><comment><USER38> With apologies to all, everyone is missing the point, including the author.

Spoiler/tl;dr summary of this comment: Soon you will be able to generate a key while standing at the lock, scanning it with the laser scanner built into your mobile device, generating the key with a hand-held 3D printer you bought at the convenience store on the corner.

OK, longer version.

A number of comments dismiss the security threat as not particularly meaningful (give someone your keys, give them an opportunity to mess you up) and they are correct insofar as this very specific threat is concerned. It really is very similar to the traditional "give someone your credit card, they can mess you up" threat.

But think about that threat for a moment: The reality of that threat led to chip-and-pin cards, to CCVs, and to PCI compliance.

That threat was also greatly magnified by the move from the pen-and-paper world to the world of online shopping - and we've had to adjust our threat mitigation strategies appropriately.

The point of the article isn't actually for example that valets require great trust. The author actually misses the real point while describing it quite clearly: It has always been possible to do this, it's just orders of magnitude easier, and cheaper, to do it today, because of the blend of off-the-shelf widely available low-tech technology. That's the point of mentioning KeyMe: It is so easy to build the bits to do this threat that there are reliable commercial services that make money from low-cost apps and unattended kiosks.

And it is going to get much, much, much, much worse, very, very, very soon.

Very soon now you will be able to buy a pocket or at worst back-pack size multifunction replication device, that is, a 3D printer with a scanner built- in, or perhaps a 3D printer that uses your mobile device as a scanner.

With that device, you will be able to duplicate the keys on the way up the stairs.

And soon you will be able to use a commercial hand-held 3D printer with a commercial hand-held laser scanner to generate a key by scanning the lock.

That's just the beginning of tomorrow's threat model.

EDIT: Added a missing word above, and the following thought....

We assess attackers based on motivation and resourcefulness: a motivated, resourceful attacker is always a worry. The key duplication threat used to require a motivated attacker capable to acquiring resources, e.g., the prisoner, who would duplicate a key slowly and laboriously, using low-tech tools. This is a very motivated attacker.

Existing and emerging technologies make the resources widely available and lower the motivation bar dramatically. The key duplication scenario will soon be populated by the equivalent of script kiddies who will perform the threat just because they can, just because it's that easy.

That's the point of the article. That's the threat model we face going forward.

<comment><USER3> It is very _very_ unlikely that you'll be able to duplicate keys using any kind of laser scanning technology, that's just not how they work. You could probably get the appropriate shape of the keyway, but you wouldn't be able to decode the lock without being able to image through metal, which is simply not going to be a technology built into phones any time soon.

I still find it an unlikely threat model, but I would admit that in the unlikely event that a technology allowing you to enter a door just by scanning it and printing up a key were invented and integrated into mobile phones or something else people are carrying around _anyway_ , then that might actually overtake "crowbar"/"breaking the window" as the lowest-cost lowest-risk way of breaking into someone's home. And even then, probably it wouldn't affect all that many people. Plus you'd just have to modify lock technology slightly to fix the problem.

<comment><USER38> You got me wondering about other ways to scan, such as sonically. I'll bet that right now any kind of sonic scan would be crude and rough - but how long before signal processing can be cleaned up to make it good enough to guesstimate the lengths of the pin segments?

Especially if the scan included analyzing against known lock types? This is the sort of problem for which the Internet is ideal: An optical scan to narrow down lock makers and models, load custom signal processing configurations for those likely locks, perform a sonic scan of the lock and collect reflections, distortions, etc., and use the custom config to ease the decoding: Wah-la! A picture of the inside of the lock, with pin segment lengths.

Then print 5-10 likely keys on the spot.

Picking a lock requires a suspicious body posture and special tools.

Scanning a lock this way just requires you be close enough to the door. Checking your messages? Patting your pockets to make sure you have everything? Leaning your bag against the door on your knee to make sure you have everything? Many plausible scenarios for staying close enough long enough, and the tools are COTS, common.

Or maybe I "deliver" a "package" to your door, lean it against the door (UPS and others do this all the time), and the top of the package contains the scanning tools. I come back later (seconds, minutes?) after realizing I've made a mistake and take the package back.

The more I think about it, the more I cannot help but wonder if the physical lock of the future will not need a proof-of-authorization mechanism to vet the keyholder - at which point we eliminate the keyhole entirely and move to direct identification of authorized entrants.

And then of course watch for 0-day vulnerabilities in THAT technology.</comment></comment></comment>


The Ghost in the MP3 - <AUTHOR> http://ryanmaguiremusic.com/theghostinthemp3.html <comment><USER2> For what it's worth, the presence of seemingly significant signal in the difference between the original and compressed tracks does not _necessarily_ mean that significant sonic/perceptual loss has occurred. Operating correctly, the encoder is designed to cut not just sounds that the human ear cannot hear in general (e.g. sounds above 22kHZ) but also sounds which may not be perceptible _in context_ (e.g. the quietest signals in a loud section). So if you find something beautiful about the ghost tracks (and I think there is something beautiful to find), don't immediately jump to concluding that mp3 is awful for cutting these sounds—they might be hardly perceptible when added to the mix.

Of course, at high-compression rates mp3 does begin to significantly degrade fidelity.

Edit: all of this is not to put down the project—I still think it's pretty cool as art and as a demonstration of the encoder, I just didn't want people to think that this was some sort of massive failing of mp3.

<comment><USER3> > Operating correctly, the encoder is designed to cut not just sounds that the > human ear cannot hear in general (e.g. sounds above 22kHZ) but also sounds > which may not be perceptible _in context_

This.

The idea is called "masking", and a well-designed encoder explicitly removes the most details from areas where they are masked by other, louder parts of the signal. See the presentation on CELT I gave at linux.conf.au in 2009, and in particular listen to the audio samples that go with slide 47: [http://www.celt-codec.org/presentations/](http://www.celt- codec.org/presentations/)

<comment><USER4> Look into the sky at night during a new moon, and count the stars. Look again during the day. The stars are still there, but the atmospheric diffusion of blue light from the sun prevents you from discerning the fainter light of a more distant star.

Lower yourself to the bottom of a deep well during the day, and look up again. You can see the stars again, because the diffuse blue sunlight is much weaker there.

If you were to compress an image of the daytime sky in the same manner that an MP3 compresses audio, you could simply remove all that variation from faint stars and only keep the information from bright sunlight. Follow the ghost discovery technique by taking the difference between the original and the compressed image, and you will see an image resembling the night sky. But most people would not be able to discern much of a difference with the naked eye.

For audio, if you have a pianissimo piccolo solo, and someone plays a crash cymbal in the middle, you could remove some of the harmonics from the melody because humans are incapable of hearing them, and you can also remove that portion drowned out by the crash, because humans can't hear quiet sounds through louder noises.

Finding the "ghost" track is actually revealing all the sound in a piece of music that no one ever hears anyway, whether the track is compressed or not, simply due to the hardware limitations of the human auditory system.

</comment></comment></comment><comment><USER5> "Listening tests, primarily designed by and for western-european white men, and using the music they liked, were used to refine the encoder."

Not to be oversensitive, but would it be okay to say something like this if Fraunhofer IIS were in... Japan or something, and they happened to find a lot of Japanese people who liked Japanese music for listening tests?

"Listening tests, primarily designed by and for east-asian yellow men, and using the music they liked, were used to refine the encoder." Would probably come off a bit rougher, ね?

FWIW the tracks were interesting to listen to, and I've had fun doing this as well. I recommend trying it with the Opus codec. As for the sensibilities of the author, I hope they can get over their paranoia about audio codecs being an ethnocentric conspiracy to destroy "the sounds they didn't want us to hear".

<comment><USER6> In the United States, "yellow man" is considered pejorative, "white man" is not. In isolation this seems illogical as they are structurally analogous, but words do not have meaning in isolation. The meaning of a word entails its historical use by a society.

<comment><USER7> I dunno. I _almost_ exclusively hear "white man" used as an insult. Not long- term historically certainly, but certainly now - it's almost always accompanied by the implication that white men are racist (and/or sexist).

</comment></comment></comment><comment><USER8> I would appreciate a couple examples showing more typical bitrates at 256kbps and 320kbps. I like what it is, but there's this lossy difference between the argument being made and reality. Now, if I could get a copy of the intended argument, I could invert the phase with this site and show you the difference.

<comment><USER9> The argument being made is more about art, not "mp3 bad".

<comment><USER10> Okay, but the art is dancing around an actual important technical question without answering it, even though it would take far less effort to do so.

<comment><USER11> I'd refer you to the top-voted comment from @ daturkel. Because of the psychoacoustic models used for lossy audio compression (and, in particular, the "masking" effect) listening to these delta signals won't give you useful information about the compressor's accuracy.

<comment><USER10> I disagree. It gives you information you have to treat carefully, but it is useful.

Especially to compare different bitrates. I'm not even sure what bitrate this used, maybe 128 like the example files?

</comment></comment></comment></comment></comment><comment><USER12> Reminds me of this article a few years ago, where college students actually preferred music with MP3 compression artifacts in it: [http://radar.oreilly.com/2009/03/the-sizzling-sound-of- music...](http://radar.oreilly.com/2009/03/the-sizzling-sound-of-music.html)

<comment><USER13> Has this been reproduce somewhere else? I have always been very sceptical of that claim since I first read it.

</comment></comment><comment><USER14> What I find amazing is that someone decided to create this, just because they could.

I find that a lot more interesting than anything learned, strangely.

<comment><USER15> This is hardly innovative or creative. People on audio forums have been playing around with this technique for years. It is literally a mechanical process.

<comment><USER16> Exactly. OP doesn't have enough to complain about, so he's literally hyperfocusing on nearly imperceptible artifacts and amplifying them...

...in order to weakly raise a vague grumbling about "European" audio engineers.

Even though he has no evidence to support that claim.

Yes, Fraunhofer is a German company, with headquarters in Munich. But did OP know they employ 23,000 people, with centers in the U.S. as well as Asia?

He could have looked that up, but it's so much easier to just throw bullshit out there and hope it resonates with people ashamed of their ancestors.

MP3 is not one single technology that all came from Fraunhofer. It is an accumulation of several areas of technology, including types of filters, compression as well as the perceptual stuff. I once traced it through the research literature all the way back to voice compression protocols for the American F15 (16?) in the 1970s!

And if you're reading this far, you're probably totally obsessed like me and you might want to check out my associate Jonathan Sterne's book on the history of MP3 from a cultural perspective [0].

[0] [https://www.dukeupress.edu/MP3/](https://www.dukeupress.edu/MP3/)

Sterne traces the history of perceptual encoding all the back to the early 1910s! It's not just some pop-tech designed in 9 months for a quick buck!

Finally, audio engineers is a term that generally means people who work with sound in a studio or recording context, who produce audio for projects with specs. MP3 was designed by _scientists_ who produce work _about_ audio, not audio engineers.

</comment></comment></comment><comment><USER17> White text on black background? Center justified text? I love the sound, but the page is making my eyes bleed.

</comment><comment><USER18> Nice and interesting, but doesn't soundcloud use some compression itself? I mean, isn't it different from simply posting some FLAC file? I don't know, just wondering.

<comment><USER19> "Does SoundCloud convert my files to mono? We don't modify original audio files that are available for download. For streams, we convert the original into MP3 Joint Stereo for streaming."

</comment></comment><comment><USER20> Sounds somewhat familiar to what you can achieve with Paul Stretch. I assume it has something do with phasing...

</comment><comment><USER21> I would be very interested in seeing a comparison of codecs and bitrates done in this way.

</comment><comment><USER22> Tip: disable Ghostery or you will not understand what's going on...</comment>


Show HN: Run C Online - <AUTHOR> http://cstub.com/

<comment><USER2> I like that a lot. Nice idea, if a little dangerous. I'm assuming it's jailed because all the system headers are there.

Just a heads-up- your 'about' says Ruby code instead of C.

</comment><comment><USER3> How do you make sure people don't do something bad?

<comment><USER4> I imagine they're probably using a chroot jail.

<comment><USER5> Looks like it is running under Docker, as you can see by running things like:

           system("cat /proc/self/cgroup");</comment></comment></comment>


The format of strings in early (pre-C) Unix - <AUTHOR> https://utcc.utoronto.ca/~cks/space/blog/unix/UnixEarlyStrings <comment><USER2> Slightly off topic. The article doesn't call it out but there's a lovely assembly hack here. In:

bec 1f / branch if no error

       jsr r5,error / error in file name

           <Input not found\n\0>; .even

       sys exit

jsr calls a subroutine passing the return address in register 5. The routine error interprets the return address as a pointer to the string.

r5 is incremented in a loop, outputing one character at a time. When the null is found, it's time to return.

The instructions used to return from "error:" aren't shown but there is a subtlety here, I think.

".even" after the string constant assures that the next instruction, "sys exit", to which "error:" is supposed to return, is aligned on an even address.

By implication, the return sequence in "error:" just be sure to increment r5, if r5 is odd. I am guessing something like the pseudo-code:

inc r5

and r5, fffe

ret r5

<comment><USER3> Yep!

[http://minnie.tuhs.org/cgi- bin/utree.pl?file=V1/sh.s](http://minnie.tuhs.org/cgi- bin/utree.pl?file=V1/sh.s)

        error:
            ...
    	inc	r5 / inc r5 to point to return
    	bic	$1,r5 / make it even

<comment><USER2> Thanks! Nifty!

</comment></comment></comment><comment><USER4> After skimming through this, I navigated around this Chris Siebelmann's site with the forward and back links, discovering something way more interesting than Unix strings and refreshingly relevant:

"How I do per-address blocklists with Exim"

[https://utcc.utoronto.ca/~cks/space/blog/sysadmin/EximPerUse...](https://utcc.utoronto.ca/~cks/space/blog/sysadmin/EximPerUserBlocklists)

I run Exim, and I'm also a huge believer in blocking spam at the SMTP level, and also do some things globally that should perhaps be per-user. I'm eagerly interested in everything this fellow has to say.

<comment><USER5> I've followed his site for awhile, and he seems like a thoughtful person who likes to document his reasoning. I'm not a sysadmin, so I don't care about a lot of what he writes, but he's worth reading for stuff I care about. For example, he's pretty astute about the "how" and "why" of spam.

</comment></comment><comment><USER6> I was hoping to read something juicy like null termination was created by a summer intern.

<comment><USER7> Nope! Only time-wasting and mind-engaging software like solitaire.

<comment><USER8> So am I overachieving by trying to learn React+Flux and Angular.js + typescript and also trying to learn ASP.NET 5 MVC 6 while working my internship?

Maybe I should just make HTML 5 games instead...

<comment><USER9> I don't know a less blunt way to say this, but the tools you use are usually not as important as the software you write. It sounds like you're more focussed on padding your resume with buzzwords. Try to work on writing an interesting application.

<comment><USER10> If you aimed to land on a job in a big company, "Padding your resume with buzzwords" is not that bad, because HR people filter CV's from the pile using these same keywords. Not that I say it's a good practice..

</comment></comment></comment></comment></comment><comment><USER11> I have seen it claimed that null-terminated strings were encouraged by the instruction sets of the time -- that some instruction sets make null- terminated sequences easier to handle than length-prefixed ones. The article's error-message-printing code snippet is a good example. Does anyone think there is any truth to this?

<comment><USER12> Null terminated is going to be nice in most instruction sets, you don't need to keep track of a count, so you save a register, and you have one less thing to increment (or decrement). Loop condition is basically free too, loading the next byte into a register is going to set the status register, so you don't need a compare, you can just branch if the zero flag is set.

As long as you are handling good data, it's clearly more efficient.

<comment><USER13> Also, null-terminated arrays are used for other stuff that not are strings. For example : [https://developer.gnome.org/glib/stable/glib-String- Utility-...](https://developer.gnome.org/glib/stable/glib-String-Utility- Functions.html#g-strsplit) returns an null terminated array of strings.

<comment><USER14> argv is a null-terminated array of string.

</comment></comment></comment></comment><comment><USER15> I always felt like NUL-termination, newline-separation, and (eventually) UTF-8 were all sort of complementary ideas: they all take as an axiom that strings are fundamentally streams, not random-access buffers; and they all separate the space of single-byte coding units, by simple one-bitwise-instruction- differentiable means, into multiple lexical token types.

Taking all three together, you end up with the conception of a "string" as a serialized bitstring encoding a sequence of four _lexical_ types: a NUL type (like the EOF "character" in a STL stream), an ASCII control-code type (or a set of individual control codes as types, if you like), a set of UTF-8 "beginning of rune" types for each possible rune length, a "byte continuing rune" type, and an ASCII-printable type. (You then feed this stream into another lexer to put the rune-segment-tokens together into rune-tokens.)

In the end, it's not a surprise that all of these components were effectively from a single coherent design, thought up by Ken Thompson. It's a bit annoying that each part ended up introduced as part of a separate project, though: NULs with Unix, gets() with C, and runes with Plan 9.

One of the pleasant things about Go's string support, I think, it that was an opportunity for Ken to express the entirety of his string semantics as a single ADT type. That part of the compiler is quite lovely.

</comment><comment><USER16> How else would you implement them, seriously.

You have two choices, counted or terminated.

 _Counted_ places a complexity burden at the lowest level of coding.

With _terminated_ you still have the option of implementing strings with structs or arrays with counts or anything.

And people did of course. Many many different implementations of safe strings exist in C; the fact that none have won out _vindicates_ the decision to use sentinel termination.

</comment><comment><USER17> One of the worst programming ideas ever dates bavk even earlier than we thought.

If only Dennis had had the foresight to nip that one in the bud...

<comment><USER18> what's your better idea? (hint: this has to work in assembly language.)

<comment><USER19> Strings and arrays begin with one pointer-sized word that indicates the size of the string/array, thus making all the various mutant versions of functions that work with them unnecessary. And eliminate the requirement to specify length separately when passing as a function argument. And make bounds- checking trivial. And almost entirely eliminate buffer overflows.

This would naturally want malloc to know the type and count, eg: char[] x = malloc(char[], 100). That means no opportunity to screw it up (let the compiler turn that into the sizeof math to pass to the actual allocator).

If bounds checking is a performance bottleneck you could turn it off with compiler flags; that's not a valid argument against it.

But hey... all the various buffer overflows, RCEs, and various exploits are totally worth the minor performance gains /sarcasm.

<comment><USER20> I don't think you appreciate the zeitgeist. People were building complex systems: compilers, operating systems, databases, numerical simulations, and worse in machines with less memory than an Arduino. Adding a byte to every string was widely viewed as madness.

<comment><USER21> Yes, of course. The only problem is that now my iPhone is more performant than top supercomputer was then, but this ugly hack with strings is still there, alive and kicking.

And even then — one byte of memory could be nothing compared to CPU overhead. Or maybe not — RAM was insanely expensive these days.

<comment><USER22> But you're comparing apples and pears. This 'ugly hack' is - for obvious reasons - not what 90% of software on your iPhone is actually using to manipulate strings. Instead, the ugly hack known as NSString tidily wraps the char buffer, its byte-length, possibly an offset - most application developers never deal with null-terminated strings!

So in other words, I don't really understand why you are arguing for replacing a standard - one that works well for its purposes, mind you - with another when this has in fact already happened. And even less I understand why you are trying to frame a good and sound engineering decision as somehow a mistake?

</comment></comment></comment></comment></comment></comment><comment><USER23> The predecessor of Unix, Multics was written in PL/1 and was very innovative (modern OS still borrow "new ideas"): [https://en.wikipedia.org/wiki/Multics](https://en.wikipedia.org/wiki/Multics)

</comment><comment><USER24> That was anti-climatic.</comment>


Ask HN: 3 hours away from getting the fiber optic 100Mb symmetrical at home - <AUTHOR>

A technician is coming in 3 hours to install the optical fiber at my home. I'am very geeky, this is going to be a 100Mb/s line, symmetrical! I plan to install my NAS on it as well as a VPN to access all my medias from wherever I am.<p>But is there anything you would do if you had this? Maybe I'm missing some great idea on how to have fun with that. Any idea HNers? <comment><USER2> I have it.. hasn't made web browsing any faster of course.. but its made working from outside of the house more pleasant. I put my main computer in the DMZ, added a dyndns.org address so I could connect externally, and now I can ssh in from whatever and serve out whatever. Makes it easier to do web dev also without having to launch an EC2 instance, or pay out the ass for other hosted services</comment>


John Battelle: Thinking Out Loud: What's Driving Groupon? - <AUTHOR> http://battellemedia.com/archives/2010/12/thinking_out_loud_whats_driving_groupon

<comment><USER2> Great analysis from John Batelle on why Groupon is unique. I watched Andrew Mason's interview on Charlie Rose, and also his Startup School talk and they really seem to have hit a huge well of potential. Can't wait to see what Groupon 2.0 looks like.</comment>


Homeland Security to Compile Database of Journalists, Bloggers - <AUTHOR> https://biglawbusiness.com/homeland-security-to-compile-database-of-journalists-bloggers/ <comment><USER2> For folks who are not aware, there are like a dozen commercial products that already do this.

If you sign on with Cision, for example, you can pull an up-to-date list of reporters in any U.S. market, filtered by beat, outlet, channel, topic, etc., and send an email to all of them by pushing a button. Then you can click over to the monitoring dashboard and pull media stats by reporter, keyword, channel, etc. Can't remember if Cision does sentiment but I know a lot of others do.

This story is being reported and commented like "DHS seeks to create new tech capability." The reality is more like "DHS seeks to choose an agency who will use commercial OTS products to help DHS do something that any major brand has been doing for years already."

<comment><USER3> For folks who are not aware, there is a huge difference between a private company doing something and a government doing something. Government is the institution of violent enforcement, making them much more powerful and potentially dangerous than a PR consulting firm.

<comment><USER4> That's only true as long as corporations remain relatively small in power. There has been a definite trend in consolidation of power amongst the larger corporations and if it continues there won't be much practical difference between them or the government

<comment><USER3> I agree.

</comment></comment></comment></comment><comment><USER5> I guess they're also putting out tenders to sharpen the guillotines.

We'll see a lot of sock and meat puppets from the central panopticon playing in this discussion. They'll say how normal this is, nothing to worry about and insult those who are worried. Watch them, it's quite amusing.

</comment><comment><USER6> "Despite what some reporters may suggest, this is nothing more than the standard practice of monitoring current events in the media. Any suggestion otherwise is fit for tin foil hat wearing, black helicopter conspiracy theorists." — [https://twitter.com/SpoxDHS/status/982372727309963264](https://twitter.com/SpoxDHS/status/982372727309963264)

You're not a tin foil hat wearing, black helicopter conspiracy theorist, now are you?

<comment><USER7> That tweet might have been amusing if our President was not a tin foil hat wearing conspiracy theorist (not sure what he thinks about black helicopters).

Question for down voters: Can you seriously make a case that he is not a conspiracy theorist?

<comment><USER8> Well, you stated a claim that seems quite outlandish. Then you edit and question down-voters if they can "seriously" prove you wrong? Unless it's well-known fact or something agreed on by everyone, making such a bold statement would require _you_ to prove _your_ case. Not the other way around.

<comment><USER7> Theories he has stated or expressed approval of:

• Obama was not born in the United States.

• Climate change is a hoax.

• Ted Cruz's father may have been involved in the Kennedy assassination.

Want more? Just Google for Trump and conspiracy theories, and you'll find plenty of articles covering a bunch of them. Example [1].

> Unless it's well-known fact or something agreed on by everyone, making such > a bold statement would require you to prove your case. Not the other way > around.

He tweets about this stuff frequently. Those tweets are well covered in the press. So yes, it is well known.

[1] [http://www.businessinsider.com/donald-trump-conspiracy- theor...](http://www.businessinsider.com/donald-trump-conspiracy- theories-2016-5)

</comment></comment></comment></comment><comment><USER9> First, this is somewhat ambitious...

Second, what's the purpose of this? I can imagine it'll be quite useful to BBG properties like Voice of America, RadioFreeEurope and generally US government PR/propaganda, but how am I supposed to not worry that this will be used for censorship via US-based companies and some future law combating "fake news" and/or "hate speech"?

<comment><USER10> 1\. You got to start somewhere.

2\. Data is valuable.

3\. You can't. As you built more capabilities to process the data it becomes more valuable. Incidentally that is why I think Facebook is so valuable. Cambridge Analytica managed to affect U.S. elections with a small subset of this data.

<comment><USER11> > Cambridge Analytica managed to affect U.S. elections with a small subset of > this data.

Is this an accepted fact now? I know they tried but is there hard proof that without them it would have been a different outcome?

<comment><USER10> I am pretty sure that they tried and had some effect. It is hard to estimate the magnitude of the effect and probably impossible to prove if they managed to sway the elections.

<comment><USER12> I am as incensed over Cambridge Analytica's effort to microtarget, as I was over OFA's similar effort, using similar data from similar sources ... though ... Cambridge's source was an allegedly dishonest broker from what has been reported, and OFA went to the source and got assistance.

The headline isn't and shouldn't be that Cambridge impacted the election. This is obviously not true. There are other similar claims about other entities impacting the election with positively miniscule spends on adverts that are even less true than this, but they seem to be taken as gospel as being true by some.

The headline should be that we all collectively give FB, Twitter, etc. as much information as we wish, are encouraged to provide more, and thus increasing the value of us as the commodity being sold.

I resisted FB for many years, until I saw it could be used as an communication system for my family (who were not responding to emails/calls). It has some value to me there.

But the sheer scale of the humint gathering, the analytics they are putting in place, boggles the mind.

Cambridge used a bad data broker, and did exactly what OFA did 4 years earlier. Mebbe we should focus our anger on this, and demand no microtargeting using socially derived data for elections. I didn't see anyone protesting that in 2012. Why now in 2016?

That's part of an important question to answer ... as we cannot excuse violations of privacy when it goes in a direction we like, versus a direction we don't.

<comment><USER13> > Mebbe we should focus our anger on this, and demand no microtargeting using > socially derived data for elections

Just one out of the many links for the lazy, written just after the 2012 elections: "How Data and Micro-Targeting Won the 2012 Election for Obama - Antony Young-Mindshare North America" ([https://www.mediavillage.com/article/how-data-and-micro- targ...](https://www.mediavillage.com/article/how-data-and-micro-targeting- won-the-2012-election-for-obama-antony-young-mindshare-north-america/)) .

Reading it now is just, I don't know how to say it because English is not my mother tongue, but maybe ghoul-y is the word? That feeling when you watch a series-B horror movie and you can see the monster is in the house, is just in the room next to the victim, but you can't tell the victim because, well, you have no psych powers. Just copy-pasting some of the paragraphs from that article (which I had found after a quick google search) shows that we should have known about this monster since at least (now) 6 years, we should have seen that it was in the room just next to us, but we did nothing, we only made it worse:

> How did Obama win? (...) At the heart of these two strategies, was micro- > targeting.

> Micro-targeting is the ability to dissect in this case, the voter population > in to narrow segments and customize messaging to them, both in on-the-ground > activities and in the media. (...) But it was the sophistication and the > scale of how they executed this strategy that in the end, proved the knock- > out punch for the Democrats.

and especially

> The Obama camp in preparing for this election, established a huge Analytics > group that comprised of behavioral scientists, data technologists and > mathematicians. They worked tirelessly to gather and interpret data to > inform every part of the campaign. They built up a voter file that included > voter history, demographic profiles, but also collected numerous other data > points around interests … for example, did they give to charitable > organizations or which magazines did they read to help them better > understand who they were and better identify the group of 'persuadables' to > target.

and

> That data was able to be drilled down to zip codes, individual households > and in many cases individuals within those households.

and then it gets WTF-y (pardon my French):

> Volunteers canvassing door to door or calling constituents were able to > access these profiles via an app accessed on an iPad, iPhone or Android > mobile device to provide an instant transcript to help them steer their > conversations. They were also able to input new data from their conversation > back into the database real time.

> The profiles informed their direct and email fundraising efforts. They used > issues such Obama's support for gay marriage or Romney's missteps in his > portrayal of women to directly target more liberal and professional women on > their database, with messages that "Obama is for women," using that > opportunity to solicit contributions to his campaign

</comment></comment></comment></comment></comment></comment><comment><USER14> The article states that the reason for them doing this is to help combat foreign influence in elections. Would having access to this information help track trends in real time and investigate who is doing the influencing? What else could they do to counteract foreign influence?

</comment><comment><USER15> Why make a new database when they could just use Cision? Does government not already use that?

</comment><comment><USER16> How does apply to such contract?

Is it available to non-US companies?</comment>


Create beautiful and fun charts for your pitch-decks - <AUTHOR> http://www.chartify.io <comment><AUTHOR> Posted previously by mistake</comment>


28 percent of consumers use CBD products daily or as needed - <AUTHOR> https://www.theshelbyreport.com/2019/09/11/acosta-consumers-cbd-products/ <comment><USER2> >Millenial, Gen X, Baby Boomers

I wish they would just put in the actual age groups instead of these buzzwords.</comment>


Don't put your iPhone next to your head - <AUTHOR> http://alexbogusky.posterous.com/dont-put-your-iphone-next-to-your-head

<comment><USER2> Gimme a break. Non-ionizing radiation is non-ionizing. You might as well run in fear from incandescent light-bulbs.

<comment><USER3> Your microwave pumps out quite a bit of non-ionizing radiation.

<comment><USER2> And my phone doesn't pump out near enough energy to scare any sane person. Convert it _all_ to thermal and it's still nothing to worry about in the slightest.

</comment></comment></comment><comment><USER4> This is fairly simply explained: * There is one unit of measurement, SAR * There are two maximum permissible values; one for the US, one for the EU * Apple has chosen the higher of the two so they can make a better phone (more power) * They get away with going over the US legal limit by recommending you hold it further away than normal

It should be noted that not only are the max SAR values different for the EU and US but they are measured differently so can't really be compared directly.

</comment><comment><USER5> As far as I know radiation is not a problem and never was, I always heard that the problem was warming.

</comment><comment><USER6> "keep the phone 5/8" away from your body" they are talking about don't keep it in your pocket. Brief exposure next to your head while talking should not be a big problem. Actually I am very much concerned about mobile phone radiation, but I do think it's not actually going to cause cancer with modern handsets. The old analog phones were a different story. Don't talk on it too long!

<comment><USER7> How would analog phones cause cancer?</comment></comment>


Ask HN: I made a cool OCR based desktop app. Possible to commercialize? - <AUTHOR> Dear HN,
I recently worked in my spare time to develop something for the fun of it – A desktop software that can monitor the current activity on a given machine for all the web browsers, including incognito modes.
Basically, the software continuously runs silently in the background, uses screencap, image processing and OCR to resolve what is being accessed, hence it can work on all browsers (and potentially on anything else). The CPU usage is quite negligible due to series of optimizations. It currently works for Linux, I am working on a windows version.
I am not sure if there is a commercial potential to it, and if so, how do I go about realizing it? Can you think of anything in your field where something like this could be useful?
Any help would be much much appreciated. Thank you! :) <comment><USER2> If it only handles web browsers currently then I think it will be a hard sell. The use I see of this would be in settings that companies don't trust their employees (call center monitoring comes to mind). That being said, they would most likely be tracking HTTP traffic already so they would be able to tell what sites the employees were visiting. If you could parse out other applications I could see it being a hit.

<comment><AUTHOR> Thanks! I can parse any applications really since it reads the data from the display buffer. Web browsers was just an example, it is application agnostic at the core.

> If you could parse out other applications I could see it being a hit.

Could you elaborate?

<comment><USER2> The market I see it for is monitoring workers and by using this you would be able to get an idea of what people are working on/doing

</comment></comment></comment><comment><USER3> Something like Prey comes to mind:

[https://www.preyproject.com/](https://www.preyproject.com/)

<comment><USER4> That seems a little different.

</comment></comment><comment><USER5> Could be useful for a headless computer system, to relay the information to someone working on it via terminal.</comment>


Ask HN: How many of you are working on an iPad-optimized web app? - <AUTHOR>

If the iPad isn't a flop and it does take off, a lot of people will be using it as their main internet device. So, you don't necessarily have to go through Apple's closed app store ecosystem when you have the internet available.
What I'm trying to say is that there is potentially a bunch of success to be made by creating browser-based games/apps/novelties for the iPad crowd (web-based fart apps, anyone?).
Are any of you are working on such projects in anticipation of this? <comment><USER2> I think the issue with webapp fart apps is they'll be dependent entirely on ads. What fueled the novelty apps for iPhone was the fact that you got paid first through the app store.</comment>


Tools to get started with responsive web design - <AUTHOR> http://usersnap.com/blog/6-tools-to-get-started-with-responsive-web-design/

<comment><USER2> how there can be no Zurb Foundation on the list?

[http://foundation.zurb.com/](http://foundation.zurb.com/)

<comment><USER3> Because it's a puff piece for Usersnap's feedback service. Bourbon, Inuit, and Compass would probably be worth mentioning as well. Admittedly geo-bootstrap was new to me, so thanks for that :) (Rather, pass the eye drops!)

<comment><USER4> For anyone else wondering, links plus taglines

[http://bourbon.io/](http://bourbon.io/) A simple and lightweight mixin library for Sass

[http://inuitcss.com/](http://inuitcss.com/) a powerful, scalable, Sass-based, BEM, OOCSS framework

[http://compass-style.org/](http://compass-style.org/) Compass is an open- source CSS Authoring Framework

</comment></comment></comment><comment><USER5> Been playing with frameless[1] which seems like a nice approach but I'm not really sure how to make it responsive. Anyone had some success?

[1] [http://framelessgrid.com/](http://framelessgrid.com/)

</comment><comment><USER6> I'm still waiting for some bold soul to come forward and tell us that tables are the way to go instead of wasting hours upon hours on half-assed CSS imitations of tabular goodness.

Fuck semantics!

</comment><comment><USER7> Am I doing responsive design wrong? I've tried three times to make responsive designs for three different website types and they all seem to work fine but I can never get pixel-perfect designs done right.

It seems mediocre for both desktop and mobile, instead of just doing a great design for desktop. What am I missing here? I would love some pointers. Should I just forget about pixel-perfect designs when building responsive websites?

<comment><USER8> There is going to be some aspects of the design that can't be pixel perfect when it comes to a fully responsive site. This is because of the use of % based width to make the grid fluid.

If you're looking for pixel-perfect versions you're best off working with breakpoints and keeping the design rigid up until each breakpoint.

It's more work, but if you really want/need pixel-perfection then it's really the only way to go.

</comment></comment><comment><AUTHOR> Hi all, we've collected your additional tips for a new post on responsive design. Thanks again for your input! [http://usersnap.com/blog/responsive-web- design-tips-from-the...](http://usersnap.com/blog/responsive-web-design-tips- from-the-community/)

</comment><comment><USER9> [http://www.responsivewebcss.com/](http://www.responsivewebcss.com/) for custom responsive layouts</comment>


Free Start-Up Tool Kit (legal docs & forms) - <AUTHOR> http://www.orrick.com/practices/corporate/emergingCompanies/startup/index.asp <comment><USER2> _Browser Compatibility: IE6+_

Are you sure HN is the target audience for this?</comment>


Help Kickstart a Hackerspace in Iraq - 2 days to go - <AUTHOR> http://www.kickstarter.com/projects/bilal/baghdad-community-hackerspace-workshops#top Full story here: http://news.ycombinator.com/item?id=4528669 <comment><USER2> Arduino for IED control?</comment>


NRA blames media, music and video games for culture of violence - <AUTHOR> http://nbcpolitics.nbcnews.com/_news/2012/12/21/16069537-nra-blames-media-music-and-more-for-culture-of-violence

<comment><USER2> So then we could have some items that could be banned in virtual worlds that were allowed in the real world. And other items that could be banned in the real world but that were allowed in the virtual world.</comment>


Princeton eliminates GRE test requirement for 14 graduate programs - <AUTHOR> https://www.princeton.edu/news/2019/09/17/princeton-eliminates-gre-test-requirement-14-graduate-programs <comment><USER2> Some universities in the UK are also lowering requirements to "increase diversity".

This is a terrible idea.

The gap is plugged by investing in primary and secondary education, it's too late at university entrance.</comment>


OpenNMT: Open-Source Neural Machine Translation with Torch Mathematical Toolkit - <AUTHOR> https://github.com/OpenNMT/OpenNMT <comment><USER2> Hi all, I'm one of the original authors of OpenNMT and an nlp prof, always nice to see it trending :). I work with Hugging Face ([https://huggingface.co/](https://huggingface.co/)) now, we do similar things for NLP generally as well as supporting NMT applications.

Main Versions (supported by folks at systran): [https://github.com/OpenNMT/OpenNMT-tf](https://github.com/OpenNMT/OpenNMT-tf) [https://github.com/opennmt/opennmt-py](https://github.com/opennmt/opennmt-py)

Happy to answer any questions about NLP, neural models, open-source ML.

<comment><USER3> I noticed that your swift libraries will be ready so that refined attention based models can be put on device for iOS . Will you also support android also ?

</comment></comment><comment><USER4> Looks cool, but it hasn't been updated in a bit and as they note, the Torch framework is no longer maintained. There is a PyTorch alternative that appears more active: [https://github.com/OpenNMT/OpenNMT- py](https://github.com/OpenNMT/OpenNMT-py).

</comment><comment><USER5> As someone who has work with all three NLP toolkit: huggingface, openmt-py and fairseq. I always have trouble juggling through the heavy abstraction of openmt-py.

For example in openmt-py you need to write fields, reader and raw datasets before you even load into their complex dataset class. Each item is heavily abstracted through several layers of classes. I understand this improve code reuse, but introduce a huge steep curve for newcomer.

Huggingface approach on the other hand is slightly more "messy" [2] but easier to understand and add your own tweak.

[1] [https://github.com/OpenNMT/OpenNMT- py/blob/master/onmt/bin/p...](https://github.com/OpenNMT/OpenNMT- py/blob/master/onmt/bin/preprocess.py#L296)

[2] [https://github.com/huggingface/transformers/tree/master/src/...](https://github.com/huggingface/transformers/tree/master/src/transformers)

</comment><comment><USER6> There are many high-performing machine translation toolkits that use PyTorch these days:

\- OpenNMT-py (OpenNMT, but Python!)

\- fairseq

\- JoeyNMT

In addition, you can also try

\- tensor2tensor (Tensorflow)

\- Sockeye (MXNet / Gluon)

<comment><USER7> Are any of these any good at JP/EN? Google translate is a big thorn in my privacy behind.

<comment><USER6> You may be lucky - people from NTT have published a model based on JParaCrawl - a large JP/EN parallel corpus, which can be used together with fairseq

[http://www.kecl.ntt.co.jp/icl/lirg/jparacrawl/](http://www.kecl.ntt.co.jp/icl/lirg/jparacrawl/)

</comment></comment></comment><comment><USER8> This is much more used, it's based on FAIRSeq Transformer: [https://github.com/modernmt/modernmt](https://github.com/modernmt/modernmt). Plus, it's a publicly funded project

</comment><comment><USER9> How many sentence examples do you need to train one of these?

How much compute?</comment>


What Swift Tells Use About Programming Language Trends - <AUTHOR> http://www.naildrivin5.com/blog/2014/06/04/what-swift-tells-use-about-programming-language-trends.html

<comment><USER2> > Swift's type system is best described as "way better than Java's", or > perhaps "far more comprehensible than Scala's"

I love Scala's type system, so I'm looking to seeing if Swift's really is better. Any type system is better than none at all - probably why most javascript-heavy apps become nightmares when they get to be > 1000 LOC.

<comment><USER3> _" Any type system is better than none at all"_

For tiny things, I profoundly disagree. A great type system is still (IMO) better than none at all, but there are plenty of type systems that get in the way more than they can be pressed into helping _especially_ when things are tiny. When things are large, it's there are probably still some pathologically unhelpful type systems, but there's generally more leverage to be had...

<comment><USER2> For tiny things, sure. But tiny things tend to grow over time

<comment><USER3> Yes. But replacing the entirety of something tiny shouldn't be hard. One just has to _do_ it, which involves 1) knowing to, and 2) following through.

Of course, best case is an awesome type system and libraries that suit your problem.

</comment></comment></comment></comment><comment><USER4> Having named parameters with different public than internal names is a brilliant idea, but I wonder how often it'll be used in practice. If it's used a lot, it might indicate that those parameters are badly named to begin with :)</comment>


Thomas Jefferson Lies: No Evidence He Fathered Children with Sally Hemings - <AUTHOR> https://prosperopedia.com/lies-about-thomas-jefferson-his-character-his-purpose/ <comment><USER2> are you fucking kidding me with this?</comment>


US F-22 fighter jets intercept Russian bombers near Alaska - <AUTHOR> https://lite.cnn.io/en/article/h_1dfe084f2e9c151eb2f95326e210e03b <comment><USER2> Is there more to this story because ...

"A US official previously told CNN that the military sees these flights as routine and said they pose no concern."

<comment><USER3> That's pretty much all there is to it. You'll read this story about Russian bombers being spotted near Alaska every few months. I'm not sure we scramble fighter jets every time they do.

In other words: it's nothing to worry about. At least not in the short term.

<comment><USER4> > I'm not sure we scramble fighter jets every time they do.

I thought they did, since scrambling the jets demonstrates to the Russians that the US's air defense network is tight. It also helps keep the pilots from getting lax. The Russians do the same thing with the US files near their airspace.

<comment><USER2> They expect to be intercepted. It's the _time of response_ that is being tested.

<comment><USER5> It's pretty much a given that they'll be intercepted before they reach legal Alaskan airspace, and a dead certainty that they would never manage to reach the contiguous United States.

However, I've been told by people in a position to know that the actual game is to attempt to intercept the Russian planes before they get within cruise missile range of Anchorage.

The USAF doesn't always manage to do that.

<comment><USER2> Neat! (and scary) thanks for sharing.

</comment></comment></comment></comment></comment></comment><comment><USER6> They scrambled jets probably because they saw 2 Su-35's flanking the bombers which is unusual.

<comment><USER7> FLANKERs flanking!

ASCC reporting names had occasional triumphs like that but often they were blocked and had to pick more mundane names. The original Tu-22 was BEAUTY but became BLINDER to sound less appreciative. MIG-15 went from FALCON to FAGOT likewise.

</comment></comment><comment><USER8> "A US official previously told CNN that the military sees these flights as routine and said they pose no concern."

</comment><comment><USER9> Russian bomber runs near Alaska have been ongoing since the Cold War

<comment><USER5> True enough. The number of incidents went way down during the period between the fall of the Soviet Union and the rise of Putin, though.

Since Putin has been in power, the number of incidents has jumped back up to near Cold War levels.</comment></comment>


Fox host says he 'hasn't washed hands in 10 years' - <AUTHOR> https://www.bbc.com/news/world-us-canada-47201923 <comment><USER2> > Speaking on Fox and Friends, Hegseth said the infectious micro-organisms did > not exist because they could not be seen with the naked eye.

Okay then

<comment><USER3> As he clarified later, that was a joke.

</comment></comment><comment><USER4> I stand with Trump on this one. Shaking hands is a curse - similarly the European cheek kiss. I look forward to the day when we can get some societal momentum going and move towards a slight bow like the Japanese.

<comment><USER5> via George Carlin:

[https://www.businessinsider.com/heres-proof-that-being- too-c...](https://www.businessinsider.com/heres-proof-that-being-too-clean-is- actually-harming-our-kids-2015-6)

> Purell and hand washing may make hospitals safer, but those oh-so-helpful > clinical rituals may backfire in everyday life. [..] "Encouraging kids to > play outside is wonderful," Price tells Business Insider. "But even that may > be too late if you are already 'sensitized.'"</comment></comment>


Yahoo is for sale; bidders line up; Marissa Mayer is toast - <AUTHOR> http://money.cnn.com/2016/04/11/technology/yahoo-sale-marissa-mayer/index.html <comment><USER2> I hate these BS articles say Marissa Mayer is "toast". If I had 1/4th of her golden parachute my family and I wouldn't have to work another day of our lives.

</comment><comment><USER3> Fact is, regardless of her performance, she is now in the executive club, and once you're a member, it's hard to get kicked out.

The biggest thing, in my opinion, to hurt her future career is fighting the large stakeholders on the sale. Showing a willingness to play ball with stakeholders is a positive sign for a future CEO position.

But give it a few years and all investors will remember is that Starboard made a quick 50% (or whatever) on Yahoo and she'll be remembered as "shareholder friendly" for "leading" the sale (a great badge to have if you're in the market for a CEO job).

<comment><USER4> fight the large stakeholders ... as in resist the selling?

she would wanna do that because she might think she can still make Yahoo recover, and if Yahoo is sold, it'll give the impression that she failed as a CEO?

Just trying to understand the whole thing.

<comment><USER3> Yes, resist in selling. And yes, she doesn't want her legacy to be Yahoo's value nosediving under her watch (whether or not it was her fault).

I'm not saying she's wrong in resisting, only that resisting is a "neg" when it comes to getting future CEO jobs. The tanking value can be explained away ("the momentum was insurmountable", etc.), but resisting stakeholders too strongly cannot.

</comment></comment></comment><comment><USER5> Can't stand the cheap shots from reports about others, mostly what they would consider easy targets.

Really, what has this reporter contributed to society? Digging up trash on someone or making some up. Great job.

Mayer, tasked with the difficult job of trying to resurrect a company well into it's decline. Probably had to make a lot of very difficult decisions along the way. And this reporter decides to take a public cheap shot when he has never in his life had the weight on his shoulders Mayer has. Not to mention constant press attacks against her person. Getting tired of press slander.

Classy.

</comment><comment><USER2> "If Mayer is fired as a result of a sale, she could get a golden parachute exit package worth about $37 million. If Yahoo isn't sold, and she's given the boot, she would take home about $12.5 million."

This is bullshit--wtf has Marissa Mayer done?!?

</comment><comment><USER6> So is it now high times to move my @yahoo.com mail addresses away? I was always thinking that at least Yahoo Mail would live for the foreseeable future, but this makes me nervous.

</comment><comment><USER7> Can anyone around in the late 90s give perspective on how big and influential Yahoo was? Article says they were worth $255B in 2000.

<comment><USER8> Between the time AOL was "the Internet" and the time Google was "The Internet", it was Yahoo.

They introduced webmail to the masses, they pushed user-generated content into the masses via their purchase of geocities. Yahoo Groups was the replacement of usenet as more control was needed for community management.

As a free lancer at the time, every other idiot idea I was approached with was "can you build me a site like Yahoo, but for _____" . Usually the blank was porn or real estate.

I think another thing they are underappreciated for is the industrialization and scaling of placing web ads via ad networks.

As with many big leaders, they weren't the inventor of many of these things -- they often purchased a smaller company or copied a first mover, but brought the idea to "prime time".

</comment></comment><comment><USER9> It was always an asset sale play.</comment>


Stop Using Objects as Hash Maps in JavaScript - <AUTHOR> https://medium.com/better-programming/stop-using-objects-as-hash-maps-in-javascript-9a272e85f6a8 <comment><USER2> He's advocating using Map - "new Map()" - there are some performance benefits.

mdn docs: [https://developer.mozilla.org/en- US/docs/Web/JavaScript/Refe...](https://developer.mozilla.org/en- US/docs/Web/JavaScript/Reference/Global_Objects/Map)</comment>


Obscene porn rules relaxed in England and Wales - <AUTHOR> https://www.bbc.com/news/technology-47069414 <comment><USER2> What I don't understand is that I can go to the cinema and watch the latest action film, and see potentially 100s of people getting killed and maimed (not to mention theft, speeding, etc, etc), and that's fine.

But if I want to watch something that's perfectly legal for 2 consenting 16 year olds to actually do in their own bedroom, that's illegal.

I understand a thing being illegal, but the depiction of the thing being legal. The opposite makes no sense.</comment>