
technologyJan 27, 200749:26pending
Episode 44: Interview Brian Goetz and David Holmes
About this episode
This is another episode on concurrency. We talk to two experts in the field, Brian Goetz and David Holmes about aspects of concurrency we hadn't really covered before. We start out by discussing liveness and safety and then continue to talk about synchronizers (latches, barriers, semaphores) as well as the importance of agreeing on protocols when developing concurrent applications. We then talked about thread confinement as a way of building thread-safe programs, as well as using functional programming and immutable data. The next set of topics covers various ways of how compilers can optimize the performance wrt. to concurrency, talking about techniques such as escape analysis as well as lock elision and coarsening. We then covered how to test concurrent programs and the consequences of the Java memory model on concurrency. We then went on to look at some more advanced topics, namely, lock-free programming and atomic variables. We also briefly discussed the idea of transactional memory. Finally, we looked at how better language support - specifically, a more declarative style of concurrent programming as e.g. in the Fortress language - can aid in improving the quality of concurrent programs.
Get every episode summarized
Each time Software Engineering Radio - the podcast for professional software developers publishes, we email you a written briefing from the transcript — the topics, who appeared, and any specific claims, with the ad reads skipped.
Email me new episodesFree for 3 shows. No card needed.
No transcript yet
This episode has not been transcribed. Request it and it moves to the front of the queue.
More episodes
More from Software Engineering Radio - the podcast for professional software developers

SE Radio 737: Owen McGirr on Software Accessibility
Software Engineering Radio - the podcast for professional software developers
Sep 9, 202651:09completed

SE Radio 736: Sahil Walia on Apache Iceberg
Software Engineering Radio - the podcast for professional software developers
Sep 3, 202651:27pending

SE Radio 735: Vivek Yadav on Regression Testing Microservices
Software Engineering Radio - the podcast for professional software developers
Aug 26, 202659:06pending

SE Radio 734: Sathiesh Veera on Engineering Data-Protection Guardrails with LLMs
Software Engineering Radio - the podcast for professional software developers
Aug 19, 202642:32pending