skysight-inc/HackerNews huggingface dataset:
On my system, the CPU sees the GPU as a PCI device. The "PCI config space" [0] is a standard thing and so the CPU can read it and figure out its device ID, vendor ID, revision, class, etc. From that, the OS looks at its PCI drivers and tries to find which one claims to drive that specific PCI device_id/vendor_id combination (or class in case there's some kind of generic universal driver for a certain class).

From there, the driver pretty much knows what to do. But primarily the driver will map the registers to memory addresses, so accessing offset 0xF0 from that map is equivalent as accessing register 0xF0. The definition of what each register does is something that the HW developers provide to the SW developers [1].

Setting modes (screen resolution) and a lot of other stuff is done directly by reading and writing to these registers. At some point they also have to talk about memory (and virtual addresses) and there's quite a complicated dance to map GPU virtual memory to CPU virtual memory. On discrete GPUs the data is actually "sent" to the memory somehow through the PCI bus (I suppose the GPU can read directly from the memory without going through the CPU?), but in the driver this is usually abstracted to "this is another memory map". On integrated systems both the CPU and GPU read directly from the system memory, but they may not share all caches so extra care is required here. In fact, caches may also mess the communication on discrete graphics, so extra care is always required. This paragraph is mostly done by the Kernel driver in Linux.

At some point the CPU will tell the GPU that a certain region of memory is the framebuffer to be displayed. And then the CPU will formulate binary programs that are written in the GPU's machine code, and the CPU will submit those programs (batches) and the GPU will execute them. These programs are generally in the form of "I'm using textures from these addresses, this memory holds the fragment shader, this other holds the geometry shader, the configuration of threading and execution units is described in this structure as you specified, SSBO index 0 is at this address, now go and run everything". After everything is done the CPU may even get an interrupt from the GPU saying things are done, so they can notify user space. This paragraph describes mostly the work done by the user space driver (in Linux, this is Mesa), which implements OpenGL/Vulkan/etc abstractions.

[0]: https://en.wikipedia.org/wiki/PCI_configuration_space
[1]: https://01.org/linuxgraphics/documentation/hardware-specific...
Not sure if you do it for privacy, ethical or practical reasons, but here's my journey: I removed my life from Big Tech (FB, TW, Gmail, YT, G Drive, MS, and other anti-user/spyware/malware companies). It was surprisingly easy to do and refreshing spiritually.

First, philosophy: this article resonated so much with me that I made the brave step of deleting my big tech accounts and switching to Linux: https://medium.com/hackernoon/leaving-apple-and-google-my-ee...

Then, execution. This site will help you to find user-friendly alternatives to your spyware apps/OSs/services: https://www.privacytools.io/

I am now with a setup that maximizes privacy and giving money to ethical companies:
Phone OS: LineageOS and /e/
Desktop/Laptop: Debian and Linux Mint
Browser Mobile: Bromite
Browser Desktop: LibreWolf (firefox fork oriented to privacy)
Maps and GPS mobile: OsmAnd
Mobile app store: F-Droid, Aurora Store
Search Engine: DuckduckGo, SearX
Email: Posteo (1€/month)
VPN: Mullvad (5€/month)
Online drive: NextCloud-based service ie /e/ foundation

Once I researched the above and checked the companies/projects are trustworthy, I started using them with surprisingly low bumps in the road.
For mobile OS I went radical and didn't even install microG (a package to enable G services so some apps work well). I still can use my favorite apps, including banking (although if you root your phone you might have issues)
oxy doesn't even come in blister packs here. at least not as of a few years ago, when i got it for spraining my ankle
Cocaine is indeed an excellent decongestant. To the point that it'll pierce a hole through your nasal septum through vasoconstriction.
If cloud account is compromised, there are far worse implications that just being ble to access Vault's secrets and no, it's not true that there are "many" ways secrects could be exposed. That's precisely what Vault protects against.
There is a large, whiny portion of HN who were so severely injured by the COVID-19 fear porn that they uncritically consumed that they see viruses in their sleep still, two years later. It’s quite sad.
True expertise on a large, complex code base does not just take a few months; competence is best modeled as growing over long timespans, not as something that quickly reaches an "expert"-level ceiling. This is all the more true when-- as is often the case-- the codebase is a complicated legacy thing, full of accumulated "technical debt" and unneeded complexity of all sorts. This is not to say that 100% pair programming is always the answer, but doing it to some extent is likely warranted.
> In my experience, many people have a quasi-religious belief in the capability of modern medicine to perform what would otherwise be called a miracle. This belief is typically held without any evidence whatsoever.

Modern medical results would absolutely be viewed as a miracle to someone just a few decades back. Something like 90% of cancer cases are either cured or successfully suppressed (to the extent that the sufferer ends up dying of some other cause). Almost all endemic diseases have vaccines. Virtually no one dies of a bacterial infection today. Even most autoimmune disorders have effective treatments now.

The fact that there are problems yet to solve in medicine, and remaining voodoo in its practice, still doesn't change the fact that we're living in a miraculous age.
In my case I paid the balance online and picked "Notice of Proposed Assessment" as the payment type. When I asked the chat agent why it was in suspense, that was their explanation.
Just build something of a portfolio and start applying to junior UX roles. It will take a few years of experience, but senior creative directors can easily out-earn engineering directors.
In a weird way this makes sense to me. A lot of what takes water out of the ground is plants with their roots that extend way, way down. No plants means no roots and no shortcuts to get the water out. It has to go out the old fashioned way by diffusion.

The thinker the dry layer the more "insulating" it is from a water diffusion standpoint. It's kind of like lake ice. The thicker it gets the slower it gets thicker.
> As we have previously said, we disagree with the ACM’s original order and are appealing it.

"As we have previously said, we don't want to give our users any freedom of choice and we won't give away a single penny from our monopoly"
MS Azure accounts always seemed odd and overly convoluted to me. I had an issue with my personal Microsoft account where I couldn’t sign up for an Azure trial (wanted to kick the tires on Codespaces before it moved to GitHub). Turned out, my account got associated to my kids’ schools MS account because that email address was on a school mailing list. That was a pain (and many hours) to get figured out.
If I open this HN discussion page in the browser, it currently uses 44MB of private memory.

We can definitely shave a couple of megabytes off of it with some effort, but supporting the contemporary web on a 4MB budget seems infeasible.
Let's Be Real About Dependencies
Will you explain what you mean by "Design everything you can to be declarative"?
FWIW, I'm fairly sure this is the assembly syntax used by Go - the author may not have made a decision to use this vs another
> For the average healthy adult, the generally recommended maximum daily dose is no more than 4,000 milligrams (mg) from all sources. But in some people, doses close to the 4,000 mg daily limit for adults could still be toxic to the liver.

https://www.health.harvard.edu/pain/acetaminophen-safety-be-...

4,000 mgs is easy to hit for people who don't realize that it can be dangerous. I know lots of people who would say "Well, my pain is bad, let me take double"... which for extra strength would be 4 x 500 MG, which is 2000 MGs in a single dose... which then if you do it twice in a day is right there at the 4000 MG mark. Most people are fine with that, but some people can get really sick.

If the person then does it 3 times a day, they are close to the danger zone for most people and over the danger zone for some people. Then multiply that by a few days....

You can easily say, "Well, they are taking more than they are supposed to!", but it is really common to take a bit extra if you feel really bad without realizing how dangerous it is, because Tylenol is `safe`
Meh, it's okay to be grumpy sometimes. He got his point across and clearly knows what he's talking about. Let him be passionate :)
If you hook an SDR up to basically anything you can pick up all kinds of crap, engineers like rules of thumb but they are usually sufficient rather than necessary.
The philosophy that is cargo culted and was never taken seriously by any commercial UNIX.
Indeed, we were at 50/100 on February 21st:
https://twitter.com/awesomekling/status/1495875749693243406

And here's a Quote Tweet chain as I was posting progress updates from 99/100 all the way back to 50/100:
https://twitter.com/awesomekling/status/1507135024461721605
Pair programming only works when both people have similar mental aptitudes/personalities/types/processing-speeds.

The times I’ve been involved in pair programming it has been a disaster. I need time to sit there and think and process while the other person is getting bored and wants to keep going or they start to talk which ruins my thinking so I have to start over again.
The US doesn't have real political parties with memberships, so a more realistic view of them is that they are central coordinators of, and lobbyists on the behalf of, huge networks of consultants.

Having a political career means shifting between consulting companies strongly associated with political parties, direct party employment, campaign employment, government employment when your party is in power, "think tanks," "journalism," and employment as a lobbyist for government contractors or industries with a legislative agenda.

Journalists drop the keyfabe when they're speaking casually, sometimes accidentally. They do go out of their way to do so when the subject is associated with a party their employer doesn't approve of.

Including the truth about party association doesn't make a story more or less truthful. The problem is when they leave it out, or create an association out of whole cloth to fit a narrative.
> > We will not rely on unusual licences to restrict competitors from running Dagger as a service.

> Your "Trademark Guidelines" appear to contradict you:

They do not. Software licenses and trademark guidelines are two different things. Some commercial open-source vendors have changed their licenses to restrict use of the software in various ways - typically to limit competition from large cloud providers. We don't do that, and have no intention to. Our license is OSI-approved and we intend to keep it that way. That is what I am referring to.

> but you have to build your own brand, and you can't confuse and fragment the Dagger developer community itself

This is the intent behind the language in the trademark guideline which you quoted: you can redistribute and modify our code. But if you distribute a modified copy, call it something else.

> > Third-party products may not use the Marks to suggest compatibility or interoperability with our platform. For example, the claims “xxx is compatible with Dagger”, “xxx can run your Dagger configurations”, are not allowed.

> By naming this "Dagger" you're confusing not just your own developer community but the pre-existing one as well.

I disagree. Dagger has existed in private beta for over a year, thousands of engineers have been given access, and I can't remember a single instance of any of them being confused by the name. We have registered the trademark, and nobody has raised an issue.
Well that's awesome. I was asking because so many services now tell me about pricing after I create an account. I run a tiny non-profit so I always go for free tiers or almost free services. Websites that don't tell me pricing ahead of time I don't even bother to try.
The herb ephedra (Ma Huang/Mormon Tea) contains appreciable amounts of ephedrine and is prepared as a tea in Chinese medicine as a remedy for asthma and cold congestion.

It can easily be purchased online and the ephedrine ban does not apply to it.

https://melmagazine.com/en-us/story/mormon-tea-ephedra-plant...
Google love the extortion business model.

"Bid more than your competitor on AdWords for the literal name of your business or else they'll get the customers who intended to do business with you."
you don't need to capitalize words in a quote
It's the ones that never come through you need to worry about.
In the US medicine is a business. Their job is not to make you better. Their job is to get as much money as possible out of you.
There are drugs that come just in bottles: the typical OTC pain relievers (acetaminophen/paracetamol, ibuprofen, etc.) are all offered this way and you can easily buy bottles containing hundreds of pills. And of course there are others.

Prescription drugs are pretty routinely dispensed in just pill bottles also, though I'm sure there are some for which this isn't allowed.
Why would that be awful?
The design doesn't do anything particularly different or cumbersome regarding memory and ownership, so I'll hazard a guess and say no, it doesn't make it less likely.
Yep, once I spent the whole day reading code to write one single line of code at the end of the day. Since my boss is also a developer he understands. Try to explain that to a manager who doesn't write code thou...
once you learn to bias to thinking in terms of message passing between actors, and, bias to having immutable shared state, then,a lot of problems become easier to decompose and solve elegantly, esp at scale
Freelancing could make this possible, you can work in spurts on small projects and do art in between. Also boring jobs like insurance, finance, car companies, and similar corporate america non-tech companies can be pretty chill.
> And it is that myopic obsession over Covid that took something bad and made it orders of magnitude worse.

A good number of my family and friends are healthcare workers. You get any set of them into a room and all they do is talk about how many people are dead/dying because they didn't get a vaccine.

So if by "myopic obsession" you mean, the myopic obsession with people not getting vaccinated because of some shortsighted views on relative risks you'd be right. ICUs were full of unvaccinated people who got covid, not vaccinated people who didn't.
Because it doesn't provide the abstraction capabilites that NTFS allows for third parties, so naturally it is faster doing less.
Clinton-people and Obama-people did not and do not like each other.

This might be a better link: https://en.wikipedia.org/wiki/Party_Unity_My_Ass
The messaging in the US most commonly used to justify the lack of universal coverage and unreasonable cost of care is that we pay the most because we get the best treatments and best doctors and best outcomes, so I don’t think it’s fair to blame laymen for believing that.

Also, it’s not just patients that think this way. (Or, at least, if the clinicians know, they aren’t saying much to their patients.)

I’ve had docs gush about amazing wonder drugs, then I go and read the actual Phase 3 trial data on the patient information sheet and it has a 15% response (not remission) rate. I’ve been told I’m being given a “gold standard” treatment—but not that the “gold standard” response rate is actually only about 33%, and in another ~33% of cases it makes things worse.

I’ve had doctors refer me for surgery, tell me about how amazing the surgeon is, what a great job they’ll do, that if their own kids were sick they’d send them to this person. When I ask for hard data on the surgeon’s actual success rate for this type of surgery, well, they don’t track that—but look, just trust me, the guy’s realllyyy good.

Out of dozens of specialists I’ve seen over the years, I’ve only had one ever explicitly acknowledge that, yes, I had a real problem, but modern medicine just was not advanced enough yet to identify the cause, so they’re just kind of winging it. For the rest, there are “many new options”, “great responses”, “positive outcomes”, “extremely effective”—or there’s nothing wrong with you, it’s all in your head, and the princess is in another castle.
There are other benefits, pair programming reduces a whole category of simple bugs/typos to basically 0, keeps people on task, offers (literally) immediate feedback.

Unlike most programming "best practices" or paradigms, there's actual empirical evidence that pair programming is "better". Fewer bugs, easier to read code, shorter review cycles.

My guess as to why we don't see more adoption is 1) most developers aren't that fond of it, and 2) most managers do some quick gut check mental math and assume 2 programmers + 1 computer can't be equal to or greater than 2 programmers + 2 computers, that's nonsense, actual evidence be damned.

edit to add: I agree with commenters that pairing is more demanding/draining than solo work. I shudder at the thought of anyone trying to pair for 8hrs straight, or "all day every day 40hrs/wk". Nobody solo programs like that either though.
Same here. But I think the edge cases are worth listening to as well. Green card residents, for instance. Sudafed is kind of a lifesaver for me at times and I feel fortunate to be able to buy it relatively easily.
ProtonMail offers an “IMAP Bridge” application that keeps a local IMAP server running on your machine, while still decrypting your messages on-device.
You are correct in that having two people both well-versed in both the system and the change they are making is a waste. However, that tends to be rare - the more common situation on a team with no newbies is that you will need to solve new problems with new methods, possible integrating with new systems.

If you have a team of experts, and you want to keep them all experts, it's much more economical to have two people learning the new code as it's being written. Theories about what might or might not be helpful have very little value until tried in the field.
You mean it's not like TV, where the code flows out of my fingertips for many lines and then magic happens?
Nope, work with your direct manager and if that's ineffective, change jobs. The amount of times you'd be able to access the CEO for help is extremely low. If you've developed a "Rabbi" at your company, you might be able to circumvent a bad manager eventually, but until you escape his influence and control you'll have to deal with him. Get a new job is usually the best way to deal with poor immediate managers.
Putting people into immutable identity-like categories of "loser" and "winner" is gross, first off. People have worth outside of their utility to you or any employer. If they don't fit what you need from a worker right now then obviously don't hire them but why do you need to go around labeling people with this terminal fixed mindset-ass thing?

Second and maybe more importantly: is it effective? Take those first questions for example, about college. The specific answers don't matter, but the candidate doesn't know that! I didn't go to college and honestly do have some professional shame around that. If you pick up on that are you going to read it correctly, or ascribe it to the loser behavior you're attempting to weed out?

Or,

> And the overly polished interviewees will struggle with these non-traditional questions if they are secretly losers.

Do they? I feel like this is based on a stereotype on developers being uniquely introverted and incapable of social artifice, but that isn't true in my experience. The people I have worked with are a pretty normal crowd with about the same range of interests and inclinations you'd see in other groups too. I've known plenty of charismatic gregarious people who could talk engagingly about these questions or similar ones for hours. Some of those people are developers and some of them are not very good ones, so I don't find any inherent link here.

Even stuff like asking about hobbies and interests outside of work can be revealing in ways candidates might not be willing to share in an interview. A close friend of mine would bomb this question because the thing that sits where his passion should is caring for his dying son. Another is a world-tier expert in a specific musical practice, one of a handful of people with this kind and degree of mastery. It's a practice limited to a specific religious minority so he's careful about bringing it up in professional contexts.

It's impossible to come up with a perfect hiring process. Anything you do will allow some people through you wish it hadn't and exclude others you'd be better off if you didn't. I think careful thought is warranted about what those errors will look like for any specific hiring process, and I don't think this one is particularly valuable.
> Who would be opposed to this?

Republicans who view taxes as inherently corrupt and therefore are not in favor of improving the system.

(also as I mentioned elsewhere, that statement is not meant to be a value judgement - if you are opposed to taxes then it makes sense to oppose improvements to the system)
Related. The introduction of Generics in Go revived an issue about the ergonomics of typesafe Context in a Go HTTP framework called Gin:
https://github.com/gin-gonic/gin/issues/1123

If anyone can contribute, please do.
I doubt it.

Ibuprofen and other NSAISDs were approved not that long ago, cause plenty of GI bleeds, have nephrotoxicity when used chronically and increase the risk of cardiovascular events.

And they’re OTC.

Acetaminophen is actually very safe considering the number of serious events and the facts it’s in hundreds of different OTC combinations.
Start here. An app that helps you deploy your own server with various tools you need.

Platform on user's hosting provider for deploying private services, managed via mobile application.

https://selfprivacy.org/en/
Is this before or after they read Knuth?
We might call a structurefunction an object. Maybe if we made this programming paradigm object oriented we could solve some real-world problems.

[edit] spelling [/edit]
I really want to like ddg but it's just awful - not only are the results completely irrelevant but now it's started showing me russian language results, I'm in a country that uses the Latin alphabet.
I agree, it will be slow. These Waymo cars cost hundreds of thousands of dollars. A local pizza place in the middle of a small community will not be able to support the cost of a driverless car as compared to the cost of a local high school kid with a $500 Civic. Same with semis, companies invest in their truck fleets expecting millions of miles out of each truck. It will take time to change all that over, and the cost/benefit will take time to tip towards self driving. It will happen, but like seat belts, lead free gas and air bags it will take decades before they are the majority of vehicles on the road.
Yup, it is probably fair to say that C++ accounts for like 50% of the complexity of Kythe at Google. Or certainly it feels like it.

And it is also worth noting that Kythe goes a bit deeper than what LSP can accomplish. In particular Kythe is built around a sort of two-layer graph, where it separates the physical code/line representation from a more abstract semantic graph. This allows us to accomplish some things that are very difficult to do in LSP.

Finally, Kythe at least internally has a big reliance on a unified build system (Blaze, or Bazel). It becomes rapidly more difficult to do when you have to hook in N different build systems up front, which is why search-based references are so appealing. Build integration is hard.