11,315 karma · joined February 17, 2008
Prev: Suborbital, Element, Mozilla (RIP Persona).
Contact me:
- Matrix: https://matrix.to/#/@callahad:matrix.org
- Email: python3 -c "s='callahad'; print(f'{s[-1]}an.{s[:-1]}n@gmail.com')"
Keybase Proof:
[ my public key: https://keybase.io/callahad; my proof: https://keybase.io/callahad/sigs/vfNSwqxVwElLD-T563yfgqb4Qx-7diX8eybLvnulnEM ]
It does seem like Starling has gone out of their way twice to exempt GrapheneOS from their checks, but only after users complained: https://github.com/PrivSec-dev/banking-apps-compat-report/is...
Less easily than you'd think.
You'd have to make an authenticated cross-origin request to the issuer, which would be equivalent to mounting a Cross-Site Request Forgery (CSRF) attack against the target email providers.
Even if you could send an authenticated request, the Same Origin Policy means your site won't be able to read the result unless the issuer explicitly returns appropriate CORS headers including `Access-Control-Allow-Origin: <* or your domain>` and `Access-Control-Allow-Credentials: true` in its response.
Browsers can exempt themselves from these constraints when making requests for their own purposes, but that's not an option available to web content.
> I'm guessing that this proposal requires new custom browser (user-agent) code just to handle this protocol?
Correct; which is going to be the main challenge for this to gain traction. We called it the "three-way cold start" in Persona: sites, issuers, and browsers are all stuck waiting for the other two to reach critical mass before it makes sense for them to adopt the protocol.
Google could probably sidestep that problem by abusing their market dominance in both the browser and issuer space, but I don't see the incentive nor do I see it being feasible for anyone else.
This looks broadly similar to that, but with some newer primitives (SD-JWT) and a focus on autocomplete as an entrypoint to the flow. If I recall correctly, the entire JOSE suite (JWT, JWK, JWE, etc.) was still under active iteration while we were building Persona.
And hey, I applaud the effort. Persona got a lot of things right, and I still think we as an industry can do better than Passkeys.
For historic interest, the Persona After Action Report has a few key insights from when we spun down the project: https://wiki.mozilla.org/Identity/Persona_AAR
Apparently the common workaround for the Google Wallet stuff is to pair a GrapheneOS phone with a stock Android smartwatch.
Edit: Here's some additional information on banking apps: https://privsec.dev/posts/android/banking-applications-compa...
Apparently the common recommendation these days is to use Curve Pay as a virtual card provider on GrapheneOS, which can then route to arbitrary underlying cards. And evidently Google Wallet does work for things that aren't payment cards (airline tickets, transit passes, etc.) on GrapheneOS.
It's also really peaceful underground.
Amusingly enough, I can't handle blue-water or wall dives (vertigo), nor wrecks (those aren't supposed to be there!), but caves are no problem. You've got walls, floor, and ceiling as a frame of reference, and everything is nice and cozy. It's like the Earth is giving you a hug.
[0]: https://commons.m.wikimedia.org/wiki/File:Vortex_Spring_cave...
I am envious of the speleothems in Yucatán cenotes. Florida's caves are all phreatic, so you don't get any real decoration beyond scalloping. Still fun to dive, just not much to see aside from water, wet rocks, and a line. And not even that if you blow the viz.
"Ofcom is the independent regulator for Online Safety. [...] Ofcom has strong enforcement powers"
https://www.gov.uk/government/collections/online-safety-act
Okay, so what does Ofcom say?
"It doesn’t matter where you or your business is based. The new rules will apply to you (or your business) if the service you provide has a significant number of users in the UK, or if the UK is a target market."
https://www.ofcom.org.uk/online-safety/illegal-and-harmful-c...
Source at https://github.com/cassidoo/pocketcal
This isn't C to Python, it's Python to more Python faster.
In the case of Apple's ecosystem, the device maintains a connection to the Apple Push Notification service (APNs). The website POSTs notifications to APNs, which forwards them on to the user's device. The user's device then wakes up a local Service Worker for that website in order to process the incoming payload and display a notification.
Declarative Web Push makes the very last step unnecessary.
(It's the same on Android but using Firebase Cloud Messaging instead of APNs. Mozilla also runs a push service and its source is at https://github.com/mozilla-services/autopush-rs/)
defaults write -g NSUserKeyEquivalents -dict-add \
"\033Window\033Move & Resize\033Left" "@~\\U2190" \
"\033Window\033Move & Resize\033Right" "@~\\U2192" \
"\033Window\033Move & Resize\033Top" "@~\\U2191" \
"\033Window\033Move & Resize\033Bottom" "@~\\U2193" \
"\033Window\033Fill" "@~F" \
"\033Window\033Center" "@~C"
Equivalent to manually binding in System Settings -> Keyboard -> Keyboard Shortcuts -> App ShortcutsMark Mayo, then SVP Firefox, was quoted in a 2017 interview with Walt Mossberg:
> Mayo says [FirefoxOS] took the focus off of Firefox. “It was close to a bet-the-farm effort”
Cite: https://www.theverge.com/2017/1/25/14376710/walt-mossberg-mo...
Nix feels similar, but for build systems, package management, and configuration management all at once.
My hope is that Unit can offer a pragmatic bridge: run your existing applications as-is, and when you want to sprinkle in some Wasm, we're ready. That's not to say Wasm is Unit's only use case, but do believe it's what will get people thinking about application servers again. :)
> my Python apps have not been behind Nginx for a long time, they're mostly wrapped in a zero-config gunicorn runner in a Docker container, static assets in S3 via a CDN
...and are there any reverse proxies, load balancers, or caches on the network path between your end user and your container? ;)
Contact info is in my profile.
Or what if you have a single logical service that's composed of a mix of Wasm endpoints and static assets augmenting a traditional Python application? Unit pulls that all together into a single, unified thing to configure and deploy.
If you're writing Node, Go, or Rust you haven't had to think about application servers for a long time. Folks writing Python and PHP still do, and WebAssembly will require the same supporting infrastructure since Wasm -- by definition -- is not a native binary format for any existing platform. :)