HNHacker News
TopNewBestAskShowJobs

drewgross

84 karma · joined February 2, 2015

submissionscomments
drewgross··on Google broke reCAPTCHA for de-googled Android users
It doesn't provide 100% privacy from everyone, but it does provide privacy from the web service: A worker at a physical store checks your ID, and if it says you are 18, they hand you a token with a unique key on it, which they have a stack of behind the counter. You put the unique key into the web service. It's not necessarily one time use, but if you don't want to risk correlation, you can use each one only once. It's just like alcohol sales, and has all the same failure modes as alcohol sales, but if it's good enough for alcohol sales it's good enough for web services.
drewgross··on Traders placed over $1B in perfectly timed bets on the Iran war
The problem with insider trading in prediction markets isn't the "prediction" part, it's the "markets" part. Once there is real money changing hands, then the purpose of the prediction market stops being "surface information" and starts being "make money" (POSIWID sense of purpose). Since the money changing hands is a necessary incentive for the insiders to provide the information, the parts cannot be disentangled and the problem is fundamental.

Note also that prediction markets can't be too different from financial markets because prediction markets are in some sense a generalization of financial markets e.g. you can make a prediction market that predicts the price of some stock on some day.

drewgross··on Hard-braking events as indicators of road segment crash risk
If 20 people take advantage of your buffer, then you are delayed by a distance of 20 vehicle-lengths + 20 follow-distances. This is about 1000 meters, a distance which you can travel in about 45 seconds. So the net effect of all 20 people merging in front of you is less than a minute delay on your trip. Unless there is an almost constant stream of people merging in front of you, this isn't adding up to more than a percentage point of two of your whole trip.
drewgross··on Are Apple gift cards safe to redeem?
My reading is that this was included in point #7, i.e. access to the customer service is conditional on identity verification.
drewgross··on Next stop: Miami
On the contrary, sticking strictly to the lane markers when everyone else is blindly straddling lanes seems the worst of all worlds.
drewgross··on Valve is not willing to publish games with AI generated content anymore?
If you want to talk about bad faith arguments, calling the AI a "hellsystem" is showing your bias just a bit.
drewgross··on Tell HN: After 10 years of experiments, custom username emails receive no spam
Hackers deliberately create strange circumstances, it's the primary way to find exploits. Any code that relies on a lack of strange circumstances is a time-bomb.
drewgross··on Tell HN: You can't hire because you don't post salary ranges
0.1-1% hire rate based on applicants, or based on candidates interviewed? 0.1% hire rate of candidates interviewed doesn't seem compatible with your described growth rate, even if you very conservatively assumes you spend 1 hour interviewing each candidate, thats 25 weeks of straight interviewing per candidate hired. And thats 1 hour of time across the whole company, if you have 2 interviewers spend an hour each, thats now 50 employee-weeks, or an entire year. To double the company size in 5 years, you would have needed to spend 1/5th of your entire tenure interviewing. If you go up to 10 total hours spent per candidate (including all interviewers, recruiters, and time spend in discussion and negotiation) it becomes straight up impossible.
drewgross··on The bullet effects in Terminator 2 weren’t CGI
Most people don't start shopping at grey/black markets in order to avoid paying sales tax. Most people don't pay their employees under the table to avoid paying income tax. Most people don't move or de-value their own homes in order to avoid paying income tax. Those taxes make up most tax revenue, and wouldn't get caught in that definition.
drewgross··on The terminal is on life support. Is it worth saving?
Not OP, but a fan of Warp.

> I - and I get the impression that's true for many developers - learned early to minimize the custom config.

I get the exact opposite impression. My understanding is that as developers become more experienced, they tune their setup more, and have more and more persisted customizations. I consider sshrc[1] a critical part of my workflow for this reason.

> But why would one need that? Is your environment that random?

Most shells by default will occasionally spew out "garbage" text into the terminal like ^[[A. If you know why this happens it's possible to fix, but it's definitely a pain. Personally I consider it very important that all the places that I input text work consistently (e.g. move cursor by word, move cursor to end of line) and Warp providing that is a huge selling point to me.

[1] https://github.com/danrabinowitz/sshrc

drewgross··on Proposal: Treat FLoC as a security concern
Yes. Mozilla is a non-profit, pretty much everything they do is out of charity.
drewgross··on My apartment was built on toxic waste
It's also entirely plausible that every apartment DOES have high VOC levels, but she is the only one reacting to them. Or that other people are also reacting to them and haven't figured out why yet.
drewgross··on 54% of San Francisco homes are in buildings that would be illegal to build today
The map also explicitly lists "number of homes that would be illegal", presumably for that reason. If you make it illegal to build anything smaller than a duplex, on a lot that currently contains a single family home, the "number of illegal homes" on that lot is still zero.
drewgross··on Richard M. Stallman resigns
We have a give and take, it's called a "protected class". It lists reasons you can't fire people and includes reasons like being black or being a woman. We can update the laws to protect people in other classes as well, but I don't see anyone clamoring to make "defenders of pedophiles" or "creeps who alienate their coworkers" a protected class.
drewgross··on C++ Modules Might Be Dead-On-Arrival
No, it's actually undecidable. C++ templated have been determined to be turing complete, which means that template instantiations can encode the halting problem. Determining whether a program compiles or not therefore requires solving the halting problem.

In practice, compilers work around this by limiting template instantiation depth.

drewgross··on Callback Hell (2016)
Calling race conditions the "most common" vulnerability seems like some pretty extreme hyperbole. What about SQL injection or XSS?
drewgross··on Live slow, die old: Mounting evidence for caloric restriction in humans
People continue to influence their children long after they stop reproducing. Genes that help you children have more children are selected for, so something like a gene that keeps you alive long enough to care for your grandchildren seems plausible.
drewgross··on Don’t Tell Your Friends They’re Lucky
What he means is that the deduction has been "priced in" to the price of homes/mortgages. In a similar story, a company I used to work for once offered employees a $x incentive to live close to the office. They then found that the price of homes in the area immediately went up by $x.
drewgross··on Scanadu to shut down support for its Scout device and customers are mad
To most people, there is no difference between "your chances to to carry or possibly have or develop health issues" and a diagnosis. Sure, I suppose I can see some small technicality that makes them different, but really, the way you react to either is about the same, which makes them about the same.
drewgross··on ECMAScript bind operator proposal
The difference is the JS has late binding.

  myObj.myMethod();
Has different semantics than

  var x = myObj.myMethod; 
  x();
Which causes code like:

  myList.map(myObj.myMethod);
to behave somewhat unintuitively.
drewgross··on Do you really want a single-page application framework?
> I'm not counting dependencies... and some of those dependencies are really heavy, made worse because they load incompatible versions of things (e.g. Fbjs 0.13 vs fbjs 0.15).

I think you misunderstood. You aren't supposed to run your dependencies through Babel.

drewgross··on Node.js v7.0.0
Because it blocks anything else from happening. If on a server, it will prevent that process from handling any requests until the file has been read, and in a browser-like environment it will prevent the UI from updating and will prevent all UI interaction until the file has been read.

In a simple script you run from your shell, the middle one is fine.

drewgross··on Massachusetts to tax ride-hailing apps, give the money to taxis
No they are not. They are demanding money, but they don't care if you inherited it, worked for it, found it, etc.
drewgross··on 9th Circuit: It’s a crime to visit a website after being told not to visit it
If I tell you not to enter my house, and take no further steps to prevent you from entering my house, such as closing the door, it's still illegal for you to enter my house. If I tell you not to enter my business, and take no further steps for prevent you from doing so, it's illegal for you to enter (unless I have banned you for being a protected class). If I tell you not to ssh into a computer I own, and take no further steps to prevent you from doing so, it's still illegal. I think a lot of software engineers get so wrapped up in the technical side of security and dealing with anonymous and untraceable threats that they don't realize that for the most part, the law doesn't care about technical access control. It cares about social access control.
drewgross··on Functional Programming Jargon
You can have weakly/dynamically typed functional languages (most lisps for example) just like you can have strongly/statically typed procedural or OO languages, like Fortran or C++.

Haskell the language also knows nothing at all about invariants, and the language will happily let you make something a Monad even if it doesn't obey the right laws. The culture and libraries of course take invariants quite seriously, but some aspects of the Javascript culture also take invariants quite seriously, like Promises for example.

drewgross··on Vim GIFs
I usually use Sublime but when I'm ssh'ed to a machine I use vim, so I have some experience. I find that I need to exit insert mode to run commands about half the time, or maybe a little less than half the time, in order to run commands. Maybe thats just due to the type of thing I usually edit though. I don't have enough vim foo to know how to do this, but maybe you do: can you record a session and see how often you pressed escape? I'd be interested to know how often various people press escape.
drewgross··on Vim GIFs
I would say it's faster since with 2Y you have to lift your finger off the 2 before you can press the Y, but with ^L you leave your finger on the ^ while you press the L so it doesn't even really count as 2 full key strokes. (not to mention you have to press ESC half the time in Vim to even get to the mode where "2" is what you want to do)
drewgross··on Police use new device to seize money in bank accounts or on prepaid cards
How about the friends who died of the drug as a fraction of the friends who used the drug? If you don't know anyone who uses heroin, this post is meaningless.
drewgross··on Adding JavaScript modules to the web platform
(Not OP) Usually when I am using this technique it's for some 3rd party library that provides a useful debugging tool. To use your suggestions I'd need to create a wrapper that calls through to the 3rd party library in dev. Sounds like a huge pain.
drewgross··on I've Just Liberated My Modules
Aside from secrets there is also sensitive data. If someone accidentally uploads some personal information, they need a way to remove it if, say, they receive a court order ordering them to remove it.
Page 1 of 2Next →