#85 Mark Seemann, Dependency Rejection, Part 2

Summary
Part two of a two part recording with Mark Seemann on dependency rejection.

Details
No mocking needed for unit testing, command query separation. Do you still use some DI in impure functions; partial applications, Mark is not a fan of DI containers and doesn't know of any for F#. Are partial functions functional, Haskell keeps its impure functions at the edge, "impure-pure-impure sandwich" sandwich - the origin of the word "sandwich", an example of a translator application, don't lose sight of the other tenets of programming, upcoming conferences.

Links
Mark's homepage

Monoids, semigroups, and friends blog posts.

Mark's upcoming conferences.

Download mp3 of podcast

#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