skysight-inc/HackerNews huggingface dataset:
> You might have picked a bad demo project to show off the efficiency of NUM. It takes me 58 requests and (on my very fast connection) 5.3 seconds to download all the information for Barclays.

That’s very slow, I’d be interested how much of the delay is from the DNS calls and how much is overhead from the demo site.

We’ve purposely chosen to demo this site because it’s an example of an intensive NUM implementation.

> Downloading a JSON blob with all the data for Barclays, parsing it, and displaying it, would take a fraction of the time.

Of course, but that data doesn’t exist. Barclays’ phone numbers are split over hundreds of web pages which would require much more data download. I think your argument is that we could supply the data in JSON form, but then developers building on top of this data, would have to count out on our JSON response being fast and reliable.

What we’re describing here is the current state-of-the-art, it’s an API model where developers usually pay to access that data.

Barclays is a massive organisation with a very complicated contact setup. Smaller businesses are obviously much simpler, with all of their contact data contained within a single UDP packet of maybe 300 bytes.
Time we made BSL5, which is like dealing with a nuclear reactor. Everything is sealed inside when the lab is built, and lab operators operate everything remotely. No atoms ever enter or leave the lab during its lifespan.
It's not about "we", it's about "you", and what you choose to do with your life-- right now, not tomorrow or whenever the "consensus" agrees on it, but what you put in your own environment and body of your own volition.
A QR code is baked on the backside on it in the bakery. People with too much time (and bread) on their hands soon figure out which spots you need to darken with a clothes iron so the checksum still matches and the toaster accepts the slice.
Great idea, I’ll get that added in!
Which would you like?
If you never want to learn Haskell (or PureScript or similar) then the author even says in the `If They're So Wonderful Why Aren't They In My Favorite Language?` section:

"If you don't need IO sequencing, or purity because your language doesn't care about purity, or the list implementation's nondeterminism because that's a parlor trick, or STM because your ecosystem doesn't use it... there's not much point to worrying about it. Monad implementations in languages other than Haskell fail to take off because there generally isn't even a single thing that is improved by working with it through a monad interface, let alone a family of such things."

"[...]It's definitely an interesting idea, and if you are a curious programmer, it's worth learning about this particular interface and what it can do. But it's not something you generally directly take back to your language"
This is one of the reasons Germans/Swiss freak out about too exact power metering, it's a privacy issue.

Germans did royally fuck this up at one point and they had a provider that measured power consumption at so high a frequency that you could detect what TV show people were watching based on the power consumption. [0]

[0] https://nakedsecurity.sophos.com/2012/01/08/28c3-smart-meter...
Drat! it took em: 00:09:23. That bloody accept terms and those checkmarks at the end got me good. Nice game and great way to get people to want to apply. Kudos to the creators.
Very much reflects my experience. I am with a US tech now and they are very conducive to hiring Brits. They know on the whole we hold a lot of quality engineers, there are no language barriers , very little cultural differences at all.
Lol. No, they don’t roll back transactions.
I disagree. It is the most reasonable conclusion that originating all things means the originator can do all things with those things and knows all there is to know about the orignated things.
> you are dangerously close to concluding that your way is the One True Way to learn here

No I’m not. I’m only arguing that there’s clearly room for discussion. That different strokes for different folks is a cop-out (in fact, I don’t believe it’s ever a useful idiom).

In fact, I don’t think I’ve even suggested a preference for any particular strategy — well, other than that beating someone with a shovel is not an effective method of education, but I assume you already agree with that.

Unless you’ve determined that any willingness to engage is in itself a signal to extreme preference (or taking an extreme stance against your position) — but I believe thats known as a ridiculous assumption.
tinder is mostly filled up with psychologically types. This is a good video on it

https://www.youtube.com/watch?v=2l2rnvZvao0
A bear case for social audio
One difference would be that population was relatively low (and growing fast). In 1870 the population of the US was similar to that of France.
Well, kind of. I would argue that most code does not need to be thread safe because it is not intended to run in a multi-threaded environment. I once worked on a application where it was 'standard' to run everything in a thread pool so basically everything could run simultaneous to everything else. Problem was that there also was lots of state to manage. So then one ends up giving every class one or more locks. Also, this particular application was not the high-performance part of the application. Obvious solution is to run most of the application in a single thread message loop and get rid of all of the locks. This appears to be heresy nowadays though. The high profile C++-ers tell us that everything has to be thread safe.
It is not short-sighted and I think it's a disservice to spread that theory because then people can just shrug and say: "a more profitable & moral company will outcompete them". If you instead believe that locking people in is profitable, the next step would be to make laws against it (if you signed up one way you need to be able to cancel via the same method; phone, internet, fax).
That's a redefinition of the word "apartheid". Probably done to use its emotional connotations.

"Comic version of Apartheid"?

Apartheid was an actual political system, implemented and practiced for years.

Much more that not being an "equal partner", it involved enforced legislation to classify people according to race and then to restrict rights based on that classification.

NOTE: I'm not weighing in on the Palestinian/Israeli issue here, but as someone who grew up under the Apartheid regime, I'm objecting to what I feel is misuse of the word.
It will have the full dataset and all features. Whatever you expect from a real offline mode :)
The Air Force knows how to identify other planes. It's not hard (for them). Radar and flight plans give little margin of doubt.
Comet strike may have sparked civilisation shift
And on the flip side tech gets Leetcode interviews, shoehorned microservices when you dont need it, slow web browsers.

The game industry iterates far faster and the result are programs that can handle far more features than the average tech methodology. It's the classic quantity leads to quality pottery grading experiment. Have you ever considered that these 'best practices' pile on so much unneeded crap that an experienced developer doesn't need?
Do LED TVs really get that hot? I guess a little where the backlight is but that isn't the whole or the panel
This program (FRIPON) https://www.aanda.org/articles/aa/full_html/2020/12/aa38649-... was cited here https://www.3af.fr/global/gene/link.php?doc_id=3695&fg=1 as a candidate for repurposing for UAP detection. I'm not familiar with the legitimacy of the 3af french org, so perhaps should be taken w/ a grain of salt?
I love OpenSCAD for specific tasks like modeling microcontrollers against vendor datasheets. While this is not often required with commercial tools and conventional component suppliers, KiCad + chipageddon + being based in China means I've done quite a bit of that recently and it's been largely efficient, cross-platform and up to task. I am competent with Blender, but prefer OpenSCAD for this domain. Haven't really looked in to SolveSpace.
Teaching Machines: the history of personalized learning
so much data extrapolation its hard to follow.
That sounds incredibly naive.

Why remove large groups of skilled engineers in your businesses domain and have to retrain again, because of a political change. I can understand a company with a manufacturing base doing this (due to import / export regulations changing), but this makes no sense in software.
But the people saying it was like a flu, were vilified.
In Pursuit of Post-National Politics
For the context: Haskell was 4th or 5th language I learnt and the first pure functional one. My graduation thesis work was in Haskell and its backend/compiler so at one point I was living/breathing Haskell.

> ...too often act like ivory towers...

I 100% agree with this. The Haskell community as a whole and various tutorials etc., aren't optimised for a new comer.

For instance, you don't see a "stand up a web app in Haskell in 10 minutes" tutorials. Historically it may have worked in Haskell's favour to slowly induct learners, but in this age where languages are fighting for mind space I don't agree that's a good approach anymore.

Simon Peyton Jones (SPJ), an earliest and a famous champion of Haskell coined the phrase "avoid success at all cost" in a certain context which may have had some role in making Haskell seem Ivory Towerish.

A language, like any living being, needs to adopt to survive and thrive. It's unfortunate to see Haskell remain a niche language even after close to 3 decades.

> and that simply is not how my brain is wired.

This, however, I disagree with. I mean in a general sense, not specific to how your brain is wired. It all depends on the first couple of language that one learns and how they are learnt and taught. 10-15 years ago people would find it hard to grok Python's functional concepts. But as it began to be taught as the first language in universities and those graduates join the working population you see how it's super natural for them to grok Python.
But you don’t store your toast data in the toaster do you?
Proof of work systems are in trouble. China's government has had it with the power drain. Last Saturday, most of the major Bitcoin mining operations in China had their power cut off. Hash rate is way down. China's Bitcoin miners are frantically trying to find cheap gigawatts elsewhere in the world.
A functor is two things:

- a parametrized type, like for instance List: you can have lists of integers, floats, functions, or any other type

- a way of mapping (in the sense of List.map) between instances of the parametrized type, given regular functions. This mapping should behave nicely with respect to regular function composition.

If your parametrized type is F, then the mapping operation turns ("lifts") regular functions A -> B into functions (F A) -> (F B) in a reasonable way: "if you give me a function then I can transform any list using it".

Functors can be used to "decorate" values: you can model exceptions (some value or an error), promises (some value not yet computed), state (some value + side effects) and many other kinds of effects using functors.

So in general an effectful computation will have type A -> (F B) for some functor F modeling the effect. And now you have a problem: how to compose effectful computations in order to build larger programs out of smaller ones? You cannot simply compose A -> (F B) with B -> (F C) since the types don't match.

What you need is a way of transforming an effectful computation B -> (F C) into a lifted function (F B) -> (F C) so that you can compose A -> (F B) with (F B) -> (F C) in order to get A -> (F C).

That device should satisfy some properties to make effectful composition work the way you expect (in particular there should exist identity effectful computations), and is called a monad.

A monad is a functor + some extra operations (bind/return) satisfying properties that will make effectful computations (using this functor) composable.

The type of bind is generally written (F A) -> (A -> F B) -> (F B) but really it is the same as (A -> F B) -> (F A -> F B) above (takes an effectful computation, gives back a lifted function).
It depends. One approach to avoiding tricky memory management issues is to avoid memory management altogether. In the kind of applications where C is a good choice, you might consider strategies like allocating all the memory you need to work with besides small structs which fit on the stack when the program starts and then never deallocate. If you're worried about performance this is often a very good strategy.
I was waiting for that. :)
I would agree that Debian packaging is unnecessarily complicated. The raw stuff is tedious, so various wrappers have been created. In the wild you see a mixture of wrappers and lower level packaging, making everything more complicated for the occasional user.

I started with Debian (not as a packager, but just as a technical user who occasionally wants to do his own stuff). Years later I was forced to use rpm and was suprised that things could be so straight-forward. Yet years later I was forced to look at Arch and was suprised again: Hey, you can understand all of it just in a couple of hours.

Accumulated experience might result in a slightly biased perception. But I still believe the described gradient exists.
Does it come with out of band managment systems? I have a difficult time seeing how Intel will benefit this outside of the chip Fab process. Granted this is substantially a branch in a different direction.. I expect very little for non NDA customers on their side.
> C# native interop is very, very nice.

Actually it was already there in J++, and now we have Oracle trying to add back what Sun killed in 2000, with keeping 26 years of history running, it is ironic how some things turn around.
I ran a Softimage house in the mid-to-late 90s and we had SGI Indigo workstations and a Dec Alpha mental ray render farm of about 30 machines or so. There were certain renders, scenes, particularly anything with ray marching or volumetric light, where we couldn't have the SGIs participate in the render because their contributions were slightly different and resulted in a distinct checkerboard look.
The thing about crackpots with wildly unsubstantiated self-aggrandizing anthropological theories is that they often wield disproportionate power and influence. Take the Mormon church for example: they believe Native Americans were white Jews who were cursed with dark skin and it was god's will they be wiped out by European settlers. It's horrifically racist and there's zero evidence to support the origin story. And yet, the church holds over $100 billion in their investment portfolio alone and nearly had one of their own elected as US president. It's hard to laugh at.
VS2015 was the last sturdy release. With VS2017 I had occasional hangs and crashes, but VS2019 either crashes or needs to be rebooted a couple times per day just to function. Intellicode is constantly breaking, test explorer only works reliability once a month, and it corrupts itself badly enough to need manual obj/ deletion at least once every few weeks. In their infinite wisdom, msbuild devs decided not to always clean the obj/ directory in the clean target by default. This is my experience on solutions with around a dozen projects, maybe 500k-1m loc across the solution. And it still barely understands how to use ram. Even if you let it see 64+gb, it will swap to disk.
> but the fact that you can't reliably see what's in there by looking means people will just learn to open it and browse with the door open, letting the cold air out.

Now that I know these exist, I kinda feel like being contrary and opening every single one to "look for" whatever it was I wanted.
Political minefield
There are many points south of SF against the Bay where the solid ground is down far enough that they instead drive piles until they find enough resistance.

Oracle's HQ is still standing. But the (East) Palo Alto 4 Seasons Hotel, whoops.
You are applying your own understanding and rules of benevolence to an Almighty creator you cannot even begin to understand. Let me spin it to you this way, if humans do evil then should an Almighty and Benevolent God ignore such evil (become unjust) or prevent such things from happenning? (Take away free will). The very first chapters of the Bible tell you bad things are a consequence of free will applied in an evil way (sin). Directly or inderctly all these things you consider "bad" are a consequence of sin. Even bad things that happen to innocent people happen because such evil, like a disease was introduced into the world by humans.
Okay Vercel, you've won me over Sort of
There‘s Jon Blow working on his new language JAI and game-dev:

https://twitch.tv/j_blow

Another channel is Casey Muratori‘s Handmade Hero, which is about developing a game from scratch.

https://twitch.tv/handmade_hero

https://handmadehero.org/
Thanks for your kind comment.

The standardised use cases of NUM (currently contact data, images [gravatar for domains] and some others) would allow you as a small website operator to publish any public data that you wanted to be machine-readable.

I think your question might be how to use NUM to serve out your small text-file snippets? If so, NUM could be used for that. NUM lookups are based on URIs, eg:

num://numexample.com:1

In this example module 1 is contact data and lookups for this uri involve a query to the dns for:

dig 1._num.numexample.com TXT

If instead of publishing contact data you wanted to publish general purpose data you can do this using “module zero”. For example data could be published form the NUM URI num://numexample.com:0/foo

The DNS location is:

foo.0._num.numexample.com
Why are all the things I post dead?
Understanding modern image loading on Android
Solve software problems by adding more
Show HN: I wrote a book about Java Interview
Not to worry, we'll be in WW3 by then, as states try to respond to mass upheavals caused by our failure to stop catastrophic climate change. Toast will not be a primary concern.
I would also be excited, unfortunely in what concerns Web development we never do everything from scratch, rather build on top of Sitecore, SharePoint, Dynamics, while destop stuff always ends up having some 3rd party commercial components like Telerik, ComponentOne, Office or VS Plugins,...
Two books that might help:

Courage to be Disliked - it's helped me put different life problems in perspective.

Mountains Beyond Mountains: The Quest of Dr. Paul Farmer, a Man Who Would Cure the World - This has been on my bookshelf for a long time, I just picked it up recently, looking for meaning after witnessing covid devastation around. Just a couple chapters in, but it is a really inspiring book.
We are talking about a renderer. Renderers definitely need to deallocate or otherwise manage memory :)
You don't need to chroot for cross-compiling, Debian supports multi-arch for most of the packages. You just install the cross-compiler, the cross-libc and all native development packages for the architecture you're building for.
Is there any benefit to using these?
I imagine that maybe it could save power by keeping light out and uaing better insulation... but I have no idea.
You can use dotnet-install for that https://docs.microsoft.com/en-us/dotnet/core/tools/dotnet-in...
Flat News Blogger Template v2.6.5 ( Free Download)
I honestly feel bad for kids today.

I remember being a teenager with too much time who wanted to find ways to make money. I would find clearance deals on old stock high end bicycles on ebay and part them out. I actually learned a lot from doing that. I probably made less than minimum wage for all the time I put in but it added up and I had fun.

I could see my 16 year old self having gotten caught up in stuff like this instead if it was around and I got over excited and thought there was a way to make real money.
Decentralized Live Streaming Solutions with Blockchain
> these languages and runtimes are indeed much safer, and also much more productive than C. You can even still get the same amount of low-level control with Rust.

Rust is not a C analog. The whole value proposition of C is simplicity, and Rust is anything but simple.

>> but perhaps in another decade or so, you might not be allowed to program in 'unsafe' languages on all other mainstream platforms, unless you register for a driver/system developer license or something, or not even that.

> Lunacy. What is the evidence for this?

Look at a platform like Apple. Every release makes it harder to run arbitrary code.

>> The tinkerer/hacker ethos is disappearing slowly from PCs.

>It was only ever there in the first place with a tiny minority of users, and that minority seems as committed to their craft as they've ever been.

What do you mean? In early PC's, the way you ran software was to copy code from a magazine and compile and run it on your workstation. Being a PC user at all meant being a tinkerer/hacker a few decades ago.
Yes; if you're not rich and/or happy, stay the fuck away from addictive shit like video games. Truly an industry that causes WAY more harm than good, by several orders of magnitude.
> You can't force anything

Sounds like you don’t have the right perspective.
ClickBank Best Selling Products
We use fullstory which does the same, it's great not only for debugging, our company is Fintech and fraud and compliance departments can't live without it.
Apart from simplicity, it was designed to be used with "thenables". If the value that a Promise resolved with had a `then()` member, the value would be treated like a first-party Promise. So even if there was a separate fmap-then and bind-then, the fmap-then would have to deal with thenables and act like bind-then anyway.

There's a bunch of history in [1], particularly [2] and [3], if you care to read them.

[1]: https://github.com/promises-aplus/promises-spec/issues

[2]: https://github.com/promises-aplus/promises-spec/issues/75

[3]: https://github.com/promises-aplus/promises-spec/issues/94
> E: py3 was released in Dec 2008. So I guess those first two years might have been tough.

3.2 was released early 2011, and P2 compatibility features were reintroduced as late as 3.5 (% on bytes) in 2015, though for my money the last key one was the reintroduction of the `u` prefix in Python 3.3, in 2012. That's the point at which the migration really became feasible without suffering.

Furthermore that's assuming all dependencies were ported, which was not the case: waiting until porting was feasible (and they had the time and manpower to) was also something they had to wait on e.g. Django first added Python 3 support in 2013 (IIRC PyLint only supported 3.4 onwards), difficult to port your own software if the stuff you depend on hasn't been ported over.
> This, however, I disagree with. I mean in a general sense, not specific to how your brain is wired. It all depends on the first couple of language that one learns and how they are learnt and taught. 10-15 years ago people would find it hard to grok Python's functional concepts. But as it began to be taught as the first language in universities and those graduates join the working population you see how it's super natural for them to grok Python.

That must be the reason why Edsger W Dijksta once stated [0]:

> "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."

... and ...

> "The use of COBOL cripples the mind; its teaching should, therefore, be regarded as a criminal offense."

... and ..

> "APL is a mistake, carried through to perfection. It is the language of the future for the programming techniques of the past: it creates a new generation of coding bums."

I must be one of those mentally mutilated programmers with no hope of regeneration :)

---

[0]: https://www.cs.scranton.edu/~mccloske/dijkstra_quotes.html