skysight-inc/HackerNews huggingface dataset:
And that's great - the App Store serves a hugely useful purpose - but you shouldn't need to rely on an iPhone vulnerability and a jailbreak to opt out.
It's not dependent on the device. The satellites themselves send their position data but on a very low data rate (I think its just a couple bits per second) so if the device doesn't have the data it does take 15 or so minutes. Maybe the "cold-start" you are referring to wasn't so cold, it may have the almanac data saved from a previous utilization.
I wrote a shader preview GUI using Zig, Neovim, and WebGPU (basically a desktop Shadertoy).

It's named "Futureproof":
https://www.mattkeeter.com/projects/futureproof/
> The reverse is the problem here: your domain, somebody elses server

Why would my domain point to somebody else's server?

The original post says, "It seems that the owner had it pointed to a Linode instance/IP which was then abandoned and was subsequently "inherited" by me."

As per my reading of this, it sounds like the domain name is owned by someone else that points to an IP address of the poster's server. My comment was meant for a scenario like this where if someone else's domain name points to my server's IP address and a visitor visits my web server via that domain name, then my server will close the connection without response.
Shameless plug: if you want to learn more about building better Docker images (beyond using hadolint, which is an excellent quick win) I put together a comprehensive free email course about that topic over at https://vsupalov.com/courses/
It's due to his system settings. This is how text looks like when you have all antialiasing disabled in fontconfig.
It depends on how the physics engine has been integrated into your game/engine. The book "Game Coding Complete" shows how to isolate a 3rd-party physics engine so you can switch implementations.

Of course, every physics engine behaves a little differently from the others, so, if you game is physics centered (pinball, racing), switching implementation might result in a slightly different game - but having the core of your game depends on the implementation details of some 3rd-party library might not be a good idea anyway.

In general, the more you sprinkle your code with dependencies to 3rd party libraries, the less control you have over the resulting product.

Your point still stands, though, for some very low-level "utility" libraries like boost or the STL, or any standard library replacement , and more generally, libraries holding "vocabulary" types.
https://github.com/kholia/OSX-KVM/
#qt4ever

https://www.youtube.com/watch?v=gGZyVSOnqm0

The tl;dw: Kernel guys made a scuba diving app, using C + GTK. They switched to C++ and QT, due to issues/poor quality of GTK, bad attitude by GTK. QT also fixed a lot of complaints they had about C++. Also QT looks like native application on other platforms.
A flexible, lightweight and fully asynchronous HTTP server library
Presto is already open source if you know where to look. But you didn't hear that from me ;)
Yes, you're right. From the manual:

> [Once a variable is set to undefined], it is no longer possible to detect that the value is undefined. undefined means the value could be anything, even something that is nonsense according to the type. Translated into English, undefined means "Not a meaningful value. Using this value would be a bug. The value will be unused, or overwritten before being used."

> In Debug mode, Zig writes 0xaa bytes to undefined memory. This is to catch bugs early, and to help detect use of undefined memory in a debugger.

https://ziglang.org/documentation/master/#undefined
> while (it.next()) |item| {

Talk about confusing, implicit syntax of Zig - there's no connection between "it.next()" and "|item|". It's implicit and you need to make it up. Compare that to other languages: "for item in it" or "while (item = it.next())".
Here are some more details. I used this to treat browsing addiction. Before that, I had to come to the conclusions outlined in the OP to direct my thinking about the problem. I stumbled on the term urge surfing by accident, and tried it out.[0] This video explains essentially everything you need to know about the topic. I used a guided audio meditation sequence in the beginning as it was harder than I expected it to be. I do not have the link to this, but it should be easy to find one.

It can be an uncomfortable process as you realize the full extent of your predicament and the strength of the craving. But after a while, it works exactly as intended. You then gain confidence in knowing that cravings can abate on their own no matter how strong they feel at the onset.

I have used the same broad concept to attenuate OCD symptoms and related anxiety. The counter-intuitive idea behind all this is that by rewarding your anxiety with a certain behavior, you are training yourself to feel more anxiety down the line. Therefore the opposite must happen: putting yourself into situations that directly confront the anxiety and withholding any reward. This is the same exposure and response therapy that is used to treat phobias or generic social anxiety, though obviously without the careful guidance of a trained professional.

[0]https://www.youtube.com/watch?v=9wdsJayLhnM
The only reason I can think for people flagging this is that they are afraid for their jobs.

I don't blame them. I work in NLP and fear that sometime in the next 20 to 50 years a significant portion of my own work will be automated away by increasingly sophisticated transformers models. This, combined with the increasingly centralization of the means to do effective AI research, leaves me believing that eventually I'll have to change fields if I want to keep making a paycheck...
We Made It Through 2020, But What For?
The author brings up something I had not heard of https://en.wikipedia.org/wiki/The_Great_Stagnation, in the first paragraph. The article does not at all address how technology is going to end the horror of the great stagnation, the total loss of power by labor, who then became serfs bound to serve the rent seeking elite.

Once the tone was set, I found it impossible to focus on techno-optimism. We can't maintain growth forever, more technology by itself can't get us out of it.
Great post and great webpage. I do not see myself as a total newbie and I find somethings I prefer to do differently than you (I agree with Chris and his BTRFS option).

But I still find this website and you SelfHosted show very interesting, and it helps me discover a whole bunch of new things. Thank you guys.

I can wait for new content on The Perfect Media Server as VPN and Backup strategy is something I was not able to find an option I can settle on.
> (...) but Docker doesn’t handle it, because the Tomcat process is still running.

...and that's why no one uses it that way, and instead uses Docker's built-in support for healthchecks.

Check out the HEALTHCHECK entry in Docker's reference

https://docs.docker.com/engine/reference/builder/
While the source is... Accessible... You sadly cannot incorporate it into your own open source browser, which is the main problem. Maybe I'll tinker around with the "open source" version someday
Neither of those fix the scope leak, tho.
frontpage seems clearer about what it actually is: https://varlink.org/
I didn't really get that far with it, but the first issue I ran into, was that the program wouldn't work at all, just errored out with no logging, even after passing all available debug flags.

Spent hours digging through the code trying to figure out what the issue was, figured it out, reported it, even provided the solution, and the github issue remains open over a year later[0].

The other thing I didn't particularly like about it, is that it doesn't really seem feasible to develop using it, without it having access/credentials to your cloud environment.

The great thing about CDK, is that I can synthesize templates, write unit tests, and have a reasonable amount of confidence in my changes, without actually running it against an environment.

Don't get me wrong CDK/Cloudformation still fails plenty at deployment time, but it's better than nothing.

[0] https://github.com/pulumi/pulumi/issues/3590
For those who enjoy historical and game-play review of text-based games and similar games, there is the digital antiquarian: https://www.filfre.net/ If you go to the ebooks page, you can get (free) ebooks of game coverage from years spanning from 1966 to 1993. I believe every infocom text game is covered.
Live Like a Hydra (2013)
I tried that out on Firefox and the maximum speed is about 12x. At about 5x you lose sound.
I don't, and this is not really an Apple problem - you can see the same on YouTube, Steam, gPlay, Windows Store, PayPal, Facebook Marketplace and whatever else. But I agree with you: Stopping to view tech giants as some kind of godking would be a nice first step, as a society.
> 2) Add tagged unions (I do not understand what they are but they exist, maybe some fellow reader here could help me)

It is probably a matter of terminology. For some reason different languages see fit to give the same thing different names.

A union is a type that can be one of several different things. In C unions, there is no built-in way to tell which of those things any given union instance is at any given moment, which can lead to code assuming it is one thing when it is actually another. Tagged unions carry an enum with that that tells you which thing they are right now. Zig will not let you work with a tagged union's value unless you switch on the enum (tag) so you know what you're working with.

> * The same way the Zig compiler is awesome the underlying build file you often wanna write is just horribly documented. I don't understand half of it and it changes a lot. Andrew should really politely ask people on the internet to take down old repos and blog entries. Please document the build system and build file writing better.

Agree wholeheartedly. I've never even bothered to use zig build in years of working with zig because of it. Granted, I make it a rule to rethink what I'm doing if I actually need a complicated set of build steps, but sill.
My domain name is under my control and therefore should not point to servers I do not trust. If one's domain name points to an untrusted server, a very fundamental mistake has been made and no amount of configuration can fix the issues associated with it.

Webmasters we have two things in control:

1. Their domain name. It should point to trusted servers only.

2. Their web server. It should be configured to return successful responses only for domain names they care about and no response/error for everything else.
That backup software also looks useful. The key feature for me with restic is the ability to upload the encrypted backup directly to cloud storage with all the nice de-duplication features.
In some scientific environments (labs which haven't switched to electronic notebooks, in particular), sewn notebooks are required.
I take issue with your first sentence here.

There are examples of niche things being resurrected by players. Niche MMOs have from scratch servers, niche consoles have complete emulators, etc. Saying "no one is going to go to the effort" is not accurate.
Love the design but debit cards always feel a bit dicey to use.
Both forms feature "implicit flow of control", contrary to Zig's stated goals. In "while (i < 10) : (i += 1)", it's hard to understand what the heck "(i += 1)". The best concept one might get is that it's puposely made be different from C, just to be different and confuse people.

In second case, it's "defer", coming from Go, the language which chickened out to add normal exceptions, because they're "implicit transfer of control", and LOLishly added "defer", as if it's not such.
She Turned 2020 Misery into a Breakthrough
Here's a purely speculative analysis of what's really going on with "Superhuman":

Most of those users paying $30/month are trying to figure out how an application with such a mundane use-case could possibly charge that much.

This is a more elaborate version of the "I'll tell you the secret to getting rich if you buy my product" marketing scheme. The secret, it turns out, is to sell people the secret to getting rich.

The fact that this product is invite-only neatly obfuscates that this approach doesn't scale beyond a small niche of users. There's no conversion rate that would show that this product actually performs above-average.
Indeed the web server has to accept the connection, check the hostname, and return an error or close the connection without response.
Actually you are right as Paris itself is quite small and quite expensive. But Paris is a five minutes walk away so I guess it's fair to say I live in Paris. My point was not arguing on how great I live but that beyond the triple of what I live with, as a single person, I can't imagine how can someone "complain" of only making 50k or beyond, because that's like spitting in the face of the majority of the population that lives with the minimum wage.
Hacking Analytics’ Compendium of Data News – December 2020
OK, I re-read the thread, and noticed where the confusion comes from.

https://wiki.archlinux.org/index.php/Persistent_block_device...

I am talking about UUIDs, that basically any (Linux at least) filesystem has. Those are a bit like filesystem labels, but generated during filesystem creation. Their format makes collisions virtually impossible. LUKS volumes have one, and partitions inside them have a different one too.

This is my prefered way of identifying partitions, as they are persistent even when you move them around with lvm, dd, or others. I think that's also the default in many distributions.

PARTUUID is also a nice way to identify partitions when you can't rely on a partition UUID for some reason. It works like UUIDs, but instead of being stored inside the partition, that information is part of the GPT (GUID partition table).

If you are more interested in the drives than the partition content, by-id makes sense, though I think the use-case is rather narrow :)
Instead of `cargo clean`, `touch src/main.rs` or `touch src/lib.rs` (or actually touching any source file and thereby changing the `last modified` date to now) will have the same effect. That's what I've been using.
It's easy to say we should write plain HTML and post it as-is when talking about a non-commercial blog that only one person contributes to and self-markets. It's not particularly interesting or new advice.

Outside of that extremely narrow use case, it's not as clear cut. A lot of us have non-technical users who need to be able to publish pages, interactive content, A/B tests, and videos.
Tell Ai it’s now 2021 so it can update the date in the footer:-)
That is the "brut" salary. Part of it goes to retirement, health and other stuff I guess. So it would be closer to 1200 actually.
Slashem, DCSS, OmegaRPG...
> Is the product good? Yes or folks wouldn't buy it.

This would indicate that there is no monopoly.
It may be that they would utilize split power rails, and one way of making a split rail power supply is to use a center-tapped transformer, like many linear power supplies for audio amplifiers.
Seems like some sort of gRPC alternative for microcontrollers.
Nassim Taleb said SARS-CoV-2 is not "black swan" because it wasn't unexpected. We have organizations like WHO to deal with pandemics, AIDS pandemic is still ongoing, there's even a whole genre of movies about viral outbreaks.
Embedding diagrams in code seems like such a no-brainer. You can do it with a third-party extension in Visual Studio, but it’s still clunky and too hard to use.

This should be a basic thing that IDEs help you do.
Have never considered that. Thanks.
Why dicey?
Yeah looks great but a combined credit or debit card would be better.
I wouldn't call it a clone, anymore than I would call, say, Linux, a "clone" of Windows for needing to have a similar feature-set to appease newcomers. Much like linux vs windows, octave and matlab started life as completely different things, but octave being the 'underdog' and having a similar enough syntax necessarily tried to match matlab's syntax, to the extent that they pride on compatibility (and treat non-compatibility as 'bugs'), but extend the matlab language to include other features.

Now that both projects are mature, I think it's safe to say that matlab has 'borrowed' a lot of octave's nicer features over the years too (though obviously it's not something that can be publically admitted), like implicit broadcasting, command-line functions etc.

Obviously, neither matlab nor octave are strict subsets of each other. Also, I get the impression that matlab has started taking octave's compatibility very seriously in recent years, and has taken non-trivial steps to break it (annoying, but totally fair, in my view), which octave has resisted for the sake of backwards compatibility. Ironically this often makes octave a more reliable base for runnin older matlab scripts, than matlab itself. (e.g. in the same way that Wine is more reliable for running Win98 applications than Windows 10)
Auctioning off a public resource like this is a bad idea. All it does is effectively tax the eventual public use of the resource that was free to begin with, whilst creating niches for rent seekers in the process.
The Rise of Layer 2s Spells End for Altcoins
> But throwing away the whole program is a dangerous folly, and if Netscape actually had some adult supervision with software industry experience, they might not have shot themselves in the foot so badly.

It’s difficult to imagine Firefox having the success it had (being a browser for the modern web) if it was based on the Netscape 4.7 source code. I really think they had no other choice.
In my experience, harder to dispute fraudulent charges.
I used handtrack.js a few months ago to write an in browser theremin. It's not perfect but it allowed me to write the whole thing in about three hours and only kind of blew up my 2011 mbp.

https://github.com/msmedes/theremin
Not sure why this got flagged. Surprisingly good product made by a solo founder.
Show HN: I made an accessibility app to learn Japanese
I think Kopia should deal fine with this, though I don't think I have many such large files that I modify.

The reason why I think it's fine is that it doesn't really try to do "delta diffs" at all. Instead is uses a rolling hash to cut the input file into variable length chunks and those chunks are added to the chunk storage, and then actual files are constructed from those chunks.

Obviously such copies should be done when the files are stable, so either not running or using a snapshot. (If using LVM, this can be arranged easily with any filesystem, except ones that don't like getting mounted multiple times..)

So while I guess size-related bugs could be there, there's no any fundamental property of making the task bigger as the files themselves grow bigger.
Life and death with a no-good, grumpy dog
It's fun to see any comment talking about issues with Zig gets downvoted here ;-). And there're many indeed. The biggest one is NIH mentality of course.
India approves two vaccines but critics warn on lack of transparency
AFAIK is just a bootloader that let you install DSM which is based on GPL software (DSM is basically a Linux distro), so it's a gray area, regardless of what Synology says.

https://sourceforge.net/projects/dsgpl/files/Synology%20NAS%...

There are also threads on various FSF mailing lists calling out Synology for
GPL violations.

Of course you don't get to use Synology services like quickconnect, but that's understandable.
Show HN: OpenScan – open-source document scanner app
Django projects checked for inefficient ORM. Half had these 4 anti-patterns
Academic papers are often reviewed independently of code.

It's the academic contribution to the wider body of knowledge reviewers will focus on as the paper, not the code, will be the thing presented at conference.

Code will likely be spaghetti. Academic research is often more about "finding new stuff" than "building robust stuff".

Doesn't always make sense IMO, but that's the way of the world.
Putting the binary in entrypoint instead of CMD seems like a misuse of what CMD was intended for, no? What if you want to run the image to do some one-off task instead of the normal CMD? (e.g. override the binary)
Couldn't agree more, with the exception that I think Google is, really, not that different from Facebook in that regard and doesn't deserve the "pass".

Sure, Google has expanded into cloud and other enterprise offerings that can be judged separately, but their main business is still ads and consumers, and their consumer business is no different.

Replace Facebook with Youtube and everything said in the thread holds up. Youtube traps you in whatever bubble brings the most engagement, doesn't matter if it's bottom of the barrel clickbait or antivaxx, 5G-causes-covid type conspiracies. It fuels hive minds of like-minded, equally misguided individuals, gives a massive platform to those spreading uninformed, increasingly extreme views and then funnels people down that rabbit hole at the first sign it might drive up engagement. All for profit, and to uphold the video-monopoly as long as possible, while the creators that made Youtube what it is today continue to be snuffed out, shut down and driven away.

The entire Play Store is full of clones of clones of clones, and Google profiting off of the entire stack from advertising to in-app micro-transactions leaves them with no incentive to fight it.

Ten years ago I assumed and hoped that the whole smartphone market would mature. Sketchy ads would disappear. Shovelware would be a thing of the past. Similar to what happened with the internet as it matured. The stuff still exists, but it moved into the background and you have to search for get-rich-quick schemes to find them (or be on Facebook). On mobile, none of that changed. It's still right there.

I still get ads with fake PayPal screens, games that use NSFW art or clips from the originals they ripped off, binary trading scams and generally bad UX filled with dark patterns. Despite the privacy invasion. Despite the sheer size of the market. Despite the time to mature.

The point of the OP is that Facebook can't exist without the hubris, because it's entire business is built around it.
Is it the same for Google? The answer is not yes, but I wonder if it's really that far off.
Nearly a Century Later, We’re Still Reading and Changing Our Minds About Gatsby
I mean you could also say "If you get thrown into jail unjustly and have nobody to advocate for you that just means that nobody cares for you at a person" and be right in the same way - that does not mean that this system is particular good and everyone should be proud of it.

Polemic metaphors aside, I don't think the relationship you propose (quality app > network > you get help) is very consistent or reliable. Say I make an app for soccer moms with millions of users - do you think I would get significant Twitter support from my customer base if my app went away? Conversely, don't you think I can get the radicalized 50 customers of my pro-genocide to scream very loud on Twitter for weeks?

This does not even touch on founders/devs who want to stay anonymous for whatever reasons and a lot of other edge cases. It is a shitty system.
They don't have the same legal protections for their use. There's hardly ever any reason to use a debit card over a credit card.
> So you completely missed the initial point made by FartyMcFarter

>> Geeks love to cut up other geeks.

I'll just leave that out there, then...