Anyway, thank you for coming. This is our inaugural talk of our new research ethics theory, ethics series, which I'm very excited about. I've got Kerry Moskovitz here that we've been talking restaurants with. Kerry has served as the director of writing in the discipline in the Thompson Writing program at Duke University since 2005. He holds a PhD in aerospace engineering from North Carolina State University and a master's of architecture from Virginia Tech, which I think is a fascinating background. Kerry is director of the NSF-funded text recycling project, which I have been lecturing about for the last year because it's really important for my students, so I'm very excited to have him here. His articles and essays related to writing in pedagogy and text recycling have appeared in such publications as The Chronicle of Higher Education, Science, Research Integrity, and Peer Review, Bioscience, Science and Engineering Ethics, and the Journal of College Science Teaching. So thank you for coming and welcome. I'm going to turn it over to Kerry. Sure, thank you. And thanks for all of you for your restaurant recommendations. And for those of you watching later on video, you're going to have to get those for yourself. Thank you to the NSF for making this project possible. This is actually the sixth year of what was originally a five-year grant with a one-year extension. So we've been working on this issue for a long time, and it's great to have the funding to do that, not only for myself but for colleagues, of which I want to recognize some key people here. So some of the ideas we'll be talking about today were developed in part with some of these folks. I'll just make one particular mention here of David Hansen, who's now the director of Authors Alliance. Before that, he was at Duke University Libraries and was basically our head copyright expert. So he's been on this project from the beginning, and that's been really important because the legal issues are as important as the ethical issues, and none of it is simple, which gives us plenty to do for six years, and maybe somebody else wants to do the next six. So let's start here. So what is this thing we're talking about, text recycling? Well, here's what I would say is a pretty archetypal example. So you can see the top passage here was from a publication in Science in 2010, the one below it, from the proceedings of the National Academy of Sciences in 2012. And you can see these two passages are identical except for the small stuff highlighted in yellow there. Excuse me. One thing that I also want to notice, note, and we'll be coming back and talking about this in a little while, is there are, I'm trying to remember, something like five authors on each of these papers, but the authors are not identical. And that's a pretty common situation in the world of research and certainly in STEM fields. So this is an example of recycling from one journal article to another journal article. There are reasons that people do that. People also recycle in a lot of other conditions in context as well. So for instance, you might have written a grant proposal and then take some of that stuff and put it into an article, or an IRB protocol that makes it into a poster, a dissertation to an article or to a book. And the reality is those of us who are involved in the research process routinely recycle things as a matter of just getting our work done. Some things like recycling from, let's say, a poster to an article. If we were training our grad students or postdocs, we would say, yes, do that. Why would you not do that? Waste your time and just making it different because you already wrote it up in a poster.  Quick note on terminology. When people started paying attention to this practice of reusing stuff specifically in the realm of from one published piece to another published piece, maybe 20 years ago is when really that conversation started, it quickly got the name self-plagiarism. And that name basically stuck until probably within the last eight to 10 years where we, the Committee on Publication Ethics and some other organizations, are trying to push people away from that toward the term text recycling. And the basic reason is this. Unlike plagiarism, there are lots of times when reusing your own stuff is appropriate, ethical, legal.   So people would say, self-plagiarism, it's still plagiarism, therefore you shouldn't do it. And then other places, well, it's appropriate. So what we want to do is basically help people use text recycling. And that may be inappropriate or appropriate, legal or legal, depending on the situations. So this is our definition. Turned out to be a non-trivial exercise over quite a while to come up with a workable definition. Text recycling is the reuse of textual material that might include prose, visuals, or equations in a new document where these three things are true. First, the material in the new document is either identical to that of the source or subsequently equivalent in both form and content. And here's why we have that paracethetical expression because a lot of cases what people have been told to do, and we'll talk about this more in a moment, is instead of recycling to reword it or rewrite it, make it look different. But the idea of this, say, well, because you've put in some synonyms, you've rearranged some clauses, you're not basically reusing the stuff. It's nonsensical. Clearly, you're reusing it. You're just reusing it and disguising it. Second, that material is not identified as a quotation. So if you have a sentence or a phrase or a paragraph from your own work and you put quotation marks around it or you indent it as a block quote, we don't consider it recycling anymore. It's a quotation and you would follow whatever the norms are in your discipline for that. Then last, at least one author of the new document is also an author of the prior document. So if we go back to this slide, you can see why that's necessary. How many of you are in some STEM field? Raise your hands. For those of you who are not, actually, for all of you, let me ask you this question. How many of you have ever published a journal article in any kind? Raise your hand. How many of you published as a solo author? So the thing is, in the sciences, engineering, medicine, physics, biology, very few papers are solo authored. And if you look at the work that comes out of research groups, which is the way most research is done in STEM fields, whether it's at a university or a research lab, whatever it is, private, what we find is as the group advances its work and does multiple publications, it's rare that the authors of all those publications stay exactly the same. Matter of fact, we did a kind of offshoot project from a corpus of papers that were written with NSF grants across different fields. And we found basically five papers that were written out of the same grant. And that's what we used to study recycling within those groups. We couldn't do it by author because the authorship changes. But what we found was picking a random two papers from any given research group from this corpus of like 100 different grants, 6% of them had identical authorship from one paper to another. You might have eight of the same nine people in a different statistician or one person who was there before moved to take another job, whatever it is, or a postdoc or a grad student who moved on. So this is where the definition between text recycling and some kind of like allowable plagiarism get a little weird. And we don't want people to be confused by that. So we decided basically overlap of one author on a definitional basis would be necessary because otherwise there's a completely arbitrary number like you have 50 authors on the paper and medical sciences on developing a vaccine. And the next paper has 42 in which 30 overlap. How would you decide whether or not it's the same author or not? So if we're looking for exactly the same authors, that would never apply. And anything we develop would have no value basically. So that's why we decided, definitionally, if there's at least an overlap of one author, and then we can decide what's ethical or appropriate once you know that at least you have that overlap, which would be different if you had no overlap and then it's just somebody else's material. So let's talk a little about ethics and practicalities here. So if you just went looking randomly on the internet for advice, which people do, and actually that's one of the main reasons that we started this project was there was no place that people could go for any kind of authoritative guidance. Everything was random people's opinions about something they thought or believed or somebody told them. So if you just go looking, you find things like this. Recycling is good for trash but unacceptable for scientific literature, says an editorial in the Journal of American Nurse Practitioners, although that journal is a member of the Committee on Publication Ethics. They have guidelines for text recycling that say this. Some degree of text recycling in the background or introduction section of the article may be unavoidable. Duplication of background ideas may be considered less significant or even considered desirable. For methods similarly, use of similar identical phrases where there are limited ways of describing methods is not unusual. It may actually be a value when a technique that is common to a number of papers is described. And so the reason that I showed you these two examples here, this and this, is because it's indicative of the informational problem. Even some places that say do X will lead you to someplace else or there links to say don't do X or vice versa. So it's impossible for individuals to navigate this and come up with useful guidance on their own because it's just what you find would be entirely random. So one of the key things that we realize we need to address about text recycling is why commonly recommended alternatives are not necessarily good alternatives. So what we found through our research was that oftentimes editors or mentors would say don't recycle because of the self-plagiarism problems and either thinking it's inherently wrong to do for because somebody told him it was or it just doesn't seem right or it may infringe copyrights. So do something else instead, a kind of risk aversion approach to writing. So I'm gonna talk with you just briefly about the three kind of commonly suggested alternatives. One is you don't need to say it again, summarize it and cite the original and people can go look at the original. And there are certainly times when that makes sense. If it's a detailed method and that method was described in the prior paper that you wrote, it might make perfect sense to explain it briefly in two or three sentences and say go see the paper from 2019 or whatever that was. But that's not universally a useful alternative. One reason is that editors oftentimes don't want their readers to have to go somewhere else to find the rest of that article. Especially given the fact that the original may be behind a paywall and so editors often is like, yeah we could do that but I want it here in this article and then that's not your choice as an author. So another one we see a lot as people say, well just put it in quotes, right? That's like that's the way you do. If you have some exact words from a source you put it in quotes and that's standard scholarly practice. Well, the reality is there is no such thing as standard scholarly practice. It depends on the particular community, the norms of that field, et cetera. And what we found is that the idea that you can say, just put it in quotes and be done with it, must be guidance given by people who have never actually looked to see what text recycling looks like in practice versus some theoretical idea. So here's what I mean. If you had a single paragraph or three sentences in the paper you wanted to use in another paper you could put that in quotes, right? It would not be crazy distracting although when you put something in quotation marks it draws attention to it. That's part of the nature of quoting is there's something about this language that I want you to pay particular attention to but when it's just like a description of an experimental apparatus that's not what you don't want them paying particular attention you just need those words and they're the same words in the new context. The other thing that's even more problematic is when people recycle they almost never recycle like a single contiguous block of text and that's it. Instead it looks more like this. So here's a paper from a psychology journal. You can see the methods is over there results and discussion starts there it's a short paper. The stuff that's highlighted in gray are the recycled parts, right? And so what you see is there's chunks sometimes whole sentences, sometimes a paragraph sometimes 90% of a paragraph. Oftentimes the earlier material needs to be changed for the new context because you might, for instance, use the same sampling methods to get subjects but you have a different sample. Their ages are different, the sample size is different, right? So it's not like you can just take a big chunk of text and indent it with quotations amount. You would need like 30 different sets of quotations to do this. No editor in a STEM field is gonna let you put a paper with 30 cents of quotations just to deal with the text recycling stuff, right? So it's really a non-starter option. Absolutely. Oh, so, yeah. Can I just see single words? Yeah, so this was generated with authenticate, right? So it matches things and so probably within a certain part of the paper those words matched similar enough with the area of the prior paper. I don't remember what the algorithm details are, right? But basically I left all this in there because I didn't wanna manipulate it and then try to explain what it was, right? Right, right, and that's just what the software matched from the prior paper, yeah. So the other thing that people are told to do or think they're supposed to do is recycling is somehow problematic. Just change it, just make it look different. Sometimes people do that because they think I shouldn't have the same paragraphs and two different things I wrote. It just kinda looks skanky or something like that, right? Just a little sleazy, so I should change it so nobody will notice. The other is concerns about copyright infringement. And so in our interviews that we did with editors, we heard from a number of editors who said, I'm worried that if we keep a paragraph or two that's identical to the prior paper, we'll be infringing copyright and then we have to worry about lawsuits, okay? I'm gonna get to the legal stuff in a minute. But basically rewording doesn't actually deal with the copyright problems. That is in other words, I could take a book by let's say Philip Roth and rearrange some sentences and change some synonyms. It's still fundamental of the same thing. I have not done anything to avoid infringing copyright if I would have infringed it. So that's basically people who think they know something about the law giving guidance to people about how to get around this problem and none of it is actually true. So here's a quote from a managing editor in a medical journal who says, I've been authenticating, do you all know what authenticate is? It's the kind of dominant plagiarism detection software used in kind of academia and particularly in the sciences. So most major journals now use authenticate to have a or cross check this same company to check for plagiarism. I've been authenticating all revised paper for several years now and I'm continually frustrated by self-plagiarism. You'd think that researcher authors with MDs and PhDs would be bright enough to know how to reword. So just gives you the sense that some people see this and say it's easy, just come up with some synonyms and rearrange things and the problem goes away. Well, the problem doesn't go away, creates new problems, but compare that to this astrophysicist who said, I just spent two tedious hours trying to reword the most boring chunks of my paper because I got pulled up on self-plagiarism. So this pulled up, that's what this person is doing. This editor ran the paper through authenticate, it says these paragraphs are identical, you need to change them, reword them. So that's how this person is now using his or her time. So not only does rewording it not really accomplish any net good ethically or legally, it also requires people then to spend time doing something which is unproductive of their time and introduces other ethical problems. For instance, in most science fields, the dominant language of practice is in English. Not everything's published in the sciences in English but most of the high level, highest ranked journals tend to be in English and in a lot of places where English is not the dominant language, researchers are expected to publish in English language journals in order to get promoted or advanced or tenure or even get a degree. So there's pressure for people to publish in English. Now you have people who already are undertaking what I think is an amazing thing of writing scientific work in a language which is not the language that they grew up speaking, that's hard enough, I couldn't do that. And now you're telling them, come up with a different way of saying the thing that you spent so much time saying that's gonna be equivalent, right? And can you imagine like if English is not a language that you're already fluent in trying to figure out, like are these words identical or not, right? Rearranging clauses, right? The odds of that writing getting worse are probably greater than it getting better and probably making it problematic. And the other thing is then you have people, the most important readers who were following this line of research then they have to figure out is this part of the methods here, is that identical to what they did before or is it different now, right?  So yes, hold on a second, you should probably be speaking into this. So that's something that's come up in my classes quite a bit with my students, particularly the more senior students who feel it's disingenuous to rewrite methods that are the same because that's misleading to the reader. And that, as you said, creates its own ethical problem. So I'm curious, what are our best practices there? Yeah, so we're gonna get there in a second. But I think that underlying problem, the reality there is something that if anybody stops and thinks about it, like rewording things just to make it different. What's the ethical goal? What's the, and sometimes people think there's a legal objective which they have wrong usually. Excuse me. And so here's what this looks like in practice. When people feel they need to change it just to change it. So here are three passages. The first two are from New England Journal of Medicine, 2011, 2012, this is from Plas Medicine. These were papers done in a sequence developing a malaria vaccine. They're all from the same partnership group. And so actually if you go look at one of these papers, there's no actually individual authors listed on the front of the paper. It's the partnership.  So you can see there is something that needed to be done here, right? Some work that needed to be done. They had to explain these things. Why we might ask would you put during 12 months of follow-up at the beginning of this sentence here and at the end of this sentence here, right? It can't be that that was a decision made to say oh, we did it this way before but now that we look at it again it would be better to put it at the end, right? You can see that basically you have phrases, sentences, rearranged synonyms substituted in, right? Here we have vaccine efficacy, here we have VE. Here we have 18 months of follow-up with months written MO versus months this way, et cetera. And it even gets to the point where they both have this sentence. Clinical malaria was defined as an illness accompanied by P-faceparam, asexual parasitemia and then the sentence in these three different papers ends in these three different ways. One's uses a greater than sign, one says at a density of more than and one says of more than. One uses the units of per cubic millimetres written this way, one this way and this one microliters which is the volumetric equivalent, right? I actually tried to interview, I couldn't get people from this to sit down and talk with me probably just that we're busy doing more important things like trying to get a vaccine for malaria. But it would be really interesting to know like how did this come about? But my guess having talked with a lot of people is it got flagged by authenticate or somebody told them you shouldn't just reuse the exact same thing. So instead of spending the time working on that vaccine, they're spending the time playing these word games. Yes. A lot of those things, oh. Right. I know that's true for the clause in the end. Thank you, thank you. And that certainly is fair that there's some differences in journal for that. Probably not where that clause goes. Right, yeah, right. That might be, right. Yeah, okay, fair enough. Okay, so we're gonna switch now and talk a little bit about terminology. So this is basically the state of affairs when we started studying this. Here are three, sorry, four terms that are commonly used in guidelines, contracts, research ethics, instructional materials, et cetera, around the general area of reusing one's own textual materials. So if you went to the Council of Scientific Editors that has a white paper on research ethics, you would find this. Plagiarism generally involves blah, blah, blah, jump down to the end. If you use your own stuff, it's sometimes called self-plagiarism or duplicate publication, right? So Council of Scientific Editors uses these two terms as synonyms. If we go to, oops, sorry, the Committee on Publication Ethics, COPE, they say text recycling, also known as self-plagiarism. So these two terms are synonyms for them. They talk about that. And then they say a separate issue, not to be confused with text recycling, is redundant or duplicate publication, right? So you can see what's happening here is like, we use these terms to be synonyms. We use these terms to be distinct concepts. They're defining them in their own way without any reference to one another, even though, for instance, CSE is a member of COPE. Some of the people who are on COPE are also members of CSE, right? But nobody's looking at basically these weird language things. If we go to journals, we might see in Springer, for instance, that we would find redundant publication is the umbrella term for all reuse. Self-plagiarism is a subset of that. Text recycling is a subset of self-plagiarism. Or for Taylor and Francis, text recycling, self-plagiarism are synonyms. Within that is redundant or duplicate publication with the same thing, right? So that means that if you're trying to understand even like what the guidelines are for this particular organization or this particular journal that lists their ethical guidelines, that you may, when you sign a contract, have to attest that you are read or following. It's like, well, what do they mean by that term? Because that may mean something very different than what COPE's guidelines say, for instance. So we spent a fair amount of time grappling with this terminology issue and trying to come up with a set of terms that would be kind of suitably mutually exclusive and would align with the general ethical and legal issues, hoping to at least give people some language to use, but also give us some language to use. Because one of the things that we did after this was to develop things like a model text recycling policy, best practices and things like that. You need terms to be able to deal with those things. So I'm gonna walk you through our taxonomy. If you wanna read about the development of it, you can look at that. Oh, and just a quick note here. All of the documents produced by the text recycling research project are available free on our website, as are all of the publications that we've written. You can get the full text versions directly from our website. Also, worth a note that we have an advisory board of a dozen people, and they are from across the spectrum. So we have people who are like the former chair of COPE, was chair at the time, people who are head of research ethics for like Springer Nature, Taylor and Francis, MIT Press, Harvard Medical School. So basically we got people who knew the for-profit publishing, the non-publishing world, the research ethics world to give us feedback on all the documents we developed that we would go back, revise, bring to them, and they've gone through multiple iterations. Not to say then they're perfect, nothing is, but we worked really hard to try to make sure that when we came up with guidance or policies, that they were gonna be generally acceptable by the general mass of people, at least across the STEM and worlds. So by developmental recycling, we mean recycling material from unpublished documents produced as part of the research and writing process. So you write a grant proposal, you have a description of prior work in the grant, you take some of those paragraphs, you put it in a new work, that would be developmental recycling. Or you did a poster, you take the stuff from the poster, you put it in an article. Generative recycling is something like with that science to PNAS example I show you. There the difference is the new work is intellectually distinct from the former work. So the way we think of it would be you go to the editor and you say, here's our prior paper, here's our new paper. They share some passages in common, but the new one is worthy of publication even though the old one exists and assumed that the editor would say yes, that's an intellectually distinct thing. Okay, so we call that generative recycling. Adaptive publication is taking either the entirety or the heart of the work of its content and text and reusing it either in a different genre or in a different language. So the idea here is you're saying, okay, we wrote this article and now we're republishing it in a collection or part of it on a blog or it was originally published in French and now we're publishing it in English, right? So there's a change in readership, language, genre, but the heart of the material is still the same and then duplicate publication is basically it's the same thing possibly with minor changes made to disguise it, you're just trying to squeeze another publication out of something that is not different. So I'm gonna walk you through the thinking about this here. So we start here and we say, is the source of the material published, right? Where you're recycling it from? If not, it's developmental, it's usually ethical, it's usually legal because when you write something, you automatically own copyright to it. So if you haven't transferred rights to somebody else, you own them with the one exception being if it was done as work for hire, which if you work for instance at a corporation, some universities actually have those contracts that says basically anything that you write while you're working for us, we own. So if that was the case, you would technically have to get permission from them because they are the rights holders. So if the source material is published, then we can ask, are you recycling the central stuff, the main stuff or not? If not, then we call it generative recycling. Is it ethical? It depends. How much material? Are you doing it in a way that's being transparent with the editors and the readers? Are you recycling some background material or are you recycling results? Is it legal? It depends. Is it, will it infringe copyright of the country in which that reuse is taking place? Copyright laws vary from country to country. It also depends on the contracts and I'll talk about that in a moment that when you sign a publishing contract, usually there's some implications for what you can reuse. Yes, for the folks back home. Yeah, sorry, so my question is about the way that you can apply for different parts, for example, for a paper. So it is not the same recycling from a method section that recycling for, for example, the main idea of the results. So that is my point because sometimes you have two papers and you are doing exactly the same, following exactly the same methods. So how can I distinguish it there between recycling or not my methods and the ideas are new but not the methods? Right, so that's a problem that's increasingly recognized, right? Clearly since the beginning of like modern scientific writing, right? If we went back 400 years ago, 500 years ago it would be different, right? Like when Galileo wrote something he did not look at the prior paper and then say, well, I'm doing this part exactly the same, right? They were writing essays basically. But in modern scientific writing people have certainly been recycling material for generations. Nobody paid attention to it until authenticate, right? Once we got plagiarism detection software then these editors are getting something that says there's a match here. And then it's like, okay, ring the bell we have to do something, right? It's like, oh, it's the same people we'll call it self-plagiarism but there was no way for them to really guide us to think through it. So what I'll tell you for instance and this is what we're trying to do. So for this project is to bring some sanity and consistency of expectations. So for instance, the journal Anesthesiology which is one of the top journals in anesthesiology a year and a half or so ago because of the editor of that journal knew about our work and was following our work revised their author guidelines to say you can recycle whatever you need in the methods, right? That's like call that and realize like this is dumb, we don't want people just changing this just to change it and people need that information. Okay, adaptive publication. So translations, putting a piece in a blog or something like that that's still the same heart of it. Is it ethical? It depends. Is it legal? It depends. So ethically, it's really a matter of transparency with the editor and with readers, right? So if it's been published before the editor should know that it's been published before, right and readers should know that's not the original publication. Legally, if you're translating a work you're basically taking the entire thing, right? The fact that the language is different does not mean that you can just reuse that material. That still holds to rights, right? Otherwise anybody can just take a book by anybody else and publish another language and not have to pay rights for it. So you would need to actually get permission from the prior publisher in order to publish a translation legally. And then finally duplicate publication. It's rarely ethical, it's rarely legal. Probably the only place that I know of where that happens is occasionally something will be published identically in multiple journals. We had that actually when we released our model text recycling policy recently it was published jointly by the Council of Science Editors Journal and it's European equivalent, right? But it says in both there's journals that this is being published in both those places. I'm gonna skip through that just time-wise here. So let's talk just briefly about legal issues. So copyright laws are different by country. There are some overlap and some consistency through some international conventions but they're not identical. The US in particular has something called fair use. Somebody you probably heard about that. For fair use there's a four-points test basically that's used that has to do with is there market harm? Is the right shoulder of the original losing money because of it? How much overlap and is the material recycling the heart of the work or not, et cetera? So my colleague David Hansen and I did an analysis of recycling in US copyright law and what we wanted to know was when people recycle, right, we're not worried about the situations where they're like trying to fool somebody into a duplicate publication, right? That's just basically cheating. It's gonna be illegal. It's unethical. That's easy, right? But what about like the PNS paper or your example? We're like, okay, we're reusing a big chunk of methods in our new paper. Does that violate the copyright laws in this country or not? And what we found was it does not that the kind of standard ways that researchers are likely to recycle from one article to another would be considered a fair use by the four tests. And so what we did was try to think of what would be the largest amount that most people would ever likely do? And we said, okay, imagine that in a paper you recycled half of your methods or half of the background section and that was what we used for our benchmark test. And that's where our analysis shows if you're interested in it, you can go to our website, see our white paper on recycling in U.S. The other issue is contract law. So contracts oftentimes explicitly or implicitly bear on text recycling.  Or I think for the American Chemical Society it's 500 words and figures your tables. Others say you can recycle whatever you want but not between articles. Don't ask me why. Others like Elseviers has actually a pretty generous one that says like you can recycle half of your stuff to do kind of whatever you want with it. As long as you're not recycling it into something that's explicitly for profit. So you put in another academic article, we're not making any money on that. Okay, so you should know what's in those contracts. We're working on the legal end and we actually are in the process of revising right now an opinion piece called Legalized Text Recycling for the Journal Learned Publishing where we're making the argument that it doesn't actually cause market harm. The kind of recycling we're talking about you recycle a few paragraphs of methods. Journals make their money from subscriptions not from selling individual articles and even if they did, anybody who's interested in that first article has probably read it by the time the second one comes out and even if they didn't there's just a good chance that they would draw attention to it rather than it's not competing with it. And it's been going on forever. We also know that because text recycling is so common any publisher that would likely bring an infringement lawsuit would have hundreds of cases in their own publication that people could then sue them for. No one's gonna sue over this. So the concern over legal risk for like you need to change these sentences in the method section for copyright infringement is pretty much nonexistent. It's people who are well intended but misinformed who think that they're gonna stay out of trouble by having people rewrite stuff. But what we're hoping to do is get publishers to put statements in their contracts that say you can recycle what you need to recycle as long as you're following the ethical guidelines. That is take it out of the ambiguity of legal stuff that most people don't understand and say what kind of recycling you're doing are you doing in a way that's transparent and fair and open and honest and if you are let's not worry about the legal stuff. So we'll see. Okay, so best practices. So here's a snapshot of our guidance. So first of all we want people to understand that text recycling, a neutral term, it may be ethical or unethical or desirable or not or legal or not, it depends on the situation. How do you do it ethically? Author should recycle text where consistency of language is needed for accurate communication. So we've words met these things to death and gone through advisory board and reworked them and reworked them. And I and my two colleagues who developed this decided we needed to protect authors who from basically well intended but not well educated editors that they could have something to point to and say, look this stuff and the methods, it's the same here. We need it to be the same language for clarity and put that in this language so they can say we were told that we should do that. Now, there are other situations where it may not be necessary for communication but for practicality for not just wasting your time. So authors may recycle text as long as it's accurate and appropriate for the new work. That's important because one of the reasons that people would say oh we don't want people recycling is they think, I don't know if there's any evidence for this, you take this description from a prior paper, you put it in your new paper but actually it's not quite accurate for the new paper. I know from my wife who's a family practice doc that this is a big problem in medical notes that people will say oh we're just copying the stuff from the prior note into the next note but things have changed, right? So we don't want that happening and of course that it doesn't infringe copyright or violate publisher policies. So basically if it's ethical and it's legal and it's appropriate, you should be able to do it. Authors should be careful not to recycle text in ways that might mislead readers or editors about the novelty of the new work. So I think that's probably obvious what it means. The other thing though that's important is how you represent it on your CV, right? If it's a translation, it should be clear to the people who are reviewing you, promoting you potentially, et cetera, that this is not a distinct another work, it's just a translation. Or this piece is largely based on this other thing that I did, it's just been changed some to make it accessible to a different audience. So, okay, the legal stuff. So for most unpublished work, authors hold copyright, you can recycle from there without restriction, again assuming it's not work for hire. Most publishers require authors to transfer copyright to the publisher. This isn't universal, in my experience it's still probably 95% true for most of us in most of our fields, right? Not true for the PLOS journals, for instance. Authors' rights to recycle from their own published works are then limited by copyright laws which differ by country. That's a drag and that's complicated, okay? Here's a couple things that I think are important. One is your contract may actually say you're allowed to recycle some stuff. Go see what's in your contract and if it says you can recycle up to 500 words, you only need to recycle 400 words, you're legally fine. You still need to be transparent with the editors and your readers but you're legally fine, okay? The other thing and this is what's kind of a surprise to us to realize, wait a minute, there's an easy way around this issue is if the editors or the authors are concerned that the amount or kind of material that they're recycling may infringe copyright or be a problem for contracts, just get permission. You all know how to do it, it's what you do if you want to reuse a figure, for instance, from some prior work, right? So we already have a protocol for this. So rather than editors telling authors you need to rewrite that methods or that part of the background to disguise it so authenticate doesn't flag it, so we don't get sued, no. Write it the way that needs to be written to be clear and if you need to get permission, just get permission to do it. So transparency is the key. Be transparent with editors by letting them know when you submit the piece that some of that material has been recycled from prior works and give them the citations of the prior work.  And you also don't want it to be a situation where something is recycled, they didn't catch it, it goes in, now they have a fit about it and now you have to have conversations about possible retractions or stuff like that. And those things have happened. Okay, and then with readers, be transparent with readers by including some notice that says some of this stuff has been recycled for some previous work, right? If you're transparent with your editors and you're transparent with your readers, you don't have to worry about having been unethical. You've addressed the potential ethical issues, right? You need to also address the legal issues, but when you disguise it or ignore it is when you may run into problems. So I'm gonna share with you just some examples of how people have made this kind of disclosure to be transparent with readers recently. So here's a one piece from Science Advances. You can see in the blue highlighted place here. While the Shishop project is constantly changing and evolving, many of our procedures and methods become fairly standardized following the best practices for text recycling. They've nicely referred to our work and greater transparency, we acknowledge much of the section we use as texts that have been published in previous studies, right? Nobody's being fooled here, nobody's being tricked. We're doing the thing that we've always been doing. We're just gonna tell people that's what we're doing, so we'll have to worry about it. Here's another example similar from the supplement. I'll just let you glance through that. And this is from a BMC health publication about bariatric surgery. We previously published a study from the overall project, information needs of patients undergoing bariatric surgery, and a previously published study interviews were conducted with bariatric surgeons. The introduction of the present paper is based on the introduction of the previously published study. Because of the overlapping methods use, for example, recruitment, we adapted the methods to use previously published study following the guidance about the Text Recycling Research Project, right? So basically what they've done is like, we're just gonna put a note in the article telling people we've done this. When we were first developing our model text recycling policy, I thought, and I think we thought, we were gonna make a specific recommendation for how this should be done in the journal to try to make that easy for everyone. It's like, just do it like this. And after having the conversation with our advisory board, we learned that's not gonna work, because journals have different kind of infrastructure. Some of them, like you can put another section called text recycling or whatever in there, some you can't. Some of them are gonna want it in a footnote, so it's like, we don't need to micromanage that, leave it to the specific editors or publishers to figure out what the mechanism should be, get editors and authors to agree that this is something that would be valuable to do. Now, my guess is, in many of the cases in the kind of recycling we're likely to do in our work, people would say, I don't care, you recycled that method, of course you did, I do the same thing, but due to authenticate, this stuff is now getting flagged and being brought to editor attention, and so now it's becoming a deal, right? And so, this is at least ways that we can say, everybody calm down, don't worry about it, you can do what you need to do and make your writing good and not spend your time coming up with synonyms and rearranging clauses, just do it transparently for readers and editors and things should generally be fine. Okay, quick note about authorship. So as I mentioned earlier, one of the challenges within STEM fields and medical fields is that authors usually overlap from one paper to another out of a group and are usually not identical. So, if you had three authors on your previous paper and one new author and one different author, you could reasonably go to the author who's not an author of the new paper and ask for permission, say, hey, we wanna recycle some of this stuff. I can't imagine anybody saying no, if they're disgruntled that way, you wouldn't do that before you went and asked them. If your authorship team has 100 people or in some fields in physics like particle physics, I think the current record for number of authors on the paper is around 5,000 for a particle physics paper, right? You can't say, we've got this piece of equipment, we've been developing and testing for 20 years. Here's our description of it, but we could only get permission from 3,000 of the people, so we're not gonna recycle it, right? That would be nonsensical. And those descriptions actually go through, like they have boards, groups of people within those authorship groups who's like, we're gonna figure out the language for this and that's the language we're gonna use, right? You have to recognize they need to reuse that exact same language. And so we say, if it's reasonable to get permission from the other authors who aren't represented, do it, but at least get permission from the lead author, the PI, so it's not just being done kind of out of sight. That's that. Quick note here, these are documents that are now available on our website, best practices for researchers, so that's kind of what I just walked you through. Then we have two documents that take you more into the like, what are the issues, why did those issues come up, the terminology and things like that. One for researchers, one for editors, our white paper on US copyright law and fair use and then most recently our model text recycling policy. All right, that takes us to two. Some of you may need to go to your two o'clock things now for the rest of you if you wanna stay for a few minutes for questions, I'm happy to do that. I have one question for you. This might be getting a little into the nitty gritty but I often get this one from my students. So if you go to an international or national meeting and you have a poster that has been accepted by that meeting, it does that run you into copyright? Right, so there's two issues there. One is a copyright issue and one is an ethical guidelines issue, right? The copyright thing, if it hasn't been published, right, and so we can talk about that for a second, then you wouldn't have a copyright problem. Where you get into that confusion is for instance, in many fields, they have conference proceedings and in some fields, like in engineering, the conference proceeding is a kind of pseudo journal article but not the final destination and those like the professional societies will explicitly say, hey, we invite you just to revise your conference proceedings article into a journal article. It needs to be at least 25% different or something like that. In other fields like computer science, the conference proceedings is, that's what the final thing is. So there's nowhere to go from it, right? So recycling from one of those to another, you have to know the norms within the discipline to know what's gonna be ethically acceptable and then the question is like, were the conference proceedings, were they published or not? And that gets into kind of murky stuff which is a lot of the murky law around this which is why we would like the publishers to say you can recycle what you want in the future, right? As long as you're from our stuff or into our journal, as long as you're being ethical about it and not making people try to figure out things they can't reasonably figure out. But the other thing I wanna note is when we did our interviews with editors, we asked them about like originality. And so pretty much every journal will say the new publications need to be original works, right? We're not publishing something that's already been published. And then we would ask them, what do you mean by original? Some of them would say, it needs to be making a new intellectual contribution. And if some of the text overlaps with the previous text, that's fine, but it needs to be an intellectually distinct thing.  You can't reuse prior paragraphs because that's not original. And for instance, if it was on a blog, it's out there, it's published enough, we won't accept it, right? Now, what are those based on? Hunches, largely, right? Personal beliefs about what counts as a publication or not. Should it count of the fact that it was on your blog as a previous publication? And of course you get into preprints. And so when we were setting up our guidelines and our policies, we realized that there were a couple of things for which we cannot make blanket statements. So one was, what are you allowed to do with preprints? And we say, see the publishers, rules for that, right? Some publishers are fine with preprints. Some will not publish something if it's out in a preprint. And some now will require you to have it in a preprint before you actually submit it, right? So talk about crazy land. So that's one thing. Another one is, for instance, with dissertations and articles. So we learned, for instance, like in engineering where I did my PhD, my dissertation was like a lot of them, it was the articles that I published put into a kind of tied together into a narrative whole, right? Psychology tends to work differently. They tend to do the reverse. They'll take their dissertation and split it into subsequent articles more like someone in the humanities would generate a book from their dissertation, right? So even those norms were different by discipline. Now, do we have time for one more question? There is? All right. Thank you all. Thank you so much, Carrie. Thank you.


Hello everyone, so thanks for coming in for your time and today we are going to talk about Service Fabric that you of course know about SAP Cloud Platform that we have released and we have gone public a few weeks back. We are on Amazon now and by the end of this year we will also be on Azure and also will be on GCP. So these are the places you will find SAP Cloud Platform, go have your own trial there, experience what SAP is doing in this. Our cloud platform is completely based on Cloud Foundry. So get yourself a trial, try some Docker instances and see how it works. My name is Krishanum Kishwaz. I'm one of the engineering manager at SAP and I'm Shashank. I work as an architect with the team here. So today our topic will be to have a look at Service Fabric and how do we manage basically enterprise-grade services within SAP for the Cloud Foundry applications basically. So moving on, some motivation. So what is kind of Service Fabric? I think every enterprise-grade Cloud Foundry application. So if you are building a Cloud Foundry application you invariably probably have used one of the other services, I mean backing services, right? So maybe a Postgres, maybe a MongoDB, maybe a Rabbit or maybe a Redis or something like that. So every application needs one or the other kind of services, stateful, stateless. Now the point is that how do you provision, manage and operate these services? Just think about a developer comes in and he wants to quickly kind of test his application, try his application, code his application around and he needs one of the Postgres service immediately so that he can go on, you know, rather than going back to IT asking for a full-fledged deployment of a Postgres like 5TB and that will take time, right? So it's the power that now goes in the hand of the developer, yourself. You can start as a developer your own dockerized Postgres service and you start coding your application, right? So that's where the experience starts for SAP Cloud Platform. And then when the developer is kind of ready, he sees that his application is working fine and then he can go about creating a more robust Postgres or a MongoDB that is like more production grade, having all production level qualities like high availability, failover and stuff like that, right? So that's the cycle. You start as a developer, you immediately start off with a service that you need and we are all talking about service here. The question that you need to ask in your organization is like how fast can I provision such a service, right? How easy it is to provision such a service? I mean, we are not, we are talking about cloud. We are not in the traditional IT, right? Where you talk to the IT, you tell that I need to answer service and this is my specification. My department will be using this, that, some of the networks and IPs I need. No, that days are gone. Now it's in your hand. So you pull up a service, connect your application to that service and start working. And here what we are trying with service fabric is making that pin point easier for you that if you are a cloud foundry application developer, just quickly can pull up your own instance and can start working on that. Manageability, how efficiently can you update, upgrade, monitor? Now you have your own instance running, right? Let's say a Postgres instance running. It's like kind of five VMs with all high availability and failover mechanism all in build. Quickly you'll realize that managing this system becomes a nightmare. And this is just one system. And what if you have hundreds of such systems? So in your company, there could be many departments and all of them are using their own Mongo Postgres. Rabbit and they are like all three to five node virtual machines running. And question is, how do you manage them? How do you update them? How does the operators operate them, right? If there is a stem cell update, how do you do that? So quickly you run into this kind of problems and then you start thinking, maybe there is some tool that could help me here doing this in an automated fashion, right? Service Fabric is not alone. So Service Fabric is all about provisioning, managing, and operating service, I said. But without the services, Service Fabric is nothing, right? So you need high quality services as well. So Postgres, MongoDB, these services should have their own service qualities in build that we talked about. Resilience, failover. Scale, all of this, the service should provide. And they are the Bosch releases that we have. So Service Fabric understands any kind of Bosch release. You give them a Bosch release, it'll deploy for you, right? And then all of a sudden you have a full slated service running for your organization. Experience we talked about, from development to production, right? And then multi-cloud, that's one thing that is important. So these services have certain qualities or the way they are, they basically get spawned. It has a touch point with the underlying IS. Now, the way it gets spawned on AWS doesn't work the same way on Azure. And now Service Fabric takes care of this, right? So all that you have and need to have is Service Fabric and allow it to deploy services on multiple clouds the way you like it. Yeah, if it is on GCP, it'll spend the same Postgres cluster on GCP. It'll do the same for Azure, you don't have to care for. You just go on to the cloud or pick your cloud. And you are multi-cloud that way with Service Fabric. So welcome to Service Fabric, and it's an open source contribution from SAP. You start using it, we have our next repo update coming up in August. And would like to receive your feedback also on that. With that, moving on. So Service Fabric is Service Factory. So that's a fabric is with a K, it's called Service Factory, basically. So Service Factory, it's a kind of a manufacturing, service manufacturing machine, right? It's kind of, it's joining services for you. So creating service instances for you, right? That the application can connect and can consume the services. So it provisions, it manages and it operates services instances at scale for cloud foundry applications in an automated and managed way. Which means to say, when your application is up and running, you also need to know how the application, how the service is doing. You know, what is the CPU usage at this point in time? Is there anything alarming? Is the memory usage going fine? Is your Postgres running out of disk space, right? And then you can monitor all of this. And if it goes beyond certain thresholds, you can raise alerts. That your operators come to know that something bad has happened to the system. Or at least gonna happen to the system. And then you can take a call accordingly. You know, if the disk space is kind of, you're going out of disk space, the operator can move you to the next plan. So maybe 800 GB Postgres to two terabytes for Postgres, right? So you can take actions. So you need all of this. And that enables seamless application development and deployment experience for an organization using services. So from a single node Docker service instance for development, to multi-node highly available clustered setup for production environment. Service fabric is there. So integrated monitoring, alerting and logging, including audit logging or course, which is very important, who is using your database, what actions he is taking on your database. It needs to be logged for audit reasons. And that is built in. Backup and restored. So you have all of these instances now, all around in your organization. Some Postgres is running, some Mongo is running. How do you take backup of all these instances? Yeah, your department, some of your business department, asked you to give them a Mongo, you gave it. But now what if suddenly some bad thing happens? How do you bring the system back? So service fabric takes backup behind the scene and in an incremental way, right? So it's a delta backup. The snapshot it takes, it keeps taking. So you can go back to any point in time and restore your system if something bad happens to your system. Update and upgrade, talked about it, right? The system update and upgrade, it's a continuous process. The security patch has to be applied. If a new stem cell update that has come in that needs to be applied, service fabric can do that on all the instances. And of course the security is very important. So that's what it's service fabric. Any question at this point in time on what service fabric is capable of? So this is what it does, it does, it manages services. It provisions, not only provisions, it manages and operates all the services. So this is how it looks like, yeah?  You basically tell service fabric that, hey, give me a Docker VM, right?  And there are certain, then service fabric basically talks to Swarm, the Swarm manager. And then Swarm then puts this service that you have asked for into one of the Docker VMs, right? So a lot of different types of Docker containers reside inside each VM, each Docker VM. This Docker VMs then has a lot of containers running all different kinds of services. And one of your development services is also running there. So connect to it, you build your prototype or develop your application the way you want. The other kind of service when you are done with your development, you then tell service fabric, hey, fabric, now give me a production grade, post-chris. And then service fabric talks to Bosch. It tells Bosch, can you just pin a cluster of post-chris for me? And that post-chris is basically, let's say 5 to 7. It depends on your Bosch release. It could be 5 to 7 VMs together, and which is highly available. And yeah, and with this particular Bosch release, with this virtual machines, we also inject an agent inside. So fabric and the agent can then talk to each other. Fabric can ask the agent, how are you doing? Is it all good with you? Agent can also take certain metrics and evens out of the virtual machine and can send it to the central monitoring system. We have Grafana for this, right? So it goes to Rimaan and then Rimaan stores it into influx and from there, Grafana pulls up and shows, we will see that in some time. How does the monitoring look like? But that's how the communication takes place, right? So you have Broker, a service fabric broker, which talks to Swarm for Docker services, which talks to Bosch for a more production-grade services. And it's a matter of seconds or a minute when your service is up and running, the cluster is up and running, right? So you have a service now, you connect to it. And then let's, so this is the big picture. And there you see that IES blob store. That is basically the place where all your snapshots or your backups get stored, right? The service fabric keeps taking backup of your volume, right? The Postgres data, whatever you have on the volume, on the disk has to be preserved. And this backup is stored somewhere. So on Amazon, we are storing it on S3. On OpenStack, we are storing it in Swift, right? That's how it is. So that's why that particular piece. So this is a very high-level picture. Let's get a little bit into the details of what it is doing and how is it doing. So Shashank, maybe take us through that. Thanks for the great introduction of service fabric. I think I guess you guys are finding it interesting. So let's go over the brief architecture, what it means, in terms of components, first of all. So I think everyone here is aware of what Cloud Controller is and what the CF APIs are primarily. So the reason we have service fabric built over the Cloud Controller or the service broker V2 APIs is primarily to have the lifecycle managed by Cloud Controller. So there's nothing much difference in terms of CF managing the instances here, primarily. So if you look at the call trace, it starts from the Cloud Foundry site on the extreme left. If you see, there's a Cloud Controller. And then we have the CF APIs, which invoke the broker. Broker is nothing but the service fabric itself. It's a Node.js process which is running, deployed as a Bosch release. And this service fabric broker can then talk to two systems primarily. It can talk to Bosch via the HTTP APIs to the Bosch director or it can talk to Docker swarm again over HTTP. So as Krish explained, primarily there are two scenarios for Docker swarm. We are kind of looking into development kind of instances, single node Docker instances. And via Bosch, it is more productive usage. Like you get a complete cluster with HAA and all kinds of service qualities. So what you see here is from the broker, we trigger a lifecycle operation on Bosch. We deploy at the manifest. And then it creates instances of Postgres, MongoDB, Redis, which are cluster in themselves deployed on different virtual machines. All these systems can then talk to infrastructure components like Grafana, Elk. Grafana is where it is pushing all its monitoring information, like what kind of events are happening, what is the health, how many connections, let's say for Postgres are active at certain point in time. And then we also log into the audit log or Elk stack. Primarily the lifecycle, like when the process was started, if the process is shut down, all kinds of DDL or DML statements if you want to configure there. Then you see on the service fabric component itself, there's a monitoring agent, which is also capturing the health of service fabric process itself. Like how the service fabric, is it too many connections on the service fabric node? Do we need to scale this? So all these kind of data is also pushed to Grafana by the service fabric monitoring agent. So compared to the previous slide, this is a more detailed view on how the components sit into the infrastructure. So if you see on the top, you see the Cloud Foundry CLI, and then you have the IS layer where your elastic load balancers in case of AWS are sitting. And then you have all kinds of object store volumes, object store volumes, and then the compute part of it. On the left side, again, the... Sorry. Let's go back. On the left side, again, it's the Cloud Controller and the Diego runtime. Primarily it's from the app's perspective and the CF runtime primarily, which again talks to the broker over the standard interfaces. And broker internally either pushes Bosch deployment to the Bosch director or interfaces with some for Docker containers. So a little bit talking more details about how Docker is working here. So you see on the extreme down on the Docker bracket where you see the Docker engine, which is the Docker daemon, and then you have a storage. So we kind of wrote our own volume driver, which is abstracting the actual volume which you get from EBS or Cinder. And this is called the LBM driver, the logical volume driver. So what we do, we create a sparse file on top of the actual volume we get from Cinder or EBS and then carve out logical volumes for each container. So we save on cost. As we said, this is all for development purposes. So the idea was here to save costs rather than giving each individual container a proper volume. This also helps in quota management? Yes. So again, the idea is that you enforce quotas on the disk. So one container can only take certain resources. So if you see no Docker, primarily it enforces two kinds of quotas on the CPU and memory, but not on the actual volume or the disk storage. So this is how we enforce data container cannot exceed a certain usage of the disk itself. So on the service instance deployment, then you see there are a couple of agents apart from what we have as the main process like a Postgres instance running, you have also a Bosch agent and a service agent. So Bosch agent is something which is provided by Bosch, automatically deployed on the VM. The service agent is what we package alongside. So it's a job which is co-located, which means it is on the same VM on which your service process is running like a Postgres, Redis, or MongoDB. So what it does primarily is that it provides an interface to the service fabric broker. So I can query the agent over HTTP and check what is the status or what is the health of the particular process. Or else I can trigger certain operations on it like a backup and restore. So the way we have implemented is the service agent exposes certain capabilities. Like it can do backup, it can do restore, or it can do certain other operations. These capabilities are then queried by the broker or the Node.js or the service fabric, and then accordingly it invokes those operations on these specific nodes. So more when the broker kind of spins a cluster of a service, it also schedules certain backups, and tells that at this certain point in time interval, you keep taking backups. So we have detailed slides on that. On the same slide, back again. So if you see on the extreme left, extreme right down, you have the jump box which is our best end. But I'm really, it allows for the ops to see, get into the virtual machine. So it's like an isolation, not everyone can get into the virtual machine. It is only via the jump box where you allow entries. Good. So this is a simple sequence diagram on how a service creation is working. I try to keep it simple, but there are many complexities which are handling or which are being handled behind the scenes, like creation of security groups and all. But in principle, what it is doing from the CFCLI, you trigger a creation of an instance. The call goes to the cloud controller which invokes the service broker. So in case of Bosch, what it does primarily, it generates a manifest, a manifest which is acceptable by Bosch, which Bosch can understand. So what it does is also injects some kind of network configuration because we control how much, how many IPs for a deployment you are getting at this point in time. And then once a manifest is generation, you call Bosch director over the HTTP API and trigger the deployment. Yes. So I think you kind of touched upon the monitoring and logging. So this is specific to let's say a service instance. So what all capabilities we need from a service instance perspective to say that it has good SLAs, right? So it needs to tell its health, not just health of the VM, in terms of like the CPU, memory and disk, but it also needs to tell how the process or a specific type of a process is behaving. So we give the example of Postgres, the active connection, the wall logs or the specifics of a Postgres process or Redis as an example or Rebitm queue. Let's say how is the queue size looking? Are the queues exhausted? So all these kind of metrics can be exposed and then pushed to the Grafana tool. So you go on by the time I'll just connect to monitoring. Okay. So and then similarly we have the Elk stack where we are capturing the logs. We use RCS log daemon as the initial ingestion point from the VM perspective, where all these logs are captured into RCS log and then pushed to the Elk stack where you can look into Kibana and then there is also an integration from our side. Let's say you triggered some operation and which has failed. So that event is registered into Grafana, but from Grafana you can go to Elk and see and trace establish the traceability that what has actually happened via the logs. So this is again the backup and restore process where we said that there's an agent which is sitting on the particular VM and it is exposing the capabilities that let's take an example of Postgres. So there is a master and a slave node, but we all only want master to take the backup or do the snapshotting. So the master only exposes the capabilities that I can do the backup operation for you. So when service fabric queries that which of the nodes can do a backup, only the master reports its status back and then adequately you can invoke that operation over an HTTP call and do the snapshotting. So currently you see the snapshots what we kind of depict here. We use the infrastructure layer rather than the services specifics to do a backup like we could have done via PG dump or something, but we rely on the snapshot mechanism of the IS layer in case of OpenStack as well as AWS here. I think this is the most critical part and how do you now let's say you want to use service fabric and you have a certain set of services. So how do you onboard a service? So currently there is a defined process for us where we have a life cycle tool if you see on the left side. So we have a life cycle tool and we use certain manifest for the service fabric which internally uses two files. I'll explain what is the purpose of these two files. We call one is a EJS file and one is an ERB file. So we parse through the EJS file and evaluate the ERB file and then inject the template into the actual service fabric manifest. So what this means is that if you want to bring in your own service what you need is the upper three components. You need a Bosch release. You need to give us an EJS file and you need to give an ERB file. So ERB file is where you define your plans of the service. So let's say a database plans. This is the memory. This is the CPU you need for a specific plan. All the plans are defined in the ERB file and in the EJS file you define the manifest template what Bosch can accept. How many VMs you want? What is the job definition for your release? So all these things are captured in the EJS file. Finally, service fabric creates one configuration file out of whatever services it needs to take care of it parses through the plans and then injects the template for the specific service in the properties. So finally, when you invoke via the cloud controller it reads through service fabric, reads through that configuration file and triggers the manifest generation of the specific service. Coming back to the advantages we have via this using service fabric. So as I said that we use the complete cloud foundry programming model here. So there's nothing like we invent some APIs here. You always go via the CC APIs or the cloud controller APIs which has CF service create maybe we'll show you the demo. Second, we tried to keep this component as stateless as possible. The reason being that we can then scale it horizontally. So whatever state we need, we keep it either in the Bosch or let's say in case of Docker it's in the swarm. So we query the state rather than maintaining our state ourselves in a DB or something. Then we have done some work around the agent framework. As I mentioned, it's provides a pluggable agent framework. So what does it mean? So primarily the thinking behind is that any agent you deploy has three operations or three capabilities to do. It has to collect data from a source. It has to process data and then it has to dispatch that. So take an example of you are collecting some statistics from a VM. So we have written a health collector which is constantly checking how the VM is behaving. And then we process not all data has to be dispatched as an example to Grafana or any other monitoring stack. We process, drop certain data and then we dispatch what is needed. If there's some aggregation or something which needs to be done, then and there we do it at this level. Okay, so for the sake of time, let's take a look at some of the observability. So you have, we told that, right? There are certain systems running and you wanna know what's happening within that system. What's the load and all that. So I will try to pull up. Okay, so this is the dashboard and what it shows that on the left hand side there's a swarm manager and I'm running it from our staging landscape. So you'll see it all live basically what is happening. Swarm manager availability and then it shows the broker availability. So the broker is up and the swarm is up. That's what it says. Backup wise, the backup stats if you see it says that there are 15 backups succeeded in the last, I think one hour and the two backups fail, right? So you can now go inside and check in the Kibana system. Okay, what happened at this point in time? Because everything is logged. You can say that why these backups fail and what can you do about it? So you can do that. That's the traceability part here. That is the traceability part. Okay, so that was the backup stat. Now, this is Postgres and MongoDB, basically. Again, it's part of backup. It says that there are around 500 backups for Postgres SQL that's being taken. And for the MongoDB that's around, how much, what is the number? It's around 60. Yeah, those many backups have been taken so far. And backups are important, right? I mean, that's your last line of defense, right?  This is something that you should really be worrying about. Broker system health, it shows the memory usage in percentage and CPU usage in percentage, how's the system doing. If you see at the Docker, you know, the Docker images, you see that there are total two Docker nodes, Docker VMs, now currently existing on this particular landscape and there are around 89 containers running, right? So this is the aggregated view of how many containers you are running, how many nodes you are running there. Right. So now if you basically want to see like, you know, what are the services? If you want to go one level down, what you saw now is like an aggregation.  So one one box here, the green boxes are nothing but one one clusters. And these are all Postgres dedicated clusters which is running within inside the CPU, right? So, and you see that, you know, they are kind of, these clusters are up in good health and that gives you a good feeling. But of course you can also drill one level down. Now you can get into this cluster and see like what's happening within the cluster, right? And this shows you now on this particular cluster of Postgres, what is the disk usage? What is the memory usage? As the usage is pretty low here, but you can see that, you know, as there's a lot of vital metrics which is coming up. So the database of bulk data hit and the number of connections here conquering active DB connections on this particular database. So, you know, it gives you a lot of visibility here on from a very high level, aggregated level to drilling down into a particular instance. And of course you can set your thresholds wherein if it crosses that threshold, it'll just alert you up. Yeah, and it supports the stream processing here on the Grafana side or the Raymond side primarily where you can define the closure scripts to trigger alerts. Right, I think we are now running short of time now. But yeah, when you have this, you can of course go ahead and try this out. This is our repo and please have a look. Maybe you can just open the templates once and... Which template? Service-subject-product component. Yeah. So if you use... This is what I was talking about, the onboarding part. So this is the grand template what we have here, right? And which will pass through the NDV will open the EGS file in the ERB files for the services and show. But this is what is responsible for creating this big configuration for service fabric. So if you just open the ERB, go into the services directory and take any of let's say Postgres EGS file or ERB file, open the ERB file also and show. So this is where if you see all this metadata about your plans and other things are coming into play, right? So how do you define the container plans? How do you define the managed plans or the dedicated instance plans? So finally what fabric will do is in the manifest template, the bigger one gets parsed and then all this information is just made part of one configuration file, right? So then when someone makes a request that I want to create an instance for a specific type of service and for a specific plan, it reads through that configuration, what it means, what template it needs, what configurations it needs and then adequately generates the Bosch manifest or the Docker, it pulls the Docker image and creates one. Yeah, so the point is if you have your own service, that it's a Bosch service that you want to get deployed on your landscape, bring it in, service fabric can deploy this for you and can monitor and manage this for you. You need three files, one is ERB, EGS and then your Bosch release, that's all you need. Yeah, so our next step is to make this onboarding even more easier and we want to bring in also this out of bad Bosch deployments, which means that if you already have a Bosch deployment and you want to bring it in within the ambit of service fabric so that you get all the advantages of service fabric, you can also do that. Bosch 2.0 compatibility, we have to get their service bundles so there are multiple services if they can talk to each other. Right, yeah, so the idea here is, let's say today the model of Cloud Foundry is app to service binding, but it misses a notion of service to service binding primarily, so if you deploy a certain service and you want to consume a managed service how do you do that? So I think this is in lines of that idea here. Right, okay, so with that we come to the last slide here and try SAP Cloud Platform.  For service fabric you can go to our service fabric repo an SAP repo, service fabric just have a look and yeah and you can also know more about SAP's contribution to Cloud Foundry in that link so this will be uploaded of course you will get to have access to all these links, they're all public. A lot of things SAP is doing today for Cloud Foundry is a lot of contribution happening including contribution to the core Cloud Foundry itself, but other than that service fabric and there are many more other such projects like Abacus and all that that SAP is contributing to. So take a look and stay tuned. So our next repo update is gonna happen on 21st and then on I think we will work together to kind of build a better service fabric from here on. Thank you. Thanks for your time. Yeah. Yeah. Thank you.


No one teaches us that from early on in life, what we believe is chosen for us, it's not chosen by us, it is chosen by nature and nurture and culture. And here we are later in life, aware that so much of our lives is not what we chose, and we don't like it, hence the midlife crisis, language and season of life.


Hey guys, how you doing? This is your boy Rich from Rich TV Live and Rich Pigs Daily. And today we're gonna talk to you about the wonderful, wonderful, my number one pick for October. It hasn't disappointed. Congratulations to investors all over the world, WNDR in Canada, WONDF in America, and now also listed in Frankfurt, Germany. So our investors from all over the world can pour in and congratulations to everybody who's gone in for the win on WONDFY. Now up over 80% since we brought it to you first, pre-IPO, congratulations to investors all over the world. Now they had some big news over the last couple of days and I wanted to break it down, so let's get right into it right now. Now I must remind you that Rich TV Live is strictly for information and education purposes. Please do your due diligence, do your research and invest in the best because you deserve the best and the best is blessed. Now I also wanna remind you that you can join our Rich TV Live Trading Club at richpigsdaily.com where you too can join the chat for WONDFY, a growing chat room where members are talking about WONDFY and earning free cash and rewards by simply chatting, that's right. Whether you're a free member or a VIP member, you can win rewards at richpigsdaily.com. Just go and join the club where you can win big. Now I wanna go through some of the news, there's been a lot of news with WONDFY this week and the stock just keeps going higher day after day after day, just keeps grinding higher and higher and they announced some news that they did a fund raise of about $20 million and then followed it up the very next day with an over allotment fund raise of actually $26 million. So they actually raised $6 million more than they actually anticipated. I absolutely love the terms of this WONDFY deal, okay? When you compare it to what was happening with Mind Medicine and Mind Medicine has been a huge success for our community. Everybody got a chance to 10 to 15 X on Mind Medicine. Congratulations, Kevin O'Leary once again on making great things happen. So let's just talk about this. So Mind Medicine first bought deal was at a 20% discount to the last day closing price and had a full warrant. So WONDFYs was at a 15% discount and had a half warrant. So WONDFY got very good terms, okay? They had better terms than Mind Medicine, most likely Kevin O'Leary was involved in this deal and putting this deal together and negotiating the terms. So once again, Mind Medicine was at a 20% discount from the last closing day price. Whereas WONDFY was at a 15% discount, Mind Medicine had one full warrant and WONDFY has a half warrant. So much better terms. Obviously Mind Medicine has been a huge success for Kevin O'Leary and our community and everybody's involved. And WONDFY has also been a huge success despite the fact that it's just getting started with very favorable terms. Congratulations to all investors on WONDFY. So we're gonna go through the news right now with a fine tooth comb so you can understand what it means, but I'm really excited about it because I think there's a chance for this to be absolutely huge with WONDFY. We love WONDFY. We love Kevin O'Leary, Mr. Wonderful. Obviously he's a big fan of DeFi and WONDFY is named after Mr. Wonderful himself, Kevin O'Leary, thus the name WONDFY. So let's get right into the news right now. All right, so I'm just gonna share you my screen. Here we go. So first and foremost, what I wanna do is I wanna show you the stock. So we brought you pre IPO WONDFY and it opened up at around $1.33. That's where most of our members got in in Canada around $1.33. You can see right now it's trading up over $1.10 right now currently at $2.43. So a huge congratulations to investors. So many investors have won so big on WONDFY and the best part about WONDFY is they haven't even launched their app yet which means this is just the beginning. So you can clearly see the trend. It's been trending up and extremely bullish. You could see here in America, very similar chart, very bullish, opened up around $1 in America and is currently sitting at $1.99. So up almost 100% in America and you can clearly see here in Germany also very bullish and trending up. So all three markets look the same with a asset that has been trending up and paying investors handsomely. So congratulations to everybody who's got involved in WONDFY. The chart looks phenomenal. It looks extremely bullish and they've just raised some money. So let's talk about the money they've raised. So this was announced yesterday. WONDFY announces a $20 million bought deal private placement offering. Here it is, WONDFY Technologies, Inc. WNDR in Canada, WONDF in America, A3C166 in Frankfurt, Germany. It's pleased to announce it has entered into an agreement with Kanakor Genuity Corp and on its behalf and is applicable on behalf of a syndicate of underwriters collectively the underwriters to pursuant to which the underwriters have agreed to purchase for resale on a bought deal private placement basis and aggregate of 10,257,000 units of the company at a price of 195 per unit. For aggregate gross proceeds to the company of $20 million. In addition, the company has granted the underwriters an option, an over allotment option to purchase up to an additional 2.5 million units at a price of $1.95 per unit for a period of seven days after and including the closing date. Well, guess what happened? The very next day, here it is, which is today, bam! There's the news, WONDFY upsizes previously announced bought deal private placement. Here it is. So they took the entire 2.5 million over allotment option and raised instead of 20 million, 26,364,000 dollars. So they've been able to raise more money than they anticipated, which is extremely bullish. And the reason why the stock is absolutely on fire. Now let's break down some more here. Now there's also warrants. And I wanna break down why this is so important. Each unit shall consist of one common share of the company and one half of one common share purchase warrant of the company. Each whole warrant shall be exercisable to acquire one common share at an exercise price of $2.55 for a period of 36 months from the closing date subject to an acceleration rate exercisable by the company if at any time following the date, that is four months and one day following the closing date. The daily volume weighted average trading price of the common shares on the new exchange is greater than $4 per common share for the preceding five consecutive trading days. The company shall have the right to accelerate the expiry date of the warrants to a date that is at least 30 days following the date of a written notice to the holders thereof. The closing of the offering is expected to occur on or about October 26, 2021, otherwise known as the closing date and is subject to the completion of formal documentation and receipts of any regulatory approvals, including the approval of the exchange. And initially when they announced this, there was a dip on the stock. And then once everybody realized that that dip was a buying opportunity, they literally bought the stock up and it actually finished up yesterday. Today it went even higher when the news came out that they actually raised the entire amount, including the over allotment option. So now they have another $26 million that they're gonna be able to put in their treasury. Now, let's not forget that mind medicine has done extremely well and was a 10X for Kevin O'Leary and for our community. Well, WonderFi has already been a huge success and they've now been able to raise, check this out. They've been able to raise $26 million previously. Now another $26 million, so WonderFi now has, believe it or not, $52 million in the bank, in cash and assets and securities and cryptos. So this is a company that is doing all the right things. And when you think about what mind medicine did and why mind medicine was so successful, the reason why mind medicine was so successful was they were able to raise money. I just wanna go and look at the five day. So you can see here, there was this dip right here, yesterday after they announced this fundraise. And then once everybody realized that this was a buying opportunity, the stock went immediately back right up, right back up. As you see yesterday and continued again up today, where we're slightly in the green. So you could see that this has been extremely bullish for WonderFi, but I want you to realize that one of the reasons why mind medicine has gone up 10X for investors is they have $200 million in the bank. Kevin O'Leary believes in building a vault and having a strong treasury. Thus, you can justify a higher market cap. Brilliant. I love the fundamentals of what WonderFi is doing here. So WonderFi is following in the footsteps of mind medicine that built a $200 million vault and has gone up 10X for investors. Well, guess what? Now, WonderFi had previously raised $26 million. Now they've raised another $26 million. That's $52 million that they can put it in their treasury. And I don't think that they are done. I believe they're gonna go out and raise even more money following the same strategy that was used for mind medicine, which has had enormous phenomenal results. So I believe this is just the first ending for DeFi, decentralized finance, and WonderFi is going to be one of, if not the number one platform in the world for DeFi, decentralized finance, and a place for you to be able to buy cryptos and earn rewards. This is their website, wonder.fi. Now remember, Rich TV Live is strictly for information and education purposes. Please do your due diligence, do your research before you invest in anything that we talk about or discuss here on Rich TV Live. In saying that, I believe this is a company that has incredible potential. And I still believe that they are undervalued, underappreciated, underexposed when you think about the fact that Bitcoin is at all time highs, when you think about the fact that DeFi is just getting started, when you think about the fact that they just raised $52 million. And when they said, hey, let's try to raise 20 million and then see if we can even raise a little bit more, they raised every single possible dollar they could with the over allotment option, which is extremely bullish for the stock. Thus you see a stock trading at a very, very powerful high multiple based on the fact that it hasn't even started. Congratulations to investors all over the world on wonder.fi, introducing wonder.fi a passionate team of founders, engineers, technologists and investors working in the line mission to harness technology and breaking down the barriers of traditional finance, making it more efficient and inclusive for all. Learn about wonder.fi, go to wonder.fi and they are also backed by big digital investors and members, Kevin O'Leary at O'Leary Ventures. They're backed by members of all made of research, animal capital, shout out to Josh Richards and Argo blockchain, huge, huge, huge. And they're all about ditching the middleman. Wonder.fi is a simple, safe and smart way to take control of your personal finances. No more mediators, go-betweens or middleman. Our app is our gateway to the market's best so you can confidently acquire, earn and manage your assets your way. Now, what do you do from here? Everyone's asking me, where do we go from here? I think you need to definitely put wonder.fi on your watch list if you haven't already. If you've already sold, you're probably looking for another dip. If you're holding, you're probably waiting for more catalysts. So, love to know what you guys think. Comment on the video. What do you think about the big news? Have you bought wonder.fi? Are you thinking about wonder.fi? Did you get in that fund raise in the first $26 million all around? Did you get in this second $26 million all around? Are you planning to buy on a dip? Are you holding? Have you already taken profits? Comment on the video. Let me know what you're doing. Is your board rich from rich to be live and rich picks daily? I told you guys, we bring you the winners and we bring them to you first. I told you guys that wonder.fi was my absolute number one pick for October, 2021 and they haven't disappointed an absolute rocket. Congratulations to members all over the world but the best news is we're just getting started. Thank you guys for watching. If you're not winning, you're probably not watching. We bring you the winners like wonder.fi and we bring them to you first. Thank you for watching everybody. Keep on winning, keep on watching and have a great day.  Peace.