skysight-inc/HackerNews huggingface dataset:
> I see GraphQL and other tools created by FAANG companies being used all the time by 1-3 person teams.

GraphQL is touted as a technology which saves developer time by avoiding the need to develop REST APIs, and instead just expose your database to the world and let your frontend just get whatever data it needs.

No wonder you're seeing small teams using it. It's not because of FANG, not because of cargo cult development, not because of incompetente. It's because small front-end teams don't spend their scarce resources on areas where return of investment is limited.
Understandable.

The tech is not the problem, the people are.

A friend of mine sells these things and you could literally gift people money to build these things on their land, but many won't do it.
Why is there so much surprise around Trump's approach to losing the Election
Doesn't that assume that changing the world is the only route worth pursuing.

I seem to remember Elon Musk saying that people shouldn't aspire to be like him because it wouldn't be a good life for most people.

Some people are wired for that sort of thing, I know I'm not.
I was speaking more in general terms than this specific instance. Take for example Broderbund:

- purchased by the learning company, which got bought by softkey

- combined company was sold to mattel

- mattel interactive was sold to gores technology group

- gores sold some to ubisoft and some to riverdeep

- products were published by encore under license from riverdeep

- riverdeep merged with houghton mifflin and later acquired harcourt to become houghton mifflin harcourt

- hmh went through two rounds of restructuring and a recapitalization

- encore went through some buying/selling/bankruptcy themselves

Who owns the IP? Did it survive all the way to hmh and stay through the restructurings?

I've looked up some bankruptcy records for other smaller software companies, and they've had hundreds of debtors, some of which themselves have since went bankrupt.
Most of the negatives you're observing seem to be a consequence of people not knowing how to use GraphQL well. This is definitely a problem worth solving, but it's also not a problem with GraphQL per se -- if you snapshot the usage profile of any high growth tech, you'll see that at any given moment in time most of the people using it don't have a lot of experience with it, that's just what growth looks like.

My opinion here is somewhat unusual -- even with the GraphQL world, but I think you can get benefits from using it even at teams of just 1 engineer. But you _definitely_ don't need to be anywhere close to FAANG scale for it to be worth the investment.
EU has SEPA payments, where you can just send money to an account, usually for no or negligible fee.

Weird how a similar arrangement is not available in so many countries.
Scientists Say They've Found the Missing 40 Percent of the Universe's Matter
Are you on LetsEncrypt currently? From my experience working on legacy enterprise, I'd say to stay on there. Add the flag and you will get a few more months out of it '--preferred-chain "DST Root CA X3"'

Android 6 is 2015. root and intermediates CA have a 10 and 5 year lifespan. I am afraid you might not be able to find something that work on old phones and new phones.

Even if you do find an older CA vendor that has an ancient CA and is willing to sign (you will be forced into an enterprise contract that will take months to negotiate), it's going to be retired anytime soon and break everywhere.

Last but not least. Old phones are stuck on old versions of SSL/TLS, they're not able to connect to recent websites irrelevant of the certificates. Your site is probably no exception and cut the old protocols a long time ago.
The Complete Guide to Motivation
I get your point. But to be honest, why is a well designed REST API with a developer portal and amazing documentation not capable of delivering exactly that? Take Stripe for example. Would Stripe be as successful as it is with GraphQL? If yes I believe they would have had to build a lot of additional tooling to make it work. The same they did for their REST API by the way. They invested a tremendous effort into their documentation and developer portal. I guess that's the essence of a successful API strategy. Whatever technology you choose, you must invest in the developer experience, hence build good documentation, example use cases, etc..
Any way you can unsubscribe me from snail mail marketing in my real post box?
> GraphQL is touted as a technology which saves developer time by avoiding the need to develop REST APIs, and instead just expose your database to the world and let your frontend just get whatever data it needs.

Where are you seeing this? There are a couple of solutions that follow this model (e.g. Hasura, Postgraphile), but it's not an approach recommended by any of the creators of GraphQL, or the bulk of its users.
You are comparing GPL to a product as if it should aim to reach some sort of market penetration.

GPL is not necessarily for developers to get productive work done. It is for people to ensure maximum benevolence with their work for everyone and take the highest moral position. I believe what needs market penetration is this ideal, rather than the GPL itself. GPL is for people who already hold this kind of ideal. They are looking for exactly this.

I don't say you shouldn't ever make money from your work or never use any copyright/MIT/BSD licenses. Most people are not filthy rich and need the money. What I am saying is GPL is not for this, and does not have the requirement to be convenient or framed in a different way than the heroic selfless endeavor it is, in any sense.
To me, it started to go down hill when RedHat hired designers to work on Gnome and they decided Gnome 3 absolutly had to work on tablets. For context, it's the time Google also stopped to rely on metrics and gave the key to designers, and tablets were going to kill both the PC and the laptop.

Not to say UX designer are not important, but, IMHO, very good one are rare and stubborn one common place. Not that we devs are any better.
Any React Native Developers? Beautifully Designed High Quality Templates
The most annoying thing for me is when my users flag a transactional email as spam (I don’t send marketing). What you don’t want your text only receipt?!

So I reached out to a few of my users to figure out why they were flagging their receipt as spam... turns out they don’t differentiate between the “spam” button and the “delete” button. So really they just didn’t care to have their receipt (perfectly legit) and are clicking whatever button removes it.

The button could say “Launch Nukes” and if removes the message from their immediate view they’ll push it.
I used GQL on projects before. I never used those 'ready-made' tools though. All the resolvers were written by hand and the SQL queries as well (in the ORM specific language).

GQL works well when you have unstructured data that 'links' to other or in places where you need to query data in various different ways, with different joins that REST doesn't help (or you end up creating a querying language on top of your REST endpoints anyway (/clients/?age>2&link=business,jobs&business.broke=false&etc etc etc)

Then you need to do this for pretty much every REST endpoint that may need this functionality. With GraphQL the server knows how to fetch the individual entities along with the filters, and create a nice graph of it for you (and you can optimize the resolvers if you dont want to have a lot of DB calls).

Saying people are using GraphQL as the new ORM is the same as I saying people are using Ruby on Rails (and their scaffolding) as the new low-code solution.
I think that title is a misnomer. I spend some time there and the site owner says he regrets using that name because so many people mis-interpret it.
> For example it is equally important, if not more, that modifications in most cases have to be contributed back to the community, which means getting companies to take part in the action, instead of simply using work of others, profitting from it and never contributing anything back.

This is wrong. There is no requirement to contribute back to the community, just the requirement that changes (or rather, the source with your changes) be made available to your users. This means they could mail CDs of their code to their paying customers only, if they so choose. A far cry from "contributing back to the community", closer to something like "a pain in the ass."
Which actor models don't rely on green threads? I thought they all did.
Also, people generally sleep fewer hours per night as they age. As a result, they have more free hours per day as they age. "Sleep deprivation" has a very different meaning for the young and the old.
Biden’s Vote Tallies Apparently Violate Benford’s Law
Have you ever hit a point where you scaled beyond a point where GraphQL clients were usable? Apollo, urql etc. look quite flexible to me, I've never had such issues.
'Nobody can block it': how the Telegram app fuels global protest
I'm only contrasting it to reference documentation. So in the case of GraphQL, you get reference documentation that shows you exactly how it can be used. But it won't show you _why_ you'll use it, or _what_ it can be used for. It also doesn't show what invariants you're working with, or in what way the endpoints are otherwise restricted with.

Real proper documentation is not just a list of endpoints and their attributes but explanations of those as well as other things.
Totally! We're trying to build a GraphQL API generator on top of Graphene and it's just ... well sad.
> Most of the negatives you've observing seem to be a consequence of people not knowing how to use GraphQL well.

People who know how to use GraphQL aren't likely to be dissuaded from using it well by a blog post or some internet comments, so this is an argument in favour of telling people “if you have to ask, GraphQL isn't the right tool for the job”.
There was a whole series of them, GP I-IV. I believe it was GP II that was discussing the Pentium II cluster.

I have had a lot of fun this year building a neural network from scratch as well as genetic programming. For real tasks, it does seem that the former has won out.

I have a layman's suspicion that GP will find itself useful in some way and have a resurgence in the future, but it might just be naïve wishful thinking.
Fwiw, first-class parallelism was one of the premises of Clojure, but in practice those features aren’t used very heavily. I’m not sure why that is.
It's not at all common anymore to use email replies for unsubscribing. All the marketing emails I get have unsubscribe links, and it's been that way for a few years at least.
> You can't make 'deals' with mathematics. As you can't make 'deals' with physics.

Reminiscent of the 'bargaining' stage of grief. IOW, can't make 'deals' with death, either.
Just because the bean counters in that business didn't know how to save money doesn't mean that is true of all bean counters.

Good bean counters want you to justify the purchases you make, but will refuse to choose them for you.
This is the video that made me install Hasura instantly and start testing it[0]. It was one of the few technologies that made me say there goes my weekend.

[0]https://www.youtube.com/watch?v=Wtrsedkrmn4
In general, I don't trust FreeBSDs upgrade process after failing it several times on both desktop and server. The merging system scripts is a huge problem, but I've had other problems as well.
Yes you did. You wrote: "Rents won’t become cheaper if we build more." ... If Rent rates are not a result of supply and demand, then where do they come from?
What else are you doing with Jupyter notebooks, if you don't mind me asking? What's been your experience, your frustrations, and moments of delight?

We built a machine learning platform[0] with additional functionality [near real-time collaboration, long-running notebook scheduling, automatic model tracking and deployment, etc.]

- [0]: https://iko.ai
If you live in the us you can opt out of a certain type of junk mail from companies you don't have a relationship with:

https://www.consumer.ftc.gov/articles/0148-prescreened-credi...
Reads to me as a set polemical straw arguments against communalism and horizontalism; broad brush strokes (based on fiction) that belie the dynamic, empowering and pluralistic natures possible within so-called horizontal organisational dynamics. Like those who would paint social forms of "anarchism" as being without rules, a black and white conflation of a nuanced topic relating to social/progressive politics with a concept like totalitarianism. Not that there aren't dark pattern social dynamics relating to the topic that are worth talking about, but there really is no attempt to engage here, just an apparent horseshoe attempt to psychologically pin negative sentiments to some keywords.
> the intent of the law is genuinely to guarantee access to the fruits of one's intellectual labour

This seems a naive take when considering that it's Corporations who hold the most Intellectual Property[1] (Patents and Copyrights) and are the 'customers' or beneficiaries of Intellectual Property laws and systems.

It's Corporations who focus on IP acquisition (and thus monopolization) strategies (e.g. Google buying smaller startups to add their Intellectual Property to it's repertoire).

...in other words, the likelyhood of average Joe being helped by the Intellectual Property system to get access to the fruits of his labor is not a common situation at all. Most new innovations are the result of access and engagement with existing Corporate Intellectual Property (plus an expensive education).

[1] https://www.gnu.org/philosophy/not-ipr.en.html
Stargate was such a good sci-fi series.
That sounds interesting! But isn’t this like persisted queries (the Relay kind and not Automatic kind) without the benefit of prototyping your queries as a front end dev as you’re working on the front end?

I’d say that’s completely fair still, just wondering. I’d also say I understand the carefulness and stance on “smart clients,” i.e. normalized caching, which is why this isn’t a default in urql, but without it I think the discussion here is much more nuanced.

It’s so to speak much easier to rely on an argument with a smarter client and the Apollo ecosystem, than the rest. Anyway, I like your approach with Wundergraph so I’ll definitely check it out!
One way to answer this is to point out that an anecdote always comes with its own replication crisis.

The term "replication crisis" is essentially a generalization of the concept of an anecdote. In other words, if a result can't be reproduced, then it's essentially just an anecdote.

So, your (rightful) mention of the replication crisis gives you a direct explanation for why anecdotal evidence is inherently problematic in the scientific endeavour for knowledge.
Sure. but I said I want to start writing code before I know anything about the API. I don't want to have to install some tool, figure out how to configure it, then look through the API, and convert what I find into code. I want to start coding, and explore using the code I'm writing as I write it.
Won't such an approach lead to tight coupling between database and API?
IME few people hate GraphQL, they just hate being told to use it instead of REST because of a cargo-culting architect.

GraphQL absolutely has it's place, as others have eloquently described here, but it shouldn't be the default choice for small teams "just because".
I don't think REST is well understood. Who does really understand the richardson maturity model? Who understands HATEOS? REST is a set of constraints. The implementation is up to the user. There's no requirement to document, it's optional. You can have an Open Api Specification, you're not forced to do so. GraphQL on the other hand is a lot more specific. It makes a lot of decisions for you. It's less flexible in that way but this also makes it easier to use.
I really wish they would make the model numbers more distinct. "EPYC 7xxx" seems to encompass everything from 1st gen to 3rd gen, I have to look it up every single time.
> I have a fundamental issue with "Unsubscribe". In most cases I want to be removed from their registry/"right to be forgotten".

Right, but that's not an unsubscribe issue. You're not trying to unsubscribe from someone's mailing list, you're trying to be removed entirely from their database. They're entirely separate things.
A good page for this is Postgraphile's "Production Considerations" page [0]. Under "Denial of Service Considerations" it talks about a few solutions, such as statement timeouts, persisted queries, or query analysis. Choosing what to use may be quite project specific but there are available solutions.

[0] https://www.graphile.org/postgraphile/production/#denial-of-...
But then again it is also obvious that greedy people will have more emotions involved when it comes to something that forces them to contribute back, so no surprise there.

I think this is painting the picture in a too one-sided way. Here is another way to see it: While for-profits might develop their own alternatives, they will fail to make those GPL licensed in most cases, because that is what they wanted to avoid: Giving back to the society, that allows them to exist. So they will have proprietary code. The next company will do the same and so on, all while slowly the GPL licensed alternative creeps up on them, until finally it has caught up. It gets ever more expensive to not use GPL software, as free software slowly gains ground.
I created a no-code tool that could do joins, filters, and more with GraphQL, so I really don't see your point. You just need to do it a bit differently (same as REST, and if you follow REST 100%, good luck with n*m calls when you want to join two resources that you don't know from the start):

GET clients [client 1, client 2]

for each client

GET business (id = client.id)

Now think you can join with business, jobs, invoices, employees, etc etc, and tell me how to do this in rest without basically recreating a query language?
Spectrum DDoS Analytics and DDoS Insights and Trends
> progressive movements that seek to upend the current social hierarchy

They seek to advance the interests of people on top of the current social hierarchy. Most stakeholders who have influence on modern society seem to support these movements and don’t feel threatened by it.
By making part and parcel of your everyday work to have those discussions.

But don't penny-pinch. Engineer productivity is king. Instead of asking them to save money, ask them not to waste it.
It's not just about indexes though, it's also about hand-crafted database queries.
Neat. Arch user since 2008!
I suspect this is relying more on a "birthday paradox" approach. The goal wouldn't be to invalidate a particular secret, but rather that with a relatively small number of randomly generated secrets, you would be taking advantage of this setup to invalidate at least some.
Tech Debt: The Bill Comes Due
The lasers used are going to be class 1, which is so low-power it can't hurt and doesn't require a label.
As someone who's been doing email marketing for a decade, you'd be subscribed by how many people are more than happy to sign up to a mailing list without being "coerced" as you describe.

We get that you don't like marketing email, but plenty of people do.
Yeah, I see your point in general, although it's no different that book/other media companies and copyright.
Yeah managers shouldn't be carte blanche naming things. Basically there should be discussions about names during the architecture phase of any project, and any name that gets flagged during code review should get brought up in some meeting that happens every couple weeks. What shouldn't be happening is passive aggressive comments constantly getting traded back and forth between developers and code reviewers.
This concern is older than this term and even older than this usage. What could "woke" as misused by the latest reactionary movement possibly have to do with it?

https://www.merriam-webster.com/words-at-play/woke-meaning-o...
(Author here) If you want efficient database JOINs using GraphQL I'd always opt for Hasura. They've done a fantastic job solving this problem. This will almost always use the most efficient SQL you can get. If you want to extend this Schema you can use something like Schema stitching and you're good to go.
I’m Danish and I’m surprised this is a study. It’s well known that a lot of our technical advantages in green energy comes from public investment (and not just money, policy) into making the change.

It’s kind of how Americans put people on the moon isn’t it? Sure the private sector is important, but they’re not necessarily going to move society in the direction you want, only government can do that.
I guess the transaction costs are what's stopping people. Takes a non-trivial amount of time to evaluate whether it's a good idea. Might get easier after a while as social proof becomes available.
TOTALLY COOL
The entire spectrum of human behavior is natural, as is any conceivable action no matter how immoral.

The observation of a behavior or inclanation in the wild is not a good basis for the structuring of a civilization.
Show HN: ML Basketball – Understanding Basketball Shots with Pose Estimation
You can make deals with the companies that run app stores, however, and that’s the only tool the government needs in order to crush mass-adoption of encryption. I wish that Google and Apple would both recognize the threat that their business model poses to our freedom.
Yes, the potted history is Galactic Software (selling games from hand-drawn ads in Popular Computing Weekly) when they were still at school in Somerset, then worked with Mirrorsoft and Mastertronic in London, then off to start Codemasters in Banbury.
I don’t know if that’s a great example because that just seems like all judicial systems across all of human history. The protoconcept of judicial process probably arose from subsistence farmer communities needing a way to hypocritically expel or kill people who did not conform to religious decrees, but without losing any social status, and in fact gaining social status by association with the judicial system.

What we have today is a tiny, tiny, tiny modification of that, where our savanna-adapted meat brains put in accoutrements of due process and fair trials, but it’s all just for show so that political elites can say one thing (freedom, due process, fairness) but do another (court packing, systemic racism, regulatory capture, corporate shilling).
Footnote from page 3:

> Elixir can be regarded as a modern Erlang (e.g., with macros) that runs atop BEAM; i.e.,the Erlang virtual machine.

I've heard quite a few descriptions of Elixir, relative to Erlang, but I'm not quite sure about this one. Erlang has macros[0], though the syntax and general format does differ from that of Elixir's[1]. And though Erlang has been around since at least 1986, it has changed a lot in that time and is what I'd consider to be a modern programming language today, used at places such as WhatsApp, Grindr, Pintrest etc...

[0]: https://erlang.org/doc/reference_manual/macros.html#defining...

[1]: https://elixir-lang.org/getting-started/meta/macros.html#our...
The Winner Loser Continuum; and 3 More Lessons from Jordan B. Peterson
I'd say it belongs to hmh.

encore is not relevant, riverdeep would have granted a one off license to create a game, not transferred ownership of the IP.
This is a huge problem for devs.

Junior devs neither understand the business nor the technology, but they get promoted to senior dev anyway after 6 months of bootcamp and 2 years on the job.
Per Kroll, Senior Director of R&D, Broadcom Mainframe Division