Hello, everyone. It's really good to see you all. It's probably been a bit of a long day of talks because I know it's in the afternoon right now, so I'm really glad you could come here to see my talk on narrative-focused video games development with RenPai. So just before I get into the meat of the talk, I'll just quickly introduce myself. I run Quill Game Studios and it's a small studio and I really bootstrapped it, so I took on the role of the software developer, the game writer, the project manager, and marketing, et cetera. In terms of my full-time work, because I actually do the video game studio as a hobby, I do Ace, which is a machine learning livestream YouTube channel, so you can actually find it if you search Aggregate Intellect or AISC, Machine Learning Livestreams on YouTube. It has around 11k subscribers and in my full-time work, I work as a senior data scientist and I use Python, so I'm very excited that I'm able to use Python for both my hobbies as well as my full-time work. Yeah, so that's like an old picture of me. I just have it because I'm eating a panipuri, which is, I believe, like a street food in India. So I'm based in Canada, but yeah, sometimes my coworkers took me to some places and I could get that. So I started this game project around end of 2017, but I feel it has been longer. So it is creating the game, designing the game, and there is game writing as well. So I wrote the story first before I started coding it in Python. So it actually has been a really long, long, long journey, but I want to share in this talk how Python helped me and how Rampai, this open-source engine, has helped me. So just to take a quick look at the end product, it is a game called The Summer with Ashiba Inu. It launched last year on Windows PC, Linux, and Mac, but then I did a console launch this year, and it's actually sold fairly well so far, and I'm really glad that I was able to use Python and the tools that were built with it to be able to generate a little income with a hobby. So the overview of the talk is going to be three parts. The first, because I understand that not everyone might come from the gaming background or gaming industry, I'm going to give a bit of an outline, so please bear with me on that part. I think it will really help understand why Python could be good for games as well as an overview of the industry in general. I'm going to talk about the specific subset of games that I can make with Rampai because it's not going to make all types of games, and then I'll go a bit into the source code as well as different types of design decisions in the Python-based game engine Rampai. A little bit of an overview on platforms. There are, I guess, the main computer OSs as well as consoles, so I launched my game on all of these. There's Windows, Linux Mac, Nintendo Switch, Xbox One, and PlayStation 4. The gaming industry is fairly big. It has all of these, but then it also has mobile as well, which is another huge, huge, huge industry, which I personally am not that familiar with, so I'm not going to really go into that. I did look up the console gaming in India. It's fairly large. It's very popular, and the head of Sony PlayStation, and this is just one of those consoles claims that around seven to eight million people play on the console quite regularly and then even more own the console in the first place. There are some different types of studios, and I'm going to walk through this because I want to come at it from a developer perspective, like kind of flipping the mindset of when you are playing the game as a gamer to the studio who is developing it, because that is kind of the core of this talk. The first type of studio is commonly called AAA Studios, so they are huge. They have funding. They're kind of like movie studios, in a sense. They could have millions of dollars USD in funding, as well as they ship very, very popular games. I looked up what's popular in India, and I think FIFA, the last of us are heard of or known in India Overwatch as well, and Assassin's Creed franchise. So these are made by companies Blizzard, Naughty Dog, Ubisoft, which are huge. They have millions in funding, and they usually sell millions of units as well. So when you think about it, one game in the US could sell for 70 USD, and they could sell millions of copies. So they make a lot of money, but their spend is also a lot, because they could have from hundreds to thousands of game developers on their payroll. So this is one type of gaming company. And I want to contrast this with a popular kind of way of making games nowadays. It didn't used to be so commonly seen. Indie studios are small, and it's short for independent. So these are usually studios that don't have a huge budget like the AAA studios I showed you just before. They could be made by one person. They could be made by five to ten people. But then all the games I showed you actually starred you Valley. It sold millions of copies like in the first week. So the guy who made it basically became a millionaire in the first day. So these stories are very inspiring, and it also shows that it is possible to get into video game development as a solo developer. And some indie games have a large budget or relatively large budget. So it could be ambiguous if they are AAA or if they are indie. So I know that PUBG is quite popular in India, and I just heard of some news that they had also a eSports team that recently signed on to a very popular eSports franchise. So games like these, they also have millions of players. But yeah, it's kind of like their team is smaller. They're not as big as Ubisoft or something like that. So there could be some ambiguity in it. So just to take another look behind the curtain before I kind of go into why I could use Python to do things like this, it's just to take a quick look in other roles in game development, right? Because it's not just a programmer that makes the game happen, right? Because I program in my full-time work. If I was just programming and the game could magically appear, then I would be happy. But actually, no. I had to outsource the art because I cannot do art myself. I'm a very bad artist. But when you think of games like Pokemon, right, you don't really think of, oh, what's their like engine running on? Or you don't really think about the physics in their code. What you might come to mind as a gamer is really the art style. So it's not only the programmer in the games industry that is important in creating a distinct game, but rather a lot of other roles like the writing or the art as well as the producer. So the producer is kind of like the director in movies in case that term is not that familiar. They're usually the ones who tie everything together and have some sort of high-level direction. But they're not necessarily doing the programming themselves. But those roles are absolutely necessary. And they're actually built as very, very high up in the credits in games, just like directors of movies. So there's a lot of roles. But of course, I'm going to come at it from a programmer perspective. However, just letting you know what I learned during the process that, okay, a lot of these other roles are absolutely crucial or the game will not really be shipped. So yeah, I have talked about the AAA studios, which has millions of dollars in budget, which I as an individual, I don't have. And aspiring game developers probably don't have either. So I had to enter it through the independent development portion, which means low budget, which means using open source tools. And Python is one of them. And I already used it in my full-time job as a data scientist. So the learning curve was slightly less. But it's a bit different, kind of a different type of mental model to use than data science. But it has the great documentation. And also, you have to think about game objects as object-oriented programming. So that's really helpful to be able to make that cross into the indie game development. So I'm going to talk a little bit about the specific types of games that this engine is going to use. Because before I have mentioned some games like FIFA or something or like Overwatch, and those could be 3D games, and they are like, let's say shooting games or like planning, like running around and kicking a soccer ball, that you will not be making that type of game in RemPy. That would be better handled by other engines like Unreal Engine or Unity, which I'm not going to cover here. So I'm going to just narrow it down what RemPy is doing. So narrative-driven games are quite popular. I bring up an example that's not a video game, but it's a popular series on technology, like a sci-fi technology TV series called Black Mirror. And they have this kind of video where you can make choices, right? You can choose to accept an offer, you can choose to refuse, you can choose to like jump out a window, you can choose to not jump out the window. And then after you select that, the movie will go into a different direction. So this is kind of a narrative-driven kind of narrative design, in a sense. That can be done in movies, books, games. So I bring up some popular examples of games. Like this is a very, I guess, famous game series called the Nonary Games.  But apart from the mystery, there's a lot of dialogue because you see on the screen, there are so many characters. They all get to know each other, get to see what each other's weaknesses is, but that's all conveyed through dialogue. So you can see at the dialogue box below, like these games are very popular. I would say it kind of started in Japan, but like these are very popular in the West. I'm not very sure how much this particular series sold in India. I couldn't really find that info. But even in US and Canada, it's extremely popular. And so are games like the recent Persona 5. You can see there's a lot of dialogue, even though there are some other types of gameplay, like fighting and stuff like that. But in between, all of these are dialogue and narrative-driven. So these types of games are the types that are suitable for Rampai development. Another example is Danganron, but which is also very popular in both the West as well as in Japan. And the thing is, the three examples I've mentioned, they are more like AAA. They have custom game engines. They have much more developers than I could afford to hire, despite being one myself. So they have a lot of resources, but it's hard as a solo dev because it's costly. So I just wanted to, actually, I eat these Parle G cookies a lot when I was working at the office. Now I work from home. So I wanted to convey this feeling where, oh, it's like, wow, there are so many games you could make. You could make a custom engine, right? But it's just too expensive. I can't do that as an independent developer. And I'm working full-time. How do I have time to do that? Right? So it's like the feeling when you are dipping it in Chai and then it just falls off. And I'm like, I can't do it. But I discovered Rampai, which makes me feel better. And I was able to do all of those things that I thought I couldn't do before. So now for the remaining of the talk, after we have now kind of gone through the gaming industry, the types of gaming studios, and why I was able to join gaming in the first place as an independent developer, right? Because it seems very hard. I want to show how Python and Rampai helped me do that. So Rampai is open source. It's totally free. It's royalty free to use, right? Which kind of fixes that problem of the custom engine. But you also want to think like, okay, it's not a custom engine, but can it actually be flexible enough to do everything I want to do? Can I make high production things? Or is it like drag and drop without a lot of customization? No. But that's not the case. So from Nano Reno. So Nano Reno is kind of like a one month sprint where game developers get together to make this kind of story driven, narrative driven, visual novel types of games. All of those mean kind of the same thing. I just bring them up because you might see them in the news or in popular media. They use all those terms interchangeably. So from these like one month sprints, which are just for prototyping or MVP, minimal viable products to very, very high budget games. And you can just find it on GitHub, the engine, as well as they have a site where you can download. Yeah. So from Nano Reno games to very high budget games you can make with Rampai. And the creator's philosophy is he wants to make the best way to make visual novels and give it away for free, which is what I would say he did. And it's open source. So you can actually make podcasts and he triages them and he merges them sometimes. So yeah. And object oriented programming is standard in game development. And I'll explain a little bit more on that. But namely it is helpful to use Python because I guess before, right? Because the popular gaming engines like Unreal is, I guess you can use C++ and Unity, which is another popular one, is mostly based on C sharp. So one might think, oh, okay, I know Python. I like Python. I'm not sure if I could make games in it. But yeah, it's not the case. It's, it's all OOP. It's all very standard in game development. So you don't really have to worry about apart from the kind of 3D part aside, the design choices and stuff are very similar. So I just wanted to bring something really quick. As you can see in the code to the left, I'm not sure if you can see it. Rampai actually, apart from just normal Python, it also has a lexer. So that just means it reads this kind of more human, human friendly language into Python code at the back end. So then what, what this means, what it does is it's a bit more human friendly. So like Python knows that a lot of non-programmer people might want to make games, right?  So he actually made this in the engine. So sometimes if you see the code I show later, which does not look like standard Python, it's because it's actually converted to Python in the back end. And then you're able to use just some more machine friend, human friendly language in it. So I want to showcase some of the capabilities of Rampai. The first one is an example with Doki Doki Literature Club, which is a game that's been downloaded millions of times. It's kind of become viral. Like there's tons of videos, like Twitch streams on it. There's even people who make mods of it. And it's a visual novel game made in Rampai. So you can have a lot of visual effects in it, not just this one, but this is just an example of kind of the way the developer made the game creepy. So it's like a creepy game with jump scares. So things just show up on the screen and they kind of shock the player. So these are all things that might seem familiar to you. So a lot of the visual effects are actually implemented as classes. So in this source code, I hope it's big enough. But basically, all you need to know is that there is an image-dissolved class. And this is just one of the many, many visual classes there are. But then you can actually just define a sort of transition image file in there. I hard-coded the path. But as you can see, there's a lot of customization that can be done in the class. You can even modify the class itself to create different visual transitions. So this is just one example. So hopefully, you can see the image as well. So it's like if you have a transition, you can create animations like this and much more. And they're just all in your very familiar, like, Python classes. That's how they're implemented. And actually, for me, when I looked at it, I was like, oh, this is familiar. I know how to do these. Just to show another type of game that is made in Rempai is it can capture really complicated variables. So this game is called Long Live the Queen. And it's a strategy game where each day you do different tasks. Like, you're like, oh, I need to train this princess figure to study books or study law or should she go horse riding or something. But it's like extremely complicated. It's like a super complex strategy game. But then when you peek into the source code, like all of these trackers, they're just like all being captured in the Rempai and Python in the back. So it's like able to create these extremely complex games and just like evaluate them as the player is going on.  So it's able to capture these very complex player interactions as well as complex player strategy and respond appropriately. So I think that Rempai is able to create very, very complex logic in the game. So actually, there is like something pretty interesting, which is it has a 3D camera now. So it's kind of like 2D 3D. It's like you have 2D characters in a 3D environment. And then you can kind of pan the camera around for more animation options. And this is fairly interesting. I personally have not used this in my games yet. But I really enjoy that just an open source engine can have this kind of functionality. And like I'm honestly very grateful because it allows one to create very flexible types of games. So one last example I'm going to show is that, okay, you might think that, okay, these games kind of start to look similar like they have a dialogue box at the bottom, right? But actually, you can just change it however you want because these dialogue boxes, they're actually just like menu classes, which is, I guess, a familiar way of thinking. Like you can just inherit them, change them how you want. Like it's really, really flexible. So I really do enjoy that part of Rempai because you can make the game really look high budget as well as customized. Yeah. So in my own game, I'm going to show a little bit more of the, just like the basics of the code and high level how I did it. So here is when a player makes a choice. You can see there was like two choices to select and then you wait and the player might read the choices, think about it, because the choice will actually impact the story's ending. So they will take some time to think about it. But I was like, okay, I'm going to make a timer to just like tell them how much time they took to make the choice, as well as create some random dialogue after that. So it doesn't, so it'll say like, that took some time. So this was done in what you can see is very familiar and even basic Python syntax, right? Just import random import time and it's in the game. Well, not exactly that simple, but like this is stuff that you might be like, oh, like this is any anyone who knows even a little bit of Python could do, right? So you just have start time, get the time. Yeah, you just like subtract the time and it takes, you just there you have a timer in the game of how long the player took to make the decisions. And there are some other fun things that I did as well. So you can use just like decorators and everything like stuff that you're totally familiar with in Python, you can use like format string, another thing you're super familiar with. So what I did was you just to make the dialogue not seem so stale or repetitive, like it's not like every day, every time they're saying, good morning, good morning, good morning, it's like, oh, good morning, or how are you so you just import random and do just like pick random one out of these strings. So that every time they will say different things. So it could be like, hmm, or interesting, or wonderful, but not always like the same thing, not like, wonderful, wonderful, wonderful, right, it kind of gets boring. So this is just like very, very simple Python code, as I'm sure you can all easily understand and have used before. But actually this what this does is it allows the game to have a little bit more interactivity with the player and the player is able to notice these small things that you can implement. And these are just the most basic examples that I showed. There's much, much more. But I wanted to kind of show that game development is not as mysterious as it seems to be, because that's what I thought at the beginning as well, I was quite intimidated by these AAA studios, their budget, as well as the graphics, right. So there we have it. You could easily remake this is one of the examples I showed earlier, which is not a video game, but it's a movie, which you can select choices and change all the outcomes. You could actually make it in Rampai as well, you could remake it. And there's another tool called twine, which is a bit different. But on the screen, I think on the behind the scenes, they actually said they used twine, which is also popular with Rampai creators, not not for coding purposes, but kind of how to sort out the story. Yeah, so your imagination is the limit with Rampai. I've showed a lot of examples of how flexible the engine is, and how you're able to make changes and make the game really feel like your own, as well as have a lot of types of animations, even though it's not exactly 3D graphics, which are more expensive and more resource heavy, in which I would use the other game engines. But for these types of 2D narrative driven games, I would really suggest to use Rampai. And even though it's open source and royalty free, and that's not a bad thing at all. Like in fact, I'm so happy that it is, I was able to afford to make things like this with existing skills in Python. Awesome. Yeah, so if you want to check this out, you can definitely go to their GitHub Rampai, and you can check out the repo as well as my game, a summer with the Shiba Inu. But I want to encourage you to check out all the other games that I have listed before as well. So if that kind of interested you and you're able to kind of have an idea of a game and you want to make it in 2D and have some story driven choices, definitely just go download it and check it out. So you can contact me at these places. Yeah, so thank you very much once again for coming to this one of the last talks of the day. Thanks a lot. What a great talk. So we have a couple of questions that depending on time, we'll see how many we can take. So the first question we have is, is Rampai and Rampai 3D different modules or just sub-module? Actually, that's a good question. I'm not extremely sure, but I would say it's a sub-module because I think they're not separate. I think you might have to download. I don't know if they connected a third-party plugin, actually, because there's another thing that I know called Live 2D, which is actually a third-party plugin. But then I actually forget if the 3D camera itself is one of those. But if anything, you're able to kind of get it in the same development environment, I guess. Yeah, so I'm not personally sure what the exact difference is. Yeah, there's a lot of integrations. So mostly I work with Rampai that is kind of by its own. But then Rampai Tom has made some third-party integrations that I've mentioned with the Live 2D, which is a separate thing. So that is possible. Yeah. Yeah, there's another question. Any good open source tools for creating anime? Ooh. So actually, for this, I have in the process of finding artists for this, there are some free art tools that I have found that are popular. One is called GIMP, G-I-M-P. So, well, the G, I think, actually stands for GNU. So, I mean, it's open source, as you can tell. So, that is one really good tool. And a lot of very, very skilled artists, like it's almost comparable to, okay, I don't want to make claims because I'm not an artist, but I hear it compared to Photoshop itself a lot, which is like super expensive. So, I would suggest GIMP for making anime art. Yeah. Awesome. One last question. What are some good tutorials, references for RemPy, for someone who is just starting to learn or getting to game development? Ooh, yeah. So, actually, the RemPy distribution, it comes with a set of tutorials, which is very, it's kind of like a mini game, which is a tutorial. So, it's very intuitive. So, I would suggest literally just downloading it and then it actually has all that stuff in built. And it helped me a lot. It is a very well-made tutorial. Like, it even has the source code as the animations are showing up. So, kind of how I showed you. So, it'll have like the visual display of what will happen. And then it just has the source code right there. So, I would really suggest like its own tutorial very first. And the documentation website is also very robust, which is, yeah, I guess very in line with what the Python community is generally. Awesome. Thanks a lot, Susan. It was a great talk. And I see the chat is flowing with the same thing. We really appreciate it. And have a good day. Thank you.


So have you ever had to fleet with this Saturday? Some good memories from going there last season obviously the victory on Boxing Day? Yeah, it was a good day for us We'll be very pleased. I'm talking to repeat I'm sure you'll be hoping for a Peter of last as recently as last Saturday the victory overall Yeah, I started the game very well I thought we'd carried on from the second half against Port of Aile really in the manner of the way we played and and Nothing less Than that will be good good enough this weekend because fleet with a good side Got an excellent squad good manager And we have to go out there all guns blazing if we want to get results one of the plays we came back and said Josh Morris obviously former fleet would play every few eyes on him going back to a club He knows quite well. Yeah, I had a good season for them last year Josh So there's no most players I'm sure but he's just got a focus I'm doing what it did last week and During the week our first reserve fixture the final third development league first reserve fixture of the season Victory over Burton It's been nice to see some of the certainly some of the senior lads and some of the young lads get out and get some Some good game time. Yeah, but I'm played a very young team However, the attitude of the players was great and all you can do is be what's put in front of you and I was very pleased with the way the senior boys approached it, but also the youngsters as well. It's good for them Like Greg Lee and Dylan to get 90 minutes under the belt. They really needed that and It's been frustrating for Greg in particular because he's been waiting patiently for his chance But you know, so it was a useful exercise and good to get some goals


Live from downtown San Francisco. It's theCUBE. Covering IBM Chief Data Officer Strategy Summit 2018. Brought to you by IBM. Welcome back to the IBM Chief Data Officer Strategy Summit in San Francisco. We're here at the Park 55. My name is Dave Vellante and you're watching theCUBE, the leader in live tech coverage. Hashtag IBM CDO Seth Dobern is here. He's the Chief Data Officer for IBM Analytics. Seth, good to see you again. Good to see you again. Anytime, CUBE alum. Thanks for coming back on. Asim Tuwari. Tuwari? Tuwari, sorry. Tuwari, yes. Asim Tuwari, I can't read my own writing. Head of Data Science and Advanced Analytics at Verizon. In from Jersey to East Coast Boys, three East Coast Boys. Three East Coast Boys. Yeah. Welcome gentlemen. Thank you. So, Asim, you guys had a panel earlier today. Let's start with you. What's your role? I mean, we talk you're the de facto Chief Data Officer at Verizon. Yes, I'm responsible for, you know, all the data ingestion platform, big data, and the data science for Verizon, for wireless, wireline, and the enterprise businesses. And it's a relatively new role at Verizon. You were saying previously you were a CDO in a financial services organization. Common that a financial service organization would have a Chief Data Officer. How did the role come about at Verizon? Are you Verizon's first CDO or? I was actually brought in to really pull together the analytics and data across the enterprise because there was a realization that data only creates value when you're able to get it from all the different sources. So we had separate teams in the past. My role was to bring it all together to have a common platform, common data science team to drive revenue across the businesses. So, Seth, this is a big challenge, obviously. We heard Caitlin this morning talking about the organizational challenges. You got data in silos.  Champaigning. Champaigning, yeah, okay. But you have a similar challenge. You get a big company complex. A lot of data silos come in. Yeah, I mean, IBM is really, think of it as five companies, right? I mean, and any one of them would be a Fortune 500 company in and of themselves. And so even within each of those, there were silos, and then Indipal trying to bring them across, the data from across all of them is really challenging. And honestly, the technology part, the bringing it together is the easy part. It's a cultural change that goes along with it. That's really, really hard to get people to think about. It is, you know, IBM's or Verizon's data and not their data. And that's really how you start getting value from it. So that's a cultural challenge you face. Is, okay, I've got my data. I don't want to share. And how do you address that? Absolutely, you know, governance and ownership of data, having clear roles and responsibilities, ensuring there's this culture where people realize that data is an asset of the firm. It is not your data or my data. It is firm's data and the value you create for the businesses from that data. So it is a transformation. It's changing the people, culture aspect. So there's a lot of education. You know, you have to be an evangelist where multiple hats to show people the value, why they should do. And obviously, I had an advantage because coming in, Verizon management was completely sold to the idea that the data has to be managed as an enterprise asset. So business was ready and willing to own data as an enterprise asset. And so it was relatively easier. However, it was a journey to try to get everyone on the same page in terms of ensuring that it wasn't a solid mentality. This was the enterprise asset that we need to manage together. A lot of organizations tell me that, first of all, you got to have top-down buy-in. Clearly, you had that. But a lot of times I hear that the C-suite says, okay, we're going to do this, but the middle management is sort of, they got a P&L, they've got to make their plan, and it takes them longer to catch up. Did you face that challenge? And how are you addressing it? Absolutely. What we had to do was really make sure that we were not trying to boil the ocean, that we were trying to show the value. So we found champion, for example, finance, was a good champion for us where we used the data analytics to really actually launch some very critical initiatives for the firm, asset-backed securities, for the first time Verizon launched ABS, and we actually enabled that. So that created the momentum, if you will, is to, okay, there's value in this. And that then created the opportunity for all the other business to jump on and start leveraging data, and then be all willing to help and be part of the journey. So Seth, before you joined IBM, obviously the company was embarking on this cognitive journey, you know, Watson, the evolution of Watson, the kind of betting a lot on cognitive. But internally, you must have said, well, if we're going to market this externally, we better become a cognitive enterprise. So one of the questions that came up on the panel was what is a cognitive enterprise? So you guys, have you defined it and love to ask a sim the same question? Yeah, so I mean, a cognitive enterprise is really about an enterprise that uses data and analytics and cognition to run their business, right? And it's, but you can't just jump to being a cognitive enterprise, right? It's a journey or a ladder, right? Where you got to get that foundational data in order, then you got to start even being able to do basic analytics. Then you can start doing things like machine learning and deep learning, and then you can get into cognition. It's not a just jump to the top of the ladder because there's just a lot of work that's required to do it. And you can do that within a business unit. The whole company doesn't need to get there. And in fact, you'll see within a company, different parts of the company will be at different stages, kind of to Sim's point about partnering with finance. And that's my experience, both at IBM and before I joined. You find a partner that's going to be a champion for you. You make them immensely successful and everyone else will follow because of shame, because they don't want to be outcompeted by their peers. So similar definition of a cognitive enterprise? Absolutely, in fact, what I would say is cognitive is a spectrum, right? Where most companies are at the low end of the spectrum where using data for decision making, but those are reports, BI reports and stuff like that. But as you evolve to become smarter and more AI machine learning, that's when you get into predictive, where you're using the data to predict what might happen based on prior historical information. And then that evolution goes all the way to being prescriptive, where you're not only looking back and being able to predict, but you're actually able to recommend action that you want to take. Obviously, with the human involvement, because governance is an important aspect to all of this, right? But so completely agree that the cognitive is really covering the spectrum of prescriptive, predictive, and using data for all your decision making. And this actually gets into a good point, right? I mean, I think, you know, as Sim has implemented some deep learning models at Verizon, but you really need to think about what's the right technology or the right use case for that. So there's some use cases where descriptive analytics is the right answer, right? There's no reason to apply machine learning or deep learning.  Then there are use cases where you do want deep learning, either because the problem is so complex or because the accuracy needs to be there. And I go into a lot of companies to talk to senior executives and they're like, we want to do deep learning. And you ask them what the use case is and you're like, really, that's rules, right? It gets back to Occam's razor, right? The simplest solution is always the answer. It was always the best answer. And so really understanding from your perspective, you know, having done this at a couple of companies now, kind of when do you know when to use deep learning versus machine learning versus just basic statistics? Well, how about that? How do you parse that? Absolutely. So, you know, like anything else, it's very important to understand what problem you're trying to solve. When you have a hammer, everything looks like a nail and deep learning might be one of those hammers. So, you know, what we do is make sure that any problem that requires explainability, interpretability, you cannot use deep learning because you cannot explain. When you're using deep learning, it's a multi-learn neural network algorithm. You cannot explain why the outcome was what it was. So for that, you have to use more, you know, simpler algorithms like decision tree, like regression, classification. And by the way, 70 to 80% of the problem that you have in the company can be solved by those algorithms. You don't always use deep learning. But deep learning is, you know, a great use case and algorithm to use when you're solving complex problems. So, for example, you know, when you're looking at doing friction analysis as to, you know, customer journey path analysis, that tends to be very noisy. You know, you have billions of data points, you know, that you have to go through for an algorithm. That is, you know, a good fit for deep learning. So, we're using that today. But, you know, those are narrower set of use cases where it is required. So, it's important to understand what problem you're trying to solve and where you want to use deep learning. And to use deep learning, you need a lot of labeled data, right? And that's often labeled data. So, and that's often a hurdle to companies using deep learning, even when they have a legitimate deep learning use cases, just the massive amount of labeled data you need for that use case. As well as scale, right? Because, you know, the whole idea is that, you know, when you have massive amounts of data with a lot of different variables, you need deep learning to be able to make that decision. That means you've got to have scale and real-time capability within the platform that has the elasticity and compute to be able to crunch all that data. You know, initially, when we start on this journey, our infrastructure was not able to handle that. You know, we had a lot of failures. And so obviously, you know, we had to enhance our infrastructure. And you spoke to Samit Gupta and Ed earlier about, you know, GPUs and flash storage and the need for those types of things to do these complex, you know, deep learning problems. We struggled with that even inside IBM when we first started building this platform is how do we get the best performance of ingesting the data, getting it labeled and putting it into these models, these deep learning models and some of the instances we use that. Yeah, my takeaway is that that infrastructure for AI has to be flexible. You've got to be great granularity. It's got to not only be elastic, but it's got to be, sometimes we call it plastic. It's got to sometimes retain its form, right? And then when you bring in some new unknown workload, you've got to be able to adjust it and without ripping down the entire infrastructure, you have to purpose-built a whole next set of infrastructure, which is kind of how we built IT over the years. And I think Dave, too, when you and I first spoke four or five years ago, it was all about commodity hardware. Right, it was going to Hadoop ecosystem, minimizing, you know, getting onto commodity hardware. And now you're seeing a shift away from commodity hardware in some instances towards specialized hardware because you need it for these use cases. And so we're kind of making that, we shifted to one extreme and now we're kind of shifting and I think we're going to get to a good equilibrium where it's a balance of commodity and specialized hardware for big data as much as I hate that word and advanced analytics. Well, yeah, even your cloud guys, all the big cloud guys that used to, you know, five, six years ago, it's all commodity stuff and now it's a lot of custom because they're solving problems that they can't solve with the commodity. I want to ask you guys about this notion of digital business. To us, the difference between a business and a digital business is how you use data. And so as you become a digital business, which is essentially what you're doing with cognitive and AI, historically you might have been organized around, I don't know, your network. And certainly you've got human skills that are involved and your customers.  Increasingly, you're organizing around your data, aren't you? Which brings back to cultural change, but what about the data model? I presume you're trying to get to a data model where the customer service and the sales and the marketing aren't separate entities. I don't have to deal with them when I talk to Verizon. I deal with just Verizon, right? And that's not easy when the data is on sale. So how are you dealing with that challenge? So customer is at the center of the business model. Our motto and our goal is to provide the best products to the customers, but even more important, provide the best experience. It is all about the customer, agnostic of the channel, which channel the customer is interacting with. The customer, for the customer is one Verizon. So the way we are organizing our data platform is, first of all, breaking all the silos. We need to have data from all interactions of the customer that is all digital, that's coming through, and in creating one unified model, essentially, that essentially teaches all the journeys and all the information about the customer, their events, their behavior, their propensities and stuff like that. And then that information using algorithms like predictive prescriptive and all of that make it available in all channels of engagement. So essentially, you have common intelligence that is made available across all channels. So whether the customer goes to a point of sale in a retail store or calls, call center, talks rep, or is on the digital channel, is the same intelligence driving the experience. And whether a customer is trying to buy a phone or has an issue with a service-related aspect of it, and that's the key, which is centralized intelligence from Common Data Lake, and then deliver a seamless experience across all channels for that customer. Independent of where I bought that phone, for example. Exactly, maintaining the context is critical. If you went to the store and you're looking for a phone and you didn't find what you're looking for, you want to do some research, if you go to the digital channel, you should be able to have a seamless experience where you should know that you went and you're looking for the phone. Or you call the care and you're asked the agent about something. So having that context be transferred across channels be available so that customer feels that we know who the customer is and provide them with a good experience is the key. We have limited time, but I want to talk about skills. It's hard to come by. We talk about that. It's number five on Interpol, so the list of things you got to do as a CDO. Sometimes you can do M&A by the weather company. You get a lot of skills, but that's not always so practical. How have you been dealing with the skills gap? Look, skill is hard to find. Data scientists are hard to find. The way we envisioning our talent management is two things we need to take care of. One, we need solid big data engineers because having a solid platform that has real-time streaming capability is very critical. Second, data scientists. It's hard to get. However, our plan is to really take the domain experts who really understand the business, who understand the business process and the data and give them the tools, automation tools for data science that essentially will put it in a box for them in terms of which algorithm to use and enable them to create more value. So while we will continue to hire specialized data scientists who are going to work on much more of the complex problems, the scale will come from empowering and enabling the domain experts with data science capabilities that automates choosing model development and algorithm. And presumably grooming people in-house. Grooming people in-house, and I actually break it down a little more granular. I even say there's data engineers, there's machine learning engineers, there's optimization engineers, and there's data journalists. They're the ones that tell the story. And I think we were talking earlier, I've seen about, it's not just PhDs, right? You're not just looking for PhDs to fill these roles anymore. You're looking for people with master's degrees, and even in some cases, bachelor's degrees, and with IBM's new collar job initiative, we're even bringing on some, what we call P-TECH students, which are five-year high school students, and we're building a data science program for them. We're building apprenticeships, which is, you've had a couple of years of college, building a data science program, and people look at me like, I'm crazy when I say that, but the bulk of the work of a data science program, of executing data science, is not implementing machine learning models, it's engineering features, it's cleaning data. With basic Python skills, this is something that you can very easily teach these people to do, and then under the supervision of a principal data scientist, or someone with a PhD or a master's degree, they can start learning how to implement models, but they can start contributing right away with just some basic Python skills. And then five, seven years in, they're domain experts. All right, guys, got to jump, but thanks very much, Simp, for coming on and sharing your story. Is that always a pleasure? Yep, good to see you again, Dave. Thank you, Dave. You're welcome. Keep it right there, buddy. We'll be back with our next guest. This is theCUBE live from IBM's CDO strategy summit in San Francisco. We'll be right back.


Welcome traders, to another tip on the chart here at the New Patrick Romney, want to draw your attention to Bitcoin, run the daily timeframe here, we're testing some pivotal support at this 28,600 area up to 29,700, trying to put in a bullish reversal here. Watch for a close back through 32,000, this descending trend line resistance, that could set up a move higher to ultimately test range resistance at 40,000, and this major descending trend line resistance coming in there as well. However, if we fail to hold on to this support zone at 28,500, any move through there will ultimately set up a test down to yearly pivot at 20,700, and that would be a key decision point for the markets. So it's always traders plan the trade, trade the plan, most importantly manage your risk. Until next time, thanks very much.


Maybe you only had an hour at a location or you were documenting a once in a lifetime event? This is the intense life of running gun filmmaking and to this day it's still a mystery to me how it's not considered an extreme sport. Hey it's Herman here with Artlist and I want to share three tips I wish I knew when I started running gun filmmaking or as I like to call it the art of only having one shot. It's a style of filmmaking that requires you to always be on the move and be ready for the next shot. You have limited resources like time, crew, and preparation. Film school may have prepared me for a life on a fixed set with a cam-op, a boom operator, and this nice lady behind crafties but after graduating I was hit with the reality of having to do it all myself. This is because I was working in genres outside of narrative films like interviews, live performances, and event recaps. Moments that didn't allow for retakes or intense setups. Even when shooting narratives I had limited time on locations and with actors. But these three tips made shooting in these scenarios so much more fluid and although you can't control what happens in the moment you can be as prepared as possible before going in. The first tip is to use zoom lenses over prime lenses because coverage is king in running gun moments. Whether you're using a cinema camera, DSLR, or even your phone having the option to zoom in and out guarantees you never miss a moment. Now imagine filming at a music event and you see a couple dancing and having fun so you want to capture the joyful expressions on their faces. If you're on a fixed wide lens you'd have to get up all on their face as this uninvited third dance partner.  By the time you try switching lenses you turn around to discover that the couple is already gone. Now don't get me wrong prime lenses have advantages like being sharper or having wider apertures but for quickly capturing raw moments it can feel like bringing heels to 100 meter dash. Now I've personally missed so many moments before just because I didn't have the right focal length so I highly recommend getting something at a comfy range like 28 to 75 millimeters. There are zoom lenses with a larger range like 24 to 105 millimeters but be aware of the f-stop on them because they could be a variable aperture lens. Basically what that means is your exposure will shift the more that you zoom in and I personally find watching paint dry way more enjoyable than fixing variable exposure in post. Even the zoom on your phone can be enough for the job and there are phone cameras out now that zoom in so crisp I'd swear it was shot with a space telescope. Now the second tip is to use monopods for more stable shots. After graduating from a school where everyone and their mom threw the camera on a tripod I was appalled when I was introduced to the monopod. I thought someone tragically broke a tripod on set and all that was left was a single leg but soon I learned that one leg was all I needed. Not not these guys I still need these for running gun. A monopod is a collapsible one-legged version of the tripod built for on-the-go scenarios. I used to only shoot handheld because lugging around a tripod felt like I was being shackled to a ball and chain but my client would ask if I was filming on a jackhammer with how shaky my footage was. So a monopod has been my secret weapon for years to prevent shaky footage while being easy to move around. There are models now with a base that you can lock off for static shots but my favorite thing to do is slowly push in the camera to add a little bit of movement. Even if you're filming on your phone you can attach a mini tripod to a selfie stick to make your very own monopod for more stable shots. So I highly recommend trying them out over tripods because I found it to be way more efficient and versatile. Just look how you can double it as a baseball bat. I'm kidding please treat your equipment with respect. Now while we're talking about efficiency I used to have a lot of trouble finding good music for the videos I made. Whether you're into running gun or creating super intricate videos in a studio music is the backbone to setting the tone of your videos and Artlist has been my go-to solution because of how efficient their filtering system is. Just like how we need good music we also need to pay attention to good audio which brings me to the third and final tip I have which is to use lav microphones if you're filming a subject that will move around a lot. A lav mic is a tiny microphone that's easy to hide when you're recording dialogue. They're usually attached to your subject's shirt, collar, and sometimes straight on their chest if you're like me and you want to give someone a free wax. They are traditionally used when you're filming a wider scene and you don't want to play hide and seek with your boom operator so you tuck the lav mic on your actor or hide it somewhere close. Check out the blog post from Artlist if you want to learn more about different types of microphones by clicking the little pop up in the corner. I used to film a lot of street magic which involved a performer walking around and showing magic tricks to random people. A lav mic was the best way to capture audio in this situation because it allows you to be mobile and not free people out with a dead cat in their face. There are even wireless lav mics that you can attach to your phone which is such a convenient way to capture your subject's voice in high quality. This works great if you're doing interviews or your subject is walking and talking and you don't want to miss a single word they say. Now you can plug the receiver directly to your video camera but I recommend having a shotgun mic on your camera and a separate audio recorder like an H4N for your lav system. That way you have two audio sources in case anything goes wrong like the lav mic is rubbing against the subject's shirt or someone screaming unexpectedly. Happens way more than you think. There you have it. Three quick tips that have made my experience so much more smooth in running gun situations whether it's sport events concerts or someone performing magic tricks. I hope these tips will help you always be ready so that you never miss a precious moment again. Even the phone in your pocket can be used to capture moments in high quality now truly making it the ultimate running gun tool of today. Let us know in the comments any other tips that have helped you in running gun situations so that it can help others as well. If you want more videos like this then make sure to subscribe to the Artless channel if you haven't done so already. Otherwise thank you all for watching and I'll see you all in the next one.


Basetsun Akumalo talks about reckoning with yourself. Starting a conversation with authors, TV personality Basetsun Akumalo believes no one has the right to tell your story, only you do. Basi said this at a Nelson Mandela Foundation event on Thursday where she was joined by authors Sylvester Shoke, Anathion Gaii, and Dilka Mandela, and Candace Mama, who recently launched their own books. There's a quote I love that says, lies told into history live as truth. It's important to own your own voice and take it back because if you don't, that will live as truth for generations to come. She said the reason why she penned her story was to encourage other women to rise against issues such as gender-based violence and other challenges they may be facing. To give a face to what depression looks like after seven miscarriages.   That also looks like Basetsun Akumalo, all of those things have also happened to her. I too can be able to rise up from where I am. I too can be able to find my voice again and strength again. She reassured the audience there was great power in holding on and said, Pain ends. Hold on.