Chris Woodruff
Architect at Real Time Technologies
Grand Rapids, Michigan, United States
Actions
Chris Woodruff, also known as Woody, is an Architect at Real Time Technologies and brings nearly three decades of industry expertise, having launched his career before the first .COM boom. Renowned for his contributions to software development and architecture, Woody is a regular speaker at international conferences, where he shares his deep knowledge on topics ranging from database development to APIs and web technologies.
A dedicated mentor, Woody thrives on guiding fellow developers and enhancing their skills through his talks, written work, and digital content. He co-hosts the popular "Breakpoint Show" podcast and YouTube channel, which he uses to connect with and educate the tech community. He is also writing a book covering network programming with C# and .NET.
Woody's interests extend beyond his professional life, adding a personal touch to his character. He is a passionate bourbon enthusiast, often embarking on adventures along the Bourbon Trail in search of unique finds to savor and share with friends. Family time is a cherished part of his life, and he often shares insights from his professional journey on his blog at https://woodruff.dev. To stay updated on his latest projects and adventures, follow him on Twitter at @cwoodruff and Mastodon at https://mastodon.social/@cwoodruff, where he shares his thoughts and experiences, fostering a sense of connection with his audience.
Area of Expertise
Topics
Embracing your Renaissance Man (or Woman) in the Digital Age
Being a Specialist is overrated. Working to have more knowledge than anyone else in a field in your community is keeping you from being the best you can be. Doctors and teachers should have a specialization, but most people don't have to be experts. A career built on adaptability, overcoming unpredictability, and connecting areas of knowledge for new solutions is essential in this current age of work. The key is being a Generalist or what some people call a Jack of All Trades. Being a Generalist means approaching one's life as a creative work, living life from a creative professional instead of a reactive viewpoint. This talk will bring a new view to building a career that allows you to spread your eggs in many baskets, create more opportunities, explore new passions, and think more significantly than where you are today.
Blazing a Trail with Blazor: Revolutionize Your Web Development!
Introducing Blazor, Microsoft's innovative framework for building interactive client-side web UIs using .NET. Central to this discussion is an explanation of WebAssembly (WASM), a cutting-edge web standard enabling high-performance applications directly in the browser, allowing C# and .NET to function without plugins or recompilations to JavaScript. This talk delineates between Blazor WebAssembly, which runs .NET code in the browser via WASM, and Blazor Server, which executes .NET code on the server, maintaining a real-time connection with the client through SignalR.
Attendees will gain insights into implementing reusable components, a cornerstone of efficient Blazor development. These components encapsulate functionality self-contained, promoting code reuse and maintainability. The session will cover practical demonstrations of building and consuming such components, including parameterization and event handling.
The talk will explore state management, application structuring, and performance optimization, equipping developers with the knowledge to build robust, maintainable, scalable Blazor applications. Attendees will leave with a comprehensive understanding of Blazor, poised to leverage its full potential in modern web development projects.
The Other Cloud for .NET: Developing with .NET 8 on AWS
Developing and deploying .NET 7 applications on Amazon Web Services (AWS) is crucial to helping organizations achieve the scale and agility offered by cloud computing. There are many platforms to deploy your .NET 8 apps, and most developers do not understand these other clouds' benefits, including elasticity, scalability, and flexibility. This talk introduces the AWS tools and services directly suited for .NET development and deployment. It is a starting point for .NET architects and developers who wish to develop, build, deploy and maintain their applications on AWS. Attendees will learn the approaches that can be used to deploy .NET applications on AWS and detail the options and services that can help developers get the most business value from their cloud-based solutions.
Rust-ifying Your C# Codebase: A Tale of Adventure and Transformation
As the software development landscape evolves, so too must the tools and languages at the disposal of developers. For professionals proficient in C# and .NET, exploring new languages and paradigms can be exciting and challenging. Among the emerging languages, Rust stands out as a powerful systems programming language with a focus on safety, concurrency, and performance. This conference abstract presents an overview of a talk aimed at developers experienced in C# and .NET who are interested in making the transition to Rust.
By the end of this session, developers familiar with C# and .NET will have a solid understanding of Rust's unique features, its advantages, and the practical steps for transitioning to Rust development. Whether you're interested in building high-performance systems or exploring new horizons in software development, this talk will equip you with the knowledge and confidence to embark on your Rust journey.
Join us to discover how Rust can expand your toolkit and empower you to tackle a broader range of software challenges while maintaining the safety, performance, and productivity you've come to expect from your C# and .NET experience.
Harnessing the Power of Open Data: Designing APIs with OData and .NET 8
The Open Data Protocol (OData) has emerged as a powerful and flexible standard for building and consuming RESTful APIs, enabling developers to create rich, interactive user experiences. This talk will demonstrate designing and implementing APIs using OData and .NET 8.
Key topics covered in this talk will include:
• An introduction to the Open Data Protocol and its core principles for designing efficient and flexible APIs.
• Implementing OData services in .NET 8, including EF Core design, data access, and routing configuration.
• Advanced querying and data manipulation techniques include using $filter, $orderby, $top, $skip, and $expand OData query options.
• Tips for optimizing the performance of OData APIs, including server-side caching, client-side data fetching, and pagination strategies.
We will introduce the OData standard and its core principles, including its ability to enable seamless querying, sorting, filtering, and data paging. We will then explore the key benefits of OData combined with .NET 8, such as improved performance and simplified client-side development.
Unlocking Discoverability: Integrating Hypermedia with ASP.NET 8 Web API
In the vast, intricate web, our journeys from one digital realm to another are guided by unassuming hyperlinks, forging pathways and making the web an exploratory terrain for humans. But what about services? Enter Hypermedia APIs – the unsung heroes making services just as discoverable, ushering us into the future where every API is a well-lit avenue rather than a hidden alley.
Roy Fielding enlightened us with the quintessence of Hypermedia in REST APIs, portraying it as the linchpin of the architectural style. Echoing this, the Richardson REST Maturity Model declared Hypermedia as the zenith of REST evolution. Despite the accolades and pivotal role, Hypermedia remains an underutilized treasure, overshadowed by its more ubiquitous counterparts, thus dimming the luminescence it can bring to APIs.
This talk embarks on an expedition to uncover the untapped potential of Hypermedia in enhancing ASP.NET 8 Web API solutions. We will delve into the whys and hows, demystifying Hypermedia’s significance and illustrating its implementation. Why is it, despite its heralded status, that Hypermedia is still a rare gem in the API landscape? And, more importantly, how can we harness its capabilities to bring about a paradigm shift in the way services are discovered and interacted with?
We will explore practical examples, illuminate best practices, and unravel the strategies for seamlessly integrating Hypermedia into your ASP.NET 8 Web API. By the journey’s end, you will be equipped with the knowledge and tools to elevate your API, making it a beacon of discoverability in the digital labyrinth and ensuring that the glory of Hypermedia is no longer confined to the annals of theory but is vibrantly alive in practice. Join us as we traverse the path less traveled and bring the brilliance of Hypermedia to the forefront of ASP.NET 8 Web API development.
Caching in ASP.NET 8 Web API
Caching stores frequently used data or information in local memory for a specific period. When a client requests the same information, instead of retrieving the information from its permanent data store, it will give the information from the local memory. The main advantage of caching is that it improves performance by reducing the processing burden.
In this talk, we will discuss and learn how to use caching in ASP.NET 8 Web API on both the server and client sides to improve its performance by decreasing the response time to the user. The talk's result will include local and distributed cloud solutions for caching and guidance on when and how to use the technique.
Embracing Sustainability: Developing Green Software Architectures with .NET 8
In today's environmentally-conscious world, it is more important than ever to create software that performs efficiently and minimizes its impact on the environment. This talk will explore how to develop sustainable, green software architectures using .NET 8, the latest version of the popular development platform.
We will begin by discussing the concept of green software and its fundamental principles, including energy efficiency, resource conservation, and electronic waste reduction. We will then dive into the features and enhancements introduced in .NET 8 that can aid in creating eco-friendly software solutions.
By the end of this talk, attendees will understand the role that .NET 8 can play in creating sustainable software architectures. They will also be equipped with practical tips and strategies to implement green software principles in their own .NET projects, contributing to a cleaner, greener future for us all.
Electron: Bridging the Gap Between Web & Desktop Development
Picture this: tasked with developing a new desktop application, you, a seasoned web developer, are met with the challenge of navigating unfamiliar terrain. Do you revisit outdated VB 6 manuals or immerse yourself in an entirely new technology? The answer: neither. Harness the power of your existing web development skills with Electron!
Electron, a cross-platform application shell initially developed by GitHub for the Atom editor, serves as a bridge connecting the realms of web and desktop development. This talk, led by experienced developer Chris Woodruff, is designed to equip you with foundational knowledge and practical skills to transform your web development expertise into creating robust desktop applications.
We will embark on a journey through setting up your development environment, generating a starter project, and implementing business logic, ensuring you leave with a comprehensive understanding of Electron’s capabilities and potential. Whether you are crafting applications with sophisticated features or seeking to expand your developmental horizon, this session is your gateway to leveraging the versatility of Electron, making desktop application development an accessible and enriching experience.
Join us and discover how Electron unlocks a world where your valuable web development skills are not just relevant but essential for creating dynamic and impactful desktop applications.
Globalizing Your Digital Presence: Building ASP.NET 8 Apps for an International Audience
In an increasingly interconnected world, creating applications with global appeal necessitates a deep understanding and implementation of internationalization. This talk delves into leveraging ASP.NET 8’s advanced services and middleware to localize applications across diverse languages and cultures, thereby widening your app’s reach beyond English-speaking users.
Participants will gain insights into crafting universally accessible websites with a special emphasis on ASP.NET 8 Internationalization. The session will demystify techniques for dynamically altering currency and date formats in alignment with user location, enhancing user experiences across geographical boundaries.
Attendees will explore:
- The foundational principles and best practices of internationalization within ASP.NET 8.
- Practical strategies for integrating localization middleware to cater to a multilingual and multicultural user base.
- Dynamic adaptation of currency and date formats, underpinned by real-time detection of user location, fostering seamless user interaction.
- Real-world examples and case studies demonstrating the impactful application of ASP.NET 8 internationalization features.
- Potential challenges and solutions in developing globally competent applications, with a focus on scalability and performance.
This session is designed for developers and tech enthusiasts seeking to elevate their skills in developing inclusive ASP.NET 8 applications, ultimately broadening the scope and impact of their digital offerings. Whether you are a seasoned developer or new to ASP.NET, join us to unlock the potential of your applications in the international arena!
Entity Framework debugging using SQL Server: A Detective Story
What happens when the code for your Entity Framework LINQ queries looks good, but your app is very slow? Are you looking for the right place? Don't be afraid to start looking at your database. Knowing how to investigate and debug what your LINQ queries are doing in SQL Server is as important as the actual LINQ query in your .NET solutions. We will look at database server configurations, using MSSQL database profiling tools and understanding Query Execution Plans to get the most out of Entity Framework. In the end, learning to be an Entity Framework detective will make your project sound and snappy.
Removing the SELECT * - Helping your App Developers and Yourself
Are you finding slow queries against your database? Want to make the application developers better with their operations on the database? Do you want to make yourself more valuable by understanding how applications impact the databases you support? All this and more will be discussed during the talk. Get to know ORM frameworks like Entity Framework and C# LINQ statements and how they perform operations to get, create and update data. The knowledge taken away from this talk will help you become a better Data Developer!
Developing Great Web APIs Architectures with ASP.NET 8
You know you must have a great experience when you develop your apps. The most significant experience for your users centers around their data. That's why creating a great set of APIs is so important. Using ASP.NET 8 Web API is a modern cross-platform framework for the Web. ASP.NET 8 Web API can be run on Windows and Linux using all modern web servers. The secret is knowing how to architect your Web APIs for the best experience.
Using the architecture in this talk allows your APIs specifically to work better due to the following:
• Designing the API for communications with the consumer of the API
• Allowing an apparent decoupling of the API endpoints, Data Access (Synthetic or Production), and, finally, the Data Domain classes.
• The API Endpoints (Controllers) have no knowledge or responsibility of the Data Domain, and behind it, Data Access
• Because of the decoupling and separation of responsibilities, testing can be done quickly and without issues.
• Data Access segments of the architecture can easily be switched out without impacting the Domain or API Endpoints.
The development story becomes more comfortable using the architecture, and your end users get a much more stable API set to consume. The talk will explain and get you started using these concepts with your ASP.NET 8 Web API solutions.
Building Web APIs with ASP.NET 8 (Workshop)
Web APIs drive the most popular and powerful Web and mobile apps—making the developer who can build a robust web API a developer that's in demand. Get started creating your own with ASP.NET 8, the open-source framework for Windows, macOS, and Linux.
First, learn about attribute routing, the preferred method of handling HTTP requests in ASP.NET 8. Then learn how to set up controllers, connect them to the data model, set up validation for incoming requests, and configure HTTP responses. Chris Woodruff also shows how to implement CRUD operations on the SQL database server where the data is stored. An advanced development section provides insights on using a repository layer and dependency injection to make your API more abstract and testing projects with tools such as MSTest and xUnit. Demonstrations on optimization and caching show how to improve the performance of your APIs.
Follow along with Chris to learn all these concepts and more, and complete the web API shown in the course: an eCommerce engine for creating and viewing customer orders and assigning orders to sales reps.
Prerequisites
It is strongly recommended that you have some knowledge of the following:
• C# and .NET 8
• LINQ
• Entity Framework Core
• Microsoft SQL Server
• ASP.NET MVC
You will need the following software installed on your machine.
• Your favorite .NET IDE
• .NET 8 SDK
• Microsoft SQL Server or Windows Azure or AWS account for MSSQL
• An HTTP debugging tool like Fiddler or Postman
• Git
Takeaways
• Learn about ASP.NET 8, where it came from and how to start using it for web and API development
• Learn how to use ASP.NET 8 Web API's built-in dependency injection for more robust and easier-to-maintain projects.
• Learn how to create routes for your API calls with the MVC pattern.
• Learn how to work with domain models and data in your API, along with caching.
• Learn how to test and debug your ASP.NET 8 Web API solution.
• Learn advanced architecture techniques in ASP.NET 8 Web API
The 10 Things Every Developer Doesn’t know about Entity Framework Core
Entity Framework (EF) Core is the lightweight, extensible, and cross-platform version of Entity Framework, the popular Object/Relational Mapping (O/RM) framework for .NET. This talk will give an in-depth look at the features most developers don't know about to improve their apps and APIs. There will be an explanation of each feature, code examples, and a GitHub repository with a .NET solution that includes a C# project for each example.
You are Not Using Entity Framework Core Migrations Right
Would you want your DBA to build your app just from the designed database without you being involved? Then why do you keep thinking that using Entity Framework Core Migrations is good? If you are going to use EF Core Migrations, then at least do it right and have it create a robust, optimized database! This talk will get you started understanding the power of Migrations beyond the simple demos you have seen. There will be code examples and a GitHub repository with a .NET/C# solution and projects that will accompany the talk.
Turbo Charging Entity Framework Core 8: Performance
Software performance engineering (SPE) aims to build predictable performance into systems by specifying and analyzing quantitative behavior from the beginning of a system to its deployment and evolution. We should also apply this thinking to the data portions of our applications and systems. Performing data operations with Entity Framework Core 8 can seem simple, but there is a hidden part of this framework that can allow developers to unlock the performance users expect. We will lean into this, explore those EF Core features, and leave the talk as better developers.
Enhancing ASP.NET Core Razor Pages with HTMX: A Simplicity-First Approach
Dive into the dynamic world of web development in this engaging talk, where we explore the innovative blend of HTMX with ASP.NET Core Razor Pages. Discover how to bring simplicity back to your web applications without sacrificing power or scalability. We'll navigate through practical examples demonstrating how HTMX can make your Razor Pages more interactive with minimal JavaScript. Learn to enhance user experiences with easy-to-implement features like long polling, modals, and server-side validation that feel like the client side without a full page refresh. Whether you're a seasoned developer or new to the ASP.NET ecosystem, this talk will equip you with the knowledge to create more responsive and efficient web applications. Get ready to transform your approach to web development by leveraging the best of both worlds: the robustness of ASP.NET Core and the simplicity of HTMX.
Dynamic Duo: Unleashing the Power of HTMX & ASP.NET Core 8 (Workshop)
Welcome to an electrifying 8-hour adventure with HTMX (https://htmx.org) and ASP.NET Core 8, where you'll transform from a web development apprentice to a wizard! Dive into the world of seamless web interactions and say goodbye to the clunky page reloads of yesteryears. This workshop is your golden ticket to mastering the art of adding dynamic content to your ASP.NET Core applications without breaking a sweat. Imagine crafting real-time, user-friendly experiences with the elegance of a magician's wand - that's what we're offering!
Gear up for an action-packed day filled with real-world examples, hands-on activities, and a touch of humor to keep things light. You'll not only uncover the mysteries of HTMX but also learn how to harmoniously marry it with ASP.NET Core 8, creating applications that dance to the tune of efficiency and user satisfaction. By the end of this workshop, you'll walk away with the confidence to implement what you've learned into your projects, making web development feel like a walk in the tech park.
Workshop Objectives:
1. Master HTMX and ASP.NET Core 8 Integration
2. Enhance Interactive Web Development Skills
3. Apply Practical Solutions to Real-World Scenarios
Technical Requirements:
- Laptop with a stable version of Visual Studio 2019 or later installed.
- .NET Core 8 SDK and runtime installed.
- A modern web browser (Chrome, Firefox, Edge, or Safari).
- Basic understanding of HTML, CSS, and JavaScript.
- Familiarity with ASP.NET Core is beneficial but not mandatory.
Target Audience:
- Web developers and designers looking to enhance their skill set in modern web technologies.
- Backend developers familiar with ASP.NET Core who wish to create more interactive and user-friendly web applications.
- Frontend developers interested in learning how to integrate HTMX with server-side frameworks.
- Technical leads and project managers overseeing web development projects who want to understand the benefits and application of integrating HTMX with ASP.NET Core.
Preferred Session Duration:
- Full Day Workshop: 8 hours (including breaks).
- Short Session Format: 2-hour introductory session available upon request for conferences with tighter schedules.
Another AI Path: Building Genetic Algorithms in C# and .NET
Genetic Algorithms are based on the ideas of natural selection and genetics. This branch of Artificial Intelligence provides a search with historical data to direct the search into the region of better performance in solution space. They are commonly used to generate high-quality solutions for optimization problems and search problems. Learn how to develop and use this type of AI for real-world problems and solutions using C# and .NET on your favorite cloud platform.
Michigan Technology Conference 2024 Sessionize Event
Live! 360 Orlando 2023 Sessionize Event
Beer City Code 2023 Sessionize Event
KCDC 2023 Sessionize Event
DevSum 2023 Sessionize Event
Rome .NET Conference 2023 Sessionize Event
CodeMash 2023 Sessionize Event
Update Conference Prague 2022 Sessionize Event
KCDC 2022 Sessionize Event
DevSum 2022 Sessionize Event
Update Conference Prague 2021 Sessionize Event
Atlanta Code Camp 2021 Sessionize Event
KCDC 2021 Sessionize Event
Code PaLOUsa 2021 Sessionize Event
Code PaLOUsa 2020 Sessionize Event
CodeMash 2020 Sessionize Event
dev up Conference 2019 Sessionize Event
Code PaLOUsa 2019 Sessionize Event
NDC Oslo 2019 Sessionize Event
CodeStock 2019 Sessionize Event
CodeMash 2019 Sessionize Event
dev up Conference 2018 Sessionize Event
Vermont Code Camp 2018 Sessionize Event
Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.
Jump to top