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