#133 Brandon Minnick, Async Await – Common Mistakes, Part 1

Summary
Brandon Minnick of Microsoft talks about common mistakes when using async/await and offers solutions.

Details
Who he is, what he does. What asynchronous programming is, calling code that will return an answer in the future; multithreading. How to make a synchronous method asynchronous, freeing the calling thread; what the compiler does with async code - awaits, switch statements, move next and try catch. Calling async from sync, don't use .Result() it's a blocking call, .Result() throws an aggregate exception; use .GetAwaiter().GetResult().

Links
Brandon's Twitter

Brandon's talk on async/await at NDC Oslo

Download mp3 of podcast

#132 Lars Klint, Cloud First

Lars Klint

Summary
Lars Klint talks about the cloud first approach to software development.

Details
Who he is, what he does, why he is in Australia. What the cloud is, and how to get into it. IaaS, PaaS, SaaS. What “cloud first” means; data sovereignty; cloud only. Serverless, “Serverless is PaaS on steroids”, cold starts in serverless, hot-tiers. All companies can use the cloud. Criteria for building in the cloud on the premises, Amazon Snowmobile, Microsoft coastal datacenters. Picking a cloud provider. Is multicloud worth doing. Getting started with the cloud, moving an application to the cloud. How to find Lars, upcoming conferences.

Links
Lars' Twitter

Download mp3 of podcast

#131 Dylan Beattie, Esoteric Languages, Rockstar and Programming for Fun

Summary
Dylan Beattie talks about his love of programming, esoteric languages and his language, Rockstar.

Details
Who he is, what he does. Dylan and Bryan had Amstrad computers. Programming as art, programming for the sake of programming, Conway's game of life, demo scene, squeezing more out of the hardware. Squeezing more out of software; code golf; obfuscating code. Quines-programs that print themselves, quine relays, record is 128 languages. Esoteric languages, a story about Alfred Hitchcock, Turing completeness, examples of esoteric languages. The origins of Rockstar; an example of FizzBuzz in Rockstar, making real music. Dylan’s hectic conference schedule.

Links
Dylan's Twitter
Rockstar

Download mp3 of podcast

#130 Isaac Levin, Application Insights

Summary
Isaac Levin of Microsoft talks about Application Insights, how to use it and what you can learn from the data.

Details
Who he is, what what does. What Application Insights is, where it can be used, can be used with any language. Isaac's favorite feature. How to use it. Who uses it. Mobile and IoT use cases. Most common uses, web, desktop, etc. Relationship to diagnostic source. Getting data out, common use cases; snapshots for point in time debugging. Querying data data in near real time, charts and visualizations. Alternatives to App Insights. Future of App Insights and telemetry in general; time travel debugging. How to get in touch and tell Isaac how you are using it.

Links
Isaac's Homepage
Isaac's Twitter

Download mp3 of podcast

#129 Laurie Barth, Speaking at Conferences

Summary
Laurie Barth tells me why why she loves speaking at conferences and gives some advice on how you can become a speaker too.

Details
Who she is, what she does. Why she likes speaking at conferences, how she got started. Going from knowing about something to talking about. Telling a story. What makes a good talk, practice, engage with the audience. How to apply to a conference; the abstract. How to get started, small or large. Advice to new speakers. Tips for the day of the talk, Bryan has some tips too. Tips for existing speakers.

Links
Laurie's Homepage
Laurie's Twitter

Download mp3 of podcast

#128 Patrick Smacchia, NDepend in 2019

Summary
Patrick Smacchia of NDepend comes back on the podcast to talk about updates to the tool in the past two years.

Details
Who he is, what he does. A little bit of background on NDepend. Azure devops; NDepend in CICD, coming soon to Linux containers. Visual Studio extension, challenges in writing extensions in VS 2019, extension placement; no VS Code extension. How coming changes in .NET and Visual Studio will impact NDepend. Short and medium future for NDepend.

Links
Patrick's LinkedIn

Download mp3 of podcast

#127 Michal Klos, Using Snowflake To Grow Food

Summary
Michal Klos of Indigo explains how they use Snowflake to help grow food, improve agriculture and the protect environment.

Details
Who he is, what he does. Decommoditizing agriculture. What Snowflake is, it's in all the clouds. Difference between a data warehouse and a database; could Snowflake be used instead of a database. Michal’s first experience with Snowflake a few years ago; how he uses it now; where the data Indigo uses comes from. Copying the data to traditional dbs. Querying Snowflake. Example of how Indigo uses data from prototype to production. How big do you need to be to use Snowflake. How to get started; put an API in front of the warehouse. Tech stack at Indigo. They are hiring.

Links
Michal's LinkedIn

Download mp3 of podcast

#126 Elissa Shevinsky, Faster Than Light Static Code Analysis

Summary
Elissa Shevinsky, author and founder of Faster Than Light, talks about static code analysis and why you should be doing it.

Details
Who she is, what she does. A little about Faster Than Light. What static analysis is; why it is important, availability by language. How to get started. Making it part of CI/CD. Uploading code to Faster Than Light, why their tool is faster then doing the analysis yourself, running locally (not yet). What common problems are found and what can be done about them. The future of the company; how to get in touch.

Links
Elissa's Twitter

Elissa's book - Lean Out: The Struggle for Gender Equality in Tech and Start-Up Culture

Download mp3 of podcast

#125 Angela Dugan, How to Build a Great Team

Summary
Angela Dugan talks about teams, what they are, how they go wrong and how to build a great one.

Details
Who she is, what she does. What a team is; should we all be full-stack developers. Types of team member, introverts and extroverts. Difference between leader and manager. Career path for developers who don't want to manage. Finding the strengths of a team member and a team. People are the biggest and hardest part of building software. How to build a strong team - try to find balance of skills, keep the team the same unless a change is needed, empower the team to make decision. Can the structure of agile interfere with team. One team member can run a team. Book recommendations from Angela. Where you can see Angela giving a talk.

Links
Angela's Twitter
Drive by Daniel Pink
The Culture Code by Daniel Coyle
Dare to Lead by Brené Brown

Out From the Cube podcast

Download mp3 of podcast

#124 Mads Torgersen, C# 8

Summary
Mads Torgersen talks about the upcoming release of C#, what's new, what's different, what else is coming in the future. He also answers questions from Twitter.

Details
Who he is, what he does. What new in C# 8; robustness, pits of success; nullable reference types. No breaking changes. Use of language features, IntelliCode. The legacy of String, unicode and UTF8, array, immutability and invariants. Async streams, what it is and history. Bryan's blog on steaming, why async is important, especially if you have a limited number of threads available. Improved patterns matching, recursive patterns. C# 8 relies on a .NET Core Runtime feature. C# 8 and Visual Studio schedules are independent; upcoming schedules for .NET Core and .NET 5. Questions from Twitter - records and roles, expression tree updates, compiler flags, AOT, tiered compilation, type providers, async/await inside LINQ expressions, discriminated unions, Typescript style inline union. Relationship between C# design team and the compiler team. Mads encourages us all to use the previews of C# 8 and let him know if you find a problem.

Links
Mads' twitter
What's new in C# 8
C# repo on GitHub

Download mp3 of podcast