Wednesday, 2016-02-03

*** mrmartin has joined #storyboard03:53
*** jtomasek__ has joined #storyboard05:51
*** mrmartin has quit IRC06:09
*** mrmartin has joined #storyboard06:09
*** jtomasek__ has quit IRC06:13
*** mrmartin has quit IRC06:15
*** mrmartin has joined #storyboard06:16
*** mrmartin has quit IRC06:16
*** alexismonville has quit IRC07:14
*** mrmartin has joined #storyboard08:29
*** jtomasek__ has joined #storyboard08:35
*** alexismonville has joined #storyboard10:06
* SotK goes to read persia's reply10:18
*** mrmartin has quit IRC10:33
* SotK replies, and apologises in advance for it becoming somewhat like a train of thought11:16
*** mrmartin has joined #storyboard11:45
persiaNo worries: my posts have all been that way.  The issue us that we all agree on the need to provide a means for managers to assign dates, and that it should work for multiple stakeholders, but this is *hard*. :)11:45
*** alexismonville has quit IRC11:52
persiaI like Zara's table, but need to think more to respond to the other ideas.11:53
ZaraSotK: QUICK, IMPLEMENT IT WHILE HE'S NOT LOOKING11:53
Zara:P but yeah, I think we're going to discover all the ways it's insufficient *by* implementing it11:54
persiaAnd it would be frustrating to spend months implementing something that needed to be redone.11:55
Zararight, but less frustrating to spend a week or two implementing something that needs to be redone.11:55
persiaYes.  I think iterative implementation of pieces if it makes sense.11:56
Zara:)  ease-of-implementation factors in for me when trying to get an idea of how much of the theory we should look at before and after implementation, just in general11:57
Zarabut I also don't want something too rigid to change, that doesn't really suit anyone11:57
persiaI wonder if perhaps the story should be written behaviorally, and we can extract scenarios on which we agree for experimentation and feedback.11:58
persiaYes.  Flexible is good :)11:58
Zara:) I think that might work later on, but I'd like to know which scenarios are more likely, first-- which we may only find out via complaints. In the meantime, I defer to SotK on what's going to be difficult to implement. I think we should steer clear of anything with more permissions, for now, because they always seem to be a pain.12:04
Zaraso I want to be sure people need a solution involving them, first.12:05
Zarahm, 12:09 and I still haven't managed to make breakfast12:08
persiaFood is good.  Helps thought.12:11
Zaratbf I'm not sure how nutritious https://www.britishfoodstoreonline.co.uk/product_images/a/911/triple_choc_crunch_500g__83559.jpg is12:13
*** alexismonville has joined #storyboard12:27
* SotK wonders how Zara's table relates to per-board targets12:29
* SotK expects we don't want due dates leaking from private boards12:30
Zaraah, the table was for deadlines, targets were separate (at the time I was thinking those were per-card)12:30
Zarawell, applied per-card, set per-board12:30
SotKhmm, so how ydo you pick which deadline you can't create a target later than?12:31
SotKis that the "filter by creator" bit?12:31
Zarayup12:31
* SotK sees clearer now12:31
Zarayeah, 'whose deadlines do I care about?' (maybe then defaulting to soonest deadline if 'all' is selected) there's probably all sorts of horrors that I haven't thought about yet.12:32
*** mrmartin has quit IRC12:34
Zaramaybe a solution for the which-dates-on-cards problem is to make it configurable by the user, eg: 'show target dates' 'show deadlines' 'show both'. though then you might get people mistaking target dates for deadlines, and thinking they don't have any... so the view would need to account for that12:38
ZaraI'm picturing 'BTW YOU MIGHT HAVE A DEADLINE CLICK THE DEADLINE VIEW CLICK IT CLICK IT CLICK IT' in a blinking comic sans marquee12:39
SotKI think that when picking between a per-board target and some deadlines, the choice is "show the closest date"12:39
Zararight, but then it's kind of pointless to be able to set one later (unless 'just targets' view is an option that's always deselected by default)12:40
-openstackstatus- NOTICE: Infra running with lower capacity now, due to a temporary problem affecting one of our nodepool providers. Please expect some delays in your jobs. Apologies for any inconvenience caused.12:41
SotKhm, we still want to set targets later than deadlines? :/12:43
ZaraI don't. I think persia did, afaik we hadn't settled it?12:44
Zaraoh, but that's assuming a global deadline12:45
* SotK asserts that if you can set targets later than deadlines then deadlines are just targets which aren't related to a specific board, and so one of the two would be pointless12:45
Zarayeah, it's fine, I was thinking of deadlines that weren't filtered by creator12:46
Zaraassume targets can't be later than the filtered deadlines12:46
Zaratricky if users pick one filter, then another12:46
Zarait'd have to be possible to *set* a later target, but only *show* it if it were earlier12:47
* SotK is also worried about this getting too complicated12:49
Zarayeah, there more I think about it, the more I'm inclined to think a user should just be able to toggle between deadlines view, targets view, and both, and sb shouldn't insist either way whether targets must be earlier or not.12:50
Zaras/there/the/12:50
* SotK is beginning to think we should get rid of targets entirely12:51
SotKand have your table of due dates, each asserted by different people12:51
SotKthese dates can optionally have a name12:52
* SotK pauses to articulate his thoughts properly12:52
ZaraI thought it'd be easier to do that side of it per-board, because then there's no risk of six dates for the same thing with different spellings12:52
Zaraotherwise when naming a due date, you may need to perform a search as the user types, to avoid duplicates, and yeahhhh.12:57
Zaraafk while I walk over, brb12:58
*** openstackgerrit has quit IRC13:02
*** openstackgerrit has joined #storyboard13:03
Zaraone thing I'm wondering is if stories should double as targets13:11
Zarathey get used in a bunch of different ways, which muddies things13:11
SotKhow d'you mean?13:11
Zaragimme a sec13:18
Zara+-------------------------------------+13:18
Zara| Target name|Task ID(s)  |Date       |13:18
Zara| (story?)   |            |           |13:18
Zara+-------------------------------------+13:18
Zara|Make Demo   |[22, 33,41] | 12.08.17  |13:18
Zara+-------------------------------------+13:18
Zara|Fix network | [99, 105]  |  03.03.09 |13:18
Zara+-------------------------------------+13:18
Zara|Draft table |     4      | 06.01.15  |13:18
Zara|            |            |           |13:18
Zara+-------------------------------------+13:18
Zara|       etc  |            |           |13:18
Zara+------------+------------+-----------+13:18
Zarab/c that way you'd link multiple tasks... so it'd make sense to then just have dates as metadata for *stories*. but it's whether the names of targets could overlap with the names of stories like that...13:19
ZaraI see stories as targets anyway and think they just get misused when people mistake them for tasks, but ymmv. you can't have the same task in multiple stories, so I think that'd fail because you could easily have multiple targets a task worked toward13:20
* SotK would be concerned about that encouraging people to create giant stories of vaguely related tasks too13:21
SotKalso, we can currently put stories in kanban lanes, so it would probably get confusing if they were also a representation of the due date13:21
Zarayup, the kanban lane argument wouldn't stop me if it were the only one (since we could change the lane behaviours) buuuut I think there are a bunch of good arguments against it13:22
Zara+------------------------------------------------+13:23
Zara| Target name|Task ID(s)  |Date       |Private?  |13:23
Zara|            |            |           |          |13:23
Zara+------------------------------------------------+13:23
Zara|Make Demo   |[22, 33,41] | 12.08.17  |  YES     |13:23
Zara+------------------------------------------------+13:23
Zara|Fix network | [99, 105]  |  03.03.09 |   NO     |13:23
Zara+------------------------------------------------+13:23
Zara|Draft table |     4      | 06.01.15  |  NO      |13:23
Zara|            |            |           |          |13:23
Zara+------------------------------------------------+13:23
Zara|       etc  |            |           |          |13:23
Zara+------------+------------+-----------+----------+13:23
Zaraidk if we'd want less of a yes/no and more of a 'viewable to x', but that's getting into permissions, so that's where I run away.13:24
Zarahah, forgot 'created by'...13:25
* SotK thinks we want 'viewable to x', else it won't work in shared private kanbans13:27
Zarayeah... I'm wondering if it's wise to have the task IDs in the table13:27
Zarasince they're already in the board13:27
Zarabuuuut idk how else to relate them so :S13:28
Zaraeh, I guess you can have multiple targets per board, ignore me13:28
Zaraunless we're gonna start doing one board per target, it's relevant.13:29
* SotK thinks it is useful to have targets usable in more than one board, since that is part of what "hard deadlines" were solving13:29
SotKI also think having both targets and "hard deadlines" will be too confusing, and everyone will just use targets and talk to each other13:30
SotKor everyone will use hard deadlines and annoy each other13:30
Zara+------------------------------------------------+-----------+13:32
Zara| Target name|Task ID(s)  |Date       +viewable  | created by|13:32
Zara|            |            |           |to        |           |13:32
Zara+------------------------------------------------------------+13:32
Zara|Make Demo   |[22, 33,41] | 12.08.17  | [SotK, Z]|     bob   |13:32
Zara+------------------------------------------------------------+13:32
Zara|Fix network | [99, 105]  |  03.03.09 |   *      |  Aeris    |13:32
Zara+------------------------------------------------------------+13:32
Zara|Draft table |     4      | 06.01.15  | $creator |  Z        |13:32
Zara|            |            |           |          |           |13:32
Zara+------------------------------------------------------------+13:32
Zara|       etc  |            |           | $team    | persia    |13:32
Zara+------------+------------+-----------+----------+-----------+13:32
Zara(idk if in practice $team would just be an array in the table, just including it as an example...)13:32
SotKgetting there, but I think that they should also define a set of people who they are editable by too13:33
SotK"$oldPM created that due date, so now $newPM can't change it to account for the changes in the plan"13:33
*** mrmartin has joined #storyboard13:35
Zara+------------------------------------------------+-----------------------+13:35
Zara| Target name|Task ID(s)  |Date       +viewable  | created by|editable   |13:35
Zara|            |            |           |to        |           |  by       |13:35
Zara+------------------------------------------------------------------------+13:35
Zara|Make Demo   |[22, 33,41] | 12.08.17  | [SotK, Z]|     bob   |    bob    |13:35
Zara+------------------------------------------------------------------------+13:35
Zara|Fix network | [99, 105]  |  03.03.09 |   *      |  Aeris    |Aeris, Cait|13:35
Zara+------------------------------------------------------------------------+13:35
Zara|Draft table |     4      | 06.01.15  | $creator |  Z        |  *        |13:35
Zara|            |            |           |          |           |           |13:36
Zara+------------------------------------------------------------------------+13:36
Zara|       etc  |            |           | $team    | persia    |           |13:36
Zara+------------+------------+-----------+----------+-----------+-----------+13:36
Zarayeah, the fun thing is that you'd have to make editable_by role-based, in that situation13:36
Zarabecause otherwise $oldpm has to know ahead of time who $newpm would be13:36
ZaraI'd imagine most of those would be 'selected names + admin', actually13:36
SotKwhen we get round to adding teams, that will provide role-based-ness I think13:37
SotK(a $project_name-managers team have edit permissions)13:38
Zarayeah, in the meantime we probably want it to be editable by admin by default.13:38
* SotK wonders if created by is useful if we also have editable by13:39
Zarawell, editable_by could theoretically be *13:39
Zaraso wouldn't work as a filter13:39
* SotK offers http://paste.openstack.org/show/485850/ as the required changes to the various places in the database13:40
SotKhmm, I don't know if editable_by being able to be * is all that useful13:41
SotKsince that is just the same as having a single due date editable by all13:41
SotKie. It is meaningless because no-one knows who thinks that date is the due-date13:41
Zaraah, actually, editing means created_by is ambiguous13:42
Zarabecause does it apply to making the target, or assigning a date to the target?13:42
Zarawell, it'll apply to making it, but the interesting bit is assigning the date...13:42
Zarabtw ## Due date in that example doesn't include task IDs?13:43
SotKheh yeah, I thought it through from the other direction (tasks are related to due dates bidirectionally, I just didn't make that obvious)13:44
Zaraoh yeah, just saw at the end13:44
SotK(so we'd create a task_due_dates table which maps tasks to due dates)13:45
Zaraif it's bidirectional then I thiiiink it looks fine to me13:46
Zarayou know the db better anyway so your representation will be more grounded in reality xD13:46
ZaraI just wanted an excuse to use asciiflow.13:47
SotK:D13:47
SotKI think we should provide the ability to "add" existing due dates to boards, and then those due dates are the ones used in the board13:48
SotKif that happens to mean a task in the board has more than one due date, we display the closest one and also some indication that there is more than one13:48
* SotK wonders what persia thinks of all this13:50
* persia reads backscroll13:56
Zarabtw, searchable tags are in review https://review.openstack.org/#/c/274723/14:05
persiaI like the idea of one representation for targets and deadlines.  I agree that there should be a way to handover a role between users, but have no immediate suggestions on how.14:06
persiaHaving deadlines/targets work both for kanban and non-kanban workflows is a very interesting concept.14:07
* persia will think about this later14:07
* SotK notes that he doesn't really want to display due dates anywhere but kanbans and worklists14:09
paulsherwood:)14:10
persiaI do think a due date applies to a task, but the idea of applying to a story is very seductive.14:10
* SotK is happy to apply them to stories too, especially since we already allow stories in boards and a way to show a due date for them there would probably be useful14:11
persiaFor transfer: maybe an API change owner function (when POSTing the representation) that us not exposed in the UI?14:12
SotKpersia: that is only accessible to an authed admin?14:13
persiaStories and/or tasks?  That sounds mist flexible, to support various workflows.14:13
persiaSotK: maybe admin+current_owner, so that cooperative handovers do not require admin action?14:14
SotKthat makes sense14:14
persiae.g. If I go on holiday, I might want to hand admin of a role to someone else, etc.14:15
* SotK wonders if admins should be able to see stuff that is set as "private" they don't have explicit permissions for14:21
Zarahm. I'd incline toward 'yes', because I think they need to be able to delete anything, and it's helpful to see what it is... but it depends on how private the private data is likely to be, who's an admin, etc.14:23
Zara(I think the answer is to make sure they always have explicit permissions, actually()14:23
Zara(but we might be thinking of different things by 'explicit')14:24
SotKby explicit, I mean putting them in the "owners" permissions list for a board for example14:24
SotKI guess since the group of people who are admins are likely to be the same as the group of people with direct database access, the answer is likely to be yes14:25
*** b3rnard0_away is now known as b3rnard014:25
Zaraif their status as admins is recorded differently to regular board owners, it should be relatively simple to hide them later if it's annoying.14:27
persia+1 on expecting admins to have DB access14:28
*** alexismonville has quit IRC14:29
SotKthen in that case I think its safe to give them assumed access to everything14:29
Zarameeting in 30ish btw14:31
SotKoh, so it is14:32
* persia will unfortunately miss the meeting today14:32
*** alexismonville has joined #storyboard14:42
SotKright, lets clarify, is it likely to be useful for a milestone to be "owned" (and therefore editable) by more than one person?14:44
Zarayes, in case one dies14:44
SotKright, so we don't need to record the "creator" of it, since that is a worse representation than recording the set of people who can edit it14:46
SotKs/milestone/due date/14:47
paulsherwoodnot true...14:49
SotKpaulsherwood: why not?14:50
paulsherwoodi've had real-life reasons to show who created a milestone, when it was originally set to, and what it included...14:50
paulsherwoodas well as fully audit all changes to all of those data points14:50
paulsherwood(to prove that what was originally planned has changed over time)14:50
SotKah, that makes sense14:51
paulsherwoodfull audit of project history is a necessity in many industries14:51
persiaAudit is important, indeed.  History reduces arguments.14:57
* persia runs out of time14:57
SotKhm, I wonder if it's better to store the original creator as part of tracking the changes to the due date rather than as part of the due date itself then14:59
SotKmeeting time!15:00
Zaraso we'll need created_at15:02
Zarafor milestones15:02
* SotK thinks we'll need to do something similar to the timeline events implementation to track history15:03
Zarayup15:04
*** mrmartin has quit IRC15:40
* SotK goes to update the story with the new plan16:26
Zara:)16:32
SotKdo we care about keeping the old story description?16:39
ZaraI think it would be wise16:47
*** NikitaKonovalov has quit IRC16:47
* SotK too16:48
Zara(though old versions should be displayed in truncated form until clicked)16:48
*** NikitaKonovalov has joined #storyboard16:49
* SotK meant in this particular case, though it has made me thing that we could probably do with a full history for the descriptions16:51
Zaraokay, just manually changed every file affected by my suspect patch, am absolutely certain it's that one16:53
ZaraNikitaKonovalov: You will be delighted to hear we have found a bug that was introduced last March! https://review.openstack.org/#/c/155751/ stops timeline events displaying properly. =D16:55
Zara(story: https://storyboard.openstack.org/#!/story/2000478 -- if you have any quick tips on what might be happening, it'd be appreciated, though I realise that patch was nearly a year ago...)16:58
Zara'night, all!17:27
*** alexismonville has quit IRC17:27
persiaI was chatting with someone about Storyboard recently, and they suggested that it would be good to never delete anything.  When things change, keep the old one (and an audit log).  When things are "deleted" by admin, actually only archive them, so they do not appear by default, but can be accessed in case of confusion or dispute.17:28
*** alexismonville has joined #storyboard17:28
persiaI'm not sure that informs any of the above discussion, but just to point out that some people want that sort of thing.17:28
paulsherwoodin a previous implementation we discussed a CoW database for kanbans, even to the point of wanting to keep all data (versioned) in git17:30
paulsherwoods/database/approach/17:30
*** mrmartin has joined #storyboard17:31
persiaStoring databases in git is tricky (I'm seeing lots of corner cases in another project I'm watching), but yeah, the key is that for systems that express mangement desire, it is good to have an audit trail so that people can confirm the understanding they had at the time things happened when reviewing the history of something.17:32
persiaNote that such "management desire" applies even to teams that are collectively self-managed, or otherwise appear to have no "management" layer.17:33
*** alexismonville has quit IRC17:43
*** jtomasek__ has quit IRC17:59
*** mrmartin has quit IRC18:08
*** zara2 has joined #storyboard18:10
zara2I left early because I had a headache, but saw discussion as I was going-- I imagine best option would be to make something like the email worker, eg: a wiki-worker, that would listen for new timeline events and copy the data over somewhere to be committed... like a wiki. ;)18:12
zara2story descriptions are markdown anyway18:12
zara2and with that, adieu!18:12
*** zara2 has quit IRC18:14
persiaWhile I like that idea, because it provides a useful archive, I'd prefer a model where it didn't require two writes, and there wasn't any possibility of races: the underlying data store itself should be one that supports archival use.  That said, I don't think this is an important current feature :)18:22
*** mrmartin has joined #storyboard18:57
*** mrmartin has quit IRC19:08
* SotK ponders how to "keep the old one" and not create a nightmare19:53
persiaRecording the event as e.g. "foo changed bar from baz to quux" rather than "foo changed bar" is usually the easiest.21:05
SotKI see, so you don't want to keep the full database record from each change?22:06

Generated by irclog2html.py 2.14.0 by Marius Gedminas - find it at mg.pov.lt!