

The InfoQ Podcast
InfoQ
Software engineers, architects and team leads have found inspiration to drive change and innovation in their team by listening to the weekly InfoQ Podcast. They have received essential information that helped them validate their software development map. We have achieved that by interviewing some of the top CTOs, engineers and technology directors from companies like Uber, Netflix and more. Over 1,200,000 downloads in the last 3 years.
Episodes
Mentioned books

May 7, 2018 • 34min
Martin Thompson on Aeron, Binary vs Text for Message Encoding, and Raft
Martin Thompson discusses consensus in distributed systems, and how Aeron uses Raft for clustering in the upcoming release. Martin is a Java Champion with over 2 decades of experience building complex and high-performance computing systems. He is most recently known for his work on Aeron and Simple Binary Encoding (SBE). Previously at LMAX he was the co-founder and CTO when he created the Disruptor.
* Aeron is a messaging system designed for modern multi-core hardware. It is highly performant with a first class design goal of making it easy to monitor and understand at runtime. The product is able to simultaneously achieve the lowest latency and highest throughput of any messaging system available today.
Why listen to this podcast:
* Aeron uses a binary format on the wire rather than a text based protocol. This is largely done for performance reasons. Text is commonly used in messaging to make debugging simpler but the debugging problem can be solved using tools like Wireshark and the dissectors that come with it.
* In a forthcoming release of Aeron will support clustering. Raft was chosen over PAXOS for this since it is more strict. This means that there are fewer potential states the system can be in making it easier to reason about.
* RAFT is an RPC-based protocol, expecting synchronous interactions. Aeron is asynchronous by its nature, but the underlying Aeron protocol was designed to support consensus, meaning that a lot of things which would typically need to be done synchronously can be done asynchronously and/or in parallel.
* Static clusters will be added first to Aeron, with dynamic clustering after that, and then cryptography again with the intention of keeping the latency and throughput high. (edited)
More on this: Quick scan our curated show notes on InfoQ https://bit.ly/2Ilewk5
You can also subscribe to the InfoQ newsletter to receive weekly updates on the hottest topics from professional software development. bit.ly/24x3IVq
Subscribe: www.youtube.com/infoq
Like InfoQ on Facebook: bit.ly/2jmlyG8
Follow on Twitter: twitter.com/InfoQ
Follow on LinkedIn: www.linkedin.com/company/infoq
Check the landing page on InfoQ: https://bit.ly/2Ilewk5

Apr 27, 2018 • 43min
Building a Data Science Capability with Stephanie Yee, Matei Zaharia, Sid Anand and Soups Ranjan
In this podcast, recorded live at QCon.ai, Principal Technical Advisor & QCon Chair Wes Reisz and InfoQ Editor-in-chief Charles Humble chair a panel discussion with Stephanie Yee, data scientist at StitchFix, Matei Zaharia, professor of computer science at Stanford and chief scientist at Data Bricks, Sid Anand, chief data engineer at PayPal, and Soups Ranjan, director of data science at CoinBase.
Why listen to this podcast:
- Before you start putting a data science team together make sure you have a business goal or question that you want to answer; If you have a specific question, like increasing lift on a metric, or understanding customer usage patterns, you know where you can get the data from, and you can then figure out how to organise that data.
- You need to make sure you have the right culture for the team - and find people who are excited about solving the business problems and be interested in it. Also look at the environment you are going to provide.
- Your first hire shouldn’t be a data scientist (or quant). You need support to productionise the models - and if you don’t have a colleague to help productionise it then don’t hire the quant first.
- Given the scarcity of talent it is worth remembering that Data Scientists come from a variety of different backgrounds - Some people have computer science backgrounds, some may be astrophysicists or neuroscientists who approach problems in different ways.
- There are two common ways to structure a data science team: one is a vertical team that does everything, the other, more common in large companies, is when you have a separate data science team and an infrastructure team.
More on this: Quick scan our curated show notes on InfoQ https://bit.ly/2Jym1RI
You can also subscribe to the InfoQ newsletter to receive weekly updates on the hottest topics from professional software development. bit.ly/24x3IVq
Subscribe: www.youtube.com/infoq
Like InfoQ on Facebook: bit.ly/2jmlyG8
Follow on Twitter: twitter.com/InfoQ
Follow on LinkedIn: www.linkedin.com/company/infoq
Check the landing page on InfoQ: https://bit.ly/2Jym1RI

Mar 31, 2018 • 27min
Streaming: Danny Yuan on Real-Time, Time Series Forecasting @Uber
On this week’s podcast, Danny Yuan, Uber’s Real-time Streaming/Forecasting Lead, lays out a thorough recipe book for building a real-time streaming platform with a major focus on forecasting. In this podcast, Danny discusses everything from the scale Uber operates at to what the major steps for training/deploy models in an iterative (almost Darwinistic) fashion and wraps with his advice for software engineers who want to begin applying machine learning into their day-to-day job.
Why listen to this podcast:
* Uber processes 850,000 - 1.3 million messages per second in their streaming platform with about 12 TB of growth per day. The system’s queries scan 100 million to 4 billion documents per second.
* Uber’s frontend is mobile. The frontend talks to an API layer. All services generate events that are shuffled into Kafka. The real-time forecasting pipeline taps into Kafka to processes events and stores the data into Elasticsearch. * There is a federated query layer in front of Elasticsearch to provide OLAP query capabilities.
* Apache Flink’s advanced windowing features, programming model, and checkpointing convinced Uber to move away from the simplicity of Apache Samza.
* The forecasting system allows Uber to remove the notion of delay by using recent signals plus historical data to project what is happening now and what will happen into the future.
* Uber’s pipeline for deploying ML models: HDFS, feature engineering, organizing into data structures (similar to data frames), deploy mostly offline training models, train models, & store into a container-based model manager.
* A model serving layer is used to pick which model to use, forecasting results are stored in an OLAP data store, a validation layer compares real results against forecast results to verify the model is working as desired, and a rollback feature enables poor performing models to be automatically replaced by previous one.
* “Without output, you don’t have input.” If you want to start leveraging machine learning, developers just need to start doing. Start with intuition and practice. Over time ask questions and learn what you need, then apply a laser focus to gain that knowledge.
You can also subscribe to the InfoQ newsletter to receive weekly updates on the hottest topics from professional software development. bit.ly/24x3IVq
Subscribe: www.youtube.com/infoq
Like InfoQ on Facebook: bit.ly/2jmlyG8
Follow on Twitter: twitter.com/InfoQ
Follow on LinkedIn: www.linkedin.com/company/infoq
Check the landing page on InfoQ: https://bit.ly/2GJQbUo

Mar 23, 2018 • 36min
Sander Mak on the Java Module System
Sander Mak and Wes Reisz discuss the Java module system and how adoption is going. Topics discussed on this podcast include Java modularity steps / migrations, green field projects, some of the concerns that caused the EC to initially vote no on Java 9, and a new tool for building custom JREs called JLink. Additionally, as Java 10 was recently released a short bit at the end was added to discuss some of the latest news with Java.
Why listen to this podcast:
• People quickly moved to Java 8 because of features like Streams and Lambdas. Java 9 has a different story around modularity and application architecture. Adoption is slower and more intentional.
• Migrating large codebases to use modularity is hard. Many of the projects using modules are greenfield, and those large codebases that are moving now are most often using the classpath.
• Jlink is a new command line tool released with Java 9. It allows developers to create their own lightweight, customized JRE for a module-based Java application.
• Java version scheme has dropped the 1.* prefix. Future releases of the JDK will have the version number and follow the form *.0.1 (i.e. 9.0.1)
• While the module system will likely show it’s benefit mostly for new development, many 3rd party libraries are moving to adopt modularity and removing their dependencies on JDK internal APIs. It’s improving the experience for teams adopting modularity.
• There are no known open JEPS regarding the enhancement of the Java module system.
• Java 10 has been released. The release features changes to the freely available Java versions, local variable type inference (var), experimental GRAAL JIT compiler, application class data sharing, improved container support/awareness, and others.
More on this: Quick scan our curated show notes on InfoQ https://bit.ly/2DQ7ptx
You can also subscribe to the InfoQ newsletter to receive weekly updates on the hottest topics from professional software development. bit.ly/24x3IVq
Subscribe: www.youtube.com/infoq
Like InfoQ on Facebook: bit.ly/2jmlyG8
Follow on Twitter: twitter.com/InfoQ
Follow on LinkedIn: www.linkedin.com/company/infoq
Check the landing page on InfoQ: https://bit.ly/2DQ7ptx

Mar 16, 2018 • 38min
Jendrik Joerdening and Anthony Navarro on Self-Racing Cars Using Deep Neural Networks
Jendrik Joerdening and Anthony Navarro describe how a team of 18 Udacity students entered a self-racing car event They had very limited experience of building autonomous control systems for vehicles and had just 6 weeks to do it with only 2 days with the physical car. They describe the architecture, how they co-ordinated a very diverse team, and how they trained the models.
Why listen to this podcast:
- Last year a team of 18 Udacity Self-Driving Cars students competed at the 2017 Self Racing Cars event held at Thunderhill Raceway in California.
- The students had all taken the first term of a three term program on Udacity which covers computer vision and deep learning techniques.
- The team was extremely diverse. They co-ordinated the work via Slack with a team in 9 timezones and 5 different countries.
- The team developed a neural network using Keras and Tensorflow which steered the car based on the input from just one front-facing camera in order to navigate all turns on the racetrack.
- They received a physical car two days before the start of the event.
More on this: Quick scan our curated show notes on InfoQ http://bit.ly/2DykAiJ
You can also subscribe to the InfoQ newsletter to receive weekly updates on the hottest topics from professional software development. bit.ly/24x3IVq
Subscribe: www.youtube.com/infoq
Like InfoQ on Facebook: bit.ly/2jmlyG8
Follow on Twitter: twitter.com/InfoQ
Follow on LinkedIn: www.linkedin.com/company/infoq
Check the landing page on InfoQ: http://bit.ly/2DykAiJ

Mar 3, 2018 • 32min
Andrea Magnorsky on Paradigm Shifts and the Adoption of Programming Languages
On this podcast, we talk with Andrea Magnorsky, who is a tech lead at Goodlord on their engineering squads; she has a background in Scala, C#, and organised conferences. Today we’ll be talking about paradigm shifts.
Why listen to this podcast:
* A programming paradigm has a loose definition. It’s just about finding a way of doing things.
* There are a number of different ways to think about problems - and different paradigms do this in different ways.
* To shift paradigms, you have to un-learn some of your instincts.
* When adopting a new paradigm if people don’t want to learn anything, then they won’t.
* Multiple paradigms help you apply different ways of thinking about solutions to problems because solutions vary across languages.
* Quick ways to start gaining knowledge and adoption for new languages are to use a new language as a test harness for your existing code.
More on this: Quick scan our curated show notes on InfoQ http://bit.ly/2oPFG71
You can also subscribe to the InfoQ newsletter to receive weekly updates on the hottest topics from professional software development. bit.ly/24x3IVq
Subscribe: www.youtube.com/infoq
Like InfoQ on Facebook: bit.ly/2jmlyG8
Follow on Twitter: twitter.com/InfoQ
Follow on LinkedIn: www.linkedin.com/company/infoq
Check the landing page on InfoQ: http://bit.ly/2oPFG71

Feb 23, 2018 • 32min
Anne Currie on Organizational Tech Ethics, including Scale, GDPR, Algorithmic Transparency
On this podcast, Anne Currie joins the tech ethics discussion started on the Theo Schlossnagle podcast from a few weeks ago. Wes Reisz and Anne discuss issues such as the implications (and responsibilities) of the massive amount of scale we have at our fingertips today, potential effects of GDPR (EU privacy legislation), how accessibility is a an example of how we could approach tech ethics in software, and much more.
Why listen to this podcast:
- Ethics in software today is particularly important because of the scale we have available with cloud native architectures.
- Accessibility offers a good approach to how we can evolve the discussion on tech ethics with aspects that include both a carrot and a stick.
- Bitcoin mining power consumption is an example of something we never considered to have such negatives.
- The key to establishing what we all should and shouldn’t be doing with tech ethics is to start conversations and share our lessons with each other.
If you want to find out what every software developer, data scientists or ops should know about GDPR, download our free guide "Perspectives on GDPR": https://bit.ly/2FRvLnP
More on this: Quick scan our curated show notes on InfoQ http://bit.ly/2FtgdIy
You can also subscribe to the InfoQ newsletter to receive weekly updates on the hottest topics from professional software development. bit.ly/24x3IVq
Subscribe: www.youtube.com/infoq
Like InfoQ on Facebook: bit.ly/2jmlyG8
Follow on Twitter: twitter.com/InfoQ
Follow on LinkedIn: www.linkedin.com/company/infoq
Check the landing page on InfoQ: http://bit.ly/2FtgdIy

Feb 9, 2018 • 33min
Oliver Gould on Service Mesh for Microservices, LinkerD, and the Recently Released Conduit
Oliver Gould, Co-founder and CTO of Buoyant, shares insights from his journey in tech, including his time at Twitter and Yahoo. He explains the concept of a service mesh and its components: the data plane and control plane. Gould highlights the benefits of Linkerd and Conduit, particularly Conduit's low memory footprint and ease of deployment. He discusses the shift to Rust, the importance of reading code for learning, and the challenges surrounding the adoption of service meshes in microservices environments, enhancing efficiency and security in the process.

Feb 2, 2018 • 25min
Theo Schlossnagle on Software Ethics and the Presence of Doing Good
This week's podcast features a chat with Theo Scholossnagle. Theo is the CEO of Circonus and co-chairs the ACM Queue. In this podcast, Theo and Wes Reisz chat about the need for ethical software, and how we as technical leaders should be reasoning about the software we create. Theo says, "it's not about the absence of evil, it's about the presence of good." He challenges us to develop rigor around ethical decisions we make in software just as we do for areas like security. With the incredible implications of machine learning and AI in our future, this week's podcast touches on topics we should all consider in the systems we create.
Why listen to this podcast:
- The ubiquitous society impact of computers is surfacing the need for deeper conversations on software ethics.
- Ethics are a set of constructs and constraints to help us reason about right and wrong.
- Algorithmic interpretability of models can be difficult to reason about; however, accountability for algorithms can be enforced in other ways.
- Questions to be considered when writing software should evolve into: What am I building, why am I building it, and who will it hurt?
- Ethics in software will take industry reform, deeper conversations, and developing a culture of questioning the software we’re building
More on this: Quick scan our curated show notes on InfoQ http://bit.ly/2BZAC4p
You can also subscribe to the InfoQ newsletter to receive weekly updates on the hottest topics from professional software development. bit.ly/24x3IVq
Subscribe: www.youtube.com/infoq
Like InfoQ on Facebook: bit.ly/2jmlyG8
Follow on Twitter: twitter.com/InfoQ
Follow on LinkedIn: www.linkedin.com/company/infoq
Check the landing page on InfoQ: http://bit.ly/2BZAC4p

Jan 19, 2018 • 35min
Chris Swan on DevOps and NoOps, plus Operations and Code Validation in a Serverless Environment
On this week’s podcast, Wes Reisz talks with Chris Swan. Chris is the CTO for the global delivery organisation at DXC Technology. Chris is well versed in DevOps, Infrastructure, Culture, and what it means to put all these together. Today’s topics include both DevOps and NoOps, and what Chris calls LessOps, what Operations means in a world of Serverless, where he sees Configuration Management, Provisioning, Monitoring and Logging heading. The podcast then wraps talking about where he sees validating code in a serverless deployment, such as canaries and blue-green deployments.
Why listen to this podcast:
* Serverless still requires ops - even if the ops aren’t focused on the technology
* Even with minimal functions, the amount of configuration may exceed it by a factor of three
* Disruptive services often move the decimal point
* ML is the ability to make the inferences and AI is the ability to make decisions based on those inferences
More on this: Quick scan our curated show notes on InfoQ http://bit.ly/2Bff4jU
You can also subscribe to the InfoQ newsletter to receive weekly updates on the hottest topics from professional software development. bit.ly/24x3IVq
Subscribe: www.youtube.com/infoq
Like InfoQ on Facebook: bit.ly/2jmlyG8
Follow on Twitter: twitter.com/InfoQ
Follow on LinkedIn: www.linkedin.com/company/infoq
Check the landing page on InfoQ: http://bit.ly/2Bff4jU