skysight-inc/HackerNews huggingface dataset:
That's really a modern problem that happened after mobile became mainstream - but by the time that happened nobody was pushing C++ for app development anymore - Android was Java only for frontend and iOS was objc.

If you did apps in days where C# and Java took over for C++ mobile still wasn't a thing and macos was super niche (especially in enterprise) - few people really cared about cross platform - demonstrated by C# being windows only and growing in popularity during the time.

Visual Studio dev experience was just better than anything comparable at the time (Borland stuff was dead by C# era) and C++ was just an inferior language for app development (especially pre modern C++ where you couldn't even rely on stl being implemented correctly across platforms and people regularly rolling their own containers)
I had jam donuts, which don't have a hole, but, there's no donut rules!

For those who don't know, when we went into lockdown, our Premier said "This is no time to gather with mates at home and get on the beers".

He had a daily press conference every day, 111 days straight. He announced the current situation, what was being done, what was changing, and then stood and took questions from reporters until they ran out of things to ask.

When we recently started to relax the lockdown, he was asked whether it was time to "get on the beers" and he said "I don't know that I'll be drinking a beer tonight. I might go a little higher up the shelf."
I learned about APFS's unreliability the hard way when a friend's Mac started kernel panicking after an upgrade to Catalina... I ended up having to copy file-wise with (a modern version of) rsync from another install to an HFS volume, then manually recreate the entire APFS volume structure, restore everything, and run some obscure commands to make it all bootable again. I was lucky all the files were still readable without the OS panicking; presumably it was a write operation that failed. fsck was completely useless and could not fix the problem.

The rsync mostly preserved all the obscure Mac-specific attributes (resource fork, etc), but at least one thing was lost: the "bundle bit" on directories. Thankfully most bundles are marked another way these days, so only a few things broke (in particular some VST plug-ins, but not others). Good luck finding documentation on that bit! As far as I can tell very few people know of its existence.

The kernel panic was an assert(), which is just inexcusable. FS corruption ("impossible" things in the FS driver) should absolutely never cause the OS to panic. If something fails, return an error to userspace, and possibly remount the filesystem read-only.
People do care but regulators may take a different tack, as in go down the rabbit hole that this is only being implemented to benefit Apple monetarily. Remember, Apple is already under review in many countries for different reasons so what some will try to portray is that all actions are predatory.

throw in many governments do not like Apple's stance on encryption and they can apply pressure from more direction.

Apple obviously sees some potential for these suits and regulator actions to cost them money as they delayed rolling out this feature, I suspect more from the regulatory side.
> Exceptions are about control flow.

You're thinking of "try ... catch", but that's not what I'm talking about. What I'm talking about, and what I wrote, was "exceptions", i.e., objects that signify you're dealing with an exceptional case.

> Nulls and undefined are about types.

Anything that can be checked with instanceof, as I'm alluding to and as described in the first comment, or cross-checked by comparing a tag against constant, as in the case of node types in the DOM, is "about types".

What you describe as "just check[ing] if a value is an instance of InvalidType" is a straightforward restatement of how to represent an exception and handle it. Give it extra fields with further details, etc. This is widely used, it's just not widely used in in the NodeJS world, but that has more to do with the dubious influence that people like OP have, and all the programmers who try to emulate his style.
I don't get this because we've seen decision making under pressure, for judges. The conclusions are invariably that even the most reliable indicators are violated occasionally (human intelligence is of course a multi-armed-bandit algorithm so this is exactly what you'd expect, and want). Whether the people making decisions agreed they were experimenting or not did not matter at all. They also weren't able to explain this (and even when they did, they just provided the explanation one of the lawyers provided, which sounds fine, until you realize that of course two lawyers provided an explanation. So they are giving exactly the wrong information to understand the decision: judge chooses between "A, because ..." and "B, because ...", and at that point your decision is about the difference between A and B, not about A or B themselves)

Whilst I have not seen a comparable study with doctors' decision making ... I have very little doubt it's exactly the same. Doctor's AREN'T reliable and are in fact, no matter how hard they deny it, are experimenting on patients and learning from it.

Of course, when you think about more than a single patient, this is what you want. With this I mean you want (ideally many small, some large) mistakes to happen as long as it isn't you under the knife, but you're expecting at some future time it'll be you, because that way the doctors will maximally improve by then. Once you're under the knife, I guess you don't want to see experiments, but yeah, there's a price for skill.

And there's a price to be paid in mistakes for human skill as well. Even for doctors. Even for surgeons.
Very interesting. I'm glad it turned out well for you.

I have impingement syndrome in one shoulder and it flairs up every once in a while. That shoulder has never been the same since the injury, but it's not nearly as painful or debilitating as I hear frozen shoulder is. I should probably do exercises/stretches more often so it doesn't flair up or get worse.
This is nice. I wish it existed years ago.

Since the git commandline isn't ever going to be anything but insane and confusing, it really helps to be able to visualize what's going on. I think a sizeable portion of developers reason about their work graphically, even though their work appears textual. Being able to do this successfully demands an iron-clad understanding the tools, and/or tools which map neatly and consistently to concepts.

The concepts behind git operations aren't hard. It's the incoherent commands that make people miserable, confused and mistake-prone. Git operations become crystal clear when represented graphically.
Is there a link to learn more about your project? I have similar dream - I want to create a small space where living space, food and healthcare is taken care of. The idea is to let people create things without having to worry about basic needs. They could write books, software, make music ...

People can take a break for a year or two and work on something they truly care about.

At least, that is my dream
We've been in winter since June. We're only just into spring here, so no, summer hasn't helped (yet).
Trying to manage healthcare capacity only causes that capacity to be met.

And while mainland Europe is not a "relatively small Island", the UK surely is...
Good point. I think the author forgot that RISC-V was motivate as a ISA for both teaching and being giving decent performance in the real world. Seems like some things have to give in the name of simplicity.
This can be done with modern tech. A lot of the time I use a Debian box for my personal stuff with keyboard and cheap 1080p display. It does not run X at all. It's literally just framebuffer console, tmux and terminals. I don't use a web browser on it either.

A neat side effect of this is the machine I use is a fanless N3010 celeron based Lenovo M600 which feels positively lightning quick if you never go near the www on it. Perhaps 90% of the reason a PC feels like a sluggish POS these days is because there's some chunk of browser stack in there somewhere.

Edit: picture of the set up here: https://imgur.com/yjPMYaX
Does anyone have first-hand experience with the pinephone as daily driver? I'm thinking about getting it, but I'm worried I wont be able to do my usual stuff, including using things like Signal or WhatsApp.

Would be very interesting to hear some practital experiences!
He's being compared to Justin Treadeau, who basically owes his entire political career to being Pierre Treadeau's son. Nepotism encourages such underworld connections.
Very nice video, though unbelievable that the presenter wrote out that 10,000 number solution in his notebook while he has a computer on his desk.
I'm trying to think of a delicate way to put this but I'll be blunt: when you put “Source: DBA” my reaction is not “oh, an expert who is correct when everyone else is wrong” but “wow, a DBA who doesn't care about data integrity? It's like finding a doctor who doesn't wash their hands.”.

As someone who's trained a bunch of DBAs, here's how you should explain that this is a bug:

A database's job is to reliably store and retrieve data: that's why we talk about ACID since the whole concept is built around moving from one correct state to another. If we didn't care about getting back what we stored, we could just write flat files on disk and shrug when it breaks. Silently discarding some of the input breaks that contract.

Similarly, a core part of the SQL standard is about the database ensuring that values match the defined schema constraints. If we're going to allow silent truncation, the same reasoning would allow inserting foreign keys which don't exist, coercing non-numeric values into NULLs or other ways of “handling” non-numeric data types, replacing invalid dates with "0000" (oh, wait…), ignoring CHECKs (which MySQL did until 8.0.16), etc. If we're not doing that, we could just use MongoDB and stop pretending to be more than a blob store.

Rejecting the entire row is exactly what a DBA should want because it means that a) the database only contains the valid data it promised to save and b) the application team is immediately alerted to a mismatch between what their application assumes and how the database schema is actually configured — since there's been a breakdown in the migration process, there are likely other problems as well which might be more subtle. Especially in this century there's no excuse for not using a migration framework which makes the process of keeping the database schema in sync with the application automatic and reliable.

In one of the rare cases where data truncation is okay — and note that I've never encountered one of those in 3 decades where the users saw it as anything other than “This garbage software doesn't let us store more and that's why our department really runs on the Excel spreadsheet one of the admin assistants created” — the correct approach is to implement it at the application level so the user can see a fixed-length input field, warnings if they try to enter more, etc. and the application doesn't produce odd errors when, say, it stores a value and attempts to retrieve the same value only to be told it doesn't exist.
And the magic sauce that makes Option nice to use is the type checker that can force you to handle the None case.

I would go even further that even if the semantics are a little clunky (wrap/unwrap) any programming language can implement Option.
I think moving to a 3-2-1 voting system instead of FPTP, IRV or Proportional would resolve most of the polarization issues in a few cycles. I think it's the easiest way to force deliberation and moderation at the single district/office level without conceding local representation or complexity for the voter. The key is not having a one dimensional optimal strategies or suboptimal equilibrium that result in plurality rule or tyranny of the majority.

I'd modify it to allow a super yes/no with double the value per voter to force people to be a bit more selective.

https://electowiki.org/wiki/3-2-1_voting
That's not how traffic laws work.

It's a campaign bus, not voters at a polling station. Drivers supporting another party are absolutely allowed to drive next to them.
How appropriate that some measure of justice and recognition for Henrietta Lacks is being realised by Howard Hughes Medical Institute, an immortal extended phenotype of a dead rich white man.
Culture and everything to do with it is 90% of the answer.

Asian Americans face racism, and have absolutely zero cultural standing, nobody cares that Asian Americans don't win Oscars, they are not on TV shows, they are not represented in sports.

And yet Asian Americas are literally 2x the national income and make up vastly disproportionate numbers of high tech workers etc..

The notion that somehow how 'Asian Americans' have 'vast Racial Privilege' that enable them to gain success is plainly ridiculous, obviously.

Most of them do not come to America with stashes of wealth to give them advantage, though some do.

So how are Asian Americans so successful? Because as individuals, they focus on the things that matter to them, and that enable them to have much higher incomes - like education as one obvious example.

Those attitudes, motivations, concerns, behaviours are passed down from generation to generation and though it's unfair to characterize anyone by their culture, those things have tremendous impact.
The site is full of great interactive explanations. Nice work!
It seems to me there’s a higher possibility for the practical number of BTC in 2050 to be zero than for the practical amount of USD in circulation to be zero.
There is a config setting for enabling it globally now

https://www.typescriptlang.org/tsconfig#checkJs
Show HN: A JavaScript SDK to reduce video streaming costs
And I do believe that right ought to be protected. Nowhere in this thread is someone advocating that the state exercise its power to throw people with despicable beliefs in prison.

This is about our society’s ability and justification to categorize beliefs into respectable or not. Some ideas are simply not deserving of respect, though of course all ideas are deserving of legal protection.

Nazis are allowed to march down 5th Avenue and the people who call those beliefs despicable are not “just as bad as the other side.”
My (probably wrong) understanding is that you don't -- you spec out the system design in TLA+, and use that to check if your design is sound (free of race conditions or certain other kinds of logic bugs). Checking that the TLA+ spec is implemented properly by the (say) C++ code is out of scope
> Do we need to take Twitch and Phones away from these idiots and have them go work in the gig economy like a dog for a bit?

That is the most boomer thing I’ve heard in quite a while. What a complete disconnect you have.
I think that jquery animations on the web broke UX designers brains.

It's bad enough having a 300 ms animation. But when two, or even three get chained together, in addition to whatever lag there is for building the new UI elements, it's unbearable. And then there are the piss-poor apps on iPhone that seem to also depend on network data at some point, and delay all info display until the update comes through.

And the other issue with animations is that you're never sure when it's safe to tap a visible UI element, because it's not clear when that button that's sliding onto the screen will actually become active and responsive to user input. So the animation introduces tons of uncertainty about intersections too.

Animations should be capped to 100ms for any interaction. No chaining if one thing slides out, then another slides over. 100ms total, slide both those panels at once if you want to animate them, devs. Or bette yet, skip the stupid animation.
Put that way it sounds compelling but if we look into what the rights are and the kind of rights (Isiah Berlin's framing of rights as negative or positive) then it becomes more complex. Perhaps you have a specific example of people being told they don't deserve basic rights that's a bit more specific?
IUP's version:

https://webserver2.tecgraf.puc-rio.br/iup/en/7gui/7gui.html
Hi everyone

I am working on a web sdk which can reduce video streaming costs of CDN by up-to 90% using a hybrid decentralized load sharing technology. I have opened it up for beta-access for developers to try it out. Looking for feedback w.r.t the technology and any features you would want to have.

A web demo is available here https://api.peervadoo.com/test . Click on Add new peer to see the tech in action

Sdk link :- https://github.com/vadootvpeer/sdk-javascript

Happy to answer any queries
We are doing something similar on my project except using the J2OBJC compiler. The compiler is a cumbersome, unwieldy tool, but the cross platform approach overall is great. We write the core logic of our app using the cross platform approach. Platform specific APIs like geolocation or maps get handled natively, but pass their data off as inputs to the cross platform implementation. So for example, you wouldn't render a map natively, but you could write a handler for an updated location from a map, or query the network based on the current map area and return some results.

An added bonus of this approach is that it forces you to have a clear separation between your user interface code, and your business logic. A lot of mobile (and front end) apps out there have no architecture, putting API calls, state management and UI right next to each other in the same modules. Our approach forces you to keep UI code just focused on UI, while keeping all logic somewhere else, where it can isolated and as a benefit much more easily unit tested.

You would be surprised just how large of a share of your codebase can be moved into platform agnostic code if you have a solid architecture. Our UIs are "dumb" and render themselves from view models which have exactly the data needed to render the view. All the logic and state management to construct these view models can be written in the cross platform repo and shared across the Android and iOS apps. For example, to render a list, you will need to use the native UITableView or RecyclerView separately, but all the code that manages how many rows are in the list, the data each row needs, as well as updating the data when the list is reordered can be shared across platforms.
fp-ts had many niceties in it, but in Typescript, types are already non-nullanle by default; is there any reason to use Option<string> over string|null? You'd have the same exact type safety either way.
Is that an actual LCD matrix display? One would think that a small-form-factor e-paper display (the format that's sometimes used for shelf labels and the like) could replace monochrome LCD pretty much everywhere these days.
there are a lot of implementations (some of them obsolete):

https://eugenkiss.github.io/7guis/implementations
RISC-V was not designed to be the most optimal ISA however. It was designed to be a teachable ISA which could also be used to implement fast hardware.

The need to be easily reachable puts constrains on the design but is also a benefit in that many people will know this ISA and be able to make tools for it.
The underlying problem why this isn't clear to pure JS developers is that even the native APIs do this differently, but for various reasons.

For example, take Array.prototype.find(). Would be nice to have null here as a default return value. But what about Arrays containing null as a value? What about the case of null || false? What about the case of false || null?

There were a lot of design discussions to come up with those APIs...but I agree with you that technically, undefined should not exist. I'd rather have a syntax error being thrown than having to deal with undefined.

As undefined is specified as a hackaround as a global property, ... most of the implications are just a workaround, too.
There are two common cost structures: estimated time and fixed bid.

Fixed bid is relatively simple: company says project will cost X dollars, and takes on the risk of that amount ending up being too low. As a consequence, these projects tend to be very rigid; if a client wants any changes made to the plan or outcome, typically that involves another charge (unless certain revisions were allowed for up front).

Estimated cost is just that- firm offers a guesstimate of the total project cost, but only actually charges for the total number of human-hours worked. These contracts can be a bit more flexible- sales may tweak the hourly rate to keep clients happy, changes can be incorporated if the client is willing to sign off on a new estimate, etc.

One newer and slightly less common variation during initial development is capacity based- again, a very rough outline for project timeline may be put together up front (businesses like plans) but the company bills a flat rate to provide hours per week, rather than progress towards a dedicated plan. This allows for a more "agile" workflow, and is also happens to be a common arrangement for maintenance phases where a client may choose whether to add new features or work out existing kinks without needing to sign a new agreement for every little feature. It offers the most flexibility for clients while also putting most of the risk on them as the development shop hasnt agreed to any specific outcomes.
I didn't downvote it (and I very rarely downvote anything other than spam), but your comment is precisely the sort of ad hominem dismissal that this thread is complaining about. A glance at the blogs on cato.org shows a pro-business editorial line which is perfectly well aligned with the chamber of commerce wing in both parties. It is very anti-Trumpian and somewhat anti-Biden. I am not a huge follower of the Cato Institute, but in my recollection, this is the same type of stuff that could be found there 20 years ago.

Sometimes Cato has useful studies or data, and then it's worth reading. It's a moderate, academic, economics-colored point of view on the world. I wouldn't call it exciting, but this kind of complete dismissal in a thread about dismissal and silencing of moderate voices apparently looks silly to some people.
Can you summarize, or point to a discussion of, the ways in which PTX differs from a traditional RISC architecture?
It's available everywhere! You can just write something and ask your peers to review it.
Cheap Chromebooks work well for this, as long as they're among the models that can be jailbroken and take a proper Linux install. Ample power to run a text editor and a textmode browser (Emacs and eww, or any other, lesser, choice you may prefer), but not enough for graphical browsing and other distractions. Too, since they're specced to run Chrome for a couple hours, you can easily get 8 to 10 hours of battery life running something less absurd.

The keyboards aren't what you call great, but they serve well enough. I like a mechanical keyboard as much as the next dork, but I've never really felt the lack when using the Chromebook for writing.
I enjoyed that the site takes a lot of care around providing instructions to technical people, and a lot of those summarize as “start over; follow the instructions as written”.