I can hold it so I just I want to I want to make this really short because I'm going to talk further on this topic at the Next NYC RB, but I want to give you guys kind of a brief overview of chef Which is a dependency management system for installing Packages on servers. It's what powers the engineering yards solo and flex and it's pretty cool I think so the way that chef works is you create this what they call a cookbook which is essentially a directory full of recipes so a recipe is what is used to let's say install memcache or install a bunch of gems or You know my sequel essentially what you want to do is you want to iterate out kind of what are all the dependencies that your app requires So that you can easily bring up your server in a deterministic fashion So you define that in a JSON file that they call DNS DNA JSON. I don't know why they call it that So what you can do is you can say these are my list of packages So for bringing up we play on EC2 us plan around with we want get live my sequel the client We need a whole bunch of gems Then we've got a the repository and then what you tell it It's a little hard to read, but you tell it what recipes to use And so what a recipe looks like and I'll go into this more detail in two weeks on a Tuesday evening at B way for NYC RB but a recipe is essentially just a couple sets of Ruby code where you can say for each repository In git I want you to do some stuff like execute a git clone or do a sub module in it and For your packages, I want you to install a package and For memcache. I want you to install a couple packages and get some files So chef's really cool come to NYC RB if you want to hear more. Thank you Okay, who's next my name is Pat Nakajima I was talking earlier about the fact that I wanted to give a lightning talk But I didn't know about what I could give a lightning talk And so I decided to write some software to help me do that so basically it's called thunder because before lightning comes thunder and If I type in my github name here I can see here my projects from the github and just kind of rule them out one by one saying oh, that's not that interesting You know I want to see that and basically Since I have a lot of them it's gonna take about a click through them off So I'm gonna make fun of Josh Knowles right now and go to his because he does not have any So we've got Josh's projects here and you know, we rule them out one by one until now We know what we're talking about That's the app that I wanted to show you guys and also make the point that if you ever have any sort of little Picky-need you should write software to fix it. Thank you So I'm not gonna demo a particular product or anything. I'm really I just want to invite you to something I work for the Sunlight Foundation and we recently ran a apps for America contest where we invited people to Build and submit Applications based around a number of different APIs sort around the money and politics and influence fear And as got briefly mentioned earlier today during Ben Stein's talk the the Office of the CIO's chief information officer of the federal government has recently launched data gov Which is a it's a directory They don't host the feeds but they provide an organized way of finding all sorts of different Pieces of raw data coming out of different places in the government So it ranges from stuff like the world's copper smelter locations to the FBI's top top 10 most wanted to things like Airline like quality information over the last 30 years, so it ranges everywhere And to from the banal to the interesting and so we we're running a second contest Just like the first one it is it features a cash prize Of about $15,000 who are being sponsored by Google and O'Reilly and tech web the There's actually gonna be quite a bunch of different prizes given out There that you can see some mention there we when we ran the first contest the winner was a was a Site called filibusted filibusted And it was a it was a rails app. We actually had a very healthy Rui participation level in that contest, which was really awesome I know I'm sort of going over a bunch of things here not into too much depth as if it's a lightning talk But if you want to know more about the contest I mean the the contest is build any app Around any of the data coming out of data gov and that can really be that the you know your imagination can range all over the place We actually got one submission within 24 hours Which was unexpected Which somebody built Called the FBI fugitive concentration using the half for mentioned FBI widget so you can Try to identify Different FBI fugitives now at first this seems really absurd until you realize that you actually are really learning to memorize the faces of some of You know great dangers to American lives So really I mean this is a public service and this application is now The only application in the running for a prize of $10,000 So if you think you can come up with something even more awesome or relevant Please please do so Yes, that that's what sunlight does and that's what the government is doing Everything is becoming a lot more transparent and open and everybody here loves API's and building stuff on top of it You guys are prime candidates to Kick the pants out of this contest and help your country. So thanks guys Eric mill. Thank you Hey everybody, my name is Aaron Quinn. I'm from Brooklyn So Yeah, I have two really quick things to talk about one a couple months ago or two months ago is at this other conference called Go gay Ruko in San Francisco, and it was pretty awesome, but there was an incident We're not gonna talk about it like we said, but what happened from Which is it What happened from the conference was some really awesome things Something that I got involved with is this organization called the rails bridge Started by a bunch of people who felt like hey, you know either even if Whatever the incident, you know, whatever we want to get more people involved in the rails community and more people talking about Issues of diversity and issues of teaching kids and teaching other people about ruby and about How awesome it is and even teaching kids computer programming and stuff like that so a while ago when it happened I started a little fund I put a little money in my own in there and I got some other people to donate and it's going on until tomorrow And what's gonna go on with the fund right now? There's about $900 in there I'll hear it's at Pledgey if you just go to quirky comm slash blog you'll find it But basically what we're trying to do is just raise some money $500 of it is gonna go to this thing called the Anita Borg Foundation, which is raising awareness of women in Programming and doing some really cool initiatives and the other half of it or actually just splitting in half However much we get is gonna go to this rails bridge organization, which will hopefully fund initiatives to get computers into Schools maybe and teach ruby and there are some cool people doing Arduino stuff with kids and stuff like that Anyway, really cool. Please if you can just donate ten bucks. It'll be great These guys are doing awesome things So the second thing I want to talk about really quickly is I wrote this thing and it's not ruby, but I'm really excited about it I'm called Sammy and what Sammy is you can't really see it because it's small But what Sammy is is it's kind of like? Sorry, it's kind of like Sinatra which a ruby library that I'm kind of obsessed with in JavaScript And that's like a kind of silly way of describing it, but for rubious it makes sense And what an app looks like is something like this So you find an app you pass an application you give it a selector and you define some routes and what those routes do is act on The hashtag or can even act on the URL and then execute stuff like forms and stuff like that Unfortunately, this isn't my computer so I can't really show you an example, but I want you to check it out I just started a mailing list to there's a bunch of people who are kind of excited about it And the most exciting thing for me is this guy released this and like a week later this guy Alex Lang in Germany Figured out how to embed this in couch DB in a couch app So it's an entire application with Sammy this kind of Controller running as the client controller and it's really cool And that's on github and you can check it out and this is just github.com slash quirky or Code dot quirky comm slash Sammy, please check it out. Thanks everybody All right, so So it's my opinion that so we've all heard about Hadoop and MapReduce. Excuse me we've all heard about Hadoop and MapReduce and so on and Have some understanding of it and I think that it's actually Underestimated underappreciated in our community or at least I haven't heard or I came into a new appreciation of it in the past year that Even having heard about in the past. I didn't Fully appreciate it So I wanted to maybe if others are experiencing this help them along also with new developments like Amazon Elastic MapReduce it's a practical tool That's really available and can scale out for you even without setting up servers and so on so it may be useful to you Now in a way that it hasn't been in the past. Okay, so again, this is about Hadoop So when I was first learning about Hadoop I saw a bunch of word count examples like to where it seems like that's the only thing you could really do with it is You know count up words and logs But the reason for that and the problem is they were using the streaming API Which is the the simplest way of using MapReduce. You write any language And but you only get one MapReduce pass the more interesting This is a pretty simple operation. It's just like a ruby code that maps and then injects You can only do so much in that block of ruby code. So it's reasonable to see that It's not so expressive To get more expressive and more advanced operations You have to go into the Java API or use one of the DSLs that people built on that Which include pig and cascading and from there you can do chaining and redirecting and recursing of MapReduce jobs to where the maps MapReduce is a sub-component of A larger aspect sort of like middleware which you connect and interrelate through this common interface so here's an example these are operations from pig which allow you to filter and group and so on using a higher-level language and Where I think this is really interesting is it allows you to tackle problems that Would be otherwise difficult or impossible to tackle for instance large graphs graph traversal is one of the reasons MapReduce came about was for mapping the web and in order to do that you you can come into this this job API and so on and So with this Hadoop gives you tremendous power to to deal with huge data sets they just set the world record for for sorting a petabyte and This is something which enables us to find answers in data that that's out there that wasn't possible before And I really think it's something to consider and look into for your own data for instance that's generated by your user's actions or Out there on the web somewhere So get to it, you know two gems that are really small that I wrote The monitor is not going oh We're not mirrored. It's always mirror Mirror displays, okay That's why I could see so much. All right These two gems are called abstraction and freeze-ray Abstraction is a gem for making abstract classes in Ruby Ruby doesn't have a native notion of an abstract class and all an abstract Class really is is a class that can't be instantiated Which seems weird, but the reason that you want an abstract class is because you might not Make you might make a superclass Which is not actually instantiable, but provides a basis for subclasses So the the case that Here's a case where we have a user model and Maybe the user model is fine for a while But eventually let's say this is a an actual rails model eventually we say that we want two kinds of users We want a super user and just an ordinary Joe Schmoe and they're both users But there aren't any users which are neither so it's silly to make user still useful So what you can do in this case is you do the refactoring you need to get your code into these two classes and then you say that and you have abstraction available and now I've done this right if you say User.new You can't make it It's an abstract class. It can't be instantiated, but Super user new Doesn't work because I didn't set it up as a subclass, but That's my fault, but I swear to you this code is used in real life a question Okay So that's the next point right why do you want a class that can't be instantiated and the reason is test driving your code? So at Dropio, we had a class that we had to split up into two subclasses and the problem was that the first class the original class Wasn't gonna be used anymore where you're just gonna use the subclasses, but it was used in all the tests So we wanted to make sure that nothing in the tests or in any of the code that was driven by the tests actually made an instance of it That's one reason What's that We need the class to be implemented so there were things that Were common behavior so that we wouldn't actually quite hit that It's hard to explain it without actually showing you code But the other reason that you want to do it is because this will actually prevent rails from instantiating it And if you have a nil in the type column because these were STI single table inheritance If you have a nil in the type column it will by default use in this case user And you want to make sure that those things never actually happen to your code. So you want to fail fast So it's the gem is called abstraction. It's available. The other one is freeze ray and freeze ray I'm not gonna show you the whole thing is gonna be too hard to set up But it fixes dirty tracking in active record this pissed me off after record dirty tracking doesn't work And it doesn't work for one reason. That's that you can do something like user dot name Foo and if you do that What dirty tracking wants to do is see when you've changed an Attribute of a model object so that you can ask what's changed since the last time you saved it It works by looking at the setters So if name equals was called it would see that it changed But in this case we're actually taking the string object itself and mutating it We're changing it and the user object never knows about it. So it gets confused and you have these problems So the trick is or the solution is you install freeze ray and then you say Out of frozen Name and what happens now is Name the string is always returned frozen a frozen object in Ruby You just called dot freeze on it and it can never be changed. So this line is not picked up by Dirty tracking, but it throws an error So this is only gonna work if you never have a need to do this But really there's never a need to change something in place. You just want to make sure that it doesn't happen by accident So if you really need to change something in place for some weird reason, this won't work for you But this gives me the peace of mind to know that dirty tracking is completely consistent in anything that I can legally do Thanks. Yeah, I'm gonna in a five-minute talk. I'm gonna show you how to get a 10x plus performance boost by fixing Ruby threads Thank you If you want to see more stuff like this like low-level hacking interpreter stuff check out my blog at time2bleed.com And this talk is only for x86 and x86 64 Okay, so what is a Ruby thread the short version? Thread is just a schedule set of registers a Set of Ruby VM state and a copy of the thread stack. That's it Ruby has green threads as a lot of you probably know in 1 8 6 and 7 green threads There's only thread state in user land. There's no kernel context. This is good and bad It's good because creating lots of threads is cheap And context switching is supposed to be fast, but in every 1 8 6 and 7 that's broken. So it sucks Green threads are bad in general because if one green thread does blocking I o all your green threads die And you can't take advantage of multi-core because the kernel doesn't know about all these threads that exist in user land Okay, so they're broken So why are they broken when a context switch happens between green threads and the Ruby VM if the thread stack grew Then the Ruby VM will call realloc and for those of you who are familiar with malloc implementations Most reallocs will call mem copy internally if they have to move the block of memory to a different area Then it was previously. So that's one mem copy that might or might not happen the other two mem copies always happen the entire thread stack is copied to the heap for the current the current thread stack is copy to the heap to save it and The next thread that's going to execute its heap is its Thread stack is copied off the heap onto the current process stack That's really stupid because if your thread has lots of function calls and have a bigger thread stack It has a bigger thread stack the mem copies will be bigger and if the mem copies are bigger you have a slower Ruby So the solution is don't do mem copies. So do that. It's actually pretty easy You just create readings of memory by calling mmap you point ESP or RSP depending on your architecture at the memory region You kick off the thread and then you're done You have constant time stack switching and you only need to copy and update a few registers So benchmarks I use the computer language shootout thread ring benchmark on the naive benchmark You get about a 2.3x speed boost on Ruby 186 that naive benchmark has no like the thread stacks are tiny so it's not even realistic So I added a growth red function that grows the thread stacks a little bit as you can see It's almost 10 times faster And then if you try a naive hello world with Sinatra Mongol you get 1.26 x faster Obviously if in your handler you did something more than just say hello like you know you sequel or do some other garbage You'd get a much bigger savings And if you want to talk more about a little of optimizations find me after time to bleed calm cool And maybe I have time for one question What's up? Yes Was there another question I don't know you I don't know anything about Ruby so I don't know Okay, that's it. Thanks Cool, so I wanted to talk real quick about Google product. I found out about recently. It's called Google perf tools Some of you might know about it actually if you're using Ruby Enterprise Edition They use TC malloc which is part of Google perf tools But one of the cool things perf tools does is it has a built-in CPU profiler and it generates these really nice graphics That show you what's going on in your code So of course I wanted to hook this up to Ruby and see what happened so First thing I did I maintained event machines. I was like, uh, let's see what's going on in event machine It's actually pretty cool. You can sort of tell what's happening in the code You can see all the different event machine functions here's you pull It's reading from sockets. It's accepting sockets. So pretty standard stuff, but it's cool to sort of understand You can see a lot of Ruby internals to defining classes and making instances stuff like that So that was pretty cool and then I figured maybe I can try to fix some bugs with this. So we had a long-standing bug with the event machine when you use threads Alongside ePoll they were big performance issues. And so I ran this profiler and you can see in here. It's pretty big They're right to save context and restore context were taking forever and this actually Was related to the mem copies that Joe just talked about. So that was pretty cool. We ended up fixing that bug So then I was like You know, I wonder what's actually happening in Ruby and so I actually ran this in production and one of the cool things about this is because it's a You uses a kernel timer to basically profile the application You can actually run your production. You can tell it how often you want to be checking What's going on in your process? And so this one was running in a high-traffic production environment. It got 6,000 samples You can sort of tell what's going on Ruby and one of the big things in here was this Match exec which I was able to trace back up to stir sub bang and none of my code used that But it turned out date dot parse uses that because it runs a whole bunch of reg X is round To parse out dates and we were pulling out a bunch of dates out of the database And so I was able to basically put a gdb breakpoint on this figure out where it was and get rid of that code path So this was really useful and I thought, you know, it'd be really cool if I could make graphs like this But instead of C functions, it actually showed me Ruby functions And so it turned out not to be that hard actually and a few patches to perf tools and a patch to the Ruby VM And I was able to do this So it's pretty interesting I can show you some this is rails. It's very big as you can tell There's a lot of function calls, but it's very interesting to sort of see what's going on in rails you can compare that to Merv for instance and Merv it's much smaller Sinatra is even smaller than that You can see there's only there's a bunch of rack Stuff and then only a few method calls that take place inside Sinatra itself So actually last week we were able to use this I was playing around with the Redis Ruby gem and there were a bunch of performance issues It was much slower than the Python the other languages that implemented the clients and so I Ran this profiler on it and sure enough they were using a system timer to Set up timeouts on blocking reads off the sockets and you could tell it was taking a huge amount of time And so we got rid of that timeout and you could see it was much more normal-looking and it was as fast as the other clients And then so this is pretty cool. You can check it out. It's on GitHub. I just pushed it a couple hours ago. I Will go back to it But team and one slash perf tools rb There's a bunch of ways to use it. Basically You install this gem one the one caveat is you have to pass your Ruby installation with this small Patch and I tell you how to do it But once you do that you can just install this gem It'll download perf tools that will compile a patch a blah blah and you can either run it through Ruby by calling This function or you can just set some environment variables and it'll just profile your entire application without changing it and So yeah, you can fix a lot of bugs, but the other cool thing you can do is Just sort of understand how stuff is working So Ruby gems for instance if you just want to you know understand why would gem slow or what is it doing? How is it written? It's really nice to just be able to profile it and get this really nice graph and say, okay This is what's going on and you know Ruby gems in this case is taking a lot of time Basically checking the file system and doing a dirt I glob checking if certain files exist and positive directories That's it I'm Eric Odle. I'm from Seattle Ruby Brigade With the oldest Ruby Brigade on the planet and the most ass-kicking per capita Show me show me one that has more ass-kicking per capita. Am I mirrored here? I guess so There we go. Okay, so I'm here to talk about packaging gems and how you are all doing it wrong So The first thing should use the latest Ruby gems when you're releasing a gem you get better warnings about what you're probably not doing Right better errors for when you're doing something wrong and there's some cool new features that have been relatively recently added So it's one of the newest features is you get new lines in your description so you can make a nice pretty one if you forgot to type something in some of the Gem packaging tools have like fix me or fix or to do and they throw them in there I go and look for those and say hey, you need to fill this in and There's a relatively new attribute licenses so you can go and put in the license names for whatever you've got Not required yet or anything So when you do filling all this out and you get an error It's because you're doing it wrong and somebody did it wrong before and I got mad because I was trying to do some Statistics on the database like find out all the authors and how many gems they released and somebody filled the field out wrong So if you do you got an error fix it If you get a warning you're probably doing it wrong, but I'm not sure so stuff like not filling in your ruby forge project Oh, maybe you haven't gotten one yet. So I kind of give you a break there and just complain at you and So when you are building a gem, I got some guidelines use ho because I maintain ho and so I know it's it's the best The summary in the description are supposed to be different the summary is short It shows up in in gem list dash D with details. The description is long that shows up in the the gems in RSS feed Go ahead and fill in your contact data because people like to contact you about bugs or find your bug tracker on your home page and If you get lost there is documentation you may need to get the latest Our doc to go and generate it when you install Ruby gems So I have a hall of shame for people who did stuff wrong and I'm not meaning to Point out anybody in the room if they happen to be here, but if you are here. Well shame on you So, you know this one here this one the description HTTP caching for rack. I mean come on. You couldn't have written some more than that This one here. Yeah, that's that's totally useful rep description But then there's there's this Romobile dev person who just didn't bother to put one at all and so those are all in that Gems dot Rubyforge dot org index RSS And so this one here is a great one.  I mean I kind of cut it off, but it's great And so your lessons upgrade Ruby gems one three four. I released it this morning our doc to four use ho and read documentation when you get lost And one more thing the latest our doc and the latest Ruby gems now have their own Tasks for rake. So you instead of using the rake gem package task You can use gems package task and instead of rakes our doc task. You can use our docs task itself. That's it all right, so this is a Rails plugin I've been working on it's An active record observer replacement and it's called jit observer for just in time Observer I really like observers. I like though to be able it's to sort of think in terms of aspects So we've got like notification observers and Things for activity feed on we play and so that's the net and those are all activity observers It just sort of helps a segment functionality. This is just a contrived example here that's a cheerleader observer and You've seen this work and so the thing that what that what happens though when You load up this class and the way observers work is that rails will call that instance on them They're singletons calls that instance at initialization time And so it's going to basically load up every observer that you've got In doing so it's going to load up the class that it observes as well Which is typically an active record model which has some overhead to loading that up And so at first when I was trying to reduce our start the startup time in our app I said oh well, you know, I'm referring to The active record model name is a constant there truly to her of course. It's going to load it up So I said are no problem. You know, I know that there's this other syntax I can pass to observe that probably know that I hoped would defer the loading until it was actually used unfortunately active record observer doesn't defer the loading in that case and still loads it up and we've got a Lot of models and a lot of observers and so basically almost our whole app was getting loaded up at startup making for a slow startup Now how you know how much of a difference can this possibly make a benchmarking different active record model loads, you know Are very small models maybe 10 milliseconds or largest one our user class is a hundred milliseconds to load up And if you take that over say call a 30 milliseconds over a hundred models You're waiting three extra seconds every time you start up a console every time you want it you do a test run And it's believe me. It's painful So the idea of jit observer is that when an observer starts up If there's any class at the class that it's interested in observing is already instantiated already defined rather Then start observing it as well as its subclasses if not Basically just register itself as being interested in that class should have come into existence And then so we extend observable to basically look at the registry when Something inherits from when the class is inherited from observable. I look at the registry start observing that subclass and The usage is thankfully very similar just inherit from jit observer instead of active record observer and That's it Think I'm so the reason it's it's early I'm still working on it's because in dev mode and class reloading has some issues and I get multiple observers still attached to Multiple instances of the observers still attached to a model so I'm gonna clean that up if anybody wants to help it's on github and Thank you very much


Floors, yours are now. All right. Thank you, Ray. Hello, everyone. This is the TSC call. It's open to everyone to participate. There are two requirements, though. You need to be aware of the anti-trust notice, which is currently displayed on the shared screen. For those who are online, if you're on the phone, please make it a duty to go and learn it by heart. But there is also the cut of conduct that he says to participate in a constructive matter and a decent matter.  So with that housekeeping taken care of, I wanted to open the floor in case there was any announcements. I didn't have any on my end. I had added one in there. If you reload, it'll come up, I think. Yeah, so I just want to do a quick, this is Dave Huesby. I want to do a quick update on the calendar, the public calendar migration. You can publish your updates. He updated the minutes, not the, so this is the thing. Oh, sorry. Yeah, sorry. I did it in the minutes, not the agenda. So that's what he wants to show you. Yeah, so the calendar or public meetings, if you scroll down there, that top one there is starting to look pretty full. The good news is that most groups have moved over. And if you haven't moved over, you've received an email from me. And of the people who have received an email from me, I've seen probably 80% of them come back saying, yep, we're on it. So I would anticipate by the end of the year we can delete the old one. We're getting really close. The most exciting thing here is the community calendar now captures way more meetings than the old community calendar. And it seems like it was a success. We're reflecting reality much more now. And that's pretty much it. If you haven't heard from me or if you haven't done your calendar and you haven't heard from me yet, you will hear from me very soon. I think there's only a couple more groups I need to email on some special interest groups. But that's it. I just wanted to report back that it was looking like it was a clean migration and took a little longer than we thought. But yeah, that's our course. So the events here in purple are the ones, the meetings here in purple are the ones that have not, I don't know why I just switched to debut, are the ones that have not yet moved? Well, I haven't gone through and deleted all the ones that I got emails for this week. So yeah, I did some of them.  Yeah, I'm just saying, there are some. So please pay attention to your email. You get email from Dave. He's a nice guy. Help him out. It's all right. Did you also get rid of the duplicates? Because like right there, it shows two interoperative discussion at 9 and 14. There isn't such things. Yeah, that seems to be a mistake by the people who scheduled that. I think two separate people from that group scheduled them, and they didn't get the times right. So there was a couple of duplicates I needed to track down. I was just trying to get the groups over first and then make a sanity pass on it. OK, I'm going to tell you first and experience. I have tried to attend some meetings and groups that I don't regularly follow.   They just don't have the calendar right. OK, so which one in particular, you just mentioned one. Which one were you talking about? Application day. The brick interoperative. There's one scheduled for 7 AM and one scheduled for like 1 PM. Yeah, yeah. OK, cool. So it's good to get everybody on, but we also should clean it up so that we don't have duplicates and whatnot. Yep, there's still some training that needs to happen, I think. OK. All right, that's it. Thanks, everybody, for helping out. Yeah, that's good. I was actually wondering what the status was.  Thanks. Anything else? Just as for your information, I expect us to have another meeting next week and then we'll be off for the holidays. So quarterly reports. We just received one for Iris. I don't expect people to have the chance to really look at it. I did. Nothing really strikes me as urgent anyway. So we'll leave it there until next week, at least, and give people a chance to read it and ask questions if they have any. Quilt. The other two have not been submitted. We received an email that quilled that they will publish it for next week. So I'll follow up on that next week. So with this, yes. This is Jay from TWGC. And I just submitted our update today. We can certainly postpone that to next week. People still want to see it. See how many men see it yet. All right, yeah, we'll postpone to next week because unless there is something outstanding, you want to bring it to our attention right away. Otherwise, we can just give people a chance to look at it offline first. Okay, I mean, just probably just one item that we have completed a translation for February 1.4 this week. And we will be discussing how to present that through Read the Docs next week with February Maintainers. So I believe this translation has been going on for a while. And I believe this has been a milestone for our working group. And we will continue to work for February 2.0 and probably some other projects. Okay, thank you. All right, so without further ado, I'd like us to move on to the discussion part of the meeting. There is a... So we will see how far we can go and depending on the time it takes. But we might be able to do more, I don't know. But there are a few items I wanted to bring up. The first one is one that Hart brought up in email. And it's actually, in a sense, I see this very much as a follow-up to an issue that Silona raised a few weeks ago, which we never really got to the bottom of. We kind of left her hanging, I'm afraid. Which was, you know, how do we actually implement all the decisions that are being made during those TSE calls? And how do we capture the status quo of the compendium of all the decisions we've made over time? And so Hart pointed out, it remains difficult. So now we have this decision log, which I think has improved things quite a bit, but not everything is in there. And if you're just looking for what you're supposed to do next, depending on your situation, it may not be the easiest to look through those. And you kind of have to figure out what the title might be and all this. So Hart brought up this idea that maybe we should have a document or a set of documents that are easy to find that captures the status quo. And if we make changes, they should translate into dates to the documents. I mean, that's nothing, you know, fundamentally new under the moon. But I think there are different ways we can go at it. We could create a document which captures everything. So we can compile all the different wiki pages we have out there and kind of make one document. Or we could have maybe a section in the wiki with all the documents parked there as child pages, I guess, of that so that they would all be into one space that's easy to find. So I don't know what the technique is, but I do think there is, you know, the point definitely has merit. So with that, I'd like to turn to you guys and Hart maybe if you want to say more. Sure, I'd be happy to say more. Basically right now a lot of our rules, at least in terms of documentation or conflicting, we say one thing, one place in what is, you know, ostensibly an official TSC document, we say something entirely different in another place. And as you correctly summarized, it would be nice if we had either a single document or a collection of documents with common indexing that sort of were the official constitution or bylaws or whatever you want to call it, where we could quickly and easily refer people to rules. You know, it would just make it a lot easier for people to sort of know what's going on and know the rules they had to follow, which right now is kind of difficult. I think we've sort of, you know, we've gotten by in the past because most of the people doing most of the stuff were the same people that sort of created the rules in the early day. But now, you know, it was hyperledges grown, which is a great thing. A lot of the people coming in and doing some of the new stuff aren't as aware of the rules. So we should make things easy for people to follow. I agree. Silona, I'm going to turn to you.  I kind of put you on the spot earlier by saying that, you know, we had not followed up on your point, which I think was very related to this. Am I right? Is this something the staff can help us with? No, I think so. So there's, I think there's two major options. One of them that I brought up before that wasn't very popular, was moving it into GitHub and doing a repo for it. But I can also, you know, rethinking it, create a special space in the Wiki where I can lock it down, except for comments. And so that, and also put the polling on it so that maybe we can edit it a little bit more finely. And so that way, what I could do is I could try to move it all over into this Wiki space and then we review it as a group, preferably offline first, and then we could come together and vote on any of the little pieces that we need to resolve. Like the fact that right now we've kind of got a catch-22 loop happening between releases and active statuses. And so what we could do, so I could do either one of those. I could do either a GitHub repo where everything would be a pull request or we could put it in the Wiki and I could attach some special things on the Wiki, like first of all locking it down to TSC moments only and making it open to other people, of course, to read and make comments, but they can't edit. And then, and so I could do something along those, along that realm as well. And both of those I would recommend rather than, because like right now it's kind of scattered and there's a lot of different stuff going on. And what we could do is in that space on the Wiki is whenever the edits are coming through, we could ask people to please refer to the decision log as to where this is coming from and where that edit is and cross refer on the Wiki to those pieces. Because I think there's always gonna be a conflict between that implementation and the decision-making because implementations sometimes have to be simplified for people to understand and do what they need to do. So if I do create the forms, there will be a discussion as to what that form, that field in the form is gonna be called so that people feel like it's accurate or what that field description needs to be. So I'd like to have something where I can have more concrete feedback for that. Yeah, thank you. So I agree with what you said. When we got to whether we use a Wiki or GitHub repo, I don't really have a preference, but I feel like if you do the work, you should be first-chooser, but let me ask everybody else. Does anybody have a strong opinion one way or another? I don't necessarily have a strong opinion. I will say that currently on the Wiki, the ones that I moved over from the old Wiki, the governing documents were labeled as such. So at the top of each Wiki page, that's a governing process document at the time of the old Wiki conversion. There's a comment at the top that says, this is a hyperledger governing process document. Do not modify without first getting approval. That might make it easier to move over the original governing documents. Obviously it doesn't make it easier to move over all the decisions that have been made since that point. I was going to say that I don't have a strong preference over Wiki or GitHub, but the only thing is wherever people are going to now, it would be better to maybe stick with whatever, if people navigate to GitHub more often. I mean, we don't have anything for the TSE there, but I want to kind of reduce the number of jumps a person has to make for the websites they have to open and log into. Yeah, it doesn't matter to me either, but what I do want to ensure is that there is either a single document or multiple documents in a single place with common indexing, right? Where we number, you know, there's a numbering system that runs across all the documents. One of the things we've done right now is that we've issued a bunch of different documents and some of them are contradictory. So we need a system that makes sure that doesn't happen. Yeah, I mean, an editor would normally be required to do that. And I have Selona's team is going to be the editors. So the numbering shouldn't be an issue, whichever tool we use. So I don't know, I mean, as I said, it might be easier to piggyback on top of the Wiki because a lot of the content we have today is on the Wiki. So you might be able to refactor some of those pages more easily, but as I said earlier, I don't really care. It's up to the editor who's going to do the work if they prefer one way or the other.  I think that's a bit like, well, we have a Wiki that has a history and that's how we keep track of not people fooling with the system, but... So the thing about, pardon me, munging everything together doesn't necessarily fix it, right? If they're inconsistencies, they're still there. Who's numbered them? No, I agree. So that means the process when I'm hearing Selona's talking about earlier is that, you know, they would go through the process of putting all the bits together and highlighting where they see conflicts. And in any case, we would have a review by everybody to, you know, possibly find more. And then those would be up for discussions and we resolve the conflicts. And the editors would then implement the decisions we make. So all of that can happen either way, but it will later happen indeed. It, I mean, if this is going to be done, though, it seems to me like you just, you need a task force of people to go off and do it, right? It's a piece of work. I'm down with a guiding task force that would make my life a lot easier, Chris. Chris, you've read my mind, I was going to suggest a task force.  And which one was, you know, came first? But I think those need to be raised as the issues to the TSE. Right, exactly.  But I don't think it changes a lot, frankly. No, I think the point was really, you know, they should all be in one space, you need to find. Okay, well, there's also an index of stuff from the TSE. I mean, the other thing is we also have several, like we have several places that describe like the exit, you know, what you need for a 1.0 release and they're different in all of these multiple places. So I just think, you know, maybe I'm wrong, but I think that if we only have this in one place, it will reduce the chances of this kind of thing happening again. Because there will only be one place where this thing is described officially. And it gives others coming in a clear place to go, right? Because they know, oh, this is where the official documents reside. I'll go read through them all. You know, for example, talking with Explorer, you know, he was like, well, what is the thing? And I'm like, well, I said, I don't exactly know. And he was like, what? And I'm like, well, we have all of these different documents, but right now they're somewhat contradictory. And I'm like, oh, we have this vote here, but then it contradicts this previous one here. And then we have this one over here. And I think when you do put things all in one place, it's partially for the TSE, but it's also for the other people trying to figure out what the rules are. If they know that there's one centralized place to go read the things that are hard and fast, it makes it a lot more usable for them. And so this is also a question of usability. And that's why I get a little bit iffy about my interpretations, because I know how to make things usable, but I don't always feel like when I capture making things usable, that it always gets all the nuances that are happening in regards to the TSE decisions. And I think that's, for example, why we had some of the problems that we've had previously is because it's not capturing that. And it's also not creating a good feedback place for them to also give feedback into y'all's processes too, like for Quilt going, but I'm just a protocol and 1.0 isn't a major release in ILP. In fact, it's not even an alpha release in ILP. ILP is at 28 right now and they do single number increments. And so all those different things would be easier if we had a centralized place for communications. Okay, so I don't hear any disagreement. We just need to decide on how we go at it. Silona, since you would be, or your team would be the first in line to work on this, I would like you to make a proposal for next week and how you want to proceed, what you think would be the best, depending on the people, you know, whether they prefer Wiki or GitHub, I don't think we care much. And so I think make a proposal on how you would do this. I think we all agree some work has to be done to put all the, you know, go around and fish all the pieces, put them together and highlight the problem. We do have a process to raise issues to the TSE. If a task force would be helpful, please explain what the task force role will be and we can look at that. I think the first thing to do for me would be to have a task force and we go on the Wiki first because we could start from the Wiki and if we decide to move to GitHub, that's fine as well. It's just that that way I could start with, I could just move everything over and then we could start chopping away at it. And then if we did, and then if we get it to where we're like, ooh, this is really good, then we're not playing on doing a lot of changes, then if we want to move it to GitHub, we could.  I don't know if we want to move stuff yet because it's going to be a work in progress and I don't think we want to have people relying on was essentially a work in progress. I hear you on the other end where we are is not good, well, okay, but it's not, I mean, come on, it's not, it's not horrible, really.  That's okay, I mean. There's some pretty clear places where we're saying black is white. No, I don't think so. Can you cite them?  Okay, but I think Chris's point is fine. You see, Lona, you can just create a new document by copy-pasting the pieces. You don't have to touch the existing one necessarily until we're ready to pull that through. But I think that- That being said, sorry. Start point is the task force to have clear problem statement. And then also outlay the other things that the task force, we said the task force should have like a target date and things like that. Yes. One of the things I hear Chris saying is that assembling the things maybe isn't the problem. And I hear other people saying, well, assembling things is the problem. So it's not really a matter of organization. And then we had a previous discussion about we had clarified some of these rules, but then those clarifications never made it back into the documents. So there's potentially like three different things people are talking about here. I agree. This is why I see Lona, I'm going to get back to you. I don't want to spend more time on this now. Please come up next week if possible with the proposal for a task force that would be helpful to you to make progress on this. To make progress on what? I mean, if I interpret Hart's original thing, the fact is Hart saying, hard of paraphrasing, but the root of the problem I think Dan said as well. For getting the fact that it's spread out not in one place or whatever, there is no, there does not seem to be a actual governance document that people can go look at. Yes, we all agree. There's multiple of them contradicting information or whatever. There is no consistent, straight, whatever. Here's what you read. Go to Apache. They have a release thing. They have a maturity model. They have clear, concise pages. That's it. We don't have it. We all agree that's what we want to do. The question is that we get there. Okay, but then the real thing says, then what's the content of that? So you have one. So who's going to determine the content of what that should be?  Let's be clear. The TSC decides it's our content, but how we make that up can be in two stages. You can have a task force that's helping Silona's team to put the content together, to bring it back to the TSC with some highlighted issues when there's conflict and they don't know which it's supposed to be. That's it. But as that goes on, the task force requires some framework that we can proposal that we agree to. So I say, if we need to have a task force, if Silona wants one, then she should make a proposal and we can agree to approve it next week. Hopefully faster than this. Silona, I'm putting the burden on you. I need you to tell me it's okay. I see the burden, but I'm not exactly sure what is the direction because my inclination is to go and create something like Apache or Oasis where we do have the different guidelines. They are all defined out. They do have a versioning process and all that type of typical stuff in place that Gary was just talking about. Yes, but I said you can either do it on your own, but you said you want a task force that guides you. So I say, if you want a task force, make a proposal for that. Either way works for me. Alrighty, I'll make a task force proposal for next week. Thank you. All right, so let's move on guys. The three other agenda items are somewhat related. At the end of last week, we had a collaborative discussion around the active status and the first major releases and in the context of Bezu and Explorer and whatnot. And I said, okay, I took three issues out of the discussion that we need to address. They are somewhat related because depending how we choose to go on one or the other, it may render the other one's mood. But I thought we should capture those issues and make decisions on them. So the order is somewhat related to the fact that in which I put them in the agenda is really just the fact that I think, if we make some decision, the others will be simpler or go away. So the first one is the notion that basically heart brought up, which is this notion of fact is status. It seems to always hinge in the end around this community diversity criteria. And we've seen again and again, projects struggle with it and this criteria is somewhat subjective. So the idea was, well, why don't we get out of the business of telling the world how the community is doing, just provide them with data as much as possible so people can make their own assessment. But in terms of the process, we don't have to do this anymore. So not doing this in practice when you look at the project lifecycle, what it comes down to is really, I don't think we want to remove the active status. It just means that we really remove the incubation status because essentially you have a proposal for a project and we say, yes, okay, we accept it, you're therefore inactive status. And we basically get rid of the incubation because otherwise the next step is like retired or something. And so to me, that's really translating to removing incubation from project lifecycle. So that's the proposal I put together. I'm not saying I'm actually personally lobbying for it, but I think this is the proposal that came out of the discussion and the point raised by Hart and email in his long email, although interesting. And so this is a bit maybe provocative, but that's the proposal is, what if we got rid of incubation state altogether? That's a terrible idea. Okay, so explain. I second the idea that that's a terrible idea. Again, right? I can look at where we originally were, and look, I'm only one who, like I look at stuff that I find out there that's interesting. How can a project come in? So if you don't have an incubation stage, then that means that you wouldn't bring something in until it meets whatever rules get established in the previous task force that was being established to create rules that are different than the existing rules. Right? Cause the whole thing is you can't, if you don't meet the rules, you can't be a project. Okay. Then you want to expand on your position. Yeah, so I think most organizations, like ours have some sort of life cycle like this with something like an incubation stage. And for me, it makes sense that usually a project has started from outside of that community, often by a single company. And there's an offer to bring that project into the community and expand it with community and sort of become if nothing else under the brand of that community organization. So it's going to always take time to do that. And there's going to be a set of characteristics that it takes on to become part of that community. So I think it makes sense to keep the life cycle for the way that we already have there. All right, thank you. Anybody else?  And then I know we had an exchange in the wiki where on the one end you were saying, yeah, that's pretty good, but I don't think we're ready for it. And then the other you're like, yeah, but we shouldn't get in the business of, you know, assessing community. So, which way do you want it? I'm happy to talk. I don't think we're ready for it, even though you seem to want this. Solota, go ahead. So what I was going to say is I posted in chat a little bit that one of the things that might be interesting to look at is creating, instead of requiring all these requirements to pass into active in regards to community diversity, instead designing a specific dashboard which shows the ongoing reports in regards to that diversity and figuring out what those metrics are and giving all of those metrics to LFIT for designing a new dashboard for us in Kibana. It'll take a while because as you can see this brand, we're finally getting metrics and it's brand new and it's beta and all that, but it would give us an ongoing pulse in regards to how each of those are doing. And then there's also the idea of expanding labs for the incubation process. Accenture is bringing in both of theirs as labs first. I'm hoping that some of their stuff will expand into being projects, but it might be that we look at labs a little bit more in-depth, that these are all just process things that we could possibly look at for handling some of this, but they're options. All right, thank you. Yeah, I think in the past we had looked at just insisting that new projects come in first as labs and then continue on the path. And I think we've decided earlier in the year not to go down that route. Yeah, that's a frequent route and a lot of other organizations is to require labs first, just to basically so that you can do an overview of the code, that you can sit there and do all the licensing scanning and you can do all that stuff long before anything comes all the way over. Yeah, yeah, but I really don't want us to reopen this. We went through this as Dan points out. We made a decision unless somebody has new information they want to reopen this. I don't want to spend time on this. But so part of the reason I brought this up, this proposal to forego the incubation state is because I think it is useful to also record if that's what we want to say, no, we don't want to forego incubation state. And then there's another possibility, which is not there, but which is we could keep incubation and remove the diversity criteria from the active status. And it blurs some of the things we were trying to do that between the maturity of the project and the product, but there's still a possibility. So let's just keep that in mind. For now, I'm not trying to make a decision today. I wanted to bring it up. I'd like to encourage people to express themselves on the wiki. And I just wanted to put it on the agenda so we could give it a bit of airtime and get people to start thinking about it. So unless anybody has something else to say about this specifically, I would like to move on. The only thing I have to add or know is I think it would be a bad idea. If we kept incubation and got rid of the diversity requirement, I think that's one of the major things that we always talk about when we talk about something going from incubation to active. And if we've removed that criteria, then the question goes back to why don't we just remove incubation, right? So if we're keeping it, it seems like we should keep all of it. I hear you and it's a bit of a stretch for me to go down that path because I was one of the proponent of separating those two dimensions of the project versus the product. But I could see a world where you say, no, we are not dealing with the community aspect at all. We are dealing with the project. Is it organized? Do they have the CEI? Do they have the test? Do they have the license to copyright? All this stuff sorted out. Do they use all the right tools and all that? If they do, well, now they are considered to be part of hyperledger and inactive product status. And therefore, they can stop having first major releases, for instance. And then the community diversity angle is left completely outside of this whole thing. And we deal with this in a different way. So Arno, I think Tracy is right in that if you read my email, I go through this and I explain that everything except the community diversity metric is either implicitly covered in the project proposal document itself or the 1.0 exit criteria. So if we just, I mean, well, this is at least my interpretation because this goes back to the documentation issue that the documentation issues across these are wildly inconsistent. But at least from my reading, the only unique thing that the active status brings that's not covered by the others is the community diversity metric. And I would like to say, like, I'm not, you know, this was intended to be somewhat controversial and I'm totally open to being persuaded that we do need active status. But if so, I would like to see a better way than what we currently have to handle the community diversity metric because right now it's pretty clear that people trying to make proposals for active status have no clear idea on what this means. Right. So that's a good segue to the other issues I have listed. So there's one which is, okay, assuming we're keeping the incubation and active status, you know, should we release the requirement for first major release to be an active status? And the other one, which is very much on the point that Hodges touched on, which is, okay, this diversity criteria is a bit of an issue. People have different interpretation and is there a way we could define it better? And I think the point has been made. I've made it myself, Tracy, I think made it on the wiki that, you know, if you come up with any kind of formula to define diversity, you're gonna be able to game it if you want to. So, nothing is bleak, but yeah. I just went and looked at what Apache says. And it basically says what we have, which is the diversity, right? It doesn't give you a number, it's not like some percentage threshold you cross and all of a sudden you're active. It just says it can't be dominated by a single employer and that the members of the PMC are individuals and not sort of corporate, yada, yada, yada. It's pretty hand-wavy, right?  And that the community has got a certain amount of diversity of who's contributing and who's on the PMC and so forth, but there's no numbers. So I don't understand why we're looking for some concrete number, because there isn't one, but there is going to be some clear signal that something is, you know, or isn't. And it's not a matter of going backwards or forwards, it's really a matter of, are we moving beyond just having one company doing all the work? Now, again, I'm not thrilled with where some of the projects are that are inactive status, frankly, right? But that's not really relevant. But at the end of the day, I mean, I guess we can argue it in there, but at the end of the day, but also in a pasty, right? They also wanna, they also say that it's really, you know, reviewing over time that you didn't do anything that prevented that you didn't not allow people to come in. Yeah, right, you demonstrated a certain sort of independence is what they, yeah.  I mean, you can make the decision that, I mean, it's fine if we wanna say that that's the final criteria. I look, I'm not for or against that or whatever, right? I think people need to take a long step back and think about what we have here and think about, you know, the base that's out there. Like I don't actually think, for example, that the consensus team or the Pegasus team, which everyone you wanna call them, is doing something to prevent people from joining Bessu. No, I agree. I think that we have a community base of people who come out here and who just want to use product and not contribute to product. Well, projects because I think we produce products. Anyway, I'm gonna get off that high horse, but I still think that we propagate a false premise of what artifacts are actually released by the projects that are here. Hyperledger does not produce products. And if we wanna talk about releases, we should actually think about what a release is. A release isn't a freaking Docker image. You know, Apache states what their stuff is. It's just the release source code that can be built, whatever, along with a signature file. And projects could create binary artifacts. We don't even have a standard place to put releases. We don't even have a thing that we call a release other than it's a tag or a release number, sorry. Like I don't get, like we don't really do anything here actually to govern release or whatever, tell anybody the state of code other than that you pass the, you know, I think the licenses and everything else. So not sure half the time what we're trying to do here because we don't make everybody follow the same rules. They're really not that clear. And we don't actually have anything defined as what a release is, other than a number. As we start to drift out of the original topic. But they're all related, Dan. Yeah, but what I think what I would like to see is that since some of the feedback that Hart put together is related to the original, the earlier topic that the documentation needs to be cleaned up for our governance model. I'd like to see us go ahead and let that process run its course and then come back to some of these questions about diversity and other clarifications on life cycle once the other task is complete. Because I think they just are interrelated and they're also always going to be subjective. So I think we just end up wasting a lot of time going in circles on things that are interrelated. Meanwhile, we might give ourselves some more time to actually start creating technical topics and getting to those and some of those might be related to what Gary was just bringing up about processes for release artifacts and infrastructure and all that sort of thing. Yeah, one point I will make with regard to what Gary was talking about is Gary, now you are a member of the TSE and you're welcome to make proposal on how you want things to change to make them better according to you. With that said, I want to get back to the diversity criteria. So that's the last issue I have on the agenda. And quite frankly, I don't know what it would be, but I don't want to speak for the Bezier team. Necessarily they can speak for themselves. I see Dano and Grace for instance and so on. What I heard them say is we'd like to have a clear idea of what we are to achieve. And on the other end, I've heard the TSE say, well, we've told you before we need you project not to rely entirely on the single entity. And then there's the subjective aspect which comes into play, which is, you know, well, how do you assess that? So I heard them say, we'd like to have a more precise definition that we can meet. And I'm hearing Chris says, no, there isn't one. Sorry, that's just the way it is. So that might be the resolution. And we say, no, this is the way it is. We understand there is some subjectivity aspect, but we believe there will always be one. And that's how we, you know, it's going to be up to the TSE. Is that how we?   We'd like to, you know, grow our diversity in that site and having direction on where we should head. And if it's maintainers versus contributors versus, you know, number of organizations, that's fine. But I think just a direction is important to us, but you all know that. We're just wanting to, you know, make sure that that was clear from our side. Right, thank you. But that's what I was trying to convey.  I mean, this is the kind of stuff when, you know, my manager used to give me a goal. I would say, how are you going to major, how do I major success? That seems to be a reasonable ask. But so anyone, anything more on this? Just on, what are you, what's this open for? Well, so the diversity, again, I mean the status quo is what it is. We have a definition that, you know, these people wondering what exactly they have to do to meet that criteria. So that's the question is, is there a way to improve that? The other issues that we haven't, yeah, please. So even if it is subjective, even if it is still the TSE, that should be documented explicitly that it's a subjective decision of the TSE, and that's fine. But another thing we would like is, you know, we come up and say, you know, I think we're diverse and you say no, to give the reason rather than what we already told you, well, what did you tell us? Cause maybe we're not talking in the same language for chance, you know, maybe we need to come to an agreement as to what that language really means. Right, so this is why I raised the issue in the TSE. And so now I hope we can capture the resolution one way or another and that will answer that question. So in the last five minutes or so we have, I want to go back to this, the forego active state requirements for the first major release. What about that? Because we have several projects facing this situation and we have some precedent, although I think they were mostly accidental. I can't remember which one I feel like at some point we say there can be an exception to the rule, but I can't remember if we, I thought it was zero, I was told last week it wasn't. So I don't know when that would have been, but is that something we want to open up again? Sorry, an exception to what? Oh, to the criteria that you have to be in active status to the first major release. So I think when the active, when we first talked about first major release, it was discussed at that point that we didn't feel like you need it to be active to be first major release. And then in whatever that decision was that we made a month or so ago, I feel like that line got slipped in there. I don't know that we ever really discussed whether or not we want active state as a requirement for first major release. But yet it was part of the six or so bullet points that we made surrounding whatever it was that we made. I don't even remember what the decision was in total. It was criteria for first major release. Criteria for first major release. So we changed it from what it originally was to include active state. Yeah, I think that was intentional for my recollection. So I'll go back to my, I reached my line that I said on the other one, which is why I think that they're all interrelated. We don't have releases. Can anybody explain to me what a release is here? Other than looking at a tag and some people publish some doctor images. We don't actually have releases. We don't have anything that is called a hyperledger release. Yes. We don't. Okay, where do I go find it? In this context, it means if nothing else the resources that go towards the marketing and the security audits. But there's still no release. Again, there's still no actual release. This is the point, right? So I think then there's also what do people think? What do we read? Okay, go read Apache. I stated this. An Apache, an official software, an official Apache software foundation release artifact is a zip file, an archive file of the source code. And that archive file must contain everything required, well, must build, must build. You can download that source archive and with the tools that's in there. Alongside that, it also has a signature file of the maintainers signed off. And it goes into, you know, whatever, blah, blah, blah, Apache distribution.  But that part doesn't necessarily matter. That's really just up to each project deciding that the code is ready for a release. And they have a second thing for actually doing releases for incubators. But incubators are allowed to do releases as long as they do the stuff. But for example, they won't go under the distribution slash thing, they would go under distribution incubator or incubator slash distribution release. So here's my point, right? Maybe the question to ask people is, what do they actually think they're getting by active and whatever status? And if what they're going to represent with that is if somebody wants to come in and say, this is officially hyperledger certified, it follows all hyperledger processes, whatever it's been indemnified or whatever, that's a whole different statement than stating a fact of we believe that this code is actually at a one over release version. And from this time on, you know, we're ready to, you know, follow Sember going forward. Those are two different statements because nothing should stop and that's the same question I would ask them like, you know what, that's what we asked them on what would they think active status means for them, right? All right, anybody else? Any reactions to what Gary is saying? I mean, you know, to be honest, I hear what you're saying, but I think when you say, well, we keep hammering, we don't have releases, we don't have releases. They don't have the same form as the zip files that are signed and digitally signed and all that. We don't have a release, Arno, we don't. Hold on, hold them tight, I don't care. I'm going to go off fighting on that one. And then if we don't, if we don't agree that, then nothing else we actually do actually matters. No, but that's not the point. I think Dan was right. In terms of hyperledger, the key aspect there is how much noise we make about, you know, when there's a new version that comes up that is tagged, if you call it that way, if you want to call it that way. And, you know, we have had security audits and PR around those so-called first major releases. And so I think that was a big part of why we said we should not only do that for a project that is inactive status because we shouldn't, I mean, there's a real cost associated with that. Right, but again, that's just saying a major release. Again, so what you're saying is you will only do, you could translate that to saying there are, we will, you know, hyperledger will provide marketing for major releases of active projects. Yes, that's indeed maybe a way to work around the situations we're in. All right, so we're almost out of time. I'd like to hear from other people, otherwise I'm going to close the call now and you can all chew on that for next week. And again, I encourage you to use the wiki to continue the discussion on those different points. And if you have completely different proposals, feel free to raise, to make them. Dano did raise his hand. So one thing I'd like to, one thing that is kind of at odds is the whole requirement of going under Semver and having to get approval for major releases. One of the requirements for Semver is if you break a certain level of backward compatibility, you must increase the major version release. So if for some reason a project needs to break a backwards version number, that means they need to go to the TSC, they need to have a full marketing release. So I think to echo Dan Middleton's idea, I think there should be a distinction between a major release and a promoted release. You may be required to do a major release because of Semver, but that doesn't mean that necessarily needs to be promoted. That's a very good point. I was going to say something similar to that. So thank you for saying this. Maybe we are using the wrong term and really associating all of this to this notion of major release. This is just because this is how it happened initially and maybe this has put us on the wrong track and we need to change that. I like the suggestions of promoted release or something like this. And we can free it from whether it's a major release or not, and whether it's from an active project or not. And that might help a lot. So that's an interesting thought. Okay, so we're out of time. So I'm going to close the call on this. I think we have made some progress anyway. So thank you all for joining. And please do use the wiki to try and make progress in the meantime, or do mailing this if you prefer. Okay, thank you all. Talk to you next week. Bye.


If you guys want to be with a chance of winning this resurrection Istanbul and simply drop a like on the video and leave a comment.  Now we'll post two or three videos covering everything worth knowing from this stream so make sure you are subbed so you don't miss a single one. Okay so we're going to start off this set of videos with the new raid weapons, the changes coming to them and everything you need to know because a lot of people still seem to be a little confused about what's actually happening with these new weapons and the elemental burns they will offer and what they won't offer. Okay so all four raids, the water glass, cloister's end, king's fall and the raffle machine, these raids will offer elemental primary weapons but these weapons will be adept exotic versions of the standard weapons which will be legendary and not offer elemental burns so in simple man's terms in the new updated 390 light level water glass you can obtain two versions of these primary weapons one which will be legendary and not offer elemental burns but you can also obtain exotic versions of these legendary raid weapons which will be adept versions and offer elemental burns so the fake ringer can drop as a legendary with no burns but it can also drop as an exotic version being adept and offering arc burn. These elemental exotic weapons though I do believe are only obtainable when the raid is featured as a weekly ritual so you will not be able to get the adept elemental exotic fake ringer if the water glass is not the featured weekly raid. Now I made a video yesterday talking about this new fake ringer we saw in the age of triumph teaser we got a few days back and speculated about it being an exotic version now I don't want to say I told you so but so yes weapons from these raids will offer elemental versions but they will be exotics this includes the raffle machine and king's fall raids which didn't previously offer elemental primaries at all so that's a good thing. The adept exotic versions of these primary weapons from these raids will offer a different look from the standard versions the water glass exotic adept versions will have a silver and gold colour scheme I noticed this with the raffle machine adept weapons too offering a kind of reddish look I didn't notice any real difference to the cross's end and king's fall weapons though but I could be wrong. Other things you may be wondering about like previous raid exotics and other weapons okay so to start the black hammer will not be making a return this is basically the legendary version of the black spindle the black spindle being the year two exotic version of the black hammer the black hammer was a sniper rifle which was amazing it was a legendary and it dropped from the crawler's end raid I think it's when you defeated crawler on normal mode the weapon was so good they remade it as an exotic in year two but unfortunately when the crawler's end raid returns with the age of triumph on the 28th of March the black hammer will not be making a return quoting what they said on stream they said it was too good to bring back the vex mythol class will return with a new ornament and still offer solar burn but changes to the weapon itself have not been made which is kind of unfortunate this is something actually wanting to see happen I mean the vex mythol class for me is a shadow of its former self and I was hoping for a minute buff but it is what it is also changes have been made to the necro chasm this being the exotic weapon obtainable from the crawler's end raid back in year one you needed the crux of crawler to get the necro chasm I'm not sure that's the case now in year three as it was not mentioned by bungee a big change to the necro chasm though which is amazing is the fact that any kill now with the weapon will cause the target to explode before it had to be a precision shot to cause like a cursed thrall explosion now it's any kill you get and I also believe as well it still offers that art burn which is great the touch of manus is back well it didn't really go anywhere but it does have a new ornament which you can see on screen now so guys plenty to grind for come 28th of March which is this coming Tuesday I'm going to do another video covering all the new armors coming at the age of triumph for those who want to see it so stay tuned hope you guys enjoyed the video thanks for stopping by as always subscribe if you are new around here turn on the notification so you never miss a video and I will catch you on that next one


As all of you no doubt know by now, we are in the midst of yet another left-wing bookburning with thousands of conservative and right-leaning YouTube channels having their livelihoods taken away from them or their channels just outright banned. We discussed the absurd New York Times hit piece on right-leaning YouTubers at length during the live stream on Saturday. If you missed it, make sure to go back and check out the replay. If there's any actual Nazi channels being taken down by YouTube, I wouldn't know, but it seems like anyone to the right of the young Turks is being targeted. Of course, the media is now using this to advance their narrative that anybody who disagrees with them is a Nazi. And that was the tone of a CNN panel yesterday where they debated the idea of censoring quote terrible speech. And after you see this, you'll notice that there's absolutely no mention whatsoever of the fact that moderate to slightly right of center people are the ones being targeted and silenced.  But that's really strange because the young Turks still continue to be monetized and have a channel even though that channel is named after a political movement that carried out the Armenian genocide. I could be wrong, but doesn't Sank Ugr deny that the Armenian genocide took place? Notice how they claim that it's only white supremacist channels being targeted. Why not black supremacist channels? I'm aware of several big black supremacist channels that do nothing but produce videos that claim whites or subhuman race of people that should either be wiped out or enslaved. No, it's pretty clear at this point that any channel that questions left wing orthodoxy concerning race or gender or religion or social systems is going to fall under that umbrella of white supremacist. This really shouldn't surprise anyone since we're now living in a world where this guy can be labeled a white supremacist. We're also living in a world where this guy has been targeted by the same forces and demonetized in the hopes that I'll just give up and go away.  Because of this, I require the support of people like you to continue producing content for this channel. I have a passion that drives me to do this, but it's time consuming and as we all know, time is money. If you would like to support me and help this channel grow, please consider subscribing to me on Patreon, subscribe star, or just donating to me on PayPal. And since my YouTube channel could literally just disappear at any moment, head on over to Bitshoot and subscribe to my channel there. I will be producing exclusive content that you won't see anywhere else. Thanks. I find it particularly jarring though that the people begging corporations to censor this are mostly journalists. Are journalists begging or are they calling out extremist content on the platforms?   No Brian, what they're doing is labeling their political opposition extremists to avoid ever having to actually win a debate in their arena of ideas. You see on YouTube, the right is obliterating the left in the arena of ideas. All the right-leaning channels are the most popular and they always come out looking better than the left in debate. That's why left-wingers don't like to talk or debate when you interview them at protests. Sure, they can wave signs and chant slogans, but they're not so good at actually defending their positions. We have a similar situation at CNN where they're getting destroyed in the ratings and thus must now demonize and attempt to censor their opposition. But we're journalists that exercise editorial judgment every day. All the time. Sure. What's good quality content? What's incitement? What's good quality content? Is doctoring footage of Trump so you can lie about what he said considered good quality? Is misrepresenting events to suit your political narrative considered good quality? And what about incitement? You mean like promoting and defending violent left-wing terrorist groups? CNN literally produced a show where they framed a violent nutcase with weapons as some sort of a viable response to political opposition. Oh. I love that these are, uh... I know. I like that. I usually have a couple of those on me just in case. Just in case. Naturally, none of this even begins to cross the mind of this dope. In her mind, anybody who opposes the left or opposes CNN is automatically put in the category of right-wing extremist monster. And anything goes when you're standing up against monsters. Excellent reporting and studies in the last week. A lot of it published in the New York Times. Yes. I'm gonna end this video on this last bit of dumbfuckery.  It's pure propaganda meant to demonize their business competitors and their political opposition as a gateway to the Nazi party. It's the completely contrived story of some white guy who was allegedly radicalized by quote, far-right YouTube channels like Steven Crowder and Philip DeFranco, and was eventually saved by the superior and virtuous left-wing YouTube. It's even crazier than it sounds, but you should check out our hour-long live stream on the topic from Saturday night. I'm also doing an exclusive bit-shoot review of that article, so head on over there and check that out. That's all I got for you today, folks. Make sure to like and share, and I'll see you next time.