May 23, 2018, 6PM: Introduction to Functional Programming with F# – Chris Lomont
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.
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.
June 27, 2018, 6PM: Secure Applications, by Design – Craig Stuntz
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.