skysight-inc/HackerNews huggingface dataset:
I'm a bit less of a dinosaur, but the setup package for my product is still under 3MB. The package carries both 32- and 64-bit versions and the installer itself is 250KB, no dependencies outside of stock Windows supply. This is for an enterprise-grade file backup program with a reasonably long list of features.

That is, you can still write small and light software. It takes the same amount of time as it always did, not much changed.

The troubling part is that the proliferation of bloated software is steadily establishing a new status quo - the software is now _expected_ to be big and heavy in order to be proper. Doubly so for the enterprise-y software. Bloat is becoming a sign of maturity and robustness.
I tried it on embedded. Wasn’t happening for me. Eventually moved to mJS a similar JS engine for C. Eventually dumped that and moved to Lua.

Part of the issue is I needed a scripting engine, but I didn’t NEED JS. It was also a pain that the code/script was in ASCII which had to go to base64 and none of this was as good as compiled for efficiency.

I wasn’t going to let users run their own code, so that’s probably a big reason people use this.
Climate left out many other environmental issues: pollution, plastic, extinctions, etc

Most of all Overpopulation.

People fear discussing it now because they only know of China's policy and eugenics. I predict that the successful, non-coercive policies of Thailand, Iran, Mexico, etc that increased peace, prosperity, and stability will become better known.

Those models will lead us to realize that we can peacefully and stably lower birth rate to increase peace and prosperity, easing all other environmental problems. We'll realize steady-state following de-growth works more successfully on a full finite planet than pushing economic and population growth forever.
btw, please don't do like these guys https://metro.co.uk/2019/11/14/vegan-parents-starved-toddler... feed your babies with meat, we don't have technology (yet) to eat only plants.
I'm posting from a throwaway. What is the incentive for me to signal anything?
Great article. One thing that wasn't pointed out that might be of interest to someone learning about Event Sourcing is that it introduces some challenges if you are to be compliant with GDPR and similar laws. For example, if your event log is immutable, and you use it as an audit log, then by nature you are not ever deleting data. There are solutions to this (for example, crypto-erasure), but it can be non-trivial to implement.
Canada's mint already created a crypto-currency.

https://en.wikipedia.org/wiki/MintChip

It didn't exactly explode in popularity, and has since been sold to a private corp.

China won't be the first country to issue a crypto-currency because it's already been done by other countries. If China does issue one, people likely won't trust it and will avoid it like the plague. China's only real advantage here it is to leverage their authoritarian state to force their own citizens to use a state-approved crypto-currency and hope it catches on elsewhere as a result.

As for China becoming the world's sole super-power in the next decade... I am skeptical. Given China's demographics (i.e. greying), current political problems (e.g. Hong Kong), exodus of manufacturing (e.g. Samsung), and increasing resistance to their influence from other states, I would predict China's global power is near its peak and will soon begin declining, likely being substantially lower at the end of the decade than it is now.
> Could you make a few examples?

Sure, not in any particular order (and there's a lot more)

1. Users can use drag and drop functionality on areas, making updates to the backend as they are moving stuff around. To have the webpage reload would not be an acceptable experience.

2. File management. Users can upload files and create folders, refreshing the page after every update wouldn't be nice.

3. Users can retrieve data on many objects. Open specific objects and see it's data in popups. Edit the data, add comments, upload images etc. Wouldn't work very well with a refresh.

> Why couldn't the requests be done by the back-end?

When the backend can do the requests, it does. I meant doing requests to our backend and to static resources.

> Absolutely, but isn't that exactly the point of the article? Working with a framework can make development massively easier - however, the benefits of this only go to developers, while users have to bear the costs.

Not really. I am saying that many new apps aren't simple crud apps anymore.
> One thing that has improved was boot times, I seem to remember that Windows 7 was quite a bit faster than XP. Maybe someone in upper management wanted it to be as fast as MacOS? So speed IS possible, if it is prioritized.

I seem to remember boot times being a frequent topic of discussion the early 2000s, because people turned off their computers.

In a way, this is a great little microcosm of the problem. Just fix habits instead of fixing the software.
> For example, I work on an app which wouldn't be possible on the web 5-10 years ago

What is it? Because I highly doubt that statement. Ajax, DHTML, ActiveX, and Java Applets offered effectively the same solutions in the late 90s.
Frameworks allow websites to be built faster, maintained with less expertise, and changed faster over time. That is the benefit to the user. That things are slower than they could be doesn't matter to most users. Most companies can't afford to pay people to maintain a "good + fast + quick to make changes" site.

There's an argument to be made that if business would just simplify their needs and desires to make sure everything is simple and fast, isn't that in and of itself putting devs before users? This works both ways.

Also, if you don't want to pare down your features to barebones, and you're not going to use a framework, someone's inventing one. If you have someone who's going to build you a superfast framework and be a cool hacker, then you probably can't afford them, or you can't afford to keep them. Then we get a post on HN about how bad this one coyboy coders's framework was and all the effort that was spent to modernize using %modern_framework%.
Yes, but it's not as bad as it gets. That's the date from publication. Unpublished works get 120 years. More recent works get lifetime + 70 years, which can be far longer.
Tangential to this article, can someone clarify on what's good / bad about NordVPN? I've been trusting their services for 2 years now, and I signed up on some ridiculously good offer of 3 years for <$100 a year ago, so I'm locked in for 4 full years. I did this because I trusted the service from reading reviews, but places like reddit are always shitting on NordVPN, both due to their ads (obv not the issue for me) and because of some nebulous "concerns" that no one has been able to articulate properly for me.

I know about the recent hack, but it seems like all of their precautions actually worked in protecting the consumers, and no logs were ever shown to have existed or been stolen.
Makes sense mostly if your only using ping from big location differences. If you were trying to use this for exclusively inside USA though, routing will instantly muddy your data. One of our offices has dual ISP connections and they are drastically different ping to another facility. One ISP pays for better routing I guess.
Bitcoin’s 9M% Rise This Decade Leaves the Skeptics Aghast
Money can be clawed back by increases to living expenses (eg. rent increases, food cost inflation).

Creating systems which lower the costs of living (eg. public transit, below market public housing) benefit low income persons and aren't as easily erodible.
I saw the Akka people talking about this on twitter once, I think they were theorizing that encrypting the data in the log would be sufficient, because then "deleting the key" could be interpreted as the deletion of the record (even though the useless data still exists in the log). But I'm not sure this was ever legally validated?
Selection bias
There's a restful Gmail API, and Python bindings.

https://developers.google.com/gmail/api/downloads
Failed to come to pass? Are you aware there’s an entire continent literally on fire right now?
Yes, I was thinking mostly about beef. Which seems to be the most environmentally impactful meat, by the way. Pork is less impactful and poultry is even less.

Obligatory wikipedia link: https://en.wikipedia.org/wiki/Environmental_impact_of_meat_p...
Here's something you may like https://www.medgadget.com/2019/12/medgadgets-best-medical-te...:
> "think exactly as hard as you need to about the things you need to think about, make smart choices, pick relevant abstractions when you can, and choose the right tool for the job"

"Just be good, and don't be bad" isn't technically wrong...
Yeah, it sounds like the poster is having issues with their deep hierarchy causing lots of unnecessary object creation?

I'm still surprised it had that much overhead though, as I generally think of node as being relatively competitive with Java outside of heavy computation.
If I'm understanding this correctly, something that was created in 1924 was still copyright protected until 2020? Nearly 100 years of copyright - most of it under the family of the creator who died in 1937? How can it be legal? At what point can we say it is bad for society and hinders creativity and art? Honestly, isn't it purely rent seeking at a certain point?
The page mentions the "re-imagining of Hacker News", which was actually built.[1] Were they serious?

[1] https://interface.fh-potsdam.de/future-retro/HN/
Actually, one more significant problem with nuclear power is that there isn't enough manufacturing capability to build reactor cores. Most existing reactors are decades old, and although we have a lot of theoretical knowledge on how to build reactors, how to build more modern reactors than the existing ones, we globally lack the practical know-how, there's no assembly line that we can just pick up reactors from. So the cost of a new reactors is almost unknown. How much does it cost to build the factory that builds the reactors?

Handling nuclear waste is much easier, because we're actively working on that problem, there's practical know-how in spades.
I predict the 2020s will be strikingly similar to the 2010s.
OK, John Galt.
Let's talk about Vim performance
If this is true, then why does it take so many engineers to make web sites today?

People keep claiming these things increase productivity, yet there seems to be very little evidence of productivity increase.
I'm intrigued by this and definitely open to learning more about de-growth models. Would you mind providing some examples of the policies implemented in these countries?
What made you feel like something was wrong and that you needed to go see a professional for help?
In financial terms, we are sure that each are paid at least 4.4k USD/mo, based on their Patreon goals. If that is the right compensation is subjective, I'm not familiar with the market rates for that level of experience.
The boy scout rule is a good compromise. Whatever areas of code you touch, leave it cleaner than how you found it. It doesn't mean following every path that leads to or from it (yak-shaving), but it's also not introducing new tech debt.
I’m not a huge fan of turning the BI-RADS classification scheme into a ROC curve. From what I’ve seen, BI-RADS is something like a yes / no / maybe scheme for mammograms. I don’t think it was designed to be treated like a test score, so using it to generate a ROC curve feels like an unfair comparison between the AI system and current clinical practice.

What they’re doing is interesting, but it’s still very academic. I have little doubt that eventually some sort of AI system will benefit clinical practice, but based on the sheer number of studies that fail to make it over the line, I’m not sure I have high hopes for this one. Why they’ve done so far is the equivalent of “It works in vitro...”
> Notably, the additional cancers identified by the AI system tended to be invasive rather than in situ disease.

This is probably due to invasive cancers being more common (~80%) than in situ cancers. I am not sure why this natural explanation was not suggested.
Complaints about slow compilers or praise for toolchains being faster than others are very common, so I don't see how "nobody thinks" that.
Well, 5 years may have been a stretch. Maybe more like 10+.

Doubt it as much as you want but we use several newer apis and phones wouldn't be powerful enough to run the damn thing 10 years ago since it's a web app.
Schools are too boring. There are exceptional teachers, but they are not in one school.

There are countless bad teachers. Teachers need to be educated to make their subject actually interesting. Too many are trained in classroom management rather than storytelling.

I will give an example. My business law professor was so good that I still have tapes of that class from 20+ years ago. I remember every single lecture! My electronics high school teacher was equally excellent.

No one disrupts a truly interesting class. History can be as boring as a recital of dates or as vivid as creating a play. English can be made interesting by incorporating writing prompts and etymology vs pointless book reports about uninteresting books. I can’t write about poems that are meaningless to me. No one actually taught me how to write term papers and what were the acceptance criteria.

Suspensions are pointless. I was threatened with suspension and was confused how it was supposed to be a punishment. If anything, it felt like a good outcome.

Bad teachers trigger negative emotions. I was 38 when I took a class in choreography from an incompetent teacher in college. She actually banned me from watching our class’s last public performance for which you could buy tickets. I had an ambitious project involving mixing two dance styles in 3 tempos to a Japanese song.

Well, I am not 18 and so I endured her nonsense but at the same time resisted it. She made me cry, which takes a lot. That person hated me with a passion. I must have reminded her of an ex boyfriend because I can’t explain it any other way.
> “Don’t shave the yak.”

> - stay focused on the task at hand.

The definition of yak shaving is that shaving the yak is a prerequisite to the task at hand. You can't continue without doing it.

Of course, just because this appears to be the case doesn't always mean it's true. Plenty of times I've been waiting on X to do Y and I've managed to make significant progress on Y just by pretending that X is already done, and working on Y until X is actually necessary.
FYI, if you own a relatively recent Samsung phone, the dual audio feature allows you to play audio to multiple Bluetooth devices.

We use it on long flights to watch movies together.

https://www.samsung.com/au/support/mobile-devices/what-is-th...
Lots of moving parts.

I am a dependency skeptic. I think that you need them to do big stuff, but should probably avoid them for small stuff.

High-quality dependencies can have a drastic impact on the quality of your software, but so can low-quality dependencies.

I think we are at the tail-end of a "wild west" of dependencies.

When the dust settles, there will be a few really good, usable and stable dependencies, and a charnel pit, filled with the corpses of all the crap dependencies, and, unfortunately, the software that depended on them.
On the contrary. Once upon a time ReiserFS was a serious contender to be the next de facto standard Linux filesystem. Then Reiser did what he did and interest in his filesystem promptly became nonexistent, where it remains to this day.

That’s not marketing. It’s more like anti-marketing.
Also we should rename Michael Jackson's records because he was a pedo.

Or, you know, separate art from the author.
I sell stuff (software, so not really stuff). I certainly file my quarterly estimated taxes (state and federal), but until I file my annual return, the government has no idea how much I've actually earned, nor what my expenses were. Consequently, they're in no position to tell me what I owe them until I've filed my entire return.

Perhaps what the commenter meant was "we should fill out forms detailing income + expenses (where applicable) and the government should compute our taxes for us". I'm mostly good with that idea.
How many years did centaurs reign supreme over pure AI in chess? 5-10 maybe? This "both" stuff is just a temporary stop on the way to meat obsolescence.
My gut feeling would say colonization was a net positive to Britain, but it's hard to say. It's just too big of a what-if. The US would have likely gone to France, their main rival at the time. On the other hand Britain spend a lot of resources on their US colonies, both building them and fighting France in America. Who knows what else they could have with those resources.

It's not just the US either. India was a profitable colony at the time but might turn out to be a major detriment to Britain overall, both as a source of cheap skilled labor and as a powerful nation of their own. Who knows what would have happened without the British. A lot of the borders in the Middle East are drawn by Britain as part of their WWI mandates/colonies, and the problems from how those borders were drawn spill over into Britain (yes, it's not the only problem in the Middle East by a long shot, but it's one of them).

I still think overall Britain came out ahead (just look at Hong Kong for what cultural influence can do), but it's not hard to imagine how colonization might be seen as a net negative if a few times things turned out even slightly worse.
TCL would have been another choice. Still used by quite a few commercial entities as an embedded scripting language.
That assumes end users can make informed decisions about the software they use, and have free choice to choose a less-buggy option if they just preferred that. Neither of which is true in many cases.
It really all depends on the language grammar. TurboPascal had comparable speeds on i386 machines back in the early 90s.
In medium to large size orgs "not shaving the yak" means pressing ahead with your deliverables and sidestepping wider issues. Doing this makes you appear indispensable to most middle managers but encouraging this en-masse is a long-term disaster for the org.

The org culture compels the behaviour, and is not really an individual choice.
This article ignores the primary reason for the basic “problem”: changeability. How easy is it for me to hire a cheap programmer to iterate my profitable saas biz to keep it relevant in the rapidly changing market?
It all makes perfect sense, the article was just a bit tl;dr. I got about halfway through it and my eyes glazed over.

I'd love to learn more about the mechanics of gathering the data. You say you used Ping.pe, CASM, and MapLatency. It sounds like you had to scrape the Ping.pe results because they don't provide an API? Did you consider using RIPE ATLAS probes? Did you do any cross-verification between services where they both claimed to have probes in the same location?

It's all fascinating stuff and very, very thorough! I hope the story gets picked up by an outlet with a journalist who can distill the salient points into an article short enough for casual reading.
Occam's razor only applies if your model actually solves the problem it claims to solve.

Plenty of beautiful, elegant, parsimonious, wonderful, understated, aesthetically pleasing models in physics turned out to be complete bunk when confronted with real data.
Google calendar is bad, thought, especially since they removed the ability to hide early morning hours. Nothing in my life happens between 00-08. Why can I not hide it? Because some designer said so.

Now I just use thunderbird. Much better than Gmail/gcal.
I agree with your general point, but in this particular case bandwidth is muddying the waters. 2g tech has less bandwidth dedicated to it now than it did years ago, so your kbps is lower now than it would have been when using 2g in the past.
Caring about the name is neurotic and childish. When it's no longer a filesystem named after a murderer, it will still be a filesystem inspired and created by a murderer. And it'd be equally stupid to refuse to use it on these grounds alone. Those complaining are indulging in the thrill of cheap activism more than engaging their rational mind, and giving into their demands merely enables pointless noise-making at best and at worst conditions (the few-to-no) emotionally unstable people genuinely offended by the name to embrace their fragility at the expense of the project instead of reaching this healthy, antifragile state of mind I inhabit.
> graphql-js is the reference implementation of GraphQL, so it's not any random library.

I always expect the reference library to be optimized for correctness, formal proofing, brevity, simplicity and clarity, not (compilation nor execution) speed.
The US Supreme Court said it's fine as long as Congress only extends copyright for a "limited time". Anything less than infinity is "limited".

* https://en.wikipedia.org/wiki/Eldred_v._Ashcroft
https://coincircle.com/l/2vQMzSQJET
How difficult would it be to port Firefox's javascript engine to embedded platforms?
I've always interpreted yak shaving as "work that is neither necessary nor sufficient to complete a task."

Sometimes it's bikeshedding (looking through color swatches for your navbar when you dont even have a working CRUD system), sometimes it's indirect value add to you or your team (evaluating new ORMs or IDEs), sometimes it's just karma farming in the universe (sending PRs to a new GitHub repo you've found that almost solves your issues...)

I think of it as concentric circles: the center is the goal, the first ring is the tasks you need to complete, and so on ... and yak shaving is anything more than 2 layers away (or outside the circle entirely!)
How exactly do we know they dont have reflective thought? Or at least any less reflective thought than your average human. Not really sure how to test that. I know there is the mirror test but what if there are different types of reflective thought and they just missed the boat on that by a little but have other kinds of thoughts?
I think you might just be trolling, but in case you are not, I do not see how selection bias applies here. I (or anyone else) did not select any comments here. Close, or maybe even actual, 100% of the comments here are about the issue with the name, so unless you want to insinuate that the HN community responding to this is not in any way representative of people who care about filesystems, there is hardly a bias here.
That sweet feeling of being better than others.
I really wish we had more control over the scheduling of async tasks.

For a javascript example I ran into recently, say I am firing off a fetch for each image that comes into view in a large gallery. If I suddenly scroll down to the 1000th image, a naive implementation might fire off 1000 fetches for all the images we scrolled past. Then you'll be waiting a long time before the images in your current viewport is loaded.

Backpressure can save you a little bit here. Say you do the semaphore trick mentioned in the article and only allow a max of say 10 fetches in flight at once. Then if you quickly scroll through, all the subsequent fetches after the initial should fail, including the ones at the viewport you stop at. But since the queue is short, when the images in your current viewport retries it should now succeed.

This works but it isn't ideal. Ideally I would be able to just reprioritize the newer fetches to be LIFO instead of FIFO. Or maybe inspect what's currently queued up (and how big the queue is) so I can cancel everything that I don't need.

The backpressure solutions might just be a symptom of async tasks not being controllable in any way once started which is why you're forced to commit to it or not from the start even if that might not be the best point in time to make that decision.