skysight-inc/HackerNews huggingface dataset:
If you have nothing to hide, why do you need privacy?

You can leave an employer less than amicably, and not have done anything wrong. Even Amazons claims about the firing are just that, claims. They haven't posted any evidence that it occurred, or that it was against their practices. Its entirely likely that based on their culture, what he was doing was silently encouraged, up until the point they needed a scapegoat.

What is does tell you is that if you work at Amazon and ever disagree with them, they will burn your reputation to the ground, and you will have no real recourse. Thats a giant, flaming "go fuck yourself" to any potential hires in the future.
Congratulations then! Hope you enjoyed writing code in Go.
When it comes to sports 'talent' is 99% of the equation. The problem is being in the top 1% is still a long way from success. When you might get 1 success per 100,000 that try, we just don't have words to describe how hard that is.
For those people looking at the guy moving around by shifting in his seat and thinking "I want one!", it looks like this Segway modification is the closest thing you can actually order:
http://suigenerisseat.com
> Linux is not an ancestor of any flavor of Unix.

I don't think I suggested that it was.
What a weird career trajectory. Smells like revolving door corruption to give Amazon privileged access to government.
Are we confusing age and culture with stupidity?

A stupid person wouldn't be able to adapt, or might have trouble adapting from one tool to another. That's a stupid person. Likewise a stupid person might think that an organization that was shipping successful products and making money was making a big mistake by not migrating off of svn.

Stupid is stupid, age is a different dimension. "culture" especially regarding tooling like this is sort of a cop-out.
> So we have to make endpoints around every possible subset?

As I was reading this I was trying to figure out how he missed the point so badly, I think your point does a good job of that.

The OP might benefit from adopting the strategy of when you see someone saying something crazy/stupid, stop and think before writing an inflammatory blogpost.
I too, am annoyed by those that harp on about /noun/verb ordering and semantics for RESTful URLs. I bite my thumb at them.

But REST is really dead simple awesomeness, when it fits into the activities you're trying to support. Reading blog articles, forum posts. Sure, why wouldn't you?

Complex analytics joins that converge NOSQL data and cc payment identities over time, for advertisers. No. Not for that.

Abortions for some, tiny flags for others!
Detect Memory Leaks with LeakCanary
From the book:

"But it has comparatively few features and is unlikely to add
more. For instance, it has no implicit numeric conversions, no constructors or destructors, no
operator overloading, no default parameter values, no inheritance, no generics, no exceptions,
no macros, no function annotations, and no thread-local storage."
It's interesting to read the article with his presentation in mind. From a technical perspective, you should be able to just swap Netflix/Falcor in for Facebook/Relay in this article and have the arguments make about as much sense (They are both graphQL adjacent approaches to APIs that explicitly abandon RESTful principles). However, it seems to me that the article would be way less persuasive or interesting if you did that, because a lot of the intended force of the article relies on the premise "Facebook is evil", rather than the technology at hand. However, using "Facebook is evil" to prove "This thing that Facebook is doing is evil" is way less interesting than showing the latter just from technical details.
Right. Any runtime behavior can be altered by observed state from outside the phone.

There's even a paper on intentionally inserting security flaws into your code and then exploiting them from your own server to change execution patterns:

https://www.usenix.org/conference/usenixsecurity13/technical...

Ultimately, you need to enforce access control instead of just trying to detect problems a priori. Apple's sandbox is a great start to that, and I expect they'll keep improving it to block apps like these.
If I don't know who you are, "PLGRM presents" is just noise and IMHO distracts from the actual title/thumbnail, which might capture my attention. Worst case, something shortens it to fit in a box and a user only sees "PLGRM presents 'The..." and the title is completely lost.

If the name means something, I'm hopefully already following you on Twitter/YouTube/... and get info that way, or recognize the channel name. Or if you want to keep it in the titles, put it at the end. ("$Title, by PLGRM" or something)

Also Twitter: The last few tweets ("I just added $video to $group on vimeo") are IMHO useless or even annoying, but what I see before looks good: eye-catching picture, good teaser-text, ...
It's not an election. "Clear majority" is an extremely low bar for "job satisfaction", especially when you consider that over the years, the happy portion vote every year, while many of the unhappy people depart.
So you are saying that if an employee tells the public something about an employer that is false, the employer still can't respond to the public with something about the employee that is true?
It may have been inappropriate to "share" some of the evaluations, even though they were so very vague and non-descript. But, it's also possible that the employee voided any contract between themselves and Amazon by speaking to a third party (NYT) about the inner workings of Amazon.
These people have been attacking Facebook for a long time now. First React, and now Relay/GraphQL. Their technical arguments were never strong. Claiming that existing technologies eg. DOM, HTTP/REST are good enough is not convincing (disclosure: I very much so buy Facebook's arguments).

But do they have a point in saying that Facebook is trying to control the web stack? I believe that Facebook are working to make the web better as a whole, but is this naïve? A better web for everyone helps big players like Facebook. Hopefully one day Facebook doesn't slowly start to close off these huge OSS projects.
Ya when I watched I pictured the user being able to carry their baby while moving down the street or in a mall.
Looks like you're right. Sorry. I must have confused you with some other commenter I read on HN today, it's a mistake on my part.

Having admitted this much, I'm still waiting for your explanation why you wouldn't "consider projects written in CoffeeScript JavaScript projects". I'd still downvote you for stating such a strong opinion without providing any rationale.
Should privacy really cover what someone else (in this case Amazon) thinks about you? These aren't medical records or other protected information.
Because as soon as Apple publish something as an API, they can't change the method because third party apps could now be depending on it. As long as the API is private and undocumented, Apple can change the method from release to release as they see fit.
Question for the Go experts out there: does it make sense to buy this book to learn Go or are there better tutorials/books?
I wish there was a simpler answer, but a good way (which I've seen posted several times here) to get remote jobs is via referrals or word of mouth.

My first job was to build a simple website for small business a couple of years ago, and now I get calls for things like sharepoint deployments and ecommerce sites. At the moment I have more than I can handle and have to turn down gigs.

You've got to build a reputation with your first project and sell yourself hard.
"I, the dude who made the API, sent you a 404. I sent you a 404 because that's all I wanted you to know. What actually happened is none of your business."

As an engineer working for the same company, I very much want to know, because I want to know if I did something wrong on my end, or if something is broken on your end.
I did some back-of-the-envelope math for soccer and both for Canada and England, given the number of kids playing and the number of professionals, the odds of going pro is about 1 in 10,000.
How do you get them to demonstrate successful problem solving and coding and design abilities without seeing them code, then? You're right that it's kind of a silly test, but the problem is that it's a key part of their job and there's no other way to check for these skills, that I know of. And there's also plenty of people who have the experience on the resume and just can't design or code much. It's hardly like the whiteboarding is done for no reason - there are plenty of people it weeds out.

A much better analogy would be asking an F1 mechanic to look at a car you had up on a lift. Sure, they don't fix Hondas all day log, but if they can't see obvious problems and don't know how to solve those obvious problems, it would be a serious red flag.

Even in your silly example, you'd be smart to question it if the mechanic couldn't label a lot of parts they should be able to label, and it would itself only be a small part of the interview.
Interesting to see that the direct lineage from Pike's prior languages and CSP experiments is reaffirmed. I wrote about this here earlier, with some notable disagreements in response: https://news.ycombinator.com/item?id=9711639
Trifacta Wrangler: A Free Data Wrangling Tool on the Desktop
Going into the article, I was expecting some huge Windows insult, but all I found was this quip:

“Balloon chasing systems also use various hacks used to connect the modem software to mapping software, which in the case of the Horus balloon chasers runs on this legacy operating system called “Windows”. Yeah I’ve never heard of it either. Used to be popular apparently, and I’m told it’s good for games. However it would be nice to do everything in Open Source.”

Honestly, that seems pretty tame to me. Certainly not enough for me to stop reading the article. Perhaps that may just be because I don’t have as much sympathy for Microsoft anymore though, after they released Windows 10.
I have no idea what they will specifically say regarding calling C from Go, but the table of contents says that part is only going to be about five pages.

I really wish they would beef up this portion of the book.
Author says "they made a series of claims about why REST is broken" - without making "claims" be a hyperlink to those original claims. So this whole piece lacks semantic context and is therefore a fail.
What's a "journalist article"? Medium is a blog host, not a newspaper. Medium is just paste.org with a better UI.
In my opinion, an LLC is reasonable for this sort of thing. I'd see a regular corporation as overkill, and a sole proprietorship not offering enough benefit to be worth doing.
It's always amazed me that they don't just give you a laptop to code on.
To those in the Go community:

- What is Go well suited for other than network programming?
- Why might one decide to write the backend API of their web app in Go, compared to say Grails, Python etc.
I appreciate any project that makes its strengths and weaknesses very clear and documents its consistency semantics.

Reading around[1], it looks like close-to-open consistency means that all writes must be flushed before the close() call returns, and all subsequent open() calls to the file must see the changes. IO may otherwise be buffered or cached by the FS.

1] Best source I found were these lecture slides: http://www0.cs.ucl.ac.uk/staff/B.Karp/gz03/f2011/lectures/gz...
Do something about housing costs? Living there with a family is an extremely expensive proposition. I suspect a lot of people my age (40) simply don't want to be there. Here in Bend, I live 10 minutes from work by bike, have all kinds of great outdoor activities year round, have good schools for my kids, and the median price for a house is 350K - which is actually kind of expensive for Oregon.
I didn't click into the article, but into these comments.
The point of the article is that REST, as originally described, DOES NOT encourage creating a CRUD interface for every single resource. That's very typical for the simplistic Rails-style of REST, but that's not the original intent.

And that's just the point and why those of us who care about web-friendly API design get a bit "zealous." Imagine, if you will, that someone's complete argument about the pros and cons of JavaScript were based on pre-node, hell, pre-JQuery use cases. Wouldn't you expect some developers to be a bit upset that you're mischaracterizing an entire programming language?

Keep in mind, a lot of what REST is known for today came to pass as a backlash against XML-deathstar-style architectural designs for web services over 10 years ago. At the time, plenty of folks were simply porting ideas and designs from CORBA-style RPC architectures over to the web. While this is possible, you lose all sorts of advantages of an internet-centric design. And that's really what REST is about: designing applications that work with the web, not against it.
Thank you! It's not a general purpose filesystem but I don't think that has to be the case to be useful. I am lazy and I want to do as little POSIX as possible.
For those points to be well reasoned, one would have to assume that no one at Facebook has tried those things, though. If they really are integral to what REST is, then it doesn't really make sense that no one there knew what it was.
Nice to see Oberon getting its fair share of credit too
Automation of individual package deliveries can remove exactly that problem.

Your phone pings you and drone says "We agreed 3pm. That's 5 minutes from now. Still good? (Yes/No). Yes. (4 mins 45 seconds later) drone says: "I'm waiting for you outside. Can you come out to meet me?"

Alternatively, invert the waiting process. Amazon agrees to a 24-hour period starting tomorrow during which I can demand a 15-minute delivery by pressing a button. For very high-volume items this period could be indefinite.

It remains to be seen if this is economically feasible and if we can tolerate hundreds or thousand of these things buzzing around. But you won't be waiting for the man all day.
For crypto-primitives, you usually want them to be constant-time. This is basically impossible to do in an interpreter or a JIT, indeed optimizing compilers can and will optimize contant-time operations out so inline assembly is commonly used.
A well-designed DSL should be self-documenting and obvious.

ROFL. You're adorable. :)

You're also conveniently ignoring the maintenance required on the DSL itself. DSLs are, themselves, code, and code must be tested, updated, will likely experience regressions, etc.
Why do the floors of the subway have to be much so worse than the floors of Grand Central Station, or for that matter, the ground in Bryant Park? All are open to the public and incredibly heavily trafficked.

The only difference is funding. NYC subways remain woefully underfunded. There's no big secret of what it would take to fully fund a clean subway system. The answer is $100 M a year [1]. Now, should the capital infrastructure cost less? Of course. But there is no reason for the economic arterial system of the whole region to remain so filthy in the meantime.

The only potential revenue source that could credibly provide the MTA with the money it needs to bring all stations to a "State of Good Repair" [2], install valuable upgrades like train locator screens and sliding platform doors, and keep the stations clean is a congestion tax like Move NY [3].

A congestion tax would also have the benefit of making Manhattan a much more walkable and ridable city and would even make rush hour taxis move faster. But until there's political will to implement a congestion tax, I don't expect any meaningful improvements in the subways.

[1] http://secondavenuesagas.com/2008/09/30/cleaning-the-system-...
[2] http://secondavenuesagas.com/2015/09/10/cbc-mtas-state-of-go...
[3] http://iheartmoveny.org/
I remember an article a few years ago with a similar dispute -- something about advertisement placement abuse, and overcharging a client (a credit card company / bank?) to the tune of $million for placements on Kindles(?) that customers never saw, and a dispute as to whether it was a lone wolf, or an executive who pushed the lower-level person to do it.

Ah, here's the story:
http://www.businessinsider.com/amazon-employee-lawsuit-kivin...

http://www.geekwire.com/2014/former-amazon-employee-ends-hun...

https://www.google.com/search?q=Varghese+amazon
The caveat is that goofys is subjected to the underly S3, which if you are using Amazon is only eventually consistent (http://areweconsistentyet.com/)
This book hasn't come out yet. Without having read it, I'd probably recommend it when it does, but for the time being, the online Go tutorial[0] is a great introduction.

[0] https://tour.golang.org
The difference is that's a standard embedded DSL (another excellent example is C#'s LINQ).

Inventing your own alien syntax is a recipe for long-term code maintenance disaster. Anyone who's worked on a codebase that's lived longer than a decade has likely experienced this pain firsthand.
Is this a thing? Having Google index your REST api?
While there is a lot of truth in this, there is also a common flaw in this presentation:

Every success has a significant element of luck involved. While nearly everyone at the top of their game has worked harder than many of their peers, it's not true that everyone who worked as hard as they did has "made it".

In a (particularly) full contact sport, part of this comes from injury, obviously - and it is a very real possibility for anyone trying to get there.
Vine co-founder among those laid off by Twitter
Same tab issue on latest chrome osx
Agreed, the codes are a crap-shoot. We are working on a redesign of our API and I've pushed for always returning a 200 with a defined JSON structure of something along the lines of:

{
"status": true
"data": { ... }
}

for success and

{
"status": false
"errorCode": 123,
"errorMessage": " ... " //Only shown in dev/debug mode
}

for failures.

We haven't nailed it all down yet but there was no way I was going to do HTTP status codes for some things and some JSON errorCodes for others. It needed to be all or nothing and since HTTP codes obviously wouldn't satisfy it was 200's everywhere...
Right, you shouldn't feel like you are "sending a SQL query to the backend" as OP suggests. An API is an abstraction layer, you shouldn't have to know anything about the database to use it.
Looks like the demo hasn't been update to use io.engine.clientsCount

https://github.com/socketio/socket.io/blob/master/examples/c...

Maybe make a pull request?
Highest Crimes per Neighborhood in SF
> REST encourages creating a CRUD interface for every single resource.

But it doesn't enforce it. You can always limit a resource to just GET. The joy of REST is that if you later need to 'crudify' a resource later on, you can add the necessary verbs on whichever resource you want.
> The problem when using REST "correctly" is that the way your objects interrelate is not necessarily the same way on the backend as it is on the UI. So you end up creating custom REST endpoints for complicated UI that does not map directly to how your objects are related in the database.

I see this as a good thing. In my mind, an API is made to be consumed from several different client, so it should make sense on it's own and not try to follow how objects are mapped onto one UI. However, it's also frequent to include "macro-endpoints" sided with regular routes to simplify a succession of common simple side-effects (like register and then login). That's not "correct" REST, but not a bad thing either.
The title wasn't clear ('personal transportation' made it seem - as others have mentioned - in the class of personal transportation that might be occupied by Segways etc), and I had limited (read: no) time so I did not get to watch the video.

I mean, it looked like a wheelchair to me, but hey it's the 21st century, sometimes it feels like all bets are off. :/
One of my co-workers preordered this, I hope to skim through it if he brings it into the office.
Which isn't relevant with regards to APIs.
I feel like I've been disconnected from sailing across the Atlantic for my whole life.
Your last two sentences are hand to understand since you seem to be conflating the internet with the web. They're not the same thing.
> For those points to be well reasoned, one would have to assume that no one at Facebook has tried those things, though.

Not quite. These points were well reasoned given the information Facebook has made public. If they have tried those things (which I fully expect them to have done), all that means is that there is an answer to these challenges.

To clarify: I expect that Facebook has a rebuttal to these points, however my guess would be that the rebuttal will be more Facebook specific than the motivation for these technologies that they specify publicly.
You are offended because he makes fun of a proprietary operating system that probably fits the task really badly and himself creates an open implementation?

I could not agree more with the author. From the text:

> Closed source and proprietary chipsets are nasty, a glaring problem in a cool geeky field that is otherwise open source. It’s got to be fixed.
"What type system feature does Golang have that was invented post 1990?"

Popularity and a set of libraries useful enough to do real work in it unlike anything else I know with structural typing.

What feature does Rust have that wasn't invented in some academic paper by the 1990s if not sooner?

An advance doesn't much matter to people doing real work if it doesn't come coupled to a practical language and a set of libraries that enables real work. This is sad in a way, because "the set of libraries that enables real work" bar is going up every year, which makes new languages harder. See also "Why did Haskell need 15 years to take off?", the answer being "that's when people started putting together practical libraries" among other things.

In 2025, when $PRACTICAL_DEPENDENTLY_TYPED_LANGUAGE is finally taking the Hacker News world by storm, I will not take kindly to suggestions that we could have and should have been using it in 2015 or earlier. No, we couldn't and can't. They're not useful yet, no matter how theoretically beautiful they could be.
Let's say I'm trying to find the top 10% of software engineers and I'm willing to pay for it. I'm interviewing a 55 year old candidate. What kinds of questions should I ask and how should I evaluate if they are really that good? (Let's say I'm hiring at Slack, to make it more concrete).

I agree with your sentiment but struggle with the question above.