Hello there, I'm Sandy Olnok. Welcome to my last cards for 2021. And that is shiny bows. These are stamps from Trinity Stamps. Been wanting to get to these for a while and finally did in my last YouTube video for the year. And the coloring on these is going to be the same for both bows that I'm going to show you. I'm not going to color all the tiny ones. I decided it would be easier to see the bigger ones and you would follow the same process for the little ones because they're basically just miniatures of the larger stamps anyway. So there's nothing new to see there. So I'll just do the two large ones. I'm starting off with an R14 and that's my base color for these, leaving a larger highlight that I know I need. The reason is because you can always close up a highlight but you can't add to it. Well you can add to it with a white pen but when we're talking red bows, white pen doesn't get along with red bows very well as you might know. It tends to soak up the color and red is just one of those colors. If you use white pen over top of watercolor or Copic or color pencil or anything, red just soaks in. That's just what it does. So instead I'm going to make sure I leave a little bit of white on each one. I'm thinking of the light coming from the upper right hand side and I'm treating each of these triangles separately in my brain and saying, okay if the light's coming from up there where is it going to reflect on this? And I wish I had a scientific thing that I could say make a triangle that looks like this, make a triangle that looks like that. Best bet would be if you want to color these particular bows especially is to screenshot some steps and guess what? I already screenshotted them for you over on my blog. How lucky are you that you don't have to do that so that at least you have a general guideline for how to do that. I've made this one of my tiny tutorials which have been very popular this year. That's been a nice thing that's happened in 2021. I decided to start doing carousel mini tutorials. I've shared a few of them here on YouTube and they get lots of love and attention. I think people like to have things in that kind of a format. And next up after I got the base color down is to add the base color for the portions that are underneath all of the bows that are down below. Now I'm assuming that they're going to be solid areas. There might be some white areas that would show through this. Maybe there are some gaps in there.  And made my shadow colors are the R37 went in first and this is the R89. R89 is one of my favorite dark colors to use with reds. And I want to show you something in how you can make this pop even more than it is popping now in the final step. So stay tuned for that. And I'm going to just kind of color most of this in with the R89. Not really leaving a whole lot of that R37 after all because I really wanted some nice contrast for these. And that requires having plenty of color in there. Next up is to put a little bit of that R89 into the portions that are up on top. But I'm leaving as best I can because it's sometimes hard in these little stamps. I'm trying to leave some bounce light on the opposite side. So if the shadow side is on the left, I'm trying to leave that absolute far left for the bounced light. The bounce light is going to be the R37. It's not going to be this R14 that's showing. But putting the R89 a little bit further away helps me to remember to do that portion because it's real easy to forget, especially when you're doing all of these at once, all these different little pieces. You could also just do each triangle one by one and then just get into a rhythm. I figured it would be faster to do it this way so I just proceeded. But you can see I'm taking that R37 and covering over those areas on the left hand side where that bounced light is. Because bounced light is not a highlight in the same way that on a shiny bow like this that you're going to get a really, really bright highlight. It's just a highlight within a shadow so it's really not something that I would call a highlight in that kind of a way.  And hopefully if you have taken my new class all about shading intent, you might have learned a little bit about that as well because there's some content on bounced light in that class. So moving along here trying to just get some of the blending going with that R37 color knowing that I'm going to use two more reds in this because you can see in the list there is a R14 and an R17. The R17 is a little stronger in color. So I am using that R17 to shave down the highlights a little bit further and the R17 has more pigment in it I guess. I'm not really sure how to describe that but it's more red than the R14 is. The R14 is a really weak color and I want to add more of that R14 but I want to have enough of this R17 so this feels really really red. Now the R14 is shaving down those highlights even more and you could even get rid of some of them entirely if you wanted to. You don't have to have the white highlights you could have pinkish highlights and maybe even go for a lighter pink color than this but you can see how that just starts to condense that highlight down to a smaller area. Now here's the magic part. The R89 is a pretty deep color but look what happens when you add a really really dark to it. There is no darker R. There's no darker red than an R89 that's as dark as it gets so you have to go for something else either a complement or a gray and so I went for a gray and then went back in with the R89 just to make sure that that didn't feel like a blackish color in there and added it in the shadow areas. The shadow areas are generally toward the light side the side the highlight is coming from. Usually that's the place to put the shadows because the light is kind of coming into the interior of the bow and hitting the opposite side. It's it's kind of a backwards thinking thing but it's very complex and very difficult to explain but there you go. The other bow that I'm coloring I won't talk through that one again the same colors I'm going to use the same sequence the same everything so you can see it on a rounded bow instead of the one with the triangles and the points on it and I thought I'd tell you about my sabbatical coming up because every December I take the month off because you guys are busy doing family stuff and parties and decorating and everything nobody's watching YouTube so I give myself the month off because the onslaught of holiday projects coming up to this time of year is exhausting. I feel like I've been on a treadmill of crafting and stuff and new releases coming out seemingly every week they seem to just come faster and faster but I am going to be taking the month off so I won't be here on YouTube. There's a possibility one thing might happen and if it does make sure you have your notifications turned on that would be clicking the bell down beside the subscribe button and you can tell it to send you all videos don't tell it to tell it to send you personalized because then they will decide which they send you but if you say notify me of all then you will get all but anyway I will be back in January so rest assured and I will be on social media plenty doing lots of teaching on there as well I'm going to keep that stuff up but I am going to take a youtube break and I have so many things on my list to do it's insane and other things just got piled onto it you know the sketch marker stuff that just happened that I've posted about recently yeah they're here so I'm like I'm tempted I really want to run to that project I have so many other big priorities for the business that I need to get to and I've been putting them off for a year so I need to get to those things it's driving me bananas lots of website stuff lots of planning for the new year there's going to be some changes coming in the new year I'm it's going to be good stuff you're going to love it and I just need to get on getting that stuff ready for 2022 and I'm thrilled to do it but goodness I am I'm going to be just as much an insomniac during my sabbatical as I've been during the regular part of the year if I thought this part was crazy that's going to be nuts the only thing that I'm going to have over there is not having a lot of deadlines and and that's a good thing so at least I don't have I have a target for a number of those items that I'm bringing in in 2022 I'm going to try to not set January 1st for the due date for everything because that could be really scary trying to get everything done at once it might be a piecemeal release I don't know we shall see but in the meantime I hope you all have a wonderful Christmas season and get lots of art done during that time as well my classes are still on sale all month long and you can also ask Santa Claus to get you a gift card to my site if there's classes that you want to get and you're not ready to choose one or you're thinking there might be something fun coming next year because there might be something fun coming next year then you could ask Santa for a gift card that you could use sometime next year and be ready for anything so that's always fun gift cards are also something that you can send to somebody else I maybe I should explain how they work if you buy the gift card and you put in the email address of the person who's going to get it they will receive an email from the website at that time saying you just got a gift card if you want to wrap it up for Christmas then I would highly recommend putting your address in for both the recipient the to and the from and that way you get the email you can print out the code for them and wrap it up in a box and give it to them and explain to them what it is if they don't know about the site already etc and you can you know put some art supplies in the box so that they can take whatever class you're recommending for them but if you want it to be a surprise you need to send it to yourself so that they don't get it already I don't have the capacity on the website at least not at this point to tell it to send on a particular day so it sends it right then when you buy it so just make sure you're aware of that if you're interested in getting any gift cards and yeah so there's that so these beautiful bows are are really gorgeous I mean I I just loved how they came out I loved when I added that really rich dark it was as though they came alive they had felt very flat and well I guess you might not have thought they were flat until you saw the black so I hope that that was a good surprise that showed you the power of contrast because I tell you that all the time and nobody believes me well shouldn't say nobody there's a lot of people that just say I use scary darks and they're not so scary they're not as frightening just try it it's only paper you can't go wrong with it because all that you would do is just toss it and start on a different one not a big deal so there is bow number two and for each one of these I just put a strip of paper that was colored with the same colors across it and added a sentiment but a boom but a bang talk about an easy card right took a little while to make the coloring but you saw this in real time I got two of them done and we're only at 13 minutes so there you go it's not so hard all right I will see you in 2022 I will see you like maybe this afternoon over on social media all right bye guys


Good afternoon everyone and welcome. This has been Melissa Arma with Stock Swishing here with HPQ. This is the play of the day here at Gap and it was the only thing to do today and I've been practicing using a different charting for my trades this week and that was a good decision. I set everything up today completely new and when it worked out. For some reason there is a delay in Orvis. I do like these charts but the delay has been happening in the one minute and it has been critical for me to not have any delay. I mean I can't even have like a two second delay and unfortunately they have not fixed this problem yet. So I ended up reconfiguring everything on my Sterling which is my live platform to trade today and made six new charts like this and it actually it actually worked out so I think I've resolved the problem. Anyways let's go look at what I did. This was crazy. I pressed the button to get filled here. I got 400 shares. That's all I got and I saw it and I was like oh my lanta. So then I quick killed the rest of the order and tried a different ECN and I and I got filled 10 cents late. Literally. I gave us no room for the stop like nothing. I put the stop at 1330. Who was it? But I ended up really just taking a lot of risk on this then because I got filled late but I knew it would work. So then it dropped. I had 8500 shares of it. Then it dropped and fell in here and I was up a good amount but I knew it would keep going. I knew the target. Rally back dropped in here was up a lot and I didn't take any out. Rally back I tried to give it one more push and then I took it. I literally got filled it like 51. I literally got filled perfectly and I thought it was a great exit. Rally back would have rallied back 30 cents so I really would have given a lot back in the rally and then it went one more push but I mean you can never have a low of the day exit. It's just unrealistic because this really was the target in here. This actually went past it. Could this still go on today? Yes. Yes, yes, yes, yes, yes it absolutely could but why do anything else? I mean I literally was done in this trade with 10 minutes and I made over $4100 today but I will tell you that if I had gotten filled right I would have been up five grand here but I didn't. There's nothing I could do. There's absolutely nothing that I could do and this is the thing. Sometimes you're taking the size that I'm taking now. This is going to happen so I did it well. I did the best that I could. I quick then grabbed another ECN but I actually would have been up or should have been up five grand today so I gave back $850 from the bad fill. But the funny thing is if I had gotten a perfect fill today and held it all the way down, here's where I would have known it was done, I would have made $7,395 or something like $7,307. It would have been a huge, huge, huge trade. I mean it's a ready huge trade. I've made over four grand which is usually what I make on the good ones but to be able to have made $7,000 before a holiday weekend would have been just incredible but there was nothing I could do with the fill and then it would have been ridiculous to hold this back that kind of rally because that might have been it and the market's bullish and I've been talking about that forever plus it's a holiday week and there really was nothing to do this week and you just had to be so, you had to be so good if you traded this week but it was a good practice for me getting situated with my charting package back to having a reconfiguration. I like to look at this and I'm still going to look in Orbus and I'm still going to scan with Orbus in the morning but for the open I cannot have it up when I'm in a trade until they fix the problem with the time because it's too critical for me. Something could move in 30 seconds a dollar and the way that I trade it's just very important and this is what I do, seeing something like this and to do something like this and short a stock like that at 9.30 and 8.500 shares that is what I do and to make four grand in 10 minutes like that is what I do. There's no one better at this than me that just isn't. To know the gap would work like that, to know that a shot of a data would be that good, to know that it was an NCOF, I mean to just hammer it and it could have flipped me out and rally but it didn't. It broke on a spot that I had written down today that I knew it was good and there was no chance of failure in this today and it literally fell off a planet but this is what I just excel at and why the people that come and learn from me and take the gap course really learn how to day trade because this is the way that you make money day trading. You don't make money staying and stuff forever and ever and ever and ever and ever and even if you held it down below the trade was only 30 minutes today. You don't make money trading all day you just give it back. You give it back back back back back. Look how many people probably tried to short this late today. Never it didn't break then again down under 10. I don't know if this breaks down below the day again today and even if it does you're waiting for two hours for it to go somewhere a little bit like even now look it's hardly moving. The momentum happens in the morning as a day trader to make money consistently you got to learn how to trade that period of the time when the stocks are moving the momentum comes in but you got to get the direction right and you got to know what stock to watch because if you don't get the entry the direction right size yourself correctly know what to do and take it when it hits before the move happens you don't make money and then you struggle all day as a day trader trying to figure out what to do chopping it up and making five pennies here and ten pennies there that's not the right way to do it and that's why people fail they don't know what to watch and you got to know and you got to know before the open which is what my 26 point rating system tells me so this rated 21 points today so great job in hpq giving myself a round of applause have a happy thanksgiving everyone see y'all back in the room next week i think i'm finally situated with my charts and a computer so all is good have a happy thanksgiving if you're interested in signing up for the black friday specials email me at melissa at the stockswish.com they expire on saturday thanks everyone


Rwy'n cael ei wneud o'r syniad hwn o'r pwysig o'r gweithio mewn gwirionedd. Welch i nim yn y sesfa, rydym yn cymryd ar symfyniad me'n mynd i gymeran Rhyw Pwysigol ond mae'r cymryd mewn cyfryd yn ymgyrch yn ymgyrch yn ymgyrch. Mae'n cymryd Sambrych. Mae'r cymryd comersial rhai o'r cyffredinol. Rydyn ni'n rhaid i'r Prannag Paiush, rydyn ni'n rhaid i'r cymryd mewn cyfryd i'r cymryd me'n mynd i'r cymryd. Mae Gen they launch their climb about a year ago and they've won hundreds of customers this year they're looking to win even more than that then we'll hear from Fabian Potent protons CGI who is the CEO of Scenceo Labs Scenceo Cloud was soft launched in December last year and they're looking to win some quite large customers imminently we'll hear from Fabian about those ac rwy'n meddwlogi o'r rolyn i Benedeti, sy'n meddwlio leodau popeth provide'r dyfodol. Falle gofyn nhw gyda sy'n meddwlol i'r hydllunio'di ar ysferthau a Rolyn i'r cy behalf, a Rolyn i'r cyffredinol iawn cyllid yn ein gennyd, fel y cyfgriadau o'r rolyn i'r cyffredinol yn gwneud hefyd. Ond dweud, llywb am oedd yr actor yng Nghymru. Mae'r cyfeir. Felly mae'r ddeifan o'r awdd ymdd nhw mae'n mynd arweinydd o'i adael nôr hon o'r awdd yma, dod mewn ffordd yn ffordd maes ar y cyfrifiadau am ymddorol wrth yng Nghymru. Llywodraeth, nid yn hyn, mae'n ddim yn arweinydd o'u awdd yn digwydd mae'n ddw i'w gweld, er klwyddoch chi sgwmp iawn o gydigfodol i'r tynnu adrod gwasanaethau cy Promodol i'r pwysig. If you're able to automate a large block of DevOps processes, then you've just removed the majority of problems associated with the administration of consistent environments. That has a huge effect on many related activities, development, deployment, testing, upscaling, integration testing and so on. It's the confidence that comes with this that allows you to think differently about your working practices and your service offerings. And likely gain a competitive advantage. And of course all this leads to risk free continuous delivery. If you can make an exact copy of staging or live in 30 seconds, you can make your changes and test this feature, this feature branch and know with certainty when you promote that change back to the staging or back to the live environment. It's going to work exactly as you expected it to. And that means you can start to stream many changes into live all day long, small or large, whatever the priority, whatever the site is doing at the time, be it midnight or be it in the middle of the biggest sale you've ever had. Well, you might not do it then but you could and our online retailing customers do exactly that. Platform gives our customers fast development, fast deployment and a much better live service and all at lower overall costs. And here is some feedback that we collect from our customer case studies. We collect metrics in 10 different categories and briefly running through those. You know our customers are able to set up new projects and on board new developers very quickly instantly in a matter of hours, not weeks. Every get branch comes with its own infrastructure making the workflow far superior. Productivity is typically 20 to 40% better but some customers tell us their dev teams are doing twice more than twice what they were doing. Approvals are 5, 10, 15x quicker in some cases. It's obvious really when you think about it every feature branch has its own URL. And that means you can test your feature to your satisfaction, drop it into Slack, the URL into Slack or an email. And the approver can get very quick sight of that and can see the change in a live running copy of the site. So that speeds up the whole process massively. We've automated all the environmental management and no more tickets for resource changes, new service versions, upscaling configuration changes, all that's gone. And all that's within the power of the developer to do themselves. Customers are delivering many new features into live every day now. And our high availability clusters deliver extremely good performance and practically zero interruptions even during emergency upscaling. And all this is happening at a much lower overall cost. So that's just a couple of words on platform. I'm going to hand over now to Pranav Payash, who's the head of growth at Magento Cloud. Pranav. Thank you, if you're on. If you just move on to the next slide, I'll sort of introduce Magento. I'm not sure if everyone in the room is familiar with it, but we'll go through a quick introduction of Magento and Enterprise Cloud Edition and what all that is about. And then, you know, why we chose to work for platform. So moving on, if you look at the ecosystem and the industry around e-commerce, there's a lot of things that are changing in the market. If you think about a lot of the offline retailers moving, increasingly moving online and not just in the B2C space, but also in the B2B space, you see a lot of sort of internationalization and cross border trade. You see a lot of channel growth. And finally, you see a lot of people wanting to move to a cloud environment and not sort of having to maintain their own servers and DevOps and so on and so forth. And so if you look at these market trends holistically, Magento's effort has been over the last couple of years to provide an end-to-end solution that can solve all of these different needs that merchants have and sort of move with the times and the needs that the customers have. So if you move to the next slide, what you'll see is, Ciaran, do you mind if I see the slides a little bit? So we're going to focus on the digital commerce side of things today. So we have other tools like auto management and the market phase. The focus really is on the digital commerce side of things for this conversation and why we have chosen to move to the cloud and specifically move with our forums past. So moving on. Okay. So Magento's digital commerce solution is really sort of the market leading solution across the board from small and medium businesses to really large enterprises. And it forms sort of the backbone of the overall experience that customers have and so on. And if you look at sort of the overall spectrum of our enterprise base, we really have sort of customers in a variety of verticals and some really big brand names. We've got our community edition, which is more of an open source sort of platform. That's where we originally sort of developed from and lots of developers and channel partners that have arisen because of that, the open source framework. But we have the enterprise edition, which takes that open source version adds a whole bunch of enterprise great capabilities and obviously the support that we offer. It's a subscription license based on the amount of sales and revenue that the customer is doing. And customers have sort of full control over how they deploy this in the Magento cloud on their own servers and obviously that trend has been moving towards deploying in Magento's cloud. So moving to the next slide. I just want to sort of highlight some of the big names and brands that are using Magento's platform. So you'll see folks like Cannon and Ikea and the New York Times all the way to folks like Team Bureau based in Europe, Lexus Nexus, Coca-Cola, Burger King, lots of sort of big, big brands. And it's a quick end is another example that are using Magento to power their commerce experiences. And it's really sort of a broad spectrum across B2C, B2B, and what we recently also been calling B2C sort of a full stack merchant who's doing their own production manufacturing and distribution. So let's move on to the next slide. So the core sort of e-commerce capabilities that a merchant gets out of the box, span everything from basic content management, getting your product catalog up and running to things like SEO, to things like promotions, and obviously sort of working hand in hand with the shipping and payments and marketing tools. And it's really sort of a very rich set of capabilities that a merchant gets out of the box, especially if you're running an advanced store with multiple currencies or multiple locales and so on and so forth. So that's sort of the core e-commerce capabilities themselves. But if you go to the next slide, what you'll see is the move to Enterprise Cloud Edition. Now, this launched in Q2 of last year, so we've had about three quarters of momentum behind us at this point. And what Enterprise Cloud Edition does is it takes our core Magento offering with this Enterprise Edition, packages it together with the cloud infrastructure that we've built, and also some business intelligence and monitoring tools, and provides us a complete solution to our customer base. This is a natural evolution of our flagship product, and going forward, this is the solution that we will be leading with. And if you want to sort of deploy on your own servers, that's going to be more of just something that you can do, but there would be no real reason to want to do that in the future. And if you look at the cloud infrastructure piece, if you go to the next slide, this is where we rely pretty heavily on platform usage. If you just want to advance the slide a little bit more, I think there's some animation here which is kind of missing. So the cloud infrastructure piece is really powered by three technologies. You've got the core sort of hosting, the infrastructure from AWS, and you've got the CDN and the DDoC protection from Fastly. The platform is what brings it all together into a path layer, and customers only have to interact with the white-label platform solution that we have offered them. So they don't have to worry about managing AWS infrastructure or how exactly Fastly works. They deal with the platform and we take care of, and that takes care of the end-to-end DevOps experience for the customer. Obviously it comes along with, as I mentioned, Magento business intelligence and Neuralic and Blackfire, which are basically performance management or performance monitoring tools. And on the other side, you've got Magento that provides of the onboarding and the launch management and 24-7 support across the application and the infrastructure working hand-in-hand with platform's team. So why do we choose this approach that will address on the next slide? When we think about our merchants, they don't really want to be involved in the day-to-day DevOps activities and sort of being involved in managing servers and infrastructure. What they want is a more agile way of getting their changes and e-commerce experiences shipped to their clients and their users and their buyers. And the concept of the past really sort of helps our merchants focus on what they do best without having to worry about deployment and developer efficiency and so on and so forth. So it's really good for merchants from that perspective. It's also really good for our channel partners. Now, most of our merchants engage a solution partner or a channel partner that helps them implement the sites or maintain the site over a period of their contract. And those solution partners also don't want to be involved in the DevOps work. They want to be sort of focusing on delivering the customization that their merchants are asking for. And it helps them focus on that sort of core development work rather than worry about the DevOps work that they've been used to doing in the past by having to manage their infrastructure on their own. So the past sort of makes this a very consistent, repeatable process to make a change in development and getting it into production and focusing on the testing article rather than the management of the infrastructure. So that's why we chose past. And, you know, when we looked at all the different technologies that were available and the distance of players in the market, we found that platform solution, platform exchange solution was really sort of a leading edge in terms of the capabilities that it provides. And that's why our technology team felt that that was the best move for us with enterprise cloud addition. So we were firmly strong, strong believers in platforms tech and want to see this partnership sort of continue for years to come. So moving on to the next slide. The benefits of the sort of past solution and the enterprise cloud addition solution overall, merchants have continued flexible, right? So it's still sort of coding and manage and customizations that they can deliver with the core magenta application. And at the same time, the past and platform solution helps to keep the site very performant and manage scale in a very graceful manner. And then obviously, you know, reliability and security are key part of the platforms and all sort of magentos emphasis. And so that's something that customers get. And finally, if you think about customer success and support by providing both the core application and the infrastructure, magenta makes it a lot easier for merchants to sort of get support of help from one party rather than having to go to a different company or provider for the application was the same perspective. So it's added benefit for merchants from that perspective. Let's move on. Okay, so here's an example Oliver Sweeney, which is a luxury lifestyle brand in the UK. They basically made custom shoes. And they had to sort of move from a bespoke platform to whatever they were going to choose next. And magenta enterprise cloud addition powered by platform was a great sort of option for them. And I don't know if any of you were at Imagine, which is magenta's conference annual conference. We had a case study with Oliver Sweeney talking about sort of all the different things that they were able to achieve the business outcomes. Around faster site performance and conversion rates and so on and so forth. And all of that is really enabled by the fast iteration and the agile way in which you see you work. A big part of that is platform. So we're seeing sort of continued momentum. I believe at this point, 20, 25 live customers with hundreds of customers who are sort of the soft and soft development and going live in the coming quarters. And we see the trend and so the overall move to the cloud a big sort of approach for our business in the next 12 months and platform is going to be a big part of that. All right, let's move on. There is a video if you guys want to I don't know if it actually power if it came through in the in the presentation it may not have. So let's let's just keep moving on and we'll skip the video for the time being. Okay, so if you think about sort of, you know, in the end, this is all about enabling our merchants and their customers expectations. And enterprise accreditation sort of enables that right to make sure that the customers are interacting and having a great experience with their website have access to the website, especially during the county. This is a part of our offering and something that platform helps us deliver. And through sort of, you know, our CDN strategy, making websites accessible across different locations outside of the primary market for our merchants and really sort of with the core enterprise edition code accessible from any device. And all of this so that without sort of seeing any delays and latency and being able to process orders without getting stuck and purchasing with confidence. These are the things that we are able to deliver because of the technology that we've put in place with platform. And we were very happy with the results. And and want to see us have continued success with platform. That pretty much wraps up the presentation around magenta enterprise accreditation. If you guys have any questions, this would be the right time to ask them. So any questions for Pranav before he drops off. No, I think you covered it very well. Thanks, Pranav. Really appreciate that. I'll leave the audio open if you want to continue listening. And we'll move. Sounds good. I probably dropped off, but let me know if there are any questions and I can answer them offline as well. Great. Okay. Many thanks, Pranav. Thank you. So that was Pranav from Magento. So now we're going to ask Fabian to come up and talk to us about Sensio Cloud. Just to move the slides on. Hi everyone. So I'm going to talk about Sensio Cloud and why Sensio Labs and Symphony we actually chose platform message for our new cloud. Before I start talking about Sensio Cloud, I wanted to talk a bit about Sensio Labs and why and who we are because it's very important to understand. The reason why we actually chose platform message. So Sensio Labs provides products and services to PHP developers. We're trying to ease PHP developers' life, which means trying to make them more productive and of course make their companies more successful. So basically, so here I'm talking about Symphony. Symphony is in top 10 most active projects on GitHub. It's been the case for the last few years now. We estimate that we have something like 600,000 developers in the world using Symphony. And Symphony is downloaded almost. It's not almost. It's actually more than one million times per day. The great thing about Symphony is that it's not just about the framework. It's also the fact that it's used by many different open source software. That's the case with Drupal or Easy and a bunch of other ones, which means that around 10% of the web actually runs with Symphony or some of the Symphony components. And actually we reached a great milestone a few months ago with 500 million downloads in October last year actually. It keeps growing. So this presentation actually says 1700 million and we are more than that now. So the great thing about that is that we have a lot of people using Symphony and they are very different needs, of course. And we're trying to address all those needs with Sensor Labs and all the products that we have and especially Sensor Cloud, which is really a product that we want to be part of the ecosystem of the Symphony world and not just a product that is on the side. And that's the important point because that's why we actually chose Platform Message for Sensor Cloud. So Sensor Cloud is a platform as a service optimized for Symphony. So I'm going to tell you a bit more about why we actually chose Platform Message as a foundation for Sensor Cloud.  So, sorry, a few years back when I created Symphony, so almost 10 years, more than 10 years now, there was a clear separation between developers. We were responsible for the code and people responsible for deploying code to servers. So developers and CISN means with different responsibilities, different skills as well. But I think that's not really the case anymore because web applications are more complex and companies want to deploy or to be able to deploy code every single day. And that's why there is this Dev Ops movement and it gains traction. And with Symphony we want to embrace those changes of course. So code is, and code deployment, so the way you actually deploy the code is mostly a solved problems nowadays with Docker and services like Google App Engine and Heroku and things like that. It's pretty easy to actually deploy code from a staging environment to a production environment. And along the years we actually made some changes to Symphony to actually make that use case easy and simple. So, and with those platforms what you gain is that you have more scalability, you have higher availability, but that's not good enough or not anymore because it's not just about code deployment anymore. Web projects nowadays, they depend on a lot of different services.  So websites are getting bigger and bigger with more traffic and even for smaller applications. And the thing is the framework in Symphony cannot really help. It's just about the code, so we need something else. And that's the limit where we have the code and the infrastructure. So deploying code is really about synchronisation and code synchronisation between a staging environment and a production environment. But it should also be about all those services and how you can provision those services and how you can manage data into those third party services really. And those features cannot be covered by Symphony itself or any framework for that matter. So when we were looking and when I was thinking about the next version, major version of Symphony, I was thinking about how can we solve that problem, how we can make sure that Symphony developers, they have an end-to-end solution that works not only for the code, but only also for services and data. And that's where Sensio Cloud and Platform Assets come together to actually trying to solve this problem. So one very small but very meaningful example, okay, here, like that. So that's a very small example, but it's really explained why we think that Platform Assets was the right platform to build Sensio Cloud. On the left side on the screen, you can see the composer of the JSON of a Symphony application. That's where we actually declare and we define all the dependencies, the code dependencies that we are relying on for the code. And the exact same thing is possible with Sensio Cloud and Platform Assets with all the services. So you can declare and define the dependencies for your services. So on the right-hand side of the screen, you can see that I'm also depending on PostgreSQL and ready for my cache. And that's great because in my project now, I can say, okay, I need Symphony or Sylex or Web Profiler or whatever plus PostgreSQL in the code directly in my Git repository. So I don't need something else for that. And that's great. And the infrastructure is powered by Git and that's the main selling point, I think, of the platform. Because the configuration of your code and the configuration of your platform and services are in the same place. Which means that, for instance, if you want to add a new feature and for this feature, you need a new service like Redis, for instance. You can create a proof quest, make your code changes, add a dependency in your configuration file, the Sensio Cloud configuration file, and then you can deploy the code on a staging environment. And on a staging environment, you will have the new code, the new services, and even more important than that, you will have the data coming from production directly into your staging environment. So you have everything so you can really test your new code and infrastructure really. So, and that's possible because when you define the services, all the services are actually managed by Sensio Cloud and Platform. Which means that you don't need a third party service for most typical services. So if you want a cache, a search engine, or if you want RabbitMQ or things like that, it's built in, which means that you don't need to rely on a third party service for that. And that's very important because that's how you can configure them really easily in one place and not relying on other things. And that opens up a lot of interesting opportunities, really. And the first one is the SLA. The SLA is 99% but that's not just on your code. It's not just on the network. It's not just on the PHP stack. It's for everything. It's for all the services. And that's kind of unique and that's because all the services are actually on the same platform. Think of that for a minute. If you are using Oracle, for instance, and then you are using third party service for RabbitMQ and another one for Redis, even if each of them has an SLA of 99.99, at the end of the day, the real SLA that you get is 99.99 multiplied by 99.99 multiplied by 99.99 which is way less than what we can get. So that's the first main thing about the fact that we have everything on the same platform. The other one is that, of course, because everything is on the same network. You don't have any latency or the latency is actually really small. Everything is on the same local network. So that means that performance is also much better than any other platform as a service. The next one, and that's the second really key point of the platform, and that's data snapshots. So this one is very important. So as SensorCloud manages all your services, not just the code, it also manages your data. And when we create a snapshot, we are actually creating a snapshot of everything, the code and the data for all the services, which means that we also have a snapshot that is consistent across all the services. So you have the RevitMQ data which is really synchronised with what you have in the database or in Redis or in Solar or whatever you have in your service definition. Which means that you can snapshot the production environment, so the production data, and use them in development or staging, which is great. Instead of using Lorem and Zoom in your database, you get the real data, which means that it feels like you are actually working in production because you have the exact same infrastructure, the code, the services and the data. And that works for, you know, whenever you create a new branch in Git, you get that free. So you create a new branch in Git, you get a new cluster of servers where you have the new code, the newest version of your code, the changes that you have just made to create a new feature or to fix a bug, the services and the data coming from production. So that's a great feeling, really. And the other great consequence of that is if you are doing continuous integration. Okay, so you develop on your laptop, then you deploy the code, and you are probably using some kind of continuous integration servers where you are running your test before you deploy the code to production. So just the fact that you have the services and data means that you can do more than just running your unit test. What you can do is, for instance, take browser snapshots to be sure that the output is really what you are expecting, or you can run performance tests with Blackfair or things like that. So it means that you can add more steps to your deployment pipeline, really, to be sure that whenever you deploy, performance is great, the display is great, so the DHTMA is great, compatibility with browser is great, and of course your unit test as well. So it's just more than just being able to run your unit test. I'm talking, I talk a bit about, so I talk about the continuous integration thing, the fact that you are trained for requests and things like that. The last thing I wanted to talk about is this command line, and this command is very interesting because sometimes, so platform is such, it's not something you can install on your laptop, of course, but what you can do is if you are working on a bug and you can't produce the bug on your laptop because you don't have the data coming from production, what you can do is you can create a branch getting a snapshot from production to the real data, and then you can open a tunnel between your laptop and this environment. And all of a sudden, on your laptop, it's like you have everything from production, all the services, all the data. It means that it's much easier to actually fix a bug, trying to find why there's a bug that you can't produce on your laptop but happens on production. And that's great because there is no difference between the services in production and the services that you have access to locally on your machine. So I can talk about that for a very long time, but I think you get the point now. In fact, as I started with that, I think that platform is such a really great framework to actually create your own staging environment, a continuous integration pipeline, and really the environment that you need to really develop with confidence, making changes and being sure that before getting to production, everything works really fine. So that's very powerful, and that's also why we chose a platform message for SensorCloud and this integration between the framework and the infrastructure management. I think that's all I have. So if you have any questions about SensorCloud and whatever I've just talked about. Okay. In any case, I'm here. So if you have any questions after the talk, I can answer them. Great. Thanks very much. That was Fabian, and now we're going to hear from Roland Bandatasi. He's just... Cool. Hi everyone. Nice to be here. Thanks, Kiran. So the great thing is I could almost just say, well, just like him, or many respect. There are many reasons we decided to work with platform and all the things we heard from Magento and Fabian are actually probably valid for us. I will just tell you a little bit more about our use case and how we work together. Before jumping on us and what's specific about us, just to say where we are, we, I think, started to collaborate a year ago with Platform Message. It's a technology partnership, so we didn't package a product together, but we basically used their technology and we started to push this to our channels. And things are going great and the more time spent, the more we are convinced it's a good partner for us on the infrastructure and the past side. So that's a little bit of the story I'm going to tell here. But first, about us. I don't know, who knows about Easy here? Good. Who knows about Drupal? Well, I'm very glad to experience my first Drupal con. Easy is another CMS vendor, much smaller than Drupal. We have conference as well, but they are in a smaller order of magnitude. And what we build is an intercontinental management platform for people to build digital experiences. It's really a platform. It's used to be called Easy Publish, so the chances you know us might be through Easy Publish, but now the name of our latest product is Easy Platform. The reason why it's a platform is because it's more than out of the box CMS, it's really something you build on. I think this is key. One of the main reasons we work with Platform Message is because of our stack. What is it that we have in our platform? It's not innocent, but like three or four years ago, I don't actually remember when we decided to re-platform and to move from a product called Easy Publish to a product called Easy Platform, we decided that we would stop to do the framework, the application framework ourselves. We were always a lump player. We've been open source since 1999, and we were doing our own application in PHP. Three or four years ago, we decided to stop doing so to focus on what we do best, which is content management, and to use Symfony as a framework. So we use PHP, we use Symfony. We use a tech stack, which is increasingly more complex. You would think that with the progress, things would get smaller and simpler, but actually the lump stack is getting more complex. There are components which used to be not taken as granted that you should have them, such as Solar, such as Memcache or Radis or all those things. So very complex tech stack, and we don't necessarily want to be the masters of this tech stack. More importantly, the agencies and the developers working with our platform, they are not experts in that domain. So when thinking about PAS and when trying to find a PAS technology that could accompany us through that journey and provide our CMS on the cloud as a platform, as a service offering, very clearly it was crucial for us to work with some people who understand well our stack, which is Symfony, PHP, all the underlying component on the storage level, of course MySQL, MyIDB, Postgre, and other things such as Lucin and Solar coming into the search now. So that's probably the first reason for us. Very important. We actually tried to work with other vendors and maybe not so much expert on this stack and it didn't work so well. So let me tell you a bit about easy on what we do. We do a CMS, but it's a CMS that can be used in many, many, many situations. So it's not just about making websites. We have a lot of customers in the news and media industry, but it's also about actually e-commerce like Magento. Sometime we compete with them. It's also about building things which are not websites because we deliver content headless as well. So a lot of APIs. So a native apps on the Internet of Things or a lot of a big variety of things. A smaller footprint. I will skip this because this is marketing and that's not really the goal of this session. But the interesting thing is that we work with all kinds of customers, but mostly on the enterprise-ish side. So way smaller than the Drupal, much more on projects which are usually very complex and distributed on an infrastructure which is not easy to set up. So the trend we see with our customers is that they are not making websites. Digital is not anymore a website. Digital is not anymore marketing. It's really they are moving their business model onto digital. They are totally changing this. A typical case for us is working with newspaper industry. A newspaper decided to go digital first and stopping doing a daily print of their newspaper. That's a massive change of their business model and that's the kind of thing our customers are looking at and that's why they are choosing us.  And they are moving beyond the web with the Internet of Things. We more and more push content actually to devices and the top right is KitchenAid. For instance, they have connected device and actually we collect data from those devices in the project we have together. So that's quite different than making a website. And again for them it's a race to be the first to be there. So the reason I go through this part which is more high level and not as technical is that at the end of the day what we need to deliver to our customers is two things. We need to deliver them with the capability to create and publish content. That's so key. Content is like the cornerstone of the digital transformation but more than that we need to deliver them something that helped them become a software company. Who is it that was saying software is the world? Andreessen or something like this? They are all turning into a software company. It's not anymore about let's buy a CMS from our agency and let's have the CMS three years and in three years we will do a revamp. Let's invest in infrastructure which will help us build a digital business. So this second part of our mission providing something to build a software company it's crucial. And those are the two things. And the second part for that, we need partners, we need people who are experts because guess what? What we learn is that this won't happen on premise. This will happen on the cloud. Very, very, very important. So that's the reason why because being a CMS vendor today such as being an e-commerce software, yes please. I'm saying there will always be people who want to run our software on-prem just like Magento who started but this will step by step become a very rare use case. And the fact is that today customers are asking for the cloud delivery. There's even banks that are moving to the cloud when even just in our market the content management software three years ago they would not want to hear about it. They also would not want to hear about PHP by the way. And now they love PHP and symphony so that's good. So that's why I don't know if it's... Yeah, definitely. So yeah, we're moving to the cloud and the CMS industry is moving to the cloud. The CMS industry though is moving to the cloud way slower than others because building a project on the CMS is much more complicated than starting to use a CRM for instance. Salesforce was in the cloud 20 years ago now almost. I don't know when was Salesforce.com but a CMS cannot be on the cloud like a CRM or document management on an ERP system or even a collaborative suite like Google, Gmail and so on. A CMS is a special beast. It's a beast that you build something with. A project with a CMS is never just by installed and used. It's always by installed maybe but then you build something with it. So it's a platform you build on. And this was just a snapshot of an article on CMS. A granon from Forester Research. I was talking with him at the CMS wire conference actually and we had those long talks about why CMS is behind when it comes to cloud adoption and so on and the real reason why is that the cloud that fits the CMS industry is the pass. It's not a software as a service that's not something that will run out of the box that's still something that each and every project needs to make its own, to customise, to integrate with so many systems to add so many add-ons. So in a very evolved way maybe one day this might be software as a service but that's not the case. People still need to develop templates to show their unique content in a unique way. They still want to use Tweak to do this. They still want to build their own digital experience and they still need front-end developers to build those. So this cannot be a software as a service offering. Even if we tried, we tried to make CSS... we tried to make filming capabilities so that people could define the CSS and the layout of their website. Google Calendar wants to speak to you. Should I go play? Yeah, we can go and see. OK. So yes, pass. Platform as a service is the way to go for the CMS industry and content management systems and a way to illustrate this is our story with Easy Publish. In 2007 we launched something called Easy Publish now that was a SaaS offering with the site factory and the style editor and we wanted to abstract the creation of templates and so on for our customers. It kind of worked for small customers so... It never worked for big enterprises or large-scale project. We kept this project alive a little bit but as our focus is on enterprise we eventually sunsetted it. We did the same thing not really on our demand but in 2010 actually with Dutch Telecom we created an offering called... I guess I'll let this... an offering called Easy Publish International. That was a SaaS as well and it worked kind of for SMB but the SMB market is different. It's the market for site builders such as Squarespace but it's not the market for content management platforms. And in 2012 and 2013 really honestly we started something called Easy Publish Cloud which was a pass. We invested in this technology we started to put some resources and we tried to build this ourselves and to be honest I mean it's trendy to say that you need to fail so it's good to fail I didn't feel like it was good back then but we definitely failed at doing this ourselves. And the main reason for that is that we are not experts in this area. Our expertise is the application layer, the CMS and it's not building infrastructure. Our goal was to provide on the cloud hosted but a way for people to simply deploy and roll back their changes on the platform and that's actually one of the many things that platform message can offer us to do. Our next move when it comes to cloud technology which is in no way in disconnect with what we do with platform message is to dockerize our new platform so Easy Platform unlike Easy Publish has been done in a cloud way, it's by design made to be dockerized and to be containerized and it's basically something a lot of effort too but which benefits our work. So at the end of the day working with platform message why instead of doing this ourselves it's because focus is key for our business to be successful in our business. We need to identify where is our focus, where we put our resources where we put our money and where we grow our people. If you want and try to do everything you will not be able to be successful and we are a small company with a little bit less than 100 employees so we definitely could not tackle everything. So together with platform and soon in a more closer way because we will have a package offering together in the coming months. Platform takes care of the infrastructure operation not only the operation but also the roadmap because when we bet on platform we don't bet on what it does now we also bet on what it will do in the future and every day in our talks with the team and that's where the whole side is also very important we have some more proof and some more input that platform message will be our partner in the future with new features really helping us. So that's where they can focus just like our partners who are digital agencies, web agencies, implementation developers and so on can focus on things such as creative and content strategy, project implementation project management and us easy this gives us the freedom to focus on what we do the platform CMS, the CMS platform the content management side of things to support this one and to provide a few marketing cloud services on top of it. So that's a key point with platform message we find a good match where they have the good expertise that complements our expertise to have basically a full full blown cloud offering and really one thing I want to emphasize but Fabian did a lot of that with Wysensio cloud is also building that it's not just about hosting it's not a CMS vendor who choose platform message to provide a hosted offering it's a CMS vendor who choose platform message to provide a new development workflow to our developers, partners and customers so what we try to achieve is to provide a continuous development flow there are things which are in our CMS which are very important enabling people to really have continuous integration set up and working well and delivering features continuously to their customers and to their end users and that was already a revolution when we moved from waterfall to something more continuous and agile and iterative the piece which was missing was automation and part of the automation we started with testing automation we started with deployment automation with CI and so on but we never got the real developer everyday task automation of deploying to their product managers of deploying to testing of deploying to production so this is about really offering our customers a much more agile, efficient and productive development workflow than what they used to do and it's really needed because our stack got so complex that if you don't set up such a workflow you will have a you will lose a lot of energy and money by always trying to fix the same problems so the best way for us to assess the value of this I don't know where I am with time but I guess I'm getting close yeah okay so for us this is, we do this for our customers for our partners that is our mission but we also do it for us and it's because we eat our own dog food and we develop our website with our CMS and working with platforms solve some problems which seems so obvious but which are unsolved up to now at least they are not always easy to solve typical product management issue getting product managers touching the features as early as possible from the development foundry so typically we work agile, we have sprints of two weeks every two weeks we have spring demos where our product goes into features goes on merge product managers could not touch the feature before every spring demo so it's quite fast already but that's not fast enough actually everyday you want a product manager to be able to have a discussion with a developer and to ask this developer can I see this feature can I test it even if it's not finished I want to test it I want to have a real feel of what it is maybe I want to organize user testing on your feature well this is very hard to achieve but with platform as such it's great because there's this feature which is not just many development environment one staging environment one production but it's many development environment that can spin up as many staging as you want just to test your feature and when you are happy with this feature you can decide to merge in git the fact that it uses git of course is key and you can move to production so product manager can test new features before being merged better collaborate with developers this is key UX designers can equally access prototypes for user testing it's key because user testing on mockups is cool but when you do user testing on real working applications it's even better and last but not least sales engineers with such a tool and an offering we go to a prospect we set up a prototype the prototype is ready to be developed on we can have the prospect using the prototype eventually develop with the prototype because at the end of the day they will probably want to develop themselves and we can ship this to them they can start to use it if they are happy by RCMS if they are happy by the infrastructure just move and just keep it so it's a fantastic sales tool as well it's a fantastic sales tool for our partners who are digital agencies for us and of course for platform so that's about it for the reasons I think I enunciated quite a few so we are very happy to keep going and keep working with you thank you very much Roland so we finished bang on time sorry about the Skype messaging that was my 5 year old or my 7 year old it's bedtime in London and they were conference calling me I didn't switch Skype off so thanks to all our speakers symphony and platform do have stands in the main hall you don't have to be a global software vendor to come and talk to us we'll host your site if it's small, medium or large or whatever so thanks very much unless there's any questions then I think we need to probably wrap up thank you very much


The House of Representatives has urged INEC to conduct physical registrations across the country. It also asked INEC to increase the time frame of the new voter's registration across Nigeria. Emmanuel Higienic completes the report. Honourable Abubaka Yalaman from Jigawa State moved a motion at Plenary on Thursday. He suggested that INEC conduct fresh physical registration across the country. While debating the motion, he said many constituencies have been displaced due to non-availability of registration centres and officials, insufficient operational tools and equipment, among others, arose a drawback for successful conduct of elections. Honourable Yalaman said if the voter registration exercise is completed without addressing these challenges, many citizens will be disenfranchised in the forthcoming election. Honourable Kogama federal constancy and many other federal constancies have been placed at disadvantage position due to the non-availability of registration registered voters, centres and officials in adequate power supply, insufficient official tools and equipment, as well as inadequate enlightenment program. The gold on INEC to consider the current realities on the ground in most constituencies by deploying both physical and virtual processes in the proposed voter registration. But we adopt this motion as our own motion because, like I said, it has spoken directly to the concerns we have about registration. It is a motion also that seeks to address some of the deficiencies and major concerns of our electoral procedures and our voting system. Not up to 10%, Mr Speaker, have access to what INEC are using now to do the continuous voters registration. Mr Speaker, until and unless the physical enumerators like it has done in the past, INEC are advised or compelled, in other words, to ensure that they employ art folk staff to go the four angles of Nigeria and ensure that they have captured citizens of this country who are eligible, who is not a privilege for them to participate in the forthcoming election. We look at the statistics of last year and the statistics of this year. You'll find that that is almost more than 10 times more people were registered manually by this time last year. So online registration hasn't helped us. So we need to not only ensure that we mix both physical, manual and online at the same time, which means INEC going physically to all the voting centers and make sure that there's time enough. The motion was passed when proved to vote by the Speaker. He mandated the House Committee on Electro-Matters to ensure compliance and report for further legislative action. And don't forget to hit the notification button so you get notified about fresh news updates.


And then P was going through different changes with no limit, you know Um, he was having they were navigating some internal shit, too And then success hit him it was it was a lot going on. What was your uh, what this okay? Master P trying to figure all this out. He young too. Yes. He young too That's the part that everybody don't get I get so upset with people when they talk about Birdman a masterpiece I don't know sugar. I get upset about people when they talk about these young guys Who was came into this monitor this entrepreneurial rap industry? To say what it is, you know, I don't think my partner care for him and PD and care for him Is this the part of the sound like him? No, that was That was another one that would come in and out the group Okay, but This is another guy, so why do you think that your partner cuz it's been a long time. Yeah, for sure you see you and the guys Yeah, for sure. Yeah, what would he ever confide in you and say hey, man This is why I really like this guy.  You know like some you know to me we couldn't we didn't do that. I understood that Him on the other hand, you know, not that he was completely wrong.   I was more thankful for the opportunity in my exact I remember us being in a hotel and we talked about it and now we're 18 We don't have a reference point of no music business We just going on common sense and I remember telling them I said bro. I said, let's just do it I said we don't what do we have to lose at this point, you know I mean because if we do it and it does well then we're gonna get what we were at that point But right now we we go we go back home.  We gonna rob In your mind like 18 We knew we couldn't do it I know we can't do it.  That's the difference I looked at him like I said when we met it was like we all already knew each other Yeah, but him and my partner mean for the first time they talking for the first yeah, you know So it was it was it was a little you know and then Pete was going through different changes with no limit You know, um, he was having they were navigating some internal shit, too And then success hit him. It was it was a lot going on. What was your uh, what this? Okay, Master Pete trying to figure all this out. He young too. Yes. He young, too That's the part that everybody don't get I get so upset with people when they talk about Birdman a masterpiece Oh, I get upset about people when they talk about these young guys It was came into this monitor this entrepreneurial Rap industry Upset bro, you don't even know the same way about South anyway. I'm gonna be on the way. I'm kind of throw it off You know I'm saying yeah, but that's one thing I get upset about me like man No, man We have much down here and when they were for Peter even go from New Orleans up to California and then establish himself Yeah, that's all that's a whole lot right there at the age He was yeah and being a young father for him also help you and him had a lot in common. Yes, exactly I mean either one of us smoked a drink. We was really workaholics. We was focused. We both were dreamers You know both were athletes. So yeah, we had a lot of commonalities that you ever talked to you about when he was trying to Go to the league and all that or when he did play in the league. I was friends during Sure, how did what what was some things that was messing with him during that time? I'll ask you that kind of stick out to your art was good for him during that time I mean that was always his initial dream You know he was an athlete in the basketball player before he was a rapper and a CEO that was his initial dream That was him going back to his calling. Yeah, you know me So for the rest of the world, it was like a what this thing to try and play ball. No That's what he started out doing.  I got to figure some other shit out, you know, so that was just him pursuing his dream, man He still does But now he's trying to get into coach he's trying to get a coaching job coaching job Yeah, with the Lakers at this point, you know, and I know he tried with the Pelicans as well I don't hear this bad team, but he's he's entertained that as well Romeo Romeo didn't take to it like that. I thought at one point that that's what he was gonna do, too He did Yeah, I think that yeah, I think maybe his passion was just more with movies He's movies. Yeah.  So I appreciate y'all for that for sure because y'all was hustling man. Yeah, man


Thank you, and hello there. My name is Jeroen and in the next 20 minutes, I'm going to try to convince you that if you have written some code that you should consider turning it into a command line tool. In the next 20 minutes, this is what I have in mind. I'm going to say a few words about myself so that you know where I'm coming from. I'm going to briefly explain what the command line is, what tools are, and most importantly, why you should care about this. Then we're actually going to build a command line tool so that you can see how that process goes, and then I'm going to wrap up. So a few words about myself. I have a background in computer science and artificial intelligence. I did my PhD in machine learning, and this was around 2010. And back then, I worked in Windows and I coded everything in MATLAB, and my code was not free at all. I wasn't thinking in tools, so to speak. So after my PhD, I moved to New York to work as a data scientist at various startups. And that's where things changed. I got the opportunity to write this book, Data Science at the Command Line, currently working very hard on the second edition, which should come out somewhere in October. Now you can read both editions for free if you're interested at data science at commandline.com. And if I am not writing, I'm spending my time coaching and training others in a variety of topics related to data science. So about that title. Now there are a couple of interpretations of the word free, there is free as in beer, there is free as in speech, but I'm not gonna talk about those things. I'm also not gonna talk about versioning code, packaging code, and distributing code. They're all important, yes, but they're outside the scope of this talk. Now I'm gonna talk about free as in bird in the sense that your code is light and can go everywhere it pleases. So the command line is a stark and unforgiving environment, but if you know which spells to cast, it can offer unlimited possibilities. So a while ago in February, nature argued that researchers should embrace the command line. They say that it can help you wrangle big files and that it can parallelize your experiments and automate your work. And yes, there are plenty of other reasons. Most importantly, it can save you from velociraptors, but I'm not here to convince you to use the command line. No, I want you to consider to turn your code into a command line tool. So something that can be executed from the command line and that can interact with other command line tools. And the real reason I am talking to you about this topic is that because I believe that command line tools enable these, yeah, wider community ideals that I read here about CSVConf. So those are interoperability, hackability and simplicity. I took the liberty of not highlighting data because there can of course also be interoperability regarding tools. So command line tools are simple. Well, most of them are. They usually do one thing and they do it well. They're hackable in the sense that you can combine tools, right? They all have text as a universal language. And there's also a sense of interoperability in regarding that you are able to leverage the tools and the command line in other places. So for example, here is a, here's JupyterLab, right? I'm showing here some Python code. There's a Jupyter Notebook and there is a full terminal here at the bottom. All showing different ways in which you can use the command line within Python. So plenty of programming languages and environment have this ability. Also, R and RStudio allow you to use the command line and their tools. So, yeah, you wanted to say something? I'm sorry, your slides aren't popping up. Oh, oh my, you've just been looking at my face. And that's the least important thing of all. I forgot to press this button. Oh my, and just the thing that I worked so hard on these slides. So, how are we doing on time? I have plenty of time left, so let's just. You're good on time. I was thinking, where is all the laughter? I mean, all these, yeah, I'm working on this book. Yeah, data science at the command line. Here we go, my company, free as in bird. This is what the command line looks like in case you have not seen it before. There's this nature article which you should be able to find if you Google for nature and bash.  These are the core values of CSVConf. There's value in repeating all this, of course. Jupiter lab, R and R studio. Well, I'm glad you told me, thank you for that. And even Spark, here I highlighted a sentence from the book Spark the definitive guide by the original author of Spark. And they say the pipe method is probably one of Spark's more interesting methods. And I think that's quite a compliment coming from, well, the author of this 800 pound gorilla when it comes to wrangling a lot of data. And I think it's really interesting that they've decided to add the functionality to leverage a 50 year old technology. So now that I have sort of established what command line is, tools, we're gonna look at tools in a moment, but also that it's in a lot of different places, right? Not only different programming languages and environments, but it can be found on supercomputers, to microcontrollers, and of course on your laptops. Even Windows now with it's a WSL, Windows subsystem for Linux, you can easily run a UNIX command line on your Windows system. So it's everywhere and it's here to stay. So about turning your code into a tool, right? All you have to do is follow these six easy steps. Now, I can imagine that right now you're feeling a bit like Alice tumbling down the rabbit hole. Oh, don't worry. Let's all just take the red pill and I show you how deep the rabbit hole goes. And let's go to, here we go. If you don't see the full screen, I now have JupyterLab open. What I've learned about Crowdcast is that if you resize your browser, if you make it a bit wider, the aspect ratio changes and the entire slide or my entire screen should be visible. So in this demonstration, I'm going to use Python, but the same principles apply to other programming languages, right? If your weapon of choice is R or JavaScript or Java, the same steps, right? The syntax will be slightly different, but the same steps can be taken. So I've also chosen a very simple example so that we can focus on the process itself rather than the code. So here we've got some analysis, right? What we're gonna do here in this piece of code is we're gonna open up a text file that contains the adventures of Alice in Wonderland and we're gonna count the number of lines that contain the term Alice. And then we're gonna print the result. Now, of course, it's up to you to use your imagination and think like, okay, how does that apply to my code, right? So the very first step, although it's a bit trivial at this point, is to copy this to a file, right? A regular text file. And that's what I have right here. That's the first step that you need to do. And this becomes more complicated when of course your code is scattered across many different files or notebooks and so forth. Let's see now. I shoot, where's my command line? Oh, there it's hiding. Let's move that over here. So now you should see the command line. Got a couple of files here, count.py. Now, let's first check that it's working, right? 401. That's the number of times Alice appears in this text. And this is again, a really simple command line tool. In fact, what we've just did is I've implemented quite poorly to be honest, grep. Should be right, but that doesn't matter. It's the process, like I said, which matters. So I'm now going to take you through the steps that are needed in order to turn this into a proper command line tool. By the way, if you have any questions, I unfortunately don't have the time to look at them now, but there are various ways you can get ahold of me after this session. So, okay, the very first thing we want to do, oh, not this file, that is the text itself. Now let's copy that over from the previous directory that will speed up things a little bit. So the very first step that we want to do, or the second step actually, after we've put things into a file, is to add some arguments, right? Because this piece of code does the same thing over and over again, right? And in order to make this tool more usable in more general, you have to think about, okay, what are some parts that can vary that I would like to change? And so what I've added here is this import statement and I'm using the, well, an argument that is passed here at the command line. The first element is always the name of the file. And so the second element in Python that is element one, that would be an argument. So now what I could do, well, I can test if Alice still works, but I could also try out other values. So we've already made our code a little bit more general. But of course there are other things we can do. Now let's see, this piece of code only works on Alice, right? This code takes on the responsibility of opening up a file and reading that file. And it's the same file over and over again. Now of course you could turn that into an argument, just like the pattern is then, yeah? So Alice hadn't got that's an argument. So we could also turn the file name as an argument, but another approach is to read, let your tool read from standard input. So that's a standardized way of feeding data into a tool. And that's what this code is doing. It's, let me put them side by side. Guess if I do it like this. So now we have those two files side by side. And the second version here, the newer version is even a bit simpler. It doesn't open a file, it just reads from standard input. So it has moved that responsibility to outside the tool. So now we have to read it in. This is one way you can do it. And then we can pipe that into all. Okay, so this works. But now that this tool is reading from standard input, anything is possible. We could even. This is your, sorry, this is your five minute warning. Thank you very much. That's actually a minute more than I had. I'm gonna make use of it. So it can read anything. Any data that you feed into this, it can now handle. So what I'm doing here is I'm using the command line tool curl to download a file. This is the sequel to that book through the looking glass. Oh, that took a long time to download a book. I can silence that one. Is it gonna take that long still? Anyway, you can see that Alice is mentioned on 465 lines in this book. So there's already a lot more possible now. In fact, it is just text. So we could even generate a list of numbers. Here I'm generating one through a hundred. And I could pipe that to that tool and say, I want you to count the number of times three, a three appears on a line. So moving on, because this doesn't really feel like a proper command line tool, right? So what I've changed here is I've added a single line here. These two first characters that is known as the shebang or hashbang, and this lets the command line or the shell know that this is executable. And what's here, what follows, that is the program which is responsible for interpreting this source code. Now, unfortunately, or no, that's not really unfortunately, we need one more step in order to make this work. And that is we need to change the permissions on this file. So otherwise we would get an error like, hey, you don't have to write permissions. So now what I can do is I could use it like so. And then I guess if you change this to just being count, because the command line doesn't really care about extensions, this already starts to feel more like a proper tool. Now, there's one final step. I'm gonna leave that as a take home exercise. You'll be able to find it in my book. Let's wrap up, because I have a few closing thoughts here. So these steps, I'd say are pretty easy. It's the thinking about what goes into this tool that is hard, right? Once you have a tool, even if you don't use it yourself, it will benefit others. If you at least, of course, want others to be able to use your tool. They would then, and perhaps you as well, able to tap into the existing ecosystem of all these command line tools. So all this functionality of downloading files, of scheduling, of monitoring and parallelizing even, all becomes available. And then I haven't even talked about packaging and distribution, which is very important in itself. So that's my talk. Thank you very much for listening. I hope I've been able to sort of convince you. If you need further convincing, if you have any questions at all, you can leave a message on Slack or you can send me a tweet. I'm on Twitter here. And again, good luck. Thank you to the organizers of CSV Inc. Enjoy the rest of your conference. And yeah, I'll...