I want my workspaces to communicate, but I don't know if it is better to put them in one space to make sure they can communicate, or if is better to create several different themes (accounts, life project, books to read...)
For me one Notion workspace with as many pages and databases you need is the best solution to have everything under the same roof.
Having different Notion accounts or workspaces can make sense if you need to actually have completely separate information that you will never share with another workspace, but if everything is for you and the main idea is to share data and information between databases and pages, just one Notion workspace is enough.
Having a different workspace for stuff creates all kinds of extra complexities, especially if you work with others on things. Sharing stuff between workspaces sometimes works a bit wonky and comments on more than one workspace will have you switching between workspaces until you lose your mind. So basically, you'll set yourself up for a lot of extra clicks and lack of overview.
So I'd say: keep your number of workspaces as low as possible UNLESS...
In all other cases, you and you sanity will thank me if you just use separate pages and subpages all from one workspace.
Late to the party but I learned this hard way for sure. Sunk a lot of hours in a system across several workspaces that I thought would work but...didn't.
What you really want to do is think in terms of creating global databases that you can re-implement and filter differently across your workspace and in different contexts. For example, keep a master "tasks" database but add a tag property and tag your tasks accordingly (work, personal, house projects, etc). Then, if you create a dashboard for your home life and another for your work life, you can drop in the same linked database to "tasks" in both...but filter each according to the appropriate tag.
It may not sound like it, but doing this makes things a lot less complicated because you're managing fewer databases as long as you're thinking in really broad, global terms. Another example: I have a "Library" database. It's pretty much everything I collect from the web, inspiration, courses, articles, and all of my random notes. But I tag everything according to what it is. Basically, if it's reference material it goes in the Library. So say I'm making a dashboard for a particular context and I only want to surface...let's say my social media research. I immediately know to add a linked database to "Library" and filter "articles" as the type and "social media" as the content (tag properties I've arbitrarily chosen), and boom. All of my work notes? Go to my Work dashboard and filter "notes" and "work". Boom again. Any entries created in those linked databases will automatically have the filtered properties applied, so I don't have to worry about the fuss of tagging things myself.