 Okay Welcome everybody, this is the life after barf boss and For folks who are interested I encourage you to come up and sit with us here Because it's going to be a discussion and we'd love to have your input or your thoughts So if you if you'd like I'm not going to twist anyone's arm, but we have open seats So Gunnar is going to be Leading the discussion Okay, thanks. Well, I have some points here. I don't really know what what what is achievable with this Session, I hope we can get to something Well, I'll first just state the status although, I know several of you are already quite aware of it A pentabarf is the system we're using to organize the comp since to 2007 It's a very complete very Well, wide-reaching conference management system which you have a Consistently hacked beyond what it what was a originally a part of it So it has some good things a Devconf is as far as I know I mean as far as I've been to the most complicated the conference to run because we keep a Many we we use many factors that where that are not usually needed for our most conferences for example all this workflow about a rating requests for a travel sponsorship or The assassins gained or whatever that are tracked in Penta. So right now. Yeah, it's completely completely unique to us Yeah a The the problem is that well we've had many arguments recently a We have we tend to leak out of Penta because it's very hard to well to manage several details with it We ended up using the wiki for many things that should be able to be stored in a database in ways that will give give us a richer set of information and the Ideally Should be easier to use and to understand Yep, the the bad points in pentabars is that it's very very It has very low hackability. This means it's a pain to work with a C several people who have Touched it in the past and I think nobody in this room likes it or Or would voluntarily want to work with it more than more than what's Neither the thing is the logic of Penta is to twisted. There are many Points by which something can be defined. I have spent Yeah, 30 minutes wondering that how does a string of text get to the to the users Yes, and the things are defined in very different places all over all over We were just having an argument because by fixing something yesterday I broke something else and well a Ganev knows this system better than Any of us here, but he couldn't attend and and he cannot be like a like in charge of everything So if only Ganev is able to understand the working of pentabars. Well, I think that's a weak point of the software a It's too complicated to install on a deviant system a Ganev again, I'll try to told told me and told a also fitoria when he tried to join That it was impossible that we shouldn't even try so we have access to one test system called cletus and to the live system called Skinner Yeah But I mean I cannot do much work this connected. I cannot test anything because I don't have a local install and Yes, the the testing system is almost useless because it's on a very slow machine So slow that the that it takes ages to connect it takes ages to do anything so to be honest I do some very minor hacking on my computer and Against all good practices. I do most work on the life instance. So if during the camp you have Periods of Penta pages giving you proxy errors. It was because it was restarting My fault and yeah, that's it Then an important part of the Well the complexity of it right now of the of its database Status is it's very uncomfortable to work because we have split things in many Different namespaces. Some of them are part of the original design But for example, we have many tables called debconf.dc Underscore something why because we wanted to keep the code base Synchronizable with a upstream well upstream development died. So there's nothing to synchronize with but we have a Separated namespace which makes things very tiresome to write and very error-prone and I am an expert in committing errors So well the thing is I Proposed this both so we I mean we will quite likely and a bit earlier Because I think there's no much discussion to the fact that we need something different Something new something used elsewhere something but but but we have to get the get out of this Problem, I think strategy a leads nowhere. Yes stop bitching stay with Penta love Penta The only way worth keeping Penta is to train a monkey because this monkey is out now There we have valuable information in there six conferences which have all the attendees that all the Events which are each of the talks and many information that surrounds it part of it is not very important like again The scores of two years ago's game of a fat of assassins Okay, but a I mean We we were Suggested to take a look at something called fraud which is a Used by some previous users of Penta and has series of logic to import from a life Penta bar instance into fraud of course It would only import the base stuff. So the names of the people involved. I mean the user accounts the Events, but it will not import anything that's that comes Specific which is very important to us to keep for example. We we want the the conference rate the the travel sponsorship ratings because a For following years we can refer to previous years information so a Think migrating completely to fraud is not an option. We have to keep the Penta instance alive and We have to a I mean to keep information there. So so so we can still look at the numbers With the stable URLs and all the historic information We could on one side on one hand a pull everything say by a A very permissive W get we would have some problems defining a private and the public information So I don't think it's very likely, but it could be done and A Well, the other alternative that I tend to favor is just to keep Penta cities right now We will only have to provide a server to keep To keep running with current versions because it will not work with wheezy because it depends on very Many Ruby in Trink assist which are changing for wheezy And install something new something from fresh So well, this is basically what I had as a a Structured Presentation I'd like to know well some input from you and I'll try to take notes here Of course, this is a Gobi so you can all connect and help me make this into something more Useful So well, please tell me if any of you has any thoughts about this Also, is anyone on line on Hashtag camp talk room to Okay, are you are you willing to relay comments if people ask them to be really? Thanks Maybe to start with the kind of boring bit about all data before we all Ran to buy our own favorite conference systems It would seem possible Not I agree in the short term the most sensible thing is just to keep Penta running It would seem like it might be possible to dump out some of the data from table levels from by doing queries which dump out a per user Stuff we care about kind of thing and put that in some Appropriately permissioned place so that we don't need so that we don't keep Penta going for 20 years or whatever I'd also like to ask the possibly heretical question of just how much we really need the vast majority of the data Yeah, most of the data is completely unnecessary. For example bank account information is hasn't been used in Penta for a while, but it still exists from years where it was used and Certainly Most of the There's a very little data we need and a lot of it has gotten out of date like people's addresses For example, if they last attended in 2007 for example, that's irrelevant So I I completely agree the We only need a few specific things and those of us like Goon or me or anyone else who has done Penta hacking in the past can figure out some way to export it if we go somewhere else I would be curious what other options there are independent of export from Penta For conference management software that we don't have to be the upstream floor. Yeah Well, just on your specific point. I know that the bank information was purchased at some point I don't know if it was requested again later. I don't remember that but but I think yeah What what you suggest? Also may make sense on a different way The thing is I want to separate the problem of migrating to something else I want to install something and then somebody may have time at some point to take that out But for example, we don't want to break the URLs that they are already pointing to our information That's can be even if the data is hard is easy to get it can be hard to to get it in the right structure Just to add maybe under data. We want to migrate away We we have lots of information about past talks including slides. I mean we already have video else Where but I mean keeping these slides and stuff for future reference still is interesting We should just have I mean we can very well go to any other system But there is valuable information that we should just not lose in fact one one of the things have mentioned to potential sponsors Is that well if you have your logo in our system look? We have 11 years of past conferences information there. So it has a high permanence Yeah, I think I mean there's basically two parts of the Penta stuff Which also applies in fact when we talk when we start talking about possible replacements one is the kind of What most conference software focus is focused on of dealing with talks and events and that obviously we need we would need to have some Maybe in the longer term some static dump of all the Penta information on the same URLs The other part which actually we spend a lot more time fussing about is the per user data in there and Yeah, again I mean I agree some of it is just not needed and probably if you kept Penta running for a few years Dumped out information as you needed it then after a couple of years You can say well too bad if we didn't need it yet Then it's probably not needed but some of the data that is there We should actually be using more and because it's in Penta and tricky to get all data We don't at the moment. So even if the things like travel sponsorship I think there's been a fairly low usage of whatever happened in the past partly because It's tricky to get it in Penta and partly because it ends up being dumped into other Things that are not Penta because Penta is tricky to use. So even just having a dump of this stuff in a Version control repository or whatever that was given to the appropriate people probably actually mean more use rather than Compared to the moment rather than less Want just want to mention relayed from IRC of from Eric I think Eric yeah Most the most relevant historical stuff to preserve is a talk schedule talk data links to videos Etc, which could be exported to a static site since it's never going to change again And it's in Bobby. So you don't have to remember what I said Well When I think we arguing about how to export is something we can leave it for later The thing is we need to start acting as soon as possible on the replacement. Yeah, because Yeah, that's something that we always start worrying about in March But in March we cannot change the conference management system So we have to do it early. The good thing is that next year we go to Switzerland So everything is already planned. By the way, there's a planned network outage for Saturday And Yeah Okay, so When one thing that the more he suggested also, I think we should look into it a The number of workflows we currently handle and that's a big part of this mess It's very big. Maybe we should split in into several linked systems And the the amount of information shared is very little so for example if we take all the volunteers and video stuff and Somebody works on it We just have a single sign-on thing that also goes to attendance and goes to events I mean receiving talks and receiving papers to a different place We will have many simpler solutions instead of one big one one bigger solution I'm not entirely sure that it ends up being simpler So for example the video team needs to have very There so they've got The volunteers that they have our conference attendees so they need to be hooked into the attendee system They are working on the talks and that means if the talks change they need to be immediately updated So it's like if we're talking about splitting the separate systems seems like we're defining We'd have to define a number of interfaces that In practice, you know, I feel like we're gonna need to run the same kind of complexity. Yeah, of course We have to we have to I really analyze this is probably like just to sort of explain where I'm coming from on that point Maybe I would rather that there is exist some system out there that does everything we want that would be great My point is more that I'm pretty skeptical that's true I'm pretty skeptical that there is any system that does our registration part in a way that really fits with what we want Because I don't know of any other conference with a Total which uses is interested in using free software for that stuff Which is a tall similar in their registration levels that's a part. I Realize that it would be Ugly to all of us as geeks to have two systems which don't interface as they should But I also one ice. I'm not yet convinced Whether that ugliness is worse than the ugliness that results when we start hacking all our weird registration stuff Into someone's elegant existing system because right now we have what? What's impenta and what's on the wiki? So we already are having this overload Yeah, um, I try to look into some of the alternative but Um This week I have kind of a frappe instance running, but it didn't get it to have Port that is actually accessible from the outside for others But I hope to do that But what I that's not the point the point is that I saw in front as I looked at it that it just does talk And nothing else so no registration for participants. I guess that's true for others I had a short talk with warl on about this and he proposed we might Try to adopt what they use for UDS which seems not completely unreasonable and if we managed to go over the political side of this and Yeah, it's somehow tied to launch pad But it was not at least not clear how much work it would be to rip out the lounge pad Part because he said it's just used for Authentication, but I didn't look at the code at all so but we could investigate this too. There's a page if you Do a Google search that has some kind of a list of open source conference management systems the only other option I found there that seemed somewhat reasonable to Use was what linux con Australia uses they have their own system and they might be somehow a bit similar to us which one sorry and linux con a you and This is also the only one that's written in Python and the others or launch the launch The UDS one is also in Python the frappe is in Ruby and at least my Ruby knowledge is Non-existent, so I think if we go with frappe We really need someone that knows Ruby on rails or he's willing to learn Yeah Well that that was a point I was going to get to at a later because well for example I am a Ruby person. I'm willing to learn other stuff. I've never written Python But I think we should form a team to start To start hacking as early as possible Jimmy I found a list from 2010 from May 2010 of Conference management systems. I added the link further down in Gabby There are three that it knows of in Python including what linux conf a you uses that's apparently called zookeeper with only two ease And there's also con man, which is used by the Utah open source conference and Texas Linux Fest and also Scale red which is used by scale and there's a couple of other ones that you can see on that link So we could explore these if we need more options Now I wait because I have a question here from a long time ago I think that whatever we do what one? Sorry, sorry a But give to him later the a One of one of the problems we've had with Penta is Trying to keep in sync with upstream development really slowed us down Because we have to do all kinds of safeguards not to invade the upstream namespace. I Think that whatever we choose we will deviate. I know that sounds terrible from a free software user point of view, but I Don't expect we can Integrate as a Maybe we can if we find something a Truly modular I understand your points, but I think that having its modular really can Can work well in that sense? Entiendo de que la base y el flujo de información de penta ya está a Understand the base and the information flow of penta is already there for query El usuario interactúa por medio de un navegador web así que es un formulario por http The user interacts by a web browser through htp forms entonces usted dijo de que de que pasa y que pongan a otro entonces ubiquemos en ese escenario So well, okay. He said I said that okay, we can migrate to something different La nueva persona va a tener que asumir las nuevas tareas The new person has to assume the new tasks Pero conservando lo que usted hace, but keeping what we are currently doing una tarea a la vez Se la delega el ya no la hace usted Me entiende, we delegate one task at a time instead of doing it Un nuevo usuario se va a registrar ya no lo hace en penta sino en un nuevo sistema New users will not register in penta anymore, but in a new system Así este se pone una bandera en penta de que ya no se consulte esa información sino en el nuevo sistema So penta gets a flag that that information is no longer to be used, but the other the new one El lento el proceso pero it's it may be a slow process. No en ingles y te puedo responder o Ok este no The penta penta could be just frozen and forget about it. No new users there no new information there We will start start with something fresh and we will not care about it So what is already in penta stays in penta as it is? At least from my point of view Maybe one other thing to add is that I Think that everything that is user related is in the end a list of fields with specifics And I think that's probably the easiest part of penta Even if you can add travels sponsorship blah blah blah etc. It's still a set of user fields That has to be expandable with specific formats and stuff The tricky things is the video management the talks the assigning roles to talks and reschedule talks Assigning that to rooms and stuff and I mean if we need another system to just care about the user content then just Just sure maybe you're repeating myself but the bit that we have problems with at the moment is not really the talk system and I think I Agree at sensible to go to a new talk system that's more up-to-date that's maintained preferably and I would Still have a hope if we did I Agree, I or to put it differently. I agree with Gennar's point if we are trying to if we do try to do everything in one system We will doubtless need to fork it and fate effectively maintain our own system My again my point on the kind of well I think modularity is a it's too fancy a word for what I'm suggesting. I'm just I was only suggesting having more than one system But if we did do that then there I would be more optimistic that we wouldn't need to fork the individual components That we could find something that does what we want even I mean it's possible for the registration part We would actually just end up taking a standard ask users questions Tool and plugging in our registration questions. It doesn't need to be a conference management system as such But at the moment the thing we have the by far the most problem with in penta is this dealing with user information I'm trying to get it actually given to us in a valid way with consistent choices by certain dates and really I don't think any System we find is what no system we find is going to be ready for what we want in that Yeah, I just want to point out that there's another one that is used by Picon That is already handles the sponsor chips and hotels and and the conference part is closing potion And it's obviously made in Python, so I Put it in Gabby again the thing isn't scrolling down Okay, so from the group of people that are here that I know we are far for from the whole universe Is anybody interested in hacking the new system in first working what to start with? then Probably do part of the programming on it Yeah, but potentially interested in doing Okay, so we have at least one two three four five six seven eight nine people Yeah So I think that the next step then would be maybe to open Well a mailing list to start handing this separately under the Deppcon for Should be quiet in the next few months anyway, sorry the team list should be quite in the next few months anyway Yes, it may be there's a possible advantage to just using that list so that other people don't Forget about this. Yeah, but it will reach many people who are not interested in these so It will drive this subscribers away We can just set up a list for this I think I do think that there's something to be said for Having the people who are not working on penta, but who have been working on other parts of the conference be aware of some of the decisions That are being made right so if we say oh, actually we're gonna slough off front desk stuff The front desk folks might want to know that You're being captured Okay, and of course a wiki page everybody needs a wiki page Okay, I also I feel I Think it's pretty clear that we do need to diverge Right from any other. I don't I don't actually think there's any disagreement in this room that Standard conference system is not gonna suit our purposes because our conference is different from every other conference so But you know we're gonna be building from free software components we can it's not like we're we're ditching We don't think we need to feel bad about that and and I and I think that we should approach it from a point of view of what can we What also can we contribute back and how can we build these interfaces in a way that is reusable for other people? Certainly when I mentioned that I've earned so I'm not at all worried that we're doing something unethical by that It's purely that I worry about as requiring to always have people who are gonna carry on maintaining this thing for debcon If it's just a debcon piece of code We've had we've had problems with that for penta and although they may be a more initial enthusiasm for a new system in another six years time Well, and back to the same problem and there's a important point in what you say regarding what a guidance Brought up. Well, we're building a large group But when we decide it's the will be in Python there Those who don't understand Python will be driven away Or whatever language we choose or whatever infrastructure, so but but let's try to use Widely use infrastructure. So we're don't run out of programmers. So and I also think we should Try to avoid the not invented here trap Yes, and then I'm still hoping to find something that has kind of a plug-in Infrastructure where we just could plug in our custom things and hope that the API doesn't change too much over time So we can upgrade to the next version without rewriting everything But that's wishful thinking at the moment Just to kind of count although I'm being still pretty skeptical on this I should count a part of my point there that part of Part of the issue is also about the UI of penta A lot of the user issues and a lot of our hacking has been to try and make the UI less terrible for people registering So it's also plausible that if we start from a newer system Firstly if it as long as it has some flexibility and as long as the UI is not quite as bad we may need to do less Divergence even for the user registration part anyway One thing I wonder though with the team we just built is that it? Makes I mean It's made of many people that are already deeply involved in the BNN or in depth conflict That will have not a plenty of time on their hands and the risk is that we just end up next year using Penta again Because the work was not sufficient and maybe one thing we could also do is say okay Well, this is the absolute thing we need and then everything that we can do in addition to this is just good if we if it's there on time and Maybe we just we should also say well if on the third 31st of March We don't have anything that handles the video and the talks then we just use Penta And then we just stop the work because we have enough work for the next step come from yeah But I think I don't know that that leads us to prioritize in watch which order will things be done I think for example if we are a In December and we still don't have any code. Well, we have to Make the user registration and talk submission in March. We could start doing the video In fact the video controller as it was used for the first time was written in two days during the camp So well, we have to see the components and the prioritizing them not only in importance But also in when are they needed the video controller is never used outside of conference dates. I Was thinking what he said about not having the other system ready for the next That's a possibility, but I don't think we should dump the process just because it's not ready I think we should keep working on it and eventually when it's ready and people is happy with the new system Just replace And another point about the horribleness the current system Which is not unique to PENTA at all, but as a thing to bet that we should think about for the future is We have a lot of Parts of the data have been done in different ways in different deb-confs So if you go into the admin interface you even for an individual field you're tend to see kind of 20 different Out possibilities each four or five of the edge which we have currently three fields called day trip day trip Option day trip paid day trip should pay Two of them are Boolean one is her reference to an outside table and what I would Hope that we can try to do well What is it? What would be important to do if we want to avoid this problem in the future would be to in the same once we've kind of Settle down in a piece of code and so on or in parallel with that Try to look at all the things that happened over the past and deb-confs and Try to design a sensible scheme that would support all of those flows Without being or a sufficient subset of them that we care about right so that Because I mean just defining a single ideal thing won't work. We've got to have some flexibility there But equally I think if we supported most of what like 80 or 90% of what's happened in the past few years We could also try to be stricter in the future on not creating new Variations on that and say well too bad It's we've remand if we've run managed to run and Debcons in this way, then you can probably run another one in that way Okay, so I think we have enough working in our hands. I think It can be time to close the session We still have I Think long term it would be nice to have the discussion continue on the mailing list But I'm not sure if it wouldn't be better to have another meeting of those that showed interest here to have the possibility to do at least some Decisions in person because I think it would be more I or see meeting no here in person here So that would I just think it would be more efficient. I Also thought that the session is not yet over. We've got eight minutes I think it would be really useful to come up with a list of things that we need next So for example, here's a list of the critical data that needs to be that we need to care about or here's a list of How we think it could be broken down or here's a list of the tasks that the pentays critical for Whereas not so critical tasks some kind of I mean and I'm not saying to actually answer all of those questions in in eight minutes But I'm suggesting that it would be good to come away from this saying Whoever's gonna work on this next here are here are some things that they could create You know documents that they could write up analyses they could do So if we can I see we're already starting this which is great if we can List in those eight minutes list those requirements. I think one good thing to do would be to split up the task of Evaluating any existing systems to use as a base and then you know between now and a future session in person or on IRC Everyone look at whatever system. They've been assigned to investigate and like email a report to some location About its suitability for us to use as a base In light of the requirements of that time Okay, it doesn't have to be email disclose a report in some location This type of list clearly needs some prioritization. Of course, of course I was just dumping some ideas and some somebody's thought it was a good idea to dump ideas from my IRC Eric just mentioned that Richard Darce scripts are probably worth mentioning Yes, we either need to preserve those or keep that functionality somehow, right? Ah, yeah, so very important is historical Yeah, one very good thing about pentabar that I've never managed to fully understand is that every transaction ever made to the database is Locked so we can always find out when somebody did something That's done via PostgreSQL triggers It could be added to something else without the application needing to know about it Assuming it's in PostgreSQL Mm-hmm. I'm not sure anyone is suggesting to use my SQL so But the SQLite is very easy to set up then it's way too easy Well, it scales so well. I mean we have 200 users not 200,000 users. I mean It's not a high load system anyway Yeah, but pentabar currently runs with 17 instances if I'm not to be taken Don't ask me why but yeah, some processes are slow. So some processes tie up I give an instance for minutes I'm sure Christian would disagree Talk rating is both There's a rating for submissions and then there's a rating for how the talks went and I think those are very distinct systems The second by the way, it's open already for this year in Penta So we can start rating the speakers on how the talks were If we make Internationally internationalization a low priority it will never happen either the system is designed to be internationalized or not And don't forget that for this type of at least translations We have several teams or for almost all the advantages in that beyond that would very that would be very happy to do the translation of the Depcon for system, whatever One thing maybe that wasn't mentioned That would be the advantage of having multiple systems is that despite the fact that we have to design interfaces and stuff We might use something in Python for users because it's very suitable for this and something in rubby for video for whatever Because it's most suitable for it and then the interface can happen over database tables accessed blah blah blah or Whatever else and it might be an advantage of having specific systems that are very suitable for Users and a system that is very suitable for video and then having just a clear and clearly defined interface So is any of you familiar with how the debian single sign-on system is designed? We may use something she bullet. Yeah, I think it is Should bullet. I'm not sure but I mean we couldn't use the debian single sign-on because we couldn't have participants From outside of course. No, no, but using another instance of That seems like pretty big overhead, but I would be willing to look I would be willing to look into the authentication system Because I mean I have written single sign-on system for web complex things. They usually suck after a bit but I mean What if we do what you say they Using different bits of infrastructure infrastructure per team which makes sense Yeah, sharing a data is is a good way to do it and we really need the authentication or Whatever I'm also not sure if you really need to real single sign-on in the sense if you sign on to one application You're actually signed in to the other one, too Or if it's just enough to have the same login and password everywhere synchronized Yeah, well, I think it makes sense for something like Penta to have one user account that would be in the central part and a Flag it as active for different tasks But sir, but that's not single sign-on. That's just synchronized accounts in my sense Yeah Okay, so The time's out. So just following it. Do you think we we should have another life meeting before that comes over I? Kind of think it's a reasonable either on one level But also I'm it depends if some people are she gonna have time to do anything before then mm-hmm Which some of us are unlikely to Including in our yeah, but I'd love to have some time for I think it's At least reasonable to just gather to see who has knowledge on what technologies and probably we can also together assess The systems existing so looking through web pages looking at the code if I test like plug-in infrastructure what it does and Just assemble a list to have a start and to get to know each other. So that's my need Okay Okay, so I propose Thursday after everything at the pool That's bull at the pool Thursday in the evening at the pool after dinner, okay After dinner Thursday Thursday after dinner. Thank you very much