dotnet / EntityFramework.Docs

Documentation for Entity Framework Core and Entity Framework 6
https://docs.microsoft.com/ef/
Creative Commons Attribution 4.0 International
1.59k stars 1.95k forks source link

Make getting started more obvious when reading docs #4648

Open ajcvickers opened 4 months ago

ajcvickers commented 4 months ago

We have had lots of great conversations over the last couple of years on improving doc layout. I don't want to forget all that, but this is something we could potentially do that is low cost and will help people getting started.

I have been reading Cosmos docs, and I noticed this structure:

image

That is, at the top level there are "Quickstarts" "Tutorials". These break out for the potential dimensions--in Cosmos case, the platforms/languages. The tutorials are then about building different kinds of applications.

image

For us, I think it would be:

roji commented 4 months ago

I love the direction and trying to make this all better - here are some thoughts.

I'm not sure a full quickstart page for each databases makes sense.. In the Cosmos case, obviously a different language warrants a completely different code sample (everything is different), but a simple quickstart for EF will like differ by only a single line across providers - UseSqlServer vs. UseNpgsql (of course as you get deeper there are many other differences, but probably not at the quickstart level).

Maybe it's enough to just use tabs here? i.e. in the "build a console application", "build an ASP.NET Core ...", we could have a tab for each provider where we show the code to configure the provider? This would also allow us to integrate all providers into all tutorial pages (and avoid an explosion of pages where we need to show console for SQL Server, for Cosmos...).

Another note is to think about the relationship between the above and the ASP.NET tutorials (e.g. this).

ajcvickers commented 4 months ago

In the Cosmos case, obviously a different language warrants a completely different code sample (everything is different), but a simple quickstart for EF will like differ by only a single line across providers - UseSqlServer vs. UseNpgsql (of course as you get deeper there are many other differences, but probably not at the quickstart level).

This is true, but the point here is to draw people in by letting them see something that they connect with without clicking into docs to get there. So, the point is to make "Cosmos with EF Core" a top-level item that people will see.

"build an ASP.NET Core ..."

These will be a link to the existing ASP.NET tutorial. For the tutorials we own, we can add tabs.

roji commented 4 months ago

This is true, but the point here is to draw people in by letting them see something that they connect with without clicking into docs to get there.

Right, from a "marketing" point of view I can see that.

These will be a link to the existing ASP.NET tutorial. For the tutorials we own, we can add tabs.

I guess I'm wondering more on the precise line between "EF tutorials including web" (living in our docs) and "Web tutorials including EF" (living in ASP.NET's). But anyway, not important.