Show newer

Man, working with the Mozilla devs on Firefox bugs is always such a pleasure. I filed the bug yesterday, and already a dev has responded saying "let's make this work" and is pushing patches. I should be paying money for this browser.

Show thread

Looking into how I might wrap Pinafore as an Android app ("Trusted Web Activity"), and I'm continually disappointed that no major app store has just started automatically listing PWAs.

This is an idea that Microsoft had years ago and (AFAICT) still hasn't executed on.

Temporal is now in stage 3 for !

This means that it is highly unlikely to change and will almost certainly make it into JS proper. Temporal is a replacement for Date, solving many of its pain points. Read more here:

I've waxed lyrically about before: it's saved me many headaches, made complex tasks simple, and I believe every JS library should be authored in it.

But: it only works on teams willing to use and understand it.

A great way to get the downsides without the benefits is having lots of commits "to make the compiler happy" that just add type assertions everywhere.

I wonder what percentage of user stories ever written have had more than a cursory thought spent on the "As a..." and especially the "so that..." parts?

For me, programming is acknowledging I make lots of mistakes, and putting up a lot of guardrails for me to bump into.

Show thread

I'm currently discovering (and fixing) non-trivial bugs in obscure edge cases using property-based tests — once that's done, I'll be *very* confident it'll be working as intended. Fun!

Extra important because this is access-related code, i.e. at risk of privilege escalation.

Can highly recommend fast-check for writing property-based tests in JavaScript:

It was indeed a recruiter, good job Fediverse! (Though I'm sure the fact that I wouldn't have posted this if it wasn't a recruiter played a role…)

Either way, responding to this message is bound to be a surefire way to land a job with interesting and diverse colleagues, don't you think?

Show thread

@nolan "Trusting your collaborator to deal with feedback on their own using their best judgement" also means that it's OK for them to brush it aside.

That attitude, combined with suggested edits making it really easy for them to incorporate your feedback if they see the value, does away with most of the friction nitpicks and other minor disagreements can cause.

@nolan One thing I wish GitHub would change is to rename the "Approve" and "Request changes" options for a review. There's a lot of things (nitpicks, but also slightly more serious issues) that can very easily be resolved, and that don't need another re-review because you can trust your collaborator to deal with them on their own using their best judgment.

"Request changes" only really applies when you need to align on the approach before merging it in, which is very rare.

Got a message from someone saying she "would not forgive [herself] for not making a move on me", and that she'd "love to make time to (virtually) have a cup of coffee together".

Pop quiz! Was this…

New blog post: "JavaScript performance beyond bundle size"

This is kind of a grab-bag post about all the different performance metrics I think about when writing or using JavaScript modules. I hope folks find it interesting!

This is also a great attitude:

> Be prepared for your feedback not to be acted upon

If you're the one who's going to have to maintain the work, of course your input matters. But sometimes we're wrong, sometimes it's just Not That Important. There's no need to "win" everything.

Show thread

This is a great point:

> It might feel to them as you're criticizing them personally, and it takes a lot of effort not to take the criticism personally. Honor that effort by making it easier not to take it personally.

Sure, it'd be great if people would try not to take things personally — especially if it wasn't intended as a personal attack! But we're all human and imperfect, and by taking the small effort of being mindful of that, feedback can be so much more effective.

Show thread

Are YOU with us? Sign now!

40 orgas across Europe. We call on the EU to ban biometric mass surveillance.

For a future in which we are treated like humans, not walking barcodes, in which we are respected and not humiliated, discriminated against or treated like crime suspects, in which our options are not limited by an algorithm based on our body and looks.

Now's the time to act!
The tech is out there, but the EU is drafting new laws on AI.


Pinafore development 

I also saw it as a way to push the limits of what the web could do. However, I've become a bit chastened and disillusioned about this. For instance:

- Pinafore doesn't have nice animated transitions like native apps do. The web still sucks at this.
- Offline support is almost impossibly hard given Mastodon's API. The main benefit of IDB right now is low memory usage.
- PWAs haven't come far enough. Pinafore isn't listed in app stores, so it "doesn't exist" for most users.

Show thread

I want to support decentralisation, but I also want to have some confidence that a Mastodon instance will be around in the somewhat longer term.

Thus, I was thinking about moving to . Anything to be aware of?

For example, there were a number of typo's in the original that I wasn't able to fix, because lockfiles weren't a thing in the JS ecosystem back then, and I could not figure out the right combination of dependencies to properly build it!

Show thread

I built the original in 2015 with a number of learning goals, among which were actually finishing projects, and React. Over the years several people have taken the effort of actually reaching out to me to share how it's been helpful to them, which has been very gratifying.

Rebuilding it was a good way of reflecting on both how much I've learned since then, and how much our tooling has improved.

Show thread
Show older

Server run by the main developers of the project 🐘 It is not focused on any particular niche interest - everyone is welcome as long as you follow our code of conduct!