We will have no meeting in December. Have a happy holiday season and stay tuned for information on our January 23, 2019 meeting.
ASP.NET has changed in revolutionary ways. In this session I show you what you need to know to move to ASP.NET Core for Web applications and RESTful services.
- New ASP.NET Core features such as tag helpers and view components
- Using DI with MVC
- Creating RESTful services with ASP.NET Core
Bio: An international speaker, Microsoft MVP, ASPInsider, MCSD, PSM II, PSD, and CSM, and a passionate member of the developer community, Phil Japikse has been working with .NET since the first betas, developing software for over 35 years, and heavily involved in the agile community since 2005. Phil is co-author of best selling “C# and the .NET 4.6 Framework” (http://bit.ly/pro_csharp) and “Pro C# 7” (http://bit.ly/pro_csharp7), the Lead Director for the Cincinnati .NET User’s Group (http://www.cinnug.org) and the Cincinnati Software Architect Group, co-hosts the Hallway Conversations podcast (http://www.hallwayconversations.com), founded the Cincinnati Day of Agile (http://www.dayofagile.org), and volunteers for the National Ski Patrol. Phil is also a published author with LinkedIn Learning (https://www.lynda.com/Phil-Japikse/7908546-1.html). During the day, Phil works as an Enterprise Consultant and Agile Coach for large to medium firms throughout the US. Phil enjoys to learn new tech and is always striving to improve his craft. You can follow Phil on twitter via http://www.twitter.com/skimedic and read his blog at http://www.skimedic.com/blog.
Instead of one presentation, this meeting will have several lightning talks. A lightning talk is a brief presentation on a specific topic, generally lasting ten to fifteen minutes. These are the scheduled topics and speakers:
Rider is a new cross-platform .NET IDE from JetBrains. In this talk we’re going to spend 50 minutes seeing how you can be productive and work efficiently using the keyboard, focusing on the task at hand and not being distracted by the environment. We’ll learn how to maximize the tool for your .NET and web development needs, as well as learn some hidden tips and tricks.
Bio: Chris Woodruff (or Woody as he is commonly known as) has a degree in Computer Science from Michigan State University’s College of Engineering. Woody has been developing and architecting software solutions for over 20 years and has worked in many different platforms and tools. He is a community leader, helping such events as GRDevNight, GRDevDay, West Michigan Day of .NET and CodeMash. He was also instrumental in bringing the popular Give Camp event to Western Michigan where technology professionals lend their time and development expertise to assist local non-profits. As a speaker and podcaster, Woody has spoken and discussed a variety of topics, including database design and open source. He has been a Microsoft MVP in Visual C#, Data Platform and SQL and was recognized in 2010 as one of the top 20 MVPs world-wide. Woody is a Developer Advocate for JetBrains and evangelizes .NET, .NET Core and JetBrains’ products in North America.
REACTIVE is all the rage today with REACTIVE PROGRAMMING getting most of the attention. However, there is another “reactive”, introduced with the Reactive Manifesto, called REACTIVE SYSTEMS. In this presentation, Mike will introduce us to REACTIVE SYSTEMS and discuss why an Event-Driven Architecture has a place in today’s solutions.
Bio: Michael Levy is a Principal Software Engineer and team lead at 84.51, a subsidiary of Kroger. Mike has been delivering software solutions to clients, in a variety of industries, for over 25 years. He is an active participate in the software community and, through the years, has spoken on a variety of topics at multiple conferences and user groups. As you read this, Mike is probably in front of a computer practicing the ancient art of Sleeping with Your Eyes Open when he should be working on the presentation.
Server less architecture is a current buzz word and there are various offerings to choose from different cloud vendors. The talk will be focused on Azure Functions and the various integration options available as part of Azure Functions. A walk through of Functions will be conducted where participants can get overview to create their azure functions and understand the various integration options and diagnostic mechanism available to monitor the functions. Developers can choose their language of choice to create their own functions and take advantage of the features available from the platform.
Having a computer during the talk is optional. Presentation along with Github samples will be shared as part of the talk.
Bio: Baskar Rao Dandlamudi is a Senior .Net Consultant with over 10 plus years of work experience in enterprise software solutions design, development, implementation support and performance monitoring using Microsoft stack of technologies. His passion is to explore Cloud technologies and learn new improvements and share the same with community. Areas of interest include Azure, Kubernetes and NativeScript.
There is a lot of good security advice in the world, but checklists like the OWASP Top 10 do not tell you how to design security into your application. Where should a developer even begin? You’ll leave this session with a process for building security in depth into your application architecture, using a human-centered user experience design, threat modeling, partitioning, defense in depth, and static analysis in continuous integration. Not yet another checklist, you’ll learn how to make security the foundation on which the rest of your application is built.
Bio: Craig Stuntz is a software engineer and a lifelong student of computer science, with specific interests in programming languages, type theory, compilers, and math. He is the Technical Director for Improving in Columbus, Ohio, and cofounded the Columbus branch of Papers We Love, a reading group for people interested in academic computer science research. In the past year he has presented talks at CodeMash, Dog Food Conference, Stir Trek, and many user groups. When not at work or playing with his kids, he is usually studying math or playing Irish traditional music on the tin whistle and wooden flute.
Functional programming languages often claim to be quicker for development, less error prone, and more easily maintained, so why don’t we all use them? The biggest reason is probably unfamiliarity, so this talk will use a popular functional programming language, F#, to illustrate the benefits of functional programming by comparing to a widely used OO/procedural language, C# (which is slowly itself absorbing functional pieces and concepts). At the end of the talk, you should be curious enough and have enough of the initial mental hurdles overcome that you can start playing with F#, possibly even replacing some of your current toolkit with it.
Presentation slides can be found here.
Bio: Dr. Chris Lomont (PhD math, triple BS in math, physics, computer science) has been writing software since 4th grade, doing it professionally for over 25 years. He has worked on a large range of projects, including video games for SEGA, quantum computing for AFRL, hardware and software security for clients including DHS, DoD, and Secret Service, image compression for NASA, CAD software, financial software, explosives modeling for DoD, reverse engineering for many clients, and much more. His off-work time is spent tinkering in his workshop making all sorts of items, ranging from chemical to electrical to software to experimental to artistic.
Currently he is interested in machine learning, scientific visualization, software and hardware security, financial and economic modeling, and software development practices. He is comfortable in many technologies, but prefers C#/F#/WPF/.NET for quick development, C/C++ and assembly for high performance, Mathematica for math/science/exploration, and Python for machine learning. He is comfortable in a range of hardware environments, including embedded work, desktop PC development, and high-performance computing.
Dr. Lomont is a Senior Principal Engineer at Logikos, Fort Wayne, using many of these skillsets to drive next generation software projects, from machine learning for IoT and cloud based analytics, to secure computing product needs, to advanced visualization, applying best-of-breed development practices to make software development more predictable, reliable, and cost-effective.
Automated browser tests can be a nightmare to write and maintain. Unlike unit tests they’re tough to set up, slow to run, make permanent changes to data, and they’re incredibly brittle. Even a tiny CSS change can result in cascading failures!
You can’t ignore these issues, but you CAN design around them by adopting a few key patterns and techniques. Data creation helpers let you construct intricate data graphs in one line of code. Page Objects abstract away tedious browser automation code and make tests resilient to changes in HTML structure. Applied correctly, these patterns (and others) take away the pain and make UI tests a joy to create!
Pointy-haired boss by day, coder by night
Seth spent 21 years as a professional developer/architect before finally turning in his daily commit rights for a Microsoft Project product key. He now spends his days as a pointy-haired boss leading a small product development team in the search for simple solutions to complex problems. He is passionate about clean architecture, testable systems, and bringing order to chaos. Seth lives in Columbus, OH and is an active participant in the Midwest developer community. He’ll write TPS reports when he has to, but still enjoys writing, reviewing, and talking about code.
Building concurrent systems is challenging. Code that is innocuous when run on a single thread can require a tangle of locking when running on multiple threads. One way to address this problem is leveraging the actor model. Akka.NET implements the actor model and is ideal for developing concurrent, scalable, and fault tolerant applications in .NET. In this session, you will see code to create actors, send messages to actors, and handle messages within actors. You will also learn about advanced capabilities of Akka.NET including routing, location transparency, persistence, and clustering. You will leave with ideas of how you might use Akka.NET in your own projects and resources to continue your exploration.
Bio: Joe Wirtley is an independent consultant with over thirty years of professional software development experience. He works with .NET development teams helping them create clean, well-designed code, which in turn produces higher quality web and desktop applications. He is an active member of the developer community in southwest Ohio and helps lead the Dayton .NET Developer Group. He has presented at many user groups and conferences including CodeMash, Code PaLOUsa, CodeStock, and Stir Trek. He is the author of the Generics in .NET screencast for O’Reilly. You can check out his site at http://WirtleyConsulting.com or follow him on Twitter: @JoeWirtley.