- Dive Club
- Posts
- 🤿 the final boss
🤿 the final boss

I have good news and bad news…
The bad news is that I didn’t write an article this week. But only because I’ve become so obsessed with Genway that I spent the last week redesigning their website 😅
Which brings me to the good news!
I filmed a behind-the-scenes video to walk you through my process of going 0 to 1 on a new website design 👇
HOW I USE AI
I use AI every single day but I never go to OpenAI, Claude or any websites like that…
Raycast is my portal to AI 👀
It’s a quick keyboard shortcut away which means it’s always at my finger tips. I can add attachments, build presets to streamline my workflows, and a lot more…
It’s a big reason why Raycast has pretty quickly become the cornerstone of how I use my computer.
So if you haven’t tried it yet, do yourself a favor 👇
📺 THIS WEEK’S EPISODE
How do you make software that feels great?
This week’s episode is with Janum Trivedi who makes some of the most stunning prototypes in all of design. So the main goal of this conversation is to answer the question “what makes a piece of software feel great?”
Some of the key talking points:
Shipping a major refresh of the Netflix iOS app
Why shaders are a big deal (and how they work)
How Janum built the download animation for Arc
What makes Janum’s new role at Airbnb so unique
Why Janum created his own animation engine (Wave)
Learning the principles of fluid design working on the iPad pointer
a lot more
Key takeaways
1 — Levels of animations in software
Level 1️⃣ → Fire and forget
This is when you have to wait for an animation to finish before you can dismiss it. The problem is people might be thinking about how to use the software faster than the software is letting them use it.
Level 2️⃣ → Interruptibility
Let’s say you’re designing a modal interaction. This is where you allow users to dismiss the modal at any point in the initial reveal animation. The dismissal animation might be exactly the same no matter when it begins though.
Level 3️⃣ → Retargeting
This takes interruptibility to the next level by maintaining the momentum of the animations as you change where they are animating to. Janum uses the example of flinging a picture-in-picture box around the screen on iOS. The curve it takes is dictated by its starting point and the speed at which you swipe.
Another core component of retargeting is “rubber banding” certain progress values. This is why when you scroll to the bottom of a table view on iOS, it temporarily goes past the bottom of the screen and then snaps back to 100%.
2 — Not all engineers commit to production
As Janum’s career has progressed, he’s started focusing less on production code and more on prototyping. At Apple and Netflix it was 50/50. At the Browser Company it was 70% prototyping, and now at Airbnb he is only doing prototyping.
This “prototyping specialist” role becomes extremely important at a place like Airbnb because having someone like Janum on the team allows them to pursue more ambitious design ideas.
Designers can push the boundaries and better visualize what is possible. While traditional product engineers can get help with tricky UI interactions. Both roles are enhanced.
Knowing how to code doesn’t put you on an engineering track. It’s simply a way to explore and express ideas in greater fidelity.
3 — The power of shaders
Seeing the dynamic island unveiled was a humbling moment for me. The concept existed so far outside of the bubble of my understanding because I operate in rectangle land. Everything I make is boxes inside of boxes inside of boxes… but shaders blow the roof off of what is possible.
They’re “little programs that run concurrently on every single pixel on screen, every single frame”. And because they run on the GPU of your device, they’re not as expensive as you’d think.
This is how teams like Apple are creating these crazy ripples and shimmers because they’re designing an experience frame by frame and pixel by pixel. Many of Janum’s experiments are using shaders (even a 3D terrain).
If you are interested in experimenting with shaders then Janum recommends checking out the Book of Shaders. But be warned… shaders probably aren’t the best starting point if you’re just starting to dabble in code. Take some baby steps first and then shaders are “a final boss when you’re ready” 💪
🧃 INSPIRATION JUICE
3 designs I saved this week
1. Gorgeous pricing card
I love this card UI from Kevin so much that I used it as inspiration for the new Framer website I’m building (see if you can spot it!)
The way the white border at the top fades to nothing is my favorite part 👌
2. Unique features section layout

There’s a couple elements about this section on the new Amplemarket site that I found interesting:
The noisy gradient animation is a motif they use throughout the site and pairing it with this illustration style is a fun juxtaposition.
The layout itself feels very versatile
Most of the time people put features behind tabs on a website I think “there’s no way anyone clicks on these, right?”
But the vertical cards and large illustrations are a pretty fresh take on this concept. Even the way the content is placed below is unique. I’ll definitely be saving this one for future inspiration.
3 — Uncut Sans

I’m not going to pretend to be a typography enthusiast. But I enjoyed the use of Uncut Sans on the new Leya website enough to download it this morning.
Will be looking for an excuse to use it on a project 👀
🤝 WITH JITTER
Get Fons Mans’s animation source file

Fons is back at it with another viral animation template 👀
As soon as I saw this I thought about how cool it would be to showcase your work each month online. I’m even planning on using it to share these inspiration juice posts on Twitter!
You’ll want to bookmark this one 👇
Meet the Dive partners
I made a list of my favorite products and asked them to come on as sponsors of the newsletter/podcast. They said yes 🥹
The #1 way to support Dive Club is to check them out👇
Jitter → How I animate my designs
Framer → How I build my websites
How much did you enjoy this issue?Never hesitate to reply with feedback too :) |
Thanks for reading! I'm working hard to bring you the best design resources on the planet 🫶
If you want to go even deeper you can always:
![]() |
|
P.S. if you were forwarded this email you can subscribe here