Wednesday, 2015-07-15

*** coolsvap|away has quit IRC02:10
*** coolsvap|away has joined #storyboard02:12
*** coolsvap has quit IRC02:45
*** cody-somerville has joined #storyboard02:50
*** cody-somerville has quit IRC02:50
*** cody-somerville has joined #storyboard02:50
*** coolsvap|away is now known as coolsvap04:20
*** mrmartin has joined #storyboard04:55
*** mrmartin has quit IRC07:16
*** sambishop has quit IRC07:53
SotKSo, who here would be interesting in restarting the StoryBoard weekly meeting?09:48
Zara_o/ I'd like to check I'm on the right track.09:49
SotKIn terms of times that are best for us, there seems to be space on the calendar from 16:00 UTC to 19:00 UTC on Tuesdays, 15:00 UTC to 17:00 UTC on Wednesdays and pretty much any time on Fridays09:54
* SotK thinks he would prefer to do 15:00 -> 16:00 UTC on Wednesdays09:54
persiaI'd like to attend, and Wednesdays tend to work for me.09:58
Zara_Wednesday works for me.10:12
SotKexcellent10:18
* SotK will submit a patch to the schedule later on, to give others time to register interest if they would prefer a different time10:18
*** mrmartin has joined #storyboard10:21
*** cody-somerville has quit IRC10:34
*** coolsvap is now known as coolsvap|away10:41
persiaSo, about check-storyboard-js : is this just a broken test?  If so, should it be removed from CI or should it be fixed?10:42
SotKI think its broken, given it failed on a change as simple as https://review.openstack.org/#/c/183304/10:44
SotKI've not investigated whether/how to fix it10:45
Zara_yeah, I looked a little at the merged commits (https://review.openstack.org/#/q/status:merged+project:openstack-infra/storyboard-webclient,n,z ) and I think it's introduced in the 'initial proposal for integration tests' (unsurprisingly) but I haven't looked closely at it.10:47
persiaIndeed.  It seems it depends on ./storyboard/tools/install_testbackend.sh which is absent.10:47
persiaerr s/testback/test_back/10:47
SotKI believe that changing that to ./openstack-infra/storyboard/tools/install_test_backend.sh here would fix it11:10
SotKhttps://review.openstack.org/gitweb?p=openstack-infra/project-config.git;a=blob;f=jenkins/jobs/storyboard.yaml;h=2934336d7315307c2fd37208517e5b0ba5ccf0ee;hb=HEAD#l3911:10
* SotK isn't sure how to test that idea though11:10
persiaIsn't it just a patch to git://git.openstack.org/openstack-infra/project-config ?11:20
persiaBut maybe ask in -infra: to get input from someone with more knowledge.11:20
SotKpersia: I guess so, but how do I know the patch will work?11:20
persiaWouldn't that get tested by the project-config CI?11:21
* persia actually doesn't know, but is just making assumptions11:21
* SotK will ask in -infra11:23
paulsherwoodSotK: having logged in, still can't find anything resembling a kanban11:24
paulsherwoodSotK: i did find some misaligned checkboxes, though http://imgur.com/csI69cd11:25
SotKwoo more misaligned checkboxes!11:25
SotKwhat browser are you using?11:25
SotKI see the kanban at http://86.139.159.21/#!/dashboard/kanban11:26
*** openstack has joined #storyboard11:36
Zara_ah, kanban shows up for me11:37
* pedroalvarez can see the kanban too11:37
Zara_the option was on the dashboard submenu for me11:37
SotKthe only reason its in the dashboard submenu is because it started as me hacking up a concept for "set of worklists", which I then reused as a kanban and I never got round to moving it11:37
SotKI imagine it living in a more obvious place when properly implemented11:37
Zara_:) It's nice and clear. Maybe we could differentiate via colours more, but there might be issues with branding or with differentiating kinds of tasks (it seems a bit odd to have 'active' and 'active (owned by me)' in different columns)11:37
SotKthe columns are also only examples11:37
SotKI can't imagine anyone creating a kanban with the columns that one has :)11:37
SotKthe lane titles reflect the story search parameters used to populate them11:37
SotKmaybe it should be s/owned by/assigned to/11:37
Zara_gotcha. what kind of things would you like us to look at/discuss at this point?11:37
SotKMostly thoughts/suggestions on the UI... It mainly exists because I wanted to think about the workflow for creating a kanban so I did it, plus persia had mentioned elsewhere about seeing a concept of what I was envisioning re: kanban in storyboard.11:37
*** openstackstatus has joined #storyboard11:39
*** ChanServ sets mode: +v openstackstatus11:39
* SotK can't see the misaligned checkboxes in Chromium or Iceweasel, but suspects he may have found the cause.11:42
Zara_okay, first thoughts-- I like the drag + drop, so I'll note that I think the boxes shouldn't exceed the height of the screen, or drag + drop will be awkward. so the boxes could have scrollbars, but the outer scrollbar should never be needed. I think the layout is straightforward and tidy. we might need some way of differentiating between items within a box, not sure how best to do that.11:44
paulsherwoodSotK: ok, i see it now. so as a new/naive user, it's not obvious how to get to the kanban :)11:45
paulsherwoodit looks pretty. some wasted whitespace at the right of the rightmost lane. i can't dragndrop, or add cards, or edit lanes - i assume that's expected in this mockup? clicking on a card takes me to the story... but no obvious link back to the kanban11:48
* paulsherwood discovers he can drag to invalid11:48
SotKdragndrop should work11:48
paulsherwoodbut state is not retained (on refresh, cards are back where they started)11:49
paulsherwoodwould be nice to signal to the user which lanes can be dragged to/from, and which not11:50
Zara_I think some people might want more differentiation between the boxes themselves (colour coding is common) but there are complexities so I'd probably avoid that for now. I'm not sure what the little '+' in the top right of each box does; I'd guess it adds a card but wonder if it might mean 'edit lane title' or 'add lane', etc. but again, not clear how to make that more obvious in a way that preserves the clean look.11:50
SotKpaulsherwood: all the lanes should be able to be dragged to/from in the mockup11:51
paulsherwoodmerged?11:51
paulsherwoodirrespective of the mockup, in real life should someone be able to drag to merged?11:51
paulsherwood(and from it?)11:51
* SotK drags things to "done" or "merged" in kanbans he uses quite often11:52
Zara_(the drag and drop should be more sensitive if possible, since it feels a bit... sticky? stiff? at the moment, you have to drag a card over the lane title; I think the whole box should be a sensitive surface, if that makes sense)11:53
paulsherwoodah, right. but i'm wondering if we are intending that this view allows folks to see stuff actually merged (in which case the merging was done by a tool, say)11:53
paulsherwood(merged to me means what's in the repo, not a state i a task that i can change by drag'n'drop)11:55
paulsherwoodSotK: i like it, by the way :)11:56
SotKI think that the use of lanes in a kanban should be decided by the people responsible for it, so it makes sense then to allow lanes to be "locked".11:56
paulsherwoodlocked is a different concept, though. i wondering if we need some 'special' lanes... i think this was discussed previously somewhere?11:57
paulsherwood(ie lanes that reflect state from other infrastructure)11:57
SotKZara_: I'd like to be able to colour code too, but the end goal is for "cards" to be either tasks or stories, and I'm not sure what the colours should represent without some deeper thinking on it than I've done so far11:57
* SotK doesn't remember discussion of lanes reflecting state of things other than tasks and/or stories11:58
paulsherwoodi like colours, but others find them hard to understand... and a reasonable percentage of users may be colourblind11:58
paulsherwoodSotK: ok, i may be wrong11:58
Zara_(so to aid users; I'd keep the same max number of boxes, but space them out as much as possible so that it's easy to drag and drop but things go in the right boxes)11:59
SotKpaulsherwood: I actually think it would be great to have a lane that shows state of changes in Gerrit or something, but I'm not sure how that would work without doing a bunch of work integrating StoryBoard with Gerrit properly first11:59
paulsherwoodSotK: fair point. out-of-scope for now :)12:00
SotKZara_: How do you find drag and drop between two lanes which actually contain cards? I think the problem with empty lanes being finnicky is because the droppable area is tiny.12:01
Zara_SotK: agreed on colours; there's already lots of discussion of colours in specs, so that's why I think we should leave it alone for now. (I was referring to colour coding the lanes; it's just occurred to me that referring to the lanes as 'boxes' might be confusing)12:03
Zara_Sotk: drag and drop between boxes containing cards is easier, but...12:03
Zara_I think the cards may be too small vertically? not sure... but if clicking quickly, its kinda easy to drag the lane by mistake12:04
Zara_alternatively, maybe only the top of the lane should be draggable?12:04
SotKI think only making the top draggable makes sense12:04
* SotK tries to work out how to do that12:05
Zara_yeah, it might be okay to have the top, bottom and sides, just not the spaces between the cards.12:06
Zara_(I was thinking that someone might not realise the boxes can be dragged if only the top is draggable, but am probably splitting hairs.)12:06
Zara_also, dragging the first lane to be the new rightmost lane doesn't currently work12:09
Zara_the others seem fine :)12:09
SotKapparently so... how bizarre12:10
Zara_It did work for me once; have not been able to replicate!12:10
Zara_ah, I think it works if you drag the first lane from the left hand side12:11
Zara_dragging the first lane from the bottom right is interesting...12:12
* SotK blames jquery for weird dragging behaviour12:13
Zara_ahhh, I think it's because the lanes rearrange relative to the cursor. (so if the cursor is over a lane, not if the box is)12:14
paulsherwoodSotK: if i were a gambling man, i'd bet against jquery, and on something in the app :)12:14
Zara_and it doesn't check the cursor's position horizontally relative to lanes' position horizontally, it just picks up on if the cursor is hovering over the lane.12:15
Zara_that's my working theory.12:15
SotKpaulsherwood: can I blame angular-ui's directive for the jquery at least? :)12:18
paulsherwoodSotK: you can blame what you likee.. it's just i normally find that there's more bugs in new code than established code, hence betting on the app :)12:19
* persia often finds the reverse: widely used frameworks often have bugs that everyone works around rather than fixing, perhaps because the widely-known bit makes sending patches scary12:21
paulsherwood:)12:23
Zara_btw, I noticed that on your 'stories' page there's '[{"type":"StoryStatus","value":"active","title":"Active"}] ' beneath the search bar; not sure if it's related to this or to some other changes12:23
* SotK can't remember what he was trying to figure out when he made that show up to help him12:24
Zara_ah, okay, if it's debugging then that seems fine. :)12:25
* SotK prepares a patch for openstack-infra/irc-meetings to add a StoryBoard meeting once again14:18
SotKwho should I list in the "chair" section?14:18
* SotK assumes the done thing is for it to be the membership of storyboard-core?14:19
Zara_in the game of thrones, you win or you die14:20
Zara_but I think you should probably be chair14:21
Zara_since you've been organising it so far (unless you don't want to be chair)14:21
SotKI'm happy with that, but I won't be here next week so there should be someone else on the list too as a contingency I guess14:22
Zara_happy to do it if necessary :)14:23
Zara_if anyone else wants to, that is also fine with me.14:23
* paulsherwood has chaired things in the past... but doesn't know if he qualifies even to attend a meetging like this14:24
SotKpaulsherwood: I would encourage anyone who is interested in storyboard to attend14:24
paulsherwoodok, is it irc only?14:24
SotKyeah, 15:00 UTC on Wednesdays was the agreed time I believe14:25
Zara_on #openstack-meeting, right? (as opposed to #openstack-meeting-alt or #openstack-meeting-3)14:26
paulsherwoodok... si in 24 mins from now?14:26
SotKpaulsherwood: normally, but I don't know that it can happen today given that it isn't on the schedule yet14:27
SotKZara_: #openstack-meeting and #openstack-meeting-3 are both free at that time, I'll probably pick #openstack-meeting14:27
paulsherwoodpersia: any idea why meetings happen in a general meeting channel, rather than, say, here?14:28
persiapaulsherwood: So that folk can idle in the meeting channel and get a log of all the meetings, mostly.14:28
persiaIt helps maintain cohesion between things as well: most interesting folk will be idling in the meeting channels, so one can easily highlight someone not usually part of a project to help cross-project coordination, etc.14:29
persiaI use a lot of IRC channels, but for larger projects, I don't like when meetings happen in lots of subchannels, because then I have to spend a lot more time keeping track of ongoing things, whereas with this model, I have a continuous feed of everything happening in every subproject on my screen in realtime, so can jump into any meeting that seems interesting.14:30
SotKpatch sent to add the meeting to the schedule14:46
SotKargh, that broken test is really broken16:09
*** notnownikki has quit IRC16:21
* SotK tries to thing of an agenda starter-for-ten now that the meeting is organised again16:51
SotKor even think16:51
* SotK creates https://wiki.openstack.org/wiki/Meetings/StoryBoard16:58
paulsherwoodcool!17:09
krotscheckHuhn.18:55
paulsherwood?18:57
krotscheckpaulsherwood: Oh, just starting to realize that cutting storyboard loose was probably the best decision for the long term viability of the project. Had I not left, it's less likely y'all would have jumped in.19:03
paulsherwoodit's early days for us, but we are really interested to build on your work19:05
paulsherwoodplease don't think of it as cutting loose just yet :-)19:05
krotscheckI have such dreams!19:06
paulsherwoodof cutting loose? or of StoryBoard :)19:07
krotscheckFor storyboard.19:07
krotscheckLike, I would _love_ to spin up StoryBoard as a service.19:07
krotscheckAnd, well, the federation bit is critical19:07
paulsherwoodgreat... keep talking :-)19:07
paulsherwoodexplain why federation matters so much in your worldview please?19:08
krotscheckAnd the easiest thing to make that happen is for StoryBoard to start representing its internal links in terms of URI's.19:08
krotscheckBecause it's an unmet need.19:08
krotscheckIt's the "Ok, I want to have a bug tracker, internal to my corporation, that can also keep track of upstream activity without duplicating data" problem.19:08
paulsherwoodwhat's an internal link?19:08
krotscheckNobody does that.19:08
krotscheckHey, I have a dependency on this bug in libvirt, which needs to land first.19:09
paulsherwoodthat's one of the key needs we have19:09
krotscheckAnd, I feel, the best way to do that is to express references as full URI's.19:09
krotscheckExample19:09
krotscheckA story is associated with a project.19:09
krotscheckWait19:09
krotschecksorry19:09
paulsherwoodour work involves multiple upstreams. some of our work is private to us or to each customer, but needs to overlay on what's happening with upstream19:09
krotscheckit's been a while19:09
krotscheckLet's say a story has tasks.19:10
krotscheckAnd when I ask for the story, I ask for which tasks are in that story.19:10
krotscheckWell, you can either express that list as "Task ID 1, Task ID 2"19:10
krotscheckor you can express it as http://storyboard.openstack.org/tasks/1, https://github.com/username/project/issues/342,... "19:11
krotscheckSimilarly, you can have an internal task on a story, that represents upstream work that has to happen. So instead of it's project link being "Internal Project ID #2", it can be "https://storyboard.openstack.org/projects/fooo19:12
krotscheckOr https://launchpad.org/projectname/bugs/2342319:12
paulsherwoodyup. we need to ensure that the uri doesn't itself leak information though...19:12
paulsherwoodhttps://storyboard.openstack.org/projects/customer-name-accidentally-here-project19:12
krotscheckThat should be easy, as long as you make sure that Storyboard never pushes to other systems. It only pulls.19:13
paulsherwoodor really-interesting-project-name-that-should-have-been-hidden :)19:13
krotscheckAnd if osmeone tries to link a private storyboard story, it will fail because the upstream server can't actually access that API.19:14
paulsherwoodi think we have use-cases that need to push. unless all our customers accept that their secret stuff is in the same instance with all our other customers' secret stuff19:14
krotscheckpaulsherwood: Then create a story against the upstream project.19:15
krotscheckAnd, well, create more than one storyboard, for each customer, and only give them access to your teams' storyboard.19:16
krotscheckThough we can get into nitpicky details pretty quickly ehre.19:16
paulsherwoodyup, that's the idea. but then we probably still need to sync the open/upstream stories with those customer instances19:16
krotscheckpaulsherwood: Why? Just have storyboard not cache anything, and re-request the current state.19:17
krotscheckMy original point is: Represent resource references as URI's. That will simplify the federation bit, because the reference will carry its origin with it.19:17
paulsherwoodyou may be right. i get out of my technical depth very quickly :)19:17
krotscheckAlso, it's more RESTful.19:17
paulsherwoodluckily there's backscroll and logs here... so we can ask others to properly consider what you're explaining19:18
krotscheckWhich will get you donut points with the purists.19:18
krotscheckOh god you're going to hold me accountable.19:18
* krotscheck runs19:18
paulsherwoodbut rest assured, i have dreams for storyboard too :-)19:18
paulsherwoodnope... no accountability... please just contribute if/as you can19:18
krotscheckAight19:18
paulsherwoodhopefully we'll all feel the results are worth it...19:19
krotscheckWell, I'm working on OpenStack's policies re: javascript right now, so I may be flybying you guys on occasion with things like test coverage and documentation builds.19:19
paulsherwoodcool19:19
paulsherwoodmy short term goal is to deprecate our homegrown kanban in favour of sb, can't wait! :)19:19
* paulsherwood heads for dinner19:21
krotscheckRandom aside: OpenStack is starting to publish its own eslint rules to npm. https://www.npmjs.com/package/eslint-config-openstack20:22
*** cody-somerville has joined #storyboard20:27
*** mrmartin has quit IRC21:22
*** cody-somerville has quit IRC21:57

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