Recent submissions

Comment · 9 years ago
Clinton did not resign, nor was he removed from office. Are you thinking of Nixon?
Comment · 10 years ago
Haskell's aeson library, which is probably the most popular way to use JSON in that language, doesn't require any of this complexity or typecasting ugliness. It can derive a typechecking parser for a particular JSON format from an ordinary Haskell data type. Your type becomes a JSON schema, and as long as the JSON you're parsing conforms to that schema, the parsing just works with a single function call.

The problem you're pointing out is not a problem with statically typed languages. It's a problem with bad languages.

Comment · 11 years ago
`zip toss toss` only produces 2 of the possible outcomes. Try `liftA2 (,) toss toss` instead.
Comment · 11 years ago
The canonical Go style eschews underscores in package names.
Comment · 11 years ago
Comment · 11 years ago
Well, you can always assign a different reviewer if your initial choice is taking too long. I usually try to check with my teammates to see who has time for a review before sending them my code, at least if it's something that I want to get submitted quickly. That ensures that I pick someone who will look at it sooner rather than later. Sometimes the specifics of the process require someone who is not on your immediate team to give their approval, in which case delays are more likely.

I'm an SRE, which means most of the code I write isn't directly user-facing, and thus isn't normally subject to hard external launch deadlines. That means I'm rarely rushing to push my changes through on a tight schedule. If there's a production emergency and I need to make an urgent change to avoid or mitigate an outage, there are escape hatches at our disposal to temporarily circumvent the code review system when no one is immediately available to do a review, but the need for that is pretty infrequent.

I rarely find it frustrating. On the contrary, I really appreciate Google's emphasis on code quality, even though it does come at the cost of some agility. I used to work at a company where the implementation of code reviews was generally resisted, and though we did get new code out the door faster, we ended up with some real maintenance nightmares as a result.

Comment · 11 years ago
It's common at Google to have a few projects cooking that you move between. One reason for this (though I doubt it's the sole reason) probably has to do with the mandatory peer review process for all code, which can cause delays in getting your code submitted if your reviewer's schedule doesn't line up well with your own. Instead of introducing a bubble into your pipeline when that happens, it's nice to have a side project you can hack on for a little while until you get your code review feedback.
Comment · 11 years ago
He's a Tech Lead Manager, or TLM, which means he's an engineer who also manages the team he's a part of. In some cases, dev teams have SRE counterparts who take the pager responsibilities, among other things. But not all services at Google have SRE support, and for those that don't, the developers themselves are usually on call. That includes the dev team's TL, or TLM, as the case may be.
Comment · 11 years ago
There's some info here: http://www.reddit.com/r/haskell/comments/2pnjdk/is_overloade....

tl;dr: The patch worked but was messy/overly complex, so it needs refactoring before it's merged.

Comment · 11 years ago
Sadly, OverloadedRecordFields won't be making it into 7.10.
Comment · 12 years ago
Agreed that the back button issue was annoying for a long time. Fortunately, the fix went live last week!
Comment · 12 years ago
It doesn't integrate multiple accounts into a single inbox, if that's what you mean. It works the same as Gmail in that respect.
Comment · 12 years ago
It's too different from Gmail to be integrated into it. It coexists with Gmail so that you can choose to use Inbox and its "opinionated" workflow, or not. Users who like their personal Gmail workflow probably wouldn't appreciate having that flexibility taken away if it's not aligned with how Inbox wants you to work.
Comment · 12 years ago
> In java or php, you, as a developer, can never know wether the functions you are calling will throw an exception.

That's what checked exceptions are for in Java.

Comment · 12 years ago
That would be difficult, since coastlines are essentially fractal.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton