this is a talk on extreme containment measures phone and language will be might be used for those who don't know me an example so i mean i don't know how like and i've been involved in one way or another since roughly two thousand and five and obviously with my first touch points for the gnome community have in panic no and buttons it up i spend a lot of time filing and three icing bugs and my character has level to well level reach the whole forty three in the massively multiplayer online knowing that is complex a lot so in this talk i'm going to present my analyses of the big issues that we face and proposed methodology and a set of recommendations to solve these issues i have some rather strong opinions and of course those are just my suggestions so if you think that what i'm saying is completely evil well then feel free to rage against my medical is an and i'd the talk is pretty going to be rather short so we should have plenty of time to discuss in the i would like to have a big debate at the end if i don't have some kind of reaction i probably failed and then we just have to go to the beach or something but well way there's no beach here so i have some assumptions that some of you might already have seen some of this stuff that i wrote set couple months ago but it's really if you want to know where mike kind of philosophy comes from a summary of mine ways of thinking i have been strongly influenced by the mythologies like getting things done or involve zero which is basically just getting things done but apply to an e-mail really so if you haven't read those things i highly recommend then in if you're the kind of person who likes to be organised and so all based on actually the sound doesn't work a so it doesn't matter anyway so those books are interesting and everything but if you really think about it the core essence has always been about what's been going on in the world of manufacturing for the last thirty years so lean and just in time manufacturing is it's a fascinating concept and well i was doing studies in management i started thinking about those things and how they applied pretty much everything we do in life from your personal to do this to managing a candy factory to managing a software development project so and when you think about it everything is about slow about good and adapting to change so you have something close in and you have stuff that those out and you want this to be constant and so it and and you want to avoid committing stuff because as soon as you have to make stuff well things will below i can guarantee and and there's this interesting thing from one of the books i've mentioned previously is the only keeping that you should be retained from in the gold writes a book in the context of but management is this excess invent three is the liability it's not an asset and in that in the manufacturing world actually that means the stuff that you have produced and now you think well okay wait that's just wrong the product is work something right we're gonna sell it and then so it's and it's not set it's natural to think that way except that you don't know the market constraints until useful that you're not selling it me immediately if you were you wouldn't be in the inventor E you will you would you would just be selling it and making a profit and so what this means is that is stuff that just sits around until it might be sold and then it devalues it waste this resources and it clogs up the system so in our context that means connective wait and that's a concept that i took from getting things know that don and you think things know miss we can also that by the weights so it's is it translates to wasted time searching for existing but reports split attention on duplicates wasted energy looking for well it's good same bugs that were kept open or because we were close to soon and it all it's also feels like an incorrect indication of the quality of your software and we have a problem here we are accumulating excess eventually lots of it and fast and it's slowing us down of course pretty much every project out there has this problem and you to the fact that you know is such a large ecosystem of this can ecosystem projects that have been going on for over fifteen years well we and we don't have unlimited the mat time and manpower the consequences is just going exponential so allow non you're thinking well okay maybe is just exaggerating so let me show you the problem we have in a very concrete way this is the global amount of open but report thinking on since the beginning i'm actually and missing data between two thousand and one or two thousand and five but i'm pretty sure the amount of focus has not drastically going down during that period so i just put some random guy on a bike right feel the whole so that's forty five thousand bug reports that we have open right now and i'd argue that this is not sustainable this stuff is often times so old and they see that doesn't even represent to real amount bugs that users experience so let me this is with it this way i don't know the but you but i as a user if i was feeling the weight of forty five thousand bucks every day i wouldn't be using the computer that's all i would probably be crying in a corner and so well who's responsible for this would we point fingers to well pretty much everybody to some extent it's really easy to let things slipped and rest of the time and so i'm going to show you some examples and those are not meant to be finger pointing or anything like that they are just meant to in the illustrates how different projects and all their bug infantry differently and well i think it's quite interesting really so first case it is really it was fairly nice the under control is a can see and then the port to webcat happened and many things changed including the apps branding and positioning because now epiphany is this really mean stripped down a way more than it was before so that's a different positioning you don't have the same kind of features that want to deal with and well we can infer that the green bugs were filed by the developers right from the start because they were that is new which means conferencing you know and we see that we got the that green curve gradually declining in importance in the past few years but not that much so well gradually declining in absolute terms so some of those very old bugs that these files from the beginning some of them have been fixed in that's a great thing but there's this really big red line that's goes that's going on and i think that in the case of epiphany we have this huge cleanup opportunity because support of web to work it changes everything changes everything the backend so all those bugs were reported back when epiphany was running on a call the well the last firefox that something engine they are they need to be retested or in many cases than we know that they are fixed we so you have this cleanup opportunity and there is also the fact that the you why is so much simpler and does not want to do everything that the old you white one did that's also another clean up opportunity so that was the case that you have epiphany and well and that is just a generic example is fairly under control that bill died but the end that was me because i started thinking up some stuff but then life happens and i didn't continue that much so it looks like a typical glow module and evolution is a special case notice that actually use the new status and that there was this amazing improvement somewhere in the somewhere in guess advocate and if i'm not mistaken a big part of that is thanks to on the clapper is he here yes is that true well thank you all day i you that you that one and so but there's still this huge amount of bug reports left to deal with so that defined ahead all day and no show away i have many things to say about the way the project handle it's bug reports but i fear might hurt some feelings so maybe i'll keep that for discussions in the hallways or maybe at the ways question period at the end so but anyway it's gonna it's gonna just flow naturally with the the techniques i'm suggesting in the rest of the stock and G T K it needs help it has a lot of old bugs so you as you can see so over two thousand to a two thousand five hundred no actually you have to you have to add up the lines actually it's not there are cumulative so it has a lot a lot a lot of old bugs that are certainly not relevant anymore it basically needs an army of testers and i from a net contributor once said to me i am not subscribe to did you to give about males i don't look at the bug tracker when it comes to fix in biology books in G T K whoever catches me first on our C in the morning wins we have a problem so and of our case to illustrate is a bit to be which is also another special based i'm arrogant enough to think that this is kind of how things should be at least i like at least like this or better and this the new bugs are more numerous than the unconfirmed bugs and they are kind of kept on the control so i the thing that i actually haven't mentioned is that all those graphs they are not on the same scale the are all related to their own their own total so evolution you went from like five thousand to three thousand to a little bit nicer i think it's about the thousand now and you take a as you could see was the at two thousand five hundred B T V the scale here is a hundred and fifty the upper bounds so if you add things up it's about two hundred two hundred and forty fifty bucks half of that is the feature requests feature requests and and this graph is going to eventually come crashing down in the next be to be really switch it will happen any day now as i close a bunch of those old bug reports and i ching this advertising you might be interested in attending maybe to talk tomorrow at the end of the for details britain box is another it well it's in a similar situation to G T K it needs help it has at on of potential duplicates and in change book reports i certainly don't feel like i'm encountering a thousand bug it i thousand four hundred bucks when i'm listening to my music library so i don't think there are that many buttons thing with some box it is nobody closest box i think so well let's talk about quality and let me shut up or while and think of a bit a while what is quality this is an open question for you folks to answer how should we can own define how we measure quality anyone really it's all about the users in the the company incoming number of bug reports i wonder any other ideas static and the statistical analysis well it doesn't crash the you know of an application that doesn't crash ever it works once should it should it well how do we know that we're that we're better off as a whole compared to two thousand five in any case we can probably agree that the amount of bug reports we hadn't noble to that is not a strong indication of the quality of our software and this is a partial quote from joe was able ski at some point you start wondering what is people love my software one hell have so many but reports open then there waiting increase crashing down my soul it in this article so argues that force the actually advocate for something pretty rack radical he says do not allow for more than two weeks in fixing time of bugs to accumulate in the bug database so if you have more than that you stop and you fix books until you feel like you're fixing stupid bugs and then you close all the remaining but reports and he says don't worry december break this either bogs will come back okay that's a crazy radical thing to do that's not what applying to our if those as an as open source developers typically especially if we're talking about volunteer work where we don't necessarily have that seeing the regularity the manpower to fix bugs at the steady pace so how do we do it you're thinking maybe well okay that's easy if you're only dealing with feature requests or about then what do you do with longstanding bugs or what do you we do with the pickets well we need to get serious about control and by see resign mean many things the right from the cards and philosophy in the manufacturing will and cards and is basically this is also called five S system sadie sate on say suppose and stick it so then it's okay it's translating to send it sizing which is get rid of stuff organising cleaning maintaining the D V cleaning less and disciplined enough to catering this methodology we have forty five thousand bugs we need to start cleaning now and we need just keep cleaning as we go in the future so now we can apply some other things like inbox zero and box there was basically just a mindset we say what is this mindset we're dealing with email but we can apply to but management to some extent when you receive an email you can either delete it you can transfer to somebody else you can respond immediately or you can market to be processed later because you're waiting on something else to happen in the universe or you do the action that you email sender requests and we can apply that to are but mythology and basically decision-making boils down to three possibilities it's and you could see that need info is not actually this that there but it's really important you have to use meeting full aggressively you helps you identify obsolete bugs by simply running a search for bugs that have been in them in the info state for over two months or something and confirming bugs is actually important very few projects just actually confirmed the box one thing i would strongly at of okay for tech actually is that we replace the new statist by conference in can on box it up even though many people will probably throw rotten fruit and me for saying that because i don't know many people don't believe in confirmation about this but i think it could make an add difference psychologically speaking because indecision is power lights is if you leave at seven years old bug report open because it's in unconfirmed states and because nobody has made a decision it's not gonna help to attain a learning process so whatever possible we want to clear yes or no if we don't decide now we probably never will there's a question over there we have a microphone you can shop and and are given the microphone or i will read tweed the question hi i'm i guess possibly five maybe ten percent of the box it might box of the overflow folder where i've set they lock and so this picture and i say sorry ask a not about and they rip in the back and i say still i think still not still not gonna happen close the book that in the park and i just pick of well magically we box with the the report just keeps reopening them i think that so that's it comes that a little bit later actually that's with the previous like to some extent if it's a bug well okay a bogus should be fixed but if it's a feature requests well there are three types either you agree with the thing is a absolutely i wanna do it so yes confirmed and everything if you are confident that you can actually fix it either your like not this really doesn't fit the vision so no out of scope sorry and there's a middle ground where side while i could like this feature but i don't really care that much and i don't have them apart is that your case we should be constant so in the case where they suggest something this we could have anything that we could have and you say catches welcome and then nothing happens just close it so what i would do is i would markets as enhancements with and i would highly it with the goal of help want to do and everything should but then is so it's not gonna as an enhancement it's not about report and at some points after three years you can't we all the patch or after i'm saying three years but maybe after one year or two years if there is no clear indication if it's like one guy in the in some faraway country we carry can strays it down so instead of twenty people saying plus one plus one plus one and then you could say well these your open this bug report this enhancement request when you have a patch because i cut but then comes in the can replies which i will cover that there there is out in with a question but i know it's difficult to come back to the question we do it in the form a we had a czech cult your job a dish in addition to the enhancement and we provides help to get it it's a great it's like you know which files to you have to add it's by do you have to start then the other thing to remember is that it's probably not useful to have five hundred yes would like this but we're not gonna work on that box because it's not helpful from you contribute is either like is much better to have these of the top twenty things we want you to do if you wanna contribute and just maintain that list and you know we will still be in the database even if you close then you can still kind of search for close but i with no love the something the not gone forever so you can you can manage a list that one you could indeed have some kind of special search for bugs that well feature requests that times out because nobody has a bad it could be done the questions i sell continue glorious past so here yes i don't know whenever possible when you it's not possible use this wonderful thing called time to figure out if there is actually real interest that can help you i mean part of the open source thing is that we want people to be annoyed enough to contribute to our project so if after three years nobody there is to make a patch for it maybe it's not important enough maybe it's not annoying enough you either oppose it can from and something else and using target milestones is actually pretty important and useful to and it allows you to know but maybe that's just a personal thing i do with the P T V about it allows you to know which bugs were fixed for web version exactly and it also helps a lot when you're releasing because you just have to search for results bugs that were attached to a given milestone and then you write the release notes or just point to the link saying that was where the bugs that were fixed drink for this release even if this book was ten years old it was finally fixed for this release and you can see all that kind of information directly in the bug tracker so when i was saying about yes-no fix it immediately are deferred or say just know when i say fix it into the i do mean fix it and then controls the bug report unless the feature is still broken and i mean really broken let me illustrate this but i need sound for this to work and i'm not sure i do have sounds or is there anything that controls the somewhere here not normally well one what lot of speakers all i could like what microphone that's gonna be also that was a former so you're that alright ghetto blaster microphone like so what do i mean by this you've got a fixed for about that you have committed to your master brian what you are a little bit unsatisfied with the cost quality then you add some comments in your code and a to do item on your personal this but do not keep your bug report open insisting because when you'd like to come is a better implementation you don't show some by the way to not close bugs until the fix has been marriage the main development branch is the fix is only committed to a separate branch well you can market as assigned another underused but reports that is and then you can market is assigned until it goes into monster and of course you said yes find email because that's pretty so no is actually pretty famous for daring to say no out of scope but saying you know without ending up on the front page of slashdot is actually a very delicate art you can't implement everything out there due to insufficient manpower or because feature X would go against projects vision or intended user experience and for that i can't miss i age helps a lot people we with will respect your decision more if we know your constraints and why you have to say no so by can message well i kind of message is the message that you composed for something that's basically as if you for book reports if there is non available you create one and you save it as a text file on your computer for reuse that way you don't end up like being super frustrated of always having to type the same explanation to why this cannot be done or why this will not be done and you don't and i'm just saying nope and ending up on news sites for example you could have something that was like this hi and thanks for reporting this bug P T V score is currently being replaced by the distributing services which is a major undertaking an overhaul and we suddenly can't investigate much bucks the talk sure on the traditional core of it see we will revisit this a by the next please which will use gas and hopefully your issue may be gone by that new release otherwise we will appreciate your help in testing it out thanks so that's the kind of thing i don't want to read be typing on the spot ever again so i keep it as a text file on my computer so you should you should there we do have ten for advising them back to that but they don't necessarily corner the specifics or of your project so it's nice to have those custom kind replies on your computer for example for the meeting full stuff with custom debugging instructions for your project and searching is every nice thing is you can see the bottom of the screen i have a lot of special saved searches so that's that seems a bit silly but it's really useful in taking away the pain of money string the bugs and the patterns and the stuff that for example i want to see all the bugs that are older than four hundred days and that have dot have any patch that's use of useful for finding that and not just a little edits hyperlink in the book title like and it's super hard to spot actually not many people know it actually exists you can use that to rename the bug report as the same time as you are commenting other changes and then you can use a book good bug title slash summary so you can make a complete sentence with exact words and choosing the right words improve fired see it makes to bug user to find prevents duplicates makes coffee so it's actually i go i go a little bit tougher and that i use synonyms like and i think of all maybe someone is gonna think of that for when searching so i use multiple words that mean the same thing in that title for example some example of good and back well good and bad but titles all the first one is not that compelling well old one was share my the stuff the item in the menu lot of life you know is a registered hundred immensely five i nine we need to do all initially share make this a menu item if you know is a well the second one is more interesting it's a bug in them to this U which was titled show where files come from no or maybe it was just what i thought at first and then i thought well i'm i need a better it but title instead provide context allow users to know the path slash location from where files and folders and search results come from so that way if someone searches for past or location or search or results or context you they're gonna find that a real easily and some other examples for example the first example people searching for words such as sound or ring tone or call will find that about report easily the the one near the middle if you search for G E mail i not message account you're gonna find this but before so keywords a really nice i use gnome love all the time i don't know might is normal of all the time is make is is really easy to just type every bugs that are kind of easy that you don't really have time or motivation to tackle or that you actually you could do it in two minutes maybe for feature request but you have more urgent things to do and you kind of want to use them to lure people into contributing your project so i do that's i'm not sure about help want to but i think it's just for stuff that you are yourself unable to tackle and the distinction between usability and you want reviews of that youtube it send clear but so i think the you wire if you is when you want to call out and they to the rescue and there's a bunch of other keywords that are less use so divide and conquer don't do it on if possible do it in teamwork maybe would but T I's days maybe to google hangouts or but fests i don't know if that just actually something a word there is also a to fill it moves are made the script once some time and to force him to revisit ten bucks a day i think this is five bucks a day but if you read the code this is actually it's ten bucks today so you can grab descriptive your if you need extra something in your face and well to recap basically you want to need info everything your hands for unsure about in six months with that special search query you close any remaining needed for that has not been clearly answered if the norm box quite doesn't do it for you for free if you are a developer who knows the project vision well you have to show some courage and say no or patch or it won't happen and if you're not a developer or if you like experience but have jobs most project of appears would be very happy to have any kind of help interesting the bug so you can ask for yes slash no decision on any given bug and then that way you getting some experience in know what's the vision what and whatnot so you also have to do render regular cleanup sessions every few months or when there is a major technologist goal or idealistic all change going on so that means that you have to know the know the big projects on your road map and see that fortunate is popping up such as hold on touch bugs core engine changes like P T Vs switch to T S or if you can use which to web get and or big you why redesigns stuff like that and you can run search queries to search and verify all the bugs that are older and four hundred days eight hundred days chances are that they are fixed already they are obsolete let's go duplicates or just plain crack and i mean like wracked is probably like requesting features from the eighties that zero point one percent of users actually care about that's it it's nothing revolutionary it's just i hope that's somewhat useful now you can probably questions comments and insults and i'm pretty sure i must have overlooked or focus in something and that's have a chance but i also you have very nice lines and you sounds to do you made an example that people don't even know that you can change the talking book so but i don't think that's the only problem not the only a interface problem of books of the i think so it's a all those stuff would improve the blue then would it looks a little buttons took something move gonna thing is that you would have to find the bug tracker that is much better that numbers about any is if we an open source project actually free an open source project and can handle huge buffaloes and or the sysadmins are gonna hate us and i mean these days many people many projects smaller projects the just to the but that issues management on get hub or stuff like that but that's proprietary i don't i don't think it's open source at all and some do it on know nobody uses source forge are anymore it's so crap and the thing i few years ago i have was actually looking for a bug tracker that would be at least equal in quality and versatility to bugs it out and that could actually installed without that phd on and my home server and i didn't find anything and actually a book sellers was it a bit too complex for me to install but i didn't find anything that i like really much more than books like there's bookseller lunch but this is it's okay but many people created and there's google codes which is not open source i don't we don't really have i don't know if we have an of the native out there if so why not consider it out of time anyway if anybody else has questions or fruit rotten fruit to throw i will be in the hallway that's it