HNHacker News
TopNewBestAskShowJobs

bcyn

172 karma · joined May 28, 2017

submissionscomments
bcyn··on Zuckerberg says employees moving out of Silicon Valley may face pay cuts
Because the Bay Area is one of the only places where the supply of potential employees is high enough to meet the company's demand.
bcyn··on Awk in 20 Minutes (2015)
What about awk makes that easier than, say, a Python script?
bcyn··on Awk in 20 Minutes (2015)
So, I don't use awk right now. This answers "how to awk" more than "why use awk" for me (understandable given the 20 min claim).

Does anyone have concrete, practical examples of use cases where awk made your life much easier?

bcyn··on Keystone Interface
Hide the API away too? You don't need to add another field to an existing API while in development, use a different endpoint altogether, to obscure the fact that it even exists. Then, part of the "keystone" can be merging it with the existing API.

This is very specific to your example, but I guess my point is it is almost always possible to design your in-progress state in a way such that new features are obscured.

bcyn··on Labour HQ used Facebook ads to deceive Jeremy Corbyn during election campaign
What makes you believe campaign managers would continue advertising on FB if targeting options were removed? They might explore other advertising mediums that are more effective ROI due to targeting.
bcyn··on Show HN: Introvert – Generative artwork to keep you off your phone
> I think users would feel incentivized to play this over any of the stupid casual online games with no positive real-life implications

With all due respect, I think this is wrong. People play games that are fun, regardless of real-life implications. If you can make a fun game that is socially-conscious, more power to you. But socially-conscious by itself does not make a killer game.

bcyn··on Show HN: Skynet Simulator
Can't you just leave the browser tab open until you're ready to come back to it? Not sure why you would need EC2 + RDP..
bcyn··on Facebook is giving $1k to every employee
It's helpful because it dramatically reduces stress on employees (due to guaranteed bonus without performance review) during a turbulent time.

I can't see why this is so hard to understand.

bcyn··on Facebook sues Namecheap
I should be more clear: I'm referring to secretly recording audio.
bcyn··on Facebook sues Namecheap
I can't speak for other platforms, but if you've ever developed apps for iPhone, you'd know this is pretty much impossible for FB to do.
bcyn··on How Popular Is “Sign in with Apple”?
Do you know of a source where I can read more about this (particularly about the stores disabling Apple Pay)? I'm interested in learning more. I was under the impression that any terminal that accepted contactless payments would also work with ApplePay.
bcyn··on What DoorDash pays, after expenses, and what’s happening with tips
This is classic Stockholm syndrome with commutes that I see all too often.

What's wrong with the commute? The fact that, if you didn't have the commute, you could do all those same things and also anything else you can think of. The opportunity cost is enormous.

bcyn··on Thank HN: You helped me get a new job
Congrats! That's amazing news!
bcyn··on Hopefully fair performance reviews for software developers
Of course, someone who's asking "Am I pretty?" is not as receptive to feedback as someone who's asking "What can I do to be prettier?"

Many people who seek feedback or reviews are in the latter camp.

bcyn··on IRS Reforms Free File Program, Drops Agreement Not to Compete with TurboTax
Assuming you're a traditional W2 worker, yes. But many people have other income sources such that the IRS doesn't know how much you owe until you report it.
bcyn··on React Concurrent Mode
> Apply separation of concerns properly

The disconnect here is the definition of "concerns."

One analogy is, imagine cutting a square into stripes. You're implying that there's only one way to do so, say, cutting horizontally. But you can easily cut vertically and still end up with well separated stripes.

The stripes, whether horizontal or vertical, are separated cleanly.

While you may see splitting by data fetching, view, etc. as the only way to separate by concerns, there are certainly others. The component model that has been adopted by many React users is one such way.

bcyn··on Ask HN: What's a promising area to work on?
> The biggest problem for iPads is every time there's a software update, it asks you to set a keypad password.

I don't think that's true. What iOS version did they experience this on?

bcyn··on Don't Call Yourself a Programmer, and Other Career Advice (2011)
While it's not solely the responsibility of the programmer, most of the responsibility should fall on the programmer.

It's a much more efficient system for the programmer to own UI/UX and for testing and QA to simply verify. In contrast the the programmer doing whatever, and leaving the full responsibility of UI/UX to the testing & QA cycle.

bcyn··on Rejected from YC (Again)
It's not a gimmick, it's just better user experience. Look at it through the lens of an average user rather than a power user ("power user" in the context of someone who is fluent with technical aspects of computers, not the domain).

I'm not arguing that the app itself has better video editing UX -- it may very well be that local apps win there. But for onboarding, no installation wins.

bcyn··on The “Windmill” Problem on the 2011 International Mathematical Olympiad [video]
I think he presents a line of reasoning that also helps to formalize why finding a convex hull works.
bcyn··on The “Windmill” Problem on the 2011 International Mathematical Olympiad [video]
They are all coplanar, but no three points are colinear. The first sentence just means that there are at least 2 points in the set.
bcyn··on Verb-Noun vs. Noun-Verb
The article is more about user experience than English language nuances.

Take one of your examples, you're much more likely to know you can "board" once you know there's a "ship." Without the ship as context first, only people who are already familiar with ships know that boarding is even an option.

This provides a poor experience in terms of discoverability.

bcyn··on Computer Files Are Going Extinct
> a metadata rich database approach

Can you ELI5 what this means? Very curious to understand ideas on alternatives to the traditional file-system abstraction.

bcyn··on When Chinese Employees Ask for Justice, Facebook Silence Their Voices
> Shouldn't the bar for transfers be roughly the same as the bar for initial employment? As in, give the candidates a similar interview process as if they were coming outside of the company into that team? Why would a transfer be based on the current manager, who is already disincentivized to allow the employee to switch teams?

1. This allows internal transfers to avoid reinterviewing. I think many would agree that going through the same interview process is not productive, especially with the types of interview questions asked at FB (predominantly Leetcode style). This reflects FB's standard hiring process for engineers, where engineers are hired into a "general" pipeline and not to a specific team, with the implication that once they pass FB's interview, they are qualified to work on basically any team. The performance requirements are there so that engineers cannot just change teams every time they perform poorly.

2. I think the incentives are intended such that the very worst case for a manager is being forced to fire an employee for poor performance -- it means the manager was unable to help the employee improve their performance. Having them transfer within the company reflects much better on the manager. In practice, this may not be true in all situations.

In the general / common case, this system is great for engineers in terms of internal mobility.

bcyn··on Serverless: slower and more expensive
Why does serverless make things a lot harder? I'd argue that the stateless nature of serverless actually makes it much, much easier to debug.
bcyn··on Frustrations with React Hooks
I agree it's not intuitive at first. As someone pointed out on Twitter (can't find link at the moment):

A good mental model is that the second argument to useEffect defines which pieces of state that effect syncs with.

useEffect(() => {}, undefined) // Sync with all state

useEffect(() => {}, []) // Sync with no state

useEffect(() => {}, [a, b]) // Sync with `a` & `b`

bcyn··on Frustrations with React Hooks
I don't agree with the author's statement that there are only two (very involved) solutions to the pagination problem (re: section titled "React relies on the order in which Hooks are called").

It can easily be solved by just setting the state in the event handler, since the state is included in the dependencies array for the fetch effect:

https://codesandbox.io/s/dependency-array-0u3sc

The answer to this question posed by the author?

> On line 23, the useFetch Hook will be called once on the first render. On lines 35 – 38, pagination buttons are rendered but how would we call the useFetch Hook from the event handlers of these buttons?

We can call `useFetch` again by triggering a re-render. This hasn't changed at all with the introduction of hooks: new props or new state still triggers a re-render.

bcyn··on Frustrations with React Hooks
useRef was designed for this purpose: https://reactjs.org/docs/hooks-reference.html#useref

If you ran into something that isn't quite covered by this hook, I'm also curious! Can you write a minimal example in codesandbox and share?

bcyn··on Frustrations with React Hooks
> For example, this useRef / useEffect combo mystifies me even now: https://stackblitz.com/edit/react-ts-zhvuha

On this particular point, the reasoning is that refs are meant for values that don't need to trigger a rerender[1] -- an escape hatch, rather than something you reach for by default.

In that sandbox, you can accomplish what you mean to accomplish by using state rather than a ref.

[1] https://github.com/facebook/react/issues/14387#issuecomment-...

bcyn··on Frustrations with React Hooks
> You can't create abstractions where a hook calls another hook.

Not sure if I understand you correctly, but isn't this the purpose of custom hooks? You should be able to freely call hooks within other hooks.

← PreviousPage 2 of 3Next →