
🇳🇱 Lead Software Engineer @Cimpress #a11y / React / TS / JS / Elixir / Elm Previously @madeawkward / @sketch
Rotterdam, The Netherlands
Joined June 2009
- Tweets1.1K
- Following1.9K
- Followers309
- Likes7.1K
Making a little VS Code extension to help me with the boring work of converting a JS codebase to TypeScript. I want to let AI do the work, and I just check the diff and make adjustments where needed :)
I'm converting a big React codebase from JS to TypeScript. There's a lot of repetitive work involved (think, converting proptypes to interfaces). Perfect for AI. I have access to GitHub Copilot, but I cannot get CoPilot to access the file contents, anyone know how to solve this?

ALT Conversation with GitHub Copilot in VS Code. I ask: @workspace convert src/pages/editor/components/canvas/canvas.tsx to TypeScript. GitHub Copilot: Sure, I can help you with that. However, I need to see the content of the file `src/pages/editor/components/canvas/canvas.tsx` to provide a more accurate conversion. Could you please provide the content of the file?
> Humanity can do more than one thing at the same time
I wish I could like this more than once.
If I had a dollar for every time someone criticizes The Ocean Cleanup with the phrase “if your bathtub is overflowing, you wouldn’t get a mop, but you would first turn off the tap”, we wouldn’t have to accept donations anymore.
It is not only a cliché, but it’s also just plain wrong, for a few reasons:
1. Humanity can do more than one thing at the same time. Why not do both? Get a friend to start mopping while you work on closing the tap! One does not compete with the other; the cost of cleaning up the legacy pollution is negligible compared to what we spend on dealing with the waste on land.
2. The analogy can be used to criticize the *timing* of cleanup, but instead it’s being used to criticize spending *any* effort on anything cleanup-related. When your bathtub is overflowing, surely you’re happy there were people who developed the mop? Presumably you still have a mop at home?
3. The longer the water is on your nice wooden floor, the more damage it does, so you’d still want to mop up the water rather quickly. Similarly, the longer the accumulated plastic remains in the ocean, the more harm it causes.
4. We don’t disagree that stopping the inflow should have highest priority. Yet, due to the persistency of the plastic, that’s not the only thing we should do if we want to return to clean oceans.
5. The Ocean Cleanup works on closing the tap, too! The closest analogy to the faucet are rivers and that’s exactly where are are intercepting it to prevent it from flowing into the ocean. Instead, these activists often put river interception under the header of ‘cleanup’ too.
6. Many of those that use the bathtub analogy argue we should stop producing plastic. If we take the analogy seriously, that’s not ‘closing the tap’ but closing down the complete water supply.
7. The analogy suggests that you’d have to clean up as fast as it is flowing in to have any effect, but that’s not how the plastic problem works. Almost all the plastic that flows into the ocean washes up back onto land within a few months of being emitted, essentially removing itself. Only a tiny fraction persists. This means that just a single full scale ocean cleanup system in the Great Pacific Garbage Patch, which specifically addresses that persistent fraction, will, in fact, be capable of removing persistent plastic faster than it is flowing in.
Let’s retire this dreaded analogy.
Pretty sure this was not in the release notes: in Safari 17 you can now finally select multiple tabs with shift+click and close them simultaneously!
Yeah, Bun is exciting, but also maybe its performance promises are slightly overhyped: youtube.com/watch?v=EVMMoDWN…
I discovered the Recheck ESLint plugin today which is way more reliable at checking against unsafe regexes compared to ESLint Plugin Security. makenowjust-labs.github.io/r…
TypeScript Congress is starting in a few. Looking forward to many amazing talks!
portal.gitnation.org/badges/…
#TSCongress
Timon van Spronsen retweeted
The fire has a great impact to us an all others inside the Keilewerf. Thankfully nobody got hurt, but all of our projects are gone😿
Our focus now is finding and rebuilding a new space. That’s why we need your help.
Help hackerspace Pixelbar in Rotterdam rebuild! We are an inclusive community whom regularly organize free events to help people learn about coding, 3D printing, hacking etc. gofund.me/af8c3aef
Help de Keilewervers aan een nieuwe start!
gofund.me/b0e9a1b3
We're organizing another NodeSchool meetup in Rotterdam next month. Come join us to learn about JavaScript and AI together! meetup.com/nodeschool-rotter…
Timon van Spronsen retweeted
Hey friends!
Building cool things for the web? Can I help?
I work hard, and I love helping others.
Would you help me share my CV?
jonneal.dev/
Anyone building internal component libraries? What are you using? Our company mostly uses React, but I feel like component libraries should be available to teams using other tech, and we shouldn't need to rebuild it when we leave React. Is Lit a good choice? What about SSR?
I know Lit now supports SSR, though I'd have to ask consumers to install a specific plugin for their bundler or framework (and not all bundlers and frameworks are supported). This makes me lean to React where this would just work.
Timon van Spronsen retweeted
📢 We're organizing another beginner Rails Girls workshop! Interested in learning how to make your own web apps? Join us May 20th, in Rotterdam!
railsgirls.nl
#railsgirls #womenintech #girlswhocode
Timon van Spronsen retweeted
Hosting a meetup in SF on April 19th to explore the intersection of AI/UX. Co-hosting with the wonderful @swyx!
Come show off your interaction design demos exploring AI beyond text boxes and chatbots
Apply here – we'll prioritise folks w/ demos ✨
partiful.com/e/Dfw3sbzb8JjDq…










