#138 Jeff Haynie, The State of Engineering Performance Management

Summary
Jeff Haynie of Pinpoint talks about their survey and report on how engineering teams measure their performance.

Details
Who he is, what he does, a little about Appcelerator Titanium. What is Pinpoint, finding out what is going in engineering. Report on state of engineering performance management, companies surveyed, metrics used. Software is a new profession, much will change in the medium term. Metrics used by companies who did measure; why cost wasn't a metric; is there a "best" metric. How Pinpoint measures their own performance. How is the data gathered. Black boxes in the company and getting visibility into teams, how does agile fit in. How the rest of the business views engineering; CTO/CIO are more most negative about engineering. Challenges teams face; no metrics no problems. Future work. Finding the report.

Links
Jeff's Twitter

Report by Pinpoint

Download mp3 of podcast

#123 Dane Hillard, Good Software Practices

Summary
Dane Hillard, software engineer and author, discusses what he considers to be some of the important principles of software development.

Details
Who he is, what he does. A little about his book. Separation of concerns, what it means, how to do it; good naming; method length. Abstraction and encapsulation, what it is, good examples and bad examples. Good programming in industry. Improving performance, profiling, when to optimize; trusting the performance of third party packages. Testing code, unit vs integration testing, mocking; performance and load testing, Locust. Security, when to add it in, feature switches.

Links
Dane's twitter
Dane's homepage

Download mp3 of podcast

#95 Ben Watson, High Performance .NET

Summary
Ben Watson, software engineer at Microsoft working on Bing and author of Writing High Performance .NET Code talks to me about his book and how to improve your code.

Details
Who he is, what he does, working on Bing lead to the book, Bing is probably the biggest C# app in the world. Why worry about performance, pay for play, serverless; sometimes more machines are the best solution. Where to start with the CLR, the garbage collector, JIT, be careful of enum flags. More on GC, using generations to improve efficiency, aim for very short lived or very long-lived memory, memory efficiency is as important as CPU efficiency. What about the network, async await all the way down, Ben likes TPL, "immutability is key". LINQ hides allocations, closures delegates. Be careful with Func and Actions, delegates cause allocations. Spans. Concurrent collections. Just in Time, small methods compile faster, Bing loads thousands of dlls. Readability and maintainability vs performance. for vs foreach.

Links
Ben's homepage

Ben's book

Download mp3 of podcast

#63 Jimmy Bogard, AutoMapper

Summary
Jimmy Bogard talks about AutoMapper, why and how he built, and recent performance improvements.

Details
Who he is, what he does; how AutoMapper started, what it is; projections, what that are, how they work, expression trees; early mistakes, inspired by StructureMap, performance problems, difficulties with projections, rewrite, how Jimmy uses AutoMapper vs how other people use it, learning from other mappers, improving performance, expression trees are hard to debug; upcoming conferences.

Download mp3 of podcast

Links
Jimmy's blog

NDC { London }

├średev