skysight-inc/HackerNews huggingface dataset:
Ask HN: Why GraphQL, Interview with Sean Grove OneGraph (YC S18), Your Questions
Hey, tomorrow (July 1) at 1:00 PM CT, I'll be talking with Sean Grove from OneGraph (YC S18) about GraphQL. We will discuss the evolution of GraphQL, the recent developments in this area and then compare and contrast GraphQL with other ways of creating APIs. There will be some cool code generation demos and we may even talk about programming languages such as Reason and OCaml.

If this sounds interesting and/or you're wondering about GraphQL for building APIs, let me know your questions. I'll happily incorporate them into the discussion with Sean! This can be anything related to GraphQL, APIs in general, code generation, type systems, Reason or OCaml programming languages.

Link to the event description: https://zaiste.net/interviews/3-why-graphql-sean-grove-onegraph/
YouTube Link: https://www.youtube.com/watch?v=pyHDMchNb6U
The movie could have been great if it was oriented around the female passenger waking up and not knowing what had already happened before instead of the audience knowing everything linearly

https://www.youtube.com/watch?v=Gksxu-yeWcU
Because you have a limited amount of time to invest in certain things in life, and it's better to invest that time independently of your work environment. Not saying that you can't ever have it, just that some day will be your last day at wherever you are, and those relationships don't always follow you to your next job.
It's extremely easy to "beat" the standard library offerings by incorporating what's unique and specific to your situation. They have to be super generic to be in a standard library. Of course, don't re-implement a completely generic list data structure. But implementing a particular kind of dictionary that takes advantage of assumptions that are true for your use case (but not true in general) and is custom tailored to your environment is extremely valuable.
Let's say that Acme is a low-down, dirty-rotten, rip-off con who has been usurping somebody else's trademark to make a quick buck with counterfeit merchandise.

Why would Amazon merge the reviews of that product with the reviews of the authentic, high-quality, reputable Chinese vendor's actual product?

Why does Amazon allow a "color" to point to a product from a completely different seller? Why does Amazon allow product aliases at all?
INSERT, DELETE, UPDATE will all fail in the readonly regions. This is normal for Postgres read replicas, we're not doing anything special here.

What we're doing works identically to a vanilla HTTP based app. Requests that modify the DB always run against the primary database. Requests that perform reads _then_ modify the DB always run against the primary database.

HTTP services all have an underlying eventual consistency problem. If you are viewing a page with a database ID on it, then click delete for that ID, the record could be gone before the time the request hits the database (because someone else might've clicked while you were reading).

Does that help? I think we didn't describe this well enough, it's way simpler under the covers than you might expect.
> What's the rush to eat in restaurants and not wear masks?

If you think "we will be dealing with covid forever," how much longer do you want to delay the return to normal?
FTA: “The new battery uses a tabless design that promises to be 35% smaller than conventional batteries, which promises to be cheaper, safer and more powerful.

According to Tesla, this means the battery offers five times more energy and six times more power, all of which comes together to offer 16% more range per kilowatt hour of juice.”

I don’t follow that math. All else being equal, 35% smaller means about 50% more range if they go for the same size battery. If it’s only 15%, they must make the battery smaller by about 25%.

That’s fine, but where does the “six times more power” come from. What do they compare that with?

Can’t be current cars, since range would then be six times as large, and they wouldn’t want to build such a car (better build a cheaper car with a bit less range, don’t want to compete with own more expensive models)

(It might work out mathematically if these new batteries were incredibly heavy, but the article says it’s lighter)

What do I miss?
Sam Altman wants to give you crypto in exchange for scanning your eyeballs
Any idea how anyone who never got any meaningful advice from their parents can learn these things?
It's all in the execution. If all the QR code does is send you to a PDF file of the printed version, without any text reflow or responsiveness to the screen size then I agree, it's a terrible experience.

If it points to a website properly designed for multiple screen size, and the WiFi works well without too many hassle or a mandatory invasion of privacy (login to Facebbok to access the WiFi network? No thank you), then it can be a great experience. The restaurant should make sure to have at least a couple of printed copies in case someone can't use their phone, if there's a website outage, etc.
There’s no reason to do that, though. You can set your MX record to whatever you want for your domain. Why would you set yourself up to have to change your email? Not to mention advertising that your email is on a raspberry pi. Somebody will probably come along and DDOS that thing just for fun.
Side effects go to the border of the app. You keep track if for some message X you have sended the email, so you garantie that you send it once.
There is a quantitative difference between a folder with some HTML + other assets and a project that requires a specific v8 runtime wrapper and its own build pipeline to generate the aforementioned artifacts.

My grandmother knows how to (and does) use the former. The latter guarantees I'll always have a job.
Altai Balance Review, work or a scam?
Ask HN: What is the worst library or API you have used?
What is the worst library or API you have used?

Not to bash on libraries or APIs but I think this topic is interesting in terms of discussing to learn what makes an API or library good/bad from a user perspective.

Inspired by this post discussing what makes a good library: http://cbloomrants.blogspot.com/2015/09/library-writing-realizations.html
Don’t let facts get in the way of a good metaphor.

There’s nothing remotely disgusting about making sausages, but people say “Laws are like sausages - it’s better not to see them being made.”

I stopped correcting them long ago.
It seemed like you and the person you replied to were talking past each other. And now we are.
> The funny thing is that precisely what got me into Go was replacing an Erlang system that was constantly falling over despite quite considerable efforts

As the meme goes, Will Ferrel gets a deep puff of smoke from his cigarette and says "I don't believe you".

I agree that Go has better type system and Erlang/Elxir/BEAM languages in general. Absolutely. But I think you're showing bias and were already looking for an excuse not to use Erlang. That's completely fair but I think you are non-fairly misrepresenting the exact merits of the decision.

> This is part of what I mean; Erlang doesn't have access to special CPU instructions that make supervision trees possible. They're just code.

Everything is "just code", dude. Yours is no more an argument than technologically advanced aliens visiting us and exclaiming "How come you don't have super-alloys that can withstand atmosphere entry without losing atoms? It's just chemistry!"

---

I am getting the vibe that you're one of those super-programmers that can tinker with everything and the computers have no secrets from them. That, or you are bragging too much.

And you should know something else -- I am not a huge fan of Elixir these days. I work with it for 5 years but it's showing some cracks and lack of community (and core team) attention in critically important areas for the ecosystem's advancement -- like compiler instrumentation, or tooling to modify code in an automated way -- not to mention the dynamic typing. I get it, it's far from the magic many fans are making it out to be.

But you are discounting very real advantages in a very dismissive manner.

For the record, if one Rust runtime gains most of Erlang's OTP capabilities tomorrow then I'll switch to Rust for 100% of my work next week. But nobody has surpassed OTP's capabilities.

Finally, I'll also agree that we don't need 100% of OTP -- that much we are in complete agreement on. But as you yourself pointed out, cancelling running background threads is still mostly an unsolved problem so just scoffing at a technology that has mostly achieved that is a very uncharitable take that makes me question your other arguments and wonder if they are not emotional arguments.

I am by no means a super-programmer. On my non-humble bragging days I'd say that I'm only very slightly above average. But I've tried to duplicate OTP in at least 3 other languages and I failed miserably every time (Java was one of them). So yeah, don't just say "meh, I can invent OTP everywhere else". No. You really can't. If you can, open-source this effort and I'll donate, I promise.
It's my understanding that they are largely a consultancy now, helping their clients move things onto their cloud products. I imagine there is quite a bit of vendor lock-in. Seeing as the need for cloud migration is ever-growing in every single industry, I don't see IBM becoming totally irrelevant any time soon. But they are definitely past "Day 1".
They typically measure the dev part of DevOps.
The unfortunate truth is that as soon as someone in the process wants an estimate, rather than wanting to see delivered value, you've already got a situation in which "agile"-style planning is on the back foot. Aside from any business value there may be in the estimate itself, insisting on being given one is a political move designed to put software delivery organisations on the defensive: the framing is that IT is a cost centre, not a value source. That's so common that it's easy to forget that it's not the only choice.
Did you read the book? The limitation was that it takes 6 months+ to get there. Assemble a mission from scratch in weeks - it'll still take you six months to get there.
I work at Socrata, and I've skimmed splitgraph and it looks pretty neat. How do you all deal with pushdowns or query rewriting in general when the target datasource doesn't implement the functionality your user writing real sql is trying to use? Does it explode or take forever, because it doesn't look like you're storing copies of everything in Real Postgres?

We expose a pretty limited subset of sql through our APIs, and an even more limited form to public APIs, so I'm interested in how you're doing things providing joins to your users. "It exists but is super slow" is a reasonable answer as well :)
The whole "don't trust employees to do the work" thing is an interesting statement. It reveals a lot about how the business measures and keeps track of its own performance.

Just how much was being done in the office pre-pandemic? Those businesses likely didn't actually know. well they sure looked busy, right?

The abuse aspect is also interesting. Friend of mine got verbally abused. On zoom video with audio. While it was recording. So that was an experience when HR got involved.

Overworking is another aspect. That is still being explored. Plenty of scope for that to blow up as well.
This doesn’t gel with the moderate exodus of brainpower out of California.
>Also, it's a crime to spend 30 pages of 170 on how to write comments.

I strongly disagree. Software engineering will be greatly improved, in my view, when comments are viewed with the same rigor as code. In code reviews, we've finally gotten to the point where we don't generally approve code unless there are unit tests to accompany it. Codebases will be even stronger when PRs and code reviews require inclusion of updates to the corresponding comments and docs and are examined with the same care and attention.

Important problems disappear when comments are kept in sync with the code: 1) technical debt goes down, 2) it's much easier for new devs to get on board with the code base, 3) refactoring is facilitated.

The problem is that everyone has different ideas about comments should be. Many devs prefer a minimal approach, others a very talkative approach, etc. This book is the first to lay out a systematic approach to commenting with an explanation for the preferences the author espouses. Nobody else does this to my knowledge.

Those 35 pages are gold. And if all you take from the book is a deepened appreciation for comments and a systemic approach to commenting, I contend you will have greatly benefited.
DirectX 1.0. Terrible documentation, horrible complexity for doing basic things. Took a week to get a triangle to show on the screen.
Is this the direct result of Microsoft owning GitHub or would they have been able to do it anyway?
A big thank you to the author for open sourcing this - I've been playing with this to implement a largish static site (11,000 pages) and (as a definite non expert) have found it relatively easy to understand and use - and it's lightning fast.

Just one comment: found implementing a Svelte Leaflet Map component a bit of a struggle - an addition to the docs on this would be very useful.
Why not write a very small script to give yourself what you want? This is the web after all, it is yours to manipulate & work as you wish! This is what makes the web different, better!

Here's a sample UserScript I scratched together in 3 minutes: https://gist.github.com/rektide/6d0af312d03482a7f3593f8fee7e...

// ==UserScript==
// @name Url Filterer
// @namespace Violentmonkey Scripts
// @match https://news.ycombinator.com/\*
// @grant none
// @version 1.0
// @author -
// @description 6/30/2021, 5:27:00 PM
// ==/UserScript==
const BANNED = [
"medium.com",
"bariweiss.substack.com",
"yoyodyne.example.net",
"klein"
]

// see if a link element includes the banned text
function isBanned(link) {
for (let ban of BANNED) {
if (link.textContent.includes(ban)) {
return true
}
}
}

// remove the 3 rows that make up a HN link
function drop(link) {
const row = link.parentNode.parentNode.parentNode.parentNode;
row.nextElementSibling.remove();
row.nextElementSibling.remove();
row.remove();
}

// find all links, filter to only banned ones, then drop them
[...document.querySelectorAll("span.sitestr")]
.filter(isBanned)
.forEach(drop)

Alas of course Google is actively killing userscripting extensions & lots of other really neat extensions, in a new security crackdown & desperate grasp for control & certainty. Lame. This tiny little script will need to become a fancy extension unto itself with a lot of boiler plate & crap, need a build processs. But for now!
Did they hire their own consultants to do it?
Then as a Basque I would die on some heat waves in August happening every decade or so.
Its just fine for the NYT. Actually, I'm surprised what NYT don't recognize mostly peaceful Iranian cleptocratic junta as oppressed and doesn't come to their defense. Not fair, NYT loves HAMAS but not their sponsors!
Here's the code: https://github.com/UoMResearchIT/Gryphon/blob/main/gryphon.p...

Based on a brief read, it looks like the "breakthrough" is discarding the two measurements in a point group that are the furthest outliers from the mean. That can't be it, can it? Because that's an afternoon's work for an intern, not a breakthrough.
If they insist on features and delivery date, that usually leaves quality/reliability as the thing you can adjust.
Yes and no. Lots of exceptions exist.

But you can look at data like stuff from the Census Bureau and see detailed comparisons of commute times in different locales that give you a sense of the variation.
>But implementing a particular kind of dictionary that takes advantage of assumptions that are true for your use case (but not true in general) and is custom tailored to your environment is extremely valuable

This requires way more knowledge than I got from my undergrad classes and in comparison learning that part is trivial forward to the hard part that you can pick up in "refresher" part of a book/article on the topic.

I doubt your average undergrad could do it so I disagree with the extremely easy part as well (heck I doubt they could write a bug free version in the first place, even less a better performing one) that a correctly selected std lib container. Well at least not without researching and testing a bunch at which point the background knowledge is trivial in comparison.
To be fair, I think they're basically orthogonal problems. I'm not a Musk fan - I think his public statements about autonomous driving are horse shit, but I don't think any one working on a hatchback Tesla would be better focused on self-driving, and I don't think Tesla is resource constrained. At this point if they wanted to put more resources into self-driving they could just hire more people into the self-driving team, paying for it through issuing stock or debt at their ridiculous current market value.
No. Pretty messy in-house solution.
Bring back Profs
10.1 was kinda free https://arstechnica.com/gadgets/2001/10/macosx-10-1/2/

"Mac OS X 10.1 was released on September 29th, 2001, but that date depends on your definition of "released." Update CDs were handed out for free after Apple's keynote speech at the Seybold publishing conference in San Francisco. People who did not attend Seybold have several ways to get the update. Starting on the 25th, free update CDs are being handed out at Apple stores and some other retail outlets. This free update does not include the developer tools, but those can be downloaded by all ADC online members (free registration required) from Apple's web site. Finally, owners of Mac OS X 10.0 can order a full update containing a Mac OS 9.2.1 CD, a Mac OS X 10.1 update CD, and a developer tools CD through Apple's Mac OS X Up-to-Date program at a cost of $19.95 (plus state tax). The 10.1 update is not available for free download."
It's true! We designed this specifically because it works with GraphQL. The exception->replay works by default, and it's easy to send early replay command on GraphQL mutations.
are there still security updates for those, making them safe to use directly exposed to the internet?
I love Schwab but agree on the security front. They tried to push everyone to use their voice auth for phone verification. I want more security not less lol. I remember several years ago, they didn't support special characters in passwords. Hopefully that has chanced.
Because random tossing is guaranteed to not come with a bias, whereas tossing based on keywords may introduce negative biases. Example: tossing out everyone that doesn't have a particular Microsoft certification is probably going to significantly reduce the average quality of remaining candidates. There's also the Game Theory aspect: if everyone else is hiring the gems out of a small pool (e.g. Master's, only young, white, etc.) then you get a better average by considering the outcast pool rather than by throwing out the same people everyone else is.
Twenty Federal Agencies Used Face-Recognition Tech in 2019-20
I've also see Kubernetes being used this way, with one cluster per data center for company-wide utilization with segmentation being at the _namespace_ layer. The priority class system is heavily utilized to make sure production workloads are always running, and other workloads are pre-empted as needed.
The "Return to Work" process is also a huge project for their resume line :)
Oh absolutely Sorry for the poor choice of words, I agree with you whole heartily. Again my english is probably too bad to convey the meaning 'any press will align with someone given that there are so many parties and he multitude of political interests'.
AMA Citation Format. How to Cite Your Medical Papers
I hope starting the title with a number is ok. It's not a listical.
> One may argue that a motivated and smart student can overcome such obstacles and get her foot in the door by attending such schools. But then the challenge is flipped: not many such students need to attend such schools.

i guess it question is is there enough such students who can overcome these obstacles who are also willing to fork over X tuition? they may not need it per-se, but I think you may be discounting the value of the pre-existing networking leverage these schools have over individuals that may have no network in data science related work
Great to see news of Cliff here. I have his hardbound book autograpged when I met him in a conference in Berkeley about 10 years ago. I read the book almost 25 years ago..
Xcode Cloud does not run on Mac hardware
This was the first time I've encountered the mention of "referential transparency", so I looked it up and went down a deep rabbit hole. It seems that it's normally used to describe the property of not having side effects, however, I also found this long explanation on Stack Overflow: https://stackoverflow.com/a/9859966/58099

So now I'm more confused than when I initially read your comment. Do you mean "referential transparency" as in "expressions without side effects" or do you mean it in some other way that I don't understand yet?
How did you get access to the SOAP api? Doesn't it need a bunch of verification and special dev accounts with IRS ? Would be great for the docs to be public.

>To receive the distribution of schema packages, you must have an active e-services account and be listed on an e-File application with the provider option of Software Developer. Your role on the e-File Application must be Principal, Responsible Official, or a Delegated User with MeF authorities. If you are a registered user in e-services and are listed on a State e-File application, you will receive this distribution.
> They could have not included Microsoft internal code because it was way easier to just use the entire open source corpus, for example.

They don't claim they used an “open source corpus” but “public code” because such use is “fair use” not subject to the exclusive rights under copyright.
Target has started this as well. It’s baffling that companies will so willingly work to destroy consumer trust.
> source code

why do you think it has to be source code? it could be the compiled code after all.

If what we're talking / fantasizing about here works in the way of `let x = 42` it should equally well work with `loda 42` &cpp, so source code be damned. It was ever only to be an intermediate step, inserted between the idea and the working bits, to enable humans to helpfully interfere. Dispensable.
With a big enough rocket, you're no longer constrained to use a minimum energy trajectory. You can cut down the travel time but you'll need to do additional burns to speed up and slow down (with corresponding additional risks).
As one of the “people” I can say that being in the office is a significant downgrade compared to WFH. Being confined in specific place for 8 hours a day does not make sense for me.

My colleagues’ zoom rooms are 1-click away during work hours.

The factory floor model does not apply when all you process is information. I know managers probably still want to see their workers in their seats but trust beats micromanagement.
This is a really good point.

Even within Apple I am sure there is huge variation in "quality-of-office". It's not like every Apple employee gets to work in the Starship, even in Cupertino. But for those that do, they probably are looking forward to returning.
Asking developers to do QA is broken – why anyone should own QA