Hi, welcome everyone. My name is Stihomir and I have Riccardo here with me. Hello guys. Yeah, in this talk we will present to you guys the serverless workflow project. We will give an introduction to the project, look at some of its use cases, and then Riccardo is going to present us his really cool demo on how serverless workflow fits within a container orchestration environment using Kubernetes and Knative. Thanks. All right, so serverless workflow is a cloud-native foundation sandbox project. It is part of its serverless working group. It is open source and Apache 2.0 license. It is a community project and here you can find our information for our GitHub repository website and community chat and meeting information. All right, serverless workflow defines a declarative and domain specific workflow language. Declareative as it is not expressed in low-level code however defines an abstraction language which can be defined in both JSON and YAML formats. Domain specific as it does target specifically the domain of orchestration of event-driven and distributed services. And to give an example of that, here on the left-hand side we have two simple requirements written in a natural language. The first one being when a patient has for example a bladder infection, we want to notify urologists or doctors dealing with that type of issue and the same thing with the second one when a patient has a regular heartbeat. We want to notify cardiologists for that type of issue. On the right-hand side, we see that serverless workflow does not express its language in code or if L statements and things like that. Neither does it express it using terminology that does not fit the specific domain targets. On the bottom right-hand side, you can see that this type of requirements, we can translate directly into events and services. So for example, a patient having a bladder infection or a regular heartbeat, we can look at it and translate it into events that could be produced by, for example, in this case, some different hospital systems and notifying a doctor, in this case, the particular doctor that deals with the patient issue can be translated into vocation of distributed services. All right, serverless workflow is based on standards. For event definition, we use the cloud event specification to define events, events that can be produced or consumed and also define correlations between many different events that could be happening in your systems. We use the open API specification to define operations and services that need to be invoked during workflow execution. The serverless workflow specification then defines different workflow patterns or control patterns, which then define execution order, error handling, and data management. And those are all based on widely known and used workflow patterns. Thanks. The overall project goals of the serverless workflow project are to define our language, which again can be expressed in both Jason and Yama format, and to focus on portability and vendor neutrality. So we want to be able to define a language which you can then execute on many different runtime services, and those runtime services can be deployed in many different environments, including container and cloud platforms. So in order to start using events within your workflows, you have to first start defining them. Like we said, events can be either consumed or produced during workflow execution. With serverless workflow, you can see here that we have a direct one-to-one mapping between how events are actually expressed within the cloud events specification format and how you're actually defining them within your workflows. So here you also can see that for event correlation, we also use the cloud events format, specifically its context attributes. Alright, so how can you now, now that you define your events, how can you now interact with them? So as we said, events can either start workflow execution, they can continue workflow execution at some way, way points that can be either consumed or produced and they can be used also to make logical decisions. On the right hand side, we see a very simple and definition of the serverless workflow language, which says, okay, at this point we're going to end the workflow execution, but before we end it, we're actually going to produce an event of type workflow completed event. So this event then can be consumed by other different services in your systems, for example, other workflows or pretty much anything else that is listening to this type of event. Similar to events, we have one to define services and the operation on this distributed services we want to invoke during workflow execution, and as we said, for this serverless work or project user utilizes this open API specification. On the left hand side here in the box, we see a simple open API definition, in this case written in YAML, and it shows one particular operation of this service that we want to use. We want to invoke during workflow execution. On the right hand side, we see that there is again a one to one mapping. So in order to define this particular operation and the service that you want to invoke during workflow execution, you basically have an operation parameter, which is a combination of the path or the URI to the open API definition of the service and the unique operation ID, which gives you unique one to one mapping so your runtime should exactly know what operation needs to be executed on the service whenever the workflow requests for it. Now that we have defined the services, we want to be able to invoke it and we understand that there is many different types of services that you might want to invoke during workflow execution. With serverless workflow, you have the ability to define and invoke RESTful services, we see on the left hand side an example, but also you have the ability to define invocation of services, they're not RESTful, they're not probably exposed at some endpoints, but however, are triggered by events. So that is also possible. The last part of defining the workflow is actually the control flow logic. Here we want to define states and the order in which they're executed.  States can receive either data inputs or can they receive events. They perform their particular type of control flow logic that they're supposed to do, and then they produce that output or can produce events that can be consumed by other states within the control flow logic. So serverless workflow specifies explicit control flow logic, which means that we want to clearly allow you to define what you want to build. A lot of times control flow logic can be very granular, which means that it becomes at some point ambiguous. And what we wanted to do is kind of try to eliminate that. It is often very hard to see during control flow, even visually, what parts kind of fit together and which parts in combination define a control flow logic block that makes sense on a domain specific or a logical level. On the bottom, we see that each state within serverless workflow has a specific type, and these types are somewhat clear. For example, we have an event type, which basically at this point we're dealing with a control flow logic that has to do with events. The same thing, for example, a switch type. It is clear that this particular state is going to deal with logical decisions based on either data input or the event payloads. So that is what we mean by explicit control logic. I'm not saying that one is better than the other. However, this is how we the approach that we have taken within the serverless work language. Next. You can express many different types of control flow patterns with serverless workflow. You can define either sequences of execution. You can do database looping, parallel execution. You can make decisions like we said based on either data or some sort of events. You can deal with error handling, for example, if you retries or define how errors are handled during your workflow execution. In addition to that, serverless workflow also allows you to deal with control flow that has to deal with human interactions, which is sometimes very important during execution of your workflows. And there's some other things and they're all specified within our specification documents. Next. Now let's take a look at the overall project components or what is all included within the serverless workflow project. So far we have been talking about the serverless workflow language, which is described as a JSON schema and this JSON schema really defines all the rules and the patterns that you can use when defining your language. In addition to that, the project also defines a set of language extensions and these extensions do not control execution or the control flow logic or what happens when the workflow is executed, but provides more information about the workflow that you write. That can be consumed by different runtime systems in order to overall improve the performance of your workflows in terms of your cost and things like that. Some of the language extensions that we provide are KPI or key performance indicators, extensions for tracing, simulations and we're adding more as we go. Another part of the serverless workflow project is things like software development kits. We have them currently both for both the Java and the Go languages. Testing TCK or this is a compatibility kit for runtime implementations where they can compare their implementation to the requirements of the serverless workflow specification. In addition, we provide a set of plugins for widely used IDEs. Let's take a look at one of these language extensions the serverless workflow provides. In this case, let's take a look at the KPI extension. This particular language extension allows you to basically compare expected versus actual data of your runtime or information produced during the runtime of your workflows. It helps you really try to improve your workflows in terms of performance, cost and its effect. On the right-hand side, you can see a small example of the definition of this KPI extension. Again, all the extensions just like the actual serverless workflow language can be expressed both in JSON or YAML, so you have the choice to do that. But here basically allows you to define some expected metrics that have to deal with what do you expect to happen, how many times you think that some services should be invoked, what is the overall cost that you expect from running your workflows during a certain period of time, and then you can compare them with the actual results and see if those metrics are met or not. The next thing we want to take a look at is the Java SDK and this particular SDK provides features like parsing of JSON or YAML that runtime implementations can easily use and don't have to deal with that. It provides a fluent API so it allows you to define your workflow definitions just using programming language rather than dealing with the JSON or YAML. It provides validation, so validation against the serverless workflow specification itself and it also provides diagram generation. So as you're defining and your workflow models, you can go either from the JSON or YAML that is parsed or the workflow models define using the language itself into diagrams that you can then visualize. One more thing we're going to take a look at here is the serverless workflow visual studio code plugin. And this is a plugin that's available on the visual studio code marketplace. You can download it now and start using it. And its feature, sorry, provides code hints and code snippets for both JSON and YAML files. Again, against the serverless workflow JSON schema, it provides validation. And at the same time, it also provides diagram generation. So as you're modeling your workflows in visual studio code, you can easily preview the diagram of your particular workflow and make sure they visually also make sense. Alright, so that's it for me. So now we go to the cool part. Now Ricardo is going to take over and do his cool demo. Yeah, let's see what we have prepared for you guys today. So the first thing is just when we were thinking about the demo, we started thinking of how we're supposed to fit a particular use case with the serverless workflow scenario and how that can help us. So as developers, we have this very particular use case that I wish to open a PR against a project, a GitHub project, and I wish to have my PR being labeled exactly with what is supposed to be labeled, and I wish to have my pull request be reviewed by someone. So it would be nice to have maybe a bot that could label my pull request and maybe also add the correct reviewer for my pull request. So having this in mind, we draw a proposed workflow for that. So imagine that we could receive an event change, like a PR has been opened or changed, so we receive this event on our system. And based on that event, we can analyze the context of the pull request and understand what have been changed. So we can understand by the context by the files that have been changed. And based on that, we can call the GitHub API to apply the correct labels and also to add the required reviewers. And at the end of the workflow, we can create and publish a new event saying to the platform, hey, the PR has been verified, and you can do whatever you want with this event. So having this workflow in mind, we prepared implementation with some technology around Kubernetes, Knative, the serverless workflow, and some runtime implementation of the serverless workflow. And the first thing is, once we receive a pull request, we'd like to receive this event on a broker, so in this case, on a Knative broker. And then this broker will broadcast this event for anyone interested. And in this case, we have our serverless workflow runtime running on this platform, and we will listen to this event of this pull request event. And we're going to do everything that we explained the last slide, like analyzing the pull request, what's going on with this pull request, and one of the things is to query the GitHub API for the files that have been changed in this PR. And also apply the labels, apply the reviewers. So for that, we need this GitHub API functions also deployed on our platform, on our Kubernetes platform that we are going to call like GitHub API functions. So we have all those Knative server functions deployed in there that we can consume using our workflow engine. And also the workflow is finished, we will publish a new event to the broker, and the broker can also broadcast this event for any interested part of this event. And in this case, the pull request verified event will be consumed by our notification service. So this notification service can be anything. It can notify via mail, via Slack, Telegram or whatever other channels that we have out there in your company. So that's the main architecture, you know, the implementation of what we have, and then we basically have this broker implemented with Knative eventing system. So Knative eventing will delegate the broadcast events around the Kubernetes name space. We have this workflow runtime implemented with our own runtime implementation of the server workflow. We have this notification service. Also, aware of the server of the events that are published by our workflow runtime, and we'll do the notification with that. And what kind of technology that we use, like I said, we have the serverless workflow implementation that we are working on, that it's called Cogito project. We have Knative to serve the platform to be the infrastructure for us for the serverless infrastructure to handle cloud events for us in the Kubernetes name space to handle our functions in there. We also have some, the Java functions that you saw, the GitHub functions, they are all implemented in Java with Quarkus could be implemented in any language actually so use Java because we are more uses to that. And we have came with the Cremal framework that is an integration framework for communicate with this like API to make a nice notification to a given like channel. So I'm going to change my screen now to the fun part like Tihomi said. So, first of all, we're going to just watch the pods on our namespace. So for now, you everything that we have here and is in the application namespace is the workflow engine running and our Cogito operator running as well. This operator will is deployed the service and is controlling the service and how things should be and the state of the workflow should be so that's why there's a part of the operator in there. And here in the bottom. I'm in my project so I have this given, you know, Cogito service workflow demo project in GitHub so I'm going to start creating a new branch, let's say Q-Call and let's create a super fast file here. And with some information here in here like hello world, and whatever other things that you might have and you see that we have this file. We're going to add, we need to commit that like new test file, hello demo, commit message. Okay, so I'm going to push that to my project. Okay, I finished pushing my service in there.  Would you like to open a pull request? Of course I want to open a pull request. So this is my new test file which help demo and let's say Q-Call, hello demo. Also an open pull request, you know, a new event will come to my Kubernetes namespace in Canada. We will handle that and we will start, you know, the operation of the overall operation inside the namespace. So the broker will take this event and will broadcast to our Cogito workflow, to our runtime workflow engine. So let's see how it goes. After opening the pull request, you can see that in the top of my screen that we are receiving the event. So we have this GitHub event listener that is a gain native source kind of component. You also see the GitHub service that has all the functions that will, that are required to interact with the GitHub API. And on StatePod is scaling to one, because we are using a serverless platform, so it's supposed to do all this kind of stuff. You see that the pull request just added the workflow added to the correct label and then the correct guy here to reveal our PR. And as well, the notification service was now waking up to receive notification in here. So you'll see that we received some notifications about the changes that we made in the PR. So that's it for the demo. Let's go back to your presentation. Do you have any other things to say? Coach Homer? No, this was really cool. Thanks for doing this. It was great. Okay, let's continue then. Okay, so I guess that's it. Right, Homer? We finished our presentation. Yeah. And I don't know, do you wish to, you know, to share some more information about the serverless workflow project? No, we're good. I think here you can find more information. Definitely our website at serverless workflow.io. Again, like Ricardo and I, we're community members of the project and we would like to also invite everybody that's watching to join. We have, like we said, community bi-weekly meetings. You can just join them and see how it goes. And here you can also find our GitHub repository with the specification project in there, has all the details and the information and documentation, including examples, use cases and things like that that you can go ahead and check out and learn more about the project. Yeah, and everything about the demo, you can see in this hole here, you reach the, you know, all the serverless workflow files that we used in this demo, how you can create your own namespace on Kubernetes and use all the scripts in there, the applications, the service. Everything is in this, in this address and you will be able to run this actual demo in your laptop as well. I think that's it. Yeah. All right. Thanks everybody.


Biggest mistake is you assign a task that's vital to the product to someone who sees it as sort of an extra credit assignment. For a big launch, if you want to make the $100 million product, you better have enough time. People don't put enough time into this. That is a bad way of doing things. Guys, this is Dr. Nancy Lee, a director product on Future Inforbs. I've helped 100 people land a dream PM job offer in fan companies in Unicorn Startup and continue to get promoted as a product leader. In this channel, we cover tech trends of free product management training like and subscribe and check out our new video every Tuesday. Let's talk regarding bigger companies first. So what's the process of launching a 100 million product and why launching a product is the hardest product management life cycle? It's from the top first, the larger ones. So at a larger company, usually it's a team that is jointly owned by the product manager who faces inward mostly and the product marketer who faces outward. They will be the heads of the team and then they'll bring together sort of a smattering of people from different groups, sales, service, documentation, legal, finance, all those sort of things. And for a big launch, if you want to make the $100 million product, you better have enough time. That's really an issue. People don't put enough time into this. They think that the day the code ships is the day that we launch. So that's just not, that is a bad way of doing things. You need time. That's far, far away from real launches. I think it really depends on who you talk to. The talk to engineers, I'm done, ship my code. Then talk to marketers like, yeah, there's no sales. So marketers doesn't, doesn't count the launch. Yeah. Right. So for a big launch, maybe two months, maybe three months in advance, you're really working on this. It could be longer in different industries. If you have regulatory requirements or if you have a lot of enterprise customers that need an adoption cycle, maybe it's even longer. And you're, and you're working that whole time and you're figuring out what documents need to be created, training, communications, approvals, you know, you can't just write a press release at a big company, it needs to go through 20 different levels of approval, translations for different markets. And that, that workflow is cross functional, which makes it difficult. It's undefined. And some of it's quite hard, right? It's not, not easy to figure out, you know, why is this feature or this product actually important to the target consumer? And how do you communicate it in such a way that really brings them to the table? Let's, let's, let's work a soft comms issue, but it's all part of the same effort, right? Yeah, especially when you mentioned this different company had different process and different people involved. And actually I speak to my own pain point. And two years ago, I helped Verizon to launch the first 5G edge computing product in collaboration with AWS and Azure. And at the time, not only internally, we need to launch it. And externally, we need to work with smart for different companies. And you're right, all the legal standpoint. And also, who do you talk to? The messaging is different. And when you talk to customers, do you prioritize certain segment or you want to make it broad to make it to everybody? Right? So very different. So yeah, please continue. So we talk about the people involved and messaging is different. Yeah. What are the process involved in launching like hard and big product? Yeah. Well, so I've spoken to maybe 30, 40 companies at this point in in-depth interviews to find out how they do it. And so step one is triage. It's we have to all agree. Is this a big release or not? There's actually a big problem where sometimes the every product manager is ambitious and they want to they want their product to be the one that people talk about in the Wall Street Journal and get excited. And that's not the case. So there has to be alignment because sometimes marketing will say to product management, this thing that you're dedicating your life to, it's not that important. We're not spending money on it. Sorry. You know, that's that's a tough one. So which means everyone has to be on page. Cool. So which means that company had different priorities in in terms of how much marketing budget they put on different product.  Exactly. And so the best practice is that at an executive level, you agree on sort of a tiering system. What does large mean? What does medium mean? What does small mean? How much effort do each of those take? And let's look at the roadmap for the next 12 months with product management and put a little LM or S next to each one of those things so that we don't we're not disconnected. So that's step one. Step two, create the team. I already talked about that. It's always cross functional and you need people who have the time and effort to do things. The biggest mistake, especially at more of a small medium sized company is you assign a task that's vital to the product launch to someone who sees it as sort of an extra credit assignment. Like some support guy, some support guy or girl is given the job of writing, writing the release notes for the documentation center and they have a real job. They're just doing it because like, hey, that's fun. I'll do that. That's no, it's not the time. Well, because sometimes you don't have a dedicated person. Maybe there isn't like sales training would be another example. Not every company has a dedicated L and D learning and development team. And so you need to train the sales force. Who's going to do it? Right. So very often someone will raise their hands. Some ambitious younger person will say, oh, I'm in sales. I'll do the sales training. No, they need to have the resources necessary to do the job. Exactly. This reminds me so funny. So when I launched the 5G edge computing product and as well as the Smart Cities product for Verizon years ago, I was one day training. And I thought there is learning and development center, even in Verizon, I thought it's like they're going to take it over. But when they, but it's not, it's not, they took it over after it's really mature. After it's very, very mature. They know everything about messaging, but at very beginning when we need to sell to, let's say a few beta customers and I train myself guys. It, yes, I need training. I see, and then nobody teach me how to train sales guys and to figure out myself. Yeah, that's right. That's right.  Because sales has its own momentum. You know, salespeople are also ambitious. They want to make their number. They want to sell things and you have it's very easy to have misalignment where they try to sell things that are not the right things to sell like wrong customer type for the product, but they want to make money. So they try to fit it in or the opposite. They don't realize where the opportunities are. So the go to market process needs to really work through some of these nuances. And unfortunately, it very often is that either product market or person or product manager who has to do the legwork to figure out what the mechanisms are that will make sales successful, because sales leadership may not really be staffed or operate that way.


Good morning. Good morning, everyone. Thanks for joining us today. I'm really excited to be here. I'm really fortunate to be here in the Aprology Global Forum. This is my first time attending it. And another reason why I'm excited is that we are presenting one of our top products, edge data management today, powered by OneLine. Before I get into the application of edge data management, I'd like to share a few words about our OneLine. OneLine is a suite of products that we developed in bomb blog in order to tackle some of the biggest problems in supply chain management today. And predominantly right now, we have four products in OneLine. As you can see, edge data and traceability to track, trace, monitor, and manage your shipments, orders, and, you know, edge data variables around that. Vismo Tracker is a delivery engine status, the early status engine that we have, and business process alignment to take care of all your transactions and invoices, right? But more on these applications, you know, later, we have our booth in S5. You can please stop by and, you know, get more information. But today's spotlight is on edge data. So what are we trying to do here via edge data? And today's coal chain shipment, as well as supply chain management, we have, you know, predominantly a lot of issues, but predominantly product loss due to variation in temperature, humidity, things that we can really control, you know, causes a lot of issues with product loss and how are we tackling it, you know? And in certain industries like pharmaceuticals, those product losses, if not monitored properly, actually becomes unsafe for consumers, you know? A lot of pharmaceutical companies are shipping medicines, and if they are not properly monitored and maintained in right temperatures, it becomes unsafe for consumers to consume. And, again, in shipping industry, certain fluid levels, tankers, gas tanks or death fluid tanks needs to be maintained above or below minimum requirement in order to maintain the smooth flow of the process. Otherwise, the business and it creates delays and things like that. All right. So how does edge data address these issues? You know, we have a solution for you via edge data. So edge data uses sensors to track, trace, and report, you know, data from your edge nodes like temperature, humidity, air pressure, even fluid levels. And there are much more other variables that we are trying to include like sound and other stuff. You can implement these sensors in your trucks, warehouses, storage units, and even go as granular as a package. Package level implementation has also been done. And so what you can do is, you know, this ensures that your product is being monitored and maintained in the right temperatures or, you know, right threshold values. And you can, you know, essentially ensure that your product is maintained in the right quality before it reaches the consumer every single time. Right. And there's configured alert workflows that you can do in the application which notifies you pretty much if there's any breach in the threshold values. You know, it's not being maintained in the right temperature or humidity. There's a lot of humidity going on. Things like that, you will get notified in real time whether we have text messages or, you know, emails. The application consists of several pages. You know, the dashboard gives you a quick snapshot of, you know, active number of devices and alerts and what's the current reading of the devices that you have implemented.  And set up device and fluid management allows you to see your data from those sensors in the way that you want. You can configure however you want and, you know, set up those thresholds. The alert management allows you to pretty much configure the way that you want to get notified or the people that you want to notify in case of any issues that happen. And blockchain page just shows how we use hyperledger fabric, you know, how we store the sensor information of the hyperledger fabric in order to maintain the immutability and the security of, you know, the application of which this entire thing is built upon. All right, without further ado, let's dive into the demo. All right, here we are. Landed in the dashboard. So, as you can see on the top, you know, we have several cards indicating how many devices that you have. Now, I just, you know, brought four devices to the convention, so four active gateways and one of the alerts, temperature alerts or device failures that is going on. And on the left-hand side, you can see a bar chart of a number of alerts that has been generated over the past seven days, you know, for temperature, humidity, and gateway failure. And on the right-hand side, you can see a list of current readings, you know, how many of these readings, you know, sensors that I've deployed in different locations and what's the current readings coming out of these sensors. Also, it just quickly shows, you know, if these readings are supposed to be in their right thresholds, you know, those alerts that indicate that, oh, these are not the correct threshold, you know, the temperatures that they should be maintained and it should be probably lower or higher, you know, just indicating that they're in alert. And at the bottom is just a quick cache of all the issues that we log in, you know, in edge data in order to work on that and then provides you with the status and who is it assigned to. Next, the Store View page. This is the page that I told you, you know, we developed with keeping retail stores in mind. Here you can see all the sensors that you have deployed in various locations of yours. It doesn't matter if it's a store, storage trailers or route trailers, you know, which are going into shipping and warehouses even, right?   So if we see here, my thresholds are, you know, supposed to be from negative 15 Fahrenheit to 10 and clearly current temperature is 28 degrees Fahrenheit and that's why, you know, it's an alert state. There's alert, you know, being generated and similarly you can see the humidity and air pressure values and you can definitely, you know, right now I have selected a warehouse, you know, that I chose for the demo but you can go ahead and choose, you know, a storage trailer that's currently running around and at the bottom we provide a quick list of issues or alerts that has been generated over the past, I don't know, however many days for this particular location seems like storage trailer has been, you know, running into a lot of issues with the humidity and temperature breaches because they might just open and close the doors often, they have to unload and load the products, right? What's up? So, of course, this page, you know, keeping in mind that, you know, these retail users, sometimes they're in America, predominantly speak other languages so we also offer, you know, translation properties where, you know, you can pretty much switch all the values of these, of this particular page into Spanish and back into English. Next device reading page, this is a page that I personally like, not just because I developed, you know, most of it but also because this page pretty much provides you with, literally, all the data from all your sensors and including temperature, humidity, air pressure and what time it came in, where from and all that, right? And it allows you to filter, sort and custom search from this data also.  And device analysis page, we provide interesting insights on how, you know, these temperatures are once we get the data. So right now, if I click on the storage trailer that I have, we quickly provide the historical readings of all, you know, that particular trailer, that particular location and if I click on the graph, I see how the temperature has been maintained over the past 24 hours. By default, 24 hours, but of course we have the from data and to it again, you can go as long as past three months so that, you know, you can bring in the data. So right now, let's say, I'm going to go, I'm going to choose just a couple hours of data. So where's the time? 12, all right. If I see that, submit. So the only correct, you know, this was supposed to be a cooler and I wanted the temperatures to be clearly, you know, between below 40, but right now it seems like I took it out. So it's in a higher temperature and everything else is indicated as alerts. It's not in the right threshold it needs to be. So it's an alert. And yeah, you can pretty much print and export these details for your presentations as well. Next is alert workflow. Here's where you can create your configured workflows in order to get notified. The beauty of this is you can create workflows as higher as a location level for all your sensors or granular as a sensor level. So if I have like freezers and coolers in a store, I can configure freezer temperatures and cooler temperatures. Or if your store just contains purely coolers, then you can maintain all the sensors in one threshold without having to manually create 15 alert workflows, right? And the configured tiered notification system allows you to get notified in response times. As in if a breach happens, I want my store workers to get to know about it first before I hear about it. Because I probably am not in the store. I'm managing multiple other stores. So tiered notification allows you to get notified the store user. And then if they are not responding to the alert, after within the stipulator timeline, it gets elevated to the manager or so on and so forth to the highest level authority. And you can enter your phone number to also include text alerts. So if you have an on-duty phone or I just want to see how many alerts am I getting in these stores. So I can enter my phone number as well to get notified. And alert log page. Here's where you get the list of all the alerts from all the sensors you deployed in your locations. It's let it be a temperature breach, gateway failure, humidity breach. So here I have one. The sensor 12 that I told you about is supposed to be a freezer and it's just in a higher temperature. So here it just shows the temperature alert has been generated for 34 degrees Fahrenheit. As soon as an alert is generated, a person who is on site who chooses to work on it can assign themselves or it can automatically assign a person who was on duty and pretty much log their work right from here so that your boss doesn't have to call you every single hour to see, hey, what's going on with the freezer? It's still open. So they can just log in and see that it's being taken care of. And if the issue takes multiple minutes, if it takes a long time to get fixed, they can just stop the notification from going higher level while the issue is being taken care of. And finally, we have the ledger page where we show how these sensor readings are being stored in blockchain ledger, hyper ledger fabric. We take all the sensor values, the temperature, humidity, air pressure. We store those core values in fabric and we retrieve them to show it in the application. So maintaining the immutability and security of the hyper ledger extending it to the entire application. All right, that's all I have. Thank you all for attending the session. We have more information on our other products in our booth S5 on the third floor. So if you want to get to know more about the other applications or even talk more insights about this application, I'll be there. My team will be there. Looking forward to see you all there. So yeah, please reach out to me. All right, thank you. Yep. So pretty much we... You can use one channel, one node and start using the application. If you want to read this application also supports multi-tendency. So if you have multiple customers of yours that you would like to include in this application, you can set up multiple channels in the fabric itself to include them. In the context of this application? No, one channel per application. The user... No, it depends on the entity. So if you're belonging to the same company, same entity, yes, you can see the same sensors. If you are a part of a different company, let's say company B, I'm not able to see the sensors and data of this company. So that's an entirely different channel. Yes, two different channels. Depending on the entity, as I said, if it's a company with having multiple retailers, we can have set up channels or we can set up an entirely new, different organization to store the data. But I would love to answer your questions. I think I'm running out of time. Yes, please come upstairs or we can talk over lunch and I'll be happy to answer your questions.


What's up everyone, Kenzie here from Layton Sports Cards and I'm ripping 21-22 Panini Prison Basketball, I'll be three box break number 25, Random Teams. Here's a look at the random results, you can always find these at LaytonSportsCards.com underneath the results tab and the link is also in chat for you. Alright, best of luck everybody. Here we go. Good luck. Keita Rookie, we've got Silver Ashid Wallace, 75, we've got Tray Murphy, the third Rookie Pelicans. Everything's still good, right? Fearless Barkley, this Thunder is no joke tonight, y'all. Got Evan Mowley Rookie, what's up Lane? Tray Mann Rookie, Brandon Boston Jr., we've got Pulsar, Jared Allen, Cavs, Blue, Tyrese Halliburne, second year there for the Kings, Prismatic AD, Kisper, Grimes, we've got Silver, Josh Giddy for the Thunder, nice hit there, OKC. Heck yeah, got Miles Bridges, Hyper, Fireworks Tatum, Charles Bassey, Red, Ennis Cantor, Celtics, Steph Curry Prismatic, Scotty Lewis Rookie, Silver, Damien Lillard for the Blazers, we've got Silver, widescreen, Nicolay Yokage, first auto up, we've got for the Hawks, Christian Lattener, it's on the throwback, somebody don't see too often, Ron Bates, Aaron Wiggins Rookie, Luca Garza, Red Wave, Carl Malone for the Jazz, got Hyper, Jalen Smith, Sungs, Fireworks Trey Young, Jalen Johnson, we've got Silver, Jalen Suggs Magic, Orlando with another nice hit there, Noah Bee, another nice Silver Rookie, got Reggie Lewis, Orange to 60, Celtics or 49 on that one, sorry, 75 years, Chris Weber that was just upside down, running backwards, Tray Murphy the third, we've got Red Wave of Aaron Gordon, Nuggets, Blue Ice, Dorian Finney Smith for the Mavs, Zach Levine, Santi Aldama Rookie, Keon Johnson, Silver, Aladipo, got Hyper, Bill Russell, rest in peace man, sick card there, Jalen Green Rookie for the Rockets, we've got Fireworks Hyper of Bradley Beale Wizards to 25, Mojo Sensational Signatures Auto of Davion Mitchell, there you go Kings, it's a nice box, low Y with the Kings, nice one there, got that green base, always take a Mojo Auto, especially Rookie, David Johnson Rookie, Iodosumu Rookie for the Bulls, got Silver Nurket, Fireworks Silver, Jason Tatum, Chrismatic Harden, alright, last pack, box one, Jason Preston, Shen Goon, we've got Red, James Harden Wave, Nets, Hyper Nurket and base, box two here, Scotty Barnes Rookie for the Raptors, Jonathan Kominga Rookie, Silver, Carousel Avert, we've got Silver, Prismatic, Zach Levine, we've got Clippers, Jason Preston on the Rookie Auto, Clippers, Irene Butler Rookie, we've got David Johnson on the Red Wave, Raptors, Joe Wisecamp, Hyper Rookie Spurs, again everyone, all breaks are full for tonight as well as personals, Force will be live starting at 11am tomorrow with some group breaks, we've got Hakeem Olajuwon, Silver, Red, Evan Mobley, Cavs, very nice, 68 out of 2.99, Cavs is Kang H, there you go Kang on the Mobley, heck yeah, we'll mag this bad boy for you, all cards show ship, so they go to whoever has that team, we have an all color match there too for the Cavs, Banton Rookie, Robinson Earl, we've got Pulsar Olajuwon, Blue Ice Pain, Prichard Celtics, we've got Jalen Green Rookie for the Rockets, Silver, Robin Lopez, Hyper, Cam Reddish Hawks, MoBama, David Johnson Rookie, we've got Blue Tyler Hero for the Heats, and Otto for the Warriors, Rookie Auto, Moses Moody, you go Golden State, nice hit on the Moody, little smudge on the back of that Otto there, let me see, alright now I don't know what I was looking at, maybe the reflection, no smudge, sorry about that, maybe I made it too quick off screen, let's see some color, Reggie Bullock Silver, we've got Silver Mindset, Steph Curry, Fearless, Ben Wallace, Royce O'Neill, Dayran Sharp, Joshua Primo, we've got Red, Cam Reddish for the Hawks, Hyper, Brandon Clark, Fireworks Ant-Man, Oak Knight, Garuba, Carl Malone, we've got Purple Jordan Clarkson, 75 years, Anthony Davis, Moses Moody Rookie, we've got Red Wave of Chuma Okiki, Magic, Blue Ice, Eric Gordon for the Rockets, Eric Gordon, Greg Brown III, Sharif Cooper, Silver Gordon Hayward, we've got Josh Jackson, Hyper, Pistons, Prismatic Giannis, and last pack of Box 2, Cameron Thomas, we've got Purple Ice, Michele Bridges, Sons, and Face, Isaiah Livers, Banton, Jaren Jackson Jr., we've got Silver Fearless of Kevin Durant, White Screed Zion, keep looking up at the TV like there's something on it, Robinson Earl, we've got Red Wave of Zach Levine for the Bulls, Josh Giddy on the Hyper, there you go Thunder with some nice Giddys coming your way, Noah B with the Thunder, Prismatic, James Harden, got Jalen Green Rookie for the Rockets, Silver Terrence Ross, Blue, TJ Warren for the Pacers, 25 years, Drew Holiday, David Johnson, Red Wave of Cameron Johnson, Sons, Red Jordan Clarkson for the Jazz, James Harden Fearless, Iowdo and Sumu, Preston, Poku Silver, we've got Avery Bradley on the Hyper, Fireworks Levine, face, Shangoon, Jalen Johnson, we've got the 75, Akeema Lajewan, nice on their Rockets, some nice color of Lajewan coming out of this three boxer, Tray Murphy III, Silver PJ Washington Jr., we've got Prismatic Silver Bradley Beale, we've got Oscar Robertson for the Box, there's another throwback name, there you go Milwaukee, nice Buxet, throwback, Santi Aldama, Kelvin Johnson, Jared Butler on the Red Wave, Rookie Jazz, Markel Fultz, Hyper, Magic, Jaden Springer, Silver Isaiah, Roby, Blue Ice of Dario Sark, Sons, Charles Bassie Rookie, Scotty Lewis, we've got Pulsar Rookie, Zyra Williams for the Grizzlies, Purple Ice, Ben Simmons, Sixers, Corey Kisper, Aaron Wiggins, Silver Rookie of Greg Brown III, Blazers, Hyper, Rashid Wallace Blazers, we'll do a quick recap here, Luca Garza Rookie, Keita, Mindset Hyper of Chris Paul, we've got Hawks, Cam Reddish on the Sensational Signatures, we've got Hawks and Bass, give me one second, we'll do a recap, we'll do spirts here, we've got Sensational Signatures, Cam Reddish, Hawks, Oscar Robinson, Bucks, Moses Moody Warriors, Jason Preston, Clippers, Davion Mitchell on the Mojota 25 Kings, Christian Leitner and the Red Evan Mobley out of two 99 Cavs, big hit there, congrats again Cavs, thanks again everyone, we've got another three boxer coming right up.


Hey guys, welcome back to another one. If you are new to the channel, I am Goldpony. I do new car truck and SUV reviews on YouTube. And today we are in the new 2020 BMW 330i. XDrive is the one we have today. And I did review actually the M340i earlier this year and I'll leave a link to that video at the end of this video if you wanted to check that out. But this is the less expensive version. So I did want to check this one out as well. And this is one of the most popular luxury sedans out there. It comes with an IIHS top safety pick. Also a big plus there as well. So having said all that, what do you guys say? Let's just go ahead and jump right into it. And as always, let's start with pricing. And so there will be two different configurations for the BMW 330i. First one being the standard rear wheel drive configuration starting at $40,750. Then you have the XDrive, the one we are in today being BMW's all wheel drive system starting at $42,750. But regardless of what setup that you go with, the power plant is going to be the same on this one. Powering the beast will be a two liter twin power turbocharged inline four cylinder putting out 255 horsepower at 5,000 RPM, 294 pound feet of torque available at around 1500 RPM. Power again sent to rear wheels or all wheels through an eight speed automatic with paddle shifters which you guys know we will be testing out in a little bit here. Zero to 60 time comes in at approximately 5.4 seconds according to motor trend which should be more than adequate again we'll be testing that out as well. Top speed is going to be electronically limited at 130 miles per hour. And MPG numbers get this you guys, 26 in the city, 36 on the highway. That is like, that's like civic miles per gallon but with a ton of power that's the difference but that is pretty impressive I gotta say. But overall before we do any kind of paddle shifter test or anything else, did want to mention the driving modes. There are some driving modes located just to the left of the shifter there. They will include Eco, Pro, Comfort and Sport adjusting things like the throttle response, shift points, steering sensitivity and adaptive suspension if equipped. That is gonna be an option I'll touch on a little bit later in the video but now that I've covered all of that though what do you guys say, let's test out the paddle shifters what I'm gonna do is slide the shifter all the way to the back and to the left that is gonna give me full manual shift mode so the car doesn't shift for me and let's see how quickly they react for us here and let's kind of see the acceleration but we will do an acceleration test right after that but let's see how nice the paddle shifters are here. Yeah. Instant freaking tiniest. I don't know why I'm always surprised. I love quick reacting paddle shifters though and every BMW I feel like that I drive has got them. It's wonderful. So if you wanted to play around with the back roads with the paddle shifters do it because it's worth it in this car they actually react insanely quickly so you gotta love that. But now that we've done that I'm gonna slide the shifter back to the right that's gonna give the 330 odd back full control and let's do a quick little acceleration test let me find a straightaway and let's see how quickly we can get this thing up to speed. All right you guys come into a quick stop and three, two, one, here we go. There it is. Oh my goodness. Wow. Fun car definitely. I will say there's a slight bit of turbo life but dang once it kicked in it certainly got you up to speed not as quick as the M340i therefore if you wanted a little more power go that route but still plenty of power to merge you onto the highway zero to 60 and 5.4 is definitely very impressive acceleration this is gonna be more than enough quite honestly for just about everybody but to go along with that acceleration as always breaking is equally important and so actually the 2023 30i will come with high performance four wheel ventilated disc brakes and BMW listed it that way on the website so I had to do a little further digging and I'm thinking what's the 60 to zero stopping distance since it's such high performance it comes in at 103 feet and let me tell you guys 103 feet is 100% sports car I know my Mustang GT with 15 inch Brembo and six piston front cowpers will do it in 99 feet so really not much of a difference there for comparison sake if you were comparing the 330i to the Audi A4 A4 comes in at 105 feet so actually kind of impressive there too but nonetheless 330i still squeaks by with insane braking so that is definitely pretty cool as well so I did want to mention that but anyways touching on suspension and handling a little bit as well up front you will find a double pivot type front suspension in the back five link independent rear suspension with cast aluminum upper transverse arms twin tube gas pressure eye shock absorbers oh that's pretty standard but I did want to mention there is some optional setups there too adaptive M suspension goes for $700 that really gives you the best at both worlds it's gonna give you a smoother ride because it monitors these shock absorber individually but it's also gonna tighten up the suspension during heavy cornering so again best at both worlds there it's probably an option I would go with personally and also did want to mention for the 330i there is a track handling package that gets for $2,450 that gives you not only M Sport brakes but it's also an M Sport differential or a locking rear differential in this case sending torque to the rear wheel with the most traction so that is certainly going to help you with handling and actually acceleration as well so another option you can consider if you wanted a more sport oriented 330i then as far as the ride quality goes it's pretty much as expected and again that adaptive dampening suspension is gonna make it even better if you wanted to go that route but it's certainly on par for the course there as far as the steering feel goes it's nice in sport mode I just got done reviewing an M car and really nothing's gonna compare to that so wouldn't have minded a bit heavier with steering feel like the M car but then again that's what you got the M340i for that is gonna give you a heavier steering feel so this is pretty much as expected there cabin noise is just fine visibility is great and really with any sedan you're not gonna have any issues with visibility so that's definitely a big plus as well rain sensing windshield wipers come standard as well so if the 330i detects any kind of mist or rainfall it will automatically turn them on for you so it's one less thing you gotta worry about there kinda like automatic headlights head up display is gonna be available with the premium package like it's a 4700 includes other stuff of course as well or the executive package going for $5,900 and so that's gonna help keep your eyes better on the road so you can better focus more on enjoying the drive and that's a good thing too but that about rounds up the performance segment of this review let's now go ahead and take a look at the exterior of the 2020 BMW 330i all right here she is you guys the 2020 BMW 330i finished in alpine white in case anybody was curious up front you're gonna find that active kidney front grill with the chrome perimeter surrounding it of course doing all to mention there is an M sport package it goes for $5,200 that's gonna give you slightly more aggressive styling up front more of an aerodynamic kit that continues around back as well but even without that you still have air curtains in the lower two corners of that front bumper helping direct air around the wheel entire combination so that's a plus to the sides LED headlights come standard and that comes with the automatic feature meaning when it starts to get dark out at night it will turn on automatically for you so you don't have to worry about that LED daytime running lights also coming standard and I did wanna mention there is a convenience package that adds LED headlights with cornering so with the cornering function meaning when you're going around to bend at night those headlights will swivel based on your steering angle better help illuminating what is around that bend so you're less likely to hit a deer or a possum or a squirrel or whatever or maybe one of these birds in this little overhang that we have here anyways let's go ahead and make our way to the side on this one so to the side chrome window surrounds will come standard on the 330i gloss black window surrounds are actually going to come with the M sport package then take a look at the side mirrors here let me zoom in for you guys power adjustable body colored side mirrors will come standard and they are actually heated with LED integrated turn signals all of that coming standard so that's definitely nice taking a step back looking at the wheel setup now 18 inch V spoke alloy wheels with run flats that's currently what you're looking at if you were to go with the M sport package that is gonna add 19 inch M double five spoke alloy so slightly bigger setup there I guess that's as expected but make our way to the back shark fin antenna up top as expected just around back LED tail lights do come standard and of course just below that dual exhaust outlets with chrome tips so I do believe you guys know what we have to do next as always here is that exhaust clip but so now since we are around back when it comes to opening that rear trunk there is a button on the key bar that you like just simply press that didn't also mention though but the convenience package there is a hands free trunk that comes with that package meaning just kick your foot underneath the rear bumper there and the trunk is gonna open up automatically it's a feature typically found in SUVs was kind of refreshing seeing it found in this today like 330 I here so it's kind of cool once opened up cargo capacity comes in in an even 17 cubic feet I wanted to do a comparison here if you were to compare that to the Audi A4 Audi A4 actually comes in in an even 12 cubic feet so that's a big difference there actually and there of course is a 40 20 40 split meaning the rear seats do fold down for quite a bit of extra space there if you needed it then make your way to the rear legroom that comes in at 35.2 inches so for reference I'm an even six feet tall this is how much space I have back there and for those rear passengers there is a rear center armrest with cup holders there's also rear ventilation back there and heated rear seats if you were to go with the executive or premium packages that's pretty cool too and in addition to that there's a couple phone charging ports back there too if you wanted them but make our way to the front seats 14 way power adjustable front seats do come standard they do come with memory settings actually as well for up to two different drivers those buttons are going to be found at the driver side door of course if you wanted heated seats it is a standalone option for $500 or they also come standard with any package option whether it be the premium convenience or whatever you are going to be able to get heated front seats with that as well and they certainly are comfy and again they do come with power side bolsters in typical BMW fashion meaning the side bolsters can hug you in place a little bit more or less and it really fits all body types that's something I always like to mention with BMW because I love that but take a look at the steering wheel it is tilt and telescoping it is leather wrapped it will come heated if you were to go with the executive trim level at least and the 10 and two grips although they aren't as thick as some of the M cars they are still thick enough so I actually still like the grips in the 330i here as well then moving on to the start up here let me first start by showing you guys the key you do have lock, unlock, the button to pop the rear hatch on the key it's all on one side of the key lock button is the BMW logo in the middle there but it is all keyless entry though so if you like just simply keep the key in your pocket put your foot on the brake there is an engine start button located just to the left of the shifter there so let's press that real quick once started up there are two different gauge setups there's your standard setup with a smaller digital display front and center and then there is the 12.3 inch digital gauge cluster that comes with the premium package and the executive package and that of course is what you were looking at right now so love this gauge setup you have a digital speedometer within the regular speedometer on the left tachometers on your right also tells you what driving mode you're in when you adjust that up there tells you what gear you're in if you were to be shifting through gears manually there's your outside temperature how many miles you have left until you hit empty and of course dead middle of it all is going to be your navigation setup and you're not gonna be really be able to tell right now because we're not on a road but still that's where your navigation is going to show up there then make your way to overall interior quality power moonroof is going to come standard on the 330i wireless phone charger goes for $500 as a standalone option if you wanted that ambient lighting is for $250 as a standalone option we do have that today hence the reason why I pulled under this overhang so I could show that to you guys it's pretty cool and you can adjust your color selection through the infotainment screen up front here and I'll show you guys that in a second universal garage door opener comes standard actually for up to three different garage doors and those can be found just underneath the rear view mirror there three zone climate control comes standard as well so that's driver, passenger and rear passengers that's a standard setup that's pretty cool you don't usually see that and again in typical BMW fashion there's certainly high end finishes in this one as well and I love the two tone combination of the Carrera light leather and the dark colored dash with the wood trim as well so definitely a very nice interior quality the ambient lighting I think it's gotta be my favorite though but let's now go ahead and take a look at the tech display 8.8 inch colored touch screen display will come standard and I will say it is a touch screen but it also is voice activated as well there's a circular dial and buttons just to the right of the shifter that's yet another way you can control what is on that Bluetooth and audio streaming coming standard Android Auto Apple CarPlay meaning if you have a smartphone simply hook it up to the 330i you have free navigation the ability to liken this like your Pandora songs up there factory navigation system does come with the premium package and executive package I will say that but even without that you still got navigation through Android Auto Apple CarPlay so you got that you can check out your climate control information up there and of course like I said your ambient lighting so the way to access that you go to car you go to settings you go to interior lighting and then you click color and the brightness and all that fun stuff but blue, green, lilac orange, white, bronze heck of a lot of different colors you can choose from here so I'll try to show all of those to you guys right now it's pretty cool I think I kind of like green with the light leather they all look honestly pretty cool so we're gonna leave it at green now I think I'd like that anyways you can also select your radio information up there and by the way when it comes to the sound system 10 speakers 205 watts is the standard setup however there is an optional 16 speaker Harman Kardon sound system that goes for 875 dollars if you wanted that but 16 speakers 464 watts if you went that route but we do not have that setup today so we have the 10 speaker sound system so what do you gotta say let's turn it on the radio see we got playing right now and let's test out the clarity of this one it's alright gets a job done certainly not gonna be as good as the Harman Kardon sound system but that'll do just fine no problems without sound system there but last thing I wanted to mention to you guys is when you do put the 330i in reverse you will find a rear view camera with dynamic grid lines still would also mention though there is a parking assistance package that goes for 700 dollars that is actually gonna add a 360 degree monitor with various different views so that is there that is available for you as well if you wanted to go that route and as always that is going to lead us into safety so like I said at the beginning of the video the BMW 330i is an IIHS top safety pick so certainly a good start there front side side curtain airbags come standard driver and passenger knee airbags as well in the back you're gonna find latch aka lower anchors and tethers for children for the rear car seats tire pressure monitoring system comes standard adaptive cruise control and there's a ton of standard advanced safety features to go along with that including frontal collision warning automatic city collision mitigation lane departure warning and auto dimming rear view and driver side exterior mirror you don't always see that so I wanted to emphasize that blind spot monitor with rear cross traffic alert doesn't come standard but it does come with any of the package options you can pick any of them you're gonna get the blind spot monitoring system that way driving assistance package for 500 dollars that provides partially automated support including traffic jam assist steering and lane control a blind spot monitor also comes with that package if you wanted that and park distance control sensors to kind of beep at you if you get too close to an object basically and so overall when it comes to my final thoughts of the 330i good handling good ride quality amazing fuel economy for what this car is so that's certainly good amazing braking as well that 60 to zero stop in distance of 103 feet I can't get over that that's amazing for this segment I will say that ambient lighting is definitely a must in my book the only thing I would have liked to have seen it would have been cool to see the three series still offer a manual transmission I know that probably don't sell almost any of them although I will say the Genesis G70 does offer it still but probably not for that much longer but I did want to say it would have been kind of cool to offer manual transmission but overall a very solid choice here with a 330i certainly enjoyed my drive here today and that about concludes my review so feel free to follow me on social media at the bottom of the screen there if you like be sure to hit the subscribe and the bell notification button if you're in the new car reviews that is what we do here on this channel do appreciate you guys watching more than you know and I will see you guys all in the next video stay gold