Jon Krohn: 00:00:00
This is episode number 533 with Dr. Brett Tully, director of AI output systems at Nearmap.
Jon Krohn: 00:00:14
Welcome to the SuperDataScience podcast. My name is Jon Krohn, a chief data scientist and best-selling author on deep learning. Each week, we bring you inspiring people and ideas to help you build a successful career in data science. Thanks for being here today. And now let’s make the complex simple.
Jon Krohn: 00:00:43
Welcome back to the SuperDataScience podcast. Today’s guest is the remarkable Brett Tully. Brett is the director of AI output systems at Nearmap, a world-leading aerial imagery company that uses massive-scale machine vision to detect and annotate vast images of urban and rural areas with remarkable detail, such as how many trees there are in a given city, or whether the roof on a single building is in need of repair prior to Nearmap, Brett dived deep into other challenges that can be solved with data. Is the group leader of software engineering at a major research hospital. He worked to characterize the differences in the proteome, the complete catalog of proteins in your body between cancer patients and healthy individuals. As the head of simulation at First Light, he used state-of-the-art data simulations that could be a key stepping stone toward enabling commercial nuclear fusion reactors. And as a PhD student at Oxford University, he simulated of the cerebral spinal fluid present in your brain flows in order to better understand neurological abnormalities.
Jon Krohn: 00:01:50
Clearly, Brett is a fascinating character with a broad range of rich technical expertise. In today’s episode, he details for us what it means to be a director of AI output systems and how this role fits in with other AI activities in an organization, such as model research and development. He talks about his favorite software tools for working with geospatial data, his tricks for the effective management of a team of machine learning engineers. He tells us what nuclear fusion is, how harnessing fusion power commercially could be a pivotal moment in the history of humankind and how data simulations may play a critical role in realizing this. He talks about how the study of the healthy proteins versus the proteins present in someone with a particular type of cancer is accelerating the availability and the impact of personalized cancer treatment. And he provides his take on the big AI opportunities of the coming years.
Jon Krohn: 00:02:44
Today’s episode will be interesting to anyone who’s keen to appreciate the impact of data science on a broad range of huge challenges from nuclear fusion, to cancer, to massive-scale machine vision. We do get into technical details at points that active data scientists or software engineers will particularly value. But for the most part, we discuss these topics in a way that any interested person should be able to learn a ton. All right, you ready for this epic episode? Let’s do it.
Jon Krohn: 00:03:18
Brett Tully, welcome to the SuperDataScience podcast. I can’t believe we’re on air together. It’s awesome. I’ve known you for a very long time, coming on 15 years. So, we met at Oxford. We were doing PhDs at the same time. And for some reason, we didn’t mind spending a lot of time with each other. We lived together for several years in different locations, as roommates, on campus, off campus. Actually, it was through you that I got my first job in New York after my PhD. So, a lot of connections. It’s wonderful to now be sharing this experience of having you on the SuperDataScience podcast. And just so that the audience knows, it sounds like I might be being nepotistic, but you will very quickly see that Brett Tully, on his own merit, absolutely deserves to be here. He’s an extraordinary human being. So, Brett, welcome to the show. How you going, mate? And where in the world are you now?
Brett Tully: 00:04:22
Mate, thank you very much for having me on. It’s awesome just to catch up. But, yeah, great to be able to chat a little bit about what I’ve been up to for the last little while. So, I am coming to you from Sydney. So, morning my time, evening your time. And, yeah, excited to be here.
Jon Krohn: 00:04:38
Nice. And also winter my time in New York, but summer your time on the other side of the planet.
Brett Tully: 00:04:44
Yeah. Although we’re in the midst of a week of rain, so summer is inverted commas at the moment.
Jon Krohn: 00:04:50
Well, I’m sure it’s picking up. So, you work at a firm called Nearmap and, actually, in a somewhat tangential way, you are not the first Nearmap employee on the show. In episode 455, we had Horace Wu, who works in the legal department in Nearmap. But we were, actually, in his episode, we were focused entirely on his entrepreneurial business, which is a legal AI technology company. So, we didn’t really talk about Nearmap at all. So, Brett, start us off by telling us what Nearmap is.
Brett Tully: 00:05:26
Yes. So, Nearmap’s a location intelligence company. It was founded a bit more than a decade ago over in Perth, here in Australia. And it was founded really as an aerial imagery company. So, based around some really cool IP for camera systems, which means that you could, basically, fly planes higher and faster than what other people were doing in the industry. And that drastically dropped the amount of money it would take to actually capture the imagery. And so the company changed the model of that and moved from this idea where customers would call up the company and ask for a particular location to be flown and captured, and then delivered, sometimes even months, later. What Nearmap does is we fly everywhere and we process, and then we figure out how to sell it, and we sell it like a subscription. So, a really, really interesting technology company in the sense that we are based in the middle of Sydney in one of the highrises right there on the harbor. But in that office, we’re building camera systems, we’re figuring out how to fly planes all across Australia, New Zealand, U.S., Canada.
Brett Tully: 00:06:44
And then we own the stack all the way from turning that source imagery from the planes into what we call a tiled map. So, using maybe what your listeners would call old-school computer vision to do photogrammetry. But then on top of that, we have all sorts of derived content as well. So, we’re building massive scale 3D representations of the urban world. And then what my team is involved in is, is taking that input data, running modern vision algorithms on top of that, and really starting to dig into the detail of what the human urban experience actually looks like.
Jon Krohn: 00:07:32
Wow. So, clearly from end to end, Nearmap has a ton of technology involved in image capture and just getting the planes up and fast to be doing this image capture, all the way through to the machine vision piece that you are working on. So, tell us about that. You are called the director of AI output systems. What does that mean? What is an AI output system?
Brett Tully: 00:07:59
So the way that Mike Bewley, my boss, set up AI at Nearmap, I think is really interesting. So, the group is called AI Systems and within that we have three different teams. So, mine is AI output systems, and we’ll come back to what that means in a little bit. But the other two are model R&D team and the model systems team. And you can loosely think about those two teams, the first being responsible for really the nuts and bolts of the deep learning algorithms that we are developing and the architectural design and the big forward-thinking pieces, the types of projects that take months, if not longer, to really come to fruition. And then the model systems team is responsible from basically everything to do with label data gathering, managing things like the ontology of our labels. I think we are one of the first, certainly one of the first companies I’ve heard of, that has just hired an AI ontologist. So, a full-time role just devoted to managing the growing complexity of our semantic knowledge graph and the label definitions. And they’re building systems that take all that label data, look after it in the right way, and then set up the infrastructure for training at deep learning models. So, [crosstalk 00:09:32]-
Jon Krohn: 00:09:33
Many of our listeners are probably already familiar with this idea of labeling, but just in case someone isn’t. So, you have all of this aerial imagery and it’s just pixels. It doesn’t have any meaningful human structure. And so you can apply labels and you can use machine vision algorithms maybe to help with labeling in certain circumstances. So you could have things like an airport is probably in this region. I don’t know, I’m making up examples. You’d have better ones than me, but you could have labels of, “Okay, this kind of pixel looks like an airplane. This kind of pixel looks like a car. That kind of thing, right?
Brett Tully: 00:10:13
Yeah, that’s exactly right. So, we’re up to, I think, just above about 110 different layers of semantic meaning now in our label data. And from that, by the time it comes through my team and into data that’s ready for customers where we’re well above 250 attributes that are representing the urban physical world. And the structure of that can be quite deep and quite complex. So, we can mark pixels that belong to a roof or a building, but then at the same time, we can also say what that roof is made out of or what the shape of the roof is, and what the condition of that roof is. So, you can start to see that this nested hierarchy of semantic meaning, which we can then start to apply.
Jon Krohn: 00:11:06
Super cool. This episode is brought to you by SuperDataScience, our online membership platform for learning data science at any level. Yes, the platform is called SuperDataScience. It’s the namesake of this very podcast. In the platform, you’ll discover all of our 50 plus courses, which together provide over 300 hours of content with new courses being added on average once per month. All of that and more you get as part of your membership at SuperDataScience. So, don’t hold off. Sign up today at www.www.superdatascience.com. Secure your membership and take your data science skills to the next level.
Jon Krohn: 00:11:48
Yeah. So, the model R&D team, the model systems team, and the output systems team that you direct all three of those rolled up into the AI systems team. So, you’ve told us a bit about model R&D, you’ve told us a bit about the model systems team. What does the output systems team do?
Brett Tully: 00:12:06
So, we take as input the deep learning model that’s coming out of model R&D. And our primary responsibility is taking that model and applying it across all of our imagery. So, we have petabytes of aerial imagery in our back catalog going back more than 10 years in Australia. And we are continually capturing. So, we get tens of thousands of square kilometers of new imagery in each day. And as of this year, the company is committed to running our AI platform across every piece of imagery that we capture. So, the way we like to describe what we do when we running inference is we’re effectively painting pixels with meaning. So, for every pixel in an image that we capture, we have this collection of attributes where we can effectively each pixel will represent a confidence that, that pixel is representing that particular attribute or that particular layer. So, my team is effectively running a really complex DAG of operations, where we start-
Jon Krohn: 00:13:23
[crosstalk 00:13:23] graph.
Brett Tully: 00:13:24
Thank you. Yeah. So, we start with the deep learning model and we run our raster predictions, so that’s our pixel-wise predictions. But at that point, the data is very flexible, but it can be quite difficult to work with. So, in many ways where increasing the size of the data much beyond what you’re getting just straight out of the camera. And for most of our customers, that’s not really what they want. What they actually want is for us to identify objects in the world. And so that post-processing DAG then really kicks into gear where we start to group pixels together. So, in some senses you can think of it as just thresholding pixels above a certain confidence, taking a contour and then that’s an object. And that would be the most naive thing that you could do.
Brett Tully: 00:14:22
But we can start to think about ways of enhancing that data as we move through the DAG. So, if you think about things like roofing, humans make roof typically with straight lines and 90 degree angles. And so we have a post-processing model that sits on top of that output, which does things like a smarter version of simplification of those outlines. And what’s interesting there is that we start to move as much into the world of accuracy as we do aesthetics. And for some of our customers, the aesthetic of the output data that we produce is as important as anything else.
Jon Krohn: 00:15:06
What does that mean, the aesthetic?
Brett Tully: 00:15:08
Well, so think of something like a simple suburban house is typically four walls and a roof. And those four walls typically are put together at 90 degree angles. And so if you were trying to represent that with a polygon, you would want that polygon to be a box with four corners and four straight lines. If you start to have wiggles in that, then depending on how you’re using that data as a customer in your application, that aesthetic can start to really impact on the value of the data.
Jon Krohn: 00:15:44
Got you. Got you. Got you. So, part of this post-processing can be to clean up wiggles? [crosstalk 00:15:52].
Brett Tully: 00:15:52
Absolutely. So we can think of what we’re calling the vectorization part of our algorithms. So, where we go from raster to vector data in many ways is a data compression approach in that you can group many pixels into a single polygon and polygons are typically very lightweight. But in other ways, we’re actually making the data much richer as well, because from a polygon, we can also then start to add additional attributes to that. So, things like area. I was listening to on of your episodes the other day around knowledge graphs for commercial real estate.
Jon Krohn: 00:16:40
Oh, yeah.
Brett Tully: 00:16:41
And our type of data fits within a similar paradigm to that type of thing as well, in the sense that we can start to do things like say this roof is made of this material. It has this shape. It has this area of solar panels on top of it. And then because it’s all geospatial, you can start to apply geospatial algorithms on top of that as well. So, you can start to talk about how far things are from other things. So, how close is the nearest tree to this house? And you can start to imagine all sorts of different customer applications that can use that information.
Jon Krohn: 00:17:23
Yeah. And I want to get to a specific case study in a moment, but just quickly, that episode that you were talking about with the knowledge graphs, that’s episode 479 with Maureen Teyssier, and that is an awesome episode if people would like to learn more about knowledge graphs. But then in addition to that, there’s a term that you’ve been using that I’m not super familiar with. And so I would love to understand better. You’ve used it a couple of times now, raster. What does that mean?
Brett Tully: 00:17:49
So I don’t know the etymology of the word. So raster for us is basically pixel-based information.
Jon Krohn: 00:17:59
Got it, got it, got it.
Brett Tully: 00:18:00
So, think of like a bitmap is considered a raster image, whereas SVG is vector graphics. So, that’s where the terminology comes from.
Jon Krohn: 00:18:12
Nice.
Brett Tully: 00:18:13
So, most things like semantic segmentation are raster based operations. They output a matrix of confidences for each pixel, so that’s our raster set of algorithms. And then the vectorization is when we then turn that into to effectively polygons and points.
Jon Krohn: 00:18:33
Cool. Also, I just remembered that at least back when we were living together, you were really into photography. You were an outstanding photographer. And so did that draw you to this job at all? Or was that just a bit of a bonus?
Brett Tully: 00:18:50
I think it drew me to the world of machine vision.I’ve always found hard problems that are intuitive to me are more interesting than hard problems that are not intuitive to me. So I always use quantum mechanics as my counter example. That is a hard problem that I just don’t get intuitively and I’ve have always found that really hard to fully understand. But Nearmap’s awesome for that. I think half the company are camera nerds, particularly in the vision team. So, the teams that sit a little bit upstream of us, there are some guys in there who really get vision, even down to the neuroscience of what makes an image appealing, so that you can set the color balances correct and stuff like that. It’s really cool stuff.
Jon Krohn: 00:19:50
Cool. Yeah. That must be great for you. So, all right. So, yeah, so that clears up the raster and vector aspects to me. It’s now crystal clear. So, we’ve talked a little bit abstractly about examples. I gave bad examples probably of like, “Oh, we can detect the plane, we can detect a car.” And then you gave much better are examples of like, “This is a roof. And we know it’s a roof because it’s on a polygon that’s shaped like a house and we can layer into that this roof…” Once, I guess, you’ve identified it’s a roof, you can do further post-processing to look for more information that you guys can classify about roofs in particular, like roof quality, roof components what it’s made out of. So, that gives us a sense of, generally speaking, what’s possible with Nearmaps type of machine learning algorithms. But do you have a case study you could share with us to bring this to life?
Brett Tully: 00:20:47
Yeah. So, I guess the big thing that we are doing is we are producing what I would call data products. And we’re trying to build that as a platform, so that we can serve multiple verticals. But the couple of big verticals that we’re really target with our stuff early on are around local governments and insurance. And those needs are quite different. But I have to say that the one that I didn’t really expect before I joined Nearmap and am constantly impressed by the use cases is in local gov. The level of sophistication in so many places around understanding the urban environment of the area that these teams are tasked to look after is just phenomenal.
Jon Krohn: 00:21:38
Wow. Yeah, I definitely have the perception of a bunch of people working very short hours on my hard-earned tax dollars. So, I’m glad [crosstalk 00:21:49]-
Brett Tully: 00:21:49
I can assure you it’s not that at all. And it’s genuinely impressive. Everything from modeling population growth to figure out where you should put schools, to looking at how vegetation changes over time, which is something that I love seeing the approaches that these guys take. Not directly relevant to our data platform by any means, but the city of Melbourne has literally cataloged every single tree in their local government area. And it’s just-
Jon Krohn: 00:22:28
And they can do that because of you or they can do it more easily because of you, because someone doesn’t have to walk around and count all the trees?
Brett Tully: 00:22:34
No. So, that one in particular is not based off what we’ve done. That’s just something I presume they’ve sent out an army of people to literally go and tag and record locations and stuff like that. I think it’s really interesting to think about how that work can get replaced with products like ours. And certainly as the fidelity of our results becomes more fine grained, you can imagine a lot of that manual, laborious work can start to be replaced by computers, for sure.
Jon Krohn: 00:23:09
Sounds like an even better use of my tax dollars to be having machines do it as opposed to needing to… Humans always need to eat and sleep. So inconvenient. So costly. Well, but then also, I’m saying this in jest, but, of course, by having more aspects automated, you can divert services to more high-value tasks that only a human can do.
Brett Tully: 00:23:33
And I think just the ability to do it at scale and to make that knowledge discoverable is something that often you can only do with machine-driven approaches. The idea that you can manually annotate what we can produce basically by running big clusters on AWS is just fanciful. You can’t do that in a manual way. So, I think with a really interesting applications come is when you take things or you take ideas that were previously not possible, because we didn’t have the ability to scale humans. Now, we can scale the machine. And so what can you do with that data? And where do we go next? That’s the really cool stuff.
Jon Krohn: 00:24:23
Yeah. Because it sounds like you can pay some people to go and count all the trees in the city, but you can’t count all the trees in Australia, but your system literally could. You could count every tree in Australia, every kangaroo that’s out loose, causing mayhem, can be counted.
Brett Tully: 00:24:45
Three that I saw just this morning.
Jon Krohn: 00:24:47
No, are you serious?
Brett Tully: 00:24:48
No. I’m not serious.
Jon Krohn: 00:24:49
Oh, no, you’re joking.
Brett Tully: 00:24:53
But, yeah, you’re exactly right. It’s not just within the realms of possibility. We are actively doing things like that at the moment. We can tell you every swimming pool in Australia. We can tell you every solar panel in Australia. And you start to think about not only can we do that today, but we’ve got a back catalog that goes back a decade. So, we can show the growth in these things in a way that hasn’t really been possible previously. And that’s really exciting.
Jon Krohn: 00:25:27
Yeah. That is super cool. I just got reminded of a completely random side story, but I’ve never seen a kangaroo in the wild, but the only time that I was in Sydney, I saw a bat so large that I sprinted in fear and didn’t realize that I’d lost my wallet. And then so I had to make my way from Sydney to Singapore without a wallet or cash. And so you guys do have some frightening animals over there. And, actually, it’s one of the most dangerous places to live, right? Not because of dangerous [crosstalk 00:25:59]. No, you don’t have like dangerous spiders and stuff?
Brett Tully: 00:26:00
It’s fine. Oh, we’ve got plenty of dangerous animals. Just don’t touch them.
Jon Krohn: 00:26:05
All right. All right. Okay. All right. So, back to the data science. So clearly with that case study, at Nearmap, you’re able to get way more output. You’re able to scale up recognition of the physical world around us, whether it’s in an urban center or rural area, with way less effort. And you’re able to do things that it would be impractical for humans to do at any scale. So, we understand the scale of it. We understand the purpose of this. Can you dig in for us a bit more on exactly how the MLOps works? How do you generate this kind of vast scale of data? You mentioned AWS. But more specifically, can you go into the kinds of software tools that you use in the cloud on a service like Amazon Web Services to be able to generate this vast scale of data?
Brett Tully: 00:26:59
Yeah. So, I think one of the really interesting challenges for of my team, Nearmap is definitely a growth company. And so we need to think about generating data with a very small amount of our internal effort. We have to be thinking future-driven stuff. We’re always working on the next features. We’re always trying to build our next set of algorithms. But at the same time, we have to process this vast amount of data. And so what we set out to do is build a processing system that really let us generate 80% of our output with 20% of our effort. That clichéd breakdown. But, for me, I think this is one of the really interesting areas of MLOps that isn’t really spoken about all that much. If you read blog posts about what MLOps is, there’s got to be a lot of focus on experimental tracking, maybe some labeled data tracking. And then you’ve got your train model and you throw it behind an API, and then you want to monitor that in real time. That’s MLOps, by and large.
Jon Krohn: 00:28:04
Machine learning operations. Yeah. And that’s mostly in my company what it largely consists of.
Brett Tully: 00:28:11
Yeah. Whereas I think for us, we want to reframe MLOps in terms of application architecture. So, it’s one thing to have a model that sits behind an API and it returns you some probabilistic result, but then someone’s got to actually do something with that result. And for us we;re in the world of geospatial intelligence, geospatial numerics. And so there’s a whole world of things that can go wrong that are maybe not what you would think of just in terms of pure ML type stuff. So, actually the model and running inference is a really small part of what we actually do. We build this entire system that sits around that. And so we’ve coined this term… We haven’t coined it, we use this term pipeline of pipelines, which is something that comes out of the DevOps vernacular.
Brett Tully: 00:29:10
But, for us, what it means is that, so I mentioned before that we have this DAG of operations and we can think of each module within the high-level DAG as being a DAG of its own. So, running inference across all of our imagery, a particular capture from the aircraft might be 1,000 square kilometers of data. So, just to run inference on that we are looking at probably 400 hours or more of GPU compute time.
Jon Krohn: 00:29:43
Wow.
Brett Tully: 00:29:44
In order to do that efficiently, we need to break that up into a bunch of embarrassingly parallel tasks. And we then want to split that out across our compute in a way that makes sense. And at that stage, you can no longer just think about the application layer. You also have to think about your compute layer as well.
Brett Tully: 00:30:03
And I guess in some sense, that’s maybe not a new concept. If people are designing for Spark, they’re writing their applications in a way that can run on Spark. For us, we’re designing applications that can run on Kubernetes and specifically using a workflow orchestration tool called Kubeflow. And we’ve got some Kafka thrown in there just to really round out the three Ks of system engineering. But yeah, so we have this kind of what we can call a controller pipeline, and that makes sure that all of these individual algorithms can be orchestrated sensibly. But each one of those algorithms themselves also need to deal with efficiently scaling out across multiple nodes in a compute cluster. And then within themselves, each step that’s running inside a Docker container is also mostly written in Python, but is written in a way that it’s doing lots of embarrassingly parallel work as well.
Brett Tully: 00:31:10
So we’ve invested a lot of time and tooling into making multiprocessing Python easy to write, so that a data scientist can really optimize the usage of compute infrastructure. But the way that we think about breaking our problems down, we need to make sure that each application execution of this kind of fan out step is taking something like half an hour to complete. And that half an hour is really something we found through trial and error, but we’ve built from the ground up to use Spot instances in AWS. And that means we need to think a lot about the ability of our applications to restart halfway through. We need to think about source of truth of data. If you get right to the end of your application and you’re 99% of the way through, and then you lose your Spot instance, you don’t want to have to go back and repay that full 99%, you want to just finish off the last 1%. So we’ve spent a lot of time and effort to figure out how to do that in a really robust way.
Jon Krohn: 00:32:29
Got it. So to read back or to not read back, but to repeat back some of these ideas back to you to see if I’m on track. So you have Python code typically inside of a Docker container. These Docker containers allow us to keep specific software libraries, keep track of exactly what library versions we’re going to need to run our code. And within that Docker container, we can then keep it separate from the rest of a given machine that we’re running this code on. So these Docker containers allow us to have this really neat way of having a recipe for exactly what software dependencies I’m going to need. And then we can have the Python code running inside of this container. In your case, a lot of that code is to run massively parallel GPU computation, to be able to process aerial imagery. So that’s a Docker container. And then we can use Kubernetes to spin up Docker containers on demand as they’re needed, right?
Brett Tully: 00:33:38
Yeah. Maybe not so much spinning up Docker containers as they’re needed, but spinning up compute capability as it’s needed. And then the creating of the Docker containers or pods within that Kubernetes cluster, that’s where Kubeflow comes in. So Kubeflow is like an orchestration layer that sits on top of Kubernetes.
Jon Krohn: 00:34:02
Cool. And then the third K, Kafka, how does that all fit in?
Brett Tully: 00:34:07
Yeah. So Kafka’s quite an interesting one and I think we’re using it in a way that’s maybe quite different to other people. So Kafka’s like a streaming message service. So you can think of it very naively as a pubsub technology. So you can publish messages to a queue, you can read messages back off the queue. So we effectively use that as our way of communicating through different layers of our pipeline of pipelines. So as much as possible, we want this whole thing to be event driven and Kubeflow gives you some elements of that. So I guess to go a little bit more detail into what Kubeflow is, you can think of that as pretty much a Python DSL, Python Domain Specific Language, that sits on top of other technologies. So it was founded based off using Argo Workflows. So Argo Workflows are effectively YAML spec files for running jobs on Kubernetes. There are now other backends to Kubeflow, but we still use Argo.
Brett Tully: 00:35:22
Kubeflow gives you a bunch of nice things like the ability to do recursive operations. You can use conditionals. So depending on, your application might output something to the console and then you can use that as a way of making decisions. We can do dynamic fanning. So if we think about say a given aerial survey, small ones might be 100 square kilometers and large ones might be 2000 square kilometers. We want to break those down into known units of work, so that we hit that 30 minute target. So what that might mean is the small survey might have tens of those chunks, the large surveys might have a thousand of those chunks. And so that ability to do a dynamic fan out, is one of the things that we can do using Kubeflow. [crosstalk 00:36:19].
Brett Tully: 00:36:19
So Kafka really is the last, I guess piece where it just lets us tell the controlling pipeline when some of the sub pipelines are finished. Again, because we’re using Spot instances. And there’s often these weird interactions between Spot and Kubernetes, where if you don’t handle a Spot termination really well, Kubernetes can think a job has successfully completed when actually it hasn’t. So there’s some really gnarly stuff when you start to run thousand node clusters, things that shouldn’t really happen if you just read the documentation, actually happen in the real world. And so by using some of the more advanced features of Kubeflow and by using Kafka as our ability to replay history, that’s how we get the robustness that we really need through all of this.
Jon Krohn: 00:37:21
Cool. And the idea of the Spot instances there is that the Spot instances are cheaper than an instance that you completely reserve for yourself in AWS. But that’s why you need to have some of this extra cleverness built in because you’re getting this deal on a Spot instance in AWS, but it means that if somebody else who’s willing to pay more wants that, you can be booted off. And so you’re saying that… Yeah, you described this situation earlier where you could get 99% of the way through a job, and then you get booted off the Spot instance and you want to pick up where that left off. So I’m starting to piece together why this is so critical. And that makes a lot of sense when you’re operating on the scale that you are, if you can half the cost… and that’s a rough estimate, but I think a Spot instance might be about half of the cost of a full dedicated instance in AWS, when you’re running hundreds of GPUs at the same time, just for one set of aerial images across all of the aerial images that you have and all of the different kinds of post-processing layers that you want to compute, getting that cost down by half at the risk of being kicked off every once in a while is definitely worth it. So that’s pretty cool.
Brett Tully: 00:38:35
Completely. And actually for some of the instance types we use, it’s closer to 75 or 80% discount compared to [crosstalk 00:38:43] pricing.
Jon Krohn: 00:38:42
Oh, wow.
Brett Tully: 00:38:43
So it’s the point where yes, we’re paying more in complexity. So we’re paying the cost in engineering terms. But the savings from a compute side are drastic. But yeah, it’s interesting when we start to think about the scale of what we do. So we have this adage in my team that everything breaks at scale. It doesn’t matter how good your unit testing suite is, it doesn’t matter how top notch your programming standards are, everything is going to break somehow. The real world is a strange place and the edge cases are real. We like to joke that if you have a one in a million designed house, we’ll see 200 of them just in processing one set of data from the US.
Jon Krohn: 00:39:37
Right.
Brett Tully: 00:39:39
There are… Yeah.
Jon Krohn: 00:39:40
There’s god damn non 90 degree angle houses.
Brett Tully: 00:39:44
Exactly.
Jon Krohn: 00:39:45
All these circle houses out there throwing off your algorithms.
Brett Tully: 00:39:48
Yeah. Architects, who needs them?
Jon Krohn: 00:39:52
Frank Lloyd Wright, what have you done to my model? Get out of America. I gotcha. So that is super cool. I love understanding what machine learning operations is in the particular context of your business and why it’s so critical at the massive scales that you’re working at. So tell us a bit about what the day-to-day is like for you in your job.
Brett Tully: 00:40:24
Yeah. So I learned pretty early on in my career that I need to keep technical work as a part of my day job. So I guess we’ll talk a little bit later on about other things that I’ve done. But I found myself just through working at startups and stuff like that, getting into a lot of strategy type roles pretty quickly. But I definitely realized that the need to really get stuck into technical problems and doing that on at least a weekly basis, is how I stay sane. That idea of getting into a flow state, which I really only get when I’m pulling on the threads of a difficult technical problem. That’s really critical to me. So I’ve tried to set up my job now where I’m spending at least half of my time doing that kind of work.
Brett Tully: 00:41:22
And we have a fantastic culture in our team where there’s a lot of shared ownership over everything. We try to avoid single person projects and stuff like that. So some days I’ll literally be just pulling the bug off the top of the backlog and digging into that.
Jon Krohn: 00:41:39
Cool.
Brett Tully: 00:41:40
Other days, I’m sitting down reading papers on new techniques. We also use a lot of the open source geospatial stuff. So I’ve mentioned geospatial a few times already. So yeah, we’re pretty big into the Python, geospatial data science stack. So for those people who haven’t really spent much time in this space, there’s a library called GeoPandas, which is basically an augmentation of the Pandas library, which has a bunch of really nice geospatial things that sit on top of it.
Jon Krohn: 00:42:14
That’s cool. I’m going to briefly interrupt you because we had Wes McKinney who made the Pandas library in episode 523. And it blew my mind that Pandas has been used… like the GeoPandas that you just described, it’s been incorporated into half a million other project in GitHub, which is wild.
Brett Tully: 00:42:36
It doesn’t surprise me at all. It’s such a useful way of thinking about data. To be honest, even just, you want to buy a house at home, how are you going to figure out what your loan should look like? You’re not going to sit down and build an Excel model. You’re going to build some something out in Python, and you’re probably going to be using Pandas to do it. It literally percolates every part of my life, that library. It’s so useful. I did listen to that Wes McKinney episode. And I have to say I’m pretty humble to also be interviewed by you, given that you’re having people like that on your show.
Jon Krohn: 00:43:14
Yeah. I’m humbled, I can’t believe that I get to interview somebody like that. So yeah, it’s mutual. Super lucky to be here. But yeah. So GeoPandas, I think you’d actually finished describing how… so that’s Pandas like library in Python for working with geospatial data. And then you were about to talk about something else and I spoke over you.
Brett Tully: 00:43:36
Yeah. So I guess then the other part of my job is a little bit of technical strategy and planning out roadmaps, and what we’re doing in six months from now, what we’re doing in two years from now. And then really, I guess the other arguably the most important part of what I’m doing is making sure that my team’s happy, productive. So still a relatively small team, nice tight knit group, and probably one of the most high performing teams I’ve been involved with. It’s really a pleasure to work with these guys.
Jon Krohn: 00:44:09
Cool. So what do you look for in people that you’re hiring into your team? So you’re the director of AI output systems. It sounds like you’re typically always looking for outstanding machine learning engineers and also sometimes data scientists. So what do you look for when you bring those people onto your team?
Brett Tully: 00:44:29
Yeah. So maybe it’s an obvious thing to say, maybe it’s not. But we really need people who know how to code, and particularly who know how to code in a team environment. And there are obviously different levels of what that means. And you can augment that with other skill sets, which will still make you an interesting candidate to us. But by and large, we need to run prototypes. We do lots of prototype and we do lots of building of new algorithms and stuff like that. But ultimately whatever we come up with, whatever we design and invent, we need to embed into that massive scalable system that I was just describing. And everything breaks at scale. And if you’re not writing code that can handle that and fail, not even fail gracefully, but fail hard.
Brett Tully: 00:45:22
We don’t ever want to recover from unknown situations because that almost always means that the data that’s going to come out the other end has some kind of hidden a mistake in it. So you need to understand and be able to predict and protect yourself against that kind of stuff. And that really comes from being able to write clean code. But I guess more than that, we’ve got a really nice culture of PRs and peer programming in the team. And really boils down to the idea that individuals might build out their implementation but once it enters into that PR stage, it then really becomes the team’s code rather than that individual person’s code. And so we have this really nice shared responsibility approach to that stuff.
Jon Krohn: 00:46:10
Well, and just a quickly interrupt. Probably most listeners know a PR is a Pull Request. But so yeah. If you want to elaborate on that at all.
Brett Tully: 00:46:21
Yeah. I guess it’s just a way of making sure that more than just you in the team has context of the code that you’ve written and how that fits into the system. And it’s a good way for our senior engineers to help our junior engineers. It’s a good way to make sure that there’s consistency of style and approach and stuff like that. So there’s a reasonable likelihood that any person in the team can jump into any part of the code in any of that different applications, and at least be able to figure out what’s going on.
Jon Krohn: 00:46:59
Cool.
Brett Tully: 00:47:01
But yeah, I think that’s a necessary but not sufficient criteria. And I think the other stuff is a little bit harder to really define. But I think back to the early days of one of the co-founders from one of my early companies, had these two statements that he used really early on, and they’ve just stuck in my brain. And one is that, “You can’t plow a field by turning it over in your mind.” And the other is that, “A week of hard work can save you an afternoon of careful thought.” And those are two statements that [crosstalk 00:47:40].
Jon Krohn: 00:47:40
Paradoxical. Dig into those for us. So start with the first one. “You can’t plow field by turning it over in your mind.”
Brett Tully: 00:47:47
Yeah. So this was really getting at the concept that you can spend a lot of time thinking about stuff and planning it out, but until you actually start doing it, it’s hard to know whether what you’ve thought about is the right stuff. So I guess if you’re doing all of this massive planning and down to, “I’m going to do this on this day and this on this day” type approach, the likelihood of that plan actually being how you build and deliver a thing, particularly in unknown environments where there’s a bit of R&D involved, it basically just doesn’t happen. You can’t possibly know everything at the start of the project, and it’s only going to be at the point at which you start doing stuff that you really start to, I guess, figure out some of the things that you don’t know at the start. So that’s that idea that just by thinking about stuff, you can’t actually make a physical thing in the world. You can’t change a thing in the world just by thinking about it. Not yet anyway, maybe [crosstalk 00:48:53] neuro-link will change that. But…
Jon Krohn: 00:48:57
Yeah. So maybe that one wasn’t as paradoxical as I thought. But the second one, okay, that one seems paradoxical. “A week of hard work can save you an afternoon of careful thought.”
Brett Tully: 00:49:06
Yeah. So this is the other end of the spectrum. If you don’t spend your time thinking up front, you can just dive straight in and you can spend a week doing all of this, what you think is really good, hard work, but you get to the end of that week and you realize you’ve built the wrong thing. And if you had a thought about it a little bit more carefully at the start, then you wouldn’t have ended up in that situation. So they’re literally opposite ends of the spectrum. And I think when you work in an unknown environment like R&D and algorithmic development, those two things are always going to be imbalance with each other.
Brett Tully: 00:49:52
And there’s not a right or a wrong place to stand on that continuum. And some people in my team will be much more interested in effectively building prototypes and that’s their way of thinking and designing. Other people might be much more comfortable sitting down with a pen and paper. But I think one of the really clear, or one of the really important skills is to know that those two things exist, that it is a continuum and there are trade offs of being at either end. And figuring out how to frame your projects in that way, I think is one of the really hard skills to judge during interviews, but one of the most valuable skills that you can have once you actually start work.
Jon Krohn: 00:50:44
Yeah. That’s a super interesting point. I think once somebody’s working with you over the course of a few weeks, or certainly a few months, you can start to get the sense that this person is really good at striking that balance. And the way that I think you can tell that that’s happening… So even in this remote working world that I’m in now, still at least, I can tell with people on my team who are getting more done in a given day or a given week than I think is possible. They’re finding this balance just right where they’re spending a little bit of time, making sure that they’re not likely to be totally wasting an afternoon or morning, but spending a little bit of time planning about what’s the right way to do this. Maybe talking to somebody that might have a bit more expertise in part of what you’re working on. And then, yeah. So having a hypothesis as to how the fields can be plowed and then just getting going on it, discovering inevitably that, okay, you can’t plow with this way but it leads you in the right direction and things get done really quickly. And so those people that can strike that balance, I just love working with them. They’re a manager’s dream.
Brett Tully: 00:52:04
Yeah. And I think one of the things or maybe one of the characteristics that sit in people who do that balance really well is they tend to be solution oriented rather than problem oriented. So rather than coming to say, the daily standup with a list of things that are wrong, it’s coming to the daily standup with a, “Here’s my challenge. And here’s my proposal for different solutions, help me choose the right one.”
Jon Krohn: 00:52:32
Well said, exactly right. Okay, cool. So we got onto this because we were exploring what you look for in the people you hire, and you’ve given a really beautiful answer. Thank you for that thoughtful work, Brett. And so that the listener is aware, in true Brett Tully form…. So usually before these episodes, I have to do a lot of research and come up with a structure for the episode. We’re going over a document that Brett prepared before the episode that is kind of, he’d done all my homework for me. And so he’s just got these amazing answers to a lot of the big questions, a lot of the best questions that I could have possibly asked and we’re just going through that. So thank you. And yeah, wonderful guest. Top marks.
Jon Krohn: 00:53:28
Okay. So we’ve talked about what you’re doing today at Nearmap, but we haven’t even gotten into the incredible things that you’ve done in the past, and that have led you to this vast machine learning operations expertise at a top, cutting edge machine learning company. So we can start with when I first knew you, you were doing a PhD in biomedical engineering at Oxford and you were working on a health problem called hydrocephalus, which my PhD’s in neuroscience, so I’m aware of what hydrocephalus is. It’s this condition where people have too much water in their brain. Well it’s not water, it cerebrospinal fluid, which is a liquid in your central nervous system, in your spine and in your brain. But in people with hydrocephalus, they produce too much of it. And so this leads to structural abnormalities in the skull, as well as potentially developmental disorders mentally, because the brain is being squished by the cerebrospinal fluid. So you’re working on this medical problem, hydrocephalus, but you’re doing it from a computational perspective. You’re working with data to model this condition. And even more interestingly perhaps, yours simulating data, as opposed to collecting it. So did I get that right? Did I remember everything correctly?
Brett Tully: 00:55:13
Yes.
Jon Krohn: 00:55:14
And tell us a bit more about [crosstalk 00:55:14].
Brett Tully: 00:55:15
Pretty good memory for 15 years. Yeah. So I guess in many ways I’m like an accidental ML engineer. I came to these problems really as a numerical scientist and my undergrad was mechanical eng and applied maths, and I got really into fluid dynamics just through my courses. And I ended up taking all of that into this biomedical program. And yeah, you’re right. So hydrocephalus is basically, we produce cerebrospinal fluid, really at the center of our brain. So as we develop as an embryo, our brain starts off flat, and as we develop it folds over. And we have these ventricles that sit in the middle of the brain. And they have a bunch of these small cells, which effectively extract fluid out of the blood and that circulates through the brain. And hydrocephalus is when some part of that system gets disrupted.
Brett Tully: 00:56:24
And you can see it a lot in children. So most of that is congenital, as in exists at birth, and can often be associated with other syndromes like down syndrome, if I’m remembering correctly. And that one is perhaps a little bit more intuitive to understand, because there are developmental problems that have already existed or have already happened in the brain. And so the fact that this fluid system has been disrupted is maybe not that confusing. The specific condition I was looking at is called normal pressure hydrocephalus. And this is actually something that happens in old age and the symptoms look very much the same as the symptoms of dementia. So it’s the triad of a bad gait, incontinence and mental decline. But the big difference is, at the moment anyway, we don’t really have ways of reversing things like dementia, but we do have ways of reversing normal pressure hydrocephalus. And so if you can figure out a way to distinguish between which one of those conditions a patient has, then the outlook can be really good if you fall into that hydrocephalus category.
Jon Krohn: 00:57:51
Oh, wow.
Brett Tully: 00:57:53
So yeah, what we were looking at is… I guess maybe these days we think about it as creating data and then running data analysis, in those days, it’s just simulation. So really from first principles, how do we use maths, how do we use partial differential equations to model how fluid should flow through the brain? And so I started working on this idea that a set of, or a system of mathematical equations that get used a lot in the oil and gas industry could be useful for studying how fluid moves around and interacts with tissue in the brain. So they’re called Poro-elastic models. So porous, thinking of things like a sponge. And elastic being how materials respond to stress or to pressure.
Brett Tully: 00:58:50
And there’s a system of equations which relates all of that together. And it probably makes sense to you that if you’ve got like say a sponge, that you’re doing the washing up with, as you squeeze that sponge the porosity of it would change and the ability for water to flow through it would change and stuff like that. So it’s the same kind of idea that we were looking at. But the concept of data and generalization and stuff like that, it’s a really hard one when you start to look at things like this where it’s exceptionally difficult to do experimentation. For all of the good reasons around medical ethics, you can’t just invoke hydrocephalus in a bunch of patients and then do some kind of testing to see whether your model works. And in some senses that’s the real power of modeling in these types of diseases, is that we can try a bunch of different things to explore what might be the cause of this disease.
Brett Tully: 01:00:03
What we found, and one of the real drivers for the research was that the typical way of treating this condition is basically to put a shunt into the skull. So, you literally drill a hole in the skull, create a valve. And when the pressure gets too high, when the fluid builds up too much, you just drain a bunch of fluid out.
Jon Krohn: 01:00:23
Wow.
Brett Tully: 01:00:25
And there had been, at the time, several decades of research, increasing the sophistication of these shunts. While in parts of Africa, there was a bunch of literature showing that they were effectively using first generation models. And there was almost no difference at all in the clinical outcomes. So, decades of research into shunt technology wasn’t driving improved clinical outcome. And we kind of hypothesized that that was because the underlying physics that was driving those designs wasn’t well understood. So, it wasn’t actually… It wasn’t a problem of the absorption of the fluid being the issue, or it wasn’t the way that, the way that people currently thought the fluid was being reabsorbed into the bloodstream, which was basically through the venous sinus, which runs down the center of your skull. So, we came up with this hypothesis that it was actually in the interstitial fluid in the brain tissue itself had some mechanism of changing the way that fluid moved around in the brain.
Brett Tully: 01:01:40
And so, we modeled it and was all very theoretical and very abstract. And in some ways, that’s what I wanted out of my PhD, I wanted to go theoretical because I knew that I was going to spend the rest of my career doing applied stuff, but I also got to the end of it. I was a bit kind of put out by the fact that I would never know whether what I was predicting was actually real. But what was cool was that maybe three or four years after I finished my PhD, there was a bunch of research that came out, completely independent of us, had no relationship at all to what we were doing. But they reported this new experimentally-discovered fluid transfer system in the brain called the lymphatic drainage system, and everything they described in their experimental studies actually fit really neatly with what we come up with in our modeling approach.
Jon Krohn: 01:02:37
Wow. Cool.
Brett Tully: 01:02:37
So, even though it’s completely independent and no one’s taken our models and tried to apply it directly to those experiments, the concepts of it certainly holds true. Yeah, that was quite fun to see, because in some ways, as you know, you write your PhD, you get your viva done, and then, you realize that maybe five people in the world are ever going to all read it, and that’s the sum total of your three and a half years of work.
Jon Krohn: 01:03:09
Did you know, you can actually go… So, you can go to… I can’t remember the site now, but there is… So, like I link to, on my website somewhere like johnkrohn.com/publications or something, I have a link to my dissertation in the Oxford University library. And so, you can actually go and see how many people have downloaded yours and read it. And you might be surprised, it might be quite a bit more than five.
Brett Tully: 01:03:39
Yeah. I might look that up, and either advertise it or not, depending on how big the number is.
Jon Krohn: 01:03:49
But, yeah, so that’s super cool. And so, I love the idea… I never heard you say it then, or I don’t remember you saying it then, and I’ve never heard anybody say this to me before, but that idea of knowing that you want to have an applied career, you want to be doing something that’s having an impact in the world, so to take time in your life and be getting really deep onto a more pure mathematical problem, although this isn’t pure math, it’s still applied to a real problem, you’re not like coming up with the shape of different kinds of donuts, which, even though that maybe didn’t sound like your math is… Yeah, so that’s a really interesting take on why you would study something like that. And very cool to find out after the fact that similar simulations might have been accurate based on new information from real experimental studies. But all of that experience with your data simulation ended up coming in very handy for your next work, which was working on, da- dan-da-da, on nuclear fusion.
Jon Krohn: 01:05:04
So, the approach that the company that you are working at, First Light Fusion takes is mind blowing to me. And I’ve actually, in recent years, I have read about the First Light Fusion approach in The Economist. I read The Economist pretty much every week, and they were talking about fusion power, which really quickly, for audience members who aren’t aware, so, right now, all of the nuclear power plants that we have in the world that are actually generating energy for us, they use fission. So, this involves… fission means splitting. So you have very heavy atoms, very large atoms. I can’t remember the exact number, and you might know this, you might, yeah, know this better than me, but something, there’s a particular atomic weight that atoms are most stable at, and it’s kind of this like middle weight. And so, things that are really heavy, really, really heavy atoms, they want to split to get closer to that moderate weight. But also, atoms that are very small want to fuse to get to that moderate weight.
Jon Krohn: 01:06:20
So, all of our existing nuclear systems are based on this idea of fission, of heavy molecules splitting and becoming two lighter atoms. And it’s in that splitting that an absolutely enormous amount of energy is released following that famous Einstein equation E equals MC squared. So, just a tiny, tiny, tiny, little bit of mass change as a result of this fission results in the amount of energy that’s mass times the speed of light squared, which is, all of a sudden, this enormous amount of energy. That’s fission. Fusion is something that we don’t have today. I mean, well, you could probably speak about this in more detail. We have some experiments that have been run involving fusion energy that, I think, we’ve like maybe just in the last few years, if I remember correctly, we’ve had the first experiments that produced slightly more energy than was required to make the experiment run properly. Because with some approaches, you have to have these like plasmas that are floating in anti… Like you have to make them float, liquid hot plasma and their reaction takes place inside of it.
Jon Krohn: 01:07:31
And I don’t know, you more detail than me, surely, but this company… But the idea here with fusion power is that you could have… Even though… so fission gets a bad press because of slight disasters, like Chernobyl and Fukushima fission gets this really bad rap of being really dangerous. Although in most cases, it is actually quite safe, it’s definitely safer than coal energy in terms of the impact that it has on people’s lungs and people’s health in large areas. So fission has this kind of bad rap, even though I’m a pretty big fan. And so, fusion is seen as this, is potentially this incredible energy source in the future because it could involve things like hydrogen and oxygen, which we can get anywhere fusing together to make water as a byproduct, instead of some nuclear waste. So, anyway, tremendous potential in nuclear fusion. I’ve been speaking way too long as the host of the program. So, let me turn it over to you, and tell us about the First Light approach to fusion, and also, correct everything that I got wrong.
Brett Tully: 01:08:49
No. That’s a pretty good intro. Look, I think it’s interesting to kind of go back to where it started, because how I ended up working there is pretty hard to explain without doing that. And First Light… So, it was originally called Oxyntix, for those who really want to go into the history of the company. It was spun out of the lab where I did my PhD. So, my supervisor was this crazy, cool, incredible researcher who just had his fingers in so many different pies. So, we were based in the Institute of Biomedical Engineering, and the majority of our group was working on fluidics problems related to biology-
Jon Krohn: 01:09:36
Like the hydrocephalus…
Brett Tully: 01:09:37
Like hydrocephalus. Others were working on things like cerebral aneurysms. There were agent-based models of different things like modeling the impact of chemical molecules on blood. So, all simulation, all numerical science largely driven by biological problems. But Yiannis had this kind of side project where he was looking at fusion. So, it started with one of our lab mates. So, Nick Hawker, he was a year behind me, started with his master’s project, and then, kind of moved into to what became his PhD, and therefore, the basis of the IP for the company. But it was this really niche numerical modeling approach. So, treating fluids with completely separate or very distinct properties.
Brett Tully: 01:10:38
So, think of like the interface between water and gas, modeling that numerically is an exceptionally difficult problem because the way that the numerics would work out is you end up with these really stiff kind of sets of equations, which become numerically-unstable. So anyway, there was this really cool super niche numerical modeling tool that was built for solving that problem, and Yiannis, through a kind of weird set of happenstance had ended up figuring out or having this idea of using that modeling approach to study what happens when you compress bubbles of fluid with some kind of high pressure wave in some kind of working liquid. And it wasn’t the driver at the time, but you know, if you kind of do research in this area, you can see that it’s actually something that happens in nature. So, there’s this, this shrimp called the mantis shrimp…
Jon Krohn: 01:11:46
Oh yeah.
Brett Tully: 01:11:46
… which literally snaps its claws together so quickly that it creates a shock wave, and that’s what kills its prey. And there we go, that’s how it has its dinner.
Jon Krohn: 01:11:52
There’s a famous like internet cartoon by The Oatmeal of how those mantis shrimp work.
Brett Tully: 01:11:58
Yeah.
Jon Krohn: 01:11:59
I’ll find that, and put it in the show notes.
Brett Tully: 01:12:01
Yeah. It’s really cool stuff. And there’s high speed video on YouTube and stuff like that, it’s pretty cool stuff. Yeah. So anyway, Nick and Yiannis are using this really complex, really interesting modeling approach to study that phenomena. And they realized that if you do it in a particular way, the conditions inside that gas bubble get really hot, they get really dense. And maybe if you add enough energy into the system, then, you can start to get close to fusion conditions. And so, they filed a bunch of patents, and I guess they were at this kind of fork in the road where you could either say this is very early, really, we should be researching this in an academic environment. I’m going to apply for some grant funding. Or you can say if this technology works, the potential for it is just so massive that there’s got to be some commercial interest around. I’m going to go raise some money. I’m going to raise it from people with patient capital, because I know it’s going to be a long time before there’s an ROI, return on investment. So anyway, they took the second approach. They founded the company called Oxyntix, and I jumped on board as the first employee.
Jon Krohn: 01:13:25
Whoa. So, let’s back up one second here before we get into exactly what you were doing as the first employee at First Light, let me repeat back, for the audience, what the company does.
Jon Krohn: 01:13:37
So, from initially simulations of how different fluids could interact, or different kinds of substances could interact through this simulation research that was initially based in a biomedical engineering department, these guys Yiannis and Dave had this idea to have bubbles collapse, and making these bubbles collapse in a certain way creates so much temperature, so much pressure, both, kind of like these mantises under sea which… So, they use that kind of the supercavitation of these bubbles. They use it to like stun prey or kill prey. And so, that same kind of effect somehow causes, could potentially cause fusion reactions to happen. Did I get part of that right? Any of it?
Brett Tully: 01:14:46
Yeah. I mean, certainly, that’s how the company was founded, and obviously, you know, what is it now? Ten years has passed. So, as you would expect, the sophistication has moved on a little bit from those early days, but yeah, by and large, that was kind of where we started. So, yeah, I kind of jumped in as the first employee. I was running, basically taking over some of the modeling work. Nick was still there and finishing off his PhD. But really, what the company was founded around was this idea that we had to gather some experimental data. And so, we hired Phil, Phil Anderson, who you will remember from those days. And another one, Matt Betney was a student working with us at the time. So, it was really just the four of us sitting in this room in Oxford, yeah, trying to work on fusion, and trying to build out an experiment that could validate these numerical models.
Brett Tully: 01:15:53
And it was just a hell lot of fun. There was just so much energy and excitement in what we were doing, but also, some level of risk. It’s the kind of thing, I think, you do when you’re 20 something and maybe less so when you’re 40 or 50 something. And yeah, I can remember some of the most fun I’ve had, probably in my career actually, is just towards the end of the first year of that company being founded. We’re getting pretty close to the end of our runway, and our experiments just weren’t working. And so, the four of us basically locked ourselves in a room with a bunch of whiteboards, and redesigned the entire thing from the ground up. And Phil went away and built it and got the experiment running. And literally, the first kind of series of experiments, we gathered all of the data we needed to hit our milestones unlocked the next round of cash. And I guess everything else is history at that point. But just that idea that young, ambitious, excited people can get together and genuinely change meaningful things is such an exciting thing.
Jon Krohn: 01:17:07
Yeah. It’s super cool. I mean, so, at that time that you were doing that, you were crammed in that room, running out of runway and finding a way to make this work, now, seven, eight years later, the First Light Fusion has raised $62 million, including from some major well known venture capital firms. So, yeah, so still, we don’t know when… Well, actually, so, instead of me saying we don’t know when, Brett Tully, when do you think, based on your incredible expertise as a fusion expert, how long do you think it is before we have… Well, okay. You know, I guess I could ask like commercial, commercial fusion, it seems like that’s likely in our lifespans from one approach or another, whether it’s supercavitation or some other approach. I know that there are, at least, kind of three major efforts.
Jon Krohn: 01:18:11
And I can’t, off the top of my head, spin on what they are, but three completely different kinds of approaches. Some involving lasers or lava or both. And that, and also, this supercavitation approach that First Light Fusion has. Yes, it seems like, in our lifetime, we could have fusion power, which would be incredible, because it could be this abundant power source. It’s safe, the output is water. And having abundant energy could solve so many problems that we face today, could accelerate the development of third world countries. Even accelerate the development of first world countries, without the need for burning fossil fuels. In fact, we could even be powering systems for carbon capture and reducing the amount of carbon in the atmosphere. So, please, tell us it’s possible and tell us when.
Brett Tully: 01:19:09
So, I’m going to completely dodge the when question, not least of which, because I’m no longer actively working on it. The way I think about these kind of problems is, and this is true for things like AI and healthcare. It’s true for any of the really big grand challenges of engineering. Fast forward a hundred years, and if you can see a future where fusion is a thing in a hundred years’ time, and I can, that tells me that it’s going to happen at some point. Now, the question is when between now and a hundred years from now does that happen? And there’s always that saying of being early is just as bad as being wrong. But I think for these types of things, particularly from a technologist point of view is that that’s just abundantly not true. The point at which that transition happens, it will always be standing on the shoulders of what came before. And so, the fact that we are now entering into this phase where there’s a really significant amount of private investment going into Fusion, it makes me very confident that the problem will be solved. So, there are mainstream approaches that are coming out of national laboratories. So, you have the National Ignition Facility in the US.
Jon Krohn: 01:20:30
Right.
Brett Tully: 01:20:31
You have ITER in the south out France.
Jon Krohn: 01:20:33
Right.
Brett Tully: 01:20:34
Those are the two alternative approaches to fusion that are coming out of the mainstream, incredibly well funded national lab-type approaches, or in the case of this international lab. But you’re starting to see this kind of plethora of startup companies kind of come into existence, and really, receive some fairly significant amounts of funding. You know, there are, I think, more of the tech billionaires now have their hands in, at least, some element of fusion research, and it just seems inevitable. And the reason why I think it seems inevitable, so there’s obviously this race to net zero at 2050. And that’s-
Jon Krohn: 01:21:23
Net zero carbon emission.
Brett Tully: 01:21:24
Carbon emissions.
Jon Krohn: 01:21:25
Yeah.
Brett Tully: 01:21:25
And that’s critically important, obviously, for everything we know about climate change, to really hit that goal. But in my mind, it’s kind of like the… I don’t want to say status quo, because that’s going to get misquoted, but that is really what we need to do to maintain society functioning the way that we currently think of it as functioning. But when you start to think about something like fusion power, so, because it’s based on fuel that is so abundantly available, if you take the current energy usage of the planet, there’s something like 9 billion years worth of deuterium sitting in the world’s oceans. So, as a long term, sustainable fuel source, there’s no reason to think that we would ever run out.
Brett Tully: 01:22:20
And so, in my mind, that doesn’t just become a technology that helps us sustain our current approach to sort of economic activity, and kind of energy usage, that becomes a technology that is a step change in the way that humanity thinks about the availability of, effectively on tap energy. And what we can do with that is, I think, you’ll have a bunch of futurists who can kind of think along those lines, and some of it will be true, and some of it will be so far off the mark, but even if we just think about something as simple as the availability of water, clean water is such a fundamental need of humankind, and yet, the availability of that, particularly, in resource-poor environments is really challenging. But ultimately, turning seawater into drinkable water, potable water is just a question of energy.
Jon Krohn: 01:23:23
Right.
Brett Tully: 01:23:24
And so, if you start to solve the energy challenge, the ability to do all sort of new, and kind of crazy things, I think is really exciting. I think the question of is it going to happen is, yes, I think it is going to happen. I’m sure there’ll be people who disagree, but in my view, there is now enough momentum and enough interest, that there are some of the smartest people I’ve ever met are, are working on that problem. The question of when that happens, and which approach will be the approach that is successful, and I don’t think it’s a winner takes all thing. So, even if one company beats some other company to the first kind of working reactor, I don’t think that’s the end of the game. I think that’s really just the start. So, I think there’s a huge commercial opportunity, obviously. When that’s going to happen? I’m not the right person to ask. I’m too far out of the game now.
Jon Krohn: 01:24:35
Nice. Well, yeah, I mean, I agree with you. It seems like these kinds of facilities like ITER and the National Ignition Facility, they are getting so close to having reliable experiments that produce more energy than it costs to have the reaction happen-
Brett Tully: 01:24:56
So, we haven’t quite got to that stage yet.
Jon Krohn: 01:24:58
We haven’t. Oh, I thought it was…
Brett Tully: 01:25:00
No.
Jon Krohn: 01:25:00
Yeah.
Brett Tully: 01:25:00
So, ITER is based on magnetic fusion, and it hasn’t been switched on yet, so it’s still under construction. Will be, I think, until mid this decade. But it’s based on a previous experiment, down the road from us in Oxford in… So the Joint European Torus, and I think they… Don’t quote me on the numbers, but they got to something like 0.8 energy out, compared to energy in, something like that.
Jon Krohn: 01:25:29
Right. Right, right, right.
Brett Tully: 01:25:31
The National Ignition Facility though has made some really big strides forward in the last probably five years. And it was just a couple of months ago where they announced some experiments where they started to get… I think they got more energy out than the energy that was put into the target, which is different to the amount of energy that it took to kind of get the lasers started up and stuff like that.
Jon Krohn: 01:25:55
Right. Right, right, right.
Brett Tully: 01:25:55
So they have… Right? Because they’re using lasers, lasers are a very inefficient way of delivering energy into the target, so there’s quite a lot of wastage before you even get to that point.
Jon Krohn: 01:26:06
Right.
Brett Tully: 01:26:07
But the-
Jon Krohn: 01:26:08
So, maybe that’s the thing…
Brett Tully: 01:26:09
Yeah. It-
Jon Krohn: 01:26:09
… that I was reading about, that it’s like, okay, we’re getting more energy out at like when the experiment’s actually running, or something, but it’s…
Brett Tully: 01:26:16
Yeah.
Jon Krohn: 01:26:16
… That does include… Yeah, energy, getting it going.
Brett Tully: 01:26:20
And it shouldn’t be underestimated that that’s a massive breakthrough. And even that, some people didn’t think was going to be possible. It certainly caused a lot of excitement in the field.
Jon Krohn: 01:26:33
Cool. So, tell us a bit about the tools that you used in both of those jobs, in both the hydrocephalus modeling, I mean, job, PhD, whatever. It’s kind of like a job. In those two roles, so modeling hydrocephalus during your PhD, as the head of simulation to First Light Fusion, what kinds of tools do you use to simulate data?
Brett Tully: 01:26:58
Yeah. So, if we start with the PhD, that was based around a commercial fluid dynamics platform. And what I was doing was kind of writing like plugins that would sit in the back end of that. So, as it would solve its system of equations, I could basically augment that with additional terms, and for my [SINs 01:27:24], that was Fortran. So, I was running-
Jon Krohn: 01:27:27
Not kidding?
Brett Tully: 01:27:28
Yeah.
Jon Krohn: 01:27:28
What was the commercial tool called?
Brett Tully: 01:27:30
I can’t think of the name off the top of my head.
Jon Krohn: 01:27:33
Oh, yeah. Yeah, yeah, yeah.
Brett Tully: 01:27:34
Its been so long.
Jon Krohn: 01:27:36
Yeah. If you remember, then…
Brett Tully: 01:27:38
I can [crosstalk 01:27:39].
Jon Krohn: 01:27:39
… we can put in the show notes later.
Brett Tully: 01:27:40
Yeah.
Jon Krohn: 01:27:41
Yeah.
Brett Tully: 01:27:41
Yeah.
Jon Krohn: 01:27:42
But then, you have to use Fortran to interact with that commercial application?
Brett Tully: 01:27:46
Yeah. Yeah, that, I guess is… Yeah, Fortran is still very much a language of numerical science, and there are still a lot of people actively working on that. That Fortran was not the fun Fortran, if that is even a thing that came with it.
Jon Krohn: 01:28:07
[inaudible 01:28:07] the F stands for, right?
Brett Tully: 01:28:08
From what I understand, modern Fortran is much nicer to work with. What I was doing was not. So, anyway, that’s kind of where that was… That was kind of working. I had prototypes written in Python, and that’s how I did my fast iteration. And then, when I got things that I thought were sensible, they got moved into the Fortran plugin for that commercial software. And what that meant I could do is I actually had CT scans of patients. And so, I could effectively what we would call generate a mesh. So take a 3D, I guess, build a 3D representation of the fluid channels in that brain. And then, that’s what I would use as part of my simulation. So, that would go into the fluid solver. And you could simulate the move of CSF with these kind of adjusted terms. First Light was different. It was almost as far away from commercial as you could imagine from the software point of view. So, I mentioned that the model part was very niche. When I started, Nick had been using this piece of software called FronTier that had been developed by Stony Brook University. It’s about 500,000 lines of C. That project started in about 1970.
Jon Krohn: 01:29:41
Oh, wow.
Brett Tully: 01:29:44
And was basically object-oriented C, and written before C++ even existed.
Jon Krohn: 01:29:50
Right.
Brett Tully: 01:29:51
It was full of function pointers. I think when it was first designed and built, was probably extremely cutting edge from a software engineering point of view. But in the 40 years, since it had been modified and hacked together by a bunch of PhD students and that beautiful design didn’t really exist anymore. So my job when I first started was to extend it and add new features and stuff, an absolute nightmare. It was slow. It was cumbersome. We had to design the things that we were simulating. We had to build in C. So if you wanted to draw a circle, you had to literally write C code to draw a circle. And yeah, it was slow and cumbersome and not a good use of the very small amount of money that we’d raised. So we actually got together and we decided that we would propose a rewrite and rewriting 500,000 lines of C that have been written over 40 years.
Jon Krohn: 01:30:59
Yeah.
Brett Tully: 01:30:59
And a couple of 20 somethings think that they can do that offer a small amount of venture funding. But in the end, we got the go-ahead. So we raised a little bit more money from the investors to fund that. And it took, with some external consultants helping, about nine months to fully replicate the functionality. And what was great about it, a few different things that we did, which turned out to be really, really valuable. First of all, this idea of data science software being a two-language problem. So putting your really high-performance stuff into a high-performance language, but making sure the user interface is Python. So scripting user interface. So people are writing code. But they are writing Python, they’re not writing C or C++ or whatever else. And then that way you’re sort of balancing the needs of high-performance with the needs of getting experimental physicists to run simulations of their experiment.
Jon Krohn: 01:31:57
Yeah, yeah.
Brett Tully: 01:31:58
And you don’t want them to be, to be worrying about compiled languages.
Jon Krohn: 01:32:02
Yeah. It’s similar to today when you do a lot of linear algebra operations in Python in the back end though it is running in older languages like Fortran.
Brett Tully: 01:32:11
Exactly. Yeah. In fact, you could probably say that pretty much everything in the data stack is built with these high-performance compiled binaries with effectively a nice scripting language sitting in on top of the user interface.
Jon Krohn: 01:32:26
Uh-huh (affirmative).
Brett Tully: 01:32:28
But the other cool thing that we did was, so I mentioned before that we were modeling the interface between different fluid types. So like water and air or whatever the case may be. And we were doing that using what we called a Lagrangian grid. So basically it was a two-grid solution. The background mesh, which is common in kind of fluid-solving things is just like squares, and material flows in and out of those squares. And that’s fixed. So we’d call that an Eulerian grid. The Lagrangian grid that sits on top basically tracks the interface between those materials. And so that effectively becomes a computational geometry problem. And so, when we designed this code, we split those two things out as very unique concepts. And that effectively allowed us to test the Lagrangian part of the software completely independently of any physics. And that was where we had found most of our problems with that old C library.
Jon Krohn: 01:33:34
Mm-hmm (affirmative).
Brett Tully: 01:33:35
So by splitting that out, having a really clear testing strategy, we could deal with the majority of problems we knew were going to exist completely independently of worrying about plasma physics, which we knew was going to be some other very substantially difficult challenge.
Jon Krohn: 01:33:50
Uh-huh (affirmative).
Brett Tully: 01:33:51
But by separating those two concepts out in the software meant we could actually move a lot faster.
Jon Krohn: 01:33:58
Cool, really good explanation at a low level of what you were doing there. So then from that simulation work that you were doing in the PhD, and then at the fusion company at First Lite Fusion, you then moved to Australia. You moved back to your home country, not your hometown, cause you’re from Brisbane, but you moved back to Sydney and you worked on human cancer. So you worked on a project. I guess it was kind of academic, right. There was a lot of focus on publishing papers. It was part of a medical research institute, the Sydney Children’s Medical Research Institute. And so, you were working on the ProCan project, which was studying the Proteome of human cancer. So we in a kind of systems biology perspective, all of your genetic information, all of your DNA, we call that our genome. So all the genetic information is a genome. There is an analogous kind of idea with all of the proteins in your body, we could catalog this as the Proteome, which I imagine is a much tougher task, because DNA very nicely is this information store, it’s linear. And so, it was a huge undertaking to sequence the first human genome, but now it’s relatively trivial.
Jon Krohn: 01:35:25
And because you just have to devise a system that could reliably read this long string of letters. Well, it’s not as simple as letters, but a molecular structure that we encode as letters, but it’s just repeats of these of four possible. Unlike genetic information, which is all conveniently packaged onto DNA, proteins are floating all over the body. Yeah, so I imagine there’s all kinds of complexity with studying a Proteome, but nevertheless today, we can examine, okay, what is a “healthy Proteome” like? And then, how is it different, say under cancer conditions? And so, the idea being that if you can identify new differences, then we can maybe identify new causes of the cancer, do solutions to particular types of cancer. I hope I’m presenting that somewhat correctly. And again, you can correct me on what I’m wrong about. But so at Sydney Children’s Medical Research Institute working on this Proteome of Human Cancer Project, eventually there you were a group leader of software engineering. Yeah, so I guess that’s another really kind of interesting application of data science. Yeah, so I don’t know what you want to jump into there, but describing the problem, talking about the software tools that you were using to analyze the data that you had would be very interesting.
Brett Tully: 01:37:06
Yeah, I guess first off, you mentioned the genome and the Proteome and the way that we used to conceptualize those in that program is the genome might help us understand the cause of cancer. So it might be something that’s congenital in kids like some genetic defect. It might be something that’s environmental, like skin cancer, where UV rays have caused mutations in your genome. What the Proteome helps us understand is how to treat the cancer. That’s the idea. And the reason we say that is the majority of cancer treatments operate at the protein level. And so, there’s a hypothesis that’s getting tested in that program of work is that if you can collect the Proteome of tens of thousands of cancers across all different cancer types, it can then become a data science problem to see what are the commonalities, what are the proteins that are stable in the population so they can be ruled out. You might be able to start doing things like, there’s one cohort of people with one particular cancer type who respond really well to a particular drug. But then it turns out that there’s another cohort of people who from a Proteomic point of view look very similar to that group, but a completely different cancer. And maybe that treatment that worked for column A might also be applicable to column B. So that kind of transfer of treatments across different cancer types.
Jon Krohn: 01:38:48
Yeah.
Brett Tully: 01:38:50
The other thing that, so obviously being a children’s medical research institute, one thing that was a fundamental interest to the program is what can we learn about childhood cancer by studying lots of adult cancer. And the reason for that is childhood cancer is very rare, thankfully, but when it does happen, it’s normally quite tragic. And gathering the data for childhood cancer would be very difficult to gather enough samples, to be able to turn that into a data science problem. But hopefully, we can learn things about the protein structures in cancer generally and use that to start guiding some of the treatments in childhood cancer. It’s going to take time to be able to do that. You need to build up this database of knowledge, of how protein interactions and protein structures work, but if it can happen then that would be a kind of major breakthrough in the way that we deal with some really sad situations. So yeah, basically my role there is or was not that dissimilar to what I do currently. It’s just that the underlying algorithms were completely different.
Jon Krohn: 01:40:16
Right.
Brett Tully: 01:40:16
So we effectively had large pipelines of algorithmic work where… So I guess just taking half a step back, how do we actually get a Proteome? So the experimental technique that was being used in ProCan was this concept known as Data-independent acquisition mass spectrometry. So basically you would take a sample of the cancer and you would run that through some lab process, which would basically break that tissue down into peptides. So using enzymes, synthetic versions of the enzymes in your gut, and stuff like that, we can effectively unfold the 3D structure of the protein and snip it up into little pieces. And then you can inject that into a mass spectrometer. And for those who don’t know, that’s basically a large electromagnetic system, which just uses Maxwell’s equations. You charge your particles going in, and then depending on how much they weigh, they’ll kind of go through that system in different times and they’ll be put to different amounts by the electric field.
Jon Krohn: 01:41:29
Basically, you can uncover the structure of a compound. You can say, you put the substance through the mass spectrometer and based on a signature that it produces, you can kind of reverse engineer what exactly the atoms are that are in that molecule.
Brett Tully: 01:41:48
Yeah, if not atoms the kind of clumps of particles. And so for us, we would be looking at their peptides or fragments of peptides. And then, it becomes kind of like this library pattern matching, where you take your signal that comes out of the mass spectrometer, and you have to build that back into what the input was. So that kind of reverse pattern match or reverse lookup. That was the type of stuff we were doing in our system. So we were using at the time, an open-source tool called OpenSwath, which was developed out of the University of Zurich. And we were putting that inside Docker containers. We were running that on Kubernetes. Kubeflow didn’t exist at the point, we were building that out. And so, we’d written our own kind of workflow engine that was creating Argo Workflow, YAML specs directly. And we were running a hybrid cluster where we had on-premise compute and we had burst in capability out into AWS.
Brett Tully: 01:42:59
And yeah, so each sample of the cancer would produce a couple of gigabytes of raw data. And our ultimate goal was to run all these kind of pattern matching and basically get to the point where we could say basically what the amount of each peptide, and then that can get rolled up into the amount of each protein existed within that sample. And we would effectively produce an Excel spreadsheet or a CSV file with that information in it. And that is then what would go to our data science team and the data science team would then start to look at a lot of what you would see in traditional genomics research. So unsupervised clustering, and all of that kind of stuff, lots of challenges around normalization and kind of experimental effects. And I think that was one of the really interesting kind of developments for me, moving from a bit more fundamental sort of mechanical engineering simulation stuff into biology was reproducibility is very, very different. Biological systems have a lot more variance experimentally than what you would get out of, maybe more. Certainly, [they’re the worlds 01:44:20] that I was used to.
Brett Tully: 01:44:21
I would say that that was probably one of the things that led me a lot to the way I think about [inaudible 01:44:29] and the way that I think about correctness in these systems and it kind of started at First Lite and then moved into what I was doing at ProCan. And that is this idea that kind of correctness of results needs to be a first-class citizen and somewhat surprisingly, that isn’t always true in a way that people think about data science problems. They can think a lot about getting results. And you can think about monitoring over time. And maybe you think about correctness in aggregate, but actually, for a lot of these things and where I see kind of AI going in future, it’s no longer sufficient to think about the accuracy of results or the correctness of results in aggregate. You have to start thinking about the correctness of results for individual samples. And I think that’s quite an interesting thing that we as a field need to start putting a bit more effort into thinking about. I kind of remember back to the First Lite days, we had an independent scientific review of the work we were doing. And one of the profs who was involved in that was the head of experimental physics, I think his title was at Imperial College. And he basically self-described his career as being devoted to building experiments that broke numerical models.
Jon Krohn: 01:45:59
Mm.
Brett Tully: 01:46:00
And I think that’s something that I think AI could do generally a little bit better is to think specifically about how to build experiments, to really test the edges of the models and stuff like that.
Jon Krohn: 01:46:16
Cool, yeah, great points about where we could be making strides, not only with artificial intelligence research, but specifically in medicine towards this kind of personalized individual-level medical analysis, as opposed to just an aggregate level, which obviously people are being treated, not in aggregate, but you get treated as an individual. And so, your particular genetics, your particular Proteome, your particular cancer can be critical to how you respond to a given treatment. And so, yeah, some really great points there and yet another incredible… Over your career, you’ve applied, to kind of summarize what you’ve been doing over the years. You’ve been using data, you’ve been using large scale data in a lot of cases that is made practical by Clean Code software engineering principles and apply these ideas to study very difficult numerical problems across brain imaging or neuroscientific disabilities across fusion power across cancer, and now massive, massive-scale machine vision from aerial imagery.
Jon Krohn: 01:47:52
And so, I knew we were going to have an incredibly interesting conversation. And if anything, you overshot the mark because… Yeah, I mean, we could have talked about one of those four examples for an entire hour-long episode. So thank you for giving us kind of the summary level of it, as well as specifically how software and data science tools are useful in those phases. So to start to move towards conclusion of the episode, what do you see are big applications of artificial intelligence that could materialize over the coming years? You’ve seen machine learning techniques, data simulation techniques applied in all these different cutting edge fields. Yeah. So you probably have a unique perspective on what’s possible in the future.
Brett Tully: 01:48:53
Yeah, look, so I think it’s kind of inevitable that AI moves the way of other numerical science applications and that it moves from kind of the spoke R and D into more of like an industrial engineering-type set up where you have some kind of easy to understand, easy to use user experience that really hides away a lot of the technical detail of what’s happening behind the scenes. And in many ways, this is kind of already happening. We’re seeing some of the big tech companies provide kind of products with simple to use APIs and stuff like that. And that’s kind of following the practices of things like commercially available fluid dynamic software, or commercially available CAD systems with finite element analysis and stuff like that. CAD for those who don’t know, computer-aided design. So if you’re a typical structural engineer, and you’re trying to figure out whether your bridge design is going to stand up. You’re sitting inside your CAD application, you’ve got your design there, and you can run a bunch of simulations to figure out whether the stress is handled in the right way. The chances are that people running those types of simulations might have a superficial understanding of what’s going on under the hood.
Brett Tully: 01:50:19
But the chances are they don’t really understand nor do they need to understand the technical detail [of that’s 01:50:26] going on or what’s going on. And they certainly aren’t necessarily going to be the people that are sitting in university environments, designing the latest and greatest like [high-low 01:50:38] method or whatever the case may be. They’re using the tool to get stuff done in the real world. And I see that AI is going to go in a similar direction. There’s going to be a bunch of stuff like the whole no-code movement and stuff like that, where researchers and product companies are building the algorithms behind the scenes, and then putting a nice user interface on top of that. But I think what’s really interesting with that, and I do believe that is the inevitable future, but there’s a big risk, which I haven’t seen a lot of people talk about. And that’s, if we take industrial engineering there’s some fairly deep professional standards. And those professional standards have real teeth. If a chartered engineer signs off on a bridge design and that bridge falls down, there is real tangible professional liability to that engineer.
Jon Krohn: 01:51:35
Yeah.
Brett Tully: 01:51:36
But we’re not really talking yet about that in the AI space. So what happens if someone builds a product that sits on top of, [I don’t know, 01:51:46] CT scans, which tells the doctor, yes, no, this person has a tumor, whatever kind of simple interface that’s going to end up with. At the moment, it feels like the cost of being wrong is quite low in AI. And I think maybe that’s partly because we’re coming out of this world of data science being used in aggregate where often the cost of being wrong is also in aggregate. So if you’re using AI to trade shares, losing out on one deal is not a big thing. It’s only if you lose out on all your deals, that it becomes a big thing.
Jon Krohn: 01:52:27
Yeah. Yeah. Or serving the wrong [ad once 01:52:30] doesn’t make any difference at all.
Brett Tully: 01:52:33
Exactly. And so how we flip as an industry, and it’s not going to be all use cases. So all of those types of examples that we just talked about, they’re going to continue to exist, but the cases where we are predicting results for an individual thing and where the cost of being wrong on that individual thing are tangible important decisions. It’s going to be really interesting to see how we tackle that as a field.
Jon Krohn: 01:53:03
Yeah. Yep. Really great points. I love that perspective. Yeah, huge amount of potential coming, but definitely ethical considerations that we need to account for. The medical example is a perfect example. The attending physician does a Proteome test, takes your temperature, and puts. And the machine says, okay, well, it’s this kind of cancer, you need this kind of treatment. And then, it’s wrong. The patient dies. And maybe there was something wrong with the way it was programmed or the way that the model was trained. It wasn’t prepared for this particular kind of edge case. And in fact, it provides exactly the opposite of what you should be doing in this edge case scenario and a life was lost. So who is liable. So, yeah, yeah, really good points. Brett’s, we could easily talk for hours more, but in the interests of wrapping up the episode at some point, I’ve got one last question for you, which is if you have a book recommendation for us?
Brett Tully: 01:54:23
I have to admit that I don’t have a lot of time for reading at the moment. I have a young kid that I’m constantly chasing around, but what that means is that when I do read something that sticks in my head as a good book, [anyway 01:54:38] it does stick there.
Jon Krohn: 01:54:39
Children’s bedtime story [that you couldn’t 01:54:41] recommend.
Brett Tully: 01:54:42
[crosstalk 01:54:42] I’m not going to recommend Where’s Spot to your listeners.
Jon Krohn: 01:54:47
Oh, you just did.
Brett Tully: 01:54:52
No. The last book I remember reading that really lodged in my brain was the Martian. It’s quite short. It’s quite a cool take on what would happen if someone got stuck on Mars, how they would survive for those who are interested, it’s really well done. It’s pretty well researched. It is somewhat plausible for a sci-fi book. And it’s just really well-written, entertaining read.
Jon Krohn: 01:55:23
This was turned into a major motion picture, was it not.
Brett Tully: 01:55:26
It’s certainly was Matt Damon, science [inaudible 01:55:28] data things.
Jon Krohn: 01:55:33
Oh, man. All right. And then Brett, clearly you are a brilliant guy accomplishing an absurd amount, empowering data science with machine learning operations across vast fields, fusion energy, cancer. Listeners are going to want to be able to follow you. What should they do? What’s the best place?
Brett Tully: 01:55:57
So I’m on LinkedIn, I’m on Twitter. I’m not hugely active on either, but that’s definitely the place to get in touch. So most of my Twitter feed is spam about fusion.
Jon Krohn: 01:56:14
Nice. Well, that sounds pretty good. That was definitely [crosstalk 01:56:16].
Brett Tully: 01:56:15
Come there for retweets.
Jon Krohn: 01:56:17
Yes. It is definitely an interesting part of the conversation for me, I will be on the lookout for those. Of course, I already follow you. But yeah, fusion, in particular, it’s like a really exciting socially game changer for everyone on the planet. And so, I really do hope that’s coming soon and I’ll be watching your Twitter feed to get a clearer picture of when. Thank you so much, Brett, for being on the show. And hopefully, sometime we can catch up with you again in the future
Brett Tully: 01:56:46
I can’t wait, mate. Thanks for having me.
Jon Krohn: 01:56:55
Man, did I ever enjoy catching up with Brett today? I hope you enjoyed the fascinating wide-ranging conversation as much as I did. In today’s episode, Brett expanded my mind on how the AI output systems function of an AI systems organization can fit alongside the model R&D and the model systems teams to maximize the productivity of a massive scale machine vision company like Nearmap. He also covered the Kubernetes, Kubeflow, and Kafka tools that Brett and his team of machine learning engineers deploy to create an efficient pipeline of AI pipelines and save up to 80% of their compute cost by using AWS Spot Instances. He talked about the GeoPandas library that he recommends for working with geospatial data in Python. He talked about how normal pressure hydrocephalus presents like dementia, but if correctly diagnosed early can be treated completely and reverse cognitive impairments. And he let us know how critical machine learning operations, for example, by leveraging Docker and Kubernetes is for efficiently working on huge healthcare data sets like cancer Proteome data.
Jon Krohn: 01:58:01
As always, you can get all the show notes, including the transcript for this episode, the video recording, any materials mentioned on the show, the URLs for Brett’s LinkedIn and Twitter profiles, as well as my own social media profiles at www.www.superdatascience.com/533, that’s www.www.superdatascience.com/533. If you enjoy this episode, I’d greatly appreciate it if you left a review on your favorite podcasting app or on the SuperDataScience YouTube channel. I also encourage you to let me know your thoughts on this episode directly by adding me on LinkedIn or Twitter and then tagging me in a post about it. Your feedback is invaluable for helping us shape future episodes of the show. All right. Thanks to Ivana, Mario, Jaime, JP, and Kirill on the SuperDataScience team for managing and producing another mind-blowing episode for us today. Keep on rocking it out there, folks, and I’m looking forward to enjoying another round of the SuperDataScience Podcast with you very soon.