Saving State while Still Growing with Temporal's Preeti Somal
Read full transcript 25 segments
-
There's something new from our sponsor, There's something new from our sponsor, Text Control. For decades, TXT Controls Text Control. For decades, TXT Controls Text Control. For decades, TXT Controls rendering was tied to Windows rendering was tied to Windows rendering was tied to Windows functionality, but now it's a new era. functionality, but now it's a new era. functionality, but now it's a new era. TXT text control is platform TXT text control is platform TXT text control is platform independent. You can run your .NET independent. You can run your .NET independent. You can run your .NET applications on Windows or Linux. Deploy applications on Windows or Linux. Deploy applications on Windows or Linux. Deploy with Docker containers, Kubernetes, or with Docker containers, Kubernetes, or with Docker containers, Kubernetes, or host directly in Azure App Services. host directly in Azure App Services. host directly in Azure App Services. Seamlessly integrate document editing, Seamlessly integrate document editing, Seamlessly integrate document editing, signing, collaboration, and PDF signing, collaboration, and PDF signing, collaboration, and PDF processing into your ASP.NET Core and processing into your ASP.NET Core and processing into your ASP.NET Core and Angular applications. Are you ready to Angular applications. Are you ready to Angular applications. Are you ready to see it in action? Check out the live see it in action? Check out the live see it in action? Check out the live demo at demos.extcontrol.com. Hi, I'm Scott Hansel and this is another Hi, I'm Scott Hansel and this is another episode of Hansel Minutes. Today I have episode of Hansel Minutes. Today I have episode of Hansel Minutes. Today I have the pleasure of chatting with Priy the pleasure of chatting with Priy the pleasure of chatting with Priy Somal. the senior VP of engineering at Somal. the senior VP of engineering at Somal. the senior VP of engineering at Temporal Technologies. How are you?
-
Temporal Technologies. How are you? Temporal Technologies. How are you? >> I'm great, Scott. Thanks for having me >> I'm great, Scott. Thanks for having me >> I'm great, Scott. Thanks for having me on the podcast today. on the podcast today. on the podcast today. >> Yeah, thanks for spending time with me. >> Yeah, thanks for spending time with me. >> Yeah, thanks for spending time with me. You know, when I love talking about You know, when I love talking about You know, when I love talking about people's LinkedIns cuz I go to one's people's LinkedIns cuz I go to one's people's LinkedIns cuz I go to one's LinkedIn and you get a sense of who they LinkedIn and you get a sense of who they LinkedIn and you get a sense of who they are. It's more than a resume. It's a are. It's more than a resume. It's a are. It's more than a resume. It's a timeline and it feels to me like you timeline and it feels to me like you timeline and it feels to me like you have been a cloud person since before we have been a cloud person since before we have been a cloud person since before we said cloud. You've been doing big said cloud. You've been doing big said cloud. You've been doing big systems for years. systems for years. systems for years. >> Absolutely. In fact, uh it's >> Absolutely. In fact, uh it's >> Absolutely. In fact, uh it's interesting. I was part of an interesting. I was part of an interesting. I was part of an organization back in 2013 that was organization back in 2013 that was organization back in 2013 that was called the platforms organization long called the platforms organization long called the platforms organization long before platforms was a thing. So yes, before platforms was a thing. So yes, before platforms was a thing. So yes, I've been doing this for longer than I I've been doing this for longer than I I've been doing this for longer than I would care to admit. But you're would care to admit. But you're would care to admit. But you're absolutely right. absolutely right. absolutely right. >> Yeah, you've worked at VMware, you >> Yeah, you've worked at VMware, you >> Yeah, you've worked at VMware, you worked at Yahoo, you worked at Hasha worked at Yahoo, you worked at Hasha worked at Yahoo, you worked at Hasha Corp. When when did you when did the Corp. When when did you when did the Corp. When when did you when did the when did the the cloud that concept of when did the the cloud that concept of when did the the cloud that concept of the cloud like click for you? When did the cloud like click for you? When did the cloud like click for you? When did you was it around 2013? Like how many you was it around 2013? Like how many you was it around 2013? Like how many years has it been now? 15 years. 2020 years has it been now? 15 years. 2020 years has it been now? 15 years. 2020 2010 2010 2010 >> actually I would say uh 2008 uh this was >> actually I would say uh 2008 uh this was >> actually I would say uh 2008 uh this was sort of early VMware days and um you sort of early VMware days and um you sort of early VMware days and um you know the challenge back then was know the challenge back then was know the challenge back then was virtualization was like super virtualization was like super virtualization was like super wellestablished and uh one of the wellestablished and uh one of the wellestablished and uh one of the projects I led was a project called lab projects I led was a project called lab projects I led was a project called lab manager which was hey how do developers manager which was hey how do developers manager which was hey how do developers get their virtual machines without get their virtual machines without get their virtual machines without needing to go through a ton of work um needing to go through a ton of work um needing to go through a ton of work um and so I think some of patterns around and so I think some of patterns around and so I think some of patterns around selfserve developer focus things like selfserve developer focus things like selfserve developer focus things like that were already emerging back then.
-
that were already emerging back then. that were already emerging back then. So we are now 17 almost 18 years. We So we are now 17 almost 18 years. We So we are now 17 almost 18 years. We almost have an adult when we think about almost have an adult when we think about almost have an adult when we think about the cloud. Um but still people are the cloud. Um but still people are the cloud. Um but still people are naively and I hope that's an okay term naively and I hope that's an okay term naively and I hope that's an okay term to use naively lift and shifting almost to use naively lift and shifting almost to use naively lift and shifting almost two decades in like that's what we did. two decades in like that's what we did. two decades in like that's what we did. We moved you know for the for a time the We moved you know for the for a time the We moved you know for the for a time the cloud was other people's computers. We cloud was other people's computers. We cloud was other people's computers. We would pick up a VM and we'd put it over would pick up a VM and we'd put it over would pick up a VM and we'd put it over there. uh but it would stay stateful and there. uh but it would stay stateful and there. uh but it would stay stateful and but then then when we say cloudnative I but then then when we say cloudnative I but then then when we say cloudnative I think about that as being an um an think about that as being an um an think about that as being an um an application that knows that the cloud application that knows that the cloud application that knows that the cloud exists and we think about state entirely exists and we think about state entirely exists and we think about state entirely differently. My first question is why differently. My first question is why differently. My first question is why are people still naively lifting and are people still naively lifting and are people still naively lifting and shifting and not taking advantage of shifting and not taking advantage of shifting and not taking advantage of opportunities around how they manage opportunities around how they manage opportunities around how they manage state two decades into the cloud? state two decades into the cloud? state two decades into the cloud? >> Great question. Um, I'm not sure I have >> Great question. Um, I'm not sure I have >> Great question. Um, I'm not sure I have an answer for you, but it's certainly an answer for you, but it's certainly an answer for you, but it's certainly puzzling. And it's also, I think, what's puzzling. And it's also, I think, what's puzzling. And it's also, I think, what's so fascinating for me working at so fascinating for me working at so fascinating for me working at Temporal. Um, because Temporal really is Temporal. Um, because Temporal really is Temporal. Um, because Temporal really is a solution to make sure that you are a solution to make sure that you are a solution to make sure that you are taking advantage of all of the taking advantage of all of the taking advantage of all of the capabilities. But you do have to capabilities. But you do have to capabilities. But you do have to rethink. You can't do a lift and shift.
-
rethink. You can't do a lift and shift. rethink. You can't do a lift and shift. you have to really think about you have to really think about you have to really think about outsourcing all of your reliability, outsourcing all of your reliability, outsourcing all of your reliability, resiliency, resiliency, resiliency, uh sort of challenges over to Temporal. uh sort of challenges over to Temporal. uh sort of challenges over to Temporal. >> Yeah. So the solution that temporal >> Yeah. So the solution that temporal >> Yeah. So the solution that temporal provides is one of of durability. It's provides is one of of durability. It's provides is one of of durability. It's sitting not just on top of cloud sitting not just on top of cloud sitting not just on top of cloud infrastructure and abstracting away infrastructure and abstracting away infrastructure and abstracting away that. It seems like it's even higher that. It seems like it's even higher that. It seems like it's even higher level. It's abstracting away common level. It's abstracting away common level. It's abstracting away common business problems. And one of the common business problems. And one of the common business problems. And one of the common problems is failures happen. That's a problems is failures happen. That's a problems is failures happen. That's a thing. And uh help me understand what thing. And uh help me understand what thing. And uh help me understand what are the things that Temporal is hiding are the things that Temporal is hiding are the things that Temporal is hiding from me as an infrastructure person or from me as an infrastructure person or from me as an infrastructure person or as a developer. as a developer. as a developer. >> Absolutely. So um for for those who may >> Absolutely. So um for for those who may >> Absolutely. So um for for those who may not know Temporal, our mission really is not know Temporal, our mission really is not know Temporal, our mission really is to shield developers from all of these to shield developers from all of these to shield developers from all of these complexities that come with managing complexities that come with managing complexities that come with managing state and building resilient state and building resilient state and building resilient applications. Right? So we like to think applications. Right? So we like to think applications. Right? So we like to think about durability as what if your code about durability as what if your code about durability as what if your code never fails. Now we all know that code never fails. Now we all know that code never fails. Now we all know that code does fail and what temporal really does does fail and what temporal really does does fail and what temporal really does is makes that failure inconsequential.
-
is makes that failure inconsequential. is makes that failure inconsequential. So a developer is essentially just So a developer is essentially just So a developer is essentially just focusing on building their business focusing on building their business focusing on building their business logic and we are handling all of the logic and we are handling all of the logic and we are handling all of the retries, state management, all of the retries, state management, all of the retries, state management, all of the complexities around making sure these complexities around making sure these complexities around making sure these failures are inconsequential. failures are inconsequential. failures are inconsequential. >> Mhm. So if I had today in the year of >> Mhm. So if I had today in the year of >> Mhm. So if I had today in the year of our Lord 2025 some virtual machine that our Lord 2025 some virtual machine that our Lord 2025 some virtual machine that is old and I'm shifting it into the is old and I'm shifting it into the is old and I'm shifting it into the cloud, what would I change in that? cloud, what would I change in that? cloud, what would I change in that? maybe a decade old application for it to maybe a decade old application for it to maybe a decade old application for it to take advantage of temporal if it was take advantage of temporal if it was take advantage of temporal if it was just a simple infrastructure as a just a simple infrastructure as a just a simple infrastructure as a service lift and shift versus maybe service lift and shift versus maybe service lift and shift versus maybe writing something with temporal at the writing something with temporal at the writing something with temporal at the heart of it today like a file new green heart of it today like a file new green heart of it today like a file new green field application. field application. field application. >> That's a great question. Um cuz as we >> That's a great question. Um cuz as we >> That's a great question. Um cuz as we know you know for a lot of the software know you know for a lot of the software know you know for a lot of the software out there green field isn't necessarily out there green field isn't necessarily out there green field isn't necessarily uh an immediate sort of option. So the uh an immediate sort of option. So the uh an immediate sort of option. So the way you would do this is for for one of way you would do this is for for one of way you would do this is for for one of those old VMs was you would essentially those old VMs was you would essentially those old VMs was you would essentially wrap that VM into a temporal abstraction wrap that VM into a temporal abstraction wrap that VM into a temporal abstraction called an activity. Um and that's how called an activity. Um and that's how called an activity. Um and that's how you wrap anything that is sort of you wrap anything that is sort of you wrap anything that is sort of failure uh failure um uh prone into the failure uh failure um uh prone into the failure uh failure um uh prone into the temporal programming model. Now the temporal programming model. Now the temporal programming model. Now the problem with that of course is it's a problem with that of course is it's a problem with that of course is it's a big hammer. you are kind of taking that big hammer. you are kind of taking that big hammer. you are kind of taking that whole VM and putting that into an whole VM and putting that into an whole VM and putting that into an activity and so your recovery the sort activity and so your recovery the sort activity and so your recovery the sort of granularity of your recovery will be
-
of granularity of your recovery will be of granularity of your recovery will be equally sort of um uh large in that you equally sort of um uh large in that you equally sort of um uh large in that you know you're you're not going to be able know you're you're not going to be able know you're you're not going to be able to get more precise control over all of to get more precise control over all of to get more precise control over all of the logical steps of your application the logical steps of your application the logical steps of your application that need to be vried. Uh and so if you that need to be vried. Uh and so if you that need to be vried. Uh and so if you were doing this green field uh you would were doing this green field uh you would were doing this green field uh you would essentially just write your business essentially just write your business essentially just write your business logic. You would take the failureprone logic. You would take the failureprone logic. You would take the failureprone parts of the business logic make them as parts of the business logic make them as parts of the business logic make them as granular as possible wrap them in granular as possible wrap them in granular as possible wrap them in activities so that when a failure does activities so that when a failure does activities so that when a failure does occur we can pick up with a lot more occur we can pick up with a lot more occur we can pick up with a lot more precision than with that big hammer precision than with that big hammer precision than with that big hammer approach. approach. approach. There was a time I want to say maybe 15 There was a time I want to say maybe 15 There was a time I want to say maybe 15 years ago right around when the cloud years ago right around when the cloud years ago right around when the cloud was uh was happening. I was doing things was uh was happening. I was doing things was uh was happening. I was doing things in decom and corba in RMI you know for in decom and corba in RMI you know for in decom and corba in RMI you know for the older folks that may be listening the older folks that may be listening the older folks that may be listening and we we wrapped things in a and we we wrapped things in a and we we wrapped things in a transaction and we would think about transaction and we would think about transaction and we would think about scope of a transaction. Is an event like scope of a transaction. Is an event like scope of a transaction. Is an event like a transaction or is it even higher in in a transaction or is it even higher in in a transaction or is it even higher in in uh in in scope for lack of a better uh in in scope for lack of a better uh in in scope for lack of a better word? Is it a higher level construct?
-
word? Is it a higher level construct? word? Is it a higher level construct? >> Yeah. Uh gosh, I hadn't heard those >> Yeah. Uh gosh, I hadn't heard those >> Yeah. Uh gosh, I hadn't heard those acronyms for a while. acronyms for a while. acronyms for a while. >> I apologize immediately. >> I apologize immediately. >> I apologize immediately. >> No worries. Um it's actually um a little >> No worries. Um it's actually um a little >> No worries. Um it's actually um a little bit more granular because if you think bit more granular because if you think bit more granular because if you think about it, you know, we would at back about it, you know, we would at back about it, you know, we would at back then consider a transaction to be an then consider a transaction to be an then consider a transaction to be an atomic sort of unit, right? And we know atomic sort of unit, right? And we know atomic sort of unit, right? And we know now that these multi-step applications now that these multi-step applications now that these multi-step applications or multi-step flows um you need to do or multi-step flows um you need to do or multi-step flows um you need to do things like compensating things like compensating things like compensating uh for for sort of you know uh the the uh for for sort of you know uh the the uh for for sort of you know uh the the classic money transfer where if some classic money transfer where if some classic money transfer where if some part of that goes wrong you want to be part of that goes wrong you want to be part of that goes wrong you want to be able to compensate back and so it's more able to compensate back and so it's more able to compensate back and so it's more granular than that and um uh you know granular than that and um uh you know granular than that and um uh you know one of the examples that I can give you one of the examples that I can give you one of the examples that I can give you uh is for instance one of our customers uh is for instance one of our customers uh is for instance one of our customers that has spoken at our conferences is that has spoken at our conferences is that has spoken at our conferences is Yum Brands and they have modernized Yum Brands and they have modernized Yum Brands and they have modernized their entire order processing system their entire order processing system their entire order processing system using uh uh temporal. And if you think using uh uh temporal. And if you think using uh uh temporal. And if you think about it from a a consumer on a mobile about it from a a consumer on a mobile about it from a a consumer on a mobile app putting an order for tacos to that app putting an order for tacos to that app putting an order for tacos to that order making it to the kitchen to order making it to the kitchen to order making it to the kitchen to picking up the order, you know, there's picking up the order, you know, there's picking up the order, you know, there's a lot of steps in there. and and if if a lot of steps in there. and and if if a lot of steps in there. and and if if you have to cancel the order for you have to cancel the order for you have to cancel the order for instance, you have to go back and redo instance, you have to go back and redo instance, you have to go back and redo the loyalty points and refund the the loyalty points and refund the the loyalty points and refund the customer and so on. Uh so temporal customer and so on. Uh so temporal customer and so on. Uh so temporal really helps you outline all the various
-
really helps you outline all the various really helps you outline all the various steps in your business flow and gives steps in your business flow and gives steps in your business flow and gives you that granularity where you can pick you that granularity where you can pick you that granularity where you can pick up at any point based on the failures up at any point based on the failures up at any point based on the failures that you might run into. Now what's that you might run into. Now what's that you might run into. Now what's interesting about that and what for me interesting about that and what for me interesting about that and what for me as a as a cloud architect who has not as a as a cloud architect who has not as a as a cloud architect who has not worked on a project using temporal is worked on a project using temporal is worked on a project using temporal is that you promise for stateful workflows that you promise for stateful workflows that you promise for stateful workflows even over months or years long cuz like even over months or years long cuz like even over months or years long cuz like a business process could be one's doing a business process could be one's doing a business process could be one's doing their taxes and it's a very long long their taxes and it's a very long long their taxes and it's a very long long running workflow or it could be a running workflow or it could be a running workflow or it could be a workflow that only runs for a couple of workflow that only runs for a couple of workflow that only runs for a couple of seconds but it could be interrupted in seconds but it could be interrupted in seconds but it could be interrupted in the middle. There's the business logic the middle. There's the business logic the middle. There's the business logic that could be interrupted. There's the u that could be interrupted. There's the u that could be interrupted. There's the u kind of middle layer of like a payment kind of middle layer of like a payment kind of middle layer of like a payment processor had a hiccup, but then there's processor had a hiccup, but then there's processor had a hiccup, but then there's also just a DNS error or a small step or also just a DNS error or a small step or also just a DNS error or a small step or a lookup fails. Those are really a lookup fails. Those are really a lookup fails. Those are really different layers, you know, in the in different layers, you know, in the in different layers, you know, in the in the seven layer stack, but temporal the seven layer stack, but temporal the seven layer stack, but temporal there, your durable execution platform there, your durable execution platform there, your durable execution platform promises to basically handle all of promises to basically handle all of promises to basically handle all of those issues. How is that how is that those issues. How is that how is that those issues. How is that how is that possible? Am I using different possible? Am I using different possible? Am I using different constructs? Are you hiding it from me or constructs? Are you hiding it from me or constructs? Are you hiding it from me or am I calling your API in order to do am I calling your API in order to do am I calling your API in order to do that work? Yeah, great question. Uh, so that work? Yeah, great question. Uh, so that work? Yeah, great question. Uh, so the way that temporal works is you the way that temporal works is you the way that temporal works is you actually code your application to our actually code your application to our actually code your application to our SDKs SDKs SDKs and as part of that temporal is managing and as part of that temporal is managing and as part of that temporal is managing the dispatching of tasks to your code.
-
the dispatching of tasks to your code. the dispatching of tasks to your code. So, so you've coded to our SDK. We have So, so you've coded to our SDK. We have So, so you've coded to our SDK. We have a concept of a worker. That's where your a concept of a worker. That's where your a concept of a worker. That's where your code is running, which actually runs in code is running, which actually runs in code is running, which actually runs in your infrastructure. And and that's a your infrastructure. And and that's a your infrastructure. And and that's a really really elegant part of our really really elegant part of our really really elegant part of our security model. And what temporal the security model. And what temporal the security model. And what temporal the server is doing is essentially server is doing is essentially server is doing is essentially dispatching tasks, right? Think about dispatching tasks, right? Think about dispatching tasks, right? Think about the analogy of puppets and a puppet the analogy of puppets and a puppet the analogy of puppets and a puppet master. And so temporal is really the master. And so temporal is really the master. And so temporal is really the puppet master sort of controlling all of puppet master sort of controlling all of puppet master sort of controlling all of the tasks that are going on. And so when the tasks that are going on. And so when the tasks that are going on. And so when we see a failure, no matter what level we see a failure, no matter what level we see a failure, no matter what level it's at, you know, we can tell the it's at, you know, we can tell the it's at, you know, we can tell the worker where in the task processing the worker where in the task processing the worker where in the task processing the failure occurred. And the developer has failure occurred. And the developer has failure occurred. And the developer has the ability to set things like retries, the ability to set things like retries, the ability to set things like retries, exponential backups, and kind of, you exponential backups, and kind of, you exponential backups, and kind of, you know, how they want to uh sort of think know, how they want to uh sort of think know, how they want to uh sort of think about recovery. Uh but they don't about recovery. Uh but they don't about recovery. Uh but they don't actually have to do that with a lot of actually have to do that with a lot of actually have to do that with a lot of the scaffolding in the code. It's a very the scaffolding in the code. It's a very the scaffolding in the code. It's a very elegant programming model that does all elegant programming model that does all elegant programming model that does all of that for them pretty seamlessly.
-
of that for them pretty seamlessly. of that for them pretty seamlessly. >> Hey friends, we're going to take a >> Hey friends, we're going to take a >> Hey friends, we're going to take a moment and hear from our new sponsor, moment and hear from our new sponsor, moment and hear from our new sponsor, ShareGate, at sharegate.com. I'm ShareGate, at sharegate.com. I'm ShareGate, at sharegate.com. I'm chatting with Shaylen Gimy. You know, uh chatting with Shaylen Gimy. You know, uh chatting with Shaylen Gimy. You know, uh Shaylen, I've been thinking about moving Shaylen, I've been thinking about moving Shaylen, I've been thinking about moving my uh Google Suite over to M365 and you my uh Google Suite over to M365 and you my uh Google Suite over to M365 and you know, the migrations, they're like know, the migrations, they're like know, the migrations, they're like pulling teeth. You know, what are the pulling teeth. You know, what are the pulling teeth. You know, what are the biggest headaches that IT teams will run biggest headaches that IT teams will run biggest headaches that IT teams will run into and and why does it take so long? into and and why does it take so long? into and and why does it take so long? >> You know, it's funny. I I find that IT >> You know, it's funny. I I find that IT >> You know, it's funny. I I find that IT admins always think migrations seem admins always think migrations seem admins always think migrations seem really complicated, but truthfully, if really complicated, but truthfully, if really complicated, but truthfully, if you do the planning really well, it can you do the planning really well, it can you do the planning really well, it can be smooth sailing. You know, it it's it be smooth sailing. You know, it it's it be smooth sailing. You know, it it's it all starts with planning. You need to all starts with planning. You need to all starts with planning. You need to figure out the scope, set realistic figure out the scope, set realistic figure out the scope, set realistic timelines, and take inventory of timelines, and take inventory of timelines, and take inventory of permissions. If you don't do that up permissions. If you don't do that up permissions. If you don't do that up front, you're kind of setting yourself front, you're kind of setting yourself front, you're kind of setting yourself up for delays and potential security up for delays and potential security up for delays and potential security risks down the line. Uh, you know, the risks down the line. Uh, you know, the risks down the line. Uh, you know, the reality is a lot of these migrations reality is a lot of these migrations reality is a lot of these migrations involve huge amounts of sensitive data. involve huge amounts of sensitive data. involve huge amounts of sensitive data. So, rushing isn't an option. And then So, rushing isn't an option. And then So, rushing isn't an option. And then there's also the Microsoft side. You there's also the Microsoft side. You there's also the Microsoft side. You know, Microsoft enforces some limits to know, Microsoft enforces some limits to know, Microsoft enforces some limits to manage traffic, which can slow things manage traffic, which can slow things manage traffic, which can slow things down even more. Uh that's where we come down even more. Uh that's where we come down even more. Uh that's where we come in. You know, we help IT teams get ahead in. You know, we help IT teams get ahead in. You know, we help IT teams get ahead of those roadblocks with uh ready-made of those roadblocks with uh ready-made of those roadblocks with uh ready-made reports like our site report lays out reports like our site report lays out reports like our site report lays out everything in your environment or uh everything in your environment or uh everything in your environment or uh source analysis which estimates how much source analysis which estimates how much source analysis which estimates how much effort your migration will actually effort your migration will actually effort your migration will actually take. Uh and to get around throttling take. Uh and to get around throttling take. Uh and to get around throttling well our customers can utilize well our customers can utilize well our customers can utilize concurrent migrations with ShareGate Pro concurrent migrations with ShareGate Pro concurrent migrations with ShareGate Pro allows them to accelerate their allows them to accelerate their allows them to accelerate their migration.
-
migration. migration. >> Very cool. Well, that is ShareGate by >> Very cool. Well, that is ShareGate by >> Very cool. Well, that is ShareGate by WorkLE. It's one tool to migrate faster WorkLE. It's one tool to migrate faster WorkLE. It's one tool to migrate faster and secure your tenant. It's an and secure your tenant. It's an and secure your tenant. It's an out-of-the-box Microsoft 365 migration out-of-the-box Microsoft 365 migration out-of-the-box Microsoft 365 migration and governance tool that you can learn and governance tool that you can learn and governance tool that you can learn all about at sharegate.com. Thanks a lot all about at sharegate.com. Thanks a lot all about at sharegate.com. Thanks a lot for being a sponsor. for being a sponsor. for being a sponsor. You know, this might be a silly You know, this might be a silly You know, this might be a silly question, but so far you've been very question, but so far you've been very question, but so far you've been very complimentary saying that my questions complimentary saying that my questions complimentary saying that my questions are good, so keep doing that. But this are good, so keep doing that. But this are good, so keep doing that. But this means that one really needs to means that one really needs to means that one really needs to understand their problem space in order understand their problem space in order understand their problem space in order to describe one of these workflows. Like to describe one of these workflows. Like to describe one of these workflows. Like it seems like if I decided to write an it seems like if I decided to write an it seems like if I decided to write an app and I'm going to use temporal, it's app and I'm going to use temporal, it's app and I'm going to use temporal, it's going to challenge me to really think going to challenge me to really think going to challenge me to really think about designing as if failure is about designing as if failure is about designing as if failure is inevitable. And if I don't understand my inevitable. And if I don't understand my inevitable. And if I don't understand my workflow, Temporal is going to basically workflow, Temporal is going to basically workflow, Temporal is going to basically force me to understand my workflow. force me to understand my workflow. force me to understand my workflow. >> Absolutely. And uh the the magic of all >> Absolutely. And uh the the magic of all >> Absolutely. And uh the the magic of all of this is that you really spend the of this is that you really spend the of this is that you really spend the bulk of your time understanding your bulk of your time understanding your bulk of your time understanding your workflow and your business logic versus workflow and your business logic versus workflow and your business logic versus actually writing all of that scaffolding actually writing all of that scaffolding actually writing all of that scaffolding around it. Yeah, there's a lot of around it. Yeah, there's a lot of around it. Yeah, there's a lot of studies out there and and you know, some studies out there and and you know, some studies out there and and you know, some studies will even go so far as saying studies will even go so far as saying studies will even go so far as saying that 50% of a developer's time is spent that 50% of a developer's time is spent that 50% of a developer's time is spent in kind of this error handling side of in kind of this error handling side of in kind of this error handling side of the house versus the core business logic the house versus the core business logic the house versus the core business logic side of the house. And so our goal with side of the house. And so our goal with side of the house. And so our goal with temporal is, you know, we we we just temporal is, you know, we we we just temporal is, you know, we we we just take all of that on and we free up the take all of that on and we free up the take all of that on and we free up the developer and uh essentially we we want
-
developer and uh essentially we we want developer and uh essentially we we want to drive to more agility and to get to drive to more agility and to get to drive to more agility and to get developers to really focus on their developers to really focus on their developers to really focus on their application and not have to worry about application and not have to worry about application and not have to worry about all of the uh sort of scaffolding around all of the uh sort of scaffolding around all of the uh sort of scaffolding around it. it. it. that seems like uh the kind of promise that seems like uh the kind of promise that seems like uh the kind of promise of separation of concerns that we've of separation of concerns that we've of separation of concerns that we've always been been told that the cloud always been been told that the cloud always been been told that the cloud would provide. I think people perhaps would provide. I think people perhaps would provide. I think people perhaps thought the cloud would provide it for thought the cloud would provide it for thought the cloud would provide it for free. But once you kind of acknowledge free. But once you kind of acknowledge free. But once you kind of acknowledge and accept that the temporal SDK is and accept that the temporal SDK is and accept that the temporal SDK is available to you then my question is are available to you then my question is are available to you then my question is are you cloud agnostic and language you cloud agnostic and language you cloud agnostic and language agnostic? This works in any language and agnostic? This works in any language and agnostic? This works in any language and any cloud. So we are um in terms of the any cloud. So we are um in terms of the any cloud. So we are um in terms of the language part early on we made a language part early on we made a language part early on we made a decision to really meet developers where decision to really meet developers where decision to really meet developers where they are uh and so these SDKs I was they are uh and so these SDKs I was they are uh and so these SDKs I was referring to we've built them as sort of referring to we've built them as sort of referring to we've built them as sort of idiomatic language SDKs and again you idiomatic language SDKs and again you idiomatic language SDKs and again you know our focus on that developer know our focus on that developer know our focus on that developer experience is is is really strong. we experience is is is really strong. we experience is is is really strong. we have a very high bar around it and so we have a very high bar around it and so we have a very high bar around it and so we have SDKs in six different languages have SDKs in six different languages have SDKs in six different languages today. Um, and you know the for instance today. Um, and you know the for instance today. Um, and you know the for instance what we want to be able to do is a what we want to be able to do is a what we want to be able to do is a developer that knows Python we want them developer that knows Python we want them developer that knows Python we want them to be able to use temporal without to be able to use temporal without to be able to use temporal without having to relearn something else and having to relearn something else and having to relearn something else and kind of in a Python native way right uh kind of in a Python native way right uh kind of in a Python native way right uh so again we've got these idomatic SDKs so again we've got these idomatic SDKs so again we've got these idomatic SDKs on the cloud side um we run our data
-
on the cloud side um we run our data on the cloud side um we run our data plane in uh today in AWS and GCP and plane in uh today in AWS and GCP and plane in uh today in AWS and GCP and we've got Azure on our road map and we've got Azure on our road map and we've got Azure on our road map and we're working towards that. But what we're working towards that. But what we're working towards that. But what customers really sort of interact with customers really sort of interact with customers really sort of interact with is a logical construct of a namespace. is a logical construct of a namespace. is a logical construct of a namespace. >> This is where kind of the workflow >> This is where kind of the workflow >> This is where kind of the workflow orchestration happens and they can orchestration happens and they can orchestration happens and they can decide what region and what cloud they decide what region and what cloud they decide what region and what cloud they want to put that name space in. Most of want to put that name space in. Most of want to put that name space in. Most of the considerations there uh happen to be the considerations there uh happen to be the considerations there uh happen to be around their latency requirements etc. around their latency requirements etc. around their latency requirements etc. versus sort of a cloud uh specific versus sort of a cloud uh specific versus sort of a cloud uh specific abstraction. I like that you call out abstraction. I like that you call out abstraction. I like that you call out latency because I feel like if I can latency because I feel like if I can latency because I feel like if I can call back to those references to like call back to those references to like call back to those references to like Corba and RMI and decom, they all gave Corba and RMI and decom, they all gave Corba and RMI and decom, they all gave the illusion of location um the illusion of location um the illusion of location um transparency. You would just pretend transparency. You would just pretend transparency. You would just pretend that oh yeah, it doesn't matter. That that oh yeah, it doesn't matter. That that oh yeah, it doesn't matter. That could be a local object, it could be could be a local object, it could be could be a local object, it could be remote. But then I think we all as as remote. But then I think we all as as remote. But then I think we all as as cloud architects realize that the only cloud architects realize that the only cloud architects realize that the only thing that matters is latency. And when thing that matters is latency. And when thing that matters is latency. And when you're putting together a workflow, you you're putting together a workflow, you you're putting together a workflow, you really have to be conscious about how really have to be conscious about how really have to be conscious about how many milliseconds are we just throwing many milliseconds are we just throwing many milliseconds are we just throwing away to get this thing done. And if I'm away to get this thing done. And if I'm away to get this thing done. And if I'm calling into another region or calling calling into another region or calling calling into another region or calling in another continent, now we're talking in another continent, now we're talking in another continent, now we're talking about the speed of light and customers about the speed of light and customers about the speed of light and customers will be gone in a half a second if we will be gone in a half a second if we will be gone in a half a second if we don't give them the need. Uh it seems don't give them the need. Uh it seems don't give them the need. Uh it seems like temporal doesn't um does it take like temporal doesn't um does it take like temporal doesn't um does it take latency into consideration or does it latency into consideration or does it latency into consideration or does it help me at all solve some of those help me at all solve some of those help me at all solve some of those problems? Well, so the approach we took problems? Well, so the approach we took problems? Well, so the approach we took here is uh you know just essentially
-
here is uh you know just essentially here is uh you know just essentially recognizing that you can't abstract away recognizing that you can't abstract away recognizing that you can't abstract away uh uh latency, right? Sort of the the uh uh latency, right? Sort of the the uh uh latency, right? Sort of the the speed of light, the physics around speed of light, the physics around speed of light, the physics around there. So there. So there. So >> right, >> right, >> right, >> we uh and that's the main reason that we >> we uh and that's the main reason that we >> we uh and that's the main reason that we give customers a choice around what give customers a choice around what give customers a choice around what region region region >> uh they want to create and build their >> uh they want to create and build their >> uh they want to create and build their namespace in. namespace in. namespace in. >> Mhm. Um on the other hand we also >> Mhm. Um on the other hand we also >> Mhm. Um on the other hand we also because obviously we're in the runtime because obviously we're in the runtime because obviously we're in the runtime we're in the kind of the data plane path we're in the kind of the data plane path we're in the kind of the data plane path of your application executing because of your application executing because of your application executing because we're orchestrating all of these tasks. we're orchestrating all of these tasks. we're orchestrating all of these tasks. Um and so we have a very high bar around Um and so we have a very high bar around Um and so we have a very high bar around the latency at which we dispatch these the latency at which we dispatch these the latency at which we dispatch these tasks right so and that's an SLO that we tasks right so and that's an SLO that we tasks right so and that's an SLO that we measure and we um are looking at all the measure and we um are looking at all the measure and we um are looking at all the time because we know that we are taking time because we know that we are taking time because we know that we are taking uh sort of a you know some part of the uh sort of a you know some part of the uh sort of a you know some part of the customer experience end to end uh time customer experience end to end uh time customer experience end to end uh time here right? here right? here right? >> Mhm. Now there's there's the namespace >> Mhm. Now there's there's the namespace >> Mhm. Now there's there's the namespace that we talked about uh but namespaces that we talked about uh but namespaces that we talked about uh but namespaces have a rate limit and they measure with have a rate limit and they measure with have a rate limit and they measure with what's called actions per second and you what's called actions per second and you what's called actions per second and you know it one of the hard things about know it one of the hard things about know it one of the hard things about computer science is naming stuff and computer science is naming stuff and computer science is naming stuff and when you have these really wide open when you have these really wide open when you have these really wide open words like workflow action namespace I words like workflow action namespace I words like workflow action namespace I would be I think I would get a little would be I think I would get a little would be I think I would get a little bit of analysis paralysis like what is bit of analysis paralysis like what is bit of analysis paralysis like what is an action is an action a user story is an action is an action a user story is an action is an action a user story is an action I wrote a bite to the disk an action I wrote a bite to the disk an action I wrote a bite to the disk what's the granularity of an action what's the granularity of an action what's the granularity of an action because you A default limit of a
-
because you A default limit of a because you A default limit of a namespace in temporal is 400 per second. namespace in temporal is 400 per second. namespace in temporal is 400 per second. And I don't necessarily know if that And I don't necessarily know if that And I don't necessarily know if that maps to a business's action. maps to a business's action. maps to a business's action. >> Yeah, that's another great question. Um, >> Yeah, that's another great question. Um, >> Yeah, that's another great question. Um, an action is essentially sort of a an action is essentially sort of a an action is essentially sort of a logical construct that we use to bundle logical construct that we use to bundle logical construct that we use to bundle all of the pieces of the workflow all of the pieces of the workflow all of the pieces of the workflow um that gets charged for or gets rate um that gets charged for or gets rate um that gets charged for or gets rate limited. Right? So for instance a start limited. Right? So for instance a start limited. Right? So for instance a start workflow uh event is an action or uh you workflow uh event is an action or uh you workflow uh event is an action or uh you know I am going to audit a specific know I am going to audit a specific know I am going to audit a specific event in the workflow etc. Now what's event in the workflow etc. Now what's event in the workflow etc. Now what's what's really interesting here and um what's really interesting here and um what's really interesting here and um you know has been sort of the conundrum you know has been sort of the conundrum you know has been sort of the conundrum around platforms uh is around platforms uh is around platforms uh is how do we how do we how do we with the breadth of use cases running on with the breadth of use cases running on with the breadth of use cases running on a platform like temporal a platform like temporal a platform like temporal uh relating the the logical constructs uh relating the the logical constructs uh relating the the logical constructs that temporal provides to the business that temporal provides to the business that temporal provides to the business constructs that a developer is building constructs that a developer is building constructs that a developer is building against isn't necessarily fairly against isn't necessarily fairly against isn't necessarily fairly straightforward, right? And so straightforward, right? And so straightforward, right? And so >> one of the examples I use in >> one of the examples I use in >> one of the examples I use in conversations in terms of the breadth of conversations in terms of the breadth of conversations in terms of the breadth of use cases is on the one hand we have use cases is on the one hand we have use cases is on the one hand we have something something something >> uh like snap running on our platform >> uh like snap running on our platform >> uh like snap running on our platform which is a consumer application. On the which is a consumer application. On the which is a consumer application. On the other hand, we have the Taco Bell order other hand, we have the Taco Bell order other hand, we have the Taco Bell order and it it it's this conundrum around the and it it it's this conundrum around the and it it it's this conundrum around the platform. And so we've landed on actions
-
platform. And so we've landed on actions platform. And so we've landed on actions as the logical construct and we do our as the logical construct and we do our as the logical construct and we do our best to explain to users what this is. best to explain to users what this is. best to explain to users what this is. Um however we find that the rate limits Um however we find that the rate limits Um however we find that the rate limits there um especially with cloud uh are there um especially with cloud uh are there um especially with cloud uh are that's where the value of cloud really that's where the value of cloud really that's where the value of cloud really comes in right like the the the burst comes in right like the the the burst comes in right like the the the burst capacity pieces by default we have that capacity pieces by default we have that capacity pieces by default we have that 400 APS rate limit. Uh but we do have 400 APS rate limit. Uh but we do have 400 APS rate limit. Uh but we do have something we call planner that is always something we call planner that is always something we call planner that is always running and looking at how traffic is running and looking at how traffic is running and looking at how traffic is modulated and in automatically modulated and in automatically modulated and in automatically increasing those rate limits over time. increasing those rate limits over time. increasing those rate limits over time. Uh and so we we have customers that are Uh and so we we have customers that are Uh and so we we have customers that are going into like you know the the going into like you know the the going into like you know the the hundreds of thousands of actions per hundreds of thousands of actions per hundreds of thousands of actions per second uh as well. second uh as well. second uh as well. >> Oh wow. You know, one of the things that >> Oh wow. You know, one of the things that >> Oh wow. You know, one of the things that I'm I'm kind of thinking out loud here, I'm I'm kind of thinking out loud here, I'm I'm kind of thinking out loud here, but you must have really good support but you must have really good support but you must have really good support for open telemetry because then I would for open telemetry because then I would for open telemetry because then I would get amazing metrics at the cloud get amazing metrics at the cloud get amazing metrics at the cloud architect level and like how many HTTP architect level and like how many HTTP architect level and like how many HTTP retries are happening and that could retries are happening and that could retries are happening and that could help me from a health perspective, but help me from a health perspective, but help me from a health perspective, but also at the business person's level also at the business person's level also at the business person's level because they would be able to see because they would be able to see because they would be able to see telemetry around actions and workflows telemetry around actions and workflows telemetry around actions and workflows and I should be able to answer questions and I should be able to answer questions and I should be able to answer questions for the business and answer questions for the business and answer questions for the business and answer questions for the cloud architects and the SRRES.
-
for the cloud architects and the SRRES. for the cloud architects and the SRRES. Yes, we we have we have a lot of metrics Yes, we we have we have a lot of metrics Yes, we we have we have a lot of metrics that uh you know uh uh we expose to that uh you know uh uh we expose to that uh you know uh uh we expose to customers customers customers and and yes they are at at all of those and and yes they are at at all of those and and yes they are at at all of those levels you were talking about and then levels you were talking about and then levels you were talking about and then what we find customers doing is even what we find customers doing is even what we find customers doing is even taking like the workflow and actions taking like the workflow and actions taking like the workflow and actions level of metrics and translating them level of metrics and translating them level of metrics and translating them into like business metrics. So for into like business metrics. So for into like business metrics. So for instance you know the number of orders instance you know the number of orders instance you know the number of orders processed how long did it take etc. So processed how long did it take etc. So processed how long did it take etc. So customers are sort of building customers are sort of building customers are sort of building dashboards dashboards dashboards on top of the instrumentation and the on top of the instrumentation and the on top of the instrumentation and the telemetry that we provide them because telemetry that we provide them because telemetry that we provide them because they understand how their business logic they understand how their business logic they understand how their business logic kind of maps back into that workflow. kind of maps back into that workflow. kind of maps back into that workflow. And so this takes us back to the point And so this takes us back to the point And so this takes us back to the point you were making earlier that it really you were making earlier that it really you were making earlier that it really forces the developer to think about the forces the developer to think about the forces the developer to think about the workflow workflow workflow >> and you know what pieces of that >> and you know what pieces of that >> and you know what pieces of that workflow are things that they want to uh workflow are things that they want to uh workflow are things that they want to uh sort of abstract out reflect in terms of sort of abstract out reflect in terms of sort of abstract out reflect in terms of business metrics etc.
-
business metrics etc. business metrics etc. >> Mhm. There was a time and this is a bit >> Mhm. There was a time and this is a bit >> Mhm. There was a time and this is a bit of a challenging question I think uh so of a challenging question I think uh so of a challenging question I think uh so don't take it wrong but there was a time don't take it wrong but there was a time don't take it wrong but there was a time when people would say well I don't want when people would say well I don't want when people would say well I don't want vendor lock in and they would try to vendor lock in and they would try to vendor lock in and they would try to abstract away vendors and I used to just abstract away vendors and I used to just abstract away vendors and I used to just say directly to customers you're lying say directly to customers you're lying say directly to customers you're lying to yourself if you think that to yourself if you think that to yourself if you think that abstracting away from this SDK is going abstracting away from this SDK is going abstracting away from this SDK is going to provide you value. you're going to to provide you value. you're going to to provide you value. you're going to put a bunch of work into hiding all of put a bunch of work into hiding all of put a bunch of work into hiding all of our abstractions rather than just fully our abstractions rather than just fully our abstractions rather than just fully absorbing and accepting that you are now absorbing and accepting that you are now absorbing and accepting that you are now a blank application. I'm curious when a blank application. I'm curious when a blank application. I'm curious when you're selling into a big business and you're selling into a big business and you're selling into a big business and you say, "Hey, you're going to become a you say, "Hey, you're going to become a you say, "Hey, you're going to become a temporal application. Let's not try to temporal application. Let's not try to temporal application. Let's not try to hide all the temporal SDKs. Let's just hide all the temporal SDKs. Let's just hide all the temporal SDKs. Let's just embrace fully being a workflow, being an embrace fully being a workflow, being an embrace fully being a workflow, being an action, being a temporal application." action, being a temporal application." action, being a temporal application." Do customers still seem to believe in Do customers still seem to believe in Do customers still seem to believe in the illusion of avoiding vendor lock in the illusion of avoiding vendor lock in the illusion of avoiding vendor lock in or avoiding the realities of of or avoiding the realities of of or avoiding the realities of of accepting an SDK like this? accepting an SDK like this? accepting an SDK like this? >> Yeah, we so we have that conversation >> Yeah, we so we have that conversation >> Yeah, we so we have that conversation except it takes a slightly different uh except it takes a slightly different uh except it takes a slightly different uh sort of angle to it. And uh to explain sort of angle to it. And uh to explain sort of angle to it. And uh to explain that it's important to understand that that it's important to understand that that it's important to understand that temporal is an open-source temporal is an open-source temporal is an open-source uh uh project. It is something where if uh uh project. It is something where if uh uh project. It is something where if a customer did not want to run on a customer did not want to run on a customer did not want to run on temporal cloud uh you know they can run temporal cloud uh you know they can run temporal cloud uh you know they can run temporal server on their own temporal server on their own temporal server on their own infrastructure and so the lock in is to infrastructure and so the lock in is to infrastructure and so the lock in is to the programming model this sort of the programming model this sort of the programming model this sort of concept of durable execution and concept of durable execution and concept of durable execution and workflows and not to a vendor.
-
workflows and not to a vendor. workflows and not to a vendor. >> Um right >> Um right >> Um right >> that's a really great point. >> that's a really great point. >> that's a really great point. >> Right. And another uh piece that's >> Right. And another uh piece that's >> Right. And another uh piece that's really important and this is something really important and this is something really important and this is something we hold very very dearly to everything we hold very very dearly to everything we hold very very dearly to everything we do, our commitment to our developer we do, our commitment to our developer we do, our commitment to our developer community is if they write a workflow community is if they write a workflow community is if they write a workflow using the SDKs and they bring that to using the SDKs and they bring that to using the SDKs and they bring that to cloud, they can take that back to cloud, they can take that back to cloud, they can take that back to self-hosted without any code changes. Uh self-hosted without any code changes. Uh self-hosted without any code changes. Uh and so that's how we sort of help and so that's how we sort of help and so that's how we sort of help customers get comfortable with that sort customers get comfortable with that sort customers get comfortable with that sort of vendor lock in concern that they of vendor lock in concern that they of vendor lock in concern that they have. Um but you're absolutely right in have. Um but you're absolutely right in have. Um but you're absolutely right in the sense of the SDKs. You have to the sense of the SDKs. You have to the sense of the SDKs. You have to embrace the programming model. You have embrace the programming model. You have embrace the programming model. You have to see value in it. And uh you know our to see value in it. And uh you know our to see value in it. And uh you know our goal really is um customers need to kind goal really is um customers need to kind goal really is um customers need to kind of see that value for themselves. Um and of see that value for themselves. Um and of see that value for themselves. Um and honestly one of the things that is very honestly one of the things that is very honestly one of the things that is very very gratifying is when developers tell very gratifying is when developers tell very gratifying is when developers tell us that you know once they once it us that you know once they once it us that you know once they once it clicks there's no turning back. they clicks there's no turning back. they clicks there's no turning back. they kind of see workflows everywhere and in kind of see workflows everywhere and in kind of see workflows everywhere and in fact you know with everything happening fact you know with everything happening fact you know with everything happening in AI uh it's been really interesting to in AI uh it's been really interesting to in AI uh it's been really interesting to see how uh you know our our sort of see how uh you know our our sort of see how uh you know our our sort of developers who know temporal are seeing developers who know temporal are seeing developers who know temporal are seeing workflows in the AI applications that workflows in the AI applications that workflows in the AI applications that they're building as well they're building as well they're building as well >> so temporal's been around for a while it >> so temporal's been around for a while it >> so temporal's been around for a while it doesn't feel like it was made for agents
-
doesn't feel like it was made for agents doesn't feel like it was made for agents but then when agents happened it's like but then when agents happened it's like but then when agents happened it's like wow temporal is right ready to go like wow temporal is right ready to go like wow temporal is right ready to go like it was made for agents. Is that just a it was made for agents. Is that just a it was made for agents. Is that just a lucky coincidence? lucky coincidence? lucky coincidence? >> Oh my god, such a lucky coincidence. I >> Oh my god, such a lucky coincidence. I >> Oh my god, such a lucky coincidence. I think the I think the core of this is think the I think the core of this is think the I think the core of this is when you actually peel away all of the when you actually peel away all of the when you actually peel away all of the terminology terminology terminology at the heart of it, you know, you still at the heart of it, you know, you still at the heart of it, you know, you still need to orchestrate a multi-step need to orchestrate a multi-step need to orchestrate a multi-step process. Um and we just uh Cornelia who process. Um and we just uh Cornelia who process. Um and we just uh Cornelia who is a developer advocate in our Devril is a developer advocate in our Devril is a developer advocate in our Devril team just published a blog where team just published a blog where team just published a blog where basically we're taking the terminology basically we're taking the terminology basically we're taking the terminology that is becoming kind of the lingua that is becoming kind of the lingua that is becoming kind of the lingua frana if there's such a thing around the frana if there's such a thing around the frana if there's such a thing around the age AI agents world and showing how like age AI agents world and showing how like age AI agents world and showing how like these temporal constructs that have been these temporal constructs that have been these temporal constructs that have been around for some time are like production around for some time are like production around for some time are like production tested kind of just map very very tested kind of just map very very tested kind of just map very very seamlessly uh to those uh sort of seamlessly uh to those uh sort of seamlessly uh to those uh sort of concepts coming out of the AI agent concepts coming out of the AI agent concepts coming out of the AI agent world. world. world. >> Yeah, it seems like there's it's the >> Yeah, it seems like there's it's the >> Yeah, it seems like there's it's the perfect moment for you all because perfect moment for you all because perfect moment for you all because you've got Kubernetes there ready to go you've got Kubernetes there ready to go you've got Kubernetes there ready to go for container orchestration. Temporal is for container orchestration. Temporal is for container orchestration. Temporal is ready to go with durable workflow ready to go with durable workflow ready to go with durable workflow orchest orchestration longunning orchest orchestration longunning orchest orchestration longunning business logic which isn't super easy on business logic which isn't super easy on business logic which isn't super easy on Kubernetes. you run very nicely on top Kubernetes. you run very nicely on top Kubernetes. you run very nicely on top of it. And then we've got all these of it. And then we've got all these of it. And then we've got all these agents that are going to be created over agents that are going to be created over agents that are going to be created over the next couple of years, many of which the next couple of years, many of which the next couple of years, many of which are going to be long running. And the are going to be long running. And the are going to be long running. And the latency now is going to be on the LLM or latency now is going to be on the LLM or latency now is going to be on the LLM or on the customer and what they're being on the customer and what they're being on the customer and what they're being asked to do. Um, it seems like it's the
-
asked to do. Um, it seems like it's the asked to do. Um, it seems like it's the perfect storm for for you all to to to perfect storm for for you all to to to perfect storm for for you all to to to jump in there. jump in there. jump in there. >> Absolutely. And we're already seeing, >> Absolutely. And we're already seeing, >> Absolutely. And we're already seeing, you know, a lot of sort of usage in that you know, a lot of sort of usage in that you know, a lot of sort of usage in that space. And uh uh you know it's always space. And uh uh you know it's always space. And uh uh you know it's always really heartening to see that the the really heartening to see that the the really heartening to see that the the the platform that was built before AI the platform that was built before AI the platform that was built before AI agents was a thing uh you know is able agents was a thing uh you know is able agents was a thing uh you know is able to uh deliver against all of the to uh deliver against all of the to uh deliver against all of the requirements in such an elegant way. requirements in such an elegant way. requirements in such an elegant way. >> Yeah. I think it's also worth noting >> Yeah. I think it's also worth noting >> Yeah. I think it's also worth noting that the thing that I think about when I that the thing that I think about when I that the thing that I think about when I was learning about temporal is error was learning about temporal is error was learning about temporal is error recovery. And the the the the parallel recovery. And the the the the parallel recovery. And the the the the parallel that I'm drawing, which may not be an that I'm drawing, which may not be an that I'm drawing, which may not be an obvious one, is that LLMs are not obvious one, is that LLMs are not obvious one, is that LLMs are not deterministic. So they fail. And we have deterministic. So they fail. And we have deterministic. So they fail. And we have to design systems that fail. And since to design systems that fail. And since to design systems that fail. And since temporal was designed with the temporal was designed with the temporal was designed with the assumption that systems will fail, assumption that systems will fail, assumption that systems will fail, you could make things more reliable you could make things more reliable you could make things more reliable because error recovery and temporal because error recovery and temporal because error recovery and temporal means do we retry, do we escalate, do we means do we retry, do we escalate, do we means do we retry, do we escalate, do we fall back, or is it a human in the loop fall back, or is it a human in the loop fall back, or is it a human in the loop situation, which is I think so important situation, which is I think so important situation, which is I think so important in building systems like this.
-
in building systems like this. in building systems like this. >> Absolutely. you're you're spot on. And >> Absolutely. you're you're spot on. And >> Absolutely. you're you're spot on. And in fact, uh we had this happen in a in in fact, uh we had this happen in a in in fact, uh we had this happen in a in our user conference is called replay and our user conference is called replay and our user conference is called replay and we were doing a keynote demo uh and it we were doing a keynote demo uh and it we were doing a keynote demo uh and it was an agent and the LLM failed and was an agent and the LLM failed and was an agent and the LLM failed and right there we were able to kind of right there we were able to kind of right there we were able to kind of switch to a different vendor. Uh right. switch to a different vendor. Uh right. switch to a different vendor. Uh right. And so you're absolutely right there And so you're absolutely right there And so you're absolutely right there that um you know it's it's like that um you know it's it's like that um you know it's it's like incredibly applicable to the problems incredibly applicable to the problems incredibly applicable to the problems that uh we are seeing today in building that uh we are seeing today in building that uh we are seeing today in building agents, agents, agents, >> right? And then when we or before agents >> right? And then when we or before agents >> right? And then when we or before agents existed like last week uh because things existed like last week uh because things existed like last week uh because things are moving so fast right now uh context are moving so fast right now uh context are moving so fast right now uh context is so important in a long running is so important in a long running is so important in a long running workflow and maintaining state between workflow and maintaining state between workflow and maintaining state between steps fits nicely into a potentially steps fits nicely into a potentially steps fits nicely into a potentially longunning LLM experience and you could longunning LLM experience and you could longunning LLM experience and you could have that context flow through temporal have that context flow through temporal have that context flow through temporal as well. as well. as well. >> Yeah. Yeah. I'm feeling like you could >> Yeah. Yeah. I'm feeling like you could >> Yeah. Yeah. I'm feeling like you could be a really strong dev advocate for us. be a really strong dev advocate for us. be a really strong dev advocate for us. No. No. No. >> Well, >> Well, >> Well, >> absolutely. >> absolutely. >> absolutely. >> I appreciate that. I am >> I appreciate that. I am >> I appreciate that. I am non-denominational, but what I really non-denominational, but what I really non-denominational, but what I really like to do is understand problems. And I like to do is understand problems. And I like to do is understand problems. And I personally think that as a person of a personally think that as a person of a personally think that as a person of a certain age, I remember what it was like certain age, I remember what it was like certain age, I remember what it was like before the cloud. And there's value in before the cloud. And there's value in before the cloud. And there's value in understanding why the cloud exists. Like understanding why the cloud exists. Like understanding why the cloud exists. Like what problem did it solve? So when I what problem did it solve? So when I what problem did it solve? So when I went to educate myself about temporal, I went to educate myself about temporal, I went to educate myself about temporal, I want to keep reminding myself what what want to keep reminding myself what what want to keep reminding myself what what longunning state engines existed? What longunning state engines existed? What longunning state engines existed? What longunning state um problems were were longunning state um problems were were longunning state um problems were were people like I don't know like the the people like I don't know like the the people like I don't know like the the gang of four like there were people
-
gang of four like there were people gang of four like there were people doing long-running state work in the 60s doing long-running state work in the 60s doing long-running state work in the 60s and we're standing on the shoulders of and we're standing on the shoulders of and we're standing on the shoulders of the of giants in in systems like the of giants in in systems like the of giants in in systems like temporal. temporal. temporal. >> Absolutely. And you know that's >> Absolutely. And you know that's >> Absolutely. And you know that's something that we uh pay a lot of something that we uh pay a lot of something that we uh pay a lot of respect to because when you look at even respect to because when you look at even respect to because when you look at even temporal's founding story you know it's temporal's founding story you know it's temporal's founding story you know it's not something that was like created last not something that was like created last not something that was like created last year. It it sort of came out of a series year. It it sort of came out of a series year. It it sort of came out of a series of experiences that our two co-founders of experiences that our two co-founders of experiences that our two co-founders uh Max Fativ and Samar Abas have had in uh Max Fativ and Samar Abas have had in uh Max Fativ and Samar Abas have had in and around the space that you were just and around the space that you were just and around the space that you were just talking about right like early cloud talking about right like early cloud talking about right like early cloud maturing cloud time at Uber. Um it these maturing cloud time at Uber. Um it these maturing cloud time at Uber. Um it these are lessons that they've learned in are lessons that they've learned in are lessons that they've learned in their the in all of their sort of their their the in all of their sort of their their the in all of their sort of their focus on the developer experience and focus on the developer experience and focus on the developer experience and the core sort of element of durable the core sort of element of durable the core sort of element of durable execution has been incredibly strong and execution has been incredibly strong and execution has been incredibly strong and uh and that's where we stand today. We uh and that's where we stand today. We uh and that's where we stand today. We we absolutely stand on the shoulders of we absolutely stand on the shoulders of we absolutely stand on the shoulders of so much incredible work that's happened so much incredible work that's happened so much incredible work that's happened over the last couple decades. Yeah, your over the last couple decades. Yeah, your over the last couple decades. Yeah, your point about temporal evolving out of the point about temporal evolving out of the point about temporal evolving out of the Uber cadence project really speaks to Uber cadence project really speaks to Uber cadence project really speaks to the problem that was Uber, which was a the problem that was Uber, which was a the problem that was Uber, which was a longunning, longunning, longunning, very problematic and very touchy process very problematic and very touchy process very problematic and very touchy process because there's humans interacting with because there's humans interacting with because there's humans interacting with other humans and they might not show up other humans and they might not show up other humans and they might not show up like the there were probably in the like the there were probably in the like the there were probably in the early days of Uber many longrunning early days of Uber many longrunning early days of Uber many longrunning workflows that were failing for lots of workflows that were failing for lots of workflows that were failing for lots of different reasons, both cloud-based and
-
different reasons, both cloud-based and different reasons, both cloud-based and humans not being able to see each other humans not being able to see each other humans not being able to see each other across the street and All of that are across the street and All of that are across the street and All of that are part of the foundational patterns that part of the foundational patterns that part of the foundational patterns that temporal is going to have to build upon. temporal is going to have to build upon. temporal is going to have to build upon. >> Absolutely. In fact, uh one of the the >> Absolutely. In fact, uh one of the the >> Absolutely. In fact, uh one of the the fun examples that uh you know I hear fun examples that uh you know I hear fun examples that uh you know I hear about from the Uber cadence days was uh about from the Uber cadence days was uh about from the Uber cadence days was uh apparently the loyalty program was also apparently the loyalty program was also apparently the loyalty program was also modeled as a workflow. And if you think modeled as a workflow. And if you think modeled as a workflow. And if you think about it, you know, that is sort of the about it, you know, that is sort of the about it, you know, that is sort of the life of the subscriber life of the subscriber life of the subscriber as a workflow that is incredibly as a workflow that is incredibly as a workflow that is incredibly longunning. Um, and so that's that's the longunning. Um, and so that's that's the longunning. Um, and so that's that's the power of the platform that's evolved power of the platform that's evolved power of the platform that's evolved over so many years. over so many years. over so many years. >> Yeah, that's so wonderful. Well, thank >> Yeah, that's so wonderful. Well, thank >> Yeah, that's so wonderful. Well, thank you. This has been so interesting. I you. This has been so interesting. I you. This has been so interesting. I mean, really learning about temporal's mean, really learning about temporal's mean, really learning about temporal's architecture for me, I love history of architecture for me, I love history of architecture for me, I love history of computer science. I love understanding computer science. I love understanding computer science. I love understanding that this architecture is like the that this architecture is like the that this architecture is like the modern embodiment of ideas from Lesie modern embodiment of ideas from Lesie modern embodiment of ideas from Lesie Lamport uh for distributed consensus or Lamport uh for distributed consensus or Lamport uh for distributed consensus or Barbara Liskoff doing reliability and Barbara Liskoff doing reliability and Barbara Liskoff doing reliability and distributed computing and having that distributed computing and having that distributed computing and having that available open source self-hosted or in available open source self-hosted or in available open source self-hosted or in the temporal cloud. Uh everybody wins. I the temporal cloud. Uh everybody wins. I the temporal cloud. Uh everybody wins. I really appreciate you spending time with really appreciate you spending time with really appreciate you spending time with me today.
-
me today. me today. >> Absolutely. It was a pleasure to chat >> Absolutely. It was a pleasure to chat >> Absolutely. It was a pleasure to chat with you. with you. with you. >> We've been chatting with Priti Somal, >> We've been chatting with Priti Somal, >> We've been chatting with Priti Somal, senior vice president of engineering at senior vice president of engineering at senior vice president of engineering at Temporal Technologies. You can check out Temporal Technologies. You can check out Temporal Technologies. You can check out Temporal at temporal.io. Temporal at temporal.io. Temporal at temporal.io. Go learn about how it works. Check out Go learn about how it works. Check out Go learn about how it works. Check out the platform, the pricing, and check out the platform, the pricing, and check out the platform, the pricing, and check out GitHub cuz it's an open source project GitHub cuz it's an open source project GitHub cuz it's an open source project that you can go and explore on that you can go and explore on that you can go and explore on github.com. This has been another github.com. This has been another github.com. This has been another episode of Hansel Minutes, and we'll see episode of Hansel Minutes, and we'll see episode of Hansel Minutes, and we'll see you again next week. you again next week. you again next week. [Music]
Summary
The podcast discusses the evolution of cloud computing and its practical application in software development. It highlights how technologies like Text Control are now platform-independent, enabling broader deployment options for applications. The key takeaway is that the cloud concept, which emerged around 2008 with early virtualization and self-serve developer tools, has matured significantly, offering developers more flexibility and efficiency.