skysight-inc/HackerNews huggingface dataset:
Let me start at the end:

> let's say I need to run a non-web service like SMTP and I can't spin up a web server to validate the domain.

You should use Let's Encrypt's implementation of 3.2.2.4.7 which is the dns-01 challenge as I already mentioned. Or use another vendor's own implementation of 3.2.2.4.7 or any of the half a dozen or so non-web methods listed.

> Or let's say I need non-TLS x509 such as ipsec.

The Web PKI can't help you. Leaf certificates in the Web PKI contain an EKU 1.3.6.1.5.5.7.3.1 which says their purpose is TLS server authentication. There is no global public PKI for IPsec. Feel free to try to make your own, but I expect it will be an expensive and thankless task.

The central issue of a PKI is trust and domain name registrars are not on the whole very trustworthy. We're talking about the industry which invented Domain Front Running - the idea of waiting until a customer shows interest in a unique product (a domain name) and then buying it yourself so that they'll have to buy it from you at an inflated price.

I sympathise with the desire to build a parallel PKI baked into the DNS system, but the Web PKI is not that system and there's no practical way to mutate it into that system. If you believe DANE is the only way forward you should go help people make DANE work better, not argue against the Web PKI.

Issuing "a certificate" at time of domain registration greatly misses the point of Internet hierarchical naming by the way. While it would be technically possible for every domain to hold a single wildcard certificate and use flat naming (so news.america.ycombinator.com couldn't exist, it would need to be news-america.ycombinator.com) that's a terrible security choice. Necessarily where a service corresponds to one specific name the certificate and corresponding private key should be for that name only, and not a hierarchy of related names in order to mitigate risk.
Does that have to be the email account you registered with that business? It definitely is concerning if someone could effortlessly assemble a database of all of this information just by getting control of your email address. Chat logs, Alexa recordings, geo locations going back years, every Uber ride you ever called and the addresses you came and went to.

Even the deletion requests could cause an identity theft nightmare. One hack and all of your Facebook, Apple, Google, Microsoft, Steam/Blizzard/Any game company, identify and digital assets are gone forever with no chance of return.
It looks so neat because you're looking at two atoms carefully placed on carbon nanotubes
I never did much with Ruby beyond toy problems, but I was impressed by the lengths the language goes to to make it convenient to express what you want to do.

There's one syntax for half-open ranges and another syntax for closed ranges.

You can index an array any number of different ways: "get me the 5th element". "Get me the element three back from the end". "Get me elements 5 through 8 (inclusive)". "Get me 0 through 6 (exclusive)". "Get me the 3-length subarray starting at index 2".

A hash table returns nil by default when you access a key that isn't stored. But you can change the default value as a property of the table itself. Users now don't need to remember to supply their own default value when they're looking in the hash table. Even more, you can specify a function that gets called when a nonexistent key is accessed, to do whatever is appropriate.

All of those are great things. It's easy to translate your algorithm that says "take a stretch of three elements starting from i" into an access that looks like array[i..i+2]. But the semantics of your algorithm start slipping away as you make adjustments like that. If what you're doing is taking substretches of 3 elements each, there's a gain from being able to express it as array[i, 3], as semantically distinct from taking a substretch between two independent bounds that happen to be i and i+2.

But the flip side of this is that if you're not regularly immersed in the language, it's really easy to lose track of precisely which bit of syntax does what.
Of course you don't start from a crude simulation, but when the sim diverges from real hardware behavior, you need to find the reason and update the sim to reflect real world.
Reverse shell through a Node.js math parser
>> but they simultaneously advance an implicit belief: that dynamically typed languages can process data of an unknown shape.

The real difference is that dynamic type systems don't pretend to. Static type systems have a way of putting developers at ease on auto-pilot. Arguments which compare dynamic type systems with static type systems should be more focused on reality rather than hypothetical, idealized use cases where the developer is a completely rational agent who understands everything about the project's direction and strategy. The reality is that the vast majority of developers can't design software properly; they can't even select the best data structure to solve the simplest problems and they over-engineer and can't create good abstractions that make sense and aid the project's evolution. Most developers don't know what a good abstraction looks like because they don't have a long term vision for the product that they're working on.

All these safety features which static typing supposedly introduces don't actually protect the project's code from the real threat which is poor design at an architectural level. I would even argue that dynamic typing can encourage worse design because it gives developers an incentive to keep inventing strange abstractions/types that don't correspond to the high level picture of what the software actually does... Most statically typed projects I've seen tend to be full of weird and unnecessary abstractions like: 'Interactor', 'Builder', 'PrimaryAdapter'... these kinds of abstractions do not bring the code any closer to alignment with the end user's perspective of the software (which should be the primary goal of any abstraction), instead, they impose constraints on developers working on the project... but as requirements change, these constraints have a way of becoming redundant which is why sometimes large amount of logic needs to be re-written.

Static typing encourages short term development strategies centered around constraining developers from doing certain things based on speculative and often completely arbitrary concepts that the lead developer felt in their gut was important. Maybe if the abstractions were designed around some long-term vision of the evolution of the project, but this is almost never the case (and I've worked on many different projects, for many different companies for over a decade), most of the time, abstractions and the constraints that they impose are in fact based on nothing but arbitrary technical decisions that may as well have been the result of a coin toss.

Developers should have an incentive to create fewer (and only necessary) abstractions, not more. By forcing developers to rely on their memory instead of their IDE to figure out which variables hold what kinds of objects, there is a strong incentive for them to keep abstractions as simple an non-confusing as possible.

Any tool which makes some aspect of life easier for the user will invariably make the user lazier and complacent in that domain. Abstractions are not something one should be complacent about, they're very difficult to get right.
In addition, Rolls-Royce cars are made by BMW now, who also make quite good engines.
You can just disallow that?
I don't agree with this. Or at least it's not applicable for me. I've been managing UNIX and Linux systems for around 2 decades so sadly I'm now far too old to be included as part of the younger generation any more :(

murex came about more by accident than intention. It was a personal project to "solve" a real world problem I was having at work but it kind of morphed into a shell. Even the shell aspect was very different in the beginning to what it is now. In fact almost every aspect of the shell has changed in the last 3 years.

The project is older than the Github repo because it was a private project hosted on a personal git server for the early stages of its life and I squashed the commits when uploading to Github to hide the early code (read: "mistakes") but once the project did start morphing into a shell the intention was always to make scripting a first class citizen because I specifically didn't want to use a different shell for interactive use than scripting. In fact if anything, I wanted to bring scripting paradigms to the REPL shell but without creating a command line that was too verbose for everyday use.
> As an aside, one thing I didn't like about Elixir was that it also made parentheses optional.

Ocaml does something similar. If you have nested function calls in a line of code, the interior calls look just like lisp. But the outermost one omits the parentheses.
They could stop importing fake refugees (aka migrants), for example.

There was no refugee crisis before. Hungary still doesn't have this problem and needs no EU army.

It is effective enough to send assistance to actual refugees, but that wasn't enough for Merkel and the globalists.
I don' know how bad it is for Lisp, but I get the argument and I think its valid. I've seen to much bad non-idiomatic and homegrown code to know this is a big poblem. A big part of the value of using e.g. Spring Framework is that it is standardized, easy to understand and devoid of a lone hacker's "brilliant" ideas.

I think the part about the toolchain/dependencies still stands.
That's the one! Thanks I'll re-read it :)
> - so we try to decide about just the most crucial architectural aspects and make the rest as easy to change at possible,

that is exactly why I like static typing - I can just change stuff and ask the compiler to kindly list all the places that need to be updated to accomodate for the change.
(SEO Hack) Learn How to Remove Bad Backlinks with Google's Disavow Links Tool
You could imagine a glass donut filled with water, as well as a small rotor to move the water in a circle.

You obviously have to balance the water pressure and temperature to reach slow ice formation, and maybe you need a more interesting container shape than a donut to get interesting results.
Was the cupboard being used as a sofa?
It's not about disregarding that external factors can and do significantly interfere with anyone's life. It's about recognizing that the most significant contribution to your well being is in fact your own actions in the vast majority of cases and especially on longer time scales. It makes no sense to worry about the external factors that affect an individuals life since there is no way to affect those to a significant degree.
Manifest: An instant grid-based pinboard for note taking in the browser
Contextual search.

For example if I search for a movie, then a bit later I search for a person, the SE should 'know' that the person I'm looking for is an actor in that movie and give me relevant results, not completely unrelated random people. That's beyond trivial to do.

Also removing all 'popular' results from link farms and pop culture sites, excluding entire categories for example searching for a mythological figure should give me results from *.edu sites, not weird ass anime sites etc (and Googles filters no longer work properly so you can't drill down in queries anymore.)

I think the market is ripe for a new product that does what Google used to do before they abandoned their core competency (and DDG is a joke and doesn't count)
"Here's just a single article demonstrating how incompatible with simplicity and correctness C++ is"

I don't see where is the problem. Perhaps, you could give an example of the equivalent code in your favorite language?
Thanks for the info!

Did they approve of your module?
I don't understand, WASM can't use canvas?

Because if you "blit a bunch of pixels to the screen", you don't care about performance regardless.
yeah fair question ... I would say you need to learn sales skills, be humble and learn from someone who can teach you ... going the "project site route" isn't particularly optimal IMHO. Contribute to open source, develop some example projects and try to sell yourself. Ask your customers / partners to provide references. The market will adjust sooner or later. I know many people who worked hard, did a good job and reverted to the mean much faster than you would think. Good luck!
Just recreate the river bed from a solid material (to prevent dirt from floating away) and add a lid
> ...it's expected quality of life that makes people move to NYC for work and makes dilapidated areas unattractive.

I can't speak to Britain, but in the U.S. there are more people that do not live in SF or NYC than do. Other than people with niche interests (musical theater, startups, finance), most Americans, even young adults, aren't sitting around wondering how they can swing a big move to New York City.

It's much more normal to move to a regional big city, but in those cases the jobs are likely outside the city center as downtown. It's worth noting that NY and California would be stagnating if it weren't for immigration. Immigrants seem to be the ones who see places like SF and NYC as their big chance for a new quality of life.
Definitely dynamic typing is not about modeling the world. And it's much broader than that. Static typing, strict or loose, also isn't about modeling the world. OO design isn't about modeling the world. These things are successful because they're effective methods for organizing code. They're about as useful for modeling the world as the Dewey Decimal System is.

And that's fine! 'Modeling the world' is a grandiose philosophical kind of activity and usually not something you need to do when you develop software.
> The whole idea of remote working to arbitrage cost of living falls apart if you are in any way social.

Unless you grew up in the area from which you work remotely, in which case you can be more social because connecting with old friends and family is much easier than making new friends at 30+.

> If I earned a London salary in my hometown I'd be ostracising myself completely from those around me [...] I don't see how that benefits anyone.

I don't see the problem with having more money than most of your neighbors - instead of buying new cars, you could spend it on your neighborhood and lift it up. Seems healthier than what is happening instead - non-techies being forced out of their homes because they can't keep up with techie rents.
Talking about Google: what's missing is, things that used to work now don't work. Like "+", and verbatim searches don't always include every word. If you try to do more advanced searches, like using "intitle:" etc, after a few tries you have to do a Captcha each time. At least, I did last time I tried, a couple of years ago. (Thanks to using an old Mac + old browser, I never see any ads on google, but understand that's a problem for people too.)
What?

OK. You have a mere CSV file with data. What you're stating about HTML is true for the CSV file - _on it's own_.

HTML is nothing more, than a data structure, and fairly good one.
Last revised in 2013 FYI.
Technology doesn't seem to be (in terms of what people can cheaply get hold of) there yet though? Amd as soon as it does get there, you'd arbitrage to third world guys not Western guys who want to live in Thaliand.

We're in a situation where we have offshore (Indian) tech hires and it's hard to coordinate on technical matters, even in a company where we have unlimited access to fancy VC rooms. When we flew them over for a bit everything was far easier. My boss thinks expensive digital whiteboards would make a big difference, but actually more than the money there's a political/social cost to buying big, visible things to sit in public sight in an office.

So why would you hire a Western guy for 3x the price and pay the exact same communication cost? Western and sitting in the same building or 3rd world country no other option seems to make sense.
Even this hasn’t to be only a feature of dynamically typed languages, like Haskells deferred typing shows. (https://downloads.haskell.org/~ghc/latest/docs/html/users_gu...)
January KDE Consistency Update
You might want to read about the Genesis/MegaDrive version for additional context http://fabiensanglard.net/another_world_polygons_Genesis/ind... The two systems are broadly similar, especially wrt. their graphics support so the author seems to skip some things when discussing the SNES.
> I don't want to live in the middle of nowhere and earn 10x what the average local does. I want the people around me to be roughly on my level and share my interests.

You're clearly not a camper or a bow hunter, and you clearly have no particular attraction to pickup trucks.

Point being, your generalization is actually pretty specific to your set of interests. Other folks couldn't imagine not owning a car, getting rid of their dogs, or having to plan a special trip to go fishing.
Weird. The reason Britain moved heavily away from trying to teach kids to "quickly" do mental arithmetic without workings is that that's almost completely useless. A machine will always be faster, more reliable and readily available. "Teach children to be good at mental arithmetic" is a non-goal in the 21st century.

The goal instead is to get them to understand what's actually going on - why 7 x 9 = 63 rather than merely the fact that it is, and the workings help assess that's achieved.

This really annoys parents, a parent who has maybe a B in GCSE maths from 1990 looks at their kid's homework and is appalled, why is my capable eight year old not jumping from 17 x 9 straight to 153 without all this nonsense?

Well, because we taught them to think about the number line, which means whereas for you exponentiation was a struggle and the hyper operators a mystery it will all make sense to these kids later because it's the same trick they already learned only more so.
Education/training services seems the natural option. The job is typically “deep-dive in tech X for three days, then build a three-day course on it and hold it a few times”. Opportunities for fulltime roles in the sector tend to be relatively rare, though, and there is plenty of competition.

Otherwise, product management / UX expert.

At worst, sysadmin for smaller companies, where you’ll have to deal with a bunch of different issues. Since you’re an Apple guy, I guess you would concentrate on clients from the media sector. It’s a bit of a blind alley in career terms, though.
How is it too manual compared to eg C# where I need to implement IDisposable and wrap use of variables in "using" to really ensure something is cleaned up when I want it cleaned up (without risky memory ballooning relying on the GC)?
C++ destructors to clean up your resources are really neat. And deterministic - you know when stuff is going to get cleaned up.

Or was it some other "manual" feature that's too much of a burden? Honestly curious.
A complex browser API like canvas requires much more effort to "emulate" in WASI than a simple 2D framebuffer access. I think emulating the Linux framebuffer device is the right first step.

PS: I think there's some confusion about WASM running in browsers, vs WASM running on top of WASI. WASI is all about running WASM outside the browser: https://wasi.dev/
C++ coroutines are pretty much the same as stackless generators/async from other languages (python, JS, C#). They have nothing to do with range for.

They are not stackful coroutines, like thise from lua for example, but multiple implementations of thise are available as a library. There still a chance they might make it to the standard library.
I really feel like they should teach LISP in elementary school

They used to... LOGO is a LISP.
Lol, imagine thinking housing serving as a speculative asset for global Capital doesn’t constrain and distort supply away from what is needed vs what provides the greatest returns for this class of investors.
I had at least one autonomous landing due to heavy fog. Was announced by the captain, he said something like: "Because of the weather conditions, we'll use automatic landing for safety reasons". Landing was quite flawless, despite the fact that I couldn't see the ground until we were a couple of meters close. But the landing approach seemed to take longer, maybe there is a trade-off.
This is true for all languages and projects you inherit though. Eg I am trying to use Magento in PHP land and it is truly grotesque.
> They knew full well...

How? Short of some background, this could easily be a massive assumption.
What I described is certainly the situation at e.g. Illinois, Indiana, and Nebraska, to name three "Big Ten" schools. I suppose I haven't done a complete survey, however. There are lots of other, smaller colleges where this is also true.
Yeah, but couldn't you also simply disconnect the beacons with a wirecutter?

I mean, every technical system can be shutdown and will shutdown sometimes, isn't that a inherent weakness of such a system?

if that beacon does not respond disable automation for that part?
> ...housing costs skyrocket...

In the short term, sure, but there's plenty of room in KC.
True to some extent but education is good and knowing the language you are using can only be a good thing.

The same could be said of English. Would you switch to another language because someone uses a word you have never used before?
Interesting! I spend quite some time sim-racing, so I know some track layouts very well. I might try and use them as a memory palace.

As a trial, I'll map all James Bond movies in chronological order to the track while I drive through it and see whether I'll be able to recall them more easily than I can now.
Indeed. Or anything else on https://en.m.wikipedia.org/wiki/Orchestration_%28computing%2.... To write as if Kubernetes is required to orchestrate computing (particularly in an environment where other containment tech is already available) shows unfamiliarity with a huge body of work from the last two decades.
The entire partition is signed so the machine will detect it
I think at that point you probably need a major refactor, regardless of the language being used. While I don't want to be in that situation, I'll typically use a helper class if I'm forced to pass something through 13 layers (a class containing all the arguments).

However, that's pretty much the textbook example for designing with dependency injection in mind. Static typing won't fix a terrible architecture.
Ask HN: Is YC AI track still active?
I just learned about YC AI track.
I never seen any link for it before though.

Is it still active?
our startup is chatbot AI for Arabic.
For still images PNG replaced GIF, but both MNG and APNG suffered from missing browser support for most of their life (particularly from Chrome), leaving GIF as the only viable format for silent moving pictures (until the rise of webp).