Hacker Newsnew | past | comments | ask | show | jobs | submit | more brailsafe's commentslogin

Heh, have at it, here's the full spec: https://developer.adobe.com/document-services/docs/assets/5b...

Should take... a weekend tops? ;) PDF is crazy and scary


> PDF includes eight basic types of objects: Boolean values, Integer and Real numbers, Strings, Names, Arrays, Dictionaries, Streams, and the null object

Wait, this is more complete than SOAP. It may be a good idea to redo the IPC protocol with a different serialization format!


Well, it's a descendant of Postscript (much like JSON is a descendant of Javascript, loosely)

Society would probably never recover if we started implementing RPC-in-Postscript though.


7.5.6 "Incremental updates" from the specification is an interesting section too, speaking about accessing data people didn't think to remove from PDF files properly.


We will be able to say that AGI has arrived when we can hand that spec off to a model and tell it to build an Acrobat clone.


We will be able to say that AGI has arrived when the AI hands it back and says "no".


Or goes on strike.


> But the client said we (consultants) had done in two weeks what they couldn’t do in six months.

I think this is more of a consultant vs employee thing than it is senior vs not-senior. There's this weird dynamic that happens where BizOps defaults to trusting and spending more on consultants, granting them more autonomy, such that they're wildly more empowered to take any risk. Employees are to be delegated to by BizOps, and BizOps doesn't like taking risks. It's paradoxical, because unless you come in with that authority or you were there extremely early, you're unlikely to acquire it, much more-so after the company's been around a few years.

This seems to me where the term "hired gun" comes from. You pay someone who's incentivized to solve a discrete important problem with their expertise quickly, whereas all of your employees are incentivized to do things for amounts of time reliably over however long, answering to product managers, implementing whatever crap to get the sale, answering to useless managers every two weeks, planning, reviewing, retrospectiving, blah blah. The consultant isn't about to go doing a broad-scale refactor if they're not paid to, and there's no reason an employee should either.


> The bashing on apple for this "to sell more apps" is nonsense, Apple originally designed and intended for HTML5 apps to beat Flash.

Whatever their apparent intention might have been ~15 years ago, it would be hard to argue that Apple puts a lot of resources into trying to protect its fiefdom. I don't think it would be all that different to suggest they (Apple) wouldn't try to control how people pay for apps by preventing app developers to offer a web-based payment option, on the basis of their past relationship with HTML5. A huge component in their success with iPhones has been control over the entire supply chain.

That said, it is a somewhat conspiratorial take that is probably better explained by laziness, bad choices, and control over proprietary UX patterns (that suck), than generalized competition, but it's not much of a reach. They also compute localStorage limits differently and have always diverged for stupid reasons


Interestingly enough Apple has put a ton of effort into Safari recently and have shot up to the top of the interop leaderboards.

https://wpt.fyi/interop-2025?stable

I don't really buy the conspiratorial takes either. I think they just had different priorities for their browser.


I think it's fair to say that Safari is no longer late. That comes with 3 caveats.

1. Safari isn't updated independently of the OS, so users who don't update or whose iPhones don't get updates anymore will be forever stuck on old Safari versions.

2. Being timely on new features does little to alleviate the pain that comes from all the old messiness.

3. Different priorities driven by economic incentives of protecting their 30% cut. Fair enough. But shutting out alternative web engines on iOS is definitely a dick move.


Unfortunately this is more misdirection from Apple.

When they were asking for community input as to what developers wanted to be a part of interop 2025 that then had to go for a further non-public round with the browser makers.

Apple then proceeded to veto all of the most popular suggestions and insist that then running grep over their codebase in order to fix a comparability bug [1] with chrome and Firefox version 1 was somehow a legitimate contribution precisely so they could game the interop stats that you’re citing here.

The moment you look at the real statistics (https://wpt.fyi/results/?label=master&label=experimental&ali...) where Apple can’t game the system the story becomes much clearer and the criticism much more justified.

[1] https://web.dev/blog/interop-2025 (scroll down to the text decoration topic)


> The moment you look at the real statistics (https://wpt.fyi/results/?label=master&label=experimental&ali...) where Apple can’t game the system the story becomes much clearer and the criticism much more justified.

This is misleading. The “real statistics” you link to include non-standard, Blink-only APIs like Web Bluetooth and Web USB. These are not web standards. Google proposed them and both Mozilla and Apple have rejected them on security and privacy grounds. Google have not been able to convince anybody to implement them.

Web standards are not simply whatever Google unilaterally decide they want. Standards require consensus.


[flagged]


> Jim once again you are jumping in to defend Apple no matter what the topic is. It’s a really strange behaviour yet again.

Is it possible for you to respond to me without personal attacks? This is the second time this week you have decided it’s appropriate to call me weird.

I have not misread anything. Web USB and Web Bluetooth are not web standards.

> This specification was published by the Web Bluetooth Community Group. It is not a W3C Standard nor is it on the W3C Standards Track.

https://webbluetoothcg.github.io/web-bluetooth/

> This specification was published by the Web Platform Incubator Community Group. It is not a W3C Standard nor is it on the W3C Standards Track.

https://wicg.github.io/webusb/

The specifications literally tell you they aren’t standards.

They have been rejected by both Mozilla and WebKit:

> This API provides access to the Generic Attribute Profile (GATT) of Bluetooth, which is not the lowest level of access that the specifications allow, but its generic nature makes it impossible to clearly evaluate. Like WebUSB there is significant uncertainty regarding how well prepared devices are to receive requests from arbitrary sites. The generic nature of the API means that this risk is difficult to manage. The Web Bluetooth CG has opted to only rely on user consent, which we believe is not sufficient protection. This proposal also uses a blocklist, which will require constant and active maintenance so that vulnerable devices aren't exploited. This model is unsustainable and presents a significant risk to users and their devices.

https://mozilla.github.io/standards-positions/#web-bluetooth

> The low-level nature of this API means that it is insecure, has a massive privacy risk, and perhaps most importantly doesn't meet the web platform's device-independence bar.

https://github.com/WebKit/standards-positions/issues/570#iss...

> Because many USB devices are not designed to handle potentially-malicious interactions over the USB protocols and because those devices can have significant effects on the computer they're connected to, we believe that the security risks of exposing USB devices to the Web are too broad to risk exposing users to them or to explain properly to end users to obtain meaningful informed consent. It also poses risks that sites could use USB device identity or data stored on USB devices as tracking identifiers.

https://mozilla.github.io/standards-positions/#webusb

> We have previously stated privacy concerns, thus the concerns: privacy label. We agree with Mozilla's security concerns raised in their standards position issue, thus the concerns: security label. This spec also depends on a specific hardware technology, and enables dependency on specific attached hardware accessories, which risks the device independence of the web; thus concerns: device-independence.

https://github.com/WebKit/standards-positions/issues/68#issu...

Something isn’t a web standard just because Google decided to publish a specification. No other rendering engine has accepted these specifications.

> I don’t know why you keep glossing over this no matter how many times it has been politely pointed out to you.

I don’t believe anybody has ever said this to me before, let alone repeatedly, let alone politely, but perhaps I am forgetting. Could you refresh my memory? When did this happen?


And what else can drive priorities for software development in a company with virtually infinite resources?


My time as a barista doing various behind-the-counter jobs was kind of fascinating. I really couldn't do the job as well as other people, I'm not sure if it's because of memory problems from adhd or concussions or what, but I was most effective due to head-cache when I didn't switch from Frappuccinos to hot drinks to till very frequently.

I'd literally forget how to make cold drinks vs hot drinks when I switched, like I'd never done it, until I got into a new flow, and everyone found this to be hilarious, since I'd already been a software person and it was a regression being there.

I took the job because I needed some money and to make social connections, but I mostly just wanted to see if I could do it, and I couldn't.

Since then, I've learned to give myself a bit of grace when switching contexts. If I have a day zoned in on one part of the code, and someone brings up something I worked on a month ago, I'll have to stall for time while I hydrate my cache again. This limitation is somewhat debilitating, since adult life depends on constantly being anxious about invisible obligations and other bullshit that simply aren't in my conscious mind unless I'm specifically grinding on them.


Heh. FWIW, I've only ever been fired from one job. I lasted 3 whole days at a bagel bakery.

I had the exact same issue switching from bakery, to line, to register.

Everyone else seemed to have this "context switching superpower". I watched two peers (we were all in high-school) seemingly effortlessly go from line to register and back to line 3x within the same shift. I couldn't.

I could do all of the jobs and was (subjectively) the best on-the-line (real-time 3D Tetris + flavor), but I could only be good one-job-at-a-time.


Yep, very relatable. I do feel like there's a bit of a difference when I'm able to "own" something, in the sense that my job is to always know how everything's going, but not necessarily get locked into anything for too long. I do wonder how medication affects this, because I've since been in positions where I'm responsible for a bunch of varied tasks getting completed, but I still think I'd fail at switching between things that have specific sequences of steps that need to be followed while interacting with people. I tend to not be able to only devote part of my attention to something, and so I avoid group chats like the plague.


Ownership whether actual or cultural is big for me too. I can't speak to any specific medication protocols.

Truth regarding combining this with social interactions. Though I've never done it, I suspect my anti-job would be a bartender.


> Putting what music you listen to in the hands of a US corporation is such a dangerously stupid idea that it is amazing to me that there are people here who are OK with it.

Thankfully Spotify isn't primarily a U.S company.


> The median house costs more than a third of the median income

That sounds like a steal, in my city the median home price across all types is 10-20x the median annual household income


Did they mean perhaps taking a 25 year mortgage on the median house would consume a third of the median income?


I suppose it could be interpreted either way, but your interpretation probably makes more sense in context. In reports about housing cost in Canada, they tend to use both the median income to median servicing cost like you have, but also home price-to-income ratio which often is a multiple of annual income for whatever reason.

Further down in the thread there's mention of median housing cost to income ratio for programmers in the 90's, and in that situation it seems like the absolute total cost of a house was a fraction of annual income, so it could go either way, but it would be much tougher now for your annual salary to surpass the cost of a house unless it's severely in the boonies.


I think this question gets asked periodically, but in addition to all the other answers, it's worth noting that LinkedIn essentially "stole" everyone's address book by tricking people with dark patterns[0] before people were readily catching on, it's not like they grew organically on merit, although they've since sort of needed to find a plausible reason to exist. So a competing service would just have to do the same; trick people who sign up into importing their entire LinkedIn contact list, scrape all of the available secondary connections and tell each of them that ___ is already on the platform, and then make it seem like if they're not on this new one, their career will stall.

The question of an alternative to LinkedIn is like asking if there's a better hell with less satan (but that may be a bit cynical)

[0] https://time.com/4062519/linkedn-spam-settlement/


Clay as in pottery? Seems odd to have no link or context for that; it's just a single noun, but used so prominently


Clay as in clay.com. But yeah, it shouldn't be assumed that people know that.


A personal prison can mean many things, and if low wages automatically mean precarity, then that's a type of stress that would be worthwhile to try and create a lesser draw on, imo.

For me, I'm always framing whatever I currently earn as "right now". Right now I'm doing ok, but it's fairly likely it won't last longer than 2 years, because it never has, and I have no reason to think it will this time. That means that even if a bank were to give me a long term loan, I'd be stupid to commit to anything but the most manageable terms, which means I'd have to consider what I'd be able to make in a part-time laborer position when layoffs come around or something.

If I can theoretically make myself liable for a 3.5k a month tiny condo mortgage, even if it's less than half my take home, I'd be uncomfortable doing so unless it was half that amount. Therefore, either a miracle needs to happen on the career side or the housing market needs to finally crash before my partner and I move out of this basement, no kids, used car etc.. and that's fine for now. If I lose a job, I need to have at least a year if not more of liquid or close to liquid assets available to cover living expenses, and for that to be possible, I need to have relatively minimal fixed liabilities


Ive come to realize that there is very little that would make me truly comfortable with big risks, so I decided to just start taking them. If they dont work out, I will have the consolation that I tried, and so far, it has been working out well. I Got myself liable for a 7k mortgage, about 80% of my take home. Nervous about commitment but married my wife. Nervous about kids, but have one on the way.

If it all comes tumbling down tomorrow, I would be out a ton of money, but basically where I was 5 years ago. I wish I had taken the plunge on each of these things 5 years earlier.

Nothing risked, nothing gained.


I've actually started taking the same approach—despite the content of my comment—just not with huge amounts of debt for things that only offer tenuous personal value. So, for me I've decided that it makes way more sense to fully commit to my long term relationship, and if it fails eventually, it won't be because I was trying to keep one foot out the door. That said, aside from automatic common law designation, marriage is not something I'm planning atm, even after many years.

> I Got myself liable for a 7k mortgage, about 80% of my take home.

That is... spicy. I guess context matters though, if you're already financially secure and the ongoing income would otherwise just be added to other investments, and the remaining 20% is enough to cover you, and if you're in a place that locks in your interest rate for the whole mortgage, then I could see that being less dramatic. Likewise if you're both working or stand to inherit something.

Additionally, a mortgage is one of those things where if you've consistently earned whatever income it is, then it's more a matter of being excessively cautious. I've probably only ever earned an income for half of my working life; year on year I might make zero or full-time income, and the economy (in Canada) is indeed tangibly precarious right now.

Broadly I agree though. I wouldn't be in the relatively good position I'm in now without a series of scary bets earlier, moving to a new city, trying harder at more ambitious career moves etc..

It's just that there have been multiple times where I've lost a job, couldn't find _anything_ to pay bills with for long enough that I've literally dropped all the way to zero financially, losing the rental, and needing to live out of a car, so those kinds of liabilities just don't (yet?) make any sense. My hunch is that for people who haven't had that experience, it's more of a major milestone that they're eventually going to do without a doubt in their mind, they just need the raw salary number


Depends on your definition of marriage. Various places with common law automatically make you effectively married as far as family law and tax law are concerned, and insofar as people involve the courts.

After 1 year of cohabitation in Canada, couples are federally common law spouses for tax purposes. Provincially it depends, but after 2 years in some provinces you're technically and automatically spouses for family law purposes, which gives someone the same legal rights as an explicitly married couple in terms of asset division and parental obligations following a breakup (which is outdated and insane in many cases outside of having children, but whatever).


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: