Justin Fagnani

Justin Fagnani

@justinfagnani.com

Building Zena, a new programming language for Web Assembly: https://bsky.app/profile/zena-lang.dev Previously at Google. Web maximalist. Web components. WebAssembly. Creator of Lit. Oakland.

2.1K followers480 following2.4K posts

Justin Fagnani reposted

A reminder, because it is almost that time of year: More children are killed by cars on Halloween than any other day of the year, by far. www.vox.com/future-perfe... If you're a parent, I hope you'll do what you can to keep kids safe. If you're driving on Saturday, PLEASE exercise extra caution.

If a package manager was going to publish more than just the packages themselves on #atproto, but also notifications and metadata, what would you like to see? New versions, security alerts, deprecations? What else? What if a package published Bluesky or Leaflet posts with change summaries?

Justin Fagnani reposted

Making myself angry for no reason at all remembering the American transit planner that went to Amsterdam and was appalled at how little stakeholder engagement they did in favor of actually building shit.

Question for the #atproto community: In my atproto-based package manager I would like to have every package have its own DID so packages are as portable as user accounts - they can change handle and PDS. Would this put strain on the PLC registry? Would key management be tough? WDYT?

The amazing thing about atproto is that I don't actually need a custom PDS - Zena can just store packages in any standard PDS. The benefit of our own PDS is supporting a massive number of non-human accounts - one per package. A custom PDS can experiment with hooks and app view integrations...

Justin Fagnani@justinfagnani.com

Building an atproto PDS in Zena today, that's going to be the basis of the Zena package manager. Fun times!

Chris has been testing out Zena with his WASI component model polyfill, and now I have to return the favor and test his polyfill out! This looks amazing! Not enough Wasm runtimes support the component model yet, and this brings them to the future. πŸš€

cdata@cdata.earth

This one goes out to all the #wasm component model enjoyers out there: compile, link and instantiate Wasm components on the web (and non-web runtimes that implement Wasm core) today with this handy Rust polyfill! github.com/dialog-db/wa...

Justin Fagnani reposted

Replying to @alfredtwu.com

Recent California state laws have already exempted new housing in existing cities and suburbs from CEQA, so Prop 45 would only be useful for paving over farmland or building into the wildfire zone in the woods.

Justin Fagnani reposted

I'd say that more suburban sprawl is in fact one of the intended consequences of Prop 45. Vote no!

Justin Fagnani reposted

me knowing i’m not responsible for any php application right now

Justin Fagnani reposted

If you make HTTPS requests or have other TLS clients and care about MITM attacks, you need to update today. If you run Go: go get go@1.27.3 If you run Homebrew: brew update brew install ca-certificates If you run Linux, maybe stay off the internet for now.

Filippo Valsorda@filippo.abyssdomain.expert

🚨 Six WebPKI Intermediate CAs are compromised. This is bigger than Heartbleed, but a client-side issue. Anything that verifies certificates against public roots, like most TLS clients, is/was affected. Details, live test, patched versions and workarounds at emudhra.we-have-a-problem.com Act now.

I've got web components implemented in isolated Wasm modules working today, including SSR! Now refining the JS ↔ Wasm protocol and hope to publish something very soon.

It uses Lit on the JS side to create the element classes and render templates. The Wasm modules don't actually have any DOM bindings and can't reach out into the document or run arbitrary JS. They're truly sandboxed.

Lit is a stand-in for reactive elements and templating. It would be better to plug into standard platform features, which is the type of use case I made my DOM Templating proposal for.

I can't believe that JavaScript libraries for the web still use `process.env.NODE_ENV` and just crash when run without a bundler. Bundlers truly rotted developer brains.

Justin Fagnani reposted

πŸ‘‹πŸ€  Howdy, fellow Texans! Early voting starts TODAY and goes to Oct 30th. All y'all know there's fixin to be some bullshit this election cycle, so don't wait and schedule time to vote early. Make sure your vote gets counted. Find your polling place: www.votetexas.gov

votetexas.govYour Guide to Voting in Texas | VoteTexas.govVoteTexas.gov is your go-to resource for voter registration, election dates, polling locations, and more. Get the info you need to make your vote count.

Justin Fagnani reposted

Revolting against property taxes will hollow out your state and turn it into a retirement community that drives out young people who weren’t lucky enough to buy in because they weren’t born 50 years earlier - signed, a Californian

Politico@politico.com

β€œI’m old. I’ve paid my home off,” said Ray Warner, a 72-year-old Akron resident. β€œWhy would I pay property tax?” Across the country, homeowners are asking the same question and revolting against property taxes at a scale not seen in a half century.

Justin Fagnani reposted

πŸ“° Small project update, since we were so busy that we missed our weekly blog posts: - Last week we moved dev to public GitHub - We made the tests over 4x faster! - Mostly compiler fixes - Memory usage is down by 10x in some cases! - This week is value types, arg explosion, & row polymorphism

Justin Fagnani reposted

How did we skip the step where we made this illegal?

James Downie@jamescdownie.bsky.social

The slop party: "More than 80 percent of the [AI-generated] ads were produced by Republican campaigns or Republican-aligned political action committees."

I wholeheartedly agree with this post. The California proposition system is terrible and fatally flawed. We have a legislature for a reason - to legislate! So I vote NO on almost all propositions. It takes a very, very compelling case - usually fixing a previously passed prop - to make me vote yes.

Oakland Review of Books@oaklandreviewofbooks.org

"Voting has sure gotten really fucking annoying since I started being responsible again" www.oaklandreviewofbooks.org/voting-guide...

Justin Fagnani reposted

They started on illegal immigrants, expanded it to legal immigrants, now are going after naturalized citizens. If you are not one of those groups, you are just somewhere further down the chain, but they will get to eliminating your rights eventually too.

I'm sure the open source projects I'm part of would do better if we were still on Twitter. I don't care.

Justin Fagnani@justinfagnani.com

People really think they're only costing Twitter money by using it, and somehow not also contributing to its continued relevance.

Justin Fagnani reposted

Replying to @justinfagnani.com

People also think they can "fight" full-time addiction-optimized content farmers on their own turf with messages of nuance and eating healthy. I think when your missionary work is just swinging at engagement bait it's time to step back, re-evaluate and maybe, just maybe, be honest with yourself.

What I prototyped so far is a web-like runtime with a CSS-like layout and text engine and webgpu that runs network-fetched, isolated Wasm components. A built-in component holds a shared scenegraph that UI components get a private tree in to write to, securely isolated from parents and children.

Justin Fagnani@justinfagnani.com

Really, the world is ready for a new secure, cross-platform micro-app format. Something you could share and use directly in an Bluesky post. Obviously, it'd be based on WebAssembly plus a UI layer. I may be working on this πŸ˜‰

App components have no capabilities besides the ability to draw, receive UI events, load their own assets, and create slow timers. The scenegraph is retained with a high-level mutation API for performance. I'm building out a Solid/SwiftUI-like framework plus nice syntax in Zena to make UI code easy

Other languages will work via Wasm, Zena uses the same generic WIT interfaces, but I'll have to prototype their surface syntax soon to make sure it can be as nice as possible there too. Soon I'll prototype a document format so that the system can be truly webby with hyperlinks and indexability.

Really, the world is ready for a new secure, cross-platform micro-app format. Something you could share and use directly in an Bluesky post. Obviously, it'd be based on WebAssembly plus a UI layer. I may be working on this πŸ˜‰

Justin Fagnani@justinfagnani.com

The world needs a new Flash-like, interactive, animatable, graphics format. I want to see something like a nice interactive chart and be able to right-click save it, instead of just taking a static screen shot of it.

Between AT Proto making sharing digital content in general a much more ubiquitous capability, and AI giving mortals the ability to generate their own content, there's both increased demand and supply for micro-apps.

The trick to move this beyond attempts of the past is to take security and composability seriously from the start. You should be able to compose a micro-app from other micro-apps, and the security boundaries must be present at every layer down. App should have no capabilities besides UI by default.

The world needs a new Flash-like, interactive, animatable, graphics format. I want to see something like a nice interactive chart and be able to right-click save it, instead of just taking a static screen shot of it.

We need *much* better security models to constrain agents and sanitize LLM inputs and outputs. There needs to be a holistic and comprehensive framework for this. Just putting everything in a VM is not enough.

Dare Obasanjo@carnage4life.bsky.social

Satya Nadella says companies should assume AI models are compromised (rogue agents) and build systems that limit their permissions, verify their actions and enable a human to shut them down. Rogue agents are a software security problem, not something we should expect β€œalignment” alone to solve.

Justin Fagnani reposted

I have my misgivings about Prop 40 but Prop 42 is clearly much worse, and it’s painfully obvious that Gavin is primarily backing it to do donor maintenance for his DOA presidential campaign.

CalMatters@calmatters.org

Gavin Newsom backs measure to kill the billionaire tax and ban future wealth taxes Gov. Gavin Newsom isn't just fighting the billionaire tax. He's backing Prop. 42, which would ban future wealth taxes in California, too.

Justin Fagnani reposted

If the cost of generating and maintaining code is going down, open source projects should double down on community, people, helping their dependencies and upstream teams, building trust that they are good stewards of that piece of the ecosystem. Some are sadly going in the opposite direction.