skysight-inc/HackerNews huggingface dataset:
See also:

* The What, Why and How of Containers (https://www.annwan.me/computers/what-why-how-containers/)

* Containers from Scratch (https://ericchiang.github.io/post/containers-from-scratch/)

* Linux Containers From Scratch in C (https://www.lucavall.in/blog/barco-linux-containers-from-scr...)

* Life of a Container (https://indradhanush.github.io/blog/life-of-a-container/)
And all the city has to do is put their trash in cans. But that would remove some parking, so they choose rats. I don’t get it at all.
Agreed on this. And there's also great people in the middle who keep sales people up to date with new features and deprecations if you want the system to work.
> That being said, most people copy and run bash script straight off the internet, so clearly not worried about copying stuff they haven't read!

The most common complaint about "pipe to bash" I've seen is the possibility for the server's response to detect it's being piped to bash, and then execute malicious code. The suggested remedy is to first download the install script (and check it) then run it. -- This seems overblown to me, since if you think the server may be malicious, then downloading programs from that server also seems risky.

Criticising people for not reading bash scripts from install pages is weirder to me. -- It's possible that some software author would hide malware in the install script; but, then why wouldn't they just hide malware in the installed program itself.
> Especially since it contains Mac addresses, which are very much not random, encoding such info as the manufacturer of the device. Yes, these can be randomized, but you don't generally want to do this with servers.

You also don't have to use the MAC-based addresses on the server either. You can generate a random address and use that for your service.

Or you can regularly generate addresses on the server and update DNS so that the service has a new address every x hours or days. Or you could have the server not have any 'public' addresses, and whenever a new client wants to connect a new address is generated just for that client (with a TTL).
The ruling class of the United States, by and large, isn't a part of government (elected or civil service) and seeks a government that is smaller, weaker, and more dysfunctional rather than the reverse.
A hallmark of the argumentative mind is nitpicking and missing the larger point.
I’ll bite; what are some of these extensions?
> I came to the conclusion years ago that most deadlines were entirely arbitrary.

To add to this, many manager/leaders assume some kind of deadline is needed for every tasks.

They themselves manage their schedule by timeboxing and setting arbitrary due dates, feel extremely productive doing so, and expand that insight to the whole business. The base assumption is a task won't be done in a timely manner if there isn't a threat with a time limit on it.

On a human level, I also understand the appeal of having a set date for something to be done: there's a warm and fuzzy feeling of a well oiled machine churning stuff on a predictable schedule. But it's just cruel to subject so many people to a forced schedule just to manage someone's anxiety and scheduling OCD. Reality is complex, longing for making it fit into neet boxes is delusional and unproductive.
This sounds wildly conspiratorial:

If governments don't crack down on corruption, they are enabling corruption.

If they do crack down on corruption, they are "pig butchering".
Yeah for sure! So you sort of need a phone paired with it, but only as in you need a family member (or someone on your phone plan) to have an iPhone, but the watch owner themselves doesn't actually need any other phone that the watch.

It's called "Family Setup": https://support.apple.com/en-us/109036, and it lets me use the watch in what is sometimes called "Standalone mode" or "Companion mode" in different apps.

If you go down this route, know that many apps in the app store will not be downloadable, as they don't support "Companion mode", but I can still get everything I personally needed just fine.

As far as the SIM goes, I think I'm using an electronic sim card? I'm not positive
> So my home network appliances have public IPv6 addreases, but everything sent to these addresses is null routed? How does that work?

With a default-deny rule in a stateful firewall?

Publicly addressable ≠ publicly reachable.
All I see is ssssss ssss ss sss ssss ss
Also, “Senior Economics Columnist for Epoch Times”
Multiple components are considered: SAT scores, high school grades, application essay questions, in-person interview (optional, but suggested), participation in extracurricular activities, recommendations from former teachers or influential people, and sometimes, a specific, highly-desired skill or talent (usually athletics, music, arts)
It's meant as squashfs replacement. That is image used for rootfs on live-boot system with overlayfs on top for writable tempfs for example. But I imagine this being useful for many embedded applications in general where you need to save space.
Rust Weird Exprs
This is absolutely great, easy to follow and explain. I love it! However it is incomplete, and thus doesn’t work as a proof.

As the angles increase, the 2 triangles will no longer be inside the rectangle. Signs start to flip around and extra work is needed to show the sin(a+b) and cos(a+b) equations are sound. The bright side is this is a good asignment for the student.
Nice, thanks. Any chance you could add sed to the list of variants?
A few things have changed since 2001 that require extra flags to be able to follow along:

1. Most systems today are 64-bit, where gcc needs "-m32" to build the 32-bit assembly code that this article uses.

2. Modern versions of GCC's ld enable "-z separate-code" by default, which adds several kilobytes of padding that completely dwarfs everything this article does until you start hand-crafting ELF files. Passing "-Wl,-z,noseparate-code" to gcc undoes this.

3. Most Linux distros now configure GCC with "--enable-default-pie", which similarly inflates all of the binaries by several kilobytes. Passing "-no-pie" to gcc undoes this.
TIL that the original designee of the name Boaty McBoatface is not the actual Boaty McBoatface of this article.

I think around 2008 was when the —y Mc— pattern came about (I remember referring to John McCain as Mavericky McMaverick). I use it with my kids these days and it gets expanded even further, e.g., Grumpy McGrumplestein from Grumplevania.
In New York of all places. One of the main advantages of having good public transit should be the ability to yank peoples' licenses away without worrying it will put them out of work!
If intelligence is so heritable, why do children of Harvard grads need preferential treatment?
Based on Ubuntu 18.04, which is pretty old now. Are there any relevant changes for 22.04 or 24.04 or is this stuff stable now?
My personal favorites are zombiejesus and semisemisemisemisemi
> Yes, we will do this, but only if

Caution though, the CEO may recognize this as a classic CEO subterfuge.

If they are impressed, or believe they can draft off of your hubris, you may still be able to pull this off.
It's true. The easiest code to read is the code you wrote yourself. To read other people's code, you have to decode it. And it's very easy to write convoluted "clever" code that you yourself will not be able to read six months down the line, like what Brian Kernighan meant when he said:

"Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it."

I strongly believe it's easier to write working code than it is to untangle it later on. Writing readable code is a skill.
1. You’re welcome!

2. I too would like to explore other developments - not that I think C++ sucks or anything (not that I don’t think it doesn’t suck sometimes!) - Rust and all. Here’s hoping

3. At points during development of this, the ol’ impostor syndrome would kick in. “Surely someone would’ve done this already.” Or more often, “Meh, people will just roll their own version of this, it’s not that hard.” But then I’d actually go through the exercise of implementing whatever it was - and think to myself, “that WAS NOT obvious.” It dawned on me that by doing it, I proved (to myself at least) that it’s not easy to do it, and thus perhaps worth having started.
Race for AI Supremacy in Middle East Is Measured in Data Centers
I at first misread "TLDR; Please don't do this:" as applying to the entire article. I read it expecting a kind of McSweeney's parody where it gives you terrible advice. Really confused because the advice was good and not funny.
I like to joke that to make python fast you need to avoid using python. A ton of python stuff is C/C++ or Fortran wrapped in python, numpy, pandas, pytorch etc is what I have experience with but this applies in all domains. A huge part of learning to write fast python is to first learn these libraries, and second learn about how data is shepherded back and forth. Your experience with C/C++ gives you a good background to understand this!

That being said it's totally possible to write pure python that is much faster than other ways of doing pure python, learn how its all implemented if you are interested, and profile like crazy! Good luck!
Notion Takes on Google Docs with Lego Mentality
Discord is nuking Nintendo Switch emulator devs and their entire servers
Well, it applies to very popular software. SQLite3 is probably the most popular software ever written. This really might be a special case. But it probably would work for things like: OpenSSL, PostgreSQL, Java, Rust, and a few others. Most if not all of those don't need to change models, which leaves newer / less popular projects, and for those to bootstrap this model is difficult. It might be that the SQLite model is unique -- that it won't be repeated much or at all.
I’m inferring the comment you were responding to meant

“Asking the customer to copy/paste the UUID from a URL to send to Support via an email or chat.”

Rather than asking a customer to read it out to you.
I feel they've leaned too far in one direction, and will (hopefully) adjust behavior again soon.

E.g. "Create a list of 20 potential names for a startup about Ovens"

Chatgpt returned only a single response to this. When prompted for 10 more options, it only return two new options. Seems it is forcing itself not to count properly to satisfy brevity requirements.
You are right the period would line up with the issue we saw.

But also, I can’t help but to think even /\w+\.twitter\.com/ will match unexpected domains like foo.twitter.com.evil.ai. I already gave you the hint it needs to be anchored!
> This entire article has dog in burning house vibes, but I can’t tell if it was intentional or not. I’ll give them credit for being a good sport about it at any rate.

Yeah, I appreciate the honesty. I think it's just a straightforward "this is good enough for me, but I'm not going to hide the glaring red flags that will stop anybody from using this at work" approach, which I think is cool. Some people feel compelled to pretend that the choices they make for a weekend hobby project are exactly the same choices they would make with other people's livelihood on the line, and it really doesn't need to be the same standard.
> you can O(1) insert into the middle of Array-likes like Set in JS

Sets are supposed to retain the insertion order. I don't think you can insert into the middle, let alone in O(1) time (as they are hashmaps, not linked lists).

> I hate language vs language debates!

I wasn't trying to compare JS to Python. My aim was to clarify a misunderstanding re: data structures used.
It’s both a clever headline and also one that was inscrutable until I looked at the article (I suppose I should know CISA and CISO but I’ve reached the stage in life where I really don’t want to keep learning the damn acronyms all the time).
She did try to renounce nationality
Yeah I think we’ve all independently concluded that you use brew for everything except those things complicated enough that you need to switch between versions.

I always want the latest version of git or ripgrep, no questions asked. Brew does that well. But for Rust, Node and others where you’re switching between versions, I prefer rustup, nvm etc.

Go is an exception though, I find I never want to go to a previous version of Go so brew is fine.
Huawei building chip equipment R&D center in Shanghai
I wrote a script to scrape whois, and then send mail to hostmaster@internic spoofing the admin address to change nameserver addresses.

I only used it for legitimate customers due to a hostname rename (in retrospect, we should have just kept the old hostname...), but it worked on like 95% of our customer domains and probably would have worked for lots more. You could setup authentication for internic, but it was optional, and clumsy, so most people didn't.
Tried crystal several times over the years. Each time, I encountered Crystal bugs, surprises, oddities, and missing pieces such that there was no viable path forward to adopt it for anything serious. Elixir + Rust with rustler is pretty compelling as a scalable, viable alternative.
For user facing IDs I made base24 which limit the alphabet further to made it case insensitive.

https://www.kuon.ch/post/2020-02-27-base24/
> Plus gaming the test is what exactly? Hiring a tutor and spending hours studying, much of it alone?

Only if you aren't in Asia. Cram schools are a thing in India, China, Japan, Korea...

Of course, willingness and perseverance to go an extreme in work ethic has to be related indicator of future success. But that's your competition if you are just hiring a tutor and spending some hours studying alone.
My April Fools Day blog post of in-brain advertisements https://deumbra.com/2022/04/introducing-thoughtlog-the-free-...
> You face the same issues with table names though.

Exactly right. You've succinctly stated the biggest problem with almost all modern database design.

> So do you not name your tables?

I do, but that name does not represent a Type of Entity, where all entities therein are Exactly Thus, and all entities everywhere else are Absolutely Not At All Thus. Instead, it represents a statement I want to make about entities. Any "natural" meaning you put into your identifiers about what they are is defeating the point of the identifier.

> You do the reasonable, practical thing, and rename/refactor if they drift away from the original mental concept.

And now all of your IDs that are "in the wild" have expired. Can I still submit a request using the old ID, before you renamed Employee to WorkPerson and then to MobileLivingBeing and then to PossiblyMobilePossiblyLivingBeing? And it's not "if" they drift away, it's "when". And it's not just that they change over time, it's that they change from one perspective to the next. You can never have two distinct disciplines of the business ever referring to the same entity, because they don't agree on what the types mean. That bears repeating: you can never have two different disciplines both referring to the same entity unless they agree on what the types are, and they don't, because their terms have different meanings. Do your accountants and your maintenance people and your capital planning people and your corporate leadership all agree on exactly what a "facility" is? Because if they don't, they literally cannot even refer to the same entity. Good luck with your microservices.
Show HN: A JavaScript library for data visualization in both SVG and Canvas
Here's a project I've been working on for a little while now. Ripl is a JS library that provides a unified API for rendering shapes on both canvas and SVG interchangeably. Over the years I've used D3 extensively to create data visualisations so I figured I'd have a go at making my own version with a slightly more modern API and stricter TypeScript support.

I am aware there are already libraries that can draw to multiple contexts interchangeably, but I've added a few little niceties to Ripl that (as far as I know) some other libraries don't have such as CSS-like query selectors, DOM-like event bubbling, and keyframe animation support.

The project is far from done and not published to NPM yet, but there are a few demos and source that you can look at in the repo.

I'm happy with how it has come along and the things I've learnt along the way, especially the math. My dream would be to one day work on this full-time and build out a full data-viz library.
Premiere H2O has a system that dumped the water into the hot water line, similar to a hot water loop, but in reverse. There’s a lot of caveats with that arrangement (doesn’t really work with a tankless water heater, for example).
> There are plenty. Lots of Indian developers collapse due to corruption tangles or inability to secure financing, for example Jaypee Wish Town in NOIDA [0] or the New Chandigarh project in Punjab [1]

Builders scamming isn't infrequent. But surely the scale is no where near that high to be comparable with Chinese ghost towns[1]? From where I am, Bangalore, I do come across a buildings half constructed or abandoned, but that's completely different from whole towns half/fully built but totally unoccupied. What am I missing here?

[1] https://interestingengineering.com/culture/chinas-ghost-citi...
Block their origin network...
Threads on Mastodon and the bright future of the Fediverse
It’s worth calling out that it’s still early days for Rye. The ownership recently transitioned from Armin Ronacher to the team that develops ruff (https://astral.sh). No doubt limitations exist today, but it’s going to look a lot more like cargo as they put out more releases.
Good article, quite interesting, especially this tidbit in particular:

>"One other choice that was made early was to use CAD rather than pencil and paper drafting and circuit analysis. This required the company to design their own CAD workstation and processor design software. "

I wonder why/if no other workstation or CAD software was deemed acceptable? It's like Hitchiker's Guide to the Galaxy, they had to build an entirely new computer to the design the Transputer.
Ask HN: DB diagrams for specific DBMS or generic diagrams for multiple DBMS-s?
Standardized tests are interesting in that they measure both raw aptitude and socioeconomic resources. Either measurement is good from the perspective of long-term positive outcomes for matriculated college students but only the former is politically palatable these days

The conflation of the two measurements is a feature, not a bug. After all, the SAT is not an isolated FAFSA and it's not an isolated IQ test. It'd be easier for the SAT company to be just one of those but they choose not to be.

I recently learned just how much raw aptitude matters because my family began hosting a wickedly bright war refugee this past year. She flubbed the SATs on her first attempt, relative to her raw intelligence and her English competence, because she had received no ancestral wisdom about how to approach the SAT itself.

So it goes.
This is what I use, because it works almost everywhere almost exactly the same way, even when quite a lot else doesn’t have that quality. I similarly use long-press+slide for very similar behavior on iOS (although that has much more variance in behavior across apps, and sometimes even within the same app).
Well, there's Idris which is eager fp like OCaml but looks like Haskell and has dependent typing.
As someone who knows Andrew Ng for his AI/ML work but not familiar with the inner workings of Silicon Valley, is there anything more to this other than sort of "strengthening" Amazon's strategic direction in that field or adding credibility?
even though they balked and named it the rather staid name "RRS Sir David Attenborough", it's nice to see some follow throughs:

"Dishy McFlatface", "Trainy McTrainface", "Plowy McPlowface", ...

https://en.wikipedia.org/wiki/List_of_Mcface_spoofs
Putting in a plug for Colorado or Utah resorts, thank you!
That's pretty harsh to tax unrealized gains, chilling. This seems more like a blatant cash grab than legitimate need.
Wait, they push the waste/brine into the hot water line? Wouldn't that defeat the purpose of filtration?

I was thinking more of using it typical gray water usage like watering plants.
If we agree that centralized, industrial agriculture has fundamental problems that can't be avoided, its a moot point whether its the only way to feed today's population. We can't kick the can down the road and throw more control at a problem hoping the system never cracks, given enough time that will *always* fail.

Local food doesn't have to mean growing it for yourself in your own yard. Buying local food is a huge improvement. When the food is grown in your area and doesn't have to be processed or packaged to handle national infrastructure challenges the plastics and PFAS aren't necessary.

When buying locally you can also have the ability to actually see where and how the food is grown, an option that is never possible when the food is grown across the country, shipped overseas for processing/packaging, and shipped back before eventually hitting shelves at your local chain store.
That's a good way to put it.

That said, I do think that LLMs, while not the "final form of AI" by any means, are already somewhat of a revolution in human-machine interfaces. Being able to look up facts (or make up convincing lies) is neat, but to me, their real power lies in how good they are in summarizing and translating.

Remember when Siri and Google Assistant were having a very hard time understanding even the simplest commands if they weren't formulated in the exact way they understood, and the "aboutness" problem seemed unsurmountable without AGI?

Now we're suddenly way past that (without any AGI). Even if AI completely plateaus out with LLMs at their present-day strength, I think we could spend years, if not decades, of getting good at meaningfully integrating them into previously very manual workflows. Even an "AI winter" of that shape feels significantly more disruptive than many of the more optimistic crypto scenarios.
For performance, generally yes. Designing a purely relational model is satisfying, but theory often falls apart in prod.

It’s still a good idea, IMO, to think about table design starting as though you have a natural key (composite or singular). It helps develop the schema; you can then drop in a serial/identity/autoincrement column, and use the other relationships as FKs.
Does an empathetic doctor not smile when they see their patients in good health?

Does a lawyer not take pride in a well-written contract that shielded their company when the client turned adversarial?

Does a former mayor not visit the parks they opened, the civil works projects that they helped organize or brokered deals for?

Does a salesman not remember their biggest sale? Their wildest outing? Their most critical conversation where they saved (or lost) a deal?

Does a restaurant manager not eventually sit down in a quiet corner of the restaurant, eat a meal in peace, and enjoy the background murmur of their patrons?

Does an electrical engineer not smile when they drive by a substation they helped design?

Does a teacher not remember their most successful students? Does a parent not remember their children?

Why would a software developer not want to know how long their projects lasted?
Why would they not measure their impact in terms of messages sent, or mean-time-between-failure, or ROI / cost-to-benefit ratio, or smiles-per-hour? I'm not saying every line of code I write was one I was proud of, but I have dug into thorny problems, crafted solutions that were good enough, and been happy to see the code stay in service with only a very light touch needed to keep it on track. Of that, I am proud.