Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save SergeyTeplyakov/054760dbb1af1b1ab8aa99d048e50293 to your computer and use it in GitHub Desktop.
Save SergeyTeplyakov/054760dbb1af1b1ab8aa99d048e50293 to your computer and use it in GitHub Desktop.
Comments about 'The .NET World - C# Source Generator'
This is a comment about the following blog post: https://hamedfathi.me/the-dotnet-world-csharp-source-generator/
I just skimmed through the post because its quite long tbh, so this is not a review but rather an impression.
When I was blogging I was asking myself some questions:
- Who's my audience?
- What's the goal and the story of the blogpost?
- Is there any redundant infromation that I've added to the post that can be removoed without making the main point less clear? etc.
Even though I think soomeone will love the posts like the one we're talking about (and the content is great, btw), this is not the post I'll be reading carefully.
The reason is that it coveres too many topics:
- An overview of what source generators are. From conceptual perspectives and in terms of implementing one. With a lots of details that can be helpful but they can be hard to find in 20 pages blogpost.
- Testability of the design and the issues with static methods.
- A short overview of Dapper.
- Detailed overview of project that solves the second problem with its layout and with a lots of source code.
So the issue for me is that those 4 topics deserves 4 blog posts beause they kind-of orthogonal.
What I would've done in this case (for instance, if I wanted to write about sorce generators by using one of my personal projects as an example)
I would've split this into the series and covered each topic separately and covered the project itself only in the last blog post of the series.
And as an exmaple, I would've created a simple source generator that would've done a very simple thing with only pieces of code embedded in the blog post and with a very simple example, like "How to mock DateTime.Now" or something similar.
and I would've linked to my "work-in-progress repo" to show that my very simple and artificial example can be extrapolated to solve the real-world problems.
But again, all of that is based on my personal preferences and you can keep doing a great job by posting the content you feel the best appropriate to your audience!
Cheers and keep blogging!
@HamedFathi
Copy link

Thank you so much, you are right.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment