Developer Area/Import//Export/Meeting 20090330
From Mahara Wiki
< Developer Area | Import//Export
The following log is from a Skype meeting to discuss the status of Mahara's import/export support. It was held from 2009/03/30 ~ 8:50AM GMT and 2009/03/30 10:10AM GMT.
Attendees
Nigel McNie, Simon Grant and Penny Leach
Agenda
- Catch-up meeting - what is the status of Mahara's import and export, is Mahara on target to deliver what is necessary.
- Namespaces
Log
[08:54:25] Nigel McNie: I don't have sound here, so it would have to be by chat [08:54:31] Simon Grant: or could be longer, actually, I'll just defer the other person I was going to speak with [08:54:35] OK go ahead [08:54:44] chat away! [08:54:51] Nigel McNie: right [08:55:02] * Nigel McNie collects thoughts [08:55:26] Nigel McNie: how about we start with where Mahara is at [08:55:33] Simon Grant: OK [08:55:45] Nigel McNie: ok, so as far as I know, we have working export [08:55:59] you spotted something you thought was odd the other day, something about ordered parts? [08:56:04] Simon Grant: yes [08:56:08] possibly [08:56:22] but anyway if you let me see the export, I can give it an eyeball [08:56:31] Nigel McNie: alright [08:56:54] http://paste.dollyfish.net.nz/770180 [08:57:15] * Nigel McNie invited mjollnir__ [08:57:14] * Nigel McNie invited mjollnir__ [08:57:16] Simon Grant: OK, I read [08:57:49] Nigel McNie: so far the only thing I can think of to clean up is the excess whitespace inside some of the tags, which confuses simplexml a bit on import [08:58:14] Simon Grant: can you do that without compromising human readability? [08:58:34] … I prefer not having to use xml-pp, and other people may not know how to do that [08:58:38] Nigel McNie: yes, it's literally replacing the space before the / on tags like this: [08:58:49] … I think our feed is pretty readable as is :) [08:58:55] Simon Grant: indeed it is! [08:59:13] … OK, shouldn't be a problem removing the space before /> [08:59:29] Nigel McNie: I see the ordered parts, on our resume stuff - are they good, or bad? [08:59:53] Simon Grant: bad [08:59:59] … we deprecated ordered parst [09:00:01] … parts [09:00:04] … but the good news is [09:00:13] … they map exactly to ordinary parts [09:00:24] … so you just have to remove "ordered_" [09:00:28] Nigel McNie: so just has_part, and control the order in the xml file then [09:00:33] … great [09:00:35] Simon Grant: indeed [09:00:44] … no, still have display_order [09:00:52] Nigel McNie: right [09:01:09] Simon Grant: optionally, and also when_added optionally [09:01:34] Nigel McNie: is that different from ? [09:01:45] Simon Grant: yes, different [09:01:46] Nigel McNie: I spose the spec docs say :) [09:01:50] * Nigel McNie will read later [09:01:53] Simon Grant: no matter [09:02:00] … it's really for Pebblepad [09:02:16] Nigel McNie: righto [09:02:17] Simon Grant: if you want to say when a blog post was added to a particular feed [09:02:29] … I don't know if it's needed, but PebblePad wanted it [09:02:51] … same format as , though [09:02:56] Nigel McNie: right [09:03:08] … the other thing I can see looking at it now is we have empty [09:03:16] Simon Grant: hmm [09:03:17] Nigel McNie: should those be collapsed, or it doesn't matter? [09:03:34] Simon Grant: more importantly, should the content have content? [09:03:38] … e.g.? [09:04:06] Nigel McNie: isn't the content tag required? [09:04:14] Simon Grant: yes [09:04:24] Nigel McNie: portfolio:resumesibling-20-sibling-2-rel-supports [09:04:30] … in theory I think that _can_ have content [09:04:42] Simon Grant: I think it might be good practice to put in a note equivalent to "this page deliberately left blank" [09:04:51] Nigel McNie: actually yes it can [09:04:53] … hrm [09:04:58] * Nigel McNie not such a fan of that idea [09:05:01] Simon Grant: ok [09:05:29] Nigel McNie: I mean, the importing system can look at the blank content and make that assumption itself :) [09:05:52] … anyhoo [09:05:56] Simon Grant: yes, ok [09:06:01] Penny Leach: agree, fwiw [09:06:05] Simon Grant: fine [09:06:19] Nigel McNie: so I'll turf those ordered parts out and we should be good there [09:06:32] Simon Grant: I hope so! [09:06:40] Nigel McNie: I need to write up some docs about our implementation [09:06:49] Simon Grant: that would be great [09:06:52] Nigel McNie: possibly s/I/We/ if Penny wishes to help [09:07:06] Simon Grant: as much as could help someone else implementing in PHP, I guess [09:07:07] Nigel McNie: um, so import [09:07:16] Simon Grant: yes, import, how is it? [09:07:19] Nigel McNie: we have docs for import, have you read them? [09:07:31] Simon Grant: not sure, show me [09:07:39] Nigel McNie: would be interesting to see what you thought of those, because we could use them as a template for export docs [09:07:55] Simon Grant: point me and I'll look [09:08:00] Nigel McNie: yeah just finding it :) [09:08:04] … http://wiki.mahara.org/Developer_Area/Import%2f%2fExport/LEAP_Import [09:08:07] Simon Grant: they might be useful for me too [09:09:03] … ok, where do I go from there? [09:09:20] Nigel McNie: http://wiki.mahara.org/Developer_Area/Import%2f%2fExport/Import%3a_Implementation_Plan [09:09:24] … that describes the algorithm [09:09:30] … it hasn't changed much from that [09:10:01] … also under the header "Artefact Plugins and LEAP Import", there are links to pages that describe how each artefact plugin in mahara hooks into our import system [09:10:42] … I'm working on the documentation about how we import stuff from other systems, it's just a bunch of notes on my laptop right now but I'm going to write them up at http://wiki.mahara.org/Developer_Area/Import%2f%2fExport/Interoperability [09:11:00] Simon Grant: OK, first comment is that at some point you might want to change it to importing Atom or LEAP2A [09:11:15] Nigel McNie: true [09:14:03] Simon Grant: Commenting your implementation plan would need me to spend significant time thinking about the algorithm [09:14:14] … Certainly happy to do this if I have time sometime :-) [09:14:26] Nigel McNie: heh [09:14:32] … well we can certainly report, in time, on how effective it is [09:14:37] Simon Grant: great [09:14:47] … looking at the blog artefact... [09:15:40] Nigel McNie: heh, the published thing we can fix now [09:15:42] Simon Grant: I didn't delete http://wiki.cetis.ac.uk/2009-03/LEAP2A_categories/readiness from the spec, so how about using that [09:15:49] … exactly [09:15:49] Nigel McNie: snap! [09:15:56] … yep, can do [09:16:02] Simon Grant: great [09:16:27] Nigel McNie: on a higher level, is that the kind of documentation you're looking for? [09:17:25] Simon Grant: would be useful, I think. [09:17:30] … Now looking at File artefact [09:18:25] … (I think your general scoring strategy looks good, assuming the scores are calculated helpfully!) [09:18:51] Nigel McNie: well the nice thing about it is that we can tweak the scores to accomodate lots of things [09:18:58] Simon Grant: If it's leaptype:resource... [09:19:14] Nigel McNie: and furthermore, the scores can be used as a basis for presenting a UI to the user when we let them choose about importing stuff [09:19:23] Simon Grant: then if the content is out of line, you have a file, yes? [09:19:29] … yes, UI [09:19:37] Nigel McNie: "we think you should import this File entry as a file... but also you could do this other thing if you _really_ wanted" [09:19:53] Simon Grant: looks good when you get to that kind of importing tool [09:19:57] Nigel McNie: I guess if the content is out of line you do have a file [09:20:14] … the converse isn't true though [09:20:17] Simon Grant: if inline, then if it's text you do NOT have a file [09:20:25] Nigel McNie: well maybe you do though [09:20:29] Simon Grant: perhaps? [09:20:35] Nigel McNie: if it's of um... resource type: Offline ? [09:20:38] Simon Grant: tell me... [09:20:49] Nigel McNie: the resource types come into the decision I think [09:21:07] Simon Grant: but wouldn't that still be an attached file? [09:21:12] Nigel McNie: unless you want to explicitly codify in the spec that files shouldn't be inline :) [09:21:23] Simon Grant: well, hey, we could probably tweak that [09:21:39] Nigel McNie: that would be a million times easier than looking at the resource type category ;) [09:22:05] Simon Grant: I hinted at that [09:22:21] … but maybe we should discuss it explicitly [09:22:26] Nigel McNie: hm [09:22:38] … so I wonder what Mahara should do if we encounter something of resource_type:Web [09:22:42] … for example? [09:22:52] … or Physical? [09:23:11] … any suggestions, or are they just something we'd drop at import time? [09:23:42] Simon Grant: I don't think I'm familiar enough yet with Mahara [09:24:03] Nigel McNie: fair enough [09:24:04] Simon Grant: resource_type#Web would effectively be a link [09:24:16] Nigel McNie: we don't really have a place in mahara where you store "links" [09:24:24] … so I suppose we just drop it [09:24:26] Simon Grant: resource_type#Physical is just a description of an object etc [09:24:38] … you could import as an entry [09:24:48] … or some other general note, if you have any [09:24:51] Nigel McNie: nope [09:25:10] … plugins provide artefact types, if we had an artefact of type 'note' then we could do it, but we don't (yet..) [09:25:11] Simon Grant: could you do miscellaneous blog entries [09:25:29] … private of course [09:25:35] Nigel McNie: they'd have to be attached to a blog. It could be done, but I'm not sure it's a great fit with mahara's blog tool really.. [09:25:45] … I mean what's a blog with a list of links in it, all posts on the same date anyway? [09:25:49] Simon Grant: That's what I'm saying I think [09:26:22] Nigel McNie: hm.. [09:26:26] Simon Grant: anything which doesn't fit anywhere else can be put into a blog called "imported miscellanea" or something less pretentious :-) [09:26:44] Nigel McNie: I suppose it fits the feed model [09:27:07] … the blog could offer to import them, with a low score [09:27:08] Simon Grant: that's part of the point of doing things in Atom, so that everything potentially is just an entry [09:27:11] … yes [09:27:21] … looks spot on [09:27:37] … blog can offer to import just about anything that no other plugin wants [09:27:47] Nigel McNie: alright, well that sounds reasonable - funnily enough, I was previously assuming that 'file' would import anything [09:27:56] Simon Grant: :-) [09:27:57] Nigel McNie: but blog makes a lot more sense from the feed point of view [09:28:03] … ok well I'll note that down [09:28:09] Simon Grant: great [09:28:36] … I think it fits with the idea "this is something I wrote sometime" [09:28:45] Nigel McNie: right, so you're happy enough with those docs then, and if we produced some export docs that are similar you'd be likewise happy? [09:28:49] Simon Grant: if it's authored by me, at least [09:28:57] Nigel McNie: heh [09:28:58] Simon Grant: yes, yes [09:29:05] Nigel McNie: good good [09:29:11] … we should talk about the namespace thing [09:29:13] Simon Grant: hang on let me look at internal artefact [09:29:21] Nigel McNie: ok [09:30:03] Simon Grant: "While Student IDs are covered by the LEAP spec, the Student ID field in Mahara does not correspond to a particular service, so cannot be exported as persondata." not true [09:30:15] … you can have field="other" [09:30:26] Nigel McNie: hm [09:30:28] Simon Grant: but anyway [09:30:35] … what is the Student ID? [09:30:40] … surely with some known body? [09:30:46] Nigel McNie: it's just a field in a user's profile [09:30:55] Simon Grant: yes, but what do people put there? [09:31:02] Nigel McNie: but users can belong to potentially more than one institution in mahara [09:31:02] Simon Grant: is it meaningful at all? [09:31:09] Nigel McNie: no, that's the thing [09:31:14] … it's not a very good field actually [09:31:15] Simon Grant: fine, so what would they put? [09:31:19] … right! [09:31:32] Nigel McNie: heh, we're well aware it's not a nice field, but had to export/import it anyway :) [09:31:35] Simon Grant: next version of Mahara, here we come! [09:31:46] Nigel McNie: yes, people keep asking for custom profile fields [09:31:51] … something we'll have to do [09:32:08] … anyway so I exported it as an entry for now because that was a one line addition [09:32:24] Simon Grant: not sure about that [09:32:30] Nigel McNie: we also have "occupation" and "industry" fields that Penny didn't seem to map to anything other than a raw entry [09:32:34] Simon Grant: I think I would prefer persondata field="other" [09:32:42] … label="Student ID" [09:32:54] Nigel McNie: ok, that can be arranged [09:33:07] Simon Grant: but occupation and industry are different [09:33:16] … I agree, separate entries [09:33:22] Nigel McNie: ok [09:33:28] … what's different about them exactly? [09:33:33] Simon Grant: title "occupation" or "industry" [09:33:46] … what is different is machine processability [09:33:48] … in principle [09:33:57] … Student IDs should be able to be [09:34:25] … and you definitely wouldn't want people to put a story in the Student ID box [09:34:36] Nigel McNie: heh [09:34:43] … currently our occupation/industry are... [09:34:50] Simon Grant: whereas asked for "industry" I might want myself to launch into an explanation [09:34:51] … what? [09:34:54] Nigel McNie: http://paste.dollyfish.net.nz/377e52 [09:35:01] … so that should probably change [09:35:26] Simon Grant: do they come from a drop-down or other controlled vocab? [09:35:32] Nigel McNie: no [09:35:40] Simon Grant: user entered? [09:35:42] Nigel McNie: yes [09:35:45] Simon Grant: no checking? [09:35:50] Nigel McNie: no checking [09:35:53] Simon Grant: in that case yes, separate entries [09:36:06] … is good [09:36:08] Nigel McNie: with title = Occupation, or title = Software Engineer ? [09:36:17] Simon Grant: title= Occupation [09:36:22] Nigel McNie: done [09:36:25] Simon Grant: content= Software Engineer [09:36:54] … what you had just repeated itself unhelpfully [09:37:02] Nigel McNie: indeed [09:37:02] Simon Grant: or should I say uninformatively [09:37:24] Nigel McNie: we need to document those tags [09:37:29] Simon Grant: that follows the general advice on question/answer stuff that we had out for the schools area [09:37:43] … mahara tags... [09:37:54] … documentation not strictly necessary for others [09:38:01] Nigel McNie: [09:38:01] Simon Grant: obviously you want to for yourselves [09:38:10] … and it would be good to share that documentation [09:38:26] … so that anyone else keen on doing an accurate Mahara import could work with them [09:38:33] … super-accurate, I mean [09:38:37] Nigel McNie: also.. New Zealand [09:38:41] … yeah [09:38:50] … absolutely intend to publicly document them [09:39:02] Penny Leach: there's a placeholder wiki page for the curie [09:39:04] Nigel McNie: our namespace points at an unhelpful page at the moment [09:39:08] … snap! [09:39:10] Penny Leach: :) [09:39:13] * Nigel McNie gets two snaps [09:39:15] Penny Leach: sorry, only half paying attention [09:39:34] Simon Grant: where the mahara attribute just mirrors a leap: one then the Mahara one is just for you [09:39:44] … if you really need it (which you might not) [09:39:51] Nigel McNie: yeah [09:40:01] … I've had to implement import before I could work out whether they were needed [09:40:08] Simon Grant: but if it gives extra info, yes, document it. [09:40:10] Nigel McNie: some of them are, especially on those occupation/industry entires [09:40:15] … +spelling [09:40:50] … ok, so the one unfortunately gaping hole is our resume plugin import [09:41:16] Simon Grant: hmm, what are the issues there? [09:41:23] Nigel McNie: only one of time [09:41:30] … I'm definitely going to do it [09:41:39] … it's just I ended up starting quite late on this work, for various reasons [09:41:54] Simon Grant: OK, no sweat [09:42:04] Nigel McNie: we're continuing to work on import/export for at least the next month and a half [09:42:05] Simon Grant: if you can tell the world when you plan to implement it, that would be great [09:42:25] … and I'm still here to advise, I'm not going anywhere :-) [09:42:33] Nigel McNie: hopefully, immediately after the other deliverables are out of the way ;) [09:42:42] Simon Grant: splendid! [09:43:23] Nigel McNie: I started looking at how we could import content from other systems, and realised that most of them are exporting just resume stuff [09:43:31] … bit of an oversight :( [09:43:50] Simon Grant: easily corrected, though... [09:43:54] Nigel McNie: indeed [09:44:08] Simon Grant: resume stuff is popular, to be sure [09:44:16] Nigel McNie: speaking of the other systems - some of them don't seem to have working export and/or import to test with [09:44:21] Simon Grant: though that's not the emphasis on PebblePad, say [09:44:29] Nigel McNie: this has made that report a bit difficult [09:44:32] Simon Grant: I believe Pebble and ePET are OK [09:44:50] … the others need their knuckles rapped! [09:44:53] Nigel McNie: (when I say "report' I mean "series of wikipage at http://wiki.mahara.org/Developer_Area/Import%2f%2fExport/Interoperability of course) [09:45:17] … I tried on Friday, and ran into the namespacing issue on every single one [09:45:47] … I'm keen to clear up what we think "should" happen around the namespaces [09:45:56] Simon Grant: good, go ahead [09:46:14] Nigel McNie: I'm not incredibly familiar with XML namespaces, this is the first project where I've really used XML in anger [09:46:21] … but to me, what they seem to say is [09:46:43] … when you go xmlns:foo="bar" in a feed, you're saying tags that start with foo: are in namespace bar [09:46:45] Simon Grant: namespaces, like CURIEs, are in principle just abbreviations [09:46:51] Nigel McNie: and bar is somehow globally unique [09:47:07] Simon Grant: bar has to be globally unique, sure [09:47:10] Nigel McNie: and so I can produce a feed with xmlns:baz="bar" or xmlns:ponies="bar" and it'd be the same feed [09:47:16] Simon Grant: yes [09:47:24] … the abbreviations are just suggested [09:47:33] … recommended to avoid confusion [09:47:34] Nigel McNie: right - and so that globally unique ID corresponds to a specific meaning for that namespace then [09:47:51] Simon Grant: but a proper XML-aware system expands them anyway [09:48:08] … the namespace doesn't have a meaning [09:48:17] … it's the URI that has the meaning [09:48:19] Nigel McNie: in our case, wiki.cetis... LEAP2A_categories is the _only_ path which actually corresponds to the categories for the LEAP2A specification produced 2009-03... [09:48:35] … that's the way I read it, anyway [09:48:38] Simon Grant: it's a way of distinguishing different meanings to the same tag [09:49:06] … well, here's my suggestion... [09:49:27] … if there is a namespace definition for, say "leap" [09:49:41] … xmlns leap="http://....whatever" [09:50:15] … then if it isn't recognised, you should report a warning to someone [09:50:42] … equally, if you come across the use of the leap: namespace without it being defined, report a warning to someone. [09:50:47] Nigel McNie: here's what I propose, which is slightly different but in the same spirit [09:50:53] Simon Grant: Go ahead [09:51:20] Nigel McNie: if we see 'leap' with the wrong url, crash and report that we saw leap with the wrong url [09:51:29] … likewise for the other namespaces [09:51:34] Simon Grant: why crash? [09:51:39] … why not just continue? [09:51:44] Nigel McNie: and the reason I suggest this, is that 'liberal in what you accept, strict in what you emit' is a bad policy [09:51:57] Simon Grant: that's what works for lots of people, though [09:52:01] Nigel McNie: it's the kind of thing that got us into the tag-soup parser mess of web browsers [09:52:08] Simon Grant: yes I know [09:52:27] Nigel McNie: as of the creation of this spec, there is _no_ reason why people should get the namespace urls wrong [09:52:31] … so we have a chance to be strict about it [09:52:42] … if we start being liberal, we'll have to keep being liberal [09:52:46] … and that adds code, with costs [09:52:46] Simon Grant: human error is the most likely cause... [09:52:55] … OK, that's fair [09:52:58] Nigel McNie: that's fine - humans can fix the export if they're generating it manually [09:53:07] … we can at least hint to them [09:53:19] … 'you used the 'leap' namespace? You probably meant the URL to be this:' [09:53:25] Simon Grant: but if there is a default way of fixing it that takes virtually no extra effort, why not do it? [09:53:38] Nigel McNie: because, the actual problem I was having the other day was [09:53:54] … mahara was exporting a feed that used 'categories:' as the category namespace abbreviation [09:53:59] … whereas everyone else was using 'schemes' [09:54:05] … how are we supposed to detect that? [09:54:07] Simon Grant: and that shouldn't matter [09:54:09] Nigel McNie: it gets real messy [09:54:22] … well that's kind of what you're proposing though [09:54:27] Simon Grant: no, which namespaces you use must be kept liberal [09:54:30] Nigel McNie: if the URL is correct it doesn't matter, sure [09:54:34] Simon Grant: indeed [09:54:47] Nigel McNie: but if the URL _and_ the abbreviation are wrong... well I'm not writing code to handle that :) [09:54:58] … and like you say, the abbreviation shouldn't matter [09:55:01] Simon Grant: fair enough, but let's keep the two issues separate [09:55:35] … and if there is just one default mechanism, to assume that it is the normal one, how much code does that take? [09:56:09] Nigel McNie: more than we should have to write (I know that sounds, um what's that word penny uses, focetious?) [09:56:13] Simon Grant: I agree, if it is not the normal abbreviation, and the namespace is wrong, then on their heads be it! [09:56:31] … yes, but if it's one easy line... [09:56:33] Nigel McNie: the problem is, we start adding code to work around little issues, and then all of a sudden everyone _has_ to do it [09:56:43] … e.g. mahara starts generating these weird broken namespace exports [09:56:45] … but mahara imports them again [09:56:54] … and people go to pebblepad and go "waa it doesn't work" [09:57:02] … (importing them into pebblepad) [09:57:02] Simon Grant: sure [09:57:12] Nigel McNie: and pebble pad can't necessarily tell their users "well your mahara is broken" [09:57:14] Simon Grant: so it's not in the spec that you're allowed to do that [09:57:16] Nigel McNie: users won't _care_ [09:57:26] … so pebblepad will add some code and it'll be right again [09:57:28] Simon Grant: yes, I understand [09:57:33] Nigel McNie: until the next little deviation, etc :) [09:57:50] … sorry if I'm sounding a bit firey [09:57:59] … I've had to work against ie6 for too long! [09:58:05] Simon Grant: no, you're quite at liberty to approach things that way [09:58:25] … I'm just thinking of the service to your users [09:58:45] … I absolutely agree there is a slippery slope that needs to be protected against [09:59:04] Nigel McNie: and I think we're in a unique position to not be on that slope in the first instance :) [09:59:14] Simon Grant: but equally, a couple of principles like needing to support plain Atom feeds need to be held in mind [09:59:32] Nigel McNie: go ahead [09:59:34] Simon Grant: sigh, but humans are human... [09:59:43] Nigel McNie: well let's put it this way [09:59:44] Simon Grant: well that one principle [09:59:52] Nigel McNie: wait you go [10:00:36] Simon Grant: Basically I agree people should do things properly [10:01:02] … but it's like with children.... :-) [10:01:21] Nigel McNie: (I'm not old enough to understand what that means!) [10:01:40] Simon Grant: ;-) [10:02:03] Nigel McNie: here, let me put to you a scenario then [10:02:23] … let's say we produce 7 importers, these are the first and currently only importers of leap2a in the world [10:02:26] Simon Grant: no need, just go ahead and crash out if you think that's right [10:02:45] Nigel McNie: heh, ok... [10:02:50] * Nigel McNie hopes the other partners will follow suit [10:02:55] Simon Grant: I'm really not suggesting that you need to import bad stuff [10:03:15] … just make absolutely sure you don't reject stuff which is actually OK [10:03:24] … according to the spec [10:03:47] Nigel McNie: yep, I fixed up the namespace bug I was having the other day so I believe we're all good in that regard [10:04:43] Simon Grant: That's why, maybe, I'm suggesting that everyone needs to know if you come across something that looks like LEAP2A that you can't import properly [10:04:54] … we all need to know what you can't import [10:05:08] … and ideally you document any known cases [10:05:26] Nigel McNie: right, I think that work will be ongoing for a little while [10:05:47] … also, I feel that whatever reports you _do_ get will probably go out of date quite quickly, which is why I decided to dump ours on the wiki [10:05:57] Simon Grant: initially, you can report on how you do with PebblePad and ePET [10:06:23] Nigel McNie: alright, that gives me something to focus on :) [10:06:30] Simon Grant: you're welcome to use your wiki, just as long as you tell everyone on the list where it is, and link from your PIOP wiki page [10:06:45] Nigel McNie: yeah, I need to update our page a little bit [10:06:54] Simon Grant: Good luck! [10:06:59] Nigel McNie: also I need to check our mapping [10:07:05] Simon Grant: good idea [10:07:30] … now [10:07:30] … run it past me anytime - well not now I'm meant to be talking with someone else and I need to find him how [10:07:34] Nigel McNie: the mapping was weird.. like I almost think we should have produced it _after_ the development work, but we didn't end up doing it that way for some reason [10:07:52] Simon Grant: I'm all in favour of doing the draft before the development [10:07:53] Nigel McNie: oh well, I'd better let you go then [10:07:57] Simon Grant: I have my reasons... [10:08:05] Nigel McNie: fair enough :) [10:08:25] Simon Grant: then you amend the draft as you develop and at the end [10:08:42] … OK, chat later, then! [10:08:52] Nigel McNie: yep, thanks for this, it's been most helpful [10:09:03] Simon Grant: you're most welcome [10:09:17] Nigel McNie: bye! [10:09:26] * Nigel McNie left the chat.