 Okay, so I think we should put all the notes on the typing pad so that everybody can work and that's going to be the URL. Could you copy the URL in the ISC? Your lady phone. Yes, of course. Gladly. Are we just in the team channel, Gladly? I hit create pad, right, which is otherwise we won't have one. No, he already created it. Raise condition. We're low testing the typing pad now, like with 25 people. Holy moly. He's saying wrong. He's saying right. Yeah. Oh, it depends. If you don't use NAT, we all have different IDs. Oh. So thanks for showing up in such large numbers and also thanks so much to the video team. I think this is the first time that we have video ready to go before that conference starts. It's still an issue to the external community. Great work. So welcome to everybody also out there listening. The point today is not, I don't think we're going to, I'm sure we're not going to be walking out of this with a new conference management system or any solutions to our problems but I think we're getting together today because we realize that our current solution is self-optimal and a lot of people want to improve on this but we don't really have a very clear idea of where we're going to go. There are a couple of conference management systems out there. Maybe Alison later can give a word or two. You've done a lot of research on this already and done a survey but maybe and maybe not. But these other conference management systems were not written for DEBCON and while some people disagree with this, everyone thinks DEBCON is somewhat of a special conference and in many ways it is and in many ways it might not have to be. So none of the existing systems out there are really made to fit our requirements. So today what we want to do is come up with a shared idea, a shared vision of what we need. What would the system that would really help us doing the organization of DEBCON have to provide and what scope should the system have? Questions like should volunteer management be included? Should scheduling be separate? Do we want accommodation in there and so on? All these kind of questions I think we're going to ask ourselves and one way of doing this would be to think about the sort of entities that we're dealing with and once you've started thinking about entities then very soon you have graphs and then you think about database design and no we don't really want to be doing database design at least not in a detailed level at all but thinking about it maybe and this is just a proposal thinking about it coming from the database perspective might allow us to identify questions that we should discuss and form a clear answer to. So this is just a proposal. If there are no questions from your side or if you don't have any other proposals I could start but maybe somebody else wants to chime in or if there are any questions please go ahead. I was wondering if it's worth anything going through Do we have a link for me to put it in? Yeah. Do we want to look at these solutions before we know what we need or do we want to think about what we dream of and then look at which of those suit? So what I found most useful from the list of comparisons was all the limitations that everyone could face and many of them were limitations that we would also get some of them would be irrelevant to us so I actually found it fairly useful in the sense of even if we wanted an ideal solution what would it look like to have some of the same things that we should be fixed. Okay. Should we then have it go with us? Do you want to just briefly talk about it Allison? I don't understand much about it. I would say there's a whole lot of detail here and it will probably just bug down the meeting so pass the link around and I or some people can look at it and then while we're going through the list of things I'll stand for to see if there's anything we need to add to our list. Okay. So for now that's just a resource. Okay. Alright then let's define the meeting target to be common understanding of needs and identification of fundamental questions surrounding our organization. Okay. Kind of difficult to know how to start this but my suggestion would be that I'm going to look at it from a database perspective and just give you some sort of idea and then maybe we can build a bottom up from there on and whenever you hear a point where you're like yeah that bothered me or I think this could be done better in this way from our perspective and please just chime in. So this is going to be ASCII art but maybe we can improve on it somehow later. I think the very first item that everybody faces our attendees face is going to be the question of authentication, right? And what we have at the moment is a single sign-on Alioff, Debbie, and whatever and that generally creates an object in the database and then that object gets linked to a user profile but I really don't know how to like I was hoping for a whiteboard of pens and it could have been easier. So then we have a user profile and the user profile is the sort of like long-lived data. I don't know how many of you remember PENTA but I really like the fact that every single year I could just come to the conference and all I had to do was log in and click a checkbox I'm attending this next conference because all my data was still in there and that's the sort of permanent data so that's what I would call it. I would say in the profile is the permanent personal data like your address and gender all these kind of things but not necessarily the conference-specific type of data for instance the question about t-shirt size or about which level you're attending as a corporate or as a standard participant. When we have this profile then I don't know how exactly PENTA did it but I think they're very similar to in this respect PENTA and Summit Summit currently has this idea of a conference or a Summit let's just call it a conference so for instance that would be devcon15 as an instance of this entity and through the I love this through the attending of a conference what was this thing called in case taking with computers sometimes through attending a conference you generate a relation between the two and that is whatever you want to call that I don't really have a name for it right now but maybe we can just call it an attendance so PENTA was a person for both a person and a conference person so a conference person being a person attending a conference a conference-specific conference and attendance is really the sort of place where you put all the stuff that you expect to kind of change between each year okay maybe teacher-sized it doesn't change for us very much anymore because we're all too old and all that kind of stuff but I would put that here and if you disagree we can do that wherever else but I'm just trying to give you some sort of I think we are going too much in details there are a lot of small problems that we can not we will not get anywhere I'm not trying to and we're really not trying to put all the details there now I'm trying to give you sort of a picture and I'm happy for you to take over I'm bootstrapping this I'm not trying to design this by myself with 25 people watching me typing ASCII art on type-to-type so it's just a sort of idea of what you mean what I mean when I say this attendance there is a shared understanding anyway I was going to do et cetera maybe I was going to put another thing in there there's actually one there's another aspect to this Summit does this wrong in my opinion at the moment which is that at the moment there's a sort of global table that has the registration level and so professional that's not in database schemas right now that's not in database schemas right now I think probably well with the people who are here they probably have a whole lot of ideas of what they need but they're coming at it more so let's start there let's address what we're dissatisfied with let's find out what we're dissatisfied with and then as I said for example the problem with the registration level that you're trying to mention is that it's associated with the profile and not with the conference that it's global so we agree that there are certain fields that's not going to be to exactly which but there are certain conditions of this right position in a capture the ask yard is not reading that's not the last year what you said just now I want that on the etherpad so if somebody in the room take that I haven't even finished my idea I want to make sure we're not are you on etherpads right now could somebody please just type what she's saying it's valuable so what I was saying is that we agree that there are certain fields that have to be in the profile and certain fields that come to be in the conference person and then we need to decide what goes where but we should not use this meeting to decide where each field goes probably yeah hutchstow raised a comment on IOC which is he thinks one needs a core package that does a few central things well and then hooks up to external sites or complex things like flying tickets and merchandise this is the way the role is designed to be regulated what is designed to work is to keep the conference management a bit small and link out to other systems of other things like we have a secret volunteer system if you need it can I just note if I do something wrong yeah that's the point so if we're not going to do database now we should probably start at a higher level and I do love what Maddux said like let's actually think about what our ideal system would be like what is it that we really want because we don't want to be we don't want to be we don't want to be we don't want to be we don't want to be what we really want because we have done a lot over the past year and longer kind of well you know with Penta Markle and Summit well it works like this we're kind of stuck with this but wouldn't it be nice if we could change this and this and we've just focused on very very tiny what can we improve just a little bit to make it better and I think like folks like registration you're going to have a whole lot of perspective on that because they're the ones who work with it all the time so we have a good one coming soon I don't know have you had any thoughts on working with Summit how he would actually like it to work better well concretely a lot of it has to do with just being able to actually get in we've had so many funny complaints about Allio we've had it's not exactly ideal that a company people have to get their own Allio account I think the whole SSO thing is probably not the best it should remain an option but I mean freedom and everything it should also be possible to just get a specific login for whatever system you have and everything the implication of that is that people can end up being registered twice in multiple logins you can make yourself five Allio logins if you want to as well and you have to in case you have kids and a wife which is why I feel that if you're going to bring accompanying attendees they should be easily their records should be easily editable from the client attendees and that they don't have to get separate logins if they don't want them and that should be true both for families and for kind of company accounts so there would be a company like Ubuntu has like 10 plus people here and they get kind of central invoice and everything and the people that tend to actually don't know anything about the process so it depends even if you're a molecule employee I'll keep them their own can I just ask something about the process how the group would prefer to do this like this is what you just raised this idea of SSO I wanted to start with this would be the first problem that I would have identified and then represent the possible solution in the database schema I don't want to go to technical at all but is it okay if we take these things and then quickly suggest how it could be done differently or do we want to first do the test and then mostly what should be done otherwise it's a great idea so the issue is creating another account for lots of people and they get hurry but do we really want to have our own outs or do we instead want to plug into other outs that are not alias like say it I'm kind of twitter oh no, my opinion my opinion is basically oh no so there should be one more sort of deck of things that can then apply to right, okay that was another point like the wiki do we want to have the same of a wiki maybe but sort of the volunteer sign up actual volunteer registration etc that could be one sign because sort of deck of things that are really strictly speaking related to what you ended up doing in that year and I was I was a bit confused so yeah, but this was more like not the exact solution but what the goal we are looking for do we want to have our own sign up or do we want to plug into other sign ups that already exist like we are currently it's one more constant with FSSO and an additional because SSO is already full system and then we do the service system and the people can choose if they have an adult account they can choose they can the fundamental problem here is that Debian doesn't have a single SSO that allows a distinction between people who are Debian developers and people who are just already that's the fundamental problem here it's not the endpoints can I add something not to be Debian signing up with the create an OIF guest account worked absolutely fine it's as good as an SSO for something who doesn't need the full Debian SSO it seems to work just fine the advantage of that is that it gets people to sign up for anything not necessarily my 30 year old will and my 3 year old doesn't do some work but my mom is going to attend on Saturday and she needs an A if they come I don't think do we then agree that SSO or some sort of flexible plugin solution is what we want, what we have and then we can talk about what the plugins are whatever allows us to not have to sign an NDA and gag agreement then we can use that because it's actually convenient for our users but then there is also the problem of possibly having multiple authentications coming into the system associated with the same person people forget where they've logged in otherwise otherwise possibly the possibility associated with multiple plugins with one record but that might be too complex that's not the way to do it because otherwise people that become developer then want to use it I mean I became DD between Portland and here I have 2 accounts it would be lovely to have them completely merged but let's take this step back at a higher level we want to simplify sign on it's too hard at the moment and then we go over the next one that's the fourth point that when you sign up for a conference you may well want to get somebody else to pay for this and having the ability to I'm so payment details on a different table together when I've been to professional conferences I've signed up and I've had to go into the office of the person who's paying for it to sign up and type in credit card details because he wouldn't do that so he has to know my t-shirt size and everything else and generate an invoice that he doesn't have to be paid that would be pretty nice although, yeah payments are different every year but this upfront invoice is I think a quite good idea if the system would be able to generate an invoice that would be really helpful because that's a lot of manual work and we found quite a few people where we still don't have the money it doesn't work I mean now this is probably something other than registration just quick note to that invoicing is not just generating the invoice but it's running after people paying invoices and if we don't have a back office that actually takes care of this and looks at what the outstanding receivables are and then pings people and runs after them and so on it doesn't work, this is why for this year we chose to have to give us money before they get their room keys and badges because there's no other way to ensure that the money flows efficiently if we don't have someone sitting in an office and doing this every day so I'm not sure of invoicing works but quick work is maybe outsourcing the whole process to a provider out there that does the handling of our payments no why not it's dependent on the venue I think money will depend on the country on how that country will handle the money where the money will flow I don't think we should discuss that but there are worldwide providers that we can just register the conference with sorry I think this is an important point to ask ourselves would we consider this and if the answer is clearly no we don't want to consider someone out there handling payment which is something that really needs proprietary systems at some point in time anyway there's nothing we can do about it unless we become a bank that's hard what are the reasons that speak against it why I might listen to my team the problem you're going to have with going with one provider is they aren't able to provide financial services in every country that they've complicated no I think it's right I think it's difficult to convince people that we can do also such systems we used to pick in touch last year for everything but not for everything the university was paid directly but for all the payments from the people I'm talking about registration of the people right now management of the people so last year the university was paid directly and then the conference people was paid like the complex so there were two separate payments that had to be done okay any payment should remain separate in my opinion I see until the invoice we can't generate the invoice but how it's going to be processed if people are going to pay it's the company paying where to pay this can be final later but sorry if we're going to generate an invoice we also need to then be able to get feedback however we get paid that invoice is being paid so that people's revenue can be plated for that specific year I think that the idea of outsourcing invoicing or selling our invoices to someone else for refinancing is a very good one because it medicines our work so much this is something that we don't want to consider because we're a deviant therefore we have to do everything ourselves then we have to agree on that so that becomes a big part of our vision so we're under a little car from the some of the placement here it's an interesting idea do you have anything else from registration that's sort of like from so related to registration the common thing when multiple people are coming from one company or the company's separate team wants to register them all to make them all get paid yes so you kind of need to be able to create a profile on someone else's department and say this person is going to be paid for so this is really just another natural situation so if you're invoicing then you can send an invoice to your company yes maybe that points to a good aspect we need good documentation because the thing is we send people these promotion codes because registration is closed now some can get still in because they are dds or whatever but there's no documentation so people have failed a number of times then we kind of need to fix a bug and now they try again and it's all very difficult because there's no documentation same thing for secretary what do you mean by no documentation if we had a pdf which we could send to a corporate registrant say like this is the process here you create an account this is what you will receive this is what you can give to your finance people this is the rough timeline so kind of this one page or a survival documentation that was helpful yeah for those that usually go wrong which is first timers, company registrations individuals from companies that found out they are sponsoring this and now want to make something out of it because we have those cases really funny are we sponsoring this I saw our company and the sponsors who's responsible exactly like do you have a contact with my company who did this and they already paid the money was already there anyway so yeah a full documentation on the no no I'm confident you will have worded I'm not sure if it was a series of music so I think the summary of this if we want people to be able to create profiles for other people it can be like the company secretary or it can be like a DD creating a profile for their partner and their children and their mother and their whatever a company person that they want to register for the conference just be aware if you do that you also need a method of merging multiple profiles together and say these are all the same person we need that anyway yes we also need merging and we need the ability to take control of the profile that was created by someone yeah like if the company creates the entries then the DDs that were registered by this person I mean that seems admirable so do you not want that the other way around that the those who are attending us to register are going to get it but this is the person who is also going to pay for the case of children you don't and I also have the case where a company has like 20 people going and they just sign us in just register everyone right so that is a common pattern as well so we won both as long as they tell us and we continue done with accounts important point one of the common problems that we have in registration is that during the organization we have many teams that need to track people so we need all of the dynamic way to create tags can we postpone this just a little because I think that is very important huge but I think that is what comes next I am trying to gain time in the day now we need no I think this is what comes next I think this is the next huge step so we are done with accounts so we need the t-shirt the the speed and every conference is different possibly we should the account need to be able to create new tags we need right like conference dinner option bakery option assessing participation whatever all these fields that in every conference are different and it doesn't make sense to be adding a new column to the documents we want something flexible flexible and different people can add different organ organ should be able to fully agree this year it was a nightmare in terms of having some at their room on occasion in a spreadsheet and all the special cases in another spreadsheet and then getting deeper office to merge spreadsheets and then yeah it was very difficult so we we try to push data into the database in the past we've done that like for instance for the assassins game or we put other things in there that no other registration system would ever have and at some point in time Kant had just said look this is getting ridiculous we can't just add a new field whenever somebody says this will be nice because I think it's just getting a mess so I'm finding a solution that it's like use of facts in the DTS that would be ideal if it somehow stayed consistent yeah many times they are people are times are easy enough to do in a way that doesn't impact your core implementation and are just added on and it gives every team their own mode of course preserves your mode of working and we agree 100% we want this which I think is going to make it very difficult when we look at existing systems typing is easy enough to add it's a separate database it's just linked by when you say separate databases I go crazy I'm getting into database schemas we're not getting into database schemas we could aww it's easy we'll just say that what we're saying here fundamentally and I think it would be important if we put established consensus on this is that our goal should be that everything about our conference should be stored in one place yeah just don't forget backups don't forget backups are you scared? what kind of conference what's the conference? so what he means is like the room locations should also be in the same place for one conference or this was a question of all the conference should be in the same place this is an important question that we have also in the past if every year we start again and this will be easier to find tools we need a multi-copper I think that's should we just go there I think your multi-conference system just makes sense because we do get a decent number of repeat customers the downside to it is that we have a multi-conference system we have to maintain it forever until we replace it with something else and then all those websites that we're depending on are gone unless we have some way of exporting it's already 10 years down the line it might be quite hard to get that into the system the nice thing about everything pencil out what it was playing HTML so you can turn the pencil to data and know it's not there anymore you only need to import data for the previous conference it may not be importable it may be like you only have to inherit for one year so once it goes two years down the line we don't care you only need to visit anybody who hasn't protected for two or three years their details are properly changed anyway and you might want to the old details and the old conference site for some reason someone's name changed when they attend the third conference and there's some reference on the page you don't want to start rewriting old pages I'm not sure what your point is now over the years of the conference we need to add more features and maybe we need to make changes to the database some new thing that we start doing in the conference right? but if the conference management system is all dynamic HTML pages the old conferences either get broken when we do that or we have to spend time updating them so that they also support whatever this changes so as we find a way to use a very helpful static version for an idea of the other solution being we simply cut it off but then we have to maintain it forever we still have to have that site running forever take the data from the database import it into the next database and are free to go and use migrations only for one year it's just convenient that I don't have to enter my data again so what you are talking about is about the website the DevCon 10 website has the skin you of the DevCon yes that's what you are talking about yes but that is management system but it's just like one specific part so there's two aspects of this one is having the old websites be able to be used continuously no matter what backend we use or changes we make in the years the other is the data that's in the system is useful in ongoing years but that's a data archival problem and doesn't necessarily have to be solved by using the same database for every year of the conference there are many many ways to solve data archival problems yeah so I think the point is we need to make sure that the website pages related to the conference are static exactly but it doesn't necessarily have to be static but there must be a way of making them static yes I think basically once the conference has happened the schedule of that conference isn't going to change it's not retroactive doesn't that just mean that what's time T now is past that date it has to be static yes thank you so if it's in the future it can be dynamic if it's in the past it's static then what we really need is a system where you can run W get minus one on the site on the last day of the conference and then we have it forever archived and we don't have to run the database forever it's not hard to do with Django what in particular you need to kind of decide what does it do at the end of the conference it all goes out to HTML and the next year they just start a fresh database for the new year so they do that archival but there is the other problem of you want access to say registration data all the way back in time and in fact it would be really nice if you could get those out of Pettibar and kind of have them all accessible to whatever the next system is so that is not actually the same question that might want a separate system exactly I think the thing really just pertains to the things that need to go static really allow just things like scheduling any public site yes whereas user profile stuff is not related in the same way but it might actually be useful if it wasn't if the user profile stuff was abstracted out of the old system it's not static it's still a database it's still searchable but it's a separate system that's tied into the scheme of whatever conference system we used that year and then becomes easily linked into whatever system we used that year but this is precisely why I wanted to design the database we don't have to do it this year but this is what I'm getting into the goal here is we need to have access to the data from previous years conference not just the webpain and find some way to do that that needs to be but that doesn't necessarily right it probably shouldn't turn static it's not even a benefit if I change my name next year then the website is static I'm still the same person we're not going to run statistical analysis on the name changes of our attendees over the last couple of years it doesn't matter anymore whether I change my name the data should always be accurate does that strictly speaking end up going on to the static website the static website is done it has my old name on it your name was Harkin Smith in 1999 and it's there in the static website is that was your name and you changed it to like Bob Smith 10 years later we're not going to go back and change that was your name at the time that's fine, it's static, we're done but in the data that we want for registration maybe it's actually no okay I think we outline the scope of that problem sort of what we need the system to but then the things that you just said we all just said is that we want to consider having the database separate and then feeding into whatever conference management system we use because it's also going to allow us to easily change the systems if we ever wanted to but it allows us to define the needs that we want and that's our things and also the static making the web page static post conference is a good idea that we want I think those two so let's keep those as conclusions sanity and cemetery purposes that's that what have we done please yes yes we need confirmation image that is like people say don't get confirmation email don't look at web pages after a present maybe we need a point later on about the things that we want the system to be able to do with a single click like invoicing email but this is like when you register you need to get a confirmation email everyone is expressing the email when the email doesn't come they think they are not registered on the other hand this is the important point that I forgot earlier one of the problems with alias has been that people went there to sign up then they had to wait for somebody to check that then they got a link which they then had to click and then they were back in alias and then they had to remember that they were actually on summit using that alias account that was a very long process that killed a couple of people so there are solutions obviously whereby we don't need to do this ping pong you kind of sign up and stuff there is also sometimes the case that people's emails are not changing I put that in here there are solutions not requiring we can't get away from that moment versus a good documentation to be able to get along with that it means there is a bumpy road it's not ideal and obviously you can make a play for example when it doesn't have an alias account it doesn't have an alias account and then show pictures of how it is registered so it's painful it makes it painful I couldn't register another alias which is this multiple so I will fix it for next year amazing back to your statement with registered alias accounts it would also be nice if some users could benefit from the account of other users we have the idea of that we've talked a little bit about we thought that was a good idea we did wonder about certain alias just being defendants so for example somebody brings a totally non-technical spouse these people really exist who really doesn't want to talk about their registration but they have multiple profiles for spouses because they may only meet every once or not every year they may say hello I am such and such a person this year I'm bringing my spouse and kids or whatever however the next year we're following the notes to follow the lock in this year and then another year is like yes close enough let's take them again so this will then be enabled and disabled for the year also more children might have it's also nothing to do with the community my wife is pretty technical she's not a W&I but it's also fine I sort of persuaded her that many things and then she had to do the annual thing strike non-technical strike not inclined to deal with the administration of their profile whatever the owner of the profile would then be able to change those data and one idea that I had earlier was when I create like for instance I create Natty's profile then with her email address Natty gets an email saying you are now registered that's the confirmation email right and it could contain a link that could allow Natty to then go visit the summit, log in herself and the profile will be shifted to your owner if you wanted to take over it's not hard to do that's an idea or if two profiles are associated and if you have to change an arrival of a project there have been cases where sort of spouses or whoever have different dates just because they haven't coordinated themselves these profiles are associated mind please change the next rule of this that might be a UI thing that's good what you were saying though the reverse case is also you might both independently register and then one of you can't actually be able to do all the stuff because I can and then they could associate I don't think that's going to be hard to I think it would be important while we are on the I'm sorry Judith do you want to go ahead no should those sub accounts be completely dependent on the main account that means the main account if it is deleted then the sub account is also deleted or will there be independent accounts once created I think there will be no main account just an authentication profile that's where they are all tethered to oh yeah there is no authentication help yeah and we could do instead of cascade delete instead of deleting all of them if an authentication thing was deleted we could re-associate them to the like Depp on Orga by the way we don't delete anything no but it might come up it might be necessary and we do have to have a sort of Depp on Orga authentication special role anyway where for instance Depp walk in registrations can easily be done so they don't all have to have an under Nati's name which makes no sense she's a very nice person but she doesn't need that she has a lot of dependence I am the auntie of 500 people for a week so alright do we want this yes it doesn't scale there should be say an onside registration user that's what I'm talking about that can then get those profiles can then be released to their owners if they so desire in future I think frequently onside registrants are just people having to I haven't analysed how much repeaters do we get from people who just search for them it tends to be local users who are interested right then what do we want to have for local people what all sort of short term visitors so what would be the ideal solution for this I suppose in that case the authentication thing would just be you know the dedicated onside registration thing and then profiles that hang from that what we now do with the stickers isn't that sufficient what I'm asking what's the ideal that's what's sufficient well no I actually find collecting as little data as possible ideal because we don't have to maintain it in Germany for example we would be legally obliged to leak all the data which we do not need for our business processes anymore that means we have to actually yank the whole database after the leak because there is no legal acceptable reason why we keep it now that said there's probably a 500 year fine and if you violate it and nobody has ever been sued for that also the German fine is not running exactly so and you definitely don't have data for our German health contracts with us I think we're fine let's go back to my question my question was how do we mission in the ideal way that won't have we're in video already I can really go about it in detail I think that we are way too to the conference we had some at Portland I think we had a fair few what's a fair few like 5 or 10 20 or 30 there was actually quite a lot in Portland because there's all the students there's sort of local geek community it's a very geeky place already geeky but not necessarily deviant but they want to sort of have the geeks so there is a well actually at Switzerland we also had a lot of people so you come for the birthday party we just did that as a text file list but yes also in Nicaragua it was too complex to make people for deviant day to register so we have a separate the ideal way is to have a simplified registration without a route and with a simple registration but this was also a discussion with Madac probably with Martin probably we need to split the accommodation and the simple registration so the people will do only the normal registration and for the accommodation then the people will have to do it for I was going to say for for deviant day or whatever that event's equivalent is called we want something where we can generate a batch you know quickly but we don't necessarily need the holes we don't need the holes for that how about how about we do something like a kiosk we have two machines there with the summit website people can register and they get an ID and then that ID either we have a label printer attached right there you do need that staffed though otherwise they can just have it need to be not registered by alio no obviously this could all happen under the roll account kiosk 1 and kiosk 2 what's the scenario where people are going to abuse it penta had such scenario many times we had the two computers to register the people can directly register but they think they go mainly to for this and for this register people don't want to type I mean on big events where there's going to be a lot of exciting visitors we can just have the kiosk but as long as they're stopped it depends a lot on staff and I think this is a general problem that we have all over the organization that the expectations of our attendees are at the moment just make me feel like a king when I come here but I'm not going to pay in all positive senses and all negative senses of what that sounds like if registration can do this a front desk can do this all the better but I think we should not be afraid in the future even more so than in the past to tell people you have to do this otherwise you're not going to attend and you know shift the rules a little bit over and outsource some of the dirty work that we're doing manually all the time as Oregon team to the people themselves what are you scared of? people getting three badges instead of one or lying about their name are we checking the ID for this? well I think as Demi and you don't really care about people lying about their names given that we have lots of people who use pseudonyms that's not a problem do we really care if we have to take people on some? no it's sometimes lying sometimes we might because we're Demi in also for things like fire safety we want an accurate picture of how many people actually in the building so it just makes sense to have somebody attending the machines just making sure that we can get a thing in this walk up this could happen if the person has his computer my concern with kiosk registration is just I've implemented it before and it's a massive pain to get it right to the point that people don't make huge errors so you probably end up having someone there attending just to make sure that they have a stack up when the system confuses them and they can help you this is incredibly something like literally have no other option other than the one person but it is really nice when you can get it working so well Paul, what is the purpose of our if we are in a place I think the system should have provisions to force us to enter certain data if we're for instance legally required to collect those data but then we kind of like shift per conference we can shift the level of environment it can just be really simplified whatever interface and then if it's three or four fields that you just fill in and then you click enter and that's it some people are going to have problems with that and then we help them we are probably also not going to have a blind terminal set up so we need to cater to all these special cases but I think I would like to assume that the most part of attendees of this conference am I wrong? yes, because they come with the weirdest browsers available that's why they get a cure that's why they possibly book the plane the printer stops working that's why the key off is at the front desk and when the front desk is not busy well exactly, so you have one front desk that's just kind of keeping an eye on it I mean I think I don't really feel much of this but just so you know it's a good feature to add it's a good feature to add let's put it in, it's not an absolute requirement I did use for anticipation yeah, but making sure that it's like a wish list and not a requirement we did it twice it would be nice to add a wish to have not a half on that I added something to data here before we move on maybe just quickly so this year for the first time ever we really had to deal with people taking a break from DEF CON and going away and with the date ranges that's kind of really hard I hope that in the future the system is going to have the days associated with the conference didn't PENTA have availability by date? did no, I was not going to use no, but you can we can use that we can even put meals it was useful but this is the sort of they're not going to get people to check themselves actually I think if we had the data it would be something which registration could really do because there's so much information like who's leaving which we have if we had a system where we could put it in we would get more accurate data like how many people are having lunch how many people are there this morning stuff like this doesn't necessarily mean that people are managing the data themselves I think that's what we can to be fair with engaging in bits and pieces we need to know when they get a proper offsite for a meal until typically 15 minutes before they're about to go offsite for the meal that's true, but there was the issue like if we count people per day what does that mean for the breakfast right because you have 200 people arriving today but you don't want to pay 200 breakfasts because they might be arriving at noon exactly so you kind of what you do is like no breakfast which is probably wrong you say half of the people for lunch which is probably wrong and you say well probably 9% for dinner which is wrong too but it kind of is okay enough to go with the value so we knew it better so do you know it I think the important distinction we should make here is that on the UI side it could be as simple as adding a range of JavaScript fills and ticks the boxes and whatever so people aren't expected to click 12 times exactly, you can refine it if you know that you're going to be absent and even if you don't do that we can use that we can actually say we know this person is taking a break but how would we know it I think it makes sense we did know we get an email and this is an exception I'm just saying there are going to be exceptions and the more exceptions we can think about and find a way to cater for them by making the system flexible enough the less liberal office spreadsheets we're going to play around with Marco, you noted everything about the bread but it's not on the system of the breakfast no, but what I mean is I know about 6 people that have now left towards CCCCAM I don't know if those are the only 6 people that actually left or that there are other people that also left towards CCCCAM and then we didn't know because they needed to practically tell us about it so if there was like something that they could have clicked I'm not going to be present this for 5 days it's not working it's not working it's working it's predominantly working it's just I can't see it well I don't know I can it's sometimes not good so okay okay that's it I wanted to start a new discussion on a but unrelated to what we've already discussed. I think we're good. OK. So I think the process of how registration works right now that has been how it's been working for years is broken. I think this is how I envision it would be better. People sign up early without stating any dates, just stating, I want to go to DEVCOM, I want to go to DEVCOM, but nothing else. And I request sponsorship. So we want this early for people that want to request sponsorship or they want to submit a talk. So they just intend to go to DEVCOM, but don't need any data, just I want to go and sponsorship talks, nothing else. And then when what we call reconformation time comes, we actually call it registration time, and they have to go and fill in the dates, and fill in their teacher's side, all the data that we want to have from them by a certain time. By a certain time, right. But we don't ask people to fill in their dates like six months before the conference because nobody knows when they are going to be there six months before the conference. They just know that they want to go. And so like intent and registration, yes. So that's a really good idea because they also feel like they've registered. They use the mail for the you need to tick the box. They know that they're filling in the data, so they've registered and they've got a raise for it. So we still sort of keep it two days, but not quite the same way. Right, in the first phase, it's just the minimal thing that if you're not, I'd like to be there. Right, so we don't actually want to go to the conference based on that. If I was to go, I'm interested in going as long as the lady is. Yeah, but so it is important for people that want to request sponsorship or that want to submit a talk. Or want to travel and want to book plane tickets. Well, but in that case, you don't need to pre-register. If you are not going to get sponsored and you don't need to submit a talk, you don't need to pre-register. You only need to register. Unless, of course, I would like accommodation. And I want to know that I have got accommodation before I buy a plane ticket. No, but that's my point. Accommodation comes later. Accommodation comes at the registration time, not at the pre-registration time. Because otherwise, we are dealing. We are dealing with dates that are completely unknown. Because people feeling whatever dates they think of, which are not real. And then when reconformation time comes, a lot of people just forget to check those dates. And there's also a problem right now, because you can't tell. If someone's actual dates are exactly the same as the defaults, you can't tell if they just forgot the dates. No, the default dates. I completely disagree with you. If I'm going to travel, I want to know I'm leaving on this date, coming back on this date, before I book my plane tickets. I want to know I've got accommodation before I book my plane tickets. It's going to be very expensive to go to different continents. A lot of people travel from, not just the different countries, but over different continents to get here. The earlier you know it, the better. I don't know about you. I have to book my holidays for work in January. Yeah, yeah, yeah. I understand that the problem is that we can't tell you. You will get accommodation until reconformation time comes, because everybody else, I mean, you are tidy and organized, but everybody else just feels like, whatever crap it is. I think it's overhand. We're trying to avoid exactly the problem that you're currently talking about, because we don't want Orga to be reactive. What we're trying to do is Orga to be proactive. And at the time, if you're talking about accommodation per se for attending the conference, self-paid, I think we can guarantee that it's going to happen, because we need to figure out a way to close registrations if we're over the limit. This was, we didn't wear them prepared for this year. But if you are going to be sponsored, just let me finish the thing. If you're going to be sponsored, you will have registered your intent, and you will have gotten an email saying, yes, we accept your sponsorship, which means that yes, you are going to get accommodation. And then that information you'll get in February, like six months before you book your. I think the answer here is the early indication needs to have a tick box that says I'm going to be requesting accommodation. And that way you've got sort of like that early, you've got that early entry into the system. You know, you're not going to get in late and then like there's already 500 people before you. You've already said, and for the folks who are making the planning, that actually helps them because then they start to get a count very early on. If you're going your way, you should be able to put the dates in. And if you pay, it's a hard question. No, no, because then we say, okay, so on this day we have 300 people, we need to reserve 300 rooms, and afterwards it turns out that reconformation period comes and people change their date. The only hazard which is there. If you say you're paying to come here and you're paying privately. Can I point out simple solutions to that? These are two points back to earlier. You said the minute points. Bill, well, you're taking money. You're about to take money. If I say I'm coming on this date, here's my cake of details. I'll pay in about six months. Well, okay, we're taking money with your education. And we don't necessarily need dates because we can just assume, okay, if they tick that, we'll just assume they're going to be there for the whole conference. And then when we get later on and we actually get the real dates, that's when we'll do real applications. And his point is that he wants to be able to go in to book everything else with it. We don't need to. But he's pretending as a professional person. He's throwing money at us, right? We don't need to. And he's throwing money at the airlines and everything else. We don't need to book it and be done. We don't need to provide guarantees. We know we're going to organize accommodation. We can say that if someone says that we professionally registered and they're going to pay their accommodation, we can say we will give you accommodation. We don't know what your dates are yet, but we'll make it happen when we know them. That's fair, right? But that would be really cool. This is what Matt said as well. I think we can do that. Once you are registered in a certain way, like you're a DD and you get sponsored or you're a professional and- Or you were there before we closed registrations. Whatever. We guarantee you accommodation. And this line, we guarantee you accommodation. Would be safe enough. You don't care where you sleep. You don't care like with whom in the room you have to share stuff. You will book your flight tickets anyway, but you want to make sure that you have the place and not have to hit out to whatever culture inside to kind of make sure you can say something. In the actual registration, like when we ask you to provide your actual dates, that should be as late as possible in some ways because we want to make sure that you know as an attendee with reasonable certainty that these are going to be your dates because you are not going to look at them again and change them if you're fine. Once you book your flights, it should be allowed to put your dates in. Yeah. I'm saying I just paid my flight, so I'm definitely coming in. Yes, that would be good enough. But it doesn't have to be though. If, for instance, you book your flights in February and we have the cover papers end in February and then in March we are able to give you like a slim, like the best talks and whatever. And we open registrations then, we'll be sending you an email that says the registrations are now open, now you can enter your dates. I mean, and I don't think we want to allow people to do that beforehand because it's, again, a complication of the whole process. So you have a pre-registration period where you submit your talks and then after a certain point you have a registration period where if you're a correctional attendee you can pay, even if you can get, therefore there's no chance of you missing an email when you get to go. And once you're registered, once you're registered, you're registered, you've got whatever you book. Now it might be that you want to change that, but if you've booked a combination of the dates and the documents you've got here, people, that's what? Yeah. And then you can book flights and everything else. Well, that's, so hopefully you book the flights first and then you understand that. Because if you book the dates first and then you book your flights, you may end up booking your flight. This will be all easier if we ask people to say, if you want accommodation, there are these three places that we have. And if you quote that from 16, as the thing you get reduced, right, scope right. Figure out who your roommates should be, go. Sometimes we can do that, sometimes we can't. A lot of conferences do do that, but they don't sponsor the majority of the attendee. But it's, the sponsoring is trivial to do. You tell people another code, you can say like a promo code and leave a tell if somebody comes with that, but code, then it's our invoice. From my experience, I'm wondering if we could make a markup of this and explore the entire scenario of the different people. So I was sponsored. So it was in my annual best interest to book the flights as early as possible. So I needed to know that I would go. But I couldn't buy the flights for quite some time because I didn't know that it would be sellable. We bought it as early as we could to get the cheapest flights to us when this was my response. This is a common problem with their content. Most of the team always tries to do sponsorships as soon as possible. But do you have a fairly good idea? We didn't succeed this year. I think you're too insane to trust people and not hope which is exactly when the lowest price. And I understand that you can't do first come first serve because there are people that you would really want to be there that will do it only later because of job commitments and most of those PDDs. But I do think you could reserve 75% of the points for people who got first come first serve and that is six months in a flight. That's not a conversation, that's a group on the freight. Right, yeah. That's for sponsorship teams. If you do this year and you experience what you experienced, find out as good as you said we got. Yeah, this is the best of the team. It's been much, much worse. And you're here. Come on. Okay, more pertinently, I'm sitting on this meeting for an hour and a half on board. Can we get something? There's the door. Do you need me here? Well, so. I'll tell you, you can do whatever you want. Like, okay, so I made my point. You could make your point. I don't want to make any points, I want to help. I don't know, this is mine. So I want to know, these requirements are good enough. Have we captured everything that we need? No. What are we? I put a couple of points further down. Some of them are much less important than others. But I think this one is the next one we could possibly talk about, which is the scope of the system. And it relates to the comment from IRC earlier on about the question, you know, are we going to create a, what do we have a German saying, for a milk giving something? Oh my God, I'm not even going to. Are we going to create, what is the thing that does everything? Egg laying milk, thank you. Thank you. Egg laying milk, thank you. Egg laying, real milk, thank you. That's it. What should be in the system and what shouldn't be in the system? It doesn't have to be just one system. We're living in the age of microservices. It isn't really not just one system, right? Volunteer system is kind of tied into summit, but it's not summit. I don't know how tied he is tied. Not much, we recycle the ATG, but because for them, I see that volunteers are volunteers forever. It's less tied to our conference, so then we have difficulty to use it properly. But I think it's good to have separate, but it's not so tied because we have two different structures. The one thing to say against microservices and using different services is that it's probably gonna be a different UI paradigm every single time around, and sometimes we might have volunteers who just wanna help and don't really know what to talk about with learning different systems. Definitely, I think that is a big concern when we are facing attendees. So at the moment, even the fact that our website and summit are like different HTML backend servers is weird to some people, and we didn't have the sponsors list next to the schedule, for instance, like Daniel and Katia hacked it in three weeks before the conference or something like that. Be good, microservices is not a different UI every time. It's just all little Django apps and they connect together well, and it doesn't have to be a massive model of this thing. Okay, so we're at the level of Django apps, and then we're probably also at the level of providing some sort of abstraction. There's something that occurred to me the other day which is literally that conference management is really resource planning in so many ways. Whether you're talking about assigning people to rooms that they sleep in, events to rooms, speakers to events, volunteers to tasks, and so on and so forth. The list goes on. It's all the same problem, just with different names or variables on it. And you can change what way. It's a very similar problem. It's not the same problem. But I'm thinking, can't we have an abstraction layer where we make this... But it's not the same. No, it's not. It's the database join that's on it all. At the fundamental level, all you're saying is we have entities and they have relations, we guess. Which is true, I mean, I think it's actually true. Yeah, but the problem, for instance, comes with auditing. So we want to make sure that we record every change. Now you implement the volunteer, he implemented the volunteer management, you implement the sponsor management micro-app on Django. Do you want to implement the auditing in your place, yourself? Would it be in post-grading as well, directing the database? That's one way. Do you have the authentication information then? Only if we do it, if we actually use SSO to log into the Postgres database to make a change. Why would you have to log in directly to the database if you had to have an API to do that? Yeah, but that's what I'm talking about. That's what she's saying as well. I think we're in violated agreement at the time. Violate agreement. So the micro-services thing, so I think the thing is to have the data in the same database. Like we have- To do it accessible through the same interface. That's the important thing. Well, okay, so what I mean is, I have the attendee data that has their name, their dates, their email, and I want to add in which room they are streaming. You might have to go to log on to a completely separate system and do that. You shouldn't have. Right, I'm not talking about the UI. So what I want is that if the attendee changes their dates on the registration system, this is reflected on the room allocation system because it's the same dates. I don't care if the UI is separate, but the date dates, they are only once. So the requirement you have there is absolutely correct and it can be done either with one big database or with separate databases that are related. It's just normalized dates, I guess. Yeah, yeah, yeah. But you're absolutely right about that. My point is not having the data duplicated because if it's duplicated, you need to be like abating and that is the symmetry of that room. Yeah. We're kind of getting into low levels of architecture. Good. So I know it's like that. It's probably a distraction from our media right now. But I mean, I think the general requirement that however we do this, they need to be, the information that we have in one system needs to be excessively transparent from other systems. So like volunteers right now is really hard because it's not really hard, and it's harder because it's separate and there's not a good connection between them. Or not a really like automatic connection, you know. Just reminding you all that Hodge Star is getting comments in the Hodge DevCon team channel on IOC. I don't know if you're all following. I'm not. I'm just going to learn. What's the important comment you just made that you wanted to? No, nothing. There's been a stream of them, of them. We're not one through it. We're often not paying attention. I'm not. But I'm not actually. If you want you can... We lost it. I hope he's nice. Okay, I'll put them in. I don't know. That's not what we're saying. He's okay if we read them later. And reading through them, it does look like we've managed to cover it. Yeah. So that's good. So let's move on to the next one. Indeed, the thing about the auditing of the database layer, I think that's a good approach to do if we can make sure that all the data that we need are there. But in general, when you say multiple databases, I go crazy because the one thing you don't have between multiple databases is consistency. Insurance, like the AC, ID, asset thing that databases get, right? And... I don't think that's a huge deal. Yeah, it's a solved and solvable problem. The reason I'm concerned about the one big database is it's a very, very fragile, verbal approach. And it is, you actually get a whole lot more flexibility to evolve over time if you encapsulate your databases in a way that it's almost like encapsulation for object-oriented. It's almost like microservices are almost that level of it gives you just a cleaner way of thinking about things. What's up to do that within the database? I mean, you can use... You can do it with just separate tables and a single database. Okay, but that's what I mean. Yeah, you need to open mouth, actually. Yeah, I'm getting a great way off. It doesn't really matter. That lovely architecture doesn't matter at this point. But, yeah. I did want to make this one point about the consistency. I mean, maybe I'm just a burned child after these last four weeks of handling registration data and competing into the venue and every day spending 20 minutes with a venue discussing about things that didn't work out as we had recorded them in some way. So, and a lot of the problems stem from the fact that the data are inconsistent between the various sources that we have. And therefore, I would like to actually have a very stringent database design that forces us to have consistent data. And if you put like that, you know... I think you're agreeing with all of them. Are you... I think so, yeah. What are the different sources, like you're saying, between summits and your current spreadsheets? Libra office spreadsheets. Yeah. Yeah. Well, yeah, because there was like... You're going to have duplication whenever you create a spreadsheet. That's... Yeah, I don't want any spreadsheet ever again. Some of the problem is in our database that we... But you're running the database. Didn't design so good and we asked twice the question about sponsorship. So, some body put sponsorship only on one side and they are such an inconsistent data. I think it's independent of the database. So we should care better when we put online this. We all care about the requirement equally. The exact implementation detail of how we make sure we have that consistency is something we can make the later. I just trust Postgres a lot and I would like to have Postgres enforce a certain set of based rules. I have had Postgres terribly, terribly messy up on that. So, like, I don't trust Postgres as much. Because it doesn't... I don't trust your data set. All right, that's it. But what you were making about you're concerned with conversations with the venue, once you've got people able to change live data and change dates, you've got to be able to get data every time you go in for some really real change of data, even if you don't get the live data set. Well, yeah. But it should be a small amount of change between each date. I accept that. We need the ability for data to lock down changes. Yeah, but then what do we do? Like, someone writes in and says, oh, I had whatever kind of emergency and I'm arriving to this later. Yeah, but then we need to figure out this is the problem that we were trying to solve before the conference. That's fine, of course, that is important information, but we need to ensure that it eventually trickles all the way to the venue in a sensible way. And at the moment, I can tell you the way is not sensible. It's terrible at the moment. After a certain point, can you not say, yes, we have as information, rather than accommodation, you need to tell the hotel. Well, the hotel is going to demand, I guess, a freeze of information and your paid rooms, whether they're occupied or not, after a certain point. Right. Actually, we're in debate at the moment. Yeah, if you can get a better deal than that, that's fantastic, but we've got to accept at some point if that's going to happen. If you can allow people to change things, but the change doesn't actually get applied and they have the classification message that gets sent to the order folk and then they can say, yes, I agree with that. They then know that that person is going to be there for two more days. I think we should do it again. No? How does approval work? Cool. Then they can do it on the plane. Just push it as I get the wi-fi again. If you don't manage to submit a poll request, you're not worthy of this conference. All right. So, we kind of wandered off on the side question of implementation details, but the scope of the system is partly a question of what do we need to implement ourselves and what can we do to lose from other places? And I think that was kind of where you started, was should this system handle like all of the scheduling, accommodation, web content, volunteers, video team planning, all of that? Or do we focus on a few things that we really need specifically? I think you answered that question anyway. Does the overall system, or at least you knew I should, but whether it's made up of many other little systems underneath? Is it a question? Is it an implementation question? Yeah. But just to understand what you're saying, so microservices are good and well. I mean, obviously it's best if the registration team handled or front desk was in charge of the summit and something like Django app that did the front desk check-in process so that if they don't like something or need to add a new field, they can quickly change the code because everybody here can probably do that and deploy it. So deployment is another point. But then all these little apps, they do go to a central source of data and it's not separate databases that then somehow need to interface with each other. So we do have one central, one machine that provides the database and all the infrastructure, web server. I live in a world where all the services communicate over REST APIs and they are completely separate databases and it doesn't matter, they are still synchronized. Yeah. I would expect the databases to be different. It's good. It's a good team that we want, running their own system, which is a lot better and they're looking to it. 2015, that's how things work. As long as you want dense spreadsheets. Fine. We're going to do this very minimal thing and then plug all the pieces. It's more likely there will have something soon. If we end to this. Yeah, absolutely. Sure. Exactly, that will spend a lot of time in this ideal and something that will cover everything and we won't. No, no, totally agree. But we need to make sure that, for example, for next year, we don't need room allocation because everyone is in a central room. So nobody has roommates. It's just like one, two, three, four, five. We only have a choose choice between single rooms and family rooms. So we'll have to have that level. But we don't need like the accommodation system that allows someone to drag and drop people into rooms. That doesn't need to happen for 2016. But we would like to have the possibility of eventually developing that for 2017. So we need to make sure that our system allows for this thing to get developed in the future. Even if it doesn't happen now. But it needs to be possible. That's it. And that's, so my bigger concern on scope is not scope of all the things that we need eventually, but what are we gonna work on in the next six months? But that's the question. For next year. That is the question. I know we can create a gigantic, what is it, egg laying, pool, pig. Translations are hard. That's never gonna get us anywhere. No question whatsoever. And obviously, if we have interface, I'm failing to sort of imagine how that's gonna work. Because I'm a very child of this fricking registration process. I think we're both talking about the same thing. You just want a thing where there's definitely 80 pieces of data, there's definitely only one touch. But it doesn't need to be on the same hard drive as an unrelated bit of data. What's scaring us? As long as they're always in the place that they're meant to be in. What's scaring us about what you're saying is it means we have to write all our systems. We can't reuse other people's things. But how would we reuse other people's things? Like we're doing what the, what's it called? The volunteer thing. The volunteer thing, yeah. So you do an SSO from the main system or something that links the profile. It just says this user ID there. Can I have another one? What's your pick? What I told you about. Oh, yes, sure. Yeah, which then also means that an attendee can see draw up their own timetable from their profile, for example, bringing up the volunteer commitments. They may talk to it, but they're not interested in. I'd really like to see that because it just seems a lot more sensible to consult their own thing. If you want to do something like that, then some central system would have to pass the schedule system, what's things that this person interested in and the volunteer system, what things that they're interested in and combined. And that's not good. I think it'd be very convenient. If we look at a system that does just lay out a good timetable, allow people to book their things and then a volunteer management system that allows to have certain roles filled for every time thingy. We're talking about, I don't know, in between half a year and one man year of work. That's about the work that is behind that. So I think realistically, you either use one that exists and that's close enough or you won't have it. Well, there's another thing which is right now, if it's all one system, then the small team of people we have to work on that one system are the only people that are ever gonna do that feature and no one else can do it. If we design it from the start as separate things that are linked together with proper authorization, then we can tell someone, look, here's the authorization piece that you need to use. You can create your own Django app. It's completely separate, it has a separate database. It doesn't interview with anyone else's work, but it can pull data from the other piece of the system. That's kind of what I want. And it gives you a little bit more flexibility to just say, oh, you wanna make that? Great, go do it, here's how you do it. Which Penta kind of had, people added pieces to it over time. Summit really hasn't, it's very much like forces you into the summit if you wanna do anything you have to do with the summit way. The conclusion of things for all the time is Penta wasn't that bad. I didn't want to say that loud, but you know. It was Ruby. Yeah, it was Ruby. Remember the AET? But it wasn't that bad after all. How does the system, I mean, I'll myself as being a non-microservices version, I can understand it, but I don't implement these things. How do I ensure consistency between two systems? It does, and it's usually not a problem. You could have millions and millions of objects and one or two inconsistencies in them. So the way you ensure it, if you have something, you have apps that you need consistency on, has to be consistent. It only lives on one service and all the other services have to pull it from that service. That's how you ensure consistency. It has one authoritative source. Yeah. But it doesn't mean everything has to be in the same database, in the same big Jango application. Okay, but it does mean that things like transactions are not necessarily possible. Or does risk give you the possibility of transactions? No, an introvert is not necessarily possible. And if that's a problem, you can implement a screen app. Actually, that script that goes and that runs every now and then and looks for all the objects. And that's how you come from the 2015 modern federated systems back to Chrome jobs of the 1980s. Why did we have all this database designed in between? So, that's just for fun. Usually, don't do it. You do an object database and then it all creates itself. If you want to, you can do a truth-by-truth other than to, what's it called? Two-step commit thing, but no one does that inside. So, for taking once again the room allocations thing as an example, there would be like a central service that has the entity data, that has their name, email, dates. Those are there and can only be changed there. The room allocation system would collect this data and like get all the information from the attendees and then like drag and drop people into rooms and assign the rooms, right? And then store the data back in the central source. No, it's a foreign key. Yeah, it's a foreign key. It's a very foreign key. So like, if you're working on the interface for accommodation, all the accommodations data get stored in the accommodation system. But the piece that has to be authoritative is remote and that is who the attendee is, what their attendance dates are, and their sign-on. They're a single sign-on, that's the difference. Let's assume we have that. Let's also assume that we have this micro service that handles payments and finance accounting and so on. So now I need to report to the venue who is gonna attend, what room they're gonna be in and how much they're expected to pay. For instance, so that means that I now have to ask the accommodation system for those data and I have to ask this and then I have merged the data. Yes, I'll just one minute. It's exactly the same as doing an SQL short. Exactly the same, it's just a different way of doing it. But it really is. Because it has the same UUIDs and... It's still a consistent system. It's just using a different mechanism and making it consistent. And if you want to, you can push summarized data into a centralized system. Whenever a room gets allocated, you could update something in the profile saying, because when they make a payment, you can update something in the profile saying, they've paid this much money, even though it's actually over 20 transactions. Is there anything that would stop us, or is it a bad idea, that considering we already have this idea of tags that we enforce the storage of the authoritative data, even for room allocation to finance in the sort of namespace allocated to that team in the tagged database that is on the authoritative system. So that room allocation, so that at any point in time, I can just connect to this database and they can all the information that I want. You're talking about a reporting database, basically. And you can actually do reporting databases as a separate aggregated process that's run by Kondog. But the only reason you would do that is if you were doing it with millions and millions of records and it was just slow, too slow, to pollinate on the fly. But the level of data we're dealing with. Where does the accommodation system live? Is that still on the same machine? It's still probably even on the same machine. But that is, you wouldn't do that. You don't want to catch that. You probably need some IPI. Right, but the only reason you would create an aggregated database like that is if you were having trouble performance problems. Otherwise, you don't actually need it. Like, you'd still get the data instantaneously. You'd either run a question, or you get the data instantaneously. You have it, you don't actually have to. But I don't have a single point that I'd talk to. You do, you talk to the IPI. It's just the, behind the scenes, it's going off and you're going to get updated for you. Okay, that becomes a multi-tiered system. The only thing you need to be aware of about support is you just need to know a map of, is this information already on the system? And that's true of any database. Don't go and create a new field in your system if it already exists in another system. And that's the only thing you need to make sure of. We don't have to do that anymore. But then we don't need any tags in the central database because effectively everybody who needs to associate any additional information with the existing data set is just going to do it themselves. So I have a practical question. Are we, is it possible? In the scope of this DevCon, for a couple of people to sit down and make a very, very simple mock-up of what we're talking about? I don't know. I doubt it. I think it's probably something that's going to happen. I'm just asking, like, you know, name, t-shirt size, and this database, and that's it. Let's just see how the pieces work together and so that we can actually play out the deployment process. Have we actually gotten to the point where we're deciding that we're going to implement that piece ourselves? No, but I figure that this is part... DevCon volunteers, who just said DevCon volunteers? DevCon volunteers. But this is, I would consider this to be part of the decision, you know, because you need to understand what the scope is. So if I wanted to give you a mock-up of that right now, I would kind of you Wofford and say, go play with Wofford. It's an example. It's architecturally separated. It's designed to have multiple plugins and services. It does the archival and static HTML at the end of the year. It's not everything we need. Absolutely. What is missing? Single sign-on is missing. It doesn't take payments directly. It uses an external payment system. Looks good. This features the evidence involved in the merge inside the... They could, yes. Unless we switch to Bitcoin. It's a very simple counter-financing system. It has talks. It has speakers. It has attendees. That's kind of it. It can just be expected to have those controls. But it is prepared to have a lot of other services that interact with it. It already has other services linking into it because it uses external payment systems. It doesn't have any U.S. bullies in it, so we could add some. That's probably the easiest. So what would stuff us from using that for DC-16 and hacking all the stuff around it? Only that we haven't decided to do so yet. And it might be quite a lot of hacking we have to do. Whoever is doing this should decide. Can you quantify the amount of hacking? Like, is there a way we could...? Well, so the first thing we have to quantify is what features we want to be done by DC-16. And then we can say how much would need to be... And then you can actually evaluate, OK, with using WAFR and then adding other services would be faster, or is it too far away from what we want for DC-16 to be what we want? So that if we were to assume that all we need is attendees, we don't do accommodation, let's just assume that accommodation is done by UCT. All we need to know is who is attending the conference and who is giving what talk and when the talk is scheduled and what conference rooms. I'm assuming that this is what way for it does. Hodge Star? He's on IRC. Yeah. Do you feel comfortable saying, committing that WAFR right now can do that much without any changes? Just a few seconds today. I'm just enjoying the seconds yesterday. Hodge Star, can you hear us? I can't do... Yeah, he was just commenting, so... Do you just want to type in the three things that you just said? I think it's the three you just said. He says, I forgot. Now I forgot what the question was. That's OK, it's probably no problem. I can have... We can just change the IRC. We have experience with that. Very good, very good. The sales person, I'm not sure. No, I mean, he already said earlier that it depends on what features you want. So the specific features that you want to type this into IRC because I'm pretty sure that... So it's attendees, talks, and talks allocated to them. Is that what you said? No, I'm not... I have talks allocated to them yet. Isn't that useful? That's an important task. That's really easy to add. So I think that is the core conference management idea, right? Everything else, we can consider optional. And I would be interested... So you can do the RESTful APIs and then leave them all to... I mean, I'd be happy to work on adding RESTful APIs to that. It's a fairly simple application. Yes, so this is what... So this is the two-verm to mine, so that it does. So it has a feature of knowing what you're on for the first month. Wait, wait, you're talking about the time? Yeah. It has a feature for listing who sponsors are and what levels they're sponsored at. I don't know what you want, what you're reading when you say it. No, but it's a six-pack set. Like, we get who gets the sponsorship, as that means. But this is something that I would consider to almost two different specific right now. And it would also probably be the Berserys micro app that we add in front of it. But if you look at what Honstar says, he says, we do all of these paid added and sponsorship. Honstar confirmed and sponsorship. I think they might be talking about two separate things. Yeah, we separated those two times for a reason. What I want to know is if we were to use waiver for DC-16, and this is the scope, attendees scheduling of events, that's it, how much would we have to fix on the system for it to be DEF CON compatible? And that depends on how much of all the things that we want, we want to go in right now. I don't think we have to, so what was there? Only scheduling and keeping track of attendees, which includes T-shirt size and the whole like, has attended Batch. Well, with all the ICODs, we don't necessarily submit. Right, so as always, the ICODs, we don't necessarily submit right now. Exactly, but that's easy. No, no, no, no. What's she saying? I doubt it. We'll just say it again. Because when we say just attendee, yeah, for sure, local conference attendee, but what we've been discussing here, what we want for attendee, the features that we're discussing since the beginning, pre-registration and then registration later. Yeah. Yeah, and it's like adding, well, the tags we said, there would be like microservices. So if we won like, it would be a micro service for applicants and if we won conference dinner option, it would be another micro service for the conference dinner option. Then, assuming these microservices are created and written and all that, how does this translate into a form that people can go and click on that has all these questions, like what's your conference dinner option, do you participate in that? If I was doing this, I would put the conference dinner option into the registration area by person. Well, we can assess what would be as a separate system but here's what we can design and assess if you want to do assessments. Right, but the thing is we don't want to have the database have all these fields, like conference dinner option or data options, we want it to be dynamic because each year we want to have different things because there's maybe no conference dinner option. Wait a second. We only support one conference at a time, but it doesn't support multiple conferences in the same database. When you finish the conference, you make the site static and you start a new conference. So the next year you add whatever special... Which we said earlier is a feature and not a boast. No, we didn't say that. Also, we want you to have a static export every year. We also want the same database. Well, you can copy and use the data or you can keep the users... You can put conference dinner on a different table to the user. We've got conference specific stuff in different tables to the users. Just keep the user table in the next year. And you can also set it up so that every DEM pump back in the dawn of time is available in a single web interface that's connected. So you can say, okay, this user, I'm checking in. Oh, let's see. For the past 10 years they signed up for assassins. You can do things like that. Can you also say for the past 10 years they signed up for dinner tent? That would be so useful. Confidence of how good their data is based on previous attendees. Or if we're just... Sponsorship? No. We did it the last two... Scale. How would you mind each of them? Just all those microservices and there we are planning to develop. Are we planning to... Are we planning to develop it in a way that we keep using the master thing? Like, we're not working. As we did that with Panda and some of it, as I understand, we completely changed it. And then it became this thing, this big conference... The idea was that you keep the assassins gained out of the conference management system. There's a link from the conference management system to say, click here for assassins then sub new and signed up for assassins. And it should look the same and act the same. You were talking about the software you've done before. I just don't repeat the thing with it, with the test to confirm the consistency that we talked and then... So it's not like somewhere where you end up with a whole stack of modules in mind that we can never merge back upstream into something... Maybe nobody cared about that. It really is all based on... Yes. The problem with that is that if I run the stack correctly, then you, in general, have two single sign-offs. Do you also... So we have Python code now that handles login with two single sign-off systems. It's not brilliant. And what it comes down to is every single system has to use whatever we use, every single system has to use the same plugin for sign-off. What's that question not about can we avoid forking the thing? Yeah. I think we can avoid forking the thing. Can't we? So the way you use WEPA if you don't deploy it as a system, it's a library that you include in your conference which is a Python Django app. So instead of forking it, you're building on top of it. Right. And if we need, we can probably push upstream. What? If you play such and such. Call features, we push upstream, things that are very specific to our needs and create a separate library that we put upstream as an optional addition. Yeah. So I think we have a plan. The... Maybe. I have a couple of more questions. Okay, you argued like the... you would take Assassin's Out find completely optional conference dinner. You would put in... I'm already a little bit skeptical about that because how are we ever going to decide like the conference dinner makes sense is core part and not... But let's assume for a minute that the conference dinner is not a core part or that, for instance, like roommate's preference indication is part of the microservice that the accommodation people use. Is there? And I think that was your question. Yeah. How are we going to present... Can we across these microservices present a single single form, a single experience to the people and have it all work behind it? Yes, you can either way whether it's a tick field whether it's a field in the same database or whether it's a separate one. You can't still provide an interface that does it all as one. I think if you want the same UI what we don't really want is microservices to be these things we just want separate Django applications in the world conference system. What's the difference between Django and the microservice? Just the way the data is moved around essentially, that's the only difference. Seems like a big difference. Inflation details. It relates to everything. We need to understand if there's something else to decide if we'll wait for it or not. It's very simple. I am very... It's very simple. We need to have the information. Just one at a time. I don't want to be implementing 100 microservices or even two or three before next... Right now, all I want is what we need for this is 16 what the core is going to be and let's get that working. That's what I want right now. The question of whether when we add things on we're not even doing accommodations this year that's fine. There'll be a tick box that says you want singular family, that's fine, that's it. Right now, that's all I want. Attendance has checked in, has received badge, t-shirt, t-shirt size, events, schedule them to different rooms. I'm assuming it's the scope of WAPER, and I want to know if we were to put WAPER in place right now how well would it perform in the DEVCON compact. What are the DEVCON peculiarities that we could not represent in WAPER right now? Single sign-on was the big one or the dual sign-on. The single sign-on we started with last year that we never used it before and I never thought it was important. That you're ready to get a single sign-on implementation because the hard drive is full of one. The topic isn't key. No, so we started or almost started saying we really want that feature that we want teams to be able to add through one location, which is like one example, but we will have teams that want to add stuff to the registration form. So WAPER doesn't have that now but that would be easy to add. So we could say that's a test. How hard would it be to add that? I can't tell you right now. Right, but in that case it would not be a separate database. It would be a separate table in the same database that has these dynamic fields that anybody can add a tag that they want and then maintain an entry that associates that tag with that individual user. It's two tables. One lists all the tags and the other lists all these. Right, but this would be in the same database. I would use no history. It would be possible to have it in the same web form because that's the thing that scares me. I understand signing up for assistance can be a separate thing but for other things we would want to have the information in the same form. WAPER has it right now that you have to add to the main database schema for the user to build that up. You can totally do it as a separate tag thing and it would actually be easier. It would involve less changes from your gear. Right. So at some point in time when we talked about DC-16 I closed the idea of deploying WAPER and doing a shadow DC-15 registration. We didn't have time for it. The system exists now and could be flagged with. It's up in the cloud. I can give it to you. You can keep talking but we're going to stop the video here. We'll take a break. We also have to go eat. Next plans? Are we people interested in reconvening again after we get through it back and keep talking? I think there's a thing about the find. Or should we take a break and take my way for a bit so people understand what things are about. I think we captured a lot of the requirements. I think we captured a lot of the requirements. Thank you guys. I'll be back after this. You may go get wanted. Let us know in advance because some of us have to go. Thank you. I think if we want to use for the lifetime worker we just need to involve a few people in the room just two or three people. This is where we can tell us are there two things you can tell us. Tags is one. Is there another thing? Two stages of registration? Would that be our other primary? A lightweight registration? Is there something else that is absolutely critical? I think the thing about that means taking a month and having it will be quite good. That we probably can't do this week. We are associating. Right. But we don't need to do everything this week. We just need to know that it's possible to have it by October or November with many of us working on this so it doesn't have to be like you doing all the work. But would that be possible? If we know that it's possible you handle that and we work together on this. I think what would be a good use of maybe two hours in the afternoon is for the two proponents of WAPER to sell it to us. I mean get me excited and I'll help. I don't think it's needed. I think the group since the beginning I think we should have who is implementing it and they are but other people and the final decision would be for them because if they start to do something and they see that it's not global they can't take a decision. That's what I mean. Excite us. Hire us. Recruit us. I haven't wanted to do that from the beginning because I don't think there is a universal perfect system. It doesn't exist. It's more a question of for the next six months are we better off spending our effort than what WAPER has or recognizing as a small kernel and we can use that for pieces it does and we can do our own Jango apps and microservices. I think we all have enough experience to say that NIH is bad and rewriting everything from scratch is probably going to end up nowhere but I don't think we have enough information yet to say WAPER is ticket let's go. Maybe we could use that time. So that's why I'm suggesting and we see if we can add two levels of registration and from that we can actually do more reasonable out-of-valuations because that's like possibly some test instance because content team is not available. So if some meetings they want to see that more it will be easier to scale your process. Because we do have a testing right? We have a testing system but what we didn't do is we didn't have time to pop I wanted to populate the Web interface with an exact copy of the DC15 Web interface and I wanted to populate the data with an exact copy of the DC15 talks so people could actually play with it and we might be able to put in a new face mask other things. And just let people actually try it out. Because now we speak about the registration but it's important that it can make a feed or something like that. So there's a system that certainly has many of the information I don't know if I'm not making something so I don't know how they compare it but I'm just checking it out. I know that. Thank you. So that's what we've been testing bro. Can we meet here? You're talking too soon to know. We need a floor for the enemy. That could be motivated. Let's take a break. I think this was really useful. Let's have a chat and then we'll be quick enough for the other thing. How are we going to talk to you tomorrow? Like in the afternoon tomorrow. Tomorrow? Yeah. We can tell you what it comes out. We can do morning tomorrow but we can do next week. Next week we can be free. I don't like the idea that we need to sell it to us and that we need to approve the thing. I really think that whoever is willing to help with that should work together and make it happen. We're done? Not to the order. We need to work hard so that we can agree on we don't need this much pressure on you. But we do need to evaluate it. If we're going to make a choice between writing something new we do need to kind of like we haven't done as deep as I'm comfortable with yet in deciding which path we're going to make. I don't think, I don't know that a demo was really going to make. I don't know that a presentation is really... It doesn't seem that we actually have real requirements talked together. No, we have written down a lot of requirements. Every time I look at this Amazon has changed. That's worth my interest. If we nail down the requirements too tightly then we don't have any options we can choose from and we end up having to write our own system. We have to be prepared to give and take a bit. We do have to have the requirements to a kind system which exactly matches the requirements just that you can say, okay this system has 60% of my requirements implemented and then you can abstract how much you have to... We've done that today but we have a better understanding of some of the fundamental choices that the fundamental features that we need from the system. I think we also have the understanding that WAPER as currently represented by the two over there who have most information about it is a suitable lead that we should follow. All I'm asking is if you want help on the evaluation then I need to have more information and I think using the time at Dipcon to explore the system together for instance by me shoulder-surfing you implementing tags after I understood the system a little better. It's fine to find someone that doesn't actually know it to implement that which is meant to be it's meant to be more programming. The problem is we always end up with one person that knows how to tweak everything and they get they then they're like why is that why is that I don't have any mentor anyone who's working working on anything in WAPER So if you did it I fancy you implementing this feature Sure. What's your opinion? I think we should try to assemble this team just working team now that comes with I think with design with CSS and whatever but we should also make our call for more people I think since we are here it might be easier to get people together and have these 3-4 people that might come in to help I think it's easier than we going away and then all the way in your shoulder. Yeah that shouldn't happen But it has it has happened in the past Yeah yeah What's your available life or a hack like I know you said a lot of videos so what's your available in like an hour any time what people might work for you Today we've got a fine time tomorrow morning we've got a fine time Next week we'll say we want that maybe Gunner, Gannett can they were the maintainer of Painter Gunner is not here No but I need to see some comment about what's wrong with Painter and what are the big problems with Painter Right that's fine but this is a separate thing So I mean in the morning and afternoon there are some pretend that those are but that's not the hacking session it would not be useful to have a hacking session transmitted through video I don't think that would work So there's kind of two things here the first one is let's do a hacking session for folks who would be interested in digging into the code and maybe add maybe just add tags like we could work together and just add tags and then after that we could do an evaluation session where we're actually like talk to you was it easy to reflect back on maybe we should we could schedule a doc session about the end of next week like we would have one week to pack and just evaluate and really schedule a doc session to try to reach agreement after one week of work What I would find really to there's a sort of barrier right now which Cate has climbed for some but nobody else has which is called deployment if I want to be working on this on my micro to handle this and that I want to be able to commit to it and essentially I really have it working I mean I understand that we might want to have two sites and maybe two databases and we might be able to make sure we haven't broken the whole thing we can do that but that would be one of the first things that if we decided to go that way to implement because then it allows people to easily play with it we want that no matter what system we use and if we try to take into people can submit to personal branches and see whether they're going to bring up all that's telling everybody about it then they'll be less timid about doing it but of course if we start maintaining a test suite whether that's more work than doing it without the test suite yeah I think I'll turn this off until the test suite catches the area that's going to screw you during a conference which point is something less important hahahaha it doesn't even need to be a bunch of the test suite just the ability to bring a personal branch and then meet there's an instance that's spawned on Jenkins or whatever and I can interact on the web interface and try out my stuff that might be as much effort as it would in the conference management system itself but that doesn't mean the same people it's a problem it's a different problem we may find volunteers who are happy to do the test but can we, before we have that implemented can we have an easy deployment process like with a staging server and a final server and with a staging server it's actually usable so that I can test what I'm moving part of that depends on the infrastructure we've done for both but yes at the end of the work you can have any of that the infrastructure right now is I have pre-cloud account of edgep and whatever we want but that's very temporary so I can give you two of those if you want another one that we do just for testing purposes we do that temporarily that's for hacking, I run locally on my machine you're happy? let's go