#84 Mark Seemann, Dependency Rejection, Part 1

Summary
Part one of a two part recording with Mark Seemann on dependency injection and rejection in F#.

Details
Who he is, what he does. The new video site. Used to earn from C#, now earns from F# but would like to earn from Haskell; how much dev is going on in F#. Dependency rejection; side effects, purity and determinism. Impure functions. Pure and impure calling each other. Dijkstra, abstractions and monoids.

Links
Mark's homepage

Download mp3 of podcast

#83 Steve Elliot, When to Rearchitect

Summary
Steve Elliot, CEO of Agile Craft talks to me about re-architecting software, why it should be done, when to do it, and how to do it well.

Details
Who he is, what he does. When to re-architect, monitor usage patterns, out of date ui, spaghetti code, ratio of bug fixes to new code, not mobile enabled, difficulty recruiting, market opportunity. Making a decision, who gets a say. How to measure success on a long-term project. Practical steps for moving to new architecture. What to start with, easy or hard pieces; what to do next; how to keep the old system going. What about people who don't want to learn new things. Dealing with remote offices. How to keep the project on track and the momentum going.

Links
Agile Craft

Download mp3 of podcast

#82 Jay Gambetta, IBM Quantum Experience

Summary
Jay Gambetta manager for quantum theory and computing at IBM talks to me about the IBM Quantum Experience.

Details
Who he is, what he does. Why is quantum computing different, entanglement and interference. How do quantum computers look, cryogenic refrigerators, close to absolute zero. IBM's history in quantum computing. What is the quantum experience, how a program goes from the cloud app to the supercooled quantum computer; free and open access to 5 and 16 qbit computers; how to write a program (called a circuit); examples of circuits; is 16 qbits enough for real problems. When can we break encryption with quantum computing, why error correction is so important. Popularity of quantum experience, how soon will a submitted circuit run; using python to submit circuits; what is the "Hello World" of quantum computing; how to write a python program for the quantum experience. Community involvement. Future of quantum, becoming a technology, what about the temperature requirements. Chaotic and exciting times coming.

Download mp3 of podcast 

Links
IBM Quantum Experience

#81 Doc Norton, Better Agile Metrics

Summary
Doc Norton tells me why measuring agile velocity is a bad idea and what to do instead.

Details
Who he is, what he does. "Escape Velocity", why he wrote a book on agile metrics. What velocity is, rate of delivering value to customer, "it is useless", estimates are "bunk". "The business" pushes velocity based estimates. Lack of trust throughout organization. Can we really reduce a complex problem down to a simple number. Anti patterns: more velocity, cross team velocity comparisons, estimating with time, measuring individual velocity. Side effects of metrics. Variable velocity. What should we measure, cycle time and lead time, fixing bottle necks, code quality, team joy. Where does dev ops come in. How to find Doc's book. Upcoming conferences.

Download mp3 of podcast 

Conferences
DSM Agile - St. Louis
dev up - Des Moines
Yow - Australia

#80 Angela Dugan, Impostor Syndrome

Summary
Angela Dugan tells me about impostor syndrome, why it matters and what you can do about it.

Details
Who she is, what she does. What impostor syndrome is, Hanselman's post. Who is affected by it. The more you know, the more you realize you don't know; being an "expert"; why is "I don't know" not acceptable, do agile sprints and commitments force unreasonable expectations. Angela's impostor syndrome survey. The opposite of impostor syndrome - Dunning–Kruger. Should one do anything about it; teaching what you learn. Angela might retake the test. Angela suggests helping others with impostor syndrome.

Download mp3 of podcast 

Links
Angela's Twitter

TFS Whisperer

#79 Josh Doody, Salary Negotiation

Summary
Josh Doody talks about salaries, how they are set and how to negotiate a higher one.

Details
Who he is and what he does. What is a salary negotiation coach, negotiation by proxy. Who can benefit from Josh's help, how to get his book. Salary structures, what they are and how they work. Estimating your market value; judging your value compared to others, Bryan disagrees with Josh, John Sonmez says "ask for the moon". The interview, preparation, never share your current salary or desired salary. How to negotiate the salary; how to counter offer; the final discussion; "there is nothing fair about salary". How to leave a job. How to ask for more money in a job. Wrap up.

Download mp3 of podcast 

Links
Fearless Salary Negotiation

Josh's homepage

Twitter

#78 Dustin Campbell, C# 7.1 and Beyond

Summary
Dustin Campbell talks about the future of C# 7.1, 7.2 and beyond.

Details
Who he is and what he does, Mads and the other guy, cross platform experience, playing guitar. Why move to incremental C# releases, bug fixes, move language forward more quickly, csharplang on GitHub, changes needed to compiler, C# releases are tied to Visual Studio releases. Could C# become a NuGet package. Preventing accidental use of 7.1. Possible dates. Release cadence, halting problem. Speed of change of C# vs ASP.Net, slow evolution is the plan. Balancing features and performance against ease of use. More pattern types coming. Shapes and extensions, extension everything - properties, constructors. Optional interfaces. The future of c#. A question from Jon Skeet for Dustin.

Download mp3 of podcast 

Links
Dustin's videos on Channel 9.

C# lang on GitHub.

#77 Laurent Bossavit, Software Myths

Summary
Laurent Bossavit talks about the myths like the 10x developer that have grown in the software industry.

Details
Who he is, what he does. His book - "The Leprechauns of Software Engineering", why he wrote it. The 10x developer, literary archeology. The telephone game, examples in the software world, cost of when defects are discovered. Industry does not have interest exposing faults, why is the word "belief" used in software, is software an engineering discipline, opinions over measurements, how did we end up with manifestos. What should we measure when judging software quality, why measuring bugs are like eating from the garbage can. How to make things better. How to get Laurent's book. Laurent's book recommendations.

Download mp3 of podcast 

Book recommendations
Experimental and Quasi-Experimental Designs for Research

Seeing like a State: How Certain Schemes to Improve the Human Condition Have Failed

The Life-Changing Magic of Tidying Up: The Japanese Art of Decluttering and Organizing

Links
The Leprechauns of Software Engineering

Laurent's GitHub

#76 Eyewire, Amy Sterling & Chris Jordan

Summary
Amy Sterling and Chris Jordan of EyeWire talk about mapping the neurons and synapses of the brain.

Details
Who they are, what is EyeWire, how it started. About the brain, 80 billion neurons in a human brain, 100 trillion synapses. It used to take 1000 hours to map a neuron now it takes 80 hours. 250,000 users from around the world. Combined effort of players and AI. EyeWire is focusing on 1 cubic mm of a brain which has a 100,000 neurons and billion synapses. Where EyeWire's data goes after mapping. Why are they building EyeWire, to learn why we are the way we are, we don't know how many types of cell are in the brain. The EyeWire tech stack. Building a community, media engagement, internships, competitions. Moving towards open source for parts of EyeWire. How they make money, or not! Future work, IARPA. Joining EyeWire or other citizen science projects, World VR forum, Games for Change.

Download mp3 of podcast 

Links
EyeWire.org

#75 David Mead, Start With Why & Better Communication

Summary
David Mead of Start With Why talks about improving communication skills, leadership and handling conflict.

Details
David's role in Start With Why, Simon Sinek, David's own background. Starting with why, golden circle. What we do, how we do it, why we do it; without why it is much harder to differentiate ourselves. Most companies start with what, examples of companies that start with why. People like to be around people like them and believe what they believe. Imperfect companies can have a noble higher goal.
How can engineers improve their communication; it's a skill that can be learned; give people tasks and roles that inspire. Better communication across the whole organization, sharing the big picture. Simple tips to improve communication skills, set goals that are attainable with low risk. How to handle conflict, don't take a position against something, stand for something. Conflict as a useful tool to resolve issues. What to do if conflict has become the norm, get back to the why; what to do when "why" is not enough, "we can't fix people, we can provide the environment where they can be inspired to change themselves". Don't promote because of skill; when leading a team you are  responsible for the team not the job, "management is about getting stuff done, leadership is about people". Always keep an eye on the bigger picture.

Download mp3 of podcast

Links
startwithwhy.com