The great thing about i3 (and also other tiling WMs) is that they are very flexible and customizable to your preferred workflow.
Together with them being centered around the keyboard and easily scriptable, you can use them in a way that works best for your preferences and your environment.
For coding on my laptop, the active main workspace is split into three parts, with the editor taking the left half of the screen, and the right half split into browser and terminal (with the terminal being a TAB container with multiple terminals that I can quickly switch between).
When I need to focus on either the editor or the browser, I make them full screen (I have shortcuts to jump between full screen browser and full screen editor directly with one keystroke).
On other workspaces I have setups with music player, email, Jira/Bug tracker/etc that are always launched in the same configuration on boot and are also just a shortcut away.
So it works great on a laptop too, even if you spend a lot of time with one app maximized.
After using i3 for about 3-4 years, I have to admit that I'm always a bit lost on floating WMs now and feel like an idiot for a few minutes until I'm somewhat comfortable again.
To me tiling WMs are just vastly superior. Anecdotally, most people I know that have seriously tried to use a tiling WM usually end up sticking with them.