Hello everyone, welcome to the platform SIG meeting, the kind of regular one, every two weeks in general, but I think it's been slightly less in the last past weeks for reasons. So we are going to discuss today a few things. I'm going to share my screen right away about the agenda. Now people should be seeing my screen. So the agenda for today is to do a Brazilian action item recap and then we will probably cover indeed some Java 11 related subjects and then random issues around various subjects. So let's dig into that right away. Before we start, anyone has anything to say or to ask for? I'll take that for a no, I suppose. So just a reminder before maybe we start, please feel free to join. We are very following and hanging out in the platform SIG channel on Gitter under the organization. So feel free to ask questions there and we generally are trying to follow. And so also maybe another reminder, this is an open source project. So when I'm saying we, I'm really talking about anyone who's willing to dedicate some time, some effort in that initiative, there, there's we welcome anyone in that regard. So back to the agenda. So Oleg wanted to poke the list on the Jeff three, two and seven. All right. You want to explain or discuss that? Yeah. So we had a discussion in the platform SIG meeting, but we didn't have a discussion in the developer mailing list. So in the threat, I added Jenkins developer mailing list to the threat as well. So I assume that the section item is done. Yeah, right. And so I didn't remember we had a lot of feedback about that, but yeah, basically it's so for anyone watching, it's about that. And also, I think there was an action probably since last time by Olivier Verna who created the setup and the variables inside jetci.io and trusted.ci. That would actually enable us, that's kind of the gist of the of the JEP, correct me if I'm wrong, to enable us kind of automatically to just use that variable to automatically deploy either to the Jenkins slash Jenkins CI slash. That thing. Yeah. It's either there or either experimental or the Jenkins four. I think it's been changed once I don't remember if he decided finally the name, but yeah, basically changing variabilizing here. Quick update on that. We have patched the libraries for that and we also updated JEP. So current I have pasted into the chat and the current version of the JEP reflects these variables. So it's available for evaluation and now we are waiting mostly for evaluation feedback and we agreed that Olivier will be delivered. So we are waiting for Kiki to officially attend him. So this is where in our publication script that basically we've variabilized this and that makes that automatically on CI which is the public instance for anyone that can kind of use it is going to deploy things. And that's also kind of why maybe for people watching you want, we want to remind that nobody should be using that for production purpose, the Jenkins experimental thing because it could be easy more easily maybe taken over hacked. So that's why only the Jenkins slash Jenkins should be ever used for production because that one is generated from a more security segregated instance. So yeah. Yeah, so I think we covered your meeting notes done Olivier. Right. Okay. So you're doing a great job. I think Mark thinks so. Yeah. So that's that's by the way action item but relates to Java 11 work. Right. Great. We've really covered that a bit later. I mean, when we cover this, but basically the global sterilization issue has been tackled. Done. Right. What's that one? I think and what about the status about that one? It's still open. Right. So I'm going to, by the way, we definitely need to scrap it. And it would be nice to have Java 11 label or maybe Java 11 compatibility so that we see it in our common queries. Oh, we need to push the public comments. Yeah, this one does need a label. You're right. This one was the problem actually during upgrading JBoss marshalling itself, right? Not upgrading Jenkins. Not it was it was a change in the underlying JBoss package. Yeah. By the way, unrelated comment, but you're not presenting to everyone. So you're not pinned and in YouTube likely we see Mark's face now. Unless I messed up something. But yeah, let's check YouTube right now. Yeah. Really? Really? Okay. Let me see. Oh, my dear. I messed it up. No, I thought I was doing the right thing. But so that's the thing now. So you should be seeing that I'm pinging Jen, Bryden and everybody. Could this issue has surfaced during the platform meeting? Could we please be triaged? Yeah. Could options? Yeah, and probably we need to add a stack trace from configuration as a code plugin chart. Just a second. I'll repaste it in the platform seek. Sorry, what? So yesterday we got one stranger report about a program that serialization, which is maybe related to this issue. You mean that one? Yeah, this one. Probably it's related. It's, I mean, yeah, I commented in answer here. We didn't get an answer. But basically I'm suspecting that maybe that person, we started in the middle of a running pipeline, which would be a documented fader. So yeah, we probably need, I mean, I'm not going to worry too much until this person actually files a report. But until then I'm going to suspect that it's just because it was restarted in the middle of this. And we do know that even the serialization format did change. This is a one-shot issue that anyone is going to have to go with. But yeah, it's kind of a small one. You just have, when you go from workflow support pre-3.0 to post-3.0, to make sure that you have no running pipeline for that very upgrade. And then you can do business as usual basically. So yeah, you're right that that's a concern. But for now we have no ping back or anything else since. So we'll see if it goes back or if it's confirmed. But even that person, if I remember correctly, said that basically, I think he, yeah, you're right. Apparently, basically the issue is gone. So it's really looking, that's why or so, that's what made me think, well, it's probably that kind of issue that something was running. And then next time it just never will be visible again because then the format is upgraded and that's it. Because that's a nothing for people watching that has nothing to do with the Jenkins version itself, but more about the workflow support version when you upgrade from pre-3.0 to post-3.0 again. So yeah, nice point. Did I by the way, I'm not even sure I didn't add. So yeah, great. Devin discuss upgrade worrying. I'm wondering what that means. So that was, he needed to discuss how that they were okay with putting a warning inside the workflow support 3.0 plug-in. They were okay with it. He did it. You're showing it on the screen. Yeah. So it's only the change log. So then I understand it's not like in an admin monitor or something, but I guess it's already enough. Yeah, we have compatible since warning. So upgrading users. Yeah, right. All users upgrade from a web UI. You will see a warning. Yeah, absolutely. So for people that are relatable about that thing, it's Jenkins plug-in. We can document the fact that a given update is compatible since only something specific versions. And so in such case, it's going to trigger warning when a user is going from something that's lower than that to that thing or higher, basically. So yeah, it's going to also surface from the update manager itself. So that's just great. That's the case. And the next one is kind of, I guess, related to that. Yeah, it's done. Yeah, right. Mark raised a Docker issue, unnecessary, blah, blah, blah. Okay, that's because indeed we realize after the fact that only OpenJDK11 was using CID for a reason we didn't understand really. But Mark, do you have some notes to that or do you think? The only point there was that we were, for whatever reason, generating with an old version of the JDK11 image. The JDK11 image on Docker was newer. And the act of constructing a new one switched us from Debian CID to Debian Stretch. So we're now on an official, a released and supported version of Debian instead of unstable. Yeah, but only for Java 11 packages, right? We didn't change Java 8 packages. Well, Java 8 was already on Debian Stretch. So you're correct that we didn't alter the base operating, in fact, what we did was Java 11 now uses the same base operating system, major version as Java 8 does. Yeah, and for anyone having a look, indeed Mark still did change in the Docker file for the Java 8 package, but it's like going from latest to Stretch, which currently means the same thing. But the good thing is that now it's not going to update automatically, you know, randomly at some point. Instead, it's going to stay on Stretch until we decide otherwise. Until we decide otherwise, sorry. But is it the case? Am I correct, Mark? You expressed it correctly. Yeah, all I did was widen the declaration from OpenJDK8 to OpenJDK8-Stretch, and it turns out they point to exactly the same thing at tested point, and it makes explicit that we are based on, for now, Debian Stretch. Some day in the future, we may as a project choose to base ourselves on another Debian version, but right now it's Debian Stretch. That's the thing we were referring to, right? Correct, that top, that top. Currently, currently that is synonymous to that. So it might not be the case in the future, but at least we won't see any upgrade that, you know, what happens when we didn't plan it, and something starts screwing up everything. Right. Right. Mark has opened a chip for Docker, not the chip protection, right. Indeed, that's the discussion that last time we had, that we probably would at some point to try and clarify the kind of target platform we support and the thing we don't, because right now it's more like, correct me if I'm wrong, like an organic growth and like de facto growth that that's been happening along the years, that we added like Slim, Alpine, blah, blah, blah, anything, but some things like Alpine finally proved to be problematic recently, and that's kind of the trigger for this. Correct, and I will open that, Jeff. The idea is let's define some rules that we'll use as a project to select the operating system, operating system we do and don't support, at least start the discussion. I don't know how they will ultimately end, but start the discussion using a JEP. I had an action item to do the same for Windows. Oh, oh, good. It might be. I mean, I'm not wondering if we should take that action item from you so that we should just put it in this, in the list of action items for this meeting. Well, you can create an action item. I need to clarify some bits before I go forward with Windows support. Yeah, but I think indeed that probably would not make sense to have a JEP now, and I'm reading it like more precisely. I think we probably would want, don't we want to have a single JEP for like, you know, the Jenkins project proposed kind of supported, if there's anything like support on the open source side, platforms. And I guess it would be easier and clearer that we have only one instead of like one for Windows, one for Docker or whatever. There are two parts. We may have separate JEPs, but it definitely makes sense to have a single operating systems support page. Yes. Now we don't have exclusive definition of what we support, at least on Jenkins.io. Maybe we have some obsolete wiki pages. As a part of Hackathon in June, we created one page for Java support before that we didn't even have official Java support policy. Yeah, requirements. Yes, so yeah, creating and cooperating system support would be definitely helpful for Jenkins users. Yeah, it's hard to say away in current run Jenkins now. Yeah, I mean, yeah, it's always hard because I'm always a bit stretched about the phrasing in like, because support is like there, there is like, you know, SLA or whatever. It's not really the same thing. Like it's like when we're helping and not supporting people on the user's list or something. No, well, I wouldn't worry much about that because Debian certainly declares things that they will, configurations they support in the sense of that. I think we're no worse than they are in using the word support. Don't panic about the word. So we will definitely need to write something, but that's why we have JEPs. We can discuss it. Exactly that, because yeah, the process is also kind of, the final thing is interesting, but the journey, the journey, the process, you know, triggering emails and devlies having people discuss of a specific issue is also a very important part of this. Even if in the end, we know we end up writing anything, but it's already something interesting. Right, anything else? I guess we did the kind of action item part, and we are... Yeah, time is still correct. We've done like half of the meeting time, so we are good for now. We should move on. Yeah, absolutely. So Java 11, blocking issue status reports. Do you want anyone wants to cover that? Well, I just returned from vacation. I have no idea. Really? Surprise. I have disabled general notifications. I have a few thousands of notifications, which I'm not going to read. Really? Yeah, I need some time to catch up. No, no, no, no problem. That's absolutely expected and normal. Just mark everything as read now, so that you can start from start new. Yeah, so the status is right now looking good. For instance, the really outstanding thing. So last time was really about the workflow support plugin, which was kind of a mess last time. We had a version that was, you know, specifically released for Java 11, one that was specifically... So the previous one that would only work on Java 8. But in the end, Devin Nussbaum found a way to fix that for everything. And so it ended up being an upgrade for Jebus Marshaller. And that's the reason why I was explaining earlier that you have to kind of suffer a one-shot issue when you're upgrading to that version. And it's already doable right now, even because it's been released already and already a dateable tool for Java 8. Jenkins is running on Java 8 already. So the good thing about that, and so it's that, you know, the workflow support 3.0 is going to be something that that's going to be already handled and deployed in new kind of battle tested already, away even before we reached the point of the Java 11 GA. So that that's really a nice thing because that was really the outstanding issue we had because basically pipeline would just immediately crush after a startup. So yeah, that's great. The the rest of the I guess the main things are probably the Jenkins issue that's about, so right now for anyone wanting to run Java 11, you have to pass a variety of, it did summarize here in that entry. Yeah, so you have when you run Java 11, Jenkins on Java 11, you have to pass those options if you want to have no issues. It's actually a bit more, the situation is even slightly better than that because even if you don't pass those, you are going to probably be able to run Jenkins without any issue for a substantial number of Jenkins plugins. The thing is, you could at some point install a plugin that's using actually Jaxby or depending on some extracted models from the JDK after Jaxby 11 and then everything we start scratching at least for that plugin. So that's the thing we are trying to work on right now and making add models unnecessary anymore. In the JAP 2.1.1, which is the one describing Java 11, that's been written by our own Oleg, our super champion. Basically it's given, it's said there that we are going to try to remove those but it's not really a goal. It's a might. We may be able to remove these but it's not going to be considered a blocker if I remember correctly. So just to explain why it was stated in such way, we are really interested to retain full compatibility and to retain full compatibility of CLI so that users can migrate to Java 11 without even noticing and that we don't need to rework all packages packaging flows, which also integrated Java 11. So our current state that we updated Docker so all Docker users just do not notice so that we do something to attach these libraries. But immediately we would like to have something in the Word file and there are multiple ways to do that but we haven't fully investigated these ways yet. There were some experiments which didn't work. There are still some options which may work so if one of these experiments work well my preference would be to have full compatibility and to avoid inclusion of models in such way. But if it doesn't work, then yeah we can probably say that for Word files you have to specify the components externally. And actually for us, JAX is just beginning because there are more models which may require explicit definition and we expect more models to be excluded from Java in a few of the versions Java 12 and so on. So easily we would need to have an engine to prevent that. But if we cannot find any workable solution for now then yeah we may go with GE with such a breaking change. Yep, so that's the Jenkins issue already five I'm already looking into. I've been digging into completing or analyzing more building on top of the work already done by Ole, Kosuke and Jesse I remember correctly. Especially during the hackfest that happened last June about Java 9 plus work basically. So to summarize the situation as I was kind of hinting about a few seconds ago is still looking good because if when I analyze this basically close to no plugins I would say I mean yeah there's a handful of those but compared to the 1500 plugins there's like no plugins impacted because even in that list there are things like here that have no so that actually have the phrase Java XML bind but it's actually not something like a plugin so not even the full list is relevant. So we don't have a lot of issues basically I was first having a hard time actually to trigger an issue on Jaxby. So I ended up having one after a recommendation from Oleg trying out the sloc count plugin for instance which I'm working on right now to see what's the best way to fix it but basically there are like we have many options to fix it I already fixed it in two minutes just by adding Jaxby in many locations and every single tests I did was working. So that's kind of I'm generally pretty optimistic about that but I'm generally too optimistic so I'm trying to be as focused. Yeah so the situation is looking good kind of getting back to the thing we are supposed to discuss. The status is that we don't see we don't envision a lot of blockers we are about to be able to run the full ATH and PCT runs under these Java 11 peeps. Don't you want to run ATH? Yeah we run ATH but we didn't run like you know I think we so yeah we run a variety of PCT runs on a dozen of plugins but not like you know hundreds at least and so there was the OTSS ATH runs which I think went probably quite fine but I don't think we analyzed a lot of this so overall we probably need to rerun a full run you know and get a hold of this and there is a document by the way I don't have the link handy about the PCT status so the PCT is plug-in compatibility tester is a tool that basically tests plug-in together at the test level which is kind of a complementary to ATH accepting test harness which is a Selenium best framework used in Jenkins project so yeah we found a few issues but right now I would say correct me again if I'm wrong that the most of the time is now spent on adapting tooling but we like do not see blocking or or concerning issues surfacing anymore I would say we have some reports for plug-in compatibility which we'll likely need to fix before the GE but we need to explore these options and yeah if we decide to go without the Jax B probably the scope of fixing plugins will be much wider because there are plugins like TFS plug-in test complete plug-in HP quality center and effectively many plugins which use XML parsing use Jax B and in this case we will have to fix a lot of plugins I believe well I already provided the list so I don't know why you are I just reference popular plugins in this list and many of those so and that's something I was going to propose maybe in to do in Fosden by the way most of those usage are for instance using the data type converter that was something that got fixed in the instance identity module here so basically it's a one-liner and most of the usages I found in the Jenkins community is exactly that usage basically this thing in Jax B is something that that provides a small API to to convert into base 64 thing so basically that's kind of a an example of the removal from removing Jax B here and I was like not a one-liner but almost because well removing replacing basically this by this and then everything works fine and I already fixed a few things this way in a few plugins so obviously there are going to be cases like in sLock.com plugin that's not that obvious because in sLock.com plugin it's just using Jax B to serialize which is the goal of Jax B serialize an object into XML and back but in such case I would say well and that's what I've written I've wrote in the report I think probably it could be quite simply replaced by an extreme serialization for the same you know result so yeah in my case yes yeah there are some potential issues on that but yeah I propose to discuss offline because we have limited time at this meeting absolutely I'm just watching the time we have still a bit less than 10 minutes so that's why we are right for now because I think we were reaching the end of the status the meeting notes so is this the place for me to ask about operating system installers whether they're required or not or should we do that offline depends I mean we can probably discuss the status but I guess yeah as Oleg was hinting I think we are not going to be likely solutionizing here it's more like discussing or trying to summarize for anyone watching what's the status okay skip then thanks okay so I propose to have a wider discussion about compatibility at the next meeting because if we agree that we need to discuss something for Debian something for Docker something for Windows probably we should run a separate session about that thank you yep so ATH is now as far as I know fully supporting Java 11 thanks to a lot of work from at least I'm going to forget people so at least I know Oliver and Ramon hasn't been doing a lot of work but many many other people including people from the current meeting but yeah PCT has been fixed too as far as I know but we surfaced a lot of issues here and there but in most cases I've seen for instance I add that what I have in mind is pipeline utility steps the issue that was surfacing in PCT was never reproducible in the normal usage from Jenkins itself PCT itself has a lot of limitations so yeah it's an attempt to to meet testing so it's just an advanced version of setting up some system properties that tries to automatically resolve dependencies etc but PCT itself is not guaranteed to work in all cases yeah exactly yeah there was a lot of changes in the term of class loading in Java 9 plus and indeed for instance things like Java SQL are definitely not in the same class loader anymore so that's probably why he's surfacing there and not in the normal usage yeah most probably we'll need to have a patch on the Jenkins core site for it because it's safer to have a patch than to risk and go and resolve this patch for example we may get into the same issues when we deploy to webcam containers so I was thinking about reviewing this issue later it's not recorded in GA but yeah a little bit yeah that's a complex issue because then what are we going to do about every like Java EE thingy that got extracted from the JDK tenders that's quite that's probably the most blurry and difficult part because we don't know off issues yet with with regard to what we tested but as Oleg was concerned about we could indeed later on find some weird use ages of Jenkins because we know how much it's used in many situations where people would do something some weird things with class loading and you know build on top of implicit behaviors which was never documented and weren't it work so we have to probably decide in such case what we want to do for instance break compatibility like the JDK itself did so that's a hard issue indeed mm-hmm so Oleg uh you want to discuss that what exactly I'm trying um yeah it would make sense to discuss that but we are running out of time and there was a topic about windows installers and I'm not sure why this topic is missing in the agenda but I believe that Alex is here on the call is it the same the second the next one no it's not the same okay anyway we can just add something and let's discuss that now to have a discuss with Alex so we do all the trouble we discussed everything in action items so I believe we can skip that for now it was something about using chocolatey right no it's not chocolate not only chocolatey but also about windows installer msa1 anyway so let's just give the stage to Alex I think you're still here yeah I'm here you guys hear me yeah okay cool sorry I have a cold so I'll be coughing I apologize so yeah I've uploaded the single repository which has the the chocolatey packaging as well as the msi with the updates that I've made that's I posted a link in the um platform sig getter channel people can take a look I don't know what the next step in terms of what people want to see I can create a binary version of it that people can test if that's desired I marked it a little bit of testing when we were at Jenkins world but I have made some updates since then so I do need to also take into account Java 11 right now the installer looks for Java 8 installation so I need to understand what is needed for Java 11 in terms of if there are any environment variables need to be set or things like that to run under Java 11 that would probably be useful to add into the installer as well so it's a good experience for the user but you firstly need to have automatic discovery somehow yeah there's a registry search that it goes and it will find Java right now it's only looking for for Oracle's Java that may need to be updated depending on like the Amazon installer and stuff like that because the new licensing for the Oracle JDK and JRE could we just add an option to specify Java home when you run the installer because it would be a the most straightforward fix yeah so I was kind of aligning with the Tomcat installer which I like for Windows and it does have a capability it does do a search and then it will allow you to override that so we could definitely do something like that to allow people to override whatever was found as the the default if there was one yeah it would be nice that would be something we could definitely do and then also in terms of chocolatey I got in contact with the author of the current chocolatey package and he actually works for chocolatey so it's like someone requested the the the package and chocolatey went out and created one and he was completely open to turning over maintainership we just need to provide some sort of credentials to show that yes we are from the Jenkins project and you know so on and so forth so I didn't know specifically what we wanted to do with that I don't know if maybe a core maintainer emailing him I can forward his email address to someone but if someone with core maintainer writes and can link to their their access or whatever on GitHub or something I don't know something like that but that should be pretty easy so that the the repository I uploaded is it has a Jenkins file that will build the MSI and then it'll take that MSI and get the shahash information that's required for chocolatey and then build the chocolatey package I don't I know how to publish chocolatey packages I filed an infra ticket to have Jenkins org account created on the chocolatey page so we can get an API key to be able to upload packages under that account I didn't see anybody on that yet if I can so yeah lots of information sorry it's kind of a brain dump that's nice I think you're probably the best position to handle that so if that last question was who should request access I guess if you're ready or willing to do it I guess it's very fine if you do it yourself and we can just provide help or work together to get this done I guess okay I can do that great thanks a lot and feel free to just include plot from seek to cc all of us and please and yeah if you need special get help organization permissions I have admin ones or we can just get key key what Tyler from Jenkins boards to confirm the request so multiple options available okay and then at some point I need to probably have a a good email conversation with Olivier about the CI builds for the installer for the trusted environment for signing and that sort of thing because and how to publish like the MSI for instance to the mirrors things like that and then how we would kick off the builds when a release is being done for the main you know like warp file and stuff like that could we take inspiration for what has been done for Docker like creating a special organization and chocolate tea that would be for experimental packages so that we can you know try it right away test deployment from you know the public facing instance of CI and then once he's proofed to work then it's kind of easy because then we make sure we secure it and push things the same way from the trusted CI server would it make sense yeah we can definitely do something like that I can do that I'll take a look at doing that today well not today but this week yeah because we can really tell you that trying to test thing an interested CI is generally a pain because for a reason that nobody has access for for for the reason for the very good reason so yeah the iteration loop is really long so if you can make sure you know to iron out crap before trying in behind the VPN basically it's pretty best place for everyone and even mostly for you right okay great so anything else I think that's I think that's all for now great thanks a lot Alex so aka slide so windows service wrapper improvements was something different then so what is that I don't remember okay who on this call don't know what is a Windows service wrapper is if no I can briefly explain yeah probably I should just screen share okay I'm closing windows and try not to exit the call at the same time just a second okay the same to try to not stop the call at the same time I have locked use another account yeah there is a way to prevent stopping the broadcast okay do you see my screen yep no I'm saying yep it's not yet I think we lost okay if you make me present or it would be okay so long story short in Jenkins we have we do support windows and actually we allow installing Jenkins masters and Jenkins agents as Windows services for example MSI installer installs Jenkins as Windows service by default but there are also ways to install it after the installation for example Jenkins offers a menu when you start the agent where you can install the agent as service and similarly you can install Jenkins master service from its web UI and actually all these flows are based on the Windows service wrapper is a it's a project started by KK region that I took over its ownership maybe five years ago so this is a project implemented in .NET mostly in C sharp which actually just wraps the service and offers installation logic like install uninstall so you can manage services from CLI here there is a configuration file and many of you call it know it as Jenkins XML but yeah there is a configuration file which actually supports adding a lot of options and these options allow to alter the behavior in Jenkins we have the default behavior for example there is a component called Windows yeah there is also Windows agents plugin but I wanted to show Windows slave and storage plugin so this is a component which offers UI option to install as a service and it also has a sample for for Jenkins slave XML which defines the default configuration like that so this is an XML file and I have a GSOC project ID for this year to actually do some updates in order to stop using XMLs there are multiple issues we have currently in Windows service wrapper one of the issues that the configuration is not being imported per se it's been read on demand so it means that all configuration entries are being read only when they are needed and for example there is onfailure behavior so it will be parsed only when the failure actually happens and it means that when failure happens if you have wrong configuration file here it will be just it will just blow up there will be some attempts to include validation of inputs but not everything has been done in this project I have a GSOC ID which would actually focus on two things one is updating configuration to support YAML so instead of XML maybe we could do something more friendly to users nowadays and YAMLs generally briefly if you want to start for example have packaging in chocolate tea there is also Windows service packaging for chocolatey available nowadays and it's YAML based and a second part of the project is actually to improve validation and to improve diagnoses ability of the component and yeah currently I'm looking for potential maintainers but the project is there and if somebody is interested to be a stakeholder so please let me know so the scope is firstly updating the Windows service wrapper component but also updating Jenkins components it's a Windows agent installer maybe VMI Windows agents which also uses Windows service wrapper and of course Jenkins quarter itself so this is the project and if you want there is also a bunch of not a bunch of but some feature requests so if somebody likes C-sharp or wants to study that you can also contribute to this project and you may see that it has actually more stars that the most of Jenkins sub-projects maybe even more than Jenkins X who knows okay so that's what I wanted to say why I say it say it in platform seek I hope it's more or less obvious because yeah it's a part of Windows support for Jenkins okay thank you so any questions I don't think so I don't have any and for me thanks a lot thanks a lot I think we covered everything maybe just I don't have to switch to the other window let me see yeah I wanted to check what yeah I'll stop the sharing of the screen if I still share you're really sure I stopped I have either yeah so I wanted to know what is Alex opinion about this project whether it makes sense because he's probably one of the Windows users my microphone is muted so I don't play a lot with the XML files so I haven't had any issues in terms of configuration or anything like that so I've kind of used the default settings I don't really have as much input there I know with the MSI installer modifying a YAML file will will not be as easy as modifying XML because there is not a a custom action already in Wix which allows you to modify YAML files there is custom actions to modify XML files and I'm using that now to modify like the path to the Jerry and the port that's selected and things like that so we have to look at how that would have to be updated and done maybe we can write our own custom action in order to modify YAML files for something similar but I mean if if I mean YAML seems like a pretty common format so if it makes it easier to manage and have better features than I'm all for it yeah obviously we will retain XML compatibility whatever we do and yeah even if we do support YAML part of this project is to improve validation which would also apply to XML and all other configurations like we have a serious issue with agent installation flow because in order to install agent as a service currently you have to be system administrator actually you have to be running Jenkins agent as a system admin which is totally not a key so maybe some rework of this installation logic to YAML maybe not would be reasonable but let's see sounds good so there was a last point or last last last point about okay that's here for me you wanted I don't know who had it that but the platform Sieg and embedded Sieg discussion I think it's Oleg yeah it was also me so the story behind that we are going to start a new embedded special interest group which would focus on common interest cases like just embedded IOT automotive whatever whatever it will be mostly user group focusing on user stories so use cases how to address them with Jenkins but yeah when we talk about embedded one of the most common questions is embedded platforms so for example running on ARM not server ARM but there is a lot of use cases when people just run Jenkins agents and even masters so on embedded configurations and my question for discussion today was how would we align that because yes some of topics definitely um yeah they will be relevant to platform Siegs some will be relevant only for embedded Sieg but I definitely see some topics where they will be overflows and my question to you guys is how would we approach that let's take them in the embedded Sieg I would propose take the most specialized first and then only hoist things that we think are more general case up if needed so go with embedded first and and discuss them in most depth there if we since you're in both places and several other people in the group who probably also be in both places I see no risk no problem with that okay should be fine I believe we will have stories at least docker packaging soon because yeah we have ARM 64 discussion well and ARM 64 is currently an embedded platform as well I would say so yeah I believe we already in this state but yeah I'm getting more user feedback and embedded Sieg will be targeting users will be helpful for platform Sieg as well okay so that's what I wanted to discuss and yeah if somebody wants to join there is a link in the menu please and we will be officially announcing this Sieg in a few weeks I guess and there was a last point thanks Oleg about handling meeting agendas which is probably circling back to the discussion and the point we said at the beginning I guess given we run out of time I suppose we can just decide in a few seconds or not I mean will it make sense to have a single document instead of at once for meeting notes and what for I mean maybe I'm the only one who has been for it and then I'm fine with keeping this the current way I think Mark maybe you're probably the one that's been who's been creating lastly the documents and then the new instances what do you think about that one it's like we don't care you think it's it's already good as is right now or so I like having two dark I like having separate documents one per meeting because it helps me track things easier but I'm okay with whatever the group decides my personal preferences put the agenda only into the meeting notes and have the agenda document just have links to the various meeting notes documents I really I'm hesitant to have a single document which includes all notes from all meetings just because of the size that I think they'll grow to that was my concern but I'm open to any I am happy to record things and track things however you'd like fine Oleg do you have a particular particular strength opinion one way or the other no preference we use different approaches in different seeks so in JSOC we have a single status document well in other meetings or like platform we have separate ones both options work and even you've been doing the the heavy lifting about that mark I'm not being qualified to have an opinion in about that so great thanks everyone we're going to we've run out of time a bit so see you next time and thanks bye bye


Oh, here's another one. This is a fun one. Has objectivism influenced your jiu-jitsu? Oh, yeah. Yeah, no question. Brazilian jiu-jitsu, I should say, is just it's such a fascinating thing because it's this martial art that I'll be brief about it. But in essence, what you're doing is you're trying to figure out how a smaller weaker person can beat a bigger stronger person, which is a very difficult thing to do. And the basic strategy of jiu-jitsu is, if you can somehow latch on to the person where you can grapple with them via that range, that actually for various reasons is the most efficient way to do it for a whole set of reasons. And it amounts to body chess. People often describe it that way. And it's got so many principles and it's got different hierarchies of principles because they're like a couple of basic principles and they're derivative principles of that. And then there's a concrete application that's got this incredible hierarchy. And then the hierarchy really, you are rewarded in your thinking to the extent you have a good conceptual hierarchy because it ultimately translates into your ability to execute. And you have rationalists who are really good at saying, generally, you really do. And then you have empiricists who kind of have technique, but they don't understand the why behind the what. And then you have people who are really integrative. And some of the people who have taught me the most about jiu-jitsu are actually objectivists. And people, but it's a fascinating field because it's so conceptual. And probably the leading guy today as a teacher, a guy named John Danahur out of New York City, he was getting his PhD in philosophy at Columbia when he decided to become a full-time jiu-jitsu teacher. And even though he's in contemporary philosophy, he's a super rational guy. He's always talking about mutual self-interest, mutual benefit, and just super clear and very principled. I got the chance to meet him once and to take a lesson. And it's just fascinating how it's no accident that the clear-thinking philosopher is one of the leaders right now. So yeah, it influences a lot. And then I think that one thing with objectivism to think about is objectivism is a proper noun, which refers to Ayn Rand's understanding of a lot of fundamental issues. But it's possible for people to come at those understandings to the extent they're true. Those are just true things. Now they're hard to figure out. But people will come to aspects of those themselves. And it's good to see that when they do come up with themselves, it works very well. So some of these people think, oh, objectivism, it supports objectivism as a guide to life when people use aspects of it. And then to that extent, their life goes well. Sometimes people have the idea, well, unless people are familiar with objectivism as a proper noun, then they're just bound to live in an earthly hell. But now that's not exactly if they can get all of those insights, which we haven't seen anyone else who can come up with anything like that on their own. Obviously, it's going to be a lot better than getting relatively speaking bits and pieces.


under the knife, by H. G. Wells. What if I die under it? The thought recurred again and again as I walked home from Haddon's. It was purely a personal question. I was spared the deep anxieties of a married man, and I knew there were few of my intimate friends but would find my death troublesome chiefly on account of their duty of regret. I was surprised indeed, and perhaps a little humiliated, as I turned the matter over to think how few could possibly exceed the conventional requirement. Things came before me stripped of glamour in a clear dry light during that walk from Haddon's house over Primrose Hill. The were the friends of my youth. I perceive now that our affection was a tradition which we foregathered rather laboriously to maintain. There were the rivals and helpers of my later career. I suppose I had been cold-bloodied or undemonstrative. One perhaps implies the other. It may be even the capacity for friendship is a question of physique. There had been a time in my own life when I had grieved bitterly enough at the loss of a friend, but as I walked home that afternoon, the emotional side of my imagination was dormant. I could not pity myself, nor feel sorry for my friends, nor conceive of them as grieving for me. I was interested in this deadness of my emotional nature. No doubt a concomitant of my stagnating physiology, and my thoughts wandered off along the line it suggested. Once before in my hot youth, I had suffered a sudden loss of blood and had been within an ace of death. I remembered now that my affections as well as my passions had drained out of me, leaving scarcely anything but a tranquil resignation, a draig of self-pity. It had been weeks before the old ambitions and tendernesses and all the complex moral interplay of a man had reasserted themselves. Now again I was bloodless. I'd been feeding down for a week or more. I was not even hungry. It occurred to me that the real meaning of this numbness might be a gradual slipping away from the pleasure-pain guidance of the animal man. It has been proven, I take it, as thoroughly as anything can be proven in this world, that the higher emotions, the more moral feelings, even the subtle tendernesses of love, are evolved from the elemental desires and fears of the simple animal. They are the harness in which man's mental freedom goes, and it may be that as death overshadows us, as our possibility of acting diminishes, this complex growth of balanced impulse, propensity and aversion, whose it Sample complete. Ready to continue?


GPT versus Chat GPT. GPT and Chat GPT are language models. They both have some understanding of language. GPT is pre-trained on language modeling and can be fine-tuned on any specific task. Chat GPT makes use of a pre-trained GPT. This model is fine-tuned on answering a user's input prompt. On top of this, Chat GPT makes use of reinforcement learning to further fine-tune its parameters to ensure that the speech it generates is in fact factual and non-toxic. On GPT's side, instead of just fine-tuning, we could also use meta-learning to perform different NLP tasks. This ensures we don't require too much data on separate NLP tasks to perform them. Chat GPT, on the other hand, at least in its first iteration, only uses fine-tuning. This is probably because most language problems are solved better with fine-tuning despite the requirements of lots of data.


Computers are changing everything we do in biology today. Biology is really special in that these are some of the most complicated systems we are aware of. The human brain is probably on the same magnitude as the universe in terms of complexity. What's happened since the 1970s is that as computers are getting faster and faster we've been able to go to larger and larger systems. Today we can predict models of DNA, what happens in your cells, iron channels, and even design drugs in computers. There are drugs on the market today that have been developed entirely on computers. Now the challenge for us, although we benefit from this, is that what I could do individually as a student, so 20 years ago, to move to the next generation of computers that's going to do in the orders of millions of millions of millions of operations and XFLOP per second, we're going to need teams including some of the best computer scientists and application experts in the world. BioXL is combining 12 key players in computational biomolecular research in Europe, from university to research organizations and also commercial actors. With this we can create a very powerful team that covers the full spectrum from high performance simulations over high throughput computing to data integration and associated workflows. BioXL is about excellence in software and biomolecular simulations and we need biomolecular simulations to understand the molecule of lives, proteins and their interactions from the atomic quantum level. This will be the CPMD software within the project to their 3D structure and dynamics which will be covered by the GROMAC simulation software to their interactions and macromolecular assemblies which are basically giving insight into how these molecules interact together. The software efforts that we are doing here within BioXL are going to impact on the development of drugs and impact on health. In BioXL we're helping scientists, researchers be able to link together simulations, complicated modeling codes, do data processing, link it to data stores and so on. So to be able to help with that we're working on workflows and we use workflow systems and we use workflow systems to automate all of that chaining together and the running of the simulations. We use it to be able to report what you've just done because it's all automated. That makes it a lot easier. We're building libraries of workflows so that you can reuse ones that we've already built. So there's a scale up of skills and capability there. We're using different workflow management systems because there are many out there, really good ones, the best, so we shouldn't reinvent, we should reuse and to do that we have to be able to port them onto different compute places and we have to be able to link them together, inter-operate them. Our core applications are widely used by both academia and industry. One important goal is to strengthen the links between them as well as with high end resource providers. To achieve that we promote available expertise and best practices for efficient software and hardware use. The center is also developing an extensive training program and a portfolio of services to specifically address the missing competencies in the community. Our training program includes numerous workshops, educational webinar series, along with an online knowledge resource center. So the hope is that in the future, through the integration that will come out of by Excel, for example, a non-expert scientist will be able to use in the best ways the different pieces of software in a fully integrated manner. Instead of having pieces of puzzle that you have to put together, the big picture will already in place and this will just speed up science and leads to better results. The continuation of the project will mean that we'll be able to capitalize on better codes, the best software workflows that enable researchers who hadn't been able to use those codes before be able to use them to widen the whole way that we can do biomolecular simulation. BioExcel is set out to be a long lasting infrastructure computational bio-molecular researchers can rely on. And after the initial funding period from the European Commission, we are working on various business models that will allow us to keep BioExcel alive for a long time to become a reliable, dependable resource and infrastructure for biomolecular researchers.


Jaya jaya jaya jaya jaya jaya jaya. Sri Vasyankar Adi Anant success. Sri Vasyankar Adi Anant success. Jaya jaya jaya jaya. You got the greetings to all of you This is the Chandramana Ugadi today. This means according to the Lunar calendar, this is the New Year's Day. For Telugu and Karnataka people, I hope at least you got your name flower and jaggery today. Well, it's a tradition of starting off the New Year, a very wise tradition where we mix neem flowers and jaggery together, little more jaggery, not in equal proportions. They are supposed to be equal proportion, but slowly people have moved little more towards sweetness. The choice has moved that way and first thing in the morning today, you should have eaten that, but you're everyday neem ball people, so it doesn't matter for you. The idea is the coming year, we are not asking only for good things, only for sweet things. Let them be at least in equal proportion, because what we consider as bitter is not necessarily wrong, nor bad. Everybody knows today that neem is not bad, it's bitter. Most bitter things in your life or what you think is bitter is essentially because every time life tries to push you into a larger possibility, you resist. So it becomes bitter. Something new happens, people suffer, right now corona, well it is out there, but it's given as a possibility to withdraw and be by ourselves. Well we can go on giving a whole dissertation about the economic, they're not able to share. I think it's the audio is not going across well please. So one can always talk about the negative impacts on the economy and how our lives will be. At the worst, I'm saying at the worst, our lives may become as it was ten years ago, at the worst. Or maybe it'll go back by a few months or a year. In terms of economic possibilities, comforts, conveniences, we may step back, it's possible. I'm saying if it, if it rages across the world. But we have seen already certain nations conducting it in a responsible and systemic way. They've managed to see that it doesn't go that way. At least here in India, we are stamping it down quite hard. If everybody cooperates and behaves responsibly, I think it will not go that way. But definitely some loss is going to be there in everybody's lives, irrespective of who you are, the rich, poor, middle class, everybody. But the sparrows as you can hear, they seem to be very happy. I'm sure many other creatures are very happy. People are sending me videos of dolphins have come to Mumbai coast, this happened, that happened. Well, it's very much possible because human footprint is not strong in these three weeks of lockdown. I'm sure other creatures will enjoy the planet a little more, which is also good. And maybe these three weeks of practice will make people initially they're struggling, but maybe they will learn to step back and enjoy their life by simply closing their eyes. There are many good possibilities. So I'm saying what you consider as bitterness is only because of your resistance. Otherwise, bitterness is also good. So the wisdom of this tradition, on a New Year's day we are not just eating sweets. We are eating equal proportion of bitterness and sweetness because we understand life comes in its many possibilities. If you do not accept what you think is bitter, then you will rule out all the possibilities of life and just stay with what you know. So today's Ugadi, all the Kannada and Telugu people particularly, I think for Tamil culture, the New Year's Day comes after a few days. This New Year's Day is kind of related and around the spring equinox. This means the position of the sun in relation to the northern hemisphere, particularly the tropics. It changes dramatically and this is the time sunlight is at its best. Sunlight at its best means life should be at its best. But unfortunately, because we've ripped the planet off, because there is no shade anywhere and water is a serious concern, extra sunlight or summer means a whole lot of people are terrified. It is not by coincidence that they fixed 22nd of March as World Water Day, which most people this year forgot because everybody is on World Corona Day. 22nd of March was World Water Day and 23rd we were supposed to have soil, water and climate change conference here, which now we have indefinitely postponed. Well, post-Ugadi means generally it rains, one or two rains will happen, one or two showers will happen in the next few days. But water crisis also begins because it starts getting hotter and water, the need for water goes up, but the availability of water goes down. Well, with this corona, water crisis can be quite disastrous. It may force people to come out of their homes and do desperate things as if the water doesn't come in their taps, which can happen in many places in southern India. Well, they will come out and nobody can stop them from coming out. You can't forcefully keep them in when there is no water. These chances are there. Contingency plans, I think are being made, but to what extent can we service such a large population is always a question mark. So anyway, this is the beginning of a year in terms of lunar calendar. This year, I think normally Ugadi means people visit each other and it's a big celebration. It's the… in southern India it's one of the most important festivals. I think temples are all closed down, communities cannot meet, families cannot meet. Right now, people are sitting back and maybe they didn't even get the neem flower. Jayagiri, I'm sure they had at home, but maybe they could not procure the neem flower also. I understand their distress, but the important aspect of consuming neem flower on the first day of the year is that we will be able to handle anything that comes our way. To make ourselves in such a way that we are not victims of what comes our way. Whatever comes our way, we will make the best out of it. That is the thing about life. So right now it's a virus, tomorrow it can be a dinosaur, who knows? Whatever comes, how to make the best out of it? Because a year passing or a new year means time is rolling away. Time is rolling away means our life is getting over. That's what it means. Most people are celebrating their new year's days and birthdays without understanding, without being conscious that actually these are milestones to tell you that your life is getting over. You need to get into a little more urgency about what is it that you want to do with this life. Everybody needs to get into little more urgency. Today is new year, this means what? One year went by. Today is your birthday, what does it mean? One year gone by. This means you must get into little more urgency, it's a reminder. And now being alone, being by yourself, you know, when we do Samyama programs and intensive programs, we ask you to be silent, be alone by yourself. Government of India is doing this for you, a very spiritual nation. Well, it's happening across the world. Most nations have lockdown for seven days, fifteen days, twenty-one days, whatever. I think they're only coming in installments, probably the lockdown will be much longer. It is also hope and a belief, we're not sure about this. But most people are hoping, and it is possible that the ability of the virus to transmit itself may come down as temperatures rise. As the sun's position in relation with the planet changes, its ability to transmit may go down. Above all, with the solar energy powered up, our bodies will function with little more zest. Because of that, our immune systems definitely function better. So, we may go through corona in a much milder way than some nations, unfortunately, are going through. I got, you know, people are sending all kinds of messages. Somebody that we know very well, a volunteer family from New York City, they said last ten days, somebody in the office tested positive. But now, all four of them, the whole family, two of them young boys, maybe sixteen and thirteen or something like that. All four of them went through all the symptoms. Miley had some breathing difficulties, but they did not go to the hospital, they took care of themselves at home. Now after ten, this is eleventh or twelfth day, they're saying they're feeling much better and they're okay. The temperature is gone, breathing difficulty is gone. Little cough is there, but they're recovering by themselves. So this is what could happen if one... definitely we are under the influence of sun, our immune systems will function better. If this happens, the twenty-one day lockdown may serve the purpose. But if the virus gets smarter, who knows? If they have come with their own air conditioning or something, who knows? Who knows what tricks they have? These are all tricks of creation. If they manage to go about the same way, then twenty-one day may not be enough. One may have to stretch it further. So this is a spiritual summer, that's all I'm saying. A long retreat, wherever you are. So as a part of this, I was just thinking in the next week, for the meditators, those who have done in engineering and at least you're practicing, Shambhavi Mahamudra, at least that much practice is there, then we thought we will have a lap of the master kind of event online, maybe half a day. So for this, I would like to see how many of you in different parts of the world are interested in committing at least five hours of time, committed time.  No. If you're willing to sit down by yourself in a room connected and for five hours, you're fully dedicated to that, we could see how to lead a process which will be definitely useful. I'm not thinking of corona, I'm thinking of you. Now, I know people will abuse me for this, but now you have become a captive spiritual seeker, a guru's dream. So staying healthy and safe is very important, but let's make use of this time the best possible way. So those of you, wherever you are in the world, if you register yourself and commit for minimum five hours, we will fix a date in the next week that we can have a five-hour session where we will guide you to certain things, but this is only for those of you who are already having at least Shambhavi Mahamudra going in your life. Otherwise, don't do it. It's important because then I will be restricted as to what I can do and cannot do. I'm hearing the Yoga Yoga chant. Well, the chant is going on all over the yoga center on the microphone. You must listen to that how it is done, but I hear many of you chanting and walking on the street, sitting here and there chanting. Those of you who are in other places, I don't know how you're doing. I'm seeing that the mantra is for many of you just in the mouth. That's not the way to do it. The mantra is designed in such a way, if you utter it, naturally the reverberation starts from the base of your belly. This is very important. This is your Manipuraka. This is very your maintenance centeries and right now, because everything is virus-oriented, activating your Manipura, which is the maintenance center is very important. So when you utter the mantra, unless you become very habitually chanting, not consciously chanting, then mantra is naturally starting from the base of the belly. You are chanting habitually because you know and blah, blah, blah, blah. It could be abuse. Why mantra? But I think when you abuse somebody, it comes right from here. I don't think anybody can abuse like this. When you abuse, it comes from here. So do the mantra like it's abuse. That is your involved. The mantra, the sounds are geometrically designed in such a way, naturally they touch the deepest point within you. Only then it energizes you. Only then it activates your samadprana. If you start chanting the mantra, if I say this because we are an open platform, certain people will go crazy, but let them. You will see that you will start sweating from certain parts of the body. I'm stressing on this, you will start sweating from certain parts of the body. Well, it's summer time, you may be sweating all the time, that's a different matter. But you will see that you will start sweating some certain parts of the body if you do it intensely. And that's important, you must notice that I don't have to tell you from where you will sweat, but you will notice that certain parts of the body will sweat more than the rest of the body which may be sweating because of the atmospheric temperatures. Whichever way, if you chant for ten, fifteen minutes, you must turn. Your clothes at least must be wet to some extent in this weather. Otherwise, you must perspire a little bit, if the weather is cool, you must have little perspiration going somewhere in your system. That will naturally happen. So please be conscious of this when you chant the mantra, we will do it right now. And as you do it because I just reminded, you know, another year has gone by and life is getting briefer, you don't have to run away because I am seeing people are trying to get more and more fast. This is the idea, this is the teaching from the virus, slow down. A machine which runs slow but functions at its peak is a good machine. A machine which is hyper will expand itself, which runs easy. But still at low rpm it functions at very high quality, that's what is needed. So don't run away with the mantra, there is a pace we have set, just go with that.  Sit still, just simply sit still, unmoving. Sit still, unmoving. Just be with me. Sivashankar Adi Ananth Sivashankar Adi Ananth Jaya Jaya Jaya When you utter the mantra, it's important that it comes from your Manipura or deeper down. At least the last part of it, when you say Shambho, you must say it like it's the last thing you want to say in your life. You want to throw out everything. This is the last thing you're going to do. That's how you must say it. Well, I hope that will be the last thing you will say in your life too. Anyway, happy Ugarthi once again. And with this cleansing and withdrawal, the virus guru is teaching us. Virus has become a guru, how to stay by yourself, be by yourself. Well, too much social contact is a contigion anyway. So virus is teaching your lesson. It doesn't matter how small a creature something is. A creature something is. We must learn. This is why this culture, man, woman, child, god, cow, donkey, because every one of them have a lesson for us. Here we are, learning from microorganisms. Wonderful. So if you're ready for a five-hour commitment, please all of you register. We will fix a date.


Hello, everyone. Today, I will be talking about how to be versatile with data as a product manager. As a PEM, we constantly had to make decisions in our various roles, and we had to make the right call very quickly and sometimes under ambiguous circumstances. So I want to focus this talk on the various tactics you can use to excel in making the right decisions and getting the results you need efficiently. The key points I want you to take away from this presentation are how to flex your skills in using data for making decisions in the various roles that appear. Identifying the various sources from where you can get data to make decisions and understanding the various types of data you may have to fill and how to process them. A little bit about me. I have been at AWS as a product manager for the last three years. Currently, I am in the machine learning team and previously I was in the elastic computer cloud team. As you can imagine, at AWS, we rely heavily on data to make decisions and being conversant in data analytics is key to being a successful product manager here. I'm also an alum from the University of Michigan Draw School of Business. When I get time, I'd like to go out and take photographs. You can find me at a camera store where I mainly focus on landscape and nature photography. What do you see behind? It's one of my images from the sunrise of the Great Smoky Mountain National Park. So let's look at why being versatile with data is important for the PEM. This is because as the owner of a product, feature or service, you're going to be at the center of interactions with marketing, sales, support, customers, engineering, UXD, and even your leadership and finance team. You're going to be asked to make decisions or talk to any one of these partners or stakeholders in day to day activity. And to make these decisions, you're going to rely on one or more of them for your data needs. For example, one day you may be writing product requirement docs and write user stories based on data that you may have already gathered. Another day you may be talking to customers, understanding the pain points and customer needs, and trying to address them. You may be talking to finance to project the growth of your business or convincing leadership that they actually need to support this product or help make a decision. In all these different roles, you're going to be wearing different hats and for each of them, you're going to have to make a decision. And for each of these roles, you're going to be handling it in different ways. A second reason is that you have to handle data from different sources as part of your decision making. You may be looking at raw data from a log file or from a sales transaction. Other times you may be looking at dashboards to help support your case. You know, performance dashboards are charts that show growth of your product. You may be evaluating soft data and these are things like customer interviews, surveys, feedbacks and focus groups. Sometimes I even had to create data from social media and from marketing campaigns. As a PM, you will often be asked to draw meaningful conclusions from all of these different sources of data and have to make a stand. So you have to quickly identify what makes sense for a given issue and evaluate which one to use to support the case. Another thing that you have to recognize as a PM is differentiating between qualitative and quantitative data. And this is an important distinction to make. Why? Because qualitative data is data that you can get from surveys and focus groups. And they help tell stories in a very different way compared to quantitative data, which you get from dashboards and data warehouse. And to be versatile with data, you may need to distinguish one type of data from the other and to know and learn which one to use for each situation. And even after you've identified your data sources and categorized qualitative and qualitative data, you still have your work cut out for you. And that is in using data to get the results you need. Sometimes it may be as simple as just pulling data from a table and creating a chart out of it, say the growth of a project or sales data. But other times it may be a lot more involved. You know, maybe you have to transform your original problem statement. It's something that fits the data that you have. Or you have to convert data from one form to another using various tools like Excel or Python or even other data management tools. Sometimes you have to combine artfully, combine qualitative and quantitative data and tell a story with it. You may have to do all this without the help of a data engineer. It's not the end of the world, but it's not an easy process. And that's why you have to be resourceful and inventive to handle such situations and be scrappy, and be creative and persistent to make sure that you take it all the way to the decision that you're trying to make. So we have looked at why, but before we go down the rabbit hole of what we need to do to be versatile. Let's look at how we can frame the problem so that we can use data to solve those issues. Thankfully, this is a familiar concept called the scientific method and the basis of this hypothesis testing. You first have to formulate the problem statement that you have to make the decision for. And once you've formulated the problem statement, you derive the hypothesis that'll help you make the decision. Simply clear once I give an example. The final thing is that you have to know what metrics to practice will allow you to test that hypothesis and then eventually make a decision. So for example, let's say you have to update a design element for a website. For example, it's where the search bar is located on the website. So to decide whether or not to do it, you would create a hypothesis test that tests whether updating that search bar location would improve, say for example, the traffic to that website. And now that you've identified the hypothesis and the metric, then you go about doing what is called the A.B. testing. And A.B. testing is really just comparing that metric, that traffic to that website for that updated design where the search bar has been moved to the original design in a very randomized manner. So it means that some customers, some users of that website are going to be shown the original design, whereas others are going to be shown the new design. And by running this across hundreds of thousands of users, you now have meaningful data that will tell you whether or not changing the design improved at the traffic by, say, 20%. And if that was your hypothesis, you can say that, yes, this hypothesis was a valid hypothesis and you can go about with making that change. The primary challenge that you will face in that hypothesis testing is that it's not always easy to transform the problem statement into a hypothesis that you can test. Additionally, defining the correct metrics for success is not always easy. The previous example, it was easy to just say it was the traffic to the website. Other times it may be a bit more nuanced than that. And finally, you may not always know the world of available metrics or data that you may have to look at. And this is where, you know, looking at previous examples of such changes or talking to your data engineering team to see what is available is very helpful. I would highly recommend a webinar from the product school by a PM, Sohei Thia, who gave this excellent presentation on how to be a data driven team. It breaks down this process of hypothesis testing very clearly. Now let's look at an example of data gathering that I did as a PM. I was working on a marketing campaign for a new product that I had launched and they wanted to do an email campaign to help grow the product. Typically, these kind of campaigns are run in a bulk corporation where thousands of customers are email information about this new product. And then we have an analytics team to gauge how effective that campaign was and what the success rate was. For this campaign, we faced an issue. We clearly couldn't do email customers in bulk. This was because we had a very limited budget for running the campaign. Secondly, customers were very sensitive to the campaign. These are enterprise customers and if the email wasn't relevant to their use case, it's likely that they might unsubscribe. As we all do when we get an relevant email, the problem is this could impact future campaigns for products that are relevant to their use case. So the hypothesis we formulated to address is worth that. Learning a targeted campaign improves the efficacy of the campaign by a specific amount and that is better than the cost incurred in creating this targeted campaign. The metrics that we tracked were the usual ones for gauging effectiveness of email campaigns that are clicked through a conversion rate. But in addition, I also wanted to track the growth and usage of this product by the target of customers. So the way this testing was accomplished was firstly identified select group of customers by using data about existing products and figuring out who these customers would be. So once we identified the customers we ran a targeted email campaign to them, the control was a set of random customers that were not using the similar product. After this was done, the marketing analytics team measured the email campaign metrics and these fell, you know, click through the rates and conversion rate. But in addition, I also measured the growth and usage of the product using our internal dashboard roughly two weeks and one month after the campaign was done and compared the targeted customers against the control. What I noted was that there was a marked usage improvement in the targeted customers versus the non-targeted customers a month after the email was used. A hypothesis was on 30 days or a month was that it took that long for customers to really digest the campaign email and run a proof of concept with the new product and decide that, yes, the new product was worth, migrating to the new product was worth the effort involved in doing it. As a result, this targeted campaign improved the product adoption and it became a prototype future email campaigns. So in summary, you know, I was tasked with growing the usage of a product and ran a targeted email campaign to grow this product. And it had to be a targeted campaign because we had limited budget and we didn't want to spam customers. And the end result was that by being scrappy and inventive and getting a targeted customer list and identifying the right metrics for usage, we were able to validate the hypothesis that running a targeted campaign does better the cost of running that campaign and includes the efficiency of such a campaign. So we looked at the why we need to be versatile and how to frame a problem to be versatile. Let's look at what we need to be, what we need to know in order to be versatile with data. If I start by revisiting an earlier slide that we did on distinguishing qualitative from quantitative data. We recognize earlier that this is an important distinction to me. And this is, let's put that in context of the hypothesis that the testing that they're defined for meeting decision based on how you frame your hypothesis, you get to decide what format of data you want to use to support that hypothesis. And this also determines your methods for collecting data and how you process the data. So let's look at examples of these two data that really help you understand what to look out for when you're looking at qualitative and quantitative data and how they differ from each other. So qualitative data sources are really descriptive and conceptual data collected through sources such as questionnaires, interviews, observations and focus groups. They are needed when you want to tell a story from these responses and customer insights. And because there are fewer than numbers, usually point in time to say collected during a focus group, you're not going to repeat a focus group every day. And additionally, because of that, the number of data points are likely to be fewer as well, especially when you compare it with quantitative data sources.  They're pretty taxing. The primary advantage of qualitative data is that insights really jump at you from these politicians. You may have to do some work in interpreting them, but the challenge is that or the flip side is that it is much harder to avoid bias in gathering the data. You have to make sure that you're not one way or the other in gathering data. And as apart from focus groups and interviews, the other key source of qualitative data, industry reports and market reports, because they aggregate quantitative data into useful snippets and this can really help tell a story or support your analysis. Typically, your employer or your university is likely to have subscriptions to sources such as iBuswood. There's some excellent market analysis reports. Let's look at quantitative data. Quantitative data should really be used when you're trying to quantify a problem based on data or when your hypothesis requires you to measure changes in a numeric scale. Right away, this distinction is, you know, you can easily distinguish this from qualitative data. And while this data can be pointed out, it's more often than not. It is more often than not, it's continuous in time. And if you properly define your thresholds and constraints for collecting the data, you can make sure that you're avoiding bias or anchoring any sort of quantitative data. Of course, because of the volume of data that you get in this, the primary disadvantage is that you have to do some sort of processing or filtering to make sure you get the right insight from the data to help support or oppose your hypothesis. And this is especially important when you source data sets of shoes that can happen, you know, processing more data for a bunch of IoT devices or looking at audio files for particular products, say an echo device. And you'll be lucky if you get access to dashboards that succinctly present the data, but more often than not, you have to do some analysis yourself. Notice that the one thing I didn't mention were customer surveys and feedback. And this is because this data source can be both qualitative and quantitative. We point in time or continuous because it all depends on how you formulate your questions and gather responses. Typically, the responses are long form question and answer. It's going to be qualitative data. And again, you're not going to get a whole lot of responses in long form. On the other hand, if your responses are multiple choice of simple options and things like waiting for a restaurant, then you're going to be collecting data from probably hundreds and thousands of users and this becomes quantitative data. And based on how you process a handle it, you can also be with bias in these situations. So let's look at an example of dealing with both multiple data sources to help address the issue. One of the products I was faced with when I was working in an EC2, was to design a compute server for running a very specific workload. And this may seem arcane, but it's really similar to designing a spec for a laptop which was intended primarily for gaming or video editing. It's just that in this case the workload and the customers are different. So the hypothesis I formulated was that a very specific design configuration is optimal for this workload. The challenge in testing the hypothesis was that design configuration isn't the exact same. There's nothing in literature says that you have to have four CPUs and eight GB of memory, for example, to run this workload. And I can rely on way too many data sources to eventually come to a conclusion. So in formulating the product requirements, I actually had to look at multiple sources. The key amongst which was talking to customers, so I interviewed multiple customers and ran focus groups. And these gave me qualitative input on what customers are looking for running this workload, because few, but very valuable. I also talked to workload experts for this particular workload and they gave me even more precise input on what is needed. I didn't have the customer view, but from a technical point of view, they helped me understand what is required. But I also wanted to validate these against data that I collected in a non-biased manner. And so I looked at dashboards and usage metrics for similar workloads that I've gone internal to the company. I also looked at log files to see performance of this workload in similar platforms. And using all of this together, I was able to create a product requirements document and then justify the specific configuration I was proposing to leadership. So now we have looked at how you need to rely on different sources of data to make decisions. Let's also look at why we need to be resourceful with handling data. This is because data is never in the format you need. Sometimes it's a large table or an Excel file. Other times it's just raw data, you know, I mentioned the IoT use case or maybe audio file. And if it isn't these raw data formats, you need to transform it to the one that you need, maybe as a border or a dashboard or a chart. That's not intuitive all the time. And this is mainly because data sources can be pretty diverse, especially raw data. And then there's no one single way to transform it into the format that you need. If you think of audio files, the thing has very different from sales transaction data. And you may need to combine all of this in order to make your case. This is probably where the help of a business intelligence or data engineering team can help. What if you don't have such a team? What do you do? So let's look at a few tricks or tactics that can help you address those gaps. In a typical medium or large enterprise, you're likely to have data and a data warehouse. And that means that you can do it in a database and you can write what is called SQL queries to extract the data that you need from it and then present to the need form. The problem is, SQL is just going to give you a simple table and it's not in a presentable form. A tableau of some other form of graphical analysis tool is extremely useful in such situation because not only can you pull data from a data warehouse, you can also present it in a very visual manner using graphs and charts. This is important because two ways to work with such visual dashboards are far more convincing and powerful in making your case and making a decision in supporting your decision to leadership. What if you don't have data in a data warehouse? Say it's in a log file, it's in a modern process. What do you do? I think first and foremost, see if you can handle it with Excel. It's one of the most simplest tool, easy to pick up, and it has a little bit of flexibility in handling unstructured data. But more often than not, if you have any form of tabular data, you can import it into Excel and then process it. Additionally, Excel is pretty extensible. You have pretty powerful DI tools that will allow you to make additional analysis. So if you're in Excel with, this is the path you should look at. On the other hand, if you have a bit more programming experience, Python is certainly a better way to process raw data. And this is because even though there's a steep learning curve, once you pick it up, it has a lot of power in how you can process data. It is very versatile and it builds upon libraries and other analysis that have been done by other people, other experts. You can also use tools like R, but really unless you're a data scientist, probably know it's an overkill for what you would need to do. So one thing to note is that all of these four tactics are repeatable and that is key because more often than not, you will be asked to redo analysis that led to the original decision and you may need to do it multiple times. Now let's look at an example of how what we learned applies. One of the tasks I was working with, one of the tasks I was working on was tracking the availability of a specific product across different regions. And the goal was to provide a roadmap to a leadership on what to do next, where to expand the product. But typically, in this case, I would have just looked at the dashboard maintained by our VIP. However, for this time, there wasn't a dashboard, there wasn't even a data that was where I could pull this data reliably. There was no hypothesis in this particular case, it was just a data gathering exercise, but we had to do it in a very quick and repeatable manner. So what I did was, I did a bit of scripting with Python to check whether a product is launching in a single instance in a single region. And by using the result from the Python script I imported it into Excel to present in a more human friendly manner, in a more graphical manner. And the key requirement was that it was repeatable because we had to know this every single region presented to leadership. And so what the key takeaway for this is that you don't need to know every skill, but it's important to be resourceful and gathering the data and be very quick in processing the data so that you're not stuck up on any specific aspect. And so, you know, the key takeaways from that exercise were how to be resourceful and inventive with processing data so that you're not hung up on very specific pathways or specific points. You know, ask for help if needed and make and be persistent in calling through the result. And so I was beginning that exam with that exercise I didn't even know what that end result was, but by pursuing it through the end and making sure that I had a repeatable result to be presented. It was a successful venture. So we're now reached the end of the presentation. So now learned how to be successful data driven and being versatile with data. For this, the key things to note are you need to know what your end goal and what is the decision or hypothesis you're trying to make. Because you have to be, you have to learn to be flexible with where you get your data from and how resourceful and inventive you are in health. And finally, you'll make sure that the process you do for making these positions is repeatable because you'll never know when you're asked to do it again. Thank you.


But you're the CEO of Total, thank you for being on WPC TV. Let me ask you a question, a pretty basic question about oil and gas. Not so long ago people talked about peak oil, which always seemed to me to be not a terribly bright idea. But with the price of oil as it is now, how do you view exploration development in the oil market in the years ahead? You know, there is a direct impact between the price and the cash flow it generates and so the investments, you know. But there is also an impact on the costs of our industry. And in fact, the volume of investments is not only a matter of revenues, it's also a matter of costs. So I would say that yes, the investments have dramatically decreased from $700 billion more or less two years ago to $400 billion. So there is much less investments. And that's an issue for the future of oil production because it's an industry where, you know, every week, every week, every day, every year. So production is declining. There is a natural decline. If we don't invest enough, then we will face in some years a lack of supply. So you're right to say that there was no peak oil, but there is no more peak demand, which is a new theory today. All that is just forget the peaks. Just it's, I would say, accommodative with cycles. When the price of oil is high, you invest too much and demand is low. When the price of oil is low, you invest less, but demand is higher. It's clear that fracking in the US has been a bit of a game changer. What do you think of the future of OPEC? OPEC has a brilliant future, by the way. Look, everybody is waiting for OPEC decision on November 30th in Vienna. And when OPEC in Algiers, two months or more ago, announced that they will have maybe an agreement, the price went up by 15%. So OPEC is there. And these countries represent 30% of the production and 50% of the reserves. You know, so it's a big, huge player. I think that's also true that in the US, you have a dynamic, a share oil production, which is, by the way, 5 million borrowers per day. It's 5%, the world production is not the rule of it. But there is a dynamic, and because of the way that you can, I would say, have a quicker reaction of investments according to the price level. So at $50, some rigs are immobilized, so it will impact the oil production. But again, we need both. We need everything. We need OPEC production, and we need a share oil production if we want to fill the demand. Because the real challenge for the wood industry is that the demand is continuing to grow. And the lower price is even growing quicker.  Is there a real challenge with climate change? It's still a real challenge for the coming 15, 20 years. No, when you speak about climate change, we must keep in mind the time scale issue. It's a matter of 35, 25 years, 40 years. You know, when you look to be in a three-degree scenario by the International Energy Agency, which was recently updated, you are in a two-degree scenario in 20, 40, 45% of oil and gas. It's not zero at all. So we still need oil and gas. Yes, that's true that the demand for oil could, I would say, stabilize or decline by this period, 20, 35, 20, 40. And so that there, we will have to develop the most competitive oil productions, like in the Middle East. But between today, 2015 and 2035, you have 20 years to go, and then production could change. But are you a company, Total? Does it invest also in renewable energies? Yeah, yeah, we invest. Total has decided to prepare to be a responsible major company. We are the number four major oil and gas company. We will remain a major oil and gas player in 25 years. But we will also be a player of renewables. We have today invested. We have 5% of business today is invested in renewables in solar, in energy storage, in energy efficiency. And I think it's a good policy. By the way, these markets are going quicker to reallocate part of the revenues that we extract from oil and gas. Of course, 90% of that is going to oil and gas, but to prepare the future. Because our ambition is to remain a major energy company in 25 years. I'm sure you'll succeed. Patrick Puyane, thank you very much indeed. Thank you.


Hello, and welcome back here to the channel. I'm evil rabbit. We are staring at the world drift towards our 32 With that us drift banner because round two of us drift is coming up here very shortly So we're gonna take a look at the track get some test runs and see if we can't figure out round twos layout Make sure you guys follow me on all social media orange found script from box below. Let's get to it So round two of the US drift series is at kill care So definitely a fun track and I've had a lot of fun with this track So we're gonna take a little course walk first to get an overview of the track and kind of where we need to be so We have of course the traditional Stargate of US drift and ESTA we have the driver do not cross line and we have an initiation up on to a Wall ride up here, which then comes down off the track into a Interclip which then goes into a wall ride on the outside and then hooks really deep in into an interclip Which goes to this outer clip to a nice wraparound section to one final interclip and Then an outer zone to the finish So it's a very I would say simplistic track but managing these banks and everything with these cars is going to be the Thing that I'm going to probably struggle with the most keeping the car in power So I don't straighten up and being able to keep in drift So we're gonna go full send on a base tune and see what we can do just on a base tune So see what we can do here first try out Did not get high enough on to that wall Oh not a terrible run overall could have done way better on the bank and kind of Struggled in that last part before I first run out that wasn't too bad of a run. I will take that as a First run for sure Just have a look how this car sounds So we're gonna go full send for a run number two That turbo is so loud All right, we're gonna we're gonna turn that down just a smidge All right second run out About the angle of these cars is not like my USDA car coming off that bank is definitely interesting Mile transition there to get all the way out to the grass that's too much catch cakes towards the end But overall we got to get rid of that cyber overall not a bad run Definitely could do a lot better in the zones, but for first runs out definitely Feeling okay in this car. So we're gonna go back reset our tires Everyone this like we would in a qualifying situation We're still trying to get this car dialed in with suspension and things like that We're gonna run it on cold tires Because we did have a bit warmer tires in that first run from doing that course walk So we're gonna go in cold tires a little different on colder tires Definitely gonna watch out for that because wheels went zero steer after that wall hit Need to be able to stay in power and not over rotate like that because then we got to change our angle Which is not something that Judges are gonna want to see when it comes to scoring So Overall, I feel like I need to get the suspension a little more dialed I need to tweak the gear ratio and things like that because I feel like the gearing is a Little bit off from where I need it to be to where I feel comfortable with the track. So we do one more Run as we just smack a smack a cone I think we might have knocked a wheel out of place to like wheel in the car Not on my actual fan attacks. So try initiating higher up on the wall coming up short on that wall I'm worried about smack it into the wall. That's a very wide hook back That was almost a zero So we're gonna make a quick adjustment to the car Give it a good two more runs here, then we'll take a look at those final replays of these final two runs and digress it from a third person or a overhead perspective So let's go full send with the adjustments that were made Just a wall tap. Nothing major. That's my tire up on that section That's me to be a little wide there. So the adjustments do feel better but I need to Get used to those adjustments So one final run for today's episode makes you follow me on all social media which found scripture box below if you Guys are in us drift. I will be probably trying to hit up the public service to get some practice and get some tandems and hopefully Get a good qualifying spot for round two because round two was actually on my birthday So there's that hopefully super excited to be able to compete in it See what we can do Need to figure out that wall section for sure all the clutch kicks involved So we're gonna switch up and we're gonna go take a look at the overhead and see what it looks like From I guess a jumping standpoint for the final two runs. So let's take a look at this Definitely initiating way soon. Maybe we need to see it later Initiating before the first third line that one was not bad in that section. That was a little bobble there Way wide there a little bit of a tire drop there. All right, so Definitely can take the beginning part of this run from This one. So now let's take a look at the second run So I can say make sure you guys follow me on all social media on the description box below Sights and sound of this R32. That was much better on the wall So overall, I think a successful practice session definitely be doing some more tuning and some more testing and all that So make sure you follow me on social media. As always, I think as you come back watching. I'll be wherever I will see you guys Hot in the track