skysight-inc/HackerNews huggingface dataset:
Making a fake AirPrint printer.

I have a Brother printer that has two printer trays, one manual tray (that takes variable sized paper) and a A4 tray. However, when printing from iOS, it doesn't have the full print preset dialog and it is impossible to print from the manual tray, nor is there a way to tell it I want print A6. Of course I insist being able to print A6 whenever, wherever I want with AirPrint and accept no substitute.

So I started with the Bonjour printing spec (https://developer.apple.com/bonjour/printing-specification/b...), and dns-sd on macbook to figure out how AirPrint actually discovers printer and what makes it tick. The entire thing is built on mDNS which is basically DNS instead of using a DNS resolver, it sends the query via multicast DNS. If someone on the network wants to find an AirPrint printer, then it queries via mDNS _ipp._tcp.

e.g. $ dns-sd -Z _ipp._tcp
With shows the PTR, SRV and TXT records.
The TXT records are based on the Bonjour Printing Spec which list out which fields so it knows the type of the printer and driver to use and it uses the SRV port to find the ipp port so it can contact the printer.

Further investigation using rvictl (iOS packet sniffing) showed the IPP traffic, which is really http API. It is via this API that iOS determines what paper is supported from what tray.

The path is then clear: create my own mDNS service that returns a printer on my own port, this IPP port acts as a reverse proxy to the real printer's IPP port, but it modifies the "media-col-ready" attribute to make iOS think A6 is loaded into the manual try.

It was extremely painful, but it was done.

There were many pitfalls along the way:

* iOS expecting the mDNS to resolve in a certain way, which Hashicorp's library didn't support, this necessitated forking the library and fixing the resolver.

* iOS expecting not only _ipp._tcp but also requiring _universal._sub. (https://support.apple.com/en-us/guide/deployment/dep3b4cf515...) in mDNS, which further complicated the implementation and took time to figure out how it worked. Needed to test with `dns-sd -Z _ipp._tcp,universal`

* iOS detecting the printer via mDNS but when clicking on it, it says it's not available. It is because it insists that ipp has to be on port 631, and refuses to accept (unlike MacOS) ipp on any other port
That's just a literary superstition, similar to absolutes we tell kids such as "you should never lie" (that in real life are never that clear cut).

A good story teller can both show and tell, depending on whatever fits the story, their stylistic choice, and their intention.
That was a lot of bullet points, but doing more communication asynchronously is good. I have a small company so it’s obviously easy mode, but we got rid of slack and it’s been great.

Basecamp isn’t necessary though, Github discussions is a very decent answer for forums and discussions. It feels like things that go on in discussions are much more permanent and searchable, and can be tied to tickets, etc
> ds18b20

Yes that's the one. I couldn't remember/be bothered to check

Thermal camera would only work if there was a surface to get the temperature of, we needed to know the temperature of the air in the middle of the room rather than the walls etc.

We did think about hanging ping pong balls on string like the sensors I hung but then yes, accuracy becomes an issue compared to the ds18b20.

Also this was in 2011 so I don't think we had the same variety of embedded device compatible stuff available and a proper thermal camera was out of our budget.

Fun side note, I brought the test rig back to life a few months ago for fun, found the OneWire lib code I wrote, copied into the Arduino project (mBed was long gone) and it worked with about 2 minutes of tweaking. That's 13 year old code up and running like no time had passed ... I can't even imagine the pain of bringing back a 13 year old web project!
I'm sure someone will incorrectly consider this a valid reason to create another.
“Ugly” and “unstable” are not reasons, “ugliness” and “instability” are. You’re also not helping your argument by choosing such a derogatory example.
Man I really miss Litestep at times.
That's not the "Jews" my friend. That's all humans, ever, forming a mob, calling for the death of an innocent man, or woman, because he bothered them or their leaders.

In the Gospels, only John names the crowd as "Judeans". Mark, Matthew and Luke call them "the crowd", "the mob", or "the people". The people, who were, of course, Judeans, but then remember that so was Jesus, and so where the evangelists, and the other followers of Jesus.

John 18:38 ->

Λέγει αὐτῷ ὁ Πιλᾶτος “Τί ἐστιν ἀλήθεια;” Καὶ τοῦτο εἰπὼν πάλιν ἐξῆλθεν πρὸς τοὺς Ἰουδαίους, καὶ λέγει αὐτοῖς “Ἐγὼ οὐδεμίαν εὑρίσκω ἐν αὐτῷ αἰτίαν.

[Pilate says to him "what is truth?". And having said that he came out again towards the Judeans and says to them "I find no cause in him" ("no cause" meaning: to punish him) .]

https://biblehub.com/texts/john/18-38.htm

Luke 23:18 ->

Ἀνέκραγον δὲ παμπληθεὶ* λέγοντες “Αἶρε τοῦτον, ἀπόλυσον δὲ ἡμῖν τὸν Βαραββᾶν·”

[And the crowd as one cried saying "Take him, and give us Barabbas".]

https://biblehub.com/texts/luke/23-18.htm

Mark 15:11 ->

Οἱ δὲ ἀρχιερεῖς ἀνέσεισαν τὸν ὄχλον ἵνα μᾶλλον τὸν Βαραββᾶν ἀπολύσῃ αὐτοῖς.

[As to the high priests they spurred the mob so that he would rather give back Barabbas to them.]

https://biblehub.com/texts/mark/15-11.htm

Matthew 27:25 ->

Καὶ ἀποκριθεὶς πᾶς ὁ λαὸς εἶπεν “Τὸ αἷμα αὐτοῦ ἐφ’ ἡμᾶς καὶ ἐπὶ τὰ τέκνα ἡμῶν.”

[And in reply the whole people said "His blood on us and on our children".]

https://biblehub.com/texts/matthew/27-25.htm

All of which of course has been interpreted in Christian tradition as "the Jews crucified Christ", and most likely formed the basis for European anti-semitism; the original, and true, anti-semitism. And having read the Gospels it's clear what Jesus himself would have thought of such traditions; how royally pissed off he would have been knowing the hatred that was roused in his name.
Please explain what ANY expands to...
'Let the robot decide' doesn't seem to work at all.
It not only is possible to vendor all the dependant code, it is (under executive order dum de dum de dum) required to provide a software BOM in USA (and by extension more or less everywhere)

Most companies think that they can outsource this to say Tidelift and just keep treating it as a free gift from the global community

But as long as there is not a precise definition of your software stack (I am thinking something like nix plus repeatable software builds) then there is nothing the global community can do (because unless we know your stack precisely who can say what vulnerabilities exist)

I think there is an interesting new industry - software dependency provision - imagine being able to define the complete set of software, where and how it was compiled, probably using something like nix.
“This piece of advice”, I guess it’s good advice just don’t overdo it?
Exports got dumped but assets got pumped and that's what really matters!

/s, but this is why it happened.
> That implies that the FOSS code is garbage which we all know it is not.

That's not quite how I read it. FOSS in general (e.g. public github as a whole) is a "pile" of projects widely ranging in quality, most relatively poor. It's up to all of us to use our "raccoon noses" to find the treasures or "diamonds in the rough".
I'm not necessarily disagreeing with you, but you can't really judge the benefits of the US space program in terms of its fluffy whitewashed publicly stated objectives.

Arguably, it was primarily a way to garner public support for the technology and infrastructure to build up the US's ICBM force, and to beat the Soviets in having a military force in space.

Remember, in the 60's people were envisioning manned space stations for the role that unmanned spy satellites later served.

The Outer Space Treaty happened in 1967 and forbade the militarization of space. I don't think it's a coincidence that 1964-67 was by far the apex of NASA's budget as a percentage of GDP.

It immediately started going down as it became clear that the treaty would be enacted. By the time of the last Apollo mission it was down to around 1.5%, and would drop to below 1% a few years after that.

In an alternate history of those events you might have had a Soviet constellation of nuclear-armed satellites in LEO by the 80's, making a first strike a lot more appetizing.
Is not machine like. It’s intentional.

The reason these things resonate is because they help us make the decisions we want to be making.
That's what I assume the process would be.

In those days, a "patch" didn't mean a source-code diff; at least, not in the systems I worked on. We got binary patches. I think they were packaged for use with a program we called "patch", but you could definitely apply them with a hex editor, in a pinch.

We got patches for the OS itself this way. But we didn't have access to the OS source, nor the build tools - the OS was written in a proprietary ALGOL derivative, and we didn't have the compiler.

I was once shown how to patch the COBOL compiler so that you could produce programs that couldn't be written in COBOL, things like messing with IO ports.
The last 3 points make a lot of sense.

The first one however I don't understand. Do you mind to give one or two concrete examples of that?
Yeah, it’s the identifier the government uses to attribute income for, and hence calculate the resulting taxes.

In this case it sounds like a midsize business is using some random guy’s number, so the tax authorities are under the impression there’s a guy pulling in millions personally, and a company with no income. Given that individuals and companies get taxed differently in many different jurisdictions concurrently this will be a mess to untangle.
This looks great and I want something like this to run Vaultwarden, some 2FA manager, a media manager, Syncthing, Next cloud and so on.

However I'm very worried about vulnerabilities in one of the applications getting my entire machine pwned and thus leaking my Vaultwarden data. It feels like this is just one CVE and Docker privilege escape away.

What do others think about this? Am I being overly paranoid?
I just wrote a report on open innovation, and I explicitly brought up this development - going from having to implement everything in house (before effective internet) to vendoring to the external dependencies we have today.

While it is definitely unfair to require an independent open sourcing developer to maintain there software free of charge I really like the idea of deferral of not just the knowledge embedded in open source code, but also the maintenance.

The success stories are probably big companies who open source business supporting elements of their stack. Like Meta with React: People can use react and Meta maintains it. On the other hand they benefit from other big companies sharing parts of their stack.
> mathematical model used to describe reality

Except reality has zero requirements to conform to mathematical models even if ours sometimes work to 10 decimal places there’s other cases they don’t work at all.
Tears contain chloride ions (>100 mEq/L). I'd be worried about chlorine gas generation (a toxic gas that goes after the respiratory system, eyes, and skin). Electrolysis of water starts at potentials as low as 1.23V (the paper reports 2.2-3.3V).
What stood out to me:

> After enrolling just 30 patients, the ARREST trial was stopped early by an N.I.H. board because the patients who got ECPR did so much better than the control-group subjects who received standard resuscitation, and it would have been unethical to continue the study. After six months, 43 percent of the 14 patients who got ECPR were alive with good brain function, compared with zero in the control group.

> Yannopoulos has invited physicians from all over to visit his program; afterward, he often hears from them that replicating his work at their home institutions — getting health and E.M.S. systems to collaborate, finding institutional support and start-up funding, coordinating 24/7 staffing — seems too daunting. For these reasons, Yannopoulos regards his ECPR program as “an administrative and political achievement, rather than a scientific or technological one.”

> Experience matters profoundly: According to a 2022 paper based on data from the Extracorporeal Life Support Organization, an international nonprofit that Robert Bartlett founded, patients treated at centers that perform fewer than 10 ECPR procedures yearly have 64 percent lower odds of survival; for every 10-case increase, the odds go up 11 percent. (The Minnesota program treats about 150 every year.)

In my 20+ years working in public policy analysis and advocacy, cannot agree more with #2, that administrative and political environment matter. Thinking about Atul Gawande's checklist, this is certainly the case. Having people and institutions prepared to adopt different behavior is essential. Of course, I was working in an often lower stakes environment and part of my work was to determine what institutional and personnel changes needed to be made to have our policy changes be effective. Frequently, people liked the idea of the policy change but were not prepared to do the hard work of the environmental changes.
Personally I'd rather be able to game on my beefy iPhone 15 with a clip-on gamepad than have to lug around a slow, loud, gigantic Steam Deck or a laughably primitive Switch
Promoted.ai (YC W21) Is Hiring AI Sales Engineer (New Grad OK)
I don't think that is astounding at all. Most companies have been contributing nothing for decades and all the work gets done anyway!!! Every once in a while some FOSS maintainer quits and writes an angry blog post, but in aggregate all these projects seem to keep ticking along just fine. If one projects dies or starts charging money, several other sprout up that don't; the recent Redis kerfuffle is a prime example.
Post author her!

Super interesting! I heard rumors about it!

Do you know if that was just a matter of implementation or a matter of data structure usage? In my mind, the RCS approach makes more sense for common operations such as checking out the most recent version, particularly if history is deep. (Writing would still be same, given the most recent version is in top in RCS (and not just append only).

Would love to get more flavor on the his, and happy to amend the post with more information!
"Could" is, by-and-far, a long stretch from considered, posited, or even planned.

Historical patterns (thus far) have leaned more towards "could not" (three years is not a modicum of time measured in the software lifecycle).
My greatest realization with a11y came when I sat down and used screen reader software on my work project and realized how unusable it was for anyone visually impaired. Even tiny things like font sizes take on a different perspective once you realize what it can be like.

It also made me realize that making an accessible site, such as all the gov.uk ones, means that the site will almost by default have a great UX flow and be easy to use. You have to make some decisions that can limit you, but at the same time you achieve so much in usability once you design things with a11y in mind.
Sounds good, I'll add it to my ChatGPT prompt.
In order to bring a CGM to market, in many areas of the world you need to perform a number of clinical trials, and a certain MARD upper bound has to be demonstrated. Also, during development certain ISO/IEC standards must be followed, which cover continuous medical & information risk assessment and mitigation. It’s usually a process of up to a few years even after you have a strong belief that it performs well enough.
Show HN: Craft Mind Maps that help you to structure your ideas effectively
If your values haven't changed what have you changed your mind about?
“It only takes 20 years for a liberal to become a conservative without changing a single idea." - Robert Anton Wilson
http://github.com/piku/piku was by far my best example of such a thing. I was fed up with how hard it was to deploy and iterate applications quickly, and the first version was done in a weekend.

In short, it's a minimal Heroku clone that started out as ~500 lines of Python run by a custom SSH config.

It has paid for itself several times over, and is still something I use daily (it runs all my little API endpoints, Node-RED instances, Python services, you name it.
This seems irrational.

1/3 of the company actually quit because they were discouraged from talking about biden/trump/jan 6/etc on slack? If that were happening I could see why a ban would be beneficial. That sh*t's distracting and there's never a winning side to the argument.

I mean it's supposed to be a company, not a political cult.

Edit: After more reading, sounds like the policy was sparked by an employee reviving threads about Basecamp's diversity, inclusion, etc.
We can describe "a kind that exists generally" even if the restaurant turned and looked (then) and would still turn (now and in the future).

Just need to change "the" with "a":

> He laughed with the kind of booming abandon that made the whole restaurant turn around and look.

to:

> He laughed with a kind of booming abandon that made the whole restaurant turn around and look.

In this case his laugh is still described as having a generalized "booming abandon", but the reaction of the patrons isn't a necessary reaction to that "kind of" laughter, but to that particular instance of it.

That is, the noun is "the kind of booming abandon" and not "the kind of booming abandon that made the whole restaurant turn around and look".
Hamas Believed It Would Conquer Israel
https://archive.is/YTFF9
Show HN: CaptureFlow – Provide LLM with debugger-level context of your app
The problem is that anyone who later needs to know what was in the meeting, even the two original participants, has no access to it. On the whole, more time is lost by people not being able to refer to what was actually said later than is saved by having it quickly and synchronously. You're making more work for yourself and everybody else in the long run.
This is hardly a bad description of the current state of affairs.
It sounds like the premise is, we will have fewer specialists and more dabblers. I think it could be true. LLMs are definitely a learning hack as never before could you ask an expert repeated dumb questions and a domain you know nothing about. Eventually you will learn something but it is quite different from being a traditional student and being guided by an expert - learning things that you didn't think to ask questions about or initially were not interested in (but later turn out to be important).
As the parent notes though, "the passive also allows you to choose whether you want to call out the source of an action", while "they merged the pull request" does not.
Update: fixed in v0.1.1 https://www.npmjs.com/package/fancy-ansi
Let's Make a DOS BBS in an offensively modern way [video]
Small browser and Linux desktop extension to open links on the current virtual desktop. https://github.com/Janhouse/tab-in-workspace

It's a small quality of life improvement but I wonder why this does not exist out of the box.

I could probably make it a bit easier to set up, but it would then require another weekend. :))
I disagree. I think it's more likely that technology itself is causing us to change our way of thinking, and we think we want to do this stuff but actually we are just resources for the machine.
If you want something concrete, the development of GPS is directly linked to the space race
The US revolution was literally just white land owners wanting more control taxes, native lands and slavery. There was never any question of it being a revolution where the lower classes would take over. A more realistic long term option was Roman Senate like Upper class aristocracy, and that is what actually did happen in the South.

> The harsh terms on Germany post-WWI all but guaranteed another war

This is just false revisionist history. The peace deal was actually not that harsh. And it took a while many, many other things for WW2 to happen as it did. In fact German never even paid any of the debt that was supposedly so horrible.

In fact got more money invested into them and lent to them then they ever paid out, and guess what, the never paid that back either because after WW2 that debt was forgiven.

What actually made the war likely is that the US ended the war before Germany was actually defeated and then was not even remotely willing do literally anything to enforce the treaty that is had just signed. In fact Wilson basically made promises to France, and those promises were vital in a treaty being signed in the first place. And then of course Wilson couldn't actually back up those promises.

So the reality is the whole peace deal collapsed in on it self as soon as it was signed.

What actually made some form WW2 near inevitable was the Soviet Union trying create world revolution and particularly revolution in Germany.

> and the coal-and-steel community formed after WWII provided for a peace among its european members that endures to this day

More revisionist history. More like the cold war gave Europe a common enemy and the US was actually in control of the alliance. France had no realistic option not to align with with the US, and neither did the newly built West Germany. Also nukes exist.
Yeah, I like this, but the tool I wish existed the most is some kind of pointer aliasing checker. Something that would tell me when I've violated strict aliasing or, conversely, when I've forgotten to put in a restrict and now the compiler is reloading things from memory unnecessarily.
Progress is by definition a forward movement towards a destination. Noting here about neither the movement nor the destination being "better".
Ask HN: What framework should I learn?
In 2024, if you have a good grasp of HTML/CSS/JS without the need for a job and disregarding the # of job postings - what is the best way to get going building full-stack web app?

I've never built a production ready app before and there is still a lot to learn about databases, deployments etc. But I also don't want to spend 5 years to ship a CRUD app with some API fetching and forms.

Any tips would be appreciated!
The suggestion of a universe with "negative gravity" caused me to receive <query> prompts, which I hadn't experienced in any other experiment I tried.

<query>Are there any parameters we could tweak to engender emergent structure in an inverted gravity universe? Or is the idea of negative gravity fundamentally and inescapably incompatible with a viable, life-bearing cosmos?</query>

<query>How might the radically different physics and structure of a dual gravity universe shape the evolution of life and intelligence in such a cosmos compared to our own? What unique challenges and opportunities would arise?</query>

<query>What might the technology, culture, and consciousness of intelligent life look like in a universe where the stars are always within reach, and stagnation is more difficult than exploration? How would our own history have unfolded differently under such physics?</query>

<query>How might technologically advanced civilizations in a dual gravity universe harness the unique properties of negative gravity for computation, engineering, and art? What feats might be possible that are unimaginable in our own universe?</query>
10-Yr Stability Insomnia Sleeper Phenotype, Association with Chronic Conditions
A website that can improve development efficiency
After a month, I practiced a new project. The development was tedious. International language, currently supports json, xml, strings, arb, yaml and other files, 26 languages translation, welcome to experience and ask questions.
The representative of the government who systematically kills and tortures the population for not having the right believe in Jesus isn't that hard of a target to identify.