[Online] Steve Collins - The [Source Code] Generation Game

![[Online] Steve Collins - The [Source Code] Generation Game](https://secure.meetupstatic.com/photos/event/c/2/c/5/highres_504049861.webp?w=750)
Details
The Talk:
here has been a lot of buzz around the introduction of source code generators in .NET 5 and it's there's more to come in .NET 6 and .NET 7 .
But, how did we get here and what may the future hold?
Starting with the question of "What is code generation?", I present a brief history of my journey into source code generation, starting with the ZX Spectrum (program published in a UK magazine to convert machine code into BASIC DATA statements), through the Visual Basic 3-6 years (VB code created when element clicked upon; tools to generate VB from SQL tables and stored procs)
I will then move on to do a whistle-stop tour of
* How .NET introduced tooling in Visual Studio for code-generation for SOAP Service Reference clients, RESX resources and the pitfalls of the code generated
* How previously, most code generation has been template based using external tooling run outside VS to generate files that need to be manually included in .NET projects to compile
* Introduction of T4 templates in Visual Studio (leading onto .NET Core's dotnet new command line templates)
* Code generation "on-the-fly" in Regular Expressions (intermediate code or compile to MSIL) and Entity Framework (SQL statement generation)
* Latest version of service reference code generation for REST and gRPC in .NET 5
The remainder of the talk will focus on the source generators introduced with .NET 5, covering
* How they differ from traditional template based code generation by being part of the compilation process
* Tooling to help debugging introduced with VS2019 16.10
* Gotchas with the tooling in Visual Studio!
* Unit testing code generation
Lastly, we will look at where source generators may go in the future
* More out of the box use, such as System.Text.Json in .NET 6
* Could there be potential for working with Intellicode and Github Copilot integration?
* "Computer make it so" - Experiments being done in AI generated code without a template or specification
About Steve:
Steve Collins is an independent software developer/architect with over 25 years’ experience in the industry working with Microsoft technologies.
Steve is a regular speaker at user groups around the UK and has presented at NDC London and DDD conferences
Blog - [https://SteveTalksCode.co.uk](https://stevetalkscode.co.uk/)
Twitter - @SteveTalksCode

Sponsors
[Online] Steve Collins - The [Source Code] Generation Game