惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

M
MIT News - Artificial intelligence
罗磊的独立博客
Hugging Face - Blog
Hugging Face - Blog
J
Java Code Geeks
G
Google Developers Blog
美团技术团队
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
腾讯CDC
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
T
The Blog of Author Tim Ferriss
月光博客
月光博客
B
Blog
WordPress大学
WordPress大学
云风的 BLOG
云风的 BLOG
博客园_首页
人人都是产品经理
人人都是产品经理
aimingoo的专栏
aimingoo的专栏
Y
Y Combinator Blog
Jina AI
Jina AI
S
SegmentFault 最新的问题
H
Help Net Security
博客园 - 聂微东
Microsoft Azure Blog
Microsoft Azure Blog
Google DeepMind News
Google DeepMind News

Codrops

Drawing With Light: An Exploration of Lit GPU Tubes with TSL and WebGPU | Codrops Building a Real-Time 3D Face Mask with MediaPipe, Threlte and Three.js | Codrops Building an Infinite Loom: Unravelling Images into Threads with Three.js | Codrops Beyond the Luminance Ramp: A Shape-Aware ASCII Renderer in Three.js | Codrops From Rays to Meshes: Building Vercel’s Prism with vgpu | Codrops More Three.js Speakers, More Ideas from Paris | Codrops Breaking the Frame: Building a Real-Time Datamosh Effect with Three.js | Codrops Bend, Aim, Fling: Turning the Eiffel Tower into a Catapult with Three.js | Codrops Volatile Nexus: Tinkering with Glass, Caustics, Cubes and Sound in Three.js | Codrops Goodgrowth: Boot Sequences, Spinning Discs, and the Art of the Portfolio | Codrops Building a Mouse-Following Square Lens Effect with Three.js and GLSL | Codrops Blender to Three.js and Back: 10 Tips for a Better Workflow | Codrops Sixty Frames for the Record: A Three.js Game, Seven Fly-Throughs, and a Wall of CRTs | Codrops Run Rob Run: Building a Music-Reactive Goo with Three.js and WebGPU | Codrops Relighting Images with Depth Maps and Three.js | Codrops Building an Animated Testimonial Hero Using the GSAP Timeline and Dynamic CMS Data | Codrops Creativity at Enterprise-Scale, Without Compromise: The OFF+BRAND. Story | Codrops Inside HAOQI.DESIGN: Letting DOM and WebGL Share a Retro-Futurist Stage | Codrops From Motion to Meaning: Denis Avramenko’s Approach to Interactive Design | Codrops Creating an Interactive 3D Cluster with Three.js, TSL and Three Start | Codrops Exploring Procedural Geometry with Three.js and WebGPU | Codrops From Brand Systems to Cultural Worlds: Inside Antinomy and 27b | Codrops Designing a Flexible Digital Archive for Chems.Studio’s Creative Practice | Codrops The Department Is Open: Building the PX PUSH Website | Codrops Garden Anomaly: A Tiny WebGPU and TSL Experiment | Codrops A Canvas for Individuality: Creating Websites That Feel Unmistakably Human with Readymag | Codrops Building an Endless Interactive Glass Xylophone with Three.js | Codrops The Story Is in the Interaction: Bonhomme’s Digital Experiences for Luxury Brands | Codrops Building an Infinite GSAP Scroll Gallery with Parallax and Flip Transitions | Codrops Studio Freight: Moving Missions Forward | Codrops
Always Building, Always Learning: Cyd Stumpel’s Journey T...
By Cyd Stumpel · 2026-06-17 · via Codrops

I’m Cyd, a freelance creative developer, tech speaker and part-time teacher based in Amsterdam, the Netherlands. I build accessible, award-winning websites for companies, studios and individuals, but I also teach the next generation of web developers at the Amsterdam University of Applied Sciences (AUAS). I like to blog from time to time, and I’ve really enjoyed speaking at conferences over the years.

What I love most about development is seeing flat designs come alive with motion and using it as a storytelling tool.

Selected work

Rotgans Media House

Michiel Rotgans is a Dutch photographer with beautiful work. It’s always easier to create portfolios for people with stunning visuals.

I especially love the homepage-to-case transition and how it plays in reverse when navigating back.

Page transition from home to a detail page and back for Rotgans Media house

This project was designed by Tim Borst. In this project I used CSS view transitions for filtering, page transitions, and load-more animations. I also used CSS anchor positioning for a small micro-interaction on the filter buttons. It’s built in WordPress using Swup with native view transitions. Swup is amazing if you want to have control over your different transitions between pages, much easier and better supported than the native approaches with view transition types and pageswap events at the moment.

Page transitions between portfolio items for Rotgans Media House
Load more animation for Rotgans Media House

Studio Sallali

Hamid Sallali is a creative director who I’ve worked with a few times over the years. He designed this website and gave me full creative control over the motion.

Loading animation and scroll for Studio Sallali

The scroll animation (done with GSAP ScrollTrigger) was based on a tutorial right here on Codrops. This was all before view transitions, so the click animation on the cases is done with GSAP Flip. This is also a WordPress website.

Different case on Studio Sallali

De Visdeurbel

De Visdeurbel (or fish doorbell) is a project from Dutch ecologist Mark van Heukelum. He noticed that a lot of fish were being blocked mid-migration by a lock in Utrecht, the Netherlands. He placed an underwater camera at the lock, had a website made that showed the livestream and a doorbell that users could press every time a fish was visible. In the first years an email was actually sent to the lockkeeper with a screenshot of the livestream so he could come and manually open the lock. With over 250,000 presses a year, we eventually had to build something a little more sophisticated than emailing a lockkeeper.

Homepage for De Visdeurbel

Not the most creative website in terms of motion, but one of my favourite projects nonetheless, because of the community it created. Millions of visitors watch a stream of a little lock in Utrecht every year.

De Visdeurbel was also featured on Last Week Tonight with John Oliver, which was really surreal.

John Oliver sitting behind his desk at Last Week Tonight, talking about the Fish Doorbell website
John Oliver talking about De Visdeurbel on Last Week Tonight

It was redesigned by one of my favourite studios to work with, Studio Moan, last year and I handled the rebuild.

After only two days we realised just how many people were visiting De Visdeurbel, and how many people just liked to press a button (and honestly, who can blame them?). It forced me to think about ways to reduce the amount of empty screenshots, which I brought to the Okay Dev Slack, a community full of some of the most helpful creative devs you can find. I landed on implementing some edge detecting kind of algorithm and wrote a blog post about it.

A test of my edge detecting script showing the probability of 'something' being visible in the screenshot from the fish doorbell
A test of my edge detecting script showing the probability of ‘something’ being visible in the screenshot from the fish doorbell

This year we’re also collecting more data on how the fish doorbell is used, my students from the Minor Web Development are actually exploring what we could do with that data as we speak. Stay tuned!

Sophie Zwartkruis

Loading animation for Sophie Zwartkruis

Sophie Zwartkruis is a corporate governance advisor. She wanted a minimalistic website with page transitions and subtle scroll animations. It’s sometimes harder to go small than big, but it was a really enjoyable project.

This website was designed by Hamid Sallali. He created a basic palette of complementary colours, added a distinctive and professional serif font, and asked me to bring in subtle animations to create a professional website that invites you to keep exploring.

Page transitions for Sophie Zwartkruis

About me

I studied Communication and Multimedia Design at AUAS, and I was fully planning to become a designer. During the tech courses, however, I realised how fun coding could be. Unfortunately for me, that didn’t mean I was immediately good at it, but with lots of hours of hard work and after a Minor in Web Design and Development I became a lot better.

In my final year at the uni I got a frontend internship at Matise, a small digital agency in Amsterdam. That’s also where I first encountered design and animation as storytelling tools. I was offered a job after graduating in 2018 and worked there until 2020, when Matise closed their doors. After that, I started freelancing.

After bumping into some of my former lecturers at a conference in 2022, I was invited to join them as a teacher on the brand new two-year Associate Degree Frontend Design & Development at AUAS.

My colleagues and graduates of 2025 from the Associate Degree Frontend Design & Development

In 2024 I spoke at a conference for the first time, the Awwwards conference in Valencia, and since I’ve spoken at some of my favourite events about CSS and creative development, like Beyond Tellerrand, CSS Day and JS Heroes. I have a few more speaking engagements on the calendar for this year, including Fronteers Dark mode.

Cyd on stage at CSS Day in the Zuiderkerk in Amsterdam

Philosophy

I’m a big believer in “underpromise, overdeliver”. I think that’s why most of my new projects come from referrals. I also believe that accessibility can be an opportunity to be more creative and get more projects. It’s still pretty niche for creative developers to know anything about accessibility, unfortunately, but with new legislation in the EU it’s becoming more and more important.

I think it’s really important to keep up with new specs, CSS has added a lot of cool new features to replace JavaScript, like sibling index, anchor positioning, view transitions and scroll-driven animations. I try to implement those in new projects as enhancements where possible, but I always try them out in my portfolio first. Building portfolios has become a kind of escalated hobby of mine, I basically build a new portfolio every year.

Cyd on stage at JS Heroes in Cluj, Romania
On stage at JS Heroes in Cluj, Romania
Cyd on stage at JS heroes, picture by Vlad Cupşa

Tools & workflow

While I’ve built in pretty much every modern framework, I build most of the websites for my own clients in WordPress. I know it doesn’t sound fancy, but it’s the most cost-effective and user-friendly option for me and my clients.

I do really enjoy using SvelteKit and Astro, and I often reach for those if I don’t need a CMS. I love those frameworks specifically because they stay close to vanilla JavaScript, although SvelteKit has added a lot of complexity over the last few years.

Currently learning

Lately I’ve been trying to replace a lot of JavaScript animation with CSS solutions. Back in 2024 I felt I really needed to rush out my new portfolio for that year because I was sure everyone would get onto the bandwagon of view transitions and scroll-driven animation and that my portfolio wouldn’t be special anymore. Two years later, however, it seems like the Creative JavaScript Developer crowd is still very much in JS land. Baseline support for the features has also taken longer than I expected, so that might have something to do with it. I still think CSS animations will take over more and more JavaScript animations as browser support grows, so it’s definitely worth the time investment.

Current challenges

My biggest challenge currently is balancing all the things I want to do at once: teaching, speaking at conferences and actually building things for clients. I will take a bit of time off from teaching for at least the next semester to get a healthier work-life balance.

Final thoughts

It’s a weird time to be a web developer, to say it mildly, with people saying it’s no longer worth your time to learn new specs because AI will take over most of our work anyway. Some companies are even forcing their developers into becoming ‘prompt engineers’.

I think it’s important to take a step back, stay resilient, and realise the dust hasn’t settled yet, we’re at the very start of AI. Our roles as developers will probably change, but how exactly isn’t clear yet.

The most likely scenario, in my eyes, will be that we as developers will be more and more pushed into a role of being arbiters of taste, quality and security. It will be more and more important to focus on the basics of web development; knowing the difference between ‘good’ and ‘bad’ code, enforcing principles like DRY and keeping an eye on performance, progressive enhancement and accessibility.

I think our relevance and power compared to AI will be in seeing the entire context of the work, who will use it, how they will use it and why. So my advice is: spend some time in the next couple of months to relearn the basics.