This thing is a Vector MZ. I picked it up at the Vintage Computer Fair over in the Computer History Museum and it's basically an S100 bus system. So this is the backplane over here. It came with two disc drives and there's a power supply over here and that's really all there is to it. So this was created by the Vector Graphic Company. You may be familiar with them from their insanely overpriced vector boards. I think this thing used to cost a thousand or maybe a couple thousand. Again insanely expensive. But basically that's all this is. It's an S100 bus backplane. So here is the disc drive card Vector Graphic. That probably means it cost about a thousand dollars on its own. I will not be powering those up. In fact I'm not even certain this is going to be compatible with my S100 bus system. I do know that there is a voltage regulator over here which is a looks like a 7912 so that's a negative 12 volt regulator. So anyway I basically wanted to rip out this power supply and put in an ATX power supply and I just want to see how easy that is to hook up to the backplane. Now the interesting thing about this backplane is oops if I tilt it you can see on the bottom and maybe even along the top you know you can see resistors. So this is basically an actively terminated backplane. The problem with S100 bus backplanes is that there aren't grounds between the signals so the signals do get kind of noisy and apparently the active termination which consists of a resistor going to plus and a resistor going to minus helps in that regard. So anyway I am going to take a screwdriver and start removing these capacitors. They're definitely fully discharged. That's always a good thing. Let's just go ahead and remove these capacitors out or at least unwire them and in terms of the wires we've got these green wires which are obviously ground. These green wires which are also obviously ground and then we've got these red wires and these red wires which all go to here. Now to me red means plus five. Let's see we've got some purple wires and we've got some yellow wires so if I had to make a guess I would say that the red wires are the plus five or actually plus eight. The purple wires would be the plus twelve or actually plus sixteen and the yellow wires would be the minus sixteen and I could be totally wrong. Oh yeah and this must be a negative voltage because ground is connected to the positive so at least I got that one right. Okay so now we've got all the wires removed from the capacitors so these are these boards here so I'm just going to tuck over there this I'm just going to tuck over to the side. Okay so now the capacitors are affixed to the bottom using some kind of nut and it looks like there aren't any screws on the other side so I'm going to need a nut driver to remove those. Just get rid of all these nuts. That's a pretty big capacitor. It is a 28,000 microfarad 25 volt DC power cap garden grove California national capacitor made in USA. 54B80-8031 so could that be 1980 week 31 and I'm dropping washers into the slots. That's not great. The only problem with this is that the nuts tend to get stuck. Why don't I do this the right way? Okay so this one is the same type of capacitor the same value 8031. All right capacitor okay and this one is different it is 60,000 microfarads 15 volts DC so that tells me that this can't be the 18 volt bus supply it's got to be less than 15 volts so this must be the 8 volt bus supply so I was correct these other ones are 25 volts which indicate that the plus and minus 16 volt supplies would be regulated by those capacitors so down here it's hard to see but these square things over here are diode bridges so those are the rectifier diode bridges to rectify the AC voltage that's coming out of the the transformer there should be I thought there would be three of them but I only see two there would be one for each voltage so maybe there's one hiding somewhere so those need to be removed as well so I'm just gonna unscrew this I found what appears to be that's interesting this is something that goes on the edge of these cards kind of like this and then this let's see I think it goes like this so it so it lays flat against the card like this but then when you want to remove the card you open this up and press down and that sort of forces this card up it looks like the rectifier goes to a bunch of wires that are also zip tied so I'm gonna have to remove the zip ties okay so this is the rectifier does it say anything on the side it does it says gi looks like general instruments that's interesting KBPC 25-02 and then over here it says 8038 I guess that is a date code also so I would date this to the second half of 1980 all right that's the rectifier it seems to have a probably a mauve an MOV a metal oxide varistor so that would be for protection it's it's on the AC side which makes sense so that's one and it's pretty much the same thing so that's this side of the transformer so now we deal with the other side of the transformer it looks like I can probably take the transformer out and then pull these wires off I think I'm just going to remove those zip ties can always replace them so I looked it up online and apparently the mz the vector mz did actually come with some with a CPU card and a monitor and possibly a printer and the whole thing cost $4,800 back in 1980 like I said everything having to do with vector graphic was hideously expensive and I would always look in catalogs at vector graphic prototyping cards and they were always always just insanely expensive and I definitely could not afford those all right I think what I'm going to do is remove the fan that way I might be able to get to some of the transformer connections besides we're not going to need the fan and the reason that we're not going to need the fan is a we're not going to have a crazy huge power supply and B we're not going to use linear regulators to regulate the voltages we're going to use an AT power supply an ATX power supply which is a switching power supply and it's very efficient and it's got its own fan anyway so let's go ahead and remove this so here we've got nut followed by a lock washer followed by a regular washer so I don't know I mean I've heard these split washers or split spring washers or whatever I've heard that they basically they don't do anything because once they're compressed they don't actually supply any force so I don't know there was there was one vibration test on YouTube that they showed where these split washers didn't actually do anything under vibration and I think NASA even published a paper basically showing that that they were completely useless and that nobody should use them really now some of you may be yelling at me because I'm taking apart this vintage thing that was really expensive and it's quite rare because they were only 5,000 made yeah maybe I don't know hey I'm saving all the parts I'm not like cutting it not cutting it apart at least not yet if I can get this fan out now I guess I could understand if if this were some you know if this were like a board like this that was I guess fully functional and I would be like ripping it apart for the chips I don't think I would do that I might do that with a no-name card but you know I'm not going to rip this apart likewise again I'm not ripping anything apart I'm just disconnecting things and replacing things I can always put it back afterwards okay I'm going to need to use something a little beefier hopefully that should give me enough room to do something no back a little bit so we lift the transformer out okay there we go so let me just pull this so there is the huge enormous transformer okay something fell off that was pretty huge I'll probably just end up putting all this hardware in a baggie to keep it a little magnet this screwdriver is a bit too thick okay so there's the fan connected to the enormous crimped terminals there's another zip tie here that I don't need okay so where does this go this goes all the way to the back where there is a key and a reset switch so there is one wire that goes to the reset switch the other wire goes to this jumper here presumably that is maybe the reset line and the third one connected to the reset switch is connected to a ground for which I will need a Phillips head screwdriver put this screw back so the next question is how do I get this reset switch out do I even want to probably not the reason why I might want to get it out is that there's also this key well I think I'll leave the key in as well so the key goes to a fuse in the back which I don't need and then to an IEC inlet which is the technical term for where you plug the power cord into so I don't really need any of that stuff so what I'm gonna do is I'm going to remove the zip tie the other zip tie so the key one end of the key goes to one end of the fuse I'm just going to cut that wire because again I can always re-solder it pretty easily and the other end goes to this thing this complex so let's see if I can just unhook great alright so the fan is now out this fan is a rotron rotron airflow so it looks like it was mounted this way so the air would flow in alright so what have we got left this was the auxiliary don't need that anymore I'm now going to pull the hardware out this is a non-magnetized screw these are both non-magnetized screws done okay so that has totally disconnected the entire power supply now the next thing we need to do is look at the power supply for this so rather not the power supply but where they get connected to so I move these cords out of the way these cables oops there's a screw so we see two wires going down underneath here one of them is yellow and one of them is purple sorry that's three wires yellow purple and red obviously plus 8 and plus and minus 16 and the ground was connected here so clearly what we should do is unzip tie this bundle right here and then find out where it comes out over here and then we can hook that up to the power supply so let's unzip some of these I want to be careful but I don't cut any of the cables all right so here's this unzip tie this instead appears we've got a few extra wires coming on it onto this harness wire harness okay so there's that and there we go we've got our three wires that we need for the power supply so I will probably check this to make sure but I'm pretty certain that the plus 8 is going to be connected to the red wire why don't we just look at that again I'm not sure which side is which I mean I know that this is the ground side and this is the plus 8 side oh look at this there's actually a convenient test points ah okay these screws are where these wires must be connected to and they're very nicely labeled so this is going to be the plus 8 and the yellow is going to be the minus 16 and the purple for completeness is going to be the plus 16 done okay so we can connect that up to our power supply and we will have power now one interesting thing is that there appears to be a regulator in the corner over here I'm going to have to remove that the regulator is there let's see what it says the regulator is a 7805 so this is a five volt regulator so we don't need that in fact what we could do is we can just connect the two outer legs of the regulator because number one we don't need the regulator and number two I don't think the regulator will will use up any current so maybe I'll just leave it there and well no no I think I'm going to desolder that the reason that I'm going to desolder it is that if I connect a wire between input and output of this regulator and then later on I get rid of this thing or you know want to restore it I might actually forget that that that wire is there it's a very easy thing to miss so I'm definitely going to have to desolder it now in order to desolder it I'm going to need to remove the back plane what's this thing this thing that's neat so that's to um stabilize these sides so I'm going to need to remove the back plane and then flip it over and desolder so let's go ahead and do that okay so there we go that's what the back plane looks like on the on the other side so we've got the connections here of course this is nicely labeled ground this is labeled plus eight let's see so the greening appears to be flaking off here that's interesting over here and most of the green has flaked off on here interestingly there is no sign of those green flakes in the box itself interesting yeah so we've got resistors on here so those resistors are the ones that go to plus five on this end we've got the resistors that go to ground so that basically means that if nothing is connected to this then those pins should be floating at two and a half volts and that's basically what an active termination is looks like my dryer is done okay um and then we've got these three resistors over here now let's see where they go interesting so one of them goes from plus eight to ground and the other ones are for the plus and minus 16 volts i guess they are to provide a load this resistor is a 100 ohm resistor and these resistors look like 820 ohms it looks like anyway i'm going to go ahead and desolder those components and then put this back okay so i desoldered those components and um i also had a closer look at these resistors and in fact for the ground side that's this side the resistors are 470 ohms and on the plus five side the resistors are 330 ohms so 330 in parallel with 470 is about 194 ohms so each one of these resistor dividers would be drawing about 25 milliamps of current and at five volts and i counted up these resistors these resistor dividers and there are 42 of them so we're talking about 1.08 amps uh just for the active termination so that's okay the atx power supply can supply way more than that so this board is actually ready to go so now i just need to figure out how to mount the atx power supply inside this so i have there's the switch the inlet the fan and the power supply cables this doesn't really fit anywhere and there's actually no power switch on this thing unless the the key is the power switch yeah it says power on it okay well i suppose what i could do is take this apart because what i really want to do is i've already got a power inlet so that would be this the key would be this button uh this is just a voltage selector there's probably a fuse inside here so i wouldn't need the fuse and the fan i could probably uh i could probably 3d print a mount for it so that way i could basically bring this and this out and then just mount the fan mount this thing like right over here print in the thing three hours oh man okay so i have the power supply now mounted the fan grill is mounted on top of there all right we can see that i've started to wire up all the power supply wires this is the actual power supply connector i've cut off the plus five volts the plus 12 volts the minus 12 volts and a bunch of the grounds and i've cut off this green wire from the power supply connector this green wire needs to be connected to ground in order to send power out to the cable in order for the power supply to send power out to the cable so this is basically your on your pc this would go to your power button but there is actually non switched five volts i think it's this white wire or possibly this purple wire or maybe even this gray wire one of those anyway so obviously that's just a standby power that's called vsb or standby these red wires are all plus five volts so i have the plus five volts from the power supply wired into the plus five wire or plus eight wire that goes to the backplane this blue wire uh i believe is negative 12 volts um and that goes to this yellow wire and the yellow wire from the power supply is actually plus 12 volts and that's going to go to the purple plus 16 volts wire that goes to the backplane so now i've supplied the backplane with plus five minus 12 and plus 12 all right so what i've done is i've set up my voltmeter over here and i have connected it to so actually these are just screws and i'm just touching that screw uh with the probes and this screw over here all of these screws on the outside are connected to ground so it's just going to hang out somewhere over there just like that so hopefully that's touching enough that i can get some sort of a reading now i'm not sure i'm pretty sure so that so the the key is now like this and i think if i turn it like this it will turn things on so now i just need to find a cable to put on the front okay so i have a power cord and i'm going to connect it and see what happens great okay nothing should happen now i'm going to turn the switch and excellent the fan turns on and we have five volts on the eight volt rail which is correct let's take a look at the other rails this is the minus 16 volt rail which is giving negative 11 volts and the plus 16 volt rail is giving approximately 12 volts so this power supply seems to be a little weak in the uh in the negative 12 region so well since that power supply was really bad um i decided to buy another power supply this one was just $18 it's a triple power supply it takes a c in and it gives out plus five volts plus 12 volts and minus 12 volts plus five volts at i think around six amps plus 12 volts at 2.8 amps and minus 12 volts at around 0.5 amps and i hooked this up to my electronic load and the five volts was pretty much rock solid uh all the way up to its maximum uh the 12 volt line sagged probably about four percent and the minus 12 volts uh sagged about minus uh sagged about six percent so you know we're talking about four to five hundred millivolts on a 12 volt line which is actually pretty good so i decided to just hook this up and as you can see it's very small and it also does not have a fan so i hooked up the original fan over here uh not only that but it has no switch it has no fuse so i hooked up the original fuse which is underneath the fan and the switch which is on the front this key so uh let's just fire it up and see if it works all right so here i have hooked up the power in the back um and the ground is just attached to the rails uh this this metal railing and that should theoretically be connected to ground which i can check by simply checking continuity so let's go to vaults and turn this on okay okay and now maybe you can hear this humming that's the fan and there's actually a light on the power supply so let's check the five volt rail there we go we're getting 5.068 right on the money and the negative rail is negative 12 and the positive rail is 12 so indeed uh this power supply is working just fine and again i tested it with an electronic load so uh we should not get any voltage drops or not any significant voltage drops when current is drawn from the power supply so uh that is just about it for this s100 system the next step of course would be to get some cards and start plugging them in which will be the subject of future videos making cards to put in the s100 system thanks for watching and don't forget to subscribe on the next episode of building a retro computer that generates a lot of heat i made a mistake over here you're just going to be sitting there feeding sovereign forever the terminals sort of go up the side i don't want to go any lower because then it becomes difficult for me to solder and the reason for that is that other boards in the system can pull that line low why am i using a brown plate once my soldering iron heats up a little more


What do you think of Germany's immigration politics? EU has a big problem with that taking people but not improving their infrastructure Yeah, yeah, yeah, it's a clown show.  They're traders through European nations. Like I have no idea how these people came and how they're still maintaining control They're actually literally put into power to annihilate the European economy To annihilate European living standards, right? Like what they did in Libya European citizens It was with France, UK United States, Canada was involved as well. Okay, and I believe Italy was involved as well, right? But what should have happened when Libya got annihilated? Citizens of Europe should have arrested your leaders in France in the UK If any American leaders came to Europe, they should have been arrested on spot Same with the Canadians put them on trial for crimes against humanity end of story. That's what should have happened, right? If that had happened Then the mass migration crisis in Europe and the economic downfall of Europe Would not have come to be You would have proved to the global majority, the global majority, everybody else that You will not stand by Italy When your leaders, so-called leaders, those in power Innihilate countries Libya The country with the highest standard of living in all of Africa And the west annihilated it It was incredible. It was incredible to witness It was incredible to witness


Thank you very much. So, I will only give a brief introduction to the project. I am Aracisa John from the Talon Research Group, and this is a collaboration with the Music Technology Group, and also we have as principal investigator as Ricardo Baisa. And then I will pass the floor to Luis. So, the outline of the presentation will be first a motivation for this activity in the Maria de Maetzo Initiative. The challenges of natural language processing in particular in the music domain. Then Luis will be talking about identifying musical entities in free text, also in addition to identify musical entities in text, he will tell us how he computes relationships between, identifies relationships between entities, and also how he has carried out a study on music, sentiment analysis in music repositories, with the objective of applying it to musicology. Then we will also describe some dissemination and outreach activities. So, the motivation. So, there is textual information about music created every day and making sense of what is written in those textual documents can contribute to musicology and investigation in general in music information retrieval. So, by transforming textual content into some knowledge representation, you will be able to obtain knowledge, to infer some knowledge. For example, you may have a huge database of musical genres, artists, and so on. And you may infer that at a particular time there was this, the born of a particular music genre because some political or social situation appeared. So, you will be able also to ask and receive an answer to complex questions. So, for example, you may be able to ask how many guitar concertos Rodrigo composed and which one is the most popular one. In order to do that, you will need to go to a database, first understand that Rodrigo is one possible composer. You will need to understand what is a guitar concerto. You will need to extract different information about concerts composed by this composer. And then finally, to query some databases in order to find which one is the most popular one. So, also, transforming textual information into actual knowledge will allow the visualization of information, not the typical graph that we see of concurrence between entities, but also more meaningful relationships like relationships, why two artists are related, which is the relationship between them or which is the set of relationships that link them. By having also these relationships between artists and words of arts, we will be able also to improve navigation and improve recommendation, for example. So, Music Mix NLP is a project that brings together people from the natural language processing group on music technology and is a collaboration that started between Luis and Sergio in 2014 already. And this project will fill an existing gap between music information retrieval or music technology and natural language processing. And we will try to bridge this gap with our technology. And this kind of activity has been well received by the places where Sergio and Luis have been presenting their work. So, there is people in the music technology and in NLP are very keen on this type of collaboration. So, what are the challenges? So, one of the principal activities in natural language processing is try to identify entities in text. This is a core activity where you try to identify the name of a person, the name of an organization and so on. But in the case of music, this is particularly difficult because brand names, album name songs have very specific characteristics that probably a natural language processing tool, the standard of the shelf, will fail on any text that talks about music, will be unable to identify any music related entity. So, we need to deal with this difference in domain. So, all systems that are ad hoc should be adapted or should be improved or machine learning techniques should be used in order to be able to operate on text that pertains to the music domain. So, entity recognition is one of the particular activities that we carry out in this project. And the typical procedure that you will find in available tools that they rely pretty much on lexicons or gazetteers that will help identify entities. So, this can be an efficient thing when you try to identify, for example, using Arctic names that the symphony number blah blah blah because you have a specific lexicon that you can take advantage of to identify entities. But what happens if you have different names for the set musical entity, like the ninth, the ninth can refer to anything. If you don't have enough context, you will not be able to identify that the ninth refers to an actual symphony by Beethoven or by any other author. Also, we have the problem of ambiguity as ambiguity is inherent in natural language. So, if you have Carmen, Carmen can refer to the opera but also to the character or can refer to the character in the opera or the character in the play by Merime. So, you face all these difficulties. There is also variability. You can have names that actually are like common name entities and also variations of names of musical groups that have to be taken into account. Common names like Madonna will be used for artists and you don't know whether it refers to the Queen of Pop or whether it is referring to a representation of the Virgin Mary. Okay, so if we take the case of Spain, so you will have Placido Domingo in Madrid this Saturday, because Placido Domingo is also a common vocabulary in our language. It means pleasant Sunday. So, probably a natural language processing system in Spain will have difficulties in identifying that Placido Domingo is the renowned artist and will probably believe that he's talking about the weather. In any case, we face various difficulties in natural language processing in the music domain. Okay, it is also true that current systems in natural language processing rely on the availability of knowledge bases like Yago or DbPedia or Freebase or Wikidata in order to create lexicons or vocabularies that then you can match against the text in order to find the entities that are of your interest. The problem with this database or knowledge repositories is that they lack many pieces of information. So they cover, for example, the most popular things, but they don't cover the long tail, for example. And the long tail, you find it in free text. So, and this is the challenge that we face. And these knowledge repositories need to be constantly updated. And currently they are updated just by looking at structural sources of information and not to unstructured sources of information. So there is a lot of unstructured information in textual format available out there, like artist biographies or articles that talk about specific pieces of music or artists and also, obviously, a free text that can be exploited from Wikipedia in order to identify useful entities in the music domain, to contribute to creative knowledge bases and to contribute to useful applications. Now, in what follows, Luis will present three cases studies on the application of natural language processing to the music domain. Thank you. So, thank you, Horacio. So, well, after the introduction, I'm going to just very quickly go over three projects that are already framed within the Maria de Maes initiative. And the first one is about what Horacio just explained, the type of identifying music entities in text. Much better. Yeah, so because of the problems that Horacio was explaining, one of the possible approaches, one of the alternatives could be to train an algorithm on very high quality data in terms of entities annotated in the music domain. So all these characteristics, all these idiosyncrasies that he has been describing would be manually checked. And then, ideally, we would have a clever way to deal with this kind of variability. So, well, in this case, one of our proposals was to automatically construct a very large document collection with thousands of music entities, specifically, we focused on album, song, artist, and record label. And the idea was too high, even if you didn't have everything, every single mention annotated in your data set, whatever you had had to be of very high quality. Because in this case, in this way, you would have high quality source data, for example, for propagation, semi-supervised learning, et cetera. In this paper, what we did was to process thousands of biographies from the website last FM. And the method which we named after the acronym was ELVIS, and it's an entity linking voting and integration system. So the basic idea behind it is that even if you take isolated tools that Horacio said would do pretty poorly in dealing with text, with musical text, if you build a framework where you can plug an arbitrary number of them and then look at the degree of agreement they have in different text spans, then you can use this information as a confidence measure. Sergio is the developer behind it, and the code is available, so it's a framework where you can plug any name-dentity recognition or entity linking system, and it unifies the output and provides you with a confidence measure for each of the predictions it does. And also the data set that I will describe in the next slide is also available from the MTG website. Yeah, so this is to show that it actually worked. So we manually checked 1,400 predictions. So we did an extensive evaluation of the quality of the disambiguation with different type of configurations and different degrees of agreement. And, well, what I would like to highlight is that when all the systems that we tried in our paper agreed, the precision, like the correctness of their prediction was very high. So that was one project that should set the foundations for what we want to do in the future, which is training entity linking systems and named entity disambiguation algorithms specific for the music domain, ideally to be able to cope with the variability that Horacio was explaining earlier. And another interesting thing that can be done is to take advantage of the fact that you already have identified entities and disambiguated in large text collections to encode relationships in natural language so that you can, for example, build a large knowledge graph out of them. And from there, this graph can be used for many other applications. So without going into much detail, we were very happy to see nice results from a collaboration that relies a lot on linguistic information. So our approach was based on crafting a set of linguistically motivated rules over the syntactic tree for every sentence where at least two entities were already disambiguated. So in this case, for example, we would have the sentence, Hated Here was written by Wilco Frontman, Jeff Tweedy. And, well, the algorithm would first identify the text spans, the offsets of each of the entities, then assign them a type, and then disambiguating them to any available knowledge repository. So you would have your music range ID for Hated Here, or for the case of Wilco and Jeff Tweedy, their corresponding Wikipedia pages. As I said, instead of just looking at coherence or other bag of words approaches that put together entities and match them together according to how near they appear in text, we wanted to have something a little bit more linguistically motivated and the triples, the left argument, relation, right argument that we extracted look like this. So Hated Here was written by Jeff Tweedy, or Jeff Tweedy was the frontman of Wilco. If you do this over thousands of sentences and with thousands of triples, not only you can construct a large graph in the music domain, but also you can reward better relations and punish those ones, maybe which are sparse, maybe they are redundant, maybe they are wrong because something might have gone wrong during the pipeline, et cetera. So this was a very nice application of this graph, was actually not music recommendation, but rather explanation of music recommendation. The idea is that on paper there are certain artists or certain songs that should not have anything in common and traditional recommender systems work a lot on, well, if user A and user B listen to the same set of songs, if user C has something in common with user B, maybe what user A listens to, maybe that can be applied as well. But we found that it could be not the recommendation itself, but rather giving a reason why you got a recommendation could be interesting. And we found a very nice example that I wanted to show. So imagine you like Tom Waits. Tom Waits, for those of you who don't know, is like a very obscure and, well, not the happy type of musician, we could say, right? And actually the recommender system that went out of the graph recommended the song by Lady Gaga, which is Technopop, so on paper it shouldn't have anything to do. And the explanation is it comes from the path that exists between them, and since we have the edges in the path are relations expressed in natural language, you can actually see why is this the case, why you get a recommendation of Lady Gaga if what you like is Tom Waits. So apparently Bruce Springsteen covered Jersey Girl, which is the song that the Tom Waits song, and Bruce Springsteen had performed fairly often with someone called Clarence Clemons, which I found out that this saxophonist over here. And this same saxophonist had performed live with Lady Gaga. So, well, I'm not going to play them, but if you actually listen to them, they are much more similar than you would expect in theory. So we found this was a very nice application. We ran a survey of people rating the quality of the recommendations. And actually this kind of explanation was highly valued for people who were not trained in terms of musical knowledge.  And I say this makes a lot of sense. And well, if this is actually true, this is great. People who knew a lot about music didn't find this very useful. But still, yeah. There were other applications, but we didn't put them here, but yeah. And finally, the last of the three papers that we have done within the time that we had within for what has been the Maria, the Math 2 collaboration so far, was to work with a large collection of reviews in the music domain, the music products from Amazon. And the idea was to extract correlations between how people felt about certain music products, especially albums, and either the date of their review or the date of publication of the album. We did, so it was a very heterogeneous paper. So half of it was on machine learning and text classification. And the other half was on musicology and a little bit digressing. But I think that by far the most interesting part is the application of this for musicology. So the sentiment analysis framework was something that came from a framework from Dublin, where Sergio stayed last year. And basically, so it works like this instead of giving you a score for the whole piece of text, it's what they call aspect level sentiment analysis. So first it identifies key elements in the review, and it assigns each element like guitar riffs or vocals. It assigns a score according to, well, a presence or absence of certain adjectives and so on. So, well, we had like a kind of an extensive study. And, well, one of the interesting findings we found was that if you look at the reception of and the criticism of albums in the genres of reggae and pop across years, it was pretty clear that there were significant peaks in the 70s in the case of reggae and in the 60s in the case of pop. And, well, we thought it made a lot of sense to associate these peaks with the appearance of key artists in both genres. As I said, this part of the project is a little bit more speculative, but we thought it was very interesting as a first step for making life easier for researchers in humanities and musicology so that they can benefit from the information they get from, well, from automatic processing of textual content. And, well, in terms of dissemination and outreach, all these and much more we will explain in Nismid, in August, in a tutorial that is called Natural Language Processing for Music Information Retrieval. But it's also for musicology, so we will, I'm expecting, I'm hoping for a little bit of discussion by people who disagree with what I just showed, but, well, the idea is this, to present both the part that we can apply to music information retrieval, recommendation, artist similarity, automatic playlist generation, etc., etc., but also its application to musicology. So the tutorial, this is actually the first slide of the tutorial, so since we have it almost ready, Sergio, myself and I'm sure, will be the speakers and we are advised by Yolazio and Xavier. And that's everything, so thank you.


Hi and welcome to this quick video, it's a video to illustrate a blog post and it's a blog post where I share these three brush presets. So this video purpose is to show how to install them and after just a quick time lapse how to use them. It's simply three brushes that I name at them Sharkoal pencils but it's just a mnemonic, it's to easy remember them and they make me feel like they make me remember like if they are Sharkoal because there is a little texture on it and if you use pure black you can have some similar effect. But it's a just grainy brush in general that came into three sides, large, this one is medium and this one is thin and with the large one you can build quickly some volume with the medium one some outline and with the thin one some little details like the eyes or whatever. So this grain is good also with color and you can have some color red pencil effect or some pastel pencil effect. It depends how you use them but yes I really like them to do some sketch like this and I hope you will like them. So I will show you a quick chapter on how to install them and then I will finish with a little time lapse. Here is a little how to if you want to install the brush bundle. So you have your zip file you downloaded from my website or from the description of the video and on this zip file you will extract it to get the bundle file and you will open your Krita create a new document because almost all of the features of Krita are locked if you don't have a document open and go to manage resource import bundle and on your disk go to the bundle file click open and now you have the bundle file installed in the active column click ok and if you want to have the tag to appear in the list of your brush preset docker you need to restart Krita so restarting it and you can already see the bundle appearing here. So in all the brush are inside all the default brush but you have now a group specific group about it and you have also another tag here which is my nickname divad and this one make this brush to mix with my other brush kit if you have them also installed.


in this presentation we will take a look at the statement of cash flows using the direct method here's going to be our information we got the comparative balance sheet the income statement and some additional information we will use this information to put together our worksheet which will be the primary source used support accounting instruction by clicking the link below giving you a free month membership to all of the content on our website broken out by category further broken out by course each course then organized in a logical reasonable fashion making it much more easy to find what you need than can be done on a youtube page we also include added resources such as excel practice problems pdf files and more like quickbooks backup files when applicable so once again click the link below for a free month membership to our website and all the content on it to create the statement of cash flows using the direct method this is going to be our worksheet now most of this worksheet will be similar to what we have done for the indirect method in that we took the difference in the balance sheet account so we're taking the current year and the prior year the current period the prior period all the balance sheet accounts we've got cash down to the retained earnings for the balance sheet accounts but we're also in this case going to give us the income statement accounts for the current period so in other words we're going to break out the the retained earnings the amount that to its component parts meaning we've got net income being broken out on the income statement we've got sales costs to get sold the income statement accounts so it's going to be our same kind of worksheet here we're going to be in balance we've converted it from a plus and minus format we removed all of the subtitles as we did under the indirect method and we converted it from a plus and minus format as it is here on the financials to a debit and credit format verified that we are in balance in a trial balance and remember to do that we got to make sure that we're breaking out the retained earnings to its component parts to the income statement so this is the kind of the tricky thing to get this worksheet in place meaning you took the balance sheet and we're saying we're reconstructing the trial balance now kind of going in reverse and that means that the retained earnings really is now the beginning retained earnings and all the activity dividends net income sales and expenses are not yet closed out to it so you'll note that in comparing that to 2000 the prior period um there we were not going to show the income statement because i don't need the income statement for the prior period because it was closed out to retained earnings so we're going to say that is closed out to retained earnings but we're going to show all the activity that happened in this in this time period the current period in terms of the revenue accounts not being closed out why are we doing that why are we having this difference because when we look at the first component of the direct method which is going to be the operations flow cash flow from operations we were in essence going to reconstruct the income statement because that's basically getting to net income we're basically going to get to this net income number not using an accrual basis but using more of a cash flow basis so that's what we're going to try to do so in order to do that we're going to list out this information that detail and what we're going to do is go through these income statement accounts sales sales and convert it and say well it's not sales anymore it's going to be cash received from customers and we'll go through these accounts and we'll basically kind of convert them from an accrual basis to a cash basis that's going to be our goal now note that the only difference between the direct and indirect method is in the cash flows from operations so that the indirect method takes net income and kind of backs into the cash flow on a cash flow basis from operations whereas the direct method is going to try to convert each line item in essence to its cash flow basis so this is kind of it's more direct because it makes more sense if you look at it you can say I'm basically reconstructing here an income statement on a cash basis rather than rather than an accrual basis so to do that what we're what we're going to do is we're going to say okay cash received from customers that's going to be kind of like our sales item here to pick up the cash received from customers you're going to say well yeah we're going to pick up that sales item but that's not the only thing we're going to pick up why because that sales item is on an accrual basis how do we convert it to a cash basis well if you think through it you're going to say well what you know what does sales happen what happens in sales there's two journal entries that would happen well the the process of recording sales typically has that the sales cycle would be that we would debit the accounts receivable and credit sales that's the increase in this number and then we would get the cash later on which means we would debit cash and and credit accounts receivable now anything that is still in receivable here is is then not on a cash basis meaning in this case the receivables went from 80 750 down to 77 100 that would mean that we got more cash than we made sales in aggregate so that would mean that we would have to adjust this account the sales account for that so we're going to take this uh 100185 add the 3650 because we must have gotten we must have gotten paid here we got paid over and above the sales we made in 2000 x5 so we're going to have to basically net those two out and that's going to be making then the cash received so we've converted the sales to cash received by looking at the other account that's an accrual account related to sales then we're going to do cash paid for merchandise we're going to do a similar process here and say okay well what's going to be involved with the cash paid for merchandise well that's going to mean that we're going to have of course cost of goods sold but we also have the inventory it's going to be part of that process and we've got the accounts payable so this is going to be more of a kind of a confusing process we're going to have to put these together in order to see what the cash paid for merchandise is going to be and again you can think through this by thinking of the journal entries what what's the cycle for merchandise well typically we would purchase the inventory debiting inventory crediting accounts payable and then and then we would pay for the merchandise we would credit cash and debit accounts payable and then at some point we would sell the merchandise which means we would debit cost of goods sold and that and that would be part of the sales process when we sell the merchandise so these three accounts are going to be combined together to give us this 669-150 so we've got a deal when we have the cash paid for merchandise you can see this gets to be a little bit confusing because this cost of goods sold represents an accrual basis at the point of when the sale happened of course when we paid for the cash when we paid for the inventory it's going to be a different different scenario because the cash basis will differ from the accrual basis so then we're going to have cash paid for other operating expenses so if we pick up those accounts we're going to have the other expenses here and then we're going to have to say okay is there anything that's non cash basis for these other expenses whatever these expenses are is there anything up here that's going to be an accrual type of account and if we have something like prepaid expenses then that's going to be an accrual type of account related to the other expenses so any other expenses then we're trying to see are they all cash expenses that we pay cash for them or is there some type of accrual related to them if we've got prepaid expenses here then we're going to have to net those two together in order to get in this case decreasing it by the 360,950 so those two will be making up the cash paid to converse this number to an accrual basis and note what we're doing here of course is finding a home for all these differences just like we did with the indirect method where at the end of day we're going to get down to this 61,900 but we're finding a home for all of these differences and we're just going to kind of color code them as we go through this okay so then we got cash paid for taxes and that's just going to be this item here there's no accrual basis up here we don't have any prepaid taxes or accrued taxes so we're just going to pull that over directly and that'll give us our total so if we add up these add them subtract these up we get to 130,200 next we're going to have the cash paid for equipment and that's going to be in the cash flows from investing activities so we finished the net cash flows from operating activities now we're going to go to the investing activities now the equipment is often the most messy item here because if we look at everything that's related to equipment on our statement here on our differences we're going to say well obviously equipment's going to be related there and note that accumulated depreciation we could say well the difference in accumulated depreciation is usually going to be the depreciation expense here and if we were talking about the indirect method we would be taking depreciation expense in the cash flows from operations because we would be starting at net income and we would be pulling out the depreciation here of course the depreciation is not represented because we're reconstructing it and therefore not including depreciation in our construction so in order to add these numbers together in order to get them somewhere we're going to combine them together in this cash pay for equipment account and then we're going to go through any adjustments we need to make in order to break it out so we're going to say okay I need to find a home for this one equipment I need to find a home for this difference in accumulated depreciation which you would think would match out to the depreciation expense it doesn't that means that there's probably a sale that happened so I'm just going to match those out now in this one number and then I'm also going to include the loss which once again if it was an indirect method we would be pulling out of the net income number but because it's a direct method we're just never going to include it in that number so again I'm just going to combine that into this one number for now so that we can find a home for it and then we're going to go back when we make our adjustments and try to say okay what happened with the equipment did we buy equipment did we finance equipment how much equipment did we buy did we sell equipment and we'll have to go through that whole process so now for now we're going to adjust we're just going to combine these numbers together put them in there as cash paid for equipment and note that we'll probably have to go back and look at that again now most of the rest of this stuff is going to be similar to what we did on the the indirect method so remember the main difference is going to be the cash flows from operations and then the equipment of course is that kind of messy account because we have the income statement accounts we have some differences there on the equipment uh if when we look at the rest of these numbers we're we're basically pulling over uh these numbers in a similar fashion as we did in the indirect method so well so i'll leave those accounts there bottom line is we're trying to get to the ending cash an ending cash that ties out we're trying to get to the cash here the change 61,009 that matches here just like we did with the indirect method and the ending cash 123,400 that matches here finding a home for all of these numbers will do that we don't really want to get into breaking out these numbers or pulling information or numbers from anywhere other than this worksheet until we match this worksheet out and then think about what kind of adjustments we can do to uh trim this down fix any problems that are there now if we look at these the added data again we're going to look at those journal entries related to the equipment so we had the sale of equipment 26,050 uh the equipment cost 51 the depreciation 22,5 this is the journal entry that would be related to it and again in real life we would look at the gl we'd find this transaction and uh and then possibly pull out the the paperwork related to it if we needed to and then here's the loss so again this is like a plug so if we took you know the debits minus the credits we would need a plug of 2100 it's a loss because it's a debit also a loss because the cash received is less than the book value of 51 minus the 22,850 then we had this other one equipment that we purchased sticker price 113,250 we only paid 43,250 for it so then we had this note payable this financing we dealt with so this all deals with that equipment account what are we going to do now to fix our equipment account well if we go back here note we had this red item we're going to say okay we're going to do something to that now we need to go through this and say how are we going to use these journal entries to fix this number to make it you know align what with what we think it should be and yet not throw us out of balance that's our goal that's why we did it in this process when we look at this it's a little confusing because we can't really go line by line we're going to try to look at this and say okay what do we need to do to make this to make this work we know that the cash paid for equipment we're going to have to adjust that why because that that represents the actual cash flow here so the cash paid for equipment we're saying was uh this 43,250 so what we're doing here is saying well that this number here needs to be that that 43,250 so we're taking what's what's there it's the 87,200 minus the 43,250 and that should give us what it needs to be adjusted by because that's what this cash payment is made for and then we got a cash received for equipment and we know that we kind of included that here and we know that that should be broken out because that's cash that's coming in so we need another line item we need another line item and we know that's the case so we're going to put that here that should make these two amounts correct and then the difference then is going to be going to cash paid for the long-term note because that's where the other side of this of this happens so the the other side is going to be this notes payable so the notes payable then is going to be the long-term note which we had here that should flip to to be the correct amount so it was at 22.5 and this actually looks like the cat like like as if we received cash so it needs to be flipped in the negative direction and then once we do that we can kind of tie that out to the actual note uh in terms of the the cash paid for the long-term note we can look at the cash that was paid on the note which is going to be given in our example so this uh is the type of transaction we'll have in terms of increases and decreases which should keep us in balance here should make this right this right and hopefully this right as well so let's see if we do that then if we do that to our worksheet we're going to say that the cash paid for equipment was at 87.2 the 43.950 brings it to 43.250 then we're going to say that the cash received from the sale of equipment was uh 26.50 to 26 uh 1050 and then the cash paid for long-term note was at 22.500 looked like a receiving we took it down 70 reversing it down to 47 so now this description is accurate now it's cash paid not received as it looked here so then if we look at the full worksheet then we could say okay this is where we were at before this number was right this number was right which was the summing up of these numbers we had to fix this number and this number and this number we did so by having additions and subtractions that are in balance so kind of like a journal entry which left us with this hopefully being correct correct correct and still ending up in the same spot so we're still good we should still be in balance so then these numbers then are going to be like our final balance so we can kind of eliminate this stuff and then be left with our final balance which would look something like this again this could be cleaned up further uh and just in terms of formatting and some terminology and whatnot but this could be a worksheet a step-by-step process to help us to get to a place where we're in balance and we can you know if we're if anything goes wrong we don't have to go back to the beginning and kind of set this thing up in a step-by-step process


Item number, SCP-903. Object Class, Euclid. Special Containment Procedures. Access to either side of SCP-903 is to be restricted to authorized research personnel only. The entrances must be sealed and kept under surveillance at all times. During testing, under no circumstances are personnel to enter SCP-903, or attempt to cross it. Any persons attempting unauthorized entry will be subject to lethal force. Any test subject or item that is passed through, or emerges from SCP-903, must be immediately destroyed once testing is concluded. Description. SCP-903 is an incomplete Site-19 utility tunnel that connects the SCP Containment Wing with the Lambda Laboratory Wing. The tunnel is 3 meters in diameter, 50 meters long, and buried approximately 5 meters underground. Because of its incomplete nature, SCP-903 is an empty concrete tunnel that contains no piping, wiring, or other utility equipment. SCP-903 also contains an old rail system that consists of a single monorail that spans the entire length of SCP-903. SCP-903 was originally used as a discreet and secure method of transporting SCPs from the Containment Wing directly to the Lambda Laboratory Wing. However, this practice was discontinued shortly after Incident-903-1, where the presiding personnel violated standard operating procedure and transported several SCPs at once, rather than one at a time. The resulting incident is most likely what caused SCP-903 to obtain its current anomalous properties. At first glance, SCP-903's most obvious feature is the fact that the entire tunnel is completely visible, despite the lack of any internal lighting. The lighting appears to be emanating from the white line of paint spiraling around the tunnel walls. It is unclear how this phenomenon works. The monorail system still functions as normal. However, if an item or organism is placed inside the monorail car and sent through SCP-903, the monorail will suddenly and inexplicably stop in the middle of the tunnel. The anomalous illumination will then deactivate, reducing visibility inside SCP-903 to zero. Attempts to use external lighting or image enhancement technology such as infrared or night vision equipment have proven ineffective in observing SCP-903 during this state. After approximately 15 seconds, the anomalous illumination in the monorail cart will reactivate, and the cart will continue on its path like normal. However, the item or organism that was previously placed inside the cart will be missing with no trace. After an indeterminate amount of time, SCP-903 will activate the monorail cart on its own. Once the cart reaches the center of SCP-903, the illumination will shut down for 15 seconds, similar to a deliberate activation. When SCP-903 reactivates, the monorail cart will contain a new item, designated SCP-903-X, and in most cases, an elaborately handwritten note. The instances of SCP-903-X that SCP-903 itself generates are all universally anomalous in nature, and each instance possesses different anomalous properties. However, each instance's properties seem to consistently match properties of SCPs that had previously been transported through SCP-903 prior to incident 903-1. Once the instances of SCP-903-X are removed from SCP-903, they will deteriorate and lose their anomalous properties after approximately two hours, assuming they weren't already destroyed beforehand. The handwritten notes included with the instances of SCP-903-X suggest that SCP-903 is somehow connected with a sapient entity capable of manufacturing instances of SCP-903-X. Attempts to trace the source of the notes based on composition of the ink and paper, as well as handwriting analysis, have so far failed to produce any results. However, the handwritten notes are not anomalous and do not deteriorate like instances of SCP-903-X. List of notable SCP-903-X instances and notes. SCP-903-1. A pineapple that autonomously launches itself at any individual that makes a subjectively bad joke. Accompanying note, I thought the tomatoes were such a hoot, so I thought I'd give it a try with a different fruit. SCP-903-5. A shard of obsidian carved into a humanoid shape. Whenever an individual cuts themselves on its edge, SCP-903-5 morphs into a perfect image of that individual. Accompanying note, for the price of a little pain, you'll have a little buddy to keep you sane. SCP-903-12. A bronze key that weighs 90 tons. Accompanying note, with this you can open any door if you have the strength to get it off the floor. SCP-903-20. A pack of blue lady brand cigarettes, with a picture of a blue-haired female with one eye. Anybody who smokes one of these cigarettes is temporarily afflicted with a condition where they are convinced a one-eyed woman is staring at them. Accompanying note, take a puff if you dare, if you can withstand her unbreakable stare. All other instances of SCP-903-X omitted. For a full list, please file a request to Dr. Ryan. Addendum, after four years of containment and testing, as well as cataloging all instances of SCP-903-X produced, SCP-903 reactivates and produces only a single handwritten note. Even the greatest minds can lose their inspiration. Can you please help an artist in desperation? Lesson complete. If you missed the previous orientation, go watch SCP-902, the final countdown, right now. Or for the complete course, watch this playlist.


I just want to start off by saying if you want an answer at the end, prepare to be disappointed. There just isn't one. I was an intern at Nickelodeon Studios for a year in 2005 for my degree in animation. It wasn't paid of course, most internships aren't, but it did have some perks beyond education.  Now since I worked directly with the editors and animators, I got to view the new episodes days before they aired. I'll get right to it without giving too many unnecessary details. They had very recently made the SpongeBob movie and the entire staff was somewhat sapped of creativity, so it took them longer to start up the season. But the delay lasted longer for more upsetting reasons. There was a problem with the series for premiere that set everyone and everything back for several months. The end two other interns were in the editing room along with the lead animators and sound editors for the final cut. We received the copies that was supposed to be fear of a Krabby Pappy and gathered around the screen to watch. Now given that it isn't final, yet animators often put out the mop title card, sort of an inside joke for us, with phony often times lewd titles, such as how sex doesn't work instead of rock-a-bye by Valve, when SpongeBob and Patrick adopt a C-Stellup. Being particularly funny but work-related shuttles. So when we saw the title card, Squidward's Suicide, we didn't think it more than a morbid joke. One of the interns did a small throat laugh at it. The happy-go-lucky music plays as is normal. The story began with Squidward practicing his clarinet, getting a few sour notes like normal. We hear SpongeBob laughing outside and Squidward stops, yelling at him to keep it down as he has a concert that night and needs to practice. SpongeBob says okay and goes to see Sandy with Patrick. The bubbles splash screen comes up and we see the ending of Squidward's concert. This is when things began to seem off. While playing, a few frames repeat themselves, but the sound doesn't. At this point sound is synced up with animation, so yes, that's not common. But when he stops playing, the sound finishes as if the skip never happened. There is slight murmuring in the crowd before they begin to boo him. Not normal cartoon booing that is common in the show, but you could very clearly hear Malice in it. Squidward's in full frame and looks visibly afraid. The shot goes to the crowd, with SpongeBob in center frame, and he too is booing, very much like him. That isn't the honest thing though. What is up is everyone had hyper-realistic eyes. Very detailed. Clearly not shots of real people's eyes, but something a bit more real than CGI. The pupils were red. Some of us looked at each other, obviously confused, but since we warned the writers, we didn't question its appeal to children yet. The shot goes to Squidward sitting on the edge of his bed, looking very forlorn. The view out of his porthole window is of a night sky so it isn't very long after the concert. The unsettling part is at this point there is no sound. Literally no sound. Not even the feedback from the speakers in the room. It's as if the speakers were turned off, though their status showed them working perfectly. He just sat there, blinking, in his silence for about 30 seconds, then he started to sob softly. He put his hands tentacles over his eyes and cried quietly for a full minute more, all the while a sound in the background very slowly growing from nothing to barely audible. It sounded like a slight breeze through a forest. The screen slowly begins to zoom in on his face. By slow I mean it's only noticeable if you look at shots 10 seconds apart side by side.  The screen then twitches a bit, as if it twists in on itself, for a split second then back to normal. The wind through the trees sound gets slowly louder and more severe, as if a storm is brewing somewhere. The eerie part is this sound, and Squidward's sobbing sounded real, as if the sound wasn't coming from the speakers, but as if the speakers were holes, the sound was coming through from the other side. As good as sound as the studio likes to have, they don't purchase the equipment to be that good to produce sound of that quality. Below the sound of the wind and sobbing, very faint, something sounded like laughing. It came at odd intervals and never lasted more than a second so you had a hard time pinning it. We watched this show twice, so pardon me if things sound too specific but I'd had time to think about them. After 30 seconds of this, the screen blurred and twitched violently and something flashed over the screen, as if a single frame was replaced. The lead animation editor paused and rewound frame by frame. What we saw was horrible. It was a still photo of a dead child. He couldn't have been more than six. The face was mangled and bloodied, one eyed angling over his upturned face, poked. He was naked down to his underwear, his stomach crudely cut open and his entrails laying beside him. He was laying on some pavement that was probably a road. The most upsetting part was that there was a shadow of the photographer. There was no crime tape, no evidence tags or markers, and the angle was completely off for a shot designed to be evidence. It would seem the photographer was the person responsible for the child's death.  The screen flipped back to Squidward, still sobbing, louder than before, and half body in frame. There was now one appeared to be blood running down his face from his eyes. The blood was also done in a hyper-realistic style, looking as if you touched if you'd get blood on your fingers. The wind sounded now as if it were that of a gale blowing through the forest, there were even snapping sounds of branches. The laughing, a deep baritone, lasting at longer intervals and coming more frequently. After about 20 seconds, the screen again twisted and showed a single frame photo. The editor was reluctant to go back, we all were, but he knew he had to. This time the photo was that of one appeared to be a little girl, no older than the first child. She was laying on her stomach, her barats in a pool of blood next to her. Her left eye was too poked out and poked, naked except for underwear. Her entrails were piled on top of her above another crude cut along her back. Again the body was on the street and the photographer's shadow was visible, very similar in size and shape to the first. I had to chill back vomit and one intern, the only female in the room, ran out. The show resumed. About 5 seconds after this second photo played, Squidward went silent, as did all sound, like it was when his scene started. He put his tentacles down and his eyes were now done in hyperrealism like the others were in the beginning of this episode. They were bleeding, bloodshot and pulsating. He just stared at the screen, as if watching the viewer. After about 10 seconds, he started sobbing, this time not covering his eyes. The sound was piercing and loud, and most fear inducing of all is his sobbing was mixed with screams. Tears and blood were dripping down his face at a heavy rate. The wind sound came back, and so did the deep voiced laughing, and this time the still photo lasted for a good 5 frames. The animator was able to stop it on the fourth and backed up. This time the photo was of a boy, about the same age, but this time the scene was different. The entrails were just being pulled out from a stomach wound by a large hand, the right eye cocked and dangling, blood trickling down it. The animator proceeded. It was hard to believe, but the next one was different but we couldn't tell what. He went on to the next, same thing. He went back to the first and played them quicker and I lost it. I vomited on the floor, the animating and sound editors gasping at the screen. The 5 frames were not as if they were 5 different photos, they were played out as if they were frames from a video. We saw the hand slowly lift out the guts, we saw the kid's eyes focus on it, we even saw 2 frames of the kid beginning to blink. The lead sound editor told us to stop, he had to call in the creator to see this. Mr. Hillenberg arrived within about 15 minutes. He was confused as to why he was called down there, so the editor just continued the episode. Once the few frames were shown, all screaming, all sound again stopped. Squidward was just staring at the viewer, full frame of the face, for about 3 seconds. The shot quickly panned out and that deep voice said. And we see in Squidward's hands a shotgun.  Realistic blood and brain matter splatters the wall behind him and his bed, and he flies back with the force. The last 5 seconds of this episode showed his body on the bed, on his side, and I dangling on what's left of his head above the floor, staring blankly at it. Then the episode ends. Mr. Hillenberg is obviously angry at this.  Most people left the room at this point, so it was just a handful of us to watch it again. Viewing the episode twice only served to imprint the entirety of it in my mind and cause me horrible nightmares. I'm sorry I stayed. The only theory we could think of was the file was edited by someone in the chain from the drawing studio to here. The CTO was called in to analyze when it happened. The analysis of the file did show it was edited over by new material. However the timestamp of it was a mere 24 seconds before we began viewing it. All equipment involved was examined for for in software and hardware as well as glitches, as if the timestamp may have glitched and showed the wrong time, but everything checked out fine. We don't know what happened and to this day nobody does. There was an investigation due to the nature of the photos, but nothing came of it. No child scene was identified and no clues were gathered from the data involved nor physical clues in the photos. I never believed in an explainable phenomena before, but now that I have something happen and can't prove anything about it beyond anecdotal evidence, I think twice about things.


I knew that when I was a resident that I wanted to work for this medical group because it had the same structure and setup as the physician group at Mayo Clinic did that I was so impressed with in training. The organization gives us the freedom to practice pure medicine and we're divorced from the money aspect so that doesn't factor into what we do. In private practice as well you'll have turf wars where a patient with prostate cancer shows up to a urologist. The urologist is definitely taking that patient to surgery. If they show up to the radiation oncologist, the radiation oncologist is definitely going to treat that patient with radiation. In our system we have no incentives to do one thing or the other for the patient so we see all the different specialists and get all the opinions and we help them make a decision that's best for them and I think that's beautiful. There's the patients that have been a part of the Kaiser Network for 30 years and they praise it with I've had nothing but great experience with Kaiser, the nurses, the docs. Every single person we've met has been nothing but exemplary. The second type of patient is the one who was a little bit more skeptical or for whatever reason joined Kaiser but once they see the high quality work and have the experience they would never think about doing anything other than Kaiser Permanente moving forward for themselves or their family. These outcomes are being made more public and as they're being made more public, it doesn't surprise me at all that we're starting to get very high rankings, the highest rankings possible in many different domains. I think it's just simply another way to tell a story that's been present for a long period of time and so to the extent that it reflects the quality we've always delivered and helps represent that in a different way, I think it's great to be able to talk about but I don't think it's new. I think it's something we've always done.


Yes, well done everyone for coming at 9 o'clock on a Sunday morning, I'm really quite impressed. I'm going to sit down for this because I'm really tired and sick and generally have no energy, so I apologize if you can't see me or something. So my name is Greg Zuckleff, I am the Community Lead for the Foreman Project. I'm not going to talk about Foreman today, if you want to know about that, come and see us at our booth. What I'm going to talk about is what I want to do is to get you guys through the talking because as I said, I'm all tired and sick. So the idea here is, I've not been doing this for that long, for about a year and a half. I was a developer and assistant admin before that, this is not my core strength shall we say. And there are situations that come up in our community that I think are interesting, I think they're not unique to us, I think they're worth talking about, maybe I can live from you guys, we can live from each other, maybe we can have a little discussion. Let me start by talking about what I mean by loops, possibly this is a term that people want to clarify. I'm a fan of GTD, Getting Things Done, and in that book they define a loop as this, anything pulling at our attention does not belong where it is, the way it is. Or in the case of virtual communities, things like undecided RFCs, unfinished discussions, unfinished reviews, PRs that are open, stuff that is not done yet, stuff we have started but we have not finished. And I don't know about you guys, we have a lot of this in our community. We have a lot of this in our community. And so I'm going to pick a few examples that maybe, hopefully I've got enough content even if you guys just basically want to sleep, but even if you don't know, we'll be fine. So I'm going to start with a conclusion because that's fun. So as I said, I don't think this is unique to form and I think a lot of online communities and a lot of face-to-face communities have these issues, although I think face-to-face it's easier. There's not going to be a one size fits all solution here. If there were, we'd all be using it. There are obviously as many governance policies to open source projects and other projects as there are projects pretty much. So there's stuff we can learn from each other, stuff we can try. But this is the community track, right? We're all community people. So maybe we can share some knowledge and maybe I can learn from you guys and take some things away that we can try in our community and maybe you guys can all do the same. So let me start with a quick disclaimer. I've taken all the names out of these scenarios that have come up in our community. However, if you're familiar with the foreman, you're probably still going to be able to figure out who we're talking about. It's just the way it is. But I want to be clear here, no one is at fault. I am not blaming anyone other than the systems that we have. Everybody has the best interest of our project at heart. I firmly believe that, but I think we can improve the systems. So that's where I'm interested in. I am not about pointing fingers at people. So let's start with, I've got two main examples. Since I've probably only got about 15 minutes left technically. I've got two main examples I want to talk about and maybe you can give me some ideas how you might handle the situation. The first one is to do with RFCs or Request for Comments in terminology. So change proposals. Things we want to change about how the project works. Not little patches, not bug fixes, but significant amounts of effort that go into changing the direction of the project potentially. And I'm really interested to hear how other people handle this because we had a discussion probably six months ago, something like that, where we were really struggling. We were thinking about how to have these discussions. Up until this point they were happening on our development mailing list. And that's fine. But I don't know whether you guys get the same problem. But a development mailing list has a tendency to just die out. You get really good participation for maybe two weeks. And then it just kind of trails off, right? It trails into nothing. And what's the situation here? Worse, in my opinion, it's difficult to track, and this is specific to RFCs, it's difficult to track how the proposal has been altered over time. Someone can write a proposal saying, I think we should do things like this. A few other people will make very, very good comments. So you alter the proposal, you update the proposal, you say, okay, well, now we're going to do it like this because of these comments. And so forth. So there's an iterative process when it comes to RFCs. But mailing lists are not good at tracking this. So we started to have a discussion about where we should do this. And we came to the conclusion that we could do it on the mailing list, we could keep it where it is and just accept those problems. We could move it to the Wiki. We do have a Wiki. Or we could move it, we could actually use like some kind of GitHub or something like that. All of our stuff's on GitHub anyway. So that's got nice tracking of history. It's got nice tracking of how a proposal has altered over time. Maybe that would work. And we did indeed decide to go for an RFC repo. But now we sit here six months later, and I'm not sure we're any better off. We've only moved the problem. Discussions are still tailing off into nothingness. There's no decision making happening. And I'm really curious to hear from people how they handle that final close down of a discussion. How do you decide when something is done? And in the case of RFCs, who gets the decision about when do you accept an RFC or when do you reject an RFC? Does anyone want to jump in on this? At least from my experience in median discussion and when somebody starts doing it. Like, there's something like this. And they last around forever. And somebody says, hey, I like that. I'll do it. And somebody, but me, somebody with the energy, there's a different energy level in discussing and throwing out their beers and actually getting... Right, right, right. And you need that energy to condense into somebody's hands. Right, so for the video then I guess since I've got the mic. That's the case of it's done when someone starts doing it, which is fair and I think is what happens with our community as well right now. The problem I have with that is that the whole idea of... And this is great for discussions about technical problems that need solving. But when it comes to RFCs, the idea is always that you should probably accept the RFC first and then code it. At least that was what was in my head. Maybe I'm being naive. But that was kind of my intention and that is not what's happening. What's actually happening is the RFCs get merged when the code has been written and merged as well. It's a de facto acceptance, right, because we've already done the work so now we just merge the RFC as well. So that was the thing. Anyone else? So in the Librom project we had an engineering steering committee. Everybody could join that, but you have to be in a weekly telephone call and when there's something that you want to discuss and it's not really clear what you want to do, then you bring it over there and discuss it there and then we do a decision or say, okay, it's not final yet. Come back in a month and look at this point. So there's not much going on there, but it's probably so large, normally people just merge the stuff. But if there's something really questionable, we say, okay, there's something back, something that's committed, which is not acceptable, then we just cancel there. Cool, cool. So for the video that's a technical council kind of approach where you have a group of people who get to make the decision, right? So I thought about this and I actually spent a lot of time last FOSSTEM talking with our community about whether we should do this and most people were in favour of it and I eventually backed off from suggesting it more broadly to the project because it felt really heavy for us. We're a lot smaller than something like Libra Office, right? I don't know. I mean, we approach the 40 people who have regular committers and we have a lot of two or three time committers where people come in and they are. Yeah, I guess 10. It's not that many people who are employed who are going to be brought into the project. That's true, that's true. So maybe that would work. And do you have a document that describes how you joined that committee and how that works and so on? Weekly and on over who is involved with all the stuff and everybody can join. Instead of calling it all something that's private. Of course, of course, of course. And everything that's written to be for many of us after that. So that could work. Right, right, okay. So, right, yeah, just quickly because obviously I've got the mic. So what, 40 contributors, regular contributors you reckon, and that works pretty well. Summarized, okay, I think we're probably about 20 regular contributors. So maybe that would work for us, actually, that would be quite good. Yeah. Okay, so, yeah. Yeah, so this is something, so, sorry, yeah, for the video. So it's a voting process, minimum two weeks before that's used and then the author gets to trigger it. Great. I thought about that as well and that's something I would probably like to see more than a technical counsel, I guess, for us. But I find if you vote on everything, it's really divisive after a while. I don't know if anyone else has seen that happen, right? If you get too many votes that are close to 50-50, and I can't think where I've seen that in the world recently, it gets really divisive in your community, right? If it's almost unanimous, then it was kind of happening anyway, but yeah, it's tricky. Does anyone see that on the page of the RFC votes because they tend to solve that during the discussion here? Yeah. Do you find there's a problem getting the... What's the right way to put it? So the quieter members of the community to jump in on that. Do they participate in the vote at least? Is it an anonymous vote? No. Yeah, okay, so... It depends. If the core contributors is a relatively small team, but you've got what they call climate by the ability to vote, if you've made a commitment to be able to be... Right. ...particularly the... ...intentional issues, to make some significant issues, you'll suddenly see a lot of people come out the good way. Right, yeah. It's not a democracy, right? It's a meritocracy. People have more weight. So, yeah, I mean, that's definitely something we're thinking about. I was wary of voting because of that kind of issue, but... It does have the other issues. I like the idea that the author gets to choose when, because one of the things we put into our RFC process was the idea of trying to drive consensus and that the author should spend time talking to people and try and bring it. And if he feels he's done enough of that, then he can trigger that vote, right? So, that's cool. All right, so, let's work it out. Let me move on to my second example. Thanks, guys, for your contribution style. That's really useful. Let me move on to my second one. This is what happens when discussions potentially go a little bit wrong. Not wrong exactly, but a little bit, shall we say...  A little bit contentious, right? So, let me give you the scenario that happened. We had a proposal, and this was before we did the RFC thing. We had a proposal that came into the mailing list. And in particular, it was to drop a dependency, an OS that we built packages for that was getting to be a problem. And we had pretty good discussion on that thread for a couple of weeks, and then the thread goes nice and quiet, but nothing happened, right? Nobody really said, are we done here? Is this finished? No action was taken. But then suddenly, after about two months of nothing at all on the thread, without pretty much any warning, the thing that was proposed got done. The OS was dropped, the packages were taken out of the system, and then a whole group of the community just went, ah, hang on, we weren't done here. Now, you can't fault either side on this one, right? On the one hand, the discussion was looking like it was moving towards dropping that OS anyway, and there was a nice long period of time, and then that OS got dropped. So it looks like proper process, but then the other side of the community was like, well, we never actually concluded it, and we were actually kind of relying on that. And you kind of want to say, well, where were you for the last two months? Which we did. But nonetheless, they actually did have a point. There was a pretty significant chunk of the community that was using that OS, and we probably needed to give them a little bit, the user community rather than the dev community, of course, and we probably wanted to give them a little bit more warning and talk about how to migrate up to the next version of the OS and make sure that you can move all your data across and so on. And there was a fair amount of upset about that, I would say. It never got ridiculously out of hand. We didn't have people rage-quitting or anything like that. But it did make a mess, and we ended up with one of the plugins for the form and deciding to unofficially create packages for one release just so that they could give their users a little bit more time, which is a fair solution, but not ideal. So my question to the room for this one is then, we've kind of covered it for the ROC, but it's a little bit different when it comes to a situation like this. So when is the discussion done? I guess we've kind of covered that, and that's fine, because I think I've only got about five minutes left anyway. Ten minutes left. But here's a different question for you then. How do we handle the differing expectations of groups when you get into situations like this? Does anyone have experience of hitting a situation like this where you've got two groups who really thought things were going in a different direction and then suddenly find that someone has to lose out? Was it ever made clear on any kind of notice in the form of community that a conclusion had been made and there was a period, a race period? No, that's true. The OS was dropped without warning after about two months. The person who raised the original request obviously felt that the discussion had reached the natural conclusion and that it was therefore okay to go ahead. It is fair to say the discussion was definitely in favour of dropping it at that point. In some ways you can't fault him, but I agree it would have been nice to have a grace period. I think, especially when we're working on the internet where we're not seeing people face to face in an office scenario. If you're in an office and you say, okay, I think we've never seen anything for two months, let's take this as the official stand before the grace period of two weeks or whatever a month, because I think the worst thing is not knowing that someone is about to happen or you're not expecting it. When there's an expectation and you've actually declared that, then no one can default you as out of sight because you've been clear about your intentions. Yeah, and I agree, and that would be my only criticism of that side of the debate, that it was done without warning. It might be interesting, though, I haven't seen it done yet, to redefine the grace period, which I like as an idea, not just as, if you don't mind, this is the status quo of the discussion, if you don't like it, keep discussing it, but this is the status quo of the discussion, this is what's going to happen, and if you don't like it, say what is your use case, so it could be taken into consideration where that thing happened. Sure, sure, so just restating the current position every now and then, every so often. Make an opening for, like, mitigating... Yeah, sure, sure, sure. So adding that onto the grace period notice is what you're basically saying, is, yeah, jump in if you're not done here. Very difficult, I would say. We have a developer's mailing list, and we pretty much assume that's the source of discussions. Now, the RFC repo was a new thing we added this year to try that out, so have we fragmented it? Probably. But I try and reach out to people I think should be involved in the community, but I make it as a personal effort, rather than we don't really have any systems for that in place, right? Most of the time, the people I expect to comment on things do comment on things. I've rarely seen a situation where someone I would consider a stakeholder in a discussion is just absent completely. So there are situations, I think, that occur because some people don't like the RFC repo and would prefer not to use it, so that becomes an issue because they'd rather see all of that happen on the mailing list. But apart from that fragmentation, most people are involved and engaged. I don't worry. So you make an interesting point, actually, about using other tooling, and that's something I wanted to bring up. So I don't know whether it's the same tool, but I was looking at Lumio, which Diaz Borra Foundation uses for their decision-making, and I like the idea, but the problem is it's more fragmentation, right? It's more places in which you can have a discussion, and I don't know if it's the same tool, but I don't know if it's the same tool. It's more fragmentation, right? It's more places in which you can have a discussion, and I worry about that a lot. If I'm already seeing problems with some people refusing to use the RFC repo because they'd rather keep it to the mailing list, this isn't going to make it better. And that's, you know... You can see the current status. Right, exactly. You would have both, I guess, like a general discussion in that thing or in the mailing list and specific... I'm definitely looking into some kind of at least when people post RFCs and automatic mail going to the dev mailing list so that people are aware of it. Yeah, you can have general discussion in both places, I guess. It's a really nasty one. What's the name of the tool? It was called Lumio, was the one I was looking at. L-O-O-M-I-O. I've seen a few projects using it, and it looks interesting, but, yeah. So, I hope... Yeah, sure. You were talking about the expectations of the actual development or the outcome, but what about the expectations of the decision-making itself? Are they clear? I think that's an important question. So, what I'm trying to say is is there a clear way that someone makes a decision or a decision is resolved? So, if a technical decision is made and it's not in my favor, it didn't happen in a process or the way that it's transparent that I understand. So, for example, most projects have to be a bit of a dictator model where it's like, if something does not get resolved, there's a disguise, and we all know that it is going to make a final call because that is clear ahead of time that that also does frustration. So, you make a good point. We did partially cover it. I guess I didn't put it as clearly as that. So, it's a good model for finishing a discussion, but the discussion itself is usually pretty good, pretty what's the word I want? Friendly? No, that's not quite the right word. Courteous? Yeah, constructive. People don't get personal on our mailing list. It's nice, it's clear, and we do try and take account of people's viewpoints. It usually goes pretty well. The problem is when is it finished? That's the bit we're really struggling with most of the time, and I guess that's the problem. That is the problem. That's what I'm trying to get to. How do we actually solve that problem? Because really, as far as I can see it, there are three methods which we've mostly covered. Which is the technical council voting or some third-party tooling like Lumia, which is really just a vote anyway. Those all have their consequences. The question is which consequences are we happiest with. But then I have to have one more discussion on our dev mailing list about which thing to do, and then hopefully we can be done with it. Do you have a timeline for the discussion? How long does it take? You have to take a decision and do that. Some decisions obviously have that built in. If you're talking about what needs to happen before the next release, we have time-based releases, so therefore there is a deadline for when code freeze will happen and so on. Other things? No, the discussion is done when it's done. Because based on your experience you know approximately when is the time for discussion? Yeah, it's about two weeks, right? Just to put an end to the discussion on the deadline. So that by that time... But you come back to Laura's point, right? If you put a deadline in, you still have to work out how you're going to take a decision at that deadline, and that's the bit we're missing. Is someone going to make a decision? Is it going to be a vote? Are we going to take it to the technical council? How do we actually solve that problem? It feels to me having... and thanks for everyone's input, I guess we're just about running out of time, so I'm going to wrap it up there. So it feels to me like probably the technical council might work better than I first thought. It felt very heavy to me initially, but if it works well for 40 contributors it probably would work well for 20 contributors. It's the same order of magnitude, right? So maybe that's something we should look at again. I really feel votes can be divisive, but hey, maybe PHP has got someone to teach me there. Maybe it's not as bad as I think. Anyway, thank you all very much for your input. It's been lovely hearing your opinions. I'm happy to continue the discussions. We have a booth down in the K Building, so come find us. This is the various links if you want to find me on the forum projects. Thank you very much.