skysight-inc/HackerNews huggingface dataset:
But we expect this don't we from YouTube? Just as an example of how broken it is I have been live streaming at our local church, our parish priest decided to sing "Tantum ergo" which was written and set to music at best guess 1264. YouTube flagged it.
And Strsafe

https://docs.microsoft.com/en-us/windows/win32/menurc/strsaf...
With all those fraud stories up here, I'm wondering: Has anybody describing such a story in this thread reported the incident to the police after realizing it was fraud?
If the competition involves other Trillion-or-so USD companies, than this is another step in the process of concentration of capital in society - as is the ascendance of Amazon. The amount of power Amazon already has in society is obscenely huge - even if it's not expressed in the form of giant portraits of Jeff Bezos hanging from the sides of buildings.
mmm..someone that earns more than $150K/200K per year?
completely irrational comment - the web of the past was garbage and simplistic, and no amount of spaghetti jquery will ever change that HN is full of "le wrong generation"and nostalgia blinded devs who think everything in the past was better when it was complete rubbish just like the 90s
Do-notation papers over map and bind in the same way that for-loops paper over cmp and jmp.

I do not want to go back to map and bind.
Also, Millennial Farmer has similar videos.

https://www.youtube.com/channel/UCp0rRUsMDlJ1meYAQ6_37Dw
But that's great until it isn't.

You can design all the declarative things you want, but someone will eventually come up with a requirement that doesn't appear to fit a declarative structure, such as an event that fires 2 seconds after something else happens.

And so to resolve that you can construct state machines with transition states to get back to a declarative model, but those state machines can quickly become a bigger headache to maintain (yes, even with redux) than if you'd just been able to setTimeout from the component in the first place.

And you start with the best of intentions of re-usable components but find more things that ought to be owned by the component pushed up to the store and suddenly there isn't a neatly re-usable component but an empty shell of something that still needs the other half plumbed in manually every time.

I love the idea that you can abstract everything happening in an application to state and render reproducibly from that, but the reality is that it's really hard and time-expensive to do compared to jquery.

But that would be fine if the tooling was there. If React had a CLI like the AngularCLI it wouldn't be such a problem to add new actions, or new pieces of state, or new components.

But it doesn't, so each new component ends up adding a little more state into the state machine which ends up breaking types in far off places.

Now there's probably an assumption about how state is built up or how reducers are typed or how actions are defined that I'm missing some reason why this shouldn't be happening. But it is happening, it's the reality for the project I've been working on and it's a real headache.
I can't tell if sarcasm. That username and we being on hn isn't helping.
This is a very old opinion, and one I don't think has aged terribly well. How old? Partway down the page there's a link called "new developments" that cites GHC 6.12, a version that came out in 2009!

Some thing it cites are still reasonably true, but others are complaints that reflect the Haskell of a different era. For example, it says, "Even more unfortunate, the applicative functors were introduced to Haskell's standard libraries only after monads and arrows, thus many types are instances of Monad and Arrow classes, but not as many are instances of Applicative." This has not been true for about half a decade, when Applicative was made a superclass of Monad. The article follows with: "There is no special syntax for applicative functors because it is hardly necessary." This is also no longer true, since the introduction of ApplicativeDo: even if you don't like it (and I confess I'm not a huge fan of ApplicativeDo myself!) it turns out that many people do find that sugar easier to write.

However, I think the key point I'd make is: all the advantages listed here of using monad without do-notation are real in some cases, but there's nothing stopping you from not using do-notation sporadically! Occasionally a snippet that uses do-notation can be made much clearer by using >>= or some other monadic function, and occasionally a snippet that uses >>= can be made much clearer by using do-notation, and I don't think there's anything inherently wrong with Haskell keeping both. To make a Python analogy: sometimes you can express a given construct more clearly with a loop than with a list comprehension, but I don't think that list comprehensions should be considered harmful: just use those tools when you need them, and don't use them when you don't need them!
The font smoothing/antialiasing problem is not everywhere, which makes it look even weirder. See this dialog for instance: https://i.imgur.com/L5S8Tqn.png

Where the text "0 participants per room" have been applied too much anti-aliasing.
I think you're right that imperative semantics are natural for people in some contexts, but far from all the time. For someone who has worked hard day after day for years to fit all kinds of problems into an imperative mould, it will of course appear more "natural" than for others.

Cooking recipes are good examples of imperative "scripts", and for the most part it would be silly to try to write them in a declarative style. But note that they too often contain declarative formulas, like "if the pancakes stick to the pan, use more butter". It's the most natural thing in the world to add such regulative rules. There is no mention of exactly when this rule should be applied, in the sense of where it fits into a sequence, and trying to formulate it that way would be cumbersome.

It's a big drawback for the industry languages you allude to (and for the software industry as a whole) that there is no simple way to integrate such rules into programs. (I suppose aspect oriented programming is/was an attempt at that.)

You can also read through the rules for any board game. They typically consist of a mix of imperative, sequential instructions, regulative rules, and constraints. Why? Because that is the most natural thing.
Not a very compelling article.

None of the drawbacks stated are really serious issues, or issues at all. Everyone with a bit of experience will be aware of the possible drawbacks and knows how to avoid this.

Newcomers probably have other things on their mind. Their app is not going to break, because their code is somewhat clumsy.

And more importantly: do-notation is really awesome!
Monaco is not under blocus by France, though.

In fact, when France decided a very light blocus in 1962 and started treating Monaco simply as a foreign state (simply reinstating border controls) it only took a few months for Monaco to give in, stop being a tax haven and adopt a new constitution.

So Monaco might actually be a good example of how difficult the situation is in Gaza right now, because it's under much more difficult conditions than those that were enough to make Monaco cave in. And Gaza started from a much worse position to begin with.
A /16 has ~65k unique IPs.
If you were both using home WiFi, you shared an IP address. That's enough to co-localize the two of you.
If they can lay off 20% of their employees then it appears that 1) is true. Overhiring 5400 employees isn't just about something being "more complicated".
48!/44!
So we are handing over even more of our spaces to Law enforcement because won't somebody think of the children.

Has TraffickCam ever made a match on Sex Trafficking?

Whats to stop it's use for other crimes, like an Asian countries government using it to track meetings of the opposition? Or the location of a refugee.

And who is running this? Where does the $ go.
THIS is what I wish I knew about React. As a Java user, I made incredibly wrong and damaging assumptions because "classes, I know what these are"! I still can't make heads or tails of hooks, but in due time!
Previous discussion: https://news.ycombinator.com/item?id=10526159

(Fixed to actually point at discussion of fat pointers; thanks, ‘dgellow.)
This is that moment that proves we’ve made no progress on desktop. In 1990s we had Borland Delphi and CBuilder, in 2000s we had .Net and Qt, now this? How on Earth this is better?
Yeah but how is that different from any other UI framework?

onCreate/onStart/onResume and onComponentDidMount, onPause/onStop/onDestroy and onComponentWillUnmount are basically the same. Be it Android, Swing, or Qt, everywhere it's the same pattern.

React is the first framework which actually feels like UI development on the web, not anymore like JS spaghetti.

In fact, having internal state, externally given props, exposing events, and being declared through markup is exactly the same between React, Android or Qt.

The only thing React brought to the table was allowing you to basically just recreate the children every time something changed, and it'd diff automatically.

For us native devs this thread is hilarious, because it's just JS decs complaining over things we've always done
Advice #1: "• Learn how to learn from those you disagree with, or even offend you. See if you can find the truth in what they believe."
>> Opera became the first major web browser to offer default IPFS support on Android, shortly after Brave started directly embedding the IPFS Companion extension (complete with a built-in js-ipfs node). This means millions of people around the world now have access to the decentralized web built directly into their browsers.

Wow. Thank you IPFS community.
> Ensure your child is happy and healthy. Those are the most important measurements.

A cat, a goldfish or even a houseplant are 'healthy and happy'.

I'm hoping we as human beings strive to move beyond a simple vegetable existence.
Microsoft’s PR department is seriously doing the best job, it‘s insane.

Anecdotal evidence suggests they are now almost beloved. In the tech community as well as enterprise (where they have always been). They are almost never mentioned in Antitrust discussions. Many seem to hate/distrust Google, Facebook and to some extent Amazon.

All the while MS has the highest market cap and is integrating and consolidating right, left and center.

I can only imagine it is because they have fewer touch points with consumers. They rake in insane amounts of cash with Azure, almost automatically. They don‘t have to deal with republicans accusing them of “liberal bias” or end user privacy in general. Even though WIN10 has telemetry just as deep as Android.

Life sure is nice when your main source of revenue is enterprise.
What is wrong with Swing?

Coz I use it every day, and despite many little deficiencies, it still compares well to other cross-platform toolkits.
You're misunderstanding Haskell and do-notation. Haskell does not "[attempt] to appear imperative to be palatable to more people".

Haskell has to have a way of handling effects because no useful program can be written without effects. Even if that is as simple as printing output on completion, that is still an effect. Haskell furthermore needs to integrate effects into the language in such as way it does not break the substitution model of evaluation because 1) that's the goal of Haskell as defined back in 1992-ish and 2) order of evaluation is hard to reason about in a lazy language. Monads are Haskell's solution to this, and do-notation is syntax that makes monads easier to use. There is nothing here to do with popularity.

Furthermore, claims that "Imperative programming is the most natural thing for people" is not true. All programming is an artificial construction. There is no "naturalness" to be found here, only familiarity and prior experience. In my experience non-programmers take easily to functional programming. Experienced imperative programmers may struggle a bit.
Yes. That's the other way of expressing the distinction between frameworks and libraries.

And I think most people do use React as a framework. (But I could be underestimating those who use it in the second way, of course).
This just shows how many people don't have healthy respectful relationships with their children.
Look where that ideology has got us right now, unable to provide basic protective equipment to people working in dangerous situations.
There are arguments that don't involve "private property, absolute authority" which permit both some censorship (in the public interest), and some guarantees of access most especially to under-served, unprivileged, and minority viewpoints (also in the public interest).

That argument is public interest.
Although I agree with the actions this person has taken, and I agree that privacy is an excellent reason, his webpage describing adwords and adsense was not that scary at face value.

I think it is much more scary if you realize that google works very hard to identify who you are accurately, and even matches it with things like offline purchase data.

The opposite of privacy is identification, and google is arguably the most capable and well-funded identification service on the planet.

I also think we as tech people should set a good example.

We could map the path for the less technically adept folks around us to take steps in the right direction.

We could provide support instead of ridicule when people make inconvenient choices instead of giving in.

And we could BE people who care about privacy, even if it is just to read the privacy policy, or block some trackers.
Safe Unsafe Operations in Elm
Also abbreviate address terms: RD, LN, ST, not Road, Lane, Street.
Except for the replacement Air Force One aircraft which are to be a modified 747-8s.

https://www.thedrive.com/the-war-zone/27179/exclusive-photos...
If only doing the same at work was this easy…
I can agree. I'd take a bit of SSR and JS + jQuery any day over big and heavy JS frameworks.

Even if I'd write the backend as an API without no SSR, I would prefer to write the frontend in HTML + CSS + vanilla JS + jQuery. It feels more intuitive to me as there are no abstractions to complicate things, no opinionated framework to force me do things its predefined way.
I just started studying svelte today (alongside Vue). I look forward to sharing my thoughts soon.
I'm sure they benefit a lot from FOSS projects they don't contribute back to. I don't think it's so unreasonable to expect them to contribute back to other projects at least.
Nice. I worked on Trimble packet radios and other products that shared the firmware codebase. Autonomous steering and "TCAS for vehicles" of JD, Cat and Case equipment had working prototypes in 2000. Back then, horizontal blade angle was doable using kinematic GPS with antennas on each end of the blade.
True, but it's important to remember hooks were only released about a year ago - many large projects in existence before then will either not have migrated or be in a state of partial migration.

I'm glad they're putting the effort into making the API simpler and easier to use to address some of those concerns, but React itself has been around for seven years now - the vast majority of existing developments will have been started using versions of React created before hooks were introduced.
Done that. My manager finds it so good when he can hot-fix issue.

Just that some third party plugins are written in es6, it would be cumbersome if you need to support ie11 in a enterprise setting.

Also if you have quite a lot of vue components to load, it would take longer time than compile first with webpack in http1.
Unabomber not Unibomber, not that it matters. Ted Kaczynski, the man you are referring to is a fascinating man, try to ignore all of the recent hype and delusion following that Netflix series. I encourage everyone to read his book "Industrial Society and Its Future", he is without a doubt a luddite but presents some very compelling reasons in the book, if nothing else it will give you some insight into a rather notorious but perhaps unfairly represented character.
(author here) I didn't know about this fast inverse trick, but i find it VERY funny that in "Memories" i use almost the same technique to create the "ocean" effect ;) http://www.sizecoding.org/wiki/Memories#Ocean_night_to_day_2 Maybe i was inverse square rooting all the time without knowing it ^^
> For example, the return of map could provide indexing,

You can provide more interfaces in Rust:

fn map(...) -> impl Iterator<Item=U> + Index<Target=U>

but you can't provide "conditional" interfaces (for most interfaces at least), e.g., this won't work:

fn map(...) -> impl Iterator<Item=U> + ?Index<Target=U>

where `?Index` reads as "maybe implements Index".

To allow that you would essentially need to say that "if the input implements `Index`, the output implements `Index`":

fn map<U, T, F, I, O>(it: I) -> O
where I: Iterator<Item=T>, U: From<T>,
O: impl Iterator<Item=U>,
I:?Index<Target=T> -> O:?Index<Target=U>
{
it.map(|t| From::from(t))
}

The type system implementation already supports these types of constraints, but there isn't a language extension that exposes that. I don't see any fundamental reasons that make this impossible, but there are many trade-offs involved.

Notice that, for example, the output Range does not implement the same interfaces as the input range, e.g., the input Range implements an `Index` interface over a range of `T`s, but the output Range implements an `Index` interface over a range of `U`s. In D this is super implicit in the implementation details (body) of an equivalent `map` function, but in Rust it needs to be part of the type signature to avoid changes to a function body to silently cause API breaking changes. In D, you could change the body of map to map only from Range(T) -> Range(T), without changing its interface, and that would break all code using it to map a Range(T)->Range(U).
Spitzer Telescope Reveals the Precise Timing of a Black Hole Dance
"45% compared with 61% in mid-March"

"a significant majority of job losses, 67% nationally, were reported as temporary layoffs"
Λm.me – Consider Haskell
I agree with the other commenter. This could just as much fight trafficking as it could be an "FDCS" or "Foreign Data Collection Scheme"

The Australian Strategic Policy Institute has some excellent examples in their paper from a few months ago. If anyone knows if similar work being done, please suggest.

[1] - https://www.aspi.org.au/report/engineering-global-consent-ch...
Yes, my family think I’m a Luddite for not using HSBCs voice recognition security on telephone banking
I'd rather use no JS framework at all. But, if forced to use one, I'd pick Vue, as that seems the less opinionated and simple framework.
"38 Years Old", The Tragically Hip.
Al Alcorn, creator of Pong, explains the NTSC color graphics trick
It's crazy to me that it's normal now to have like 3-4 compilation/transpilation steps when working on a simple JS-based app.

You don't need a bundler. All the major browsers will run ES6 modules these days (https://caniuse.com/#feat=es6-module and https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guid...). We use bundlers because we still target older browsers and a lot of library code isn't in a format that works in browsers yet (and probably never will be in a lot of cases).
“ Google Research Football Environment is a novel Reinforcement Learning environment where agents aim to master the world’s most popular sport -- football.”
from who?
Major benefit: eventually, all the news networks will be able to decide that instead of whatever each candidate said, they all actually agreed that Medicare for all was the right choice, and that it will be the center of their platform.

And once elected, they'll be stuck doing it, or the news networks will decide that it did happen, and no one will be able to figure out that it actually was not. At that point, is there any difference?
I used to belong to a filmmakers' group, so I read the article. Some good suggestions about gear, not so much about filmmaking or editing.

Ironically, they overexerted themselves:

- the "theater experience" is not about the camera or image quality, it's about the sound quality/sound track. You can show grainy film with stereo CD-quality sound, and nobody will complain. Try the reverse and see what happens.

- looked like years of editing - for VOD. Why? They could have done two more films in that time window.

- sounds like a lot of SFX - why? A lot of movies have only a handful.

- as far as "oldversion" software - well, when do you think the engines for that softwarwe were written? Probably the 80s or 90s.

If you look at any music studio, they're using like 2010 Macbook Pros (you can replace the battery and they have Firewire), along with DAWs from ... the oughts.

"The original Blair Witch Project was not shot with a DSLR, it was shot with a Digital 8 camcorder and 16mm film."

A data point from another low-budget film, but that one made it to theaters even.
I am suspect of any argument that says React is better or worse than jQuery. The < or > sign will depend on what problem you are trying to solve.

React and optionally react-redux is more complex in itself, but it is really trying to tame app complexity you'd get with lots a jQuery sprinkled around. With react, you can reason about the state of the app, and know the current view is calculated by a (hopefully!) pure function f that maps state to the view.

Don't really see the issue with HOCs. I am not seeing why they are a terrible idea. I think they are quite elegant actually.

SSR I might have to agree with you. I haven't yet understood why it is needed honestly. Is it SEO or something? Or is it speed of deep linking into a 'page' of your SPA.

As for the compilation steps - meh. This sort of stuff is done a lot on the back end in larger projects too - pre compilation steps and wat not. It's not a big deal with a bit of webpack watching.
But if one would lile to write in jsx, which is the default in react, the doc still guide you to use a preprocessor for production.
Dancing gargantuan black holes perform on cue
I’m prepared to go back as the developer I am today versus the developer I was before.

It’s almost like just when we’re ready to write some dope Jquery code, it’s time to go write in a new framework.

I can say for certain the best React code we will all write will be 5 years from now, but, it’ll be time to move on to the next one.
Is this blog post confused or am I confused? It keeps talking about fat pointers but the description looks much more like "arrays with their length stored before their first element," which is a massive difference.
It doesn't even matter because you know when it does launch, there will be some one in a million malfunction that destructively aborts the mission.
I think the latter. Fat pointers were supposed to be 2 pointers wide, not 1...
I believe they said they walk but even so I cannot imagine much difference.

If you are concerned the logical thing is to cook your own dinner and burn zero gas.
> Trillions of dollars worth of airplanes rotting in the sun???

Should make for an interesting location in a post-apocalyptic or science-and-sorcery story.
I am not so up to date with frontend dev but what's with the hate towards React these days? It still does what it's supposed to do very well and very fast. Yeah sure if you want JSX you need transpilation but I would want that anyway if I want any of the ES6 features without losing browser compatibility.

And it's also constantly evolving and getting better. Just recently I started a React project with class components only to learn that hooks are now a thing and they remove a lot of boilerplate code. Even with redux, redux supports hooks as well so you can scrap that entire connect() stuff alltogether. Just back to simple function components.
Never had issues with their billing. They allow usage alerts, give decent price previews and detailed invoices.