skysight-inc/HackerNews huggingface dataset:
I apologize if my sentiment came off as Nimskull is a realistic alternative for those who are frustrated with Nim - it certainly is not, and I think your description of the state of the project is spot on PMunch!
Agreed — consider what happens when you have a node(start: Int, limit: Int) inside or alongside another such node with start and limit.

Your pagination is now two-dimensional, with each node's start/limit as points on its own axis.

Now add a third node to the query. Now you have three-dimensional pagination. This quickly goes off the rails.

Try writing a generic N-dimensional paginator for such a query to see why it's difficult. Even designing a sensible and reasonably flexible API for one is a headache.
I'm not sure about wasting. Most of my surfing consists of unearthing gems, and I have to wade through a lot of noise and muck to find those gems, but the gems are there. If I could automate it, I would, but it wouldn't be the same.

A piece of code that crawls the net looking for something I would really enjoy is a hard problem, and I would have to code in my own biases to the program to make it work properly, and this means I couldn't share the program with others since it would be very personal and context specific.

I am aware of confirmation bias and filter bubbles, but it doesn't mean I don't like my own bubbles. It's just plain psychology afterall and we're all human, although I do try to break out of my comfort zone in terms of what content I consume, and regularly scout for different places to get my content besides The Bird Site, Reddit, FaceBuck etc
Well let's flip this around: do you think you could write a performant minimal Python in a weekend? Scheme is a very simple and elegant idea. Its power derives from the fact that smart people went to considerable pains to distill computation to limited set of things. "Complete" (i.e. rXrs) schemes build quite a lot of themselves... in scheme, from a pretty tiny core. I suspect Jeff Bezanson spent more than a weekend writing femtolisp, but that isn't really important. He's one guy who wrote a pretty darned performant lisp that does useful computation as a passion project. Check out his readme; it's fascinating: https://github.com/JeffBezanson/femtolisp

You simply can't say these things about Python (and I generally like Python!). It's truer for PyPy, but PyPy is pretty big and complex itself. Take a look at the source for the scheme or scheme-derived language of your choice sometime. I can't claim to be an expert in any of what's going on in there, but I think you'll be surprised how far down those parens go.

The claim I was responding to asserted that lisps and smalltalks can only be fast because of complex JIT compiling. That is trueish in practice for Smalltalk and certainly modern Javascript... but it simply isn't true for every lisp. Certainly JIT-ed lisps can be extremely fast, but it's not the only path to a performant lisp. In these benchmarks you'll see a diversity of approaches even among the top performers: https://ecraven.github.io/r7rs-benchmarks/

Given how many performant implementations of Scheme there are, I just don't think you can claim it's because of complex implementations by well-resourced groups. To me, I think the logical conclusion is that Scheme (and other lisps for the most part) are intrinsically pretty optimizable compared to Python. If we look at Common Lisp, there are also multiple performant implementations, some approximately competitive with Java which has had enormous resources poured into making it performant.
> If it helps, think of it this way: a concept function is a 1-method trait on an implicit parameter.

No, that just underscores the problem, it's just duck typing. This "1-method trait on an implicit parameter" doesn't deliver semantics.

Let's look at an actual Rust trait, Eq. https://doc.rust-lang.org/std/cmp/trait.Eq.html and notice that the implementation of this trait is empty. For a duck typing system there is nothing to check, syntactically Eq doesn't do anything.

But of course semantically Eq is rich with meaning. You can't go around using a HashMap with keys that don't exhibit Equivalence, what's that going to do? Nothing good.
That ended up being completely fake. NVIDIA revenue and volumes have actually been on the incline ever since 2020, there was no reduction in production, and this shows up both in their financials and in actual measurements like the Jon Peddie Research GPU market reports (which are the gold standard for this) and Steam Hardware Survey (more granular but perhaps less accurate numbers). They are actually pumping volume even more this quarter on top of not having reduced them as some previously predicted.

> Q4’21 sees a nominal rise in GPU and PC shipments quarter-to-quarter

https://www.jonpeddie.com/press-releases/q421-sees-a-nominal...

NVIDIA is like Apple, there's a certain clique that really really hates them and is willing to make shit up and see what sticks, and there's a huge number of people willing to automatically believe the worst, because "green man bad". It's utterly irrational and goes far beyond the technical merits, people have a viscerally negative emotional reaction to these companies and it's mostly not fact-based, it's just the result of two decades worth of fanboyism and grudges.

(I expect this reply will be followed by a bunch of people trying to list off everything bad they think NVIDIA has ever done, a lot of which will have been "massaged" by that same clique. Like bumpgate... but AMD had tons of GPU failures due to bad solder bumping in the 2012 timeframe too, that's why "baking your GPU" was a thing for everyone. Etc etc. NVIDIA is the hillary clinton of companies... they're a broadly competent competitor who does a decent job, but a decade worth of propaganda has convinced everyone that gosh, there must be something there, because I keep hearing about them!)
The point of microservices is only partly to support individual teams owning a service. AFAIK the main points are isolating failures, independent deployments and horizontal scaling of individual components.

I do agree that without a good API design it can become a mess quickly and most companies go for microservices without a clear understanding of what goals they are trying to achieve with microservices. For those companies, sticking with a monolith would've probably worked better.

I've even heard cases where companies went back to a monolith and I think that is actually a smart decision in some cases.

But I definitely don't think it is a waste of CPUs power.
Well if you want friends the first step is to find them. Wish there was an easier way to do this but messaging people from HN/Slack/Discord has been a great option
Upvoted for the TL;DR. Would upvote again for the Thatcher.
I generally agree with your don't "add much more on top of JS" sentiment, but I like .vue files. It's "just" HTML, CSS, and JS in one file, which I find convenient for components. But it's optional--you're free to use three separate files.
Another key factor is, that YouTube interleaves really well made educational content with fun and stupid videos (these have their own merit, of course).
I think this leads to people hunting for new videos about topics that really interest them, those can be insightful and stimulating. At the same time, the next 20 minute TikTok compilation is one click away, as well as numerous click-farmy videos with no real substance but the appearance of depth and knowledge.
This is simply not possible if you, for example, get your knowledge and entertainment from e.g. books. To click a funny video after watching a good video essay or educational content is somehow simpler than putting away your textbook and searching for your favorite comic in your bookshelf.
Every verb it's always about "-ing" with Musk supporters....never "-ed".

You can shake Gates or Bezos hand and say to them that they transform-ed the software and online retail business respectively.

Tesla cars accounts for like 1% of the total vehicles sales occourred globally in 2021.

I remind you Musk has been at the helm of Tesla since 2002, that's 20 years. 1% in 20 years, that's hardly transform-ing either.

The only word which makes sense when talking about Musk (if you want to cut him some serious slack) is "aspirational".
I definitely feel this a bit. I had to onboard onto Ruby and Rails recently and I truly hate it.

That being said, the reason why it wasn't an absolute nightmare for me is because I have good foundational skills and I genuinely enjoy software development. These two things have made it very easy for me to onboard. I also strive to understand how the internals works, and that speeds me up tremendously.

I'd encourage you to understand how the internals of Vue work. That way when you're working, you don't have to think about Vue itself, and just about what you're working on. If you really do feel like you're getting "dumber", start writing stuff down! The only way to truly never forget something is to understand it deeply, as if you can explain it to a 5 year old.

Anyways, this is my advice. I'd be happy to chat offline if you want some more advice (in my early 30s).
Really: What can you do?
It is a fundamental problem of a "graph".

(1) There are usually some nodes of very high degree and traversing those nodes will explode your query, (2) if you are following N links and the average degree is d, you are going to come across dᴺ nodes and that is a lot of nodes as N gets big!

Tim-Berners Lee told me that if you can't send the whole graph you should send a subset of the graph that contains the most important facts.

It's a right answer but also a frustrating one to a programmer who sees correct implementation of algorithms to mean that you get the ticket done and they don't come at you with a ticket about it again. That is, that query I'm writing is part of an algorithm that depends on getting a certain answer and getting an uncertain answer for one query is like some spoiled milk that ruins the whole batch.
People are very opposed to the idea that they can’t buy a house where they grew up, or in an area they feel is comparable. Which I suppose I can understand.

But to your point — things change, you aren’t rich enough, it sucks, get over it.
It's almost like the platforms were designed and optimized to keep you on them ;)
Another anecdote: I felt my mental health declining from being sucked into "academic Twitter", which frequently devolves into unnecessary soapboxing in response to preprints or journal articles. I unfollowed all humans and now only follow institutional accounts. It really helped me.
Ultimately, pursuit of perfect efficiency results in crystalline systems which are fragile.

Slack is the ur-antifragility.

(efficiency pursued for itself is AN enemy)
It was great for rapid prototyping. the problem was when people then shipped those prototypes to billions of users. :P
I think this has to be balanced with the increased meat demand that follows economic development and poverty reduction.

IMHO, 10 billion people with 'developed country' living standards simply does not work.
Also in my experience a lot of the real estate agents job starts after the bid, but my experience is with somewhat complex properties with land. From finding and explaining easements, understanding taxes and tax deferrals to negotiating after the inspection and coordinating all the work that need to happen.
I think engagement comes into play in both scenarios (having and not having a business model) and is really detrimental in the latter case.

But if you have a business model then looking at engagement metrics can be incredibly useful in informing a lot of product decisions and shouldn't be disregarded. Just a mistake IMO to optimize for it alone in the absence of other things.
> because you could've just had your small team of front end developers talk to your small team of back end developers to create exactly the optimized endpoints they needed to solve the problem

What you are describing is called BFF I guess.

And apparently it's already out of date so let's again split BFFs into smaller parts.

https://martinfowler.com/articles/micro-frontends.html#Backe...

I am not against services, it's organizational motivated "micro" services I am very afraid of.
The first interaction I had with GraphQL the developer who introduced tried to make it TOO smart for its own good. It was building complex SQL dynamically which means the SQL that it was running was borderline non-deterministic.

(Aka. identified the foreign keys and primary keys linked them together and made all other fields options)

Things I don't like about GraphQL (In Java which was my experience)

1. Debugging it is annoying. There's no clear concise way to follow the code there seems to be some magic that happens where it isn't clear when certain parts of the code get invoked.

Things I like about it.

1. Lets you make multiple queries and reduce/extend the size of your payload as needed.

In my view graphQL is much better when you're not constrained by a SQL like backend. It's great at filtering the payloads which is great for mobile and such. It also allows you make multiple calls in one go which also means you can shoot yourself in the foot if you over do it.

I will call out that some of this is trauma based from my last experience. Having a more dynamic language that isn't Java may make the experience better but in general everytime we had to update the GraphQL code it was cringy.

Eventually started to gut the dynamic SQL and replacing it with a simple Query and then used GraphQL and trim the response which worked out much better.

Generally the question to ask is how many iterations of an endpoint do you need and is it worth introducing a new technology vs just having a few query parameters to do some filtering.

That being said, I'm now looking at some Query language to work with Neo4J so I'm back at looking at dynamic APIs. (:
I guess your definition of senior and mine vary. I'd consider senior members anyone willing to work on the compiler, as they are the members with the potential to move the language forward and out of the mess it currently finds itself in.

Are there experienced programmers in the Nim community, sure? Are they able to fix Nim with Nim's leadership in place? Doubtful in my mind based on history.

Also, I apologize if it seemed like I was evangelizing Nimskull or suggesting folks switch to it. I agree it is in no shape to serve a replacement for Nim presently, and may not ever be.
The way it’s meant to be done:

1. You register both the primary and the backup key with every identity provider (ie GitHub)

2. You only carry the primary key with you at all times. You keep the backup key in a physically safe space (ie next to your birth certificate).

3. In case the primary key gets lost, you make the backup key your new primary key. You can log in with it everywhere because you already registered it in step 1.

4. You order a new key which will become your new backup key.

5. Go to step 1.
> Eric Friedman’s new book Reinventing Philanthropy: A Framework for More Effective Giving presents a similar take. In the book, Friedman goes even further than Singer by contrasting the work of St. Jude Children’s Research Hospitals with Malaje Provincial Hospital in Angola. After contrasting two patients served at the different hospitals for life-threatening medical conditions, he concludes, “I’d probably also be very angry at the donors who are continuously funding St. Jude and leaving Malanje Provincial woefully under-resourced. Why are [the patients of St. Jude] so much more worthy of life…?” This seems to us an absurd contrast and presumes a callousness by St. Jude donors that bears no resemblance to reality. Of course it is worthwhile to support both institutions if they both provide life-saving results; but Friedman and others indicate that one should support Malanje and not St. Jude as the “best” choice, and support that claim with nothing other than a decidedly skewed morality.

Not OP, but this passage is representative. The authors' claims here are:

(a) the contrast between patients at Malanje Provincial and St Jude is "absurd". The authors don't explain what in particular is absurd about it. This is basically the style of argument employed in the article, which mostly amounts to "EA is self-evidently wrong" without elaboration.

(b) Friedman presumes that St. Jude donors are "callous". This is clearly unfounded, since the quoted passage is consistent with the idea that St. Jude donors are (say) well-intentioned but culpably ignorant. This is another thread in the authors' arguments - roughly, "EA takes issues with X; X is obviously good; therefore EA is wrong". This is a generic argument that could be employed against any position that isn't a bland endorsement of totally conventional morality, and is another version of "EA is just wrong".

(c) Friedman supports his claim with "nothing other than a decidedly skewed morality." This is overtly false, since Friedman's argument is almost certainly defended via some sort of EA premise, like, "saving more lives/alleviating more suffering (per dollar donated) is better than fewer/less." Not an unassailable argument by any means, but the author's don't assail the argument so much as deny that it exists at all, except as a morality that they flatly assert is "skewed".
Job interest in Twitter skyrocketed more than 250% since Elon Musk
Relevant: http://paulgraham.com/addiction.html

> Societies eventually develop antibodies to addictive new things. [...] It took a while though—on the order of 100 years.

> Most people I know have problems with Internet addiction. We're all trying to figure out our own customs for getting free of it.
Just speaking for myself, I've noticed that my habit is to eat what is in front of me, and clean my plate. I mean this both literally and figuratively.

If I have dessert in the house, like a bag of chocolate, then I eat one after dinner. If I don't have it in the house, then I just don't eat dessert.

If I have a social media feed full of content, then I'll scroll through all of it until there's nothing else that's new.

So what I've been doing is not entirely quitting Internet stuff, but instead I just massively unsubscribing, unfollowing, and filtering all the feeds. Sort of a Marie Kondo thing. I go through every subreddit I'm in, every RSS feed, every account I follow on Twitter, and i strongly consider "is this really providing lots of joy and/or value?" If not, it gets the chop.

I've cut out at least 2/3s of the stuff I was following since the peak, and it's only going down. Now when I doomscroll it's only for a few minutes. I hit the end of new content very very quickly. When that happens I start to look elsewhere. I've been reading a lot more actual books, done more chores, and been more productive overall.

As for the things I unfollowed? They clearly had no value because not only do I not miss them, I can barely even remember what they were.
MVP is neither minimal, viable nor a product
Depends on the program.

In critical systems, it's not unheard of to transaction log every input and every response to external requests, have strictly deterministic code, so that you specifically can replay or reconstruct a system state.

It's a pretty demanding way to build software, but you also get extremely resilient software as a result.
I don't understand ehy you would set up an in development website period as publically accessible until you had it locked down. That just seems like a poor idea.
> I could not imagine that whatever this process must have looked like in the 1840s was completely bilateral for all parties

Then let me help your imagination: A rich Bavarian king frequently goes on holiday in Italy, as was the fashion in Europe at the time. There, he regularly meets and intermingles with rich Italians who share his interests in antiquities. He purchases numerous artifacts from them, at a price both agree is fair.
Abiogenesis doesn't seem like such a ridiculous idea after all...
The problem that the poster has is that his input is basically being dismissed.

He was too 'overconfident' with his 'opinion'. But it is exactly what has been implemented.

It's basically this scenario:

> "You don't understand, it's very very hard, next to impossible, to create a website where you can leave an email address. i think you should reread all the RFCs and a bunch of programming books. You have no right to say anything, WE are Microsoft, not you, so you have NOOOOOOOOOO idea"

> 1 year later: "We created a website where you can leave an email address. It was actually not that difficult. But look, WE are Microsoft, so let us explain how smart we were to figure it out".
I'd say it's about trying to design it in a way where they get maximum utility without any "onboarding". Of course there's a fine balance where a tiny bit of "onboarding" is helpful and feels natural, but examples of that are very rare.
>In this scenario it really isn't Microsoft who are demonstrating a bleeding ego.

My bad that part of the comment wasn't directed at Microsoft, its just something that everyone in general has to face when apologizing.

I do agree that Casey should have linked the apology blog regardless of whether he felt it was sufficient.
> when any game developer worth his grain of salt could do that very trivially.

Just to note that Casey isn't any game developer, but one who is an expert on 2D UI rendering and popularized his own gui rendering type (probably more or less used in some older games but not articulated?): immediate mode rendering:

https://caseymuratori.com/blog_0001

He's basically an expert in this domain with a very popular approach to performant 2D gui rendering.
And something to do with taxation.
I waste so much time on the internet because it's easier than doing anything else. Binging YouTube videos and peoples post mortems gives me a dopamine hit akin to being productive without actually putting any work towards my goals. I hate it.
The modern internet, with ever-refreshing recommendations, is fully intended to be addicting. Possible mitigations: make it very inconvenient to repetitively view social media. Examples:

- Create UBlock rules to remove recommendations, only keeping the search bar on the youtube home page so if you want to watch a video you have to explicitly seek it out

- Redirect an address like reddit.com in /etc/hosts so it is inaccessible

- Seek out more productive forms of social media, and set loose timers for accessing them so you don't get caught in infinite scrolling

- Do not have social media apps on your phone

- Turn off internet when doing productive work if possible. Or employ context switches - one browser for fun, another for work.
It's a heuristic about the complexity of the number. If I have some idea bout the ways that you can come up with numbers, then the vast majority of numbers of low complexity were arrived at with short programs, or through rounding. Short programs tend to be heuristics themselves, and indicate estimates, and thus wide implicit error bars. Often even wider than the reported significance.

As long as there are still people negotiating this way, then it is rational to assume that people negotiate this way some proportion of the time and account for it in your own strategy. It's probably not stable in general.
Heroku admits that customer credentials were stolen in cyberattack
I'm not sure there is one - but I guess a language where you're not constantly dealing with horrible error message, an under-specified and broken implementation and a shitty stdlib - might be better, even if it doesn't have some of the nicer frills of Nim.