HNHacker News
TopNewBestAskShowJobs

bgentry

5,978 karma · joined December 3, 2009

Software engineer building River (riverqueue.com). Former Co-founder at Distru. Mux, Opendoor and Heroku alum.

[ my public key: https://keybase.io/bgentry; my proof: https://keybase.io/bgentry/sigs/RDwSk5TnJBGqGLpMbkVGHs1oi8xRF6bs-yXND13oxiM ]

submissionscomments
bgentry··on NSA’s top talent is leaving because of low pay, flagging morale, unpopular reorg
Rogers disputed that there was any increase in attrition and told his employees that they should stop complaining and get back to work.

Can’t imagine why anybody would want to leave.

bgentry··on Silicon Valley Software Engineer Salaries by Experience Level
RSUs and options are very different. RSUs are shares that the company gives to you, and for a public company you can sell them almost immediately to convert them to real cash. Their value fluctuates as does the company’s stock, but it is still real income. The rational thing to do is usually to sell all or most of the shares as soon as they vest and not to gamble on future returns.

Options at startups are basically worth nothing, unless/until the company becomes a breakout success. Even then you generally can’t sell them unless there is an IPO or you do a second market deal. These really are a lot like a lottery ticket.

I won’t get into all the ways options can be worthless even if the company does well enough to IPO, and you actually managed to exercise / keep the shares you vested.

Also, some later stage non-public startups issue RSUs instead of options. These too are closer to a lottery ticket.

bgentry··on Silicon Valley Software Engineer Salaries by Experience Level
I believe the parent was talking about the financial risk of being underpaid by a startup by something like $50k–$250k per year of nearly guaranteed income that you would make at BigCo.
bgentry··on Silicon Valley Software Engineer Salaries by Experience Level
Completely agree! Even a substantial portion of your base salary should go into savings & retirement rather than being spent.

Easier said than done in the Bay Area without 2 good salaries, especially for those with kids.

bgentry··on Silicon Valley Software Engineer Salaries by Experience Level
I haven’t heard about how those two companies pay. It’s definitely a common occurrence at Google, Apple, Facebook, Microsoft, & Salesforce.

Bonuses are often structured as a % of your base salary based upon your rank. More senior engineers will get an extra 10-25% each year essentially automatically.

This is separate from RSUs, which vary a lot more widely. Their value is especially dependent upon company stock performance.

bgentry··on Silicon Valley Software Engineer Salaries by Experience Level
I understand that it’s hard to compare non-salary compensation. But these figures give the impression that compensation for a Bay Area software engineer is shockingly lower than the reality.

RSUs and bonuses at established companies will easily double your take home pay.

Even the salary figures themselves look low and are probably heavily skewed by an overrepresentation of underpaying startups. My base salary ~4 years ago was in the 90th percentile according to this. It’s unlikely I was among the 10% highest paid Bay Area engineers at that time.

Don’t settle for a mediocre salary in an area with absurdly high cost of living. Don’t be satisfied with these averages. Funded startups will pay more if they need to.

bgentry··on Update on Stock Options/RSUs Vesting Issue
Here is the short summary from the amendments PDF linked below:

The amendment provides that certain employees who receive stock options or restricted stock units as compensation for the performance of services and later exercise such options or units may elect to defer recognition of income for up to 5 years, if the corporation’s stock is not publicly traded.

Perhaps the amendment itself makes this clear, but it sounds like this does not in any way affect option exercise timelines. It sounds like this just lets you defer recognition of the income resulting from an exercise.

bgentry··on Don’t Tax Options and RSUs Upon Vesting
Here is a more detailed analysis of these parts of the proposed tax bill: http://bakerxchange.com/rv/ff0034eed7a7d447f644f491d94caddcb...
bgentry··on Don’t Tax Options and RSUs Upon Vesting
Interesting side note. This proposed legislation actually completely removes section 409A from the tax code and replaces some parts of it. I’m not sure if the rules around company valuation will change dramatically but it seems that they won’t be called 409A valuations anymore if this passes:

http://bakerxchange.com/rv/ff0034eed7a7d447f644f491d94caddcb...

bgentry··on First field report of iPhone X
That was my source as well :) Couldn’t remember if it starts with black bars or not, but the important point is that it’s trivial to toggle.
bgentry··on First field report of iPhone X
My understanding is that media fills the screen in the same way it does on any other iPhone. A double tap will change the zoom setting such that it will letterbox and not cut off any part of the video. This setting is supposed to be saved when you view another video.

And because this screen has such a wide aspect ratio, in most cases you can zoom out and only have black bars on the notch side and opposite side (left & right when in landscape mode).

That being said, I do find the designs that “embrace the notch” (especially in landscape) repulsive. I’d much prefer if that area just stayed dark to blend in with the notch.

bgentry··on Implementing Stripe-Like Idempotency Keys in Postgres
Which of the problems covered in this post would be solved by Snowflake?
bgentry··on Apollo Client 2.0
oh wow, a whole new site :) I missed that in the announcement, and the only link I can find there is kinda buried in the conclusion. Might be worth making that more prominent or at least updating the links in the apollo-client repo's readme.

Excited to try out 2.0 soon!

bgentry··on Apollo Client 2.0
> We have also rewritten a large portion of the documentation for using Apollo

Unfortunately it seems like the core API docs are still woefully out of date and full of broken links: http://dev.apollodata.com/core/

Despite that, my experience with Apollo in general has been good. I maintain the Ember addon for it, and I find I'm much happier and more productive with Apollo Client + GraphQL than I ever was using ember-data + JSON API.

https://github.com/bgentry/ember-apollo-client

bgentry··on Gmail Launches Add-ons
I’m unable to install the Streak gmail add-on in my GSuite org. The “install” button is just disabled. Is this due to a gradual rollout on Google’s part? I haven’t been able to find any settings in my admin section that would enable this.

Also, are there any downsides or missing features of the add-on version compared to the extension version?

bgentry··on Ways to paginate in Postgres (2016)
> Now if you are programming a self-driving car or automating the mixture of medicines, maybe be careful where you use LIMIT and OFFSET.

There are plenty of cases where the LIMIT/OFFSET behavior is not great. More boring example: you’re displaying a paginated list of financial transactions and you don’t want duplicates to appear if the list gets updated. Or any kind of audit log. Or an event feed, or infinite scroll.

bgentry··on Ways to paginate in Postgres (2016)
Also Ruby: sequel-seek-pagination

https://github.com/chanks/sequel-seek-pagination

I used it just this week to write a Relay Connection paginator for graphql-ruby and Sequel/Postgres. It uses keyset pagination to reliably avoid skipping items and maintain consistent query times.

Backwards pagination was a bit tricky since that’s not natively supported by sequel-seek-pagination. Basically I had to reverse the list order and then filter with the cursor values to get the last N items in a subquery, then reverse that list again to get back the desired sort order.

https://github.com/rmosolgo/graphql-ruby/pull/1014

bgentry··on Think twice before encrypting your HFS+ volumes on High Sierra
Hah, good to know. I guess that’s what you get for installing a beta OS on a machine you care about.
bgentry··on Think twice before encrypting your HFS+ volumes on High Sierra
> APFS volumes cannot be reverted to HFS

Is that actually true? I’d heard that Apple had reversion instructions for those running the High Sierra beats on a system with a Fusion Drive, which they dropped support for in the final release.

bgentry··on Transactionally Staged Job Drains in Postgres
This pattern would basically be a clean migration away from a pure Postgres queue if either table bloat or locking becomes a performance problem. You maintain the benefits of transactional job enqueueing while only slightly worsening edge cases that could cause jobs to be run multiple times.

Just be sure to run your enqueueing process as a singleton, or each worker would be redundantly enqueueing lots of jobs. This can be guarded with a session advisory lock or a redis lock.

Knowing that this easy transition exists makes me even more confident in just using Que and not adding another service dependency (like Redis) until it’s really needed.

bgentry··on What the elite expect and receive from an Ivy League education
I have one. You get like 6mo free if you sign up with a Prime account and only $4/mo after that. I read more than a handful of great articles from them each month and that price seems fair.
bgentry··on Introducing WAL-G: Faster Disaster Recovery for Postgres
Seriously awesome work on this! I was expecting some solid improvement when I heard you were rewriting this in Go, but this is beyond what I could have expected. 7x improvement on high end instance types!

Also, what an impressive project to have on the resume as a college intern. I don't think many interns get to tackle something so meaningful.

bgentry··on Apple has proven me wrong about HomeKit
I don't think there was ever a mention of non-hardware authentication in the FAQ in the past (or even an FAQ at all). There was also never a public PDF of HAP until this year's WWDC, and the link to that PDF also explicitly states that it is for non-commercial products:

https://developer.apple.com/homekit/specification/

Edit: also confirmed this in the WWDC video at 28:20 https://developer.apple.com/videos/play/wwdc2017/705/?time=1...

And let's say you come up with a really cool prototype? And now, you want to develop a HomeKit accessory for commercial sale. You need to join the Apple MFi Program. You need to join the Apple MFi Program and go through self-certification before you can begin your manufacturing or sale of your accessories. And this is really exciting.

bgentry··on Apple has proven me wrong about HomeKit
I'm confused. Despite this line in the article:

At WWDC in May, Apple quietly announced that it planned to relax some of those restrictions. The biggest change was the introduction of software-based authentication. In other words, you won’t have to replace your stuff to make it Apple-compatible going forward, and you’ll get HomeKit’s lauded security thrown in for free — provided the device maker actually goes in and implements it.

The linked HomeKit FAQ says that software authentication is only for non-commercial devices, and that commercial/shipping products are still required to use the hardware authentication chip. So Apple's own docs clearly refute the notion that non-HomeKit hardware can receive a software update to become HomeKit compatible.

Ikea Tradfri is an exception here. They plan to add HomeKit support via a software update, but they do in fact already ship their hardware with an MFI HomeKit authentication chip.

It is possible to add a software authenticated device to a HomeKit network, though you get warned when doing so. This is not new (though official support for it is). But it still sounds like commercial products can't just add HomeKit compatibility via software without breaking Apple's terms.

bgentry··on NTSB Issues Investigative Update on San Francisco Airport Near Miss
I would love to see the video that frame is taken from to watch the arc of the plane as it initiated go-around and missed a collision by just a few feet.
bgentry··on NSA Unlawfully Surveiled Kim Dotcom in New Zealand
> I seriously doubt the NSA was tasked with working a non-terrorism related piracy case, but that's me.

There are many examples of NSA and Five Eyes spying that have absolutely nothing to do with terrorism (though afaik none specific to copyright infringement). I linked to a handful in this other comment: https://news.ycombinator.com/item?id=14907667

bgentry··on NSA Unlawfully Surveiled Kim Dotcom in New Zealand
While I don't recall any leaks specific to piracy investigations, there were numerous leaks proving NSA involvement in cases which could in no way be described as relating to terrorism.

Off the top of my head:

- NSA surveillance of the semi-public Brazilian oil company Petrobras: http://g1.globo.com/fantastico/noticia/2013/09/nsa-documents...

- NSA tapped the phone of German Chancellor Angela Merkel: http://www.spiegel.de/international/world/merkel-calls-obama...

- NSA spying of Indian diplomats to uncover details about their nuclear and space programs: http://www.thehindu.com/news/national/india-among-top-target...

This article is a decent compilation of Snowden-related stories from the first year after his leaks: http://www.businessinsider.com/snowden-leaks-timeline-2016-9

bgentry··on Twist – Mindful Team Communication
You can open multiple windows at the same time: https://cl.ly/1C0q0C022o1X/Screen%20Shot%202017-06-21%20at%2...
bgentry··on Twist – Mindful Team Communication
I'm really impressed by the attention to detail for a brand new product.

I know they spent a couple years getting to this point, but I can really appreciate the quick, well-designed iOS app, and the native, non-Chromium / non-Electron Mac app that only uses 35MB of RAM and has no noticeable idle CPU draw. It's such a stark contrast with Slack and most of today's pseudo-native apps.

Impressive launch!

bgentry··on Twist – Mindful Team Communication
Here's their official launch blog post: https://blog.doist.com/twist-mindful-team-communication-28e8...
← PreviousPage 9 of 23Next →