Tracking Phones, Google Is a Dragnet for the Police - <AUTHOR> https://www.nytimes.com/interactive/2019/04/13/us/google-location-tracking-police.html <comment><USER3> I turned off almost all tracking in Android a while ago, but never scanned the data it collected. I recently looked at what data was associated with my Google account, and there I saw: every voice command I ever issued my phone, and when I used what app. I could see at 9:30am I opened my camera app. I can see I viewed a notification at 9:45am. And so on. I deleted it all, but my guess is it probably still lives somewhere in Google.

I knew they tracked search. I knew they would use my voice usage to make it better. I didn't realize how pathological they were in tracking literally everything I did with my phone and tying it to my account, down to what apps I opened and when. It's creepy as hell.

It really made me want to just exit this whole smartphone shitfest, because I have to assume they're still tracking all this data, just not making it visible. Maybe Apple is better, maybe not. The problem is I can't know for sure, and if they lie - what could I do about it anyways?

<comment><USER4> In addition to this, if the data exists, at some point in the future it will be compromised. The only way to avoid this is to not collect it.

And to anyone who says "I have nothing to hide" — imagine your worst enemy having all this information about you easily searchable with the intention to weaponize it for their purpose.

<comment><USER5> > And to anyone who says "I have nothing to hide"

To anyone saying that, they need to stop quoting Nazi propaganda. Term is coined by (but not originating from) Goebbels.

Note: The origin is from a fictional dystopia.

<comment><USER4> Thank you. A great way to address the sentiment.

<comment><USER5> I mean I get why people say it. But we have to also be honest with ourselves. If it is something (strongly) pushed by societies that we utterly despise (be the Nazis, the dystopian writing of Sinclair (origin), or Voldemort's puppet state), it probably doesn't align with the beliefs of a free society.

The phrase is too frequently used by societies that we consider to not be free, being pervasive enough that a single use in literature would tell you that the characters live in an oppressive regime. Yet somehow we can make that connection but don't make it when actual politicians and citizens repeat it.

Personally I feel sickened that the phrase is so pervasive in our society (goes beyond the US). Just as I'd be if people were constantly saying "Work will set you free."

</comment></comment></comment></comment></comment><comment><USER6> Even without Google or Apple, they police have the cell service providers. In the case of the Austin bomber from a year ago[0], police got cell tower records from the multiple bombings and figured out who was at all the locations. Cell phones are little trackers unless you turn them off or don't carry one.

[0] [https://www.google.com/amp/s/www.nbcnews.com/news/amp/ncna85...](https://www.google.com/amp/s/www.nbcnews.com/news/amp/ncna858791)

<comment><USER7> Reading that article reminds me of a rather prophetically-accurate movie starring Will Smith and Gene Hackman "Emeny of the State"[0]. Granted, for a film that came out in 1998 it probably wasn't too hard to guess where things were headed w/rt surveillance compared to how seemingly prescient writings from the likes of Orwell and Bradbury were for their respective times.

What stands out to me about the movie (because I went and fished out my DVD and decided to watch it this fine afternoon) was just _how detailed_ David Marconi was in his depiction of brotherly tracking and surveillance.

[0] [https://en.wikipedia.org/wiki/Enemy_of_the_State_(film)](https://en.wikipedia.org/wiki/Enemy_of_the_State_\(film\))

Edit: attribution for the plot goes to writer David Marconi, I've fixed this for any fellow movie geeks who also care about such things ;)

<comment><USER8> Hackman was also in another movie about spying and paranoia - <USER2> Conversation. Great movie. I know it's not about nation states spying but wanted to add that here

<comment><USER7> Oh? Thanks for the recommendation, I'm a big fan of Hackman's acting and spy movies especially-lately, so I'll definitely be looking this up. Cheers

<comment><USER9> I hate to be this off topic, but also 'Heist' is a great movie which features a lot of social engineering and exploitation tactics to drive the plot.

<comment><USER10> There are 2 films with this title, from 2001 and 2015. [https://en.wikipedia.org/wiki/Heist_(2001_film)](https://en.wikipedia.org/wiki/Heist_\(2001_film\)) [https://en.wikipedia.org/wiki/Heist_(2015_film)](https://en.wikipedia.org/wiki/Heist_\(2015_film\)) Both have stellar casts.

<comment><USER11> 2001 had a much higher acclaimed script and was more appreciated by viewers

</comment></comment></comment></comment></comment></comment></comment><comment><USER12> The article describes a case where an innocent man had to spend a week in jail. Eventually, he was released and the presumed actual perpetrator was caught. The lead seemed to come from the location data, so it wasn't useless at least.

But the so called justice system says that it got it right here. The innocent man lost his job when he couldn't work for a week. Depending on his situation he could miss rent and be evicted too.

Why do we have a system that says justice was served? It's cruel and unfair.

This dragnet police tactic will scoop up more bystanders and probably convict more than a few innocents as well. I like the timeline feature- it has been genuinely helpful for remembering when I did things months ago. The tie in with photos is also a fun way to remember trips. It's sad that the cost of these features is to roll the dice on getting arrested because a crime was committed nearby.

<comment><USER13> > _Why do we have a system that says justice was served?_

Suggest specific improvements and call them into your representatives. The closer you can make your proposals to a bill, the more likely it is that the problem becomes an issue.

In this case, I'd argue we need publicly-subsidised attorneys for wrongful arrest. It should also be unlawful to dismiss an employee because they were arrested and never indicted. Giving people the right to notify employers, upon arrest, barring a specific request by the police (approved by a court), would also be prudent.

<comment><USER14> > It should also be unlawful to dismiss an employee because they were arrested > and never indicted.

I disagree. The cost of bad policing shouldn't be paid for by businesses. The police should bear the consequences, not have yet another victim (some business) to burden with more punishment.

<comment><USER15> > bad policing

But arresting someone reasonably suspected of some crime isn't bad policing, even if they are later found to be innocent. That is why arrest and trial are separate.

<comment><USER14> Let's agree to disagree. I think that detaining an innocent person against their will is bad policing.

<comment><USER15> But how could it be avoided? The police don't operate on 'guilty' and 'innocent', but on 'suspect' \- even if they do everything right, they'll occasionally arrest someone that will later turn out to be innocent. If they're responding to an emergency, they simply don't have time to determine guilt with much accuracy, and are just focusing on protecting possible victims. And if they're arresting someone being prosecuted for some crime, well it's unavoidable that occasionally someone won't be found guilty for what they stood trial for - that's the whole point of a trial.

However, I agree that if that should happen, the detained should be compensated for the harm they suffered, even if the police (and prosecutors!) acted reasonably.

I should clarify that I don't mean to imply the US police and public prosecutors meet these reasonablenes criteria - from what I hear, the deck is stacked heavily against anyone being prosecuted for a felony, guilty or not.

<comment><USER16> What about if the police had a dedicated fund for arrests. For the employer - they aren't allowed to sack the employee, but administrative costs of finding temp staff can be claimed from the fund. For the arrested, all cost of living expenses are covered until trial, but should they be found guilty, this becomes a CPI indexed, interest free debt. Any pre-conviction incarceration costs where accused is found innocent are also paid by the fund. This seems to grab most of the data in one account. But does also seem to add a big incentive to find people guilty...

</comment></comment></comment></comment></comment></comment></comment><comment><USER17> This isn't the best case to use as an example of police overreach and information dragnets. Yes, they arrested the wrong guy and held him for a week, but the right guy was using the wrong guy's car. I realize they initially identified him--at least in part--via the Google-provided information, but the reason they held him for a week is because it was _his car_ that was used to commit the crime. At that point, it was absolutely reasonable _and correct_ to assume that he was the perpetrator. If that hadn't been the case, they probably would have questioned him and never even arrested him.

I'm not defending Google's information collection or the use of dragnets in general, but this is absolutely the wrong case to use as an example of how things can go wrong. Things did not go wrong here. This was good police work, and ultimately the arrest was not off-base, and led directly to the real perpetrator.

Find a better example if you want to drum up fear about information abuse.

<comment><USER18> It says in the story in the surveillance they can't make out the plates, so they don't know for sure it was his car.

</comment></comment><comment><USER19> > _Though Google's data cache is enormous, it doesn't sweep up every phone, > said Mr. Edens, the California intelligence analyst. And even if a location > is recorded every few minutes, that may not coincide with a shooting or an > assault._

> _But despite the drawbacks, detectives noted how precise the data was and > how it was collected even when people weren't making calls or using apps — > both improvements over tracking that relies on cell towers._

So if you use Android, there's absolutely no way to turn this type of tracking off? What exactly are they using? Anyone know? This doesn't seem like the IEMI cell tower tracking that carriers do.

And according to this sentence:

> _Apple said it did not have the ability to perform those searches._

It appears that if you use iPhone and don't use Google's apps (Google Maps is the main culprit here?), Apple doesn't have a way of identifying your data and your data won't appear in Google's Sensorvault.. which appears to be massive:

> _Sensorvault, according to Google employees, includes detailed location > records involving at least hundreds of millions of devices worldwide and > dating back nearly a decade._

<comment><USER20> You can turn off the collection of location data for Google. [1] You can also delete old location data. Google is saying that they won't collect location data unless you opt-in but I'd assume most people just click on "Okay" once when asked to. Of course nobody really knows if Google honors your settings.

[1] - [https://support.google.com/accounts/answer/3118687?hl=en](https://support.google.com/accounts/answer/3118687?hl=en)

<comment><USER21> >You can turn off the collection of location data for Google.

If you have an android phone, please try turning off the location service and see what happens. The sheer number of dark patterns google uses to get you to turn it back on is illuminating.

I remember in the early versions of android, you could turn on/off the gps from the lock screen. Then one day it went away and was only available once the phone was unlocked. Now it's hidden inside the settings app. The cynic in me guesses that a future update will turn that option off as well.

<comment><USER22> I don't think that's really the case.

I can unlock my phone (probably already unlocked anyways), swipe down the status bar and tap an icon to disable location services.

The first time I get a pop up that apps won't be able to use my location and that's it. It won't ask again, and it's a matter of 2 seconds.

<comment><USER21> That's the icon I was talking about. It was present on my Nexus 5 with Android 6 (marshmallow), but disappeared when I upgraded to android 7 (nougat) and there's no way I can see to bring it back. It's possible that other carriers have it enabled, but google's flagship phones have it disabled.

</comment></comment></comment></comment></comment><comment><USER23> One thing I haven't seen anyone comment on yet was the article's illustration of the technology...

I think it did a good job of hypothetically showing how phone data could be collected in a geofence and explaining the process of narrowing it down and picking a potential subject. Regardless of the merit of this approach, I think NYT did a great job here of illustrating the process in a way that non- technical people could understand.

</comment><comment><USER24> Location data can also be used to help prove your innocence.

It sucks that this innocent person ended up suffering. Hopefully law enforcement will become better at figuring out false positives before arresting someone.

I do like that the gov. doesn't have direct access. Seems to me like the more independent parties required to access the data, the lower the chances of abuse.

<comment><USER25> I'm a little confused here. It turned out that it was his mother's ex- boyfriend, who had taken his car without permission. That explains the car, but how does it explain the location? Did he just happen to also leave close to there and was moving in a similar pattern? Was the phone inside the car?

Really, the issue here was the car, without which they wouldn't have had enough evidence to get the person's information in the first place. Are you not partly responsible to whom you give your car to?

<comment><USER26> If someone steals my car and uses it when committing a crime, I can accept that may well lead to questioning me. But I don't think it justifies keeping me in jail for a week.

<comment><USER25> That's fair, though I'm still unsure how his phone happened to also correlate with the crime.

</comment></comment></comment></comment><comment><USER27> Orwell never guessed that the government could outsource our dystopian nightmare to corporations.

<comment><USER28> He also never guessed that we would eagerly stand in line to spend $1000 to buy our own tracking devices.

<comment><USER29> (Explaining my downvote: you know full well that the devices are not merely that. It's a useless comment.)

</comment></comment></comment><comment><USER30> Great to see a big follow up on the story which was first reported by a local news outlet in North Carolina: [https://www.wral.com/Raleigh-police-search- google-location-h...](https://www.wral.com/Raleigh-police-search-google- location-history/17377435/?smid=nytcore-ios-share)

I remember it being reported the same time as the Cambridge Analytica scandal broke out (literally the same week IIRC) and getting almost no notice, despite being, in my mind, a story with far greater implications about our privacy.

</comment><comment><USER31> The interesting thing is that from the article, it seems to me like the only data these searches are using is location history, so if that one is off, you should be unaffected.

<comment><USER32> I bet you anything that the "turn location history off" switch is just a placebo switch.

All it does is send the data with additional flag saying that the data shouldn't be displayed to the end user.

</comment></comment><comment><USER33> > Months after his release, Mr. Molina was having trouble getting back on his > feet. After being arrested at work, a Macy's warehouse, he lost his job. His > car was impounded for investigation and then repossessed.

/Facepalm

But before I go further on the social commentary, can we confirm that the arrest at work was the reason he lost his job, the week of being in jail being the reason he lost his job, performance due to the arrest being the reason?

</comment><comment><USER34> I find it interesting in the bombing warrant they describe Google as "an email provider". Then follow it with, "The information to be searched...consists of Google location data...". It's not like they looked at the suspects emails. The fact that the police must have thought, "what is Google? Well, I have a gmail account, they're an email provider!".

</comment><comment><USER35> Something I never managed to fully confirm or deny:

I manually disabled all the data collection on my Google account (search and location history). Is Google still tracking my location? Would I still appear in that database? I'm pretty much Google-free at this point except for some spam emails and the need for a google account for Android Play.

</comment><comment><USER36> This is for Google Android phone only? Or Apple too? What if the real perp has an iPhone but Apple doesn't provide that info. Meanwhile an innocent who has an Android phone happens to fit the profile 'enough' for the cops to collar him. Sounds pretty much like a lawsuit in waiting...

<comment><USER37> From the article:

>Investigators who spoke with The New York Times said they had not sent geofence warrants to companies other than Google, and Apple said it did not have the ability to perform those searches.

</comment></comment><comment><USER38> So if someone steals your phone, they can "place" you at a crime scene. Or even if they get physical access long enough to clone the SIM. People already do that to clone phones, to get free calls.

</comment><comment><USER39> Wow, we're edging closer: this + AI Crime Prediction[1] + Profiling[2], and we're basically at Minority Report.

[1] [https://link.springer.com/chapter/10.1007/978-3-642-29047-3_...](https://link.springer.com/chapter/10.1007/978-3-642-29047-3_28)

[2] [https://www.sciencedirect.com/science/article/abs/pii/S09507...](https://www.sciencedirect.com/science/article/abs/pii/S0950705108000610)

<comment><USER40> [https://arxiv.org/pdf/1611.04135v2.pdf](https://arxiv.org/pdf/1611.04135v2.pdf)

</comment></comment><comment><USER41> I'm about to go commit a crime. How do I turn off this feature?

<comment><USER42> If you're going to commit a crime, leave your phone at home so that (1) you can't be linked to the crime scene and (2) there's evidence you may have been somewhere else (at home) at the time.

<comment><USER43> Also make sure your home activities continue as normal such as electricity, water, gas, and internet usage.

And don't use any vehicle with a license plate that can be tracked to you, or the area around your house.

All that effort is better focused on committing legal white collar crimes, via plausible deniability and in person conversations that aren't recorded.

<comment><USER44> > All that effort is better focused on committing legal white collar crimes, > via plausible deniability and in person conversations that aren't recorded.

We've got about 5 minutes before "in person conversations that aren't recorded" are a historical artifact.

</comment></comment></comment></comment><comment><USER45> Why would google keep this data indefinitely? It should be routinely deleted after a month or so.

<comment><USER46> Big difference between what should be and what is in the real world.

</comment></comment><comment><USER47> Ensnaring the innocent is a feature. Cops are happy to have opportunities to prosecute people for other stuff later on, or have someone take a guilty plea even if they didn't do it. It looks good for them. Not to mention fines for missing court dates (to keep your job, or because you don't have transportation).</comment>


PostgreSQL vs. Impala - <AUTHOR> http://dagilmore.com/blog/2014/3/10/olap-postgresql-vs-impala A standoff between PostgreSQL and Impala for OLAP operations <comment><USER2> I'd like to see the code / data so I can try to reproduce these results. If it took them 6 hours to load 25m rows / 10GB with PostgreSQL, they must have screwed it up (deliberately?).

</comment><comment><USER3> A graph with no units on the y-axis (and not even stated clearly in the text) put me completely off reading this article.

<comment><AUTHOR> I thought it was safe to assume that seconds were the unit of choice, but next time i'll be more clear. Thanks for the suggestion

</comment></comment><comment><USER4> Impala, imitating Google's Dremel, is specifically designed for OLAP scenarios with its columnar storage structure and the compression algorithms that go along with it. This is not a fair comparison. Try doing OLTP with Impala and you'll see what I mean.

<comment><AUTHOR> Great point! I mentioned it in the post, did you read it?

"Note that the properties of a relational database are well suited to online- transaction processing (OLTP). Such a system guarantees consistency and availability, and it supports extreme multi-tenancy. However, complex logic over large amounts of data does not perform well"

</comment></comment><comment><USER5> Benchmarks where we're not given the data, code, scripts, etc to reproduce them are not useful.

<comment><AUTHOR> If you look in the citations, you'll see everything you need to reproduce the results!</comment></comment>


How Software Companies Die - <AUTHOR> http://www.netjeff.com/humor/item.cgi?file=DeveloperBees

<comment><AUTHOR> Ok, I know this has been submitted before. What I want to know is how/why/when Orson Scott Card wrote this (if he really did).

Any insight?</comment>


Germany bans managers from calling or emailing staff after work hours - <AUTHOR> http://ibnlive.in.com/news/germany-bans-managers-from-calling-or-emailing-staff-after-work-hours/461070-79.html

<comment><USER2> Misleading title. The german labor ministry, not Germany as a whole, is doing that. Not even other ministries. They follow several major companies (VW was one of the first, AFAIK).

<comment><USER3> So the labor ministry (basically the department of labor for us Americans) is a part of the German government with the power to institute nationwide rules regulating labor, but in this case it's just the ministry that is applying a rule to itself? Is that right?

<comment><USER2> This is really just internals for the ministry, in their role as an employer, yes.

</comment></comment></comment><comment><USER4> I understand the reasoning behind it, but is the e-mail part necessary? I often e-mail people that I know are on vacation for things that aren't time sensitive, mainly to ensure that I don't forget to notify them of something. I would hope that they wouldn't check work e-mail, or at least ignore it. I'd never call them off-hours unless it was an emergency.

E-mail is a type of communication where the receiver can be in control of receipt and response. Should a manager type up an e-mail (if it's after work hours), save it, then write a note (or schedule a delayed send) to send it in the morning? It seems cumbersome and seems like it wouldn't address the core problem, unlike telephone calls.

<comment><USER5> I would hope—I dare not say imagine—that the law would simply not require any response (or even reading it) outside of work hours.

<comment><USER2> There is now law. These are the house rules of a ministry in its role as an employer.

<comment><USER2> Argh, was late yesterday night. "There is no law" would be correct ;).

</comment></comment></comment></comment><comment><USER6> This is why I enjoy doing IT and living in Germany.

At my current employer, the typical US 50h+ weeks would be squashed by the works council.

<comment><USER7> What if your colleagues are in the U.S.? Do you just turn off the phone until 9am the next day?

I'm on the east coast in the U.S. and I have colleagues in Britain, Germany, California, Colorado, and Minneapolis. If we stuck to strict working hours, we'd never be able to communicate in real time!

The guys in Europe sometimes are helping us until 10pm or 11pm which is not a requirement but they're just dedicated and we really appreciate it. By the same token, I'll get on a call at 6am local time, which works for them.

But maybe not everyone has to deal with all these time zones. We're a little crazy.

<comment><USER6> > What if your colleagues are in the U.S.? Do you just turn off the phone > until 9am the next day?

Yes, and I do work a lot with Asia actually.

On the projects that require me not to do it, we have special agreements in place, where people are also compensated for sacrificing their private life in name of the employers profits.

> The guys in Europe sometimes are helping us until 10pm or 11pm which is not > a requirement but they're just dedicated and we really appreciate it. By the > same token, I'll get on a call at 6am local time, which works for them.

Not all companies have works councils, which leads to the following situations:

We have the guys fresh out of university feeling that they will improve their career by working like crazy. Only to discover a few years later that they get to be fired like everyone else on the company.

There are lots of people working as freelancer and getting paid by the hour. Obviously they are their own boss and work as much as they feel like like it.

Not all companies have a works council that actively cares about the fellow employees, in such cases many people don't report back to them unlawful situations due to fear of what their boss might do.

</comment></comment></comment><comment><USER8> Isn't "except in emergencies" just asking for a company to liberally define "emergency"?

<comment><USER2> Most larger companies have time tracking and pay extra hours in such cases. If that happens too often, controlling will definitely like to have a word with you.

I worked for multiple larger corps as a freelancer and they are very strict about "8 hours per day". They did the math and know that if I work 10, they pay 2 hours for the same price, but at less efficiency.

<comment><USER9> FYI, idiomatic English would read, "They did the math," not "They made the math."

<comment><USER2> Yep, it is way beyond idiomatic time in germany ;). Thanks for the correction, you are right ;).

</comment></comment></comment></comment><comment><USER10> Should delete this due to misleading title.

</comment><comment><USER11> Curious that the HN community thinks about this.

Is this such a problem that the some Labor Ministry has to enforce a rule?

Think of this in another context: would people be okay with Olympic Trainers being banned from asking their athletes to train after hours?

<comment><USER12> > Is this such a problem that the some Labor Ministry has to enforce a rule?

Dunno, don't have the data.

Anecdotally: I get called after hours from time to time, but then again I get paid a lot in return. Calling me after work, whatever you want, costs several hundred pounds a go.

My sister, who works a bunch of part time jobs in retail and other minimum wage things get called on after hours as well. And she doesn't get paid for it beyond not being fired. She'd never dare tell one of her managers not to call her after work, because if she loses one of her jobs she's going to have trouble paying her bills.

In my case the conditions in my contract ensure that I only get called if it's important. That's my protection from being constantly exploited. But... my sister doesn't have that - and frankly has no hope of ever having it.

Should it be legal to take that sort of advantage of someone in that weak a bargaining position? We have the concept of undue influence in contract law, and this strikes me as the same _sort_ of thing.

It's like when you have a contract between two companies, the companies are expected to be protected by having a contract that they both understand and have negotiated from positions of relative equality. Whereas, between companies and individuals, the individual is generally expected to be mostly protected by the allowances of consumer protection law.

> would people be okay with Olympic Trainers being banned from asking their > athletes to train after hours?

Well, I would. If the athlete does it of their own free will, then that's fine. But if they're being coerced by a desire not to get fired... well, 'Fuck you, pay me.' springs to mind.

<comment><USER11> > But if they're being coerced by a desire not to get fired... well, 'Fuck > you, pay me.' springs to mind.

Agreed. Exploiting = bad.

</comment></comment></comment><comment><USER7> "Self-exploitation."

Isn't that newspeak for what we used to call hard work?

</comment><comment><USER13> I've never understood this aspect of European culture.

What's a manager ? What are staff ?

Presuming that the state has formalized definitions for these things, what is the purpose ? Why is it assumed that someone is, or has, an employer, and why would we pigeonhole people into extremely narrow (and increasingly irrelevant) social roles ?

<comment><USER14> First, read the article and you'll see that the title is misleading. It concerns only the staff of the German labour ministry. Second, Germany =/= Europe.</comment></comment>


Bitcode (iOS, watchOS) - <AUTHOR> https://developer.apple.com/library/prerelease/watchos/documentation/IDEs/Conceptual/AppDistributionGuide/AppThinning/AppThinning.html#//apple_ref/doc/uid/TP40012582-CH35-SW2

<comment><USER2> In case y'all are curious it would make sense if this is LLVM bitcode: [http://llvm.org/docs/BitCodeFormat.html](http://llvm.org/docs/BitCodeFormat.html)

Seems like a very smart way to keep things binaries up to date without developer intervention -- and possibly even allow re-targeting to different CPU architectures after the fact. That would eliminate the need for something like Rosetta if Apple ends up switching major CPU architectures again some day.

I really think that LLVM is one of the best things to happen to computer science in a long, long time.

<comment><USER3> I remember a letter from some time ago saying that LLVM IR format is private to specific version of LLVM, and is not guaranteed to be compatible with other versions in the future or in the past. Does this announcement mean that is not the case anymore, and LLVM IR is backwards compatible now?

<comment><USER4> LLVM is a great tool, but I've had trouble in the past with version compatibility. I wrote a compiler that used LLVM as a backend (I used LLVM versions 3.4-3.6). The problem was that each minor version of LLVM slightly changed the API. It was things like removing parameters from methods, renaming methods, removing the need for some methods completely, or adding/removing some static-link libraries. If you only wish your tool to be compatible with a single version of LLVM, its not a problem, but attempting to support a selection of minor versions ended up being a pain. These minor versions would come out 3-4 times a year and I would need to find what broke each time, and if there was even an equivalent solution in the new version.

I didn't work on the level of IR, so I didn't come across any problems there, but I wouldn't be surprised if the IR syntax changed slightly across minor versions.

<comment><USER5> I guess you used the C++ API? There's a C language subset available that has way more stability.

</comment></comment></comment></comment><comment><USER6> So Apple is following following the footsteps of IBM, huh?

[http://en.wikipedia.org/wiki/IBM_System_i#Instruction_set](http://en.wikipedia.org/wiki/IBM_System_i#Instruction_set)

<comment><USER7> Everyone is.

I got to understand better the whole concept of having a bytecode format for executables, with JIT/AOT deployment options when I started delving into the old mainframe world.

I used to do AS/400 backups, but never coded for it. So it was quite interesting to discover the all TIMI concepts.

Also other similar environments like the Burroughs B5000.

The old is new again. :)

<comment><USER8> That's true...MS has been doing this for phone and windows store apps (the few that there are) that are written in .Net to improve performance. The get AOT'd from CIL to target binary when uploaded to the store.

I wonder why this isn't bigger in the FOSS world...maybe because the source and toolchain are already available...I don't know, it might be a neat idea to have an IR userland that compiles on install.

</comment></comment></comment><comment><USER9> They seem to be preparing for something in the 2-5 years timeframe, but what?

Least grandiose theory I can come with: two ARM cores in the Watch, one big, one small, with different instruction sets, for active/standby modes.

<comment><USER10> They're preparing for anything. Apple has a dislike for relying heavily on any partner in their DNA, thanks to PowerPC.

<comment><USER11> Not just that. Apple also switched from 68k to PowerPC.

<comment><USER10> True, though nominally the same partner. Motorola was the M in AIM, though yes, IBM did the heavy lifting. (Remember Motorola made a Mac clone? How weird.) And the situation wasn't as dire then.

</comment></comment></comment></comment><comment><USER12> This is going to spell the end of all 3rd party crash reporting tools.

<comment><USER13> I'm not sure I understand what you are implying. How so?

<comment><USER14> Possible issues with symbolicating the crash logs if you don't have the debug symbols as they're generated on Apple's side.

</comment></comment></comment><comment><USER15> I'm honestly surprised that noone has commented on the security implications of this, yet. After all, allowing Apple to recompile your "bitcode" essentially means, that the user can in no way validate that the version he's running is the version the developer published. It would be fairly straightforward to perform MITM attacks on apps this way. (And, sure, Android's APKs are faced with quite the same issue - but AFAIK Google doesn't modify your bytecode (yet?))

<comment><USER16> They could already do that. They sign and encrypt the (plaintext) code segment you submit so they could easily insert a JMP to their own payload at the head of your code any time

<comment><USER17> Why do they encrypt code segment? Signature is essential, of course, but encrypting looks unnecessary.

<comment><USER16> It's their fairplay DRM implementation that is supposed to prevent piracy.

</comment></comment></comment></comment><comment><USER18> If to put Swift on Linux and Bitcode together, I'd take a wild guess that an apple powered PaaS is on its way.

<comment><USER19> They kind of have that already with CloudKit - it's not suitable for all use cases though.

<comment><USER20> They've just announced a major new addition to CloudKit though to basically allow integration into CloudKit via web apps, which seems like a pretty big deal.

</comment></comment></comment><comment><USER21> I'm thinking that Apple sees a new threat to their mobile (profit) dominance: Fully portable Mobile+Desktop OS enabled through Core M, i.e. Windows 10. "Bitcode" is them preparing to unify their OSes just in case Win10 is successful and buyers suddenly want to have one device to rule them all (i.e. MS Continuum). This could very soon be a reality - and Apple seems to be preparing themselves. Smart move [1].

[1] [http://img2.wikia.nocookie.net/__cb20130701185217/jurassicpa...](http://img2.wikia.nocookie.net/__cb20130701185217/jurassicpark/images/e/e3/JP1_VelociraptorCurtain.jpg)

<comment><USER22> My thought is more that they are going the Android route of using an intermediary bytecode, to get both platform independence, but on-device compilation for performance. If they can push hardware that will automatically run faster, that makes it all that much easier to sell new product.

<comment><USER21> Yes, I didn't mean Apple is going the MS route from a technical point of view, just the timing of their platform independence efforts leads me to believe that it has to do with pressure (or the potential thereof) by Microsoft.

</comment></comment></comment><comment><USER23> John Siracusa tweeted a rumor yesterday speculating/hinting at ARM Macs.

[https://twitter.com/siracusa/status/608029277963972608](https://twitter.com/siracusa/status/608029277963972608)

How fast are the fastest ARM chips compared to the lower-end Intel chips? Could we see low-powered Mac Airs with long battery lives?

</comment><comment><USER24> I find it interesting this hasn't gotten as much attention as other announcements. It seems to hand over a great deal of responsibility to Apple, at least in terms of performance. Something some might feel comfortable with or not. I can imagine this lack of control about what instructions will actually run on the hardware might not fair well with some developers?

<comment><USER7> Most likely, however this is already being done in the other mobile platforms.

<comment><USER25> Not really, you can ship native code on Android and, for Java apps, intermediate bytecode is delivered to end-user phones, not compiled in the cloud.

<comment><USER7> Windows Phone 8:

[http://channel9.msdn.com/Shows/Going+Deep/Mani-Ramaswamy- and...](http://channel9.msdn.com/Shows/Going+Deep/Mani-Ramaswamy-and-Peter- Sollich-Inside-Compiler-in-the-Cloud-and-MDIL)

Windows Phone 10:

[http://channel9.msdn.com/Shows/Going+Deep/Inside-NET- Native](http://channel9.msdn.com/Shows/Going+Deep/Inside-NET-Native)

As for Android, having ART on the phone is technicality, given the platform fragmentation Google rather leaves to the OEMs the task of making ART generating the proper code.

</comment></comment></comment></comment><comment><USER26> This will affect crash reporting and symbolication. Presumably Apple strips debug symbols when they compile. Will they make the dsyms (DWARF containing files for stripped mach-o binaries, necessary to symbolicate crash reports) available somehow? If not, third parties (or anyone who chooses to handle their own crash reports directly) are in trouble.

</comment><comment><USER27> So is this just LLVM IR?

<comment><USER28> I'm curious how that works. LLVM bitcode backwards/forwards compatibility is quite poor, from what I've heard. Will they fix some bitcode version to transmit, and have translators on the client/server sides? Have a bunch of different toolchain versions on the server side? Force everyone to resubmit with a newer version if they want to do any changes on the server side?

<comment><USER29> Presumably the backwards/forwards compatibility is poor simply because people don't tend to have these files sitting around, they mostly exist (at the moment) as part of a compilation framework and are tempfiles.

If needed, it wouldn't be too for someone with a few programmers (Apple could spare a few!) to write the proper versioning to upgrade/downgrade the file format as LLVM changes?

</comment></comment></comment><comment><USER8> That's really cool.

I like that idea in general. The other day I was reading about OS/400 on wikipedia. It always used an intermediate bytecode...and because of it they were able to seamlessly (who know how seamlessly) from architecture to architecture.

</comment><comment><USER30> Doesn't it open doors for proprietary LLVM optimisations hidden from others?

</comment><comment> TD-Linux So, is there any actual documentation of this anywhere?

<comment><USER31> [http://llvm.org/docs/BitCodeFormat.html](http://llvm.org/docs/BitCodeFormat.html)

</comment></comment><comment><USER7> Interesting to see Apple is following Microsoft (MDIL, .NET Native) footsteps.

<comment><USER32> Is there any substantial new technology a major company gets that another competing company wont try to match sooon?

<comment><USER7> Yeah, but the funny thing is how Apple's AOT compilation toolchain was being discussed by some Apple fans as the way to go.

Now they turn around and follow what the others are doing.

<comment><USER32> It still is AOT. There's just an intermediary step, which is what you send to Apple, but the code is compiled in its servers, not in the runtime.

It's not like LLVM doesn't have several steps already in its pipelines.

<comment><USER7> I guess you don't know how MDIL and .NET Native work.

<comment><USER32> Not sure where you're getting at.

Like Apple's .NET Native is AOT.

Like Apple's .NET Native compiles to native code in the server.

It's your comment that gave the impression that you thought Apple's new bitcode thing is not AOT and that they follow MS in this not-AOT-ness.

It might not have been what you meant, but it's not very clear from the phrasing:

> _" (...) Apple's AOT compilation toolchain was being discussed by some Apple > fans as the way to go. Now they turn around and follow what the others are > doing"_

This reads like Apple had an AOT compilation toolchain that Apple fans thought it was "the way to go" and now Apple dones't have one (AOT compilation toolchain) anymore following MS lead in this regard.

Whereas what you actually meant was probably that Apple fans thought that Apple's PREVIOUS AOT compilation toolchain was the way to go, but now they've changed course and went for an MS style AOT compilation toolchain.

(it read like you think "Apple's AOT toolchain" was a thing of the past, and not they follow MS which doesn't have AOT).

<comment><USER7> > Whereas what you actually meant was probably that Apple fans thought that > Apple's PREVIOUS AOT compilation toolchain was the way to go, but now > they've changed course and went for an MS style AOT compilation toolchain.

Exactly.

<comment><USER32> Yeah, took me a while to get it can mean that, I think the straightfoward reading is the other one.

<comment><USER7> Well, not native speaker here. :)</comment></comment></comment></comment></comment></comment></comment></comment></comment>


Interactive NBA Shot Charts with R and Shiny - <AUTHOR> http://toddwschneider.com/posts/ballr-interactive-nba-shot-charts-with-r-and-shiny/ <comment><USER2> Nice work. I expect the OP will be hearing from NBA teams at some point. There was a guy who made something very similar a couple of years ago (not in R, but same functionality) and he now works for an NBA team (a friend of mine works on the same analytics team). Of course, he had to bring his side-project with him and take it offline.

<comment><USER3> Kirk Goldsberry? He did these for Grantland and now works with the Spurs.

<comment><USER2> No, Goldsberry was very high profile (did a lot of work for ESPN/Grantland). I'm talking about more of a hacker type who did a Show HN type side-project and got noticed entirely through that.

edit: I found the project - looks like it back online: [http://peterbeshai.com/buckets/app/#/playerView/201935_2015](http://peterbeshai.com/buckets/app/#/playerView/201935_2015)

</comment></comment></comment><comment><USER4> This is why I love R. This works great and the code is super clean.

NBA Notes: I love the fact that the players are sorted by first name and that made no difference. This is the easiest to follow professional sport in the world.

Carmelo Anthony: He started shooting from the right 3pt corner really well. Now 10 years later he is hot from the left corner and not that right polar opposite. Seems like the sides he shot from changed in a pattern. I bet you the scouts were like Anthony can't shoot from the right make him shoot from there and he would practice that side.

</comment><comment><USER5> With the way Curry has been playing some of these charts are going to need to be re-scaled to include beyond the half court line. 35/57 from 28 feet and farther currently (61.4%).

<comment><USER6> To put into perspective how absurd that is...to a first approximation (ignoring rebounds, open opportunities, etc) - Curry's expected value for shooting from 6 or more feet _behind_ the three point line (1.923) is _higher_ than almost any other shot any other player in NBA history could attempt, except perhaps an uncontested dunk. You'd rather Curry attempt one of his super-deep threes than have the best free-throw shooter of all time (Steve Nash) take two free throws (90.43% accuracy, expected value 1.8086 points).

That is just insane.

<comment><USER7> When you put it like that it gives me goosebumps. It is truly a great time to be an NBA fan.

<comment><USER4> It is a great time BUT I miss the drama of the 1980s and early 1990s. At least I don't get the normal "I watch college basketball" when I start talking basketball. I am an avid UConn fan and they don't know college either except the Final 4 tourney polls they are apart of.

</comment></comment></comment></comment><comment><USER8> I've had looked into Shiny apps for my own ggplot2 work, but after seeing the usage in this post, I'll definitely give it another look!

What initially kept me away was the amount of idiosyncratic code required for the server/UI without many tutorials, which made compatibility annoying. Looking at the code in the GitHub, the code still seems pretty difficult. That, and [http://www.shinyapps.io/](http://www.shinyapps.io/) (which the OP is using) is very ambigious in their pricing on how "Active Hours" work, which is a valid concern when a post hits the front page of Hacker News.

<comment><USER9> It's possible to host a Shiny app yourself. This one runs on AWS EC2 inside a docker container: [http://www.statwonk.com/birthday- problem/](http://www.statwonk.com/birthday-problem/)

<comment><USER8> That appears to be the best option for my use cases. Although I'm not sure if that makes pricing worse or better. :P

<comment><USER10> I host two different RNAseq and NGS data exploration shiny apps on a 2GB DO droplet and it works pretty well. Shiny-server is sort of a pain in the ass though, and I agree the documentation sucks

</comment></comment></comment></comment><comment><USER11> Similar but not as featured and fancy with vega:

[http://sandbox.github.io/demos/nba-shot-chart- vega/](http://sandbox.github.io/demos/nba-shot-chart-vega/)

which includes link for one done in python, and Kirk Goldsberry's articles on Grantland.

</comment><comment><USER3> Steph Curry's 2015-16 shot chart is the epitome of sports data analysts insistence over the past few years that three pointers are far more efficient shots than most two point shots. Almost all of Steph's shots this year are either at the basket or behind the three point line.

I guess it just took a generational player, who could shoot not only extremely accurate from distance, but can also fire of a shot quickly as well as create his own space for shots, to fully exploit the extremes of that data.

</comment><comment><USER12> Wait a sec, how does the NBA get the shot data?

It looks like there's positional information in there. Are they collecting this using machine vision?

<comment><USER13> Yes they are, the NBA has cameras mounted in the rafters for this specific purpose

source: [https://www.washingtonpost.com/sports/wizards/nba- analytics-...](https://www.washingtonpost.com/sports/wizards/nba-analytics- movement-includes-placing-six-cameras-in-rafters-at-all-30-team- arenas/2013/10/25/ac9fc826-3d7a-11e3-b0e7-716179a2c2c7_story.html)

company behind the tech: [http://www.stats.com/sportvu/sportvu-basketball- media/](http://www.stats.com/sportvu/sportvu-basketball-media/)</comment></comment>


EBay recruits users in push against sales tax legislation - <AUTHOR> http://www.reuters.com/article/2013/04/21/us-ebay-salestax-idUSBRE93K05K20130421 <comment><USER2> "The legislation includes an exemption for merchants that generate less than $1 million in annual out-of-state revenue."

Tying things to a dollar amount doesn't make much sense in any case.

1 million in sales of electronics (with low margins) is not the same as 1 million in sales of hand knitted sweaters (or pick your example).

What we will see is an entire middle layer develop to help "small" merchants deal with the complexity of collecting sales tax that will inevitably take a cut of the action and add an additional tax.

</comment><comment><USER3> I'd love it if Jeff Bezos sent out an email to all Amazon customers responding to this one.

</comment><comment><USER4> If eBay wants me to lobby on their behalf, they should pay me.

</comment><comment><USER5> That's rich coming from a company that charges 13% commission on sales (10% flat final value fee if you don't rent a 'store' by the month, plus 2.9% Paypal transfer fee, plus sundry other minor fees like the fixed 30c per paypal transaction, insertion fees etc.).

<comment><USER6> Absolutely. Ebay's policy has been to steadily increase fees until they reach a point where too many sellers quit.

The net effect on sellers will be zero in the long term. They will either pay a sales tax or they will pay Ebay's increased fees.

<comment><USER2> "until they reach a point"

With no real competition that's more or less standard operating procedure (price/demand curve?) in many businesses until the customer says "uncle".

By the way sellers (I'm sure you realize this and just made a mistake) of course don't pay sales tax buyers do of course even if sellers paid it would be passed along to buyers.

<comment><USER7> I'm not really strong in micro, but it seems logical that all 3 parties would pay some share, with the highest share being paid by the seller through reduced demand.

Also, has anyone created a sales tax management company? That seems like it would reduce the burden significantly on small businesses.

<comment><USER8> You are right. Whether buyers, sellers, or eBay pay the tax is a function of the price sensitivity (elasticity) of the varying group. See: <http://en.wikipedia.org/wiki/Tax_incidence> This is a little different from the standard model because eBay is a third party.

</comment></comment></comment></comment></comment><comment><USER9> Seriously? Anything less than $1 million is already exempt, and they're still complaining?

I've been happy not paying sales tax on Amazon for years now, but when I heard there would be a law forcing them to collect, I didn't freak out. We had a good run of having to pay nothing. I didn't expect it to last forever.

Do people really want to avoid putting money back into the country at every turn? This is still America, and it's still great to live here. Taxes let it stay that way. Sure, we may not always like what they're being spent on, but that's a necessary part of being a citizen.

<comment><USER10> If you have a 3% gross margin and a million a year in revenue, you don't have enough money to hire even a single full time employee. Who is going to handle the new requirement to integrate 50 different software packages this bill requires the states make available to compute sales tax at purchase time, to fill out 50 sales tax forms every quarter/year, to cut and keep track of 50 checks...

A $1M/year seller could easily spend their entire year's profit just paying someone to keep track of which of the states have opted in to the new programs this bill will create, research the sales tax laws and forms in those states, research their software/APIs, build the integrations, etc.

If a federal sales tax law simply meant cutting one check and sending one spreadsheet to some authority that then divvies out the payments to the appropriate governments, that'd be something else. I don't think that's been proposed.

<comment><USER9> I guess I assumed it would be handled through ebay's payment system. If not, I could see how that would be a pain. Still, that's only 50 checks a year. Doesn't seem _that_ difficult.

<comment><USER10> What about everyone that sells online and doesn't do it through eBay?

<comment><USER11> You go out of business because your margin was razor thin. Obviously.

<comment><USER10> [deleted: don't feed trolls]

<comment><USER11> If that's the only argument then I hope it passes. Why should some minuscule number of small businesses hold everything up?</comment></comment></comment></comment></comment></comment></comment>


Robinhood replaced "call" and "put" with "up" and "down" - <AUTHOR> https://twitter.com/AustenAllred/status/981561481530609664 <comment><USER2> Honestly, this doesn't surprise me at all. The interface in Robinhood makes me think it can only be useful for people that have 0 idea what they are doing. Case in point: their graphs (at least on Android) have no labled Y axis! Seriously, WTF.

<comment><USER3> > their graphs (at least on Android) have no labled Y axis!

It's the same on iOS.

I can't say I'm happy with Robinhood. It's dumbing down something that can get you into a world of financial pain if you don't know what you're doing.

If they want to target people that don't understand what they are playing with, they shouldn't be giving away options/crypto access/margin buying to people that don't understand those concepts. Expect a lot of people to lose a lot of money. /r/stupidfinance has some pretty great posts in which people were left in the cold after playing with fire in RH.

<comment><USER4> I know very little about stock trading. I shouldn't get in a world of financial pain if I don't trade on margin (Robinhood Gold Buying Power) and only transfer money I can afford to lose right?

That is treating Robinhood like a casino. I recognize I don't know what I'm doing at the casino. Therefore I don't use a credit card to buy casino chips and I have a hard stop-loss of a couple hundred bucks that's budgeted as entertainment money.

</comment></comment></comment><comment><USER5> What's wrong with removing the jargon from stock trading?

<comment><USER6> > What's wrong with removing the jargon from stock trading?

Because you're removing all specificity from it at the same time.

If you show me that screenshot without the text in the tweet, I'd have no idea what action it actually refers to. It could mean you're buying or selling an option. Or it could mean you're buying or selling a stock (potentially short selling). It could even mean you're buying stock on margin.

In fact, buying a call option is probably not even the _most_ reasonable interpretation of "I think that this stock will go up", because purchasing the stock outright would be the default workflow. Especially since it doesn't even specify a timeline for the option[0]! Am I betting that it will go up today? Next week? Next month? Next year? There is literally no way to tell from that display.

And quite honestly: if you know about the distinction between buying equity and buying a call option, you will care about the difference between the two. And if you _don 't_ know about the distinction, you have no business trading options, because you'll undoubtedly screw yourself over.

[0] Timelines matter less than you'd think, because you can sell an option early to recoup its value and call options are always worth more alive than dead[1]. But it still matters, because buying an option that expires in a month is a very different bet from buying an option that expires in a year.

[1] In other words, you never exercise an option early even in markets where it's permitted.

<comment><USER7> So much BS in your post and most of everyone ("elitist") here. If someone came here say this kind of thing about programming they would be voted to hell.

ie. If you do not know how pointers work you have no busines programming because you'll undoubtedly screw your app.

<comment><USER8> I don't think your analogy holds water, if only from the fact that "pass by reference vs value" is rooted in pointer knowledge, and is rather key to "not screwing up your app." (And as sister posts pointed out, messing up an app usually does not put ones finances on the line)

I also disagree with the core thrust of your post, but that's subjective so I'm listing this second. As someone who went from "financially clueless" to trading options over the last few years, I got to see my own mistakes firsthand, which were at least initially rooted in not understanding the implications of various vehicles and the patterns by which to use them, and that was even after quite a bit of time practicing in simulators.

No, I absolutely agree with the parent that there's a risk to not only trying to spoon-feed gambling (which is honestly how I see options, take it or leave it) under the guise of investing to uninformed consumers, but in splitting the jargon so a new entrant can't even easily bootstrap their knowledge by looking up the terms.

(I find it additionally funny to be arguing this, as I'm normally a staunch opponent to the Accredited Investor laws, but there's definitely a continuum between "keep poor people from using these vehicles" and "everyone and their grandmother can now shoot themselves in the foot without the most base validation that they know what they're getting into or have the tools to do so with eyes open")

<comment><USER7> > so a new entrant can't even easily bootstrap their knowledge

This is where the pointer analogy works. You don't need to use, but by knowing what a f pointer is, you increase your knowledge about the domain as you've put, by knowing the difference of "pass by reference vs value".

And messing up an app does not put "owns" finances at risks. But may put others by tons of different ways of bad written software (if released or used anyway). So you have more responsibility with software because it MAY affect others and not just yourself blowing your own money.

<comment><USER9> Losing your own money can affect other people, if you are an adult with dependents, for instance.

<comment><USER7> Are you too self-centric to be able to understand or you're just being annoying?

<comment><USER9> I have no dependents, so no, I wasn't making a self-centric comment. And it was just one example of how losing money can affect other people.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER10> This is so bad.

I know people who actually think it's just about betting it go up or down, like the higher orders don't exist (the greeks).

</comment><comment><USER11> This is clearly photo shopped right?

I mean going up vs going down?

and the high vs medium risk statement is, at best, debatable.

If this is real, can anyone shed light on how they ensure a user has the capital required to purchase options? ie if I purchase 1 calls of GOOG and they expire ITM what does Robin Hood do if I dont' have $10,000 in cash for the exercise?

<comment><USER12> In the thread they say Robinhood doesn't allow selling calls if you don't hav the shares already.

<comment><USER11> Sure, that makes sense, but i asked about buying calls and not having cash to settle the transaction at expiry.

<comment><USER13> According to Robinhood, "If you don't have enough buying power to exercise your option, we'll sell the contract in the market for you about 1 hour before it expires." [https://support.robinhood.com/hc/en- us/articles/115005656423...](https://support.robinhood.com/hc/en- us/articles/115005656423-Expiration-Exercise-and-Assignment)

<comment><USER9> That seems scary to me, because even if it normally works, if it fails, it's presumably not something customer service can "make ok" especially because they aren't charging you commissions and you are, as they say, the product not the customer.

At this point, customer service of the major discount broker I've used for many years is so abysmal that the last thing I want is a free alternative that promises to do more for me. It makes me think of how impossible it is to deal with Google when something goes wrong with their free offerings.

I think social media has become a societal problem because there is so much revenue available from exploiting addictive behavior, and the logic has to lead to brokers trying to catch up. If you are sensible with investing, the system doesn't need or want you.

</comment></comment></comment></comment></comment><comment><USER14> I believe this is just under the "Discover" option. When selecting an expiration, it is displayed as Call/Put.

<comment><USER15> Nope, this is under FB -> trade options

</comment></comment><comment><USER16> Is there a currently updated Twitter or a Tumblr catching ridiculously silly app UX decisions like this? Similar to:

[https://twitter.com/internetofshit](https://twitter.com/internetofshit) or the defunct Read the Fucking HIG

</comment><comment><USER17> As if we needed another reminder that Wall Street is a casino underwritten by the taxpayers. A welfare program run by the Fed for the rich. A market for fools, not a necessary institution to capitalize business.

I guess it's better than trading slaves.

<comment><USER9> Surely it can be both a casino for the ignorant and a necessary institution for the educated and intelligent.</comment></comment>


Apple Patenst Possible Future MacBook Enclosure with 'Living Hinge' - <AUTHOR> https://www.patentlyapple.com/patently-apple/2020/01/apple-wins-patent-for-a-possible-future-macbook-enclosure-that-uses-a-futuristic-living-hinge.html <comment><USER2> Typo in the title: "Patents" not "Patenst".</comment>


"..is that it has led me to abandon lean startup theory" - <AUTHOR> http://www.ribbonfarm.com/2011/09/23/the-milo-criterion/

<comment><USER2> Duplicate: <http://news.ycombinator.com/item?id=3034573>

HN really needs a trailing-slash-insensitive equality operator.

<comment><AUTHOR> Ah, I missed this. Nobody likes a repost.

<comment><USER3> Missed it first time around, so I guess I like a repost...

</comment></comment></comment><comment><USER4> Lean startup isn't trying to outpace the customer, it's trying to catch up. It's for people who don't understand what the customer wants.

</comment><comment><USER5>
      > I don't like being cryptic, but in this case, I am not
      > going to elaborate further

This reminds me of the "The Gervais Principle"[1] from the same guy. That drew people in with an appealing story mapped onto a complex domain in a vague, simplistic way that in the end led to few novel, actionable conclusions. It's great rhetoric, though!

[1] [http://www.ribbonfarm.com/2009/10/07/the-gervais- principle-o...](http://www.ribbonfarm.com/2009/10/07/the-gervais-principle-or- the-office-according-to-the-office/)

</comment><comment><USER6> Did he actually provide any direct critiques of the Lean Startup methodology? As I understood, he just said "don't go too fast", which isn't in any way at odds with being a Lean Startup.</comment>


Elon Musk – The Future of Design [video] - <AUTHOR> http://www.youtube.com/watch?v=xNqs_S-zEBY&feature=youtu.be

<comment><USER2> Once someone figures out a natural content creation interface, that will be truly groundbreaking. Who knows if it's even possible purely with hand gestures. I forget where I read this, but one of the major factors in precise control over anything is the use of tactile feedback from your fingers, which you just don't get from hand gestures and a visual interface. Disney was even experimenting with air puffs propelled at your fingers to do this. [1]

[1] [http://www.disneyresearch.com/project/aireal](http://www.disneyresearch.com/project/aireal)

</comment><comment><USER3> The most appropriate UI I've seen to do quick 3d modeling has to be this one... [http://vimeo.com/1669862](http://vimeo.com/1669862) (ILoveSketch). It'd be nice to see Elon's setup with a parametric calculating/suggesting version of that UI.

<comment><USER4> It looks like a 3d version of the original Sketchpad[1] and GRaIL[2].

[1] [http://en.wikipedia.org/wiki/Sketchpad](http://en.wikipedia.org/wiki/Sketchpad) ( [http://www.youtube.com/watch?v=495nCzxM9PI](http://www.youtube.com/watch?v=495nCzxM9PI) )

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

</comment></comment><comment><USER5> I am surprised Elon was so excited about it, it's not that useful. So it is more of a sloppy 3d viewer and navigator and shaky hands will always get in the way. I thought they have a way to zoom into a hidden component and sculpture additional details in-place with hands.

<comment><USER6> Agreed, when I heard the news before, I was under the assumption that actual design was being done with this, and not viewing the product per say. Still, looked like it was a pretty natural system to use. I'm sure it'll be useful, just not as groundbreaking a change as we hoped.</comment></comment>


Stranger Knows Best: Other People Know More About What Will Make Us Happy Than We Do - <AUTHOR> http://www.sciencedaily.com/releases/2009/03/090319142352.htm <comment><USER2> What am I missing here? I'm a guy in his mid-30's with a wife and a couple of kids. If I go out on a weekend night, the last thing I want to do is go to a loud bar/restaurant. It's stressful and keeps me from enjoying the company of the people I'm with. However, dance clubs are full of "young" folk who like the atmosphere, hook-up potential, etc. If I asked one of them how much they liked the new club that just opened up, they'd probably have great things to say. This doesn't mean that I'd be at all happy.

Conversely, I'm happy to ask others how they like their X's (TV, phone, etc.) before making a purchase. As experienced device users, they know what questions I ought to be asking about myself (Do I have fat fingers?) and my needs that I probably wouldn't have otherwise considered.

Did I not understand ScienceDaily at all?

<comment><USER3> no, you just don't buy in to the underlying averaging of all experiences that socialism entails. No matter how many ways they come up with of saying that you should be doing what someone else tells you, the underlying assumptions are wrong.</comment></comment>


Why can't we divide by zero? - <AUTHOR> http://www.math.utah.edu/~pa/math/0by0.html <comment><USER2> The real number system is discontinuous over division.

Interestingly enough, you _can_ divide by zero. But if you do, then you can't define integers.

<comment><USER3> For more on this, take a look at the <http://en.wikipedia.org/wiki/Riemann_sphere>

<comment><USER4> How does this relate to the original comment? What I want to know is how you can divide by 0, so that then you can't define integers.

<comment><USER3> I think DanielBMarkham is being rather loose with terminology here (or perhaps talking about something other than the Riemann sphere, but it _sounds_ like that's what he's talking about).

The problem isn't that you "can't define integers" when you introduce an infinity. The problem is (as the article I linked to says) the resulting system does not form a field (i.e. the usual arithmetic operations don't behave like you would expect anymore). Follow the link to fields if you want to know more.

<comment><USER5> Wait, but the integers don't form a field anyway (not closed under division).

<comment><USER6> They form a field under multiplication and addition.

<comment><USER3> Not quite: The structure is called a "ring" when you don't have division.

<http://en.wikipedia.org/wiki/Ring_%28mathematics%29>

<comment><USER7> "Mostly" true, but if you accept this statement as-is, it's a little misleading.

The integers (with standard addition/multiplication operators) are indeed a ring, but a ring is a very loose definition that does not reveal say too much about the integers themselves. There are several stronger algebraic structures than integers that don't have division.

The integers themselves are an example of a general algebraic structure called a "domain," (or, more commonly, "integral domain") which is a commutative ring (that is, commutative under multiplication as well), has distinct additive and multiplicative identities, and has the property that if a and b are integers and a*b = 0, then either a or b must be zero.

When mathematicians in the past were studying divisibility in the integers, they have generally studied domains, because they essentially isolate the division property among different operations. Even an integral domain is not the strongest structure you can place on integers. There are even more specific subclasses of integral domains that the integers fall under, but that's best left for a class on algebraic structures and not a comment on HN.

<comment><USER3> Good point, I had forgotten about IDs.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER8> I explained this as: Take a number, e.g. 5. Then take a small number, like 0.1. Add 0.1 to itself, and repeat, you'll eventually reach 5.

But if you take 0, and keep adding 0 to it, you'll never reach 5. So no amount of 0's will go in to 5.

That logic breaks down if you do 0/0 though. My students never picked up on that one but they believed me!

<comment><USER9> Picturing the graphs of _y = 1/x_ and _y = cx/x_ worked for me. You can make the "reasonable" value at x=0 be Inf, -Inf, or anything in between.

</comment></comment><comment><USER10> I'm still not convinced that you can't just say that x/0 equals infinity. Certainly, infinity is not a number..but it has the same properties as a transcendental number in the sense that it is impossible to describe it accurately with finitely many digits. You wouldn't be able to use this definition to build other theories, but it would be nice to have a settled definition. Saying that x/0 is undefined still seems to me like a bit of a hack.

I agree that 0/0 should be undefined. There are infinitely many possibilities for what it could be, depending on the context.

<comment><USER11> Is it at least true that (0 < |0/0| < Infinity); that is, that 0/0 is a finite, non-zero number?

<comment><USER12> No. 0/0 is completely undefined. For example, consider limit as x approaches 0 of (-x)/x. This approaches (-0)/0 = 0/0 but simplifying the limit given an answer of -1. So 0/0 is completely dependent on the characteristics of the convergence and had no meaning in isolation. In fact, the field of real (and complex) numbers does not even include 0 in the multiplicative group. Therefore, dividing by 0 is nonsensical as it has no inverse as it is not in the multiplicative field. According to the basic axioms of groups theory, given a field _F_ with _a_ the identity of the additive group in the field and _b_ some element of the multiplicative group, it can be proven that mul(a,b) = a where mul is the multiplication operation. This explains why 0 times any other number is 0. If you would like a copy of the proof, just drop me an email.

Sorry for the rant, math major.

<comment><USER13> I'd love to see the proof. But you did not post your email address. Could you send it to mine?

<comment><USER12> oops. Sorry about that. Fixed.

PS. Your email address is not posted either.

<comment><USER4> Isn't it something like this?

0=a-a, for all a

(where a-a is actually, a+(-a))

so: mul(b,0)=mul(b,(a-a))=mul(b,a)-mul(b,a)=z-z=0

<comment><USER12> pretty much.

</comment></comment></comment></comment></comment></comment></comment><comment><USER14> I took a couple of numerical analysis classes from this guy (Peter Alfeld) at the University of Utah and he is a very entertaining teacher.

</comment><comment><USER15> You just need to define the undefinable.

<http://en.wikipedia.org/wiki/Hyperreal_number>

<comment><USER15> Also, the naive perspective on the .999999999999_=1 debate happens because some people intuit the hyperreals. It's in the hyperreal number system that there can be an infinitely small difference between .99_ and 1, because that infinitesimal is defined to exist where it isn't defined in the real number system.

</comment></comment><comment><USER16> I don't care how your define 1/0 as long as my program keeps running. I always found it to be inexcusable that a run-time environment would halt a program that tried to do N/0 as if it allowing it would cause a complete and utter loss of data and property. Is returning NaN, null, or undefined instead really so hard? Lazy frigging compilers, I hate you!

</comment><comment><USER17> A little off topic, but interesting practice for 0.

What are the mathematical ramifications of 0% capital reserves?

This is a good chance to remind the readers that the bailout bill contains a clause to accelerate a 2006 law to 10/01/2008, which allows the Federal Reserve to set reserve requirements for a bank to 0%.

</comment><comment><USER9> There was a professor who tried to get around this a couple years ago by defining a special value called "nullity."

[http://en.wikipedia.org/wiki/James_Anderson_%28computer_scie...](http://en.wikipedia.org/wiki/James_Anderson_%28computer_scientist%29)

<comment><USER18> Which, when you look at it, is just another name for "undefined". It didn't solve anything, and seemed to me like a bad troll on the mathematical community.

<comment><USER9> Indeed. A little knowledge is a dangerous thing.

</comment></comment></comment><comment><USER19> Because 0 is not a real number like the rest. It's like having a long row of cowboy boots and a pair of highheels in the middle. 0 is different from the rest.

</comment><comment><USER20> I think of it like that blank Scrabble piece - it can be anything until you define what it is, then it has to be that value from now on (in the calculation).

</comment><comment><USER21> > _Why can't we divide by zero?_

By definition (of the division operation).

</comment><comment><USER22> Ok, so why does 2+2=4?

<comment><USER19> Because if I had two apples and you gave me two oranges, I would have 4 fruits. If I asked you how many pair groups of apples you had, you'd say 2. If I asked you how many groups of no apples you had, you are free to choose any number, depending on how imaginative you were.

</comment></comment><comment><USER23> because the math police will come after us.

<comment><USER24> Suppose 5/0 = infinity. What does it buy you?

At the very least, one would expect that 5/0 = infinity implies that 5 = 0 * infinity, but that is not the case. And if you insist that it is, does 4/0 = infinity then imply that 4 = 0 * infinity, and hence 4 = 5?

<comment><USER23> Infinity is not a number... its a concept.

Say you were to count every integer, you would count to infinity. Now what if you were to count every number between 0 and 1? Would it still be infinity?

I've always thought in degrees of infinity, but either way its still not a number.

If you kept the degrees of infinity separate, you _could_ divide 5 by zero and it would not be the same as dividing 4 by zero.

If you wanted to play with limits, you could say the limit of 5/x as x approaches 0 is infinity, but we don't really have a name for what x/0 would be. Someone did come up with nullity, but that's not good enough.

Plus, you can't _have_ Zero of something. Having implies a positive net, thus it's not correct to say that you have zero of something... you could say you don't have something, but they're semantically different. Zero is just another concept.

<comment><USER3> Take a look at Cantor's work, if you're interested in this stuff.

The number of integers is known as a _countable_ infinity.

The number of numbers between 0 and 1 is called an _uncountable_ infinity.

The proof that these are not the same (Cantor's diagonalization argument) is my favorite proof - it's _really_ neat. It's quite clear and maybe even obvious in retrospect (I like to explain it to friends who are curious about higher mathematics), but probably not something you would have come up with if you weren't Cantor!

You can ask if there's an infinity between these two, and that's actually unprovable. You can _prove_ that, without adding more axioms to mathematics, it's impossible to prove one way or another whether there's an infinity between them.

Sometimes I really miss this stuff.

<comment><USER25> I never really accepted Cantor's idea. First off if you have a sequence ...1 and ...0 at infinity they are the same number so saying you flip the last bit does not demonstrate that the above number is not in your set.

Secondly, if you take the Integer set and say N = the sum of all numbers > 0 you have counted, then you will never reach N as you go to infinity.

PS: This is why I went to CS there is no way to verify that a given proof or program is accurate but that does not stop a program from being useful.

Edit: Restating the second argument: Start with all zero's, count in binary from the left, 1000.. > 0100.. > 1100.. > ... and the diagonal becomes 1111111 which is basically just a higher order of infinity like N = the sum of all prior numbers.

<comment><USER4> _I never really accepted Cantor's idea. First off if you have a sequence ...1 and ...0 at infinity they are the same number so saying you flip the last bit does not demonstrate that the above number is not in your set._

It doesn't work like that. You want to show that you can't enumerate all reals, so what do you do? You start enumerating all reals. Then you build a new number, whose Nth bit is different from the Nth bit of the Nth real number. You can do that because you have enumerated them, and we have never talked about an infinite N so we are never flipping the last bit of the last number nor anything similar. We are only flipping the Nth bit of the Nth number. Number 819439243? We flip the 819439243th bit. That's all we do.

What do you do then? Well, you compare that new number you created, with the first number, the second number, and so on. And you see that this number is different to all the other numbers.

What does it mean? That it doesn't matter what your enumeration scheme is, there is at least one number that will always be out of your enumeration scheme, and so your enumeration scheme will fail (so this is an absurd also, as we were supposing that this specific enumeration scheme -that could be any enum scheme- was complete). So you don't have as many integers as reals, so QED.

 _Secondly, if you take the Integer set and say N = the sum of all numbers > 0 you have counted, then you will never reach N as you go to infinity._

As you see, it doens't matter, as in this proof you never need to do the sum of all numbers.

<comment><USER25> Countability is considered a one-to-one correspondence with the infinite set of natural numbers.

Well let's count the natural numbers in binary, ..0000, ..0001, ..0010, ..0011, etc.

Now take the first digit of the first number and flip it,1 and the send digit of the second number and flip it, 1, etc. This is 2^x - 1. Is it countable because the natural numbers are countable? It's the same type of number you created on Cantor's diagonal. But it's never in the set you have counted. However, the same thing is true of x + 1.

The problem when constructing such numbers is there is not a final number in the set. So saying go to Infinity and add one or take 2 to the power of that and subtract one has no meaning.

PS: I think people don't equate them because they assume there is a difference between making a number larger and making a fraction more precise. So, 0.1, 0.11, 0.111, 0.1111 means something different than 1, 11, 111, 1111 etc.

<comment><USER4> You aren't undestanding the proof well; the proof isn't flawed. The best way to see it is to read it on a math book with full symbols and so on. Then you can see that there is no flaw, as every step follows from the previous one and that there is no philosophical reasoning about it, only maths.

I think the problem with how you are understanding it is that you think that your enumeration is finite at any time. That's not true.

Let's suppose we are only wanting to enumerate numbers between 0 and 1. So, you have to enumerate them like this:

0 -> some real

1 -> some real

...

n -> some real

for all naturals, so that you have infinite reals in your enumeration scheme. Now, you build your new real number, let's call it R. R is such that its Nth digit after the point is different than the Nth digit after the point of the Nth number. Let's suppose our procedure goes like this:

0 -> 0.1

1 -> 0.11111

2 -> 0.0001

3 -> 0.10101010101010....

4 -> 0.111011

What is R? R is a real number. It has a well-defined value for every one of its digits, so why wouldn't it be a real number? So we have, a real number between 0 and 1, and an infinite enumeration of reals.

Let's see the value of R:

0 -> 0. _1_

1 -> 0.1 _1_ 111

2 -> 0.00 _0_ 1

3 -> 0.101 _0_ 1010101010....

4 -> 0.1110 _1_ 1

so R is:

0.00110 and so on.

Is R 0.00110? R has more digits, is more like 0.00110abcdefg with abcdefg being some more digits we should calculate. R has infinite digits, not only those, and we could calculate all of them by a finite procedure, so we aren't doing anything magical here. What those digits' value is we don't mind, as you'll see.

What we mind about is this: R is different to the first number. How can we know? Because by construction, the first digit of R is different from the first digit of the first number. Now, let's see if R is in our countable set. If R was in our countable set, R would be in a place, for example in the position M of the enumeration. Now, in the position M of the enumeration we have the Mth number, and by construction, the Mth number is different to the R number, as they have at least a digit that is different between them (and we can even say: the Mth digit is different between them).

So, how could R be in the enumeration scheme if we can't place it at any M? Now, that's why we have an absurd here, and that's why every enumeration scheme for reals will be incomplete.

I wish this solves your doubts about it. Please only focus on the mathematical demonstration, we aren't saying nothing about countability, infinities, or very large numbers excepting when we have to.

<comment><USER25> Let's use your approach to define every other number the other uses the classic counting method.

Every other number will be the same as your number for N-1 digits. So at infinity your number is the same except for the last digit but two real numbers N and N + 1/infinity are the same.

<comment><USER4> Let's see if I understand it well:

You define a numbering scheme that goes like this:

\- the first number is, say, 0

\- the Nth number is so that, its Mth digit for M<N is different to the Mth digit in M

Do I understand you well?

<comment><USER4> If that's what you mean, then I define a new number, R, that is different to all numbers in the sequence. It's defined as usual.

How do I know that this R number is different to all numbers in your sequence? Well, I can take any M number from your sequence and compare it to R. However, the Mth number is different to R in its Mth digit.

About the limit in the infinite... it doesn't matter at all... You can't take a M value that's infinite, as we have only numbers that have a finite size (there are infinite numbers with finite size, that's the trick on this; there aren't integers with an infinite size for example). And if you take an M that's finite, then you have to say that such Mth element is different to my R.

And so on for any sequence you can build (even for sequences you can't build, like random sequences).

Edit: possibly the big thing that's confusing you is that you can't have an infinite number, even if there are infinite numbers. So, taking the limit of a function is something that has a very restrict meaning that is actually not directly related to the concept of infinity. If you check the definition of limit it doesn't talk about infinities but about deltas, and if you use such definition your proposed problem stops being a problem. <http://en.wikipedia.org/wiki/Limit_>(mathematics)#Formal_definition

<comment><USER25> _possibly the big thing that's confusing you is that you can't have an infinite number, even if there are infinite numbers_

Yep, that's new to me. So one followed by infinite zeros is not a rational number number. I have read otherwise, but I assume it was a sloppy definition of infinity that works when your not talking about countable numbers.

<comment><USER4> Real numbers can have infinite digits, but only after the point, such as pi. The size of any number, even if it's real, can't be infinitely big (a real is between two integer numbers, and integer numbers have to be finite). So yes, 1000(...)00000 with infinite 0s doesn't exist as a number.

Nice conversation anyway.</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment>