Jason Bock is a Practice Lead for Magenic and a Microsoft MVP (C#). He has 20 years of experience working on a number of business applications using a diverse set of frameworks and languages such as C#, .NET, and JavaScript. He is the author of "Metaprogramming in .NET", "Applied .NET Attributes", and "CIL Programming: Under the Hood of .NET". He has written numerous articles on software development issues and has presented at a number of conferences and user groups. He is a leader of the Twin Cities Code Camp . Jason holds a Master's degree in Electrical Engineering from Marquette University.
Show more
Jason Bock is a Practice Lead for Magenic and a Microsoft MVP (C#). He has 20 years of experience working on a number of business applications using a diverse set of frameworks and languages such as C#, .NET, and JavaScript. He is the author of "Metaprogramming in .NET", "Applied .NET Attributes", and "CIL Programming: Under the Hood of .NET". He has written numerous articles on software development issues and has presented at a number of conferences and user groups. He is a leader of the Twin Cities Code Camp . Jason holds a Master's degree in Electrical Engineering from Marquette University.
Show more1: An Overview of the Compiler API.- 2: Writing Diagnostics.- 3: Creating Refactorings and Handling Workspaces.- 4: Using the Scripting API.- 5: The Future of the Compiler API.
Jason Bock is a Practice Lead for Magenic and a Microsoft MVP (C#). He has 20 years of experience working on a number of business applications using a diverse set of frameworks and languages such as C#, .NET, and JavaScript. He is the author of "Metaprogramming in .NET", "Applied .NET Attributes", and "CIL Programming: Under the Hood of .NET". He has written numerous articles on software development issues and has presented at a number of conferences and user groups. He is a leader of the Twin Cities Code Camp . Jason holds a Master's degree in Electrical Engineering from Marquette University.
![]() |
Ask a Question About this Product More... |
![]() |