I knew about those internment camps -- because they were widely recognized afterward as a stain on our national character, something never to be repeated.
And I knew about the hieleras[1] and about Guantanamo.
And about so many other instances in history, from so many governments.
But I hoped our arc would not be toward more people treated this way, more proudly. I hoped we would stop running so eagerly toward the poison.
Is the project interested in supporting http-vfs readonly usecases? I'm thinking of tools like DuckDB or sql.js-httpvfs that support reading blocks from a remote url via range requests.
Curious because we build stuff like this https://news.ycombinator.com/item?id=45774571 at my lab, and the current ecosystem for http-vfs is very slim — a lot of proofs of concept, not many widely used and optimized libraries.
I have no idea if this makes sense for postgres — are the disk access patterns better or worse for http-vfs in postgres than they are in sqlite?
> The president has something to offer as a solution. For everything.
Unfortunately it is not a coincidence that the solution to all problems is always (a) make a loud noise (b) take your stuff (c) take away your ability to object to taking your stuff. Amoral sadistic narcissist gonna amoral sadistic narcissist. If you think you don't have enough information to predict how that's going to play out as far as family members you care about, ok.
There are a million python libraries and tools to do some overlapping subset of the things you'd want to do with a pdf.
There are no doubt another million in other languages.
These are each basically bundles of some of the transformations you'd want to make to the same underlying data structure.
So, complex pdf scripts often need two or three different libraries to get their thing done, which is wasteful at borh a dev effort and computational level.
The ecosystem would be greatly improved if someone made a great (probably rust based) in-memory low level pdf reading and writing data structure.
PDF libraries in any language could switch to using that structure and library internally, with the carrot that the switch would result in needing less code, and likely being some combination of faster and safer.
And then if they just exposed get_structure_pointer() and set_structure_pointer(), they could all interoperate for free. (Another carrot for joining -- small libraries could usefully add features and be adopted without needing to pick an existing popular library to glom onto.)
Not sure what would economically cause this to happen, but it would be great.
When you write a PDF library, there are design trade-offs all the way down, depending on use cases. (Just “in-memory” is already an important design trade-off, because the PDF format is intentionally designed to not require the whole PDF to be loaded into memory at once.) It would also be antithetical to preferring deep modules with minimal interfaces over shallow modules with broad interfaces [0]. Lastly, in managed environments like the JVM, a C-interface library would come with additional complications and overheads.
Ah that reminds me of the days when I was viewing a large PDF (some instruction manual that's hundreds of pages long) and the pages appear in the browser as soon as they are downloaded.
> The ecosystem would be greatly improved if someone made a great (probably rust based) in-memory low level pdf reading and writing data structure.
> Not sure what would economically cause this to happen, but it would be great.
Writing a library that is better than all the others is difficult to begin with. Continuing to upgrade and maintain it and fix bugs is even more difficult. Even with the right funding, you'd have to find someone who wants to keep at it year after year. When they inevitably lose interest, you'd have to find somebody else to take the reins--and weather the storm of complaints during the down time.
In short, thank you for volunteering to write and maintain this library for the rest of your life! :)
> someone made a great ... in-memory low level pdf reading and writing data structure
Are you suggesting Adobe's Core Object Application Programming Interface (COAPI) for PDF isn't sufficient?
Kidding!
I worked on print production software in the '90s. Stuff like image positioning (eg bookwork), trapping, color separations, etc. Adobe's SDKs, for both PostScript and PDF, were most turrible. For our greenfield product for packaging (printing boxes), I wrote a minimalist PDF library, supporting just the feature set we needed. So simple.
Of course, PDF is now an ever growing katamari style All The Things amalgamation of, oops, sorry I ran out of adjectives.
Back to your point: after URLs and HTTP, the DOM is the 3rd best thing spawned by "the web".
The DOM concept itself. Isomorphism between in-memory and serialized. That its all just an object graph. Composition over inheritance.
Not the actual DOM API; gods no.
I understand that API design is wicked hard. But how is it that of the Java tools, only JDOM2 (the sequel) managed to get the class hierarchy correct? So that incorrect usage is not permitted?
(I haven't looked at popular libraries for other languages. I assume they all also fell into the trap of transliterating JavaScript's DOM's API. Like dom4j and successors did.)
I'm just repeating your point (I think) that Adobe should have staked a strong starting conceptual position on PDF internals, what a PDF is. Something more WinForms and less Win32.
30+ (?!) years later, I'm still flubbergasted by PDF's success, despite Adobe's stewardship.
PS- And another thing...
For a print description language, I greatly preferred HP's PCL-5. Emotionally, it just feels more honest somehow. Initially, Adobe couldn't decide if PDF was for print control or documents. Customers wanted documents, so Adobe grudgingly complied, haphazardly.
"Adobe couldn't decide if PDF was for print control or documents"
Apparently people don't understand the history of PDF. PDF was originally a way to encapsulate PostScript so you could display it on a screen. Unlike PCL, Postscript (and PDF) were device-independent, with a WYSIWYG guarantee. Postscript and PDF are literally the history of WYSIWYG on personal computers and computer-based printing/typesetting.
PDF is not "print control" in the sense of a job control language. PDF has always been about documents, and the features of PDF files can be seen as an attempt by Adobe to both drive and follow the market's evolution of document handling.
PDF is complicated because it's used widely for lots of different things, including printing. And if you've never worked in the printing industry you have no idea how much of a PITA it is.
PDF succeeded for a lot of reasons, but probably the easiest explanation is that they were easier to create - you just printed it and the PDF printer driver spat out a PDF file that you could share everywhere.
One of my first jobs was at an isp/web/cohost company. We had a big bank of modems for dialup customers, had some customers who terminated isdn with us, a rack of colocation and built websites as well.
The company was partially owned and housed primarily in a print shop, we worked above the press floor and I was sometimes pressed into service helping when we were slow (I had some experience working in a print shop in highschool (helping with pagemaker and helping to run the big hidleberg), similarly in college.
Nothing like ending your day writing perl cgi scripts and troubleshooting customers damn winsock configurations and then going home and coughing up whatever color was running on the presses that day.
I had an early job with an ISP that was similar, had modems in people's garages all over the county since this was when calling local could get expensive. The ISP was in the back of a computer store though. Once an ISP customer came into the store. I was just answering phones in the back room, but they sent me to the floor to talk to the customer. I was wearing sandals, and the sales manager fired me on the spot for being on his floor with sandals. The person who I really reported to tried to hire me back when he found out that sales manager had sent me home and fired me.
Actually debugging a PDF parsing issue as we speak and actually started writing a parser (partially to understand the issue, partially as a last resort as the code in the parser I was debugging felt a bit shoddy).
The PDF format is frankly quite horrible, extended over the years by kludges that feels more or less like premature optimizations in some cases and bloated overkill in others.
While theoretically a nice idea, the issue is that there is just so many damn object types with specialized properties inside a PDF that you'd basically end up with all complications of a FFI for each binding you'd do to expose a sane subset.
Theoretically one could perhaps make a canonical PDF<->JSON or similar mapping from an established library that most PDF data consumers/generators could use if memory usage isn't too constrained (because the underlying object model isn't entirely dissimilar).
Seems cool for document usage, the online JS version however thrashed the digital signatures with that rotate 10 degrees demo (not entirely if it was just a checksum issue but it seemed to be worse as in tinkering with or not roundtripping the signature data object).
Meanwhile the Supreme Court has granted 16 out of 19 emergency petitions filed by the executive to overturn those rulings, grants that often require shifts in precedent without written reasoning, leading a Justice voting in the minority to describe the Court's current shadow docket practice as "Calvinball."
So (a) they are filing cases (b) they are winning (c) the Supreme Court is giving every indication that the law will be whatever it needs to be to have those cases ultimately lose.
> Supreme Court has granted 16 out of 19 emergency petitions filed by the executive to overturn those rulings, grants that often require shifts in precedent without written reasoning
The emergency docket does not set precedent. (If you like your Roman law, it is analogous to how a consul acting with senatus contultum ultimum is empowered [1], versus a dictator, who can literally make law.)
SCOTUS has been deferring to the administration around what happens while a case is being litigated. It’s stupid. But it’s not Aileen Cannon corrupt (not yet).
(If I’m guessing correctly, they’re bending the knee with one leg and punting with the other. If the midterms swing even one house of the Congress, the judiciary regains its independence.)
you say it doesn’t set precedent, but federal judges got admonished for not following the precedent from one of these shadow docket outcomes set like a month ago.
> Joined by fellow conservative justice and Trump appointee Brett Kavanaugh, Gorsuch wrote that all Supreme Court orders carry the weight of precedent, regardless of whether or not they were issued in a shadow docket ruling.
> First people complain the app store has a ridiculous approvals process and people keep getting rejected unfairly. Now people complain that they are too loose and letting in shovelware. What’s it going to be?
At best a walled garden is collective bargaining -- a group of users (buyers) lock into requiring vendors to negotiate with their representative, and because their business is collectively valuable vendors have to meet higher privacy standards or whatever the users care about, which they couldn't extract if negotiating individually with huge companies like Facebook.
So, Apple will get yelled at whenever it fails to be a good agent in collective bargaining -- either by excluding quality vendors and driving up their costs, or by including low-quality vendors. Either one gives up the benefits to users of the walled garden.
An index of reliable apps is, you know, fine. An index with a business structure that ensures better collective bargaining gets interesting.
I think the principal-agent / collective bargaining framework is correct, but I would dispute that the principals (the users, not app developers) are upset by how it works.
Most of the noise seems to be coming from developers, so, to me, it looks like Apple is doing a good job as my agent.
> Most of the noise seems to be coming from developers, so, to me, it looks like Apple is doing a good job as my agent.
Yea, whether we like it or not, app developers (as a general group, not you, the individual good guy) have proven themselves to be generally bad actors and unfortunately need to be treated as attackers. The more I hear developers complain about a platform not letting them do this or that, the more at ease I am about running software on that platform.
Amusingly this makes them more like actual fingerprints, which also lack enough information for "true fingerprinting" -- there seems to be little scientific knowledge of the error rates in matching human fingerprints in court. "Many have said that friction ridge identification is only legally admissible today because during the time when it was added to the legal system, the admissibility standards were quite low."[1]
This is why Slay the Spire is as loved as it is -- clearly defined skill and luck checks delivered one after the other at the precise limits of your ability.
Minesweeper is more like a quirky old wooden board game, charming because it's always been what it is, warts and all.
It's been below 300 ppm for at least the last 800,000 years, had now increased to over 400 ppm in a pattern that directly maps to the industrial revolution, radiocarbon dating traces the carbon in the atmosphere to "old" carbon like that from fossil fuels, and the known sources of human emissions adequately explain the increase.
An argument based on likelihoods and probabilities is not anywhere close to rock solid proof, since the credibility of the folks determining those is what’s doubted in the first place.
Did you measure subjective fatigue as one way to explain the misperception that AI was faster? As a developer-turned-manager I like AI because it's easier when my brain is tired.
And I knew about the hieleras[1] and about Guantanamo.
And about so many other instances in history, from so many governments.
But I hoped our arc would not be toward more people treated this way, more proudly. I hoped we would stop running so eagerly toward the poison.
[1] https://www.hrw.org/report/2018/02/28/freezer/abusive-condit...