[00:11] i'll be here to talk about UCW (Ubuntu Community week) for about 30 mins [00:16] we're still looking for volunteers [07:53] good morning [07:59] thanks jcastro [08:03] Morning dholbach [08:04] Morning dpm [08:04] nigelb, good morning [08:04] morning all [08:11] hi nigelb, hola dpm [08:14] hey dholbach [08:44] cjohnston, mhall119: what do you think about having a session at UDW (in ~3 weeks) about using ubuntu-django-foundations? [08:44] I think if more people used it, it'd soon get more features, more help, and so on [08:44] https://wiki.ubuntu.com/UbuntuDeveloperWeek/Timetable still has a few open slots [09:17] morning [09:18] hello kim0 [09:18] nigelb: o/ [09:19] ^^ the slacker is awake :P [09:21] * kim0 crunches Inbox [09:22] heh [09:22] kim0: in dublin yet? [09:44] nigelb: nope [09:44] I fly on Sun [10:17] kim0: ah, nice [11:11] Aloha [11:40] kim0, great to see two graphics volunteers :-) [11:40] jono: yeah I actually got three more over email :) [11:40] nice! [11:40] put those folks to work :-) [11:40] yeah! [11:40] yeah .. will define a few graphics that we need and ping you .. then act [11:41] np [11:41] cool [11:41] good work! [11:42] wow virtualbox is nailing my machine right now as I install 11.10 [11:57] jono: ssd? [11:57] popey, nope [11:57] steam powered IDE [11:57] jono: get ssd, HTH HAND [11:57] I might invest in an SSD [11:58] this is only a temporary issue, I will upgrade to Oneiric after the sprint [11:58] @) [11:58] :-) === daker_ is now known as daker [13:24] dholbach: see how I roped in mark russell? [13:24] \m/ [13:24] jcastro, awesome work [13:24] just replying to him! :) [13:26] jcastro: did you move to cjohnston and mhall119's state yet? ;) [13:27] nope, next month [13:28] Oh, nice :) [13:33] nigelb is just jealous === braiam is now known as Exi-o- === Exi-o- is now known as Braiam [13:36] cjohnston: I have better weather, thank you ;) [13:37] cjohnston, mhall119: what do you think about having a session at UDW (in ~3 weeks) about using ubuntu-django-foundations? :) [13:37] i dont know much about -foudations dholbach [13:37] I coudl take a generic one on all the web projects [13:37] cjohnston, ok [13:38] but I want to talk to Mike first. [13:38] I think it'd be good to get it used by more people, so it can be improved, extended and so on [14:04] dholbach: it's not really ready to be used yet, unfortunately [14:42] mhall119, ok, I see [15:33] jono: ok I figured out how to fix the theme and I upped to Oneiric, it's in pretty good shape if you want to upgrade [15:34] jcastro, I am running Oneiric in a VM and struggling with 3D which sucks [15:34] ah [15:38] jono: VirtualBox? [15:38] I think you need the guest extensions [15:39] doctormo, yup [15:39] jcastro, I installed those [15:39] I think it is a 3.0.1 kernel issue [15:39] Yep [15:39] oh [15:39] that makes sense [15:41] dholbach: hah dude, check this out [15:41] http://reports.qa.ubuntu.com/reports/unity-stats/ [15:41] top graph, yellow line, can you tell me where in June the DX bug triager intern started? :) [15:41] jono: ^^^ interesting to you too [15:42] jcastro, hah! [15:47] NICE [15:52] jono, We fought crime. [15:53] dholbach, lol [15:53] :-) [15:53] jcastro: We should have one of these http://davidwboswell.wordpress.com/2011/06/22/the-mozilla-community-directory-is-coming-soon/ [15:53] :-) [15:53] nigelb: I thought the exact thing when I saw it on RSS [15:53] and then I was like "yes, just what we need right now, another project." [15:53] looks cool indeed [15:54] jcastro: \o/ :) [15:54] jcastro: We should have a session next UDS ;) [15:54] I'm delete guy remember? I'm the one trying to get rid of things. :p [15:54] dholbach: Got time for a quick call today? [15:54] jcastro, sure, now? [15:55] sure, let me pause my music [15:55] jcastro: Yeah, but you get rid of things that don't make sense :D [15:55] * jcastro is listening to Linkin Park, for real. [15:55] yeah, probably better pause it :-P [15:55] * dholbach hugs jcastro [15:55] is there fake Linkin Park? ;) [15:56] no, I just didn't think anyone would believe me [16:00] jcastro, linkin park? [16:00] wow [16:00] :D [16:00] I didnt think you liked them? [16:00] they had a new album I didn't know about [16:00] I kind of dig them [16:00] they are a dirty secret [16:00] I love their new stuff [16:01] they evolved from this yell-rock crap [16:01] * jono is listening to the Dropkick Murphys [16:01] yeah [16:01] drinking no doubt. [16:04] no doubt. [16:05] ok so it's decided. [16:05] dholbach and I will make all decisions in the project from now on, we just had a call [16:06] yeah, it's all figured out - keep calm & carry on [16:18] jcastro: Also, we really really really need a quotes database like quotes.burntelectrons.org [16:18] I'm tempted to do quotes.nigelb.me ;) [16:18] focus! [16:19] heh [16:54] jono: http://i.imgur.com/ibZQj.gif [16:56] hah, I saw that Technoviking :-) [16:59] alright my friends - I'll hop on a train and see you tomorrow! [16:59] safe travels dholbach! [17:00] jono: heh, I like the traversal of death mental on that. Don't you play death mental? :P [17:00] woo dholbach! [17:01] wow, that chart is amazingly accurate [17:01] the dragon thing is awesome [17:01] nigelb, I used to [17:01] jono, thanks [17:01] enjoy yourselves :) [17:06] Have to use RHEL instead on Ubuntu 10.04 on a new server since the software from the vendor can only use php 5.1 or 5.2, php 5.3 (in Lucid) break the vendors software. ^$!@*(#$^@!# [17:06] Technoviking: there are ways to downgrade php [17:07] but no longer getting security fixes [17:07] Technoviking: I had to do that once to install drupal. Its a bit of a pain, but personally, I found it worth the trouble. [17:07] Ah, yes, true. [17:19] Technoviking: have a moment for a PM? [17:22] akgraner: ping [17:23] mhall119: Hey, do you want to do a generic, "Helping develop the Ubuntu websites" session [17:24] s not looking forward to this task [17:24] We already want some fresh blood for LD and summit [17:24] stupid iso codes [17:24] someone people are gonna get awful cranky mails from me [17:24] jcastro, can we Skype quickly? [17:26] Technoviking: nevermind [17:28] pleia2: sorry was afk, [17:28] Technoviking: no worries, got what I needed storted :) [17:33] jono: sure (sorry I was making lunch plans, ring me whenever) [17:42] nigelb: when? [17:42] czajkowski: yeah, iso codes and people rarely get along [17:42] mhall119: one of the developer week days? [17:43] nigelb: when? [17:43] mhall119: July 11 to 15 [17:43] hmmm, I can probably make that [17:43] anything othe than July 12th is fine with me [17:43] * nigelb wants a quiet birthday away from IRC [17:44] good luck with that [17:44] mhall119: Friday 15th, 1700? [17:44] UTC? [17:44] 1pm EDT [17:44] I can do that [17:44] mhall119: :( [17:45] \o/ [17:45] mhall119: I'll put as both down for it [17:46] mhall119: Also, wiki switching to SSO looks awesome :) [17:51] nigelb: see when cjohnston is available [17:52] mhall119: let me first see if the wiki will let me in :| [17:55] mhall119: seriously I have issues getting to teams on loco.u.c [18:02] mhall119: wiki is being unfriendly :\ [18:03] I had to try a couple times, it eventually logged me in [18:04] czajkowski: I'm working on some optimizations [18:04] but it might not gain much until we start implementing caching [18:05] mhall119: I can't imagine caching is the answer [18:05] * nigelb re-reads that sentence [18:05] mhall119: unless you're doing lplib calls on request, you're already caching against mysql [18:05] paultag: for that page, which is going to be static 99% of the time, it would help [18:05] mhall119: and you're updating the cache (mysql) on a cron [18:05] mhall119: I love saying this, but you're wrong [18:05] paultag: yeah, but it's got some awful logic going into building the HTML [18:05] mhall119: the speedup to render all that as static vs mysql calls is not that much of a dent [18:06] mhall119: ugh, are you serious? [18:06] mhall119: why is it slow again? [18:06] yes [18:06] don't tell me we have some render.py like magic/hell there :/ [18:06] nigelb: lots of looping [18:06] mhall119: ugh, why? [18:06] argh. [18:06] it's better than it was [18:06] and I have some additional cleanup [18:06] that does not mean it's good [18:06] aye [18:06] mhall119: you should consider ripping the DB with a single SQL call and rendering it out [18:07] single loop, O(n) order [18:07] it used to be O(n^n) before I did the first optimizations months ago [18:07] wait no, O(n^2) [18:07] still bad though [18:07] loco council people - how long should it take for us to get a response about our team banner? I sent our team request to bannerrequest@reponses.net in aprile [18:07] if I *ever* wrote O(n^n) code and did not need it, I'd not push it [18:07] -e [18:08] a french pleia2 ;) [18:08] pleia2: I have no idea. That's canonical. I don't recall seeing you on the list we just rcvd. Try emailing cez [18:08] cez? [18:08] cz[tab]? [18:08] pleia2: Cezzaine Haigh [18:08] nigelb: >:( please don't call me that [18:08] paultag: I totally thought you misspelled [18:08] paultag: have email address? [18:08] nigelb: I don't do that :) [18:08] pleia2: shipping has nout to do with us [18:08] pleia2: yeah, I'll PM it [18:09] paultag: :) [18:09] paultag: I think it's currently something like O(4n) [18:09] czajkowski: sorry. [18:09] czajkowski: sorry, it was unclear who bannerrequest@reponses.net goes to, and if the loco council needs to approve it or whatnot [18:09] mhall119: that is O(n), you can ignore the slope [18:09] paultag: true, but that's 4 hits to the DB too [18:09] which you can't really ignore [18:09] pleia2: we got the lists and mailed canonical [18:09] paultag: I have a question for you. [18:09] mhall119: but it's still growing at O(n), yes you can ignore it [18:10] mhall119: you can just consider 4 = 1, (those 4 hits being 1 call) [18:10] reducing the db calls by 75% isn't somethign to sneeze at [18:10] mhall119: it's O(n). Trust me, I just did this for 4 years :) [18:10] mhall119: no, but it does not change the order [18:10] yes, the algorithm is O(n) [18:10] paultag: so you have X which is a list of lists, is it better to group it from the db or from the program. Like 4 separate db requests vs one big request [18:10] nigelb: one big request is much better [18:11] paultag: so, as far as possible try to reduce db calls when the dataset is the same length in total. [18:11] nigelb: it depends on what you're trying to accomplish [18:12] mhall119: Why does it matter? All I'm doing is grouping. [18:12] don't do stuff in your code that the dbms is designed to do, like joins [18:12] nigelb: requests are expensive. If you can keep stuff running in the application's scope and runtime, it's generally much better [18:12] mhall119: No, I'm not talking about that kind of stuff. [18:12] nigelb: BUT, stuff like sorts can be done much better in SQL [18:13] mhall119: I have a set of data which needs to be grouped, much like our case. So, I can make 4 separate requests all grouped and stuff. [18:13] Or I can make one request. [18:13] *grouped individuall [18:13] nigelb: well, depends on a lot of stuff. Do you have some sort of group "ID" in SQL? [18:13] paultag: yes [18:14] nigelb: one request per is actually going to be your friend. Breaking up the table will suck [18:14] if you sort it by group id in the SQL, you'll be able to process it in one pass [18:14] paultag: so far, I was doing the one request thing and caching that request for 1 hour. [18:15] mhall119: yup, I'm sorting by group and then picking out ones with group as necessary. [18:15] nigelb: because you'd have to either bicect the list O(logN) if it's more then two, you'd have to go down the list O(n), where SQL can do it pretty much in O(1) time, based on how it stores the data [18:15] paultag: Now I'm confused. You suggested I bisect the list or not bisect the list? [18:16] the number of groups is always < 10 [18:16] s/ [18:16] nigelb: what are you trying to do? [18:16] nigelb: if it's the case where you have sorted data, you can find the break in logN time [18:16] nigelb: yeah, I think you're overthinking this [18:16] paultag: my dataset is huge :( [18:16] no need to brag [18:16] every bit of time saved is BIG SAVE. [18:16] Programmers waste enormous amounts of time thinking about, or worrying about, the speed of noncritical parts of their programs, and these attempts at efficiency actually have a strong negative impact when debugging and maintenance are considered. We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil. Yet we should not pass up our opportunities in that critical 3%. [18:17] -- CS Jesus, Donald Knuth [18:17] +1 [18:17] This isn't premature. It is hitting me :/ [18:17] nigelb: just get it working, then fix it [18:17] then again, belated optimization is the stem of all evil [18:17] I'm fixing something that's slow and b0rked. [18:17] nigelb: 4 calls versus 1 is not bad [18:17] This request is over ajax [18:17] nigelb: what are you working on? [18:17] nigelb: is the source public? [18:17] paultag: its an ajax thingy, nope closed. [18:18] well then who cares [18:18] lol [18:18] just sell them bigger hardware [18:18] nigelb: if you can put similar code somewhere, I can take a look, and mhall119 and I can bicker over what's right [18:18] tomorrow. [18:18] we can bicker, but I'm pretty sure paultag will be right [18:18] I promised myself I wont code today [18:18] I'm taking a rest day today [18:18] nigelb: you're already mentally coding [18:18] mhall119: ♥ you know how much I love hearing that [18:18] (kidding, but still) [18:18] yes, which makes it all that much harder to say it [18:19] mhall119: no, I'm not. paultag loves pseudocode. [18:19] hahaha :) [18:19] nigelb: I do indeed [18:19] nigelb: otherwise one gets caught up in syntax crap [18:19] yeah, but I can't find a decent optimizing compiler for pseudocode [18:19] mhall119: your brain, dude! :) [18:19] I said "decent" [18:20] hehehe, bah [18:20] my brain is very much indecent [18:20] process with --OMG-FAST [18:20] mhall119: paultag's brain! [18:20] nigelb: the timesharing sucks [18:20] hahahaha [18:20] Yeah, that's the bad bit ;) [18:20] Also part of the package is hear him barrag :p [18:20] 9j/k) [18:20] *brag [18:20] *(j/k) [18:20] speaking of stuff Knuth would hate, did anyone see my Game of Life implementation? [18:21] also it's all Fluxbox [18:21] I got it down to O(1) [18:21] actually wait, that's not true [18:21] it's O(n) I guess [18:21] paultag: https://dev.launchpad.net/Contributions \o/ [18:21] the only way to win, is not to play. ALso, that makes it run in O(0) [18:21] paultag: I wish I had logs of my *first* conversation with you [18:21] mhall119: that's just a segfault, yeah? [18:22] nigelb: woohoo :) [18:22] nigelb: yeah, me too, man [18:22] nigelb: I don't think ubt-dev was logged [18:22] paultag: I think segfault is still O(1) [18:22] paultag: nope, it never was. Maybe nhandler has logs of it. [18:22] mhall119: yeah, I guess it sets up the program heap and stack then blows up [18:22] mhall119: /dev/null it is [18:22] nigelb: I wonder [18:23] ha! I was right about something! [18:23] mhall119: :) [18:24] mhall119: Finally! The wiki let me in! [18:25] http://loco.ubuntu.com/teams is the thing you want to optimise right? [18:25] nigelb: yeah, go fix moinmoin for us, please [18:26] paultag: I am fixin a moinmoin wiki already! Ask pleia2! [18:26] nigelb: o'rly? [18:27] paultag: YES! [18:27] :-) [18:31] I'm curious. Since Ubuntu powers wikimedia, was there any pressure from them to change our wiki to mediawiki? [18:31] I doubt. [18:32] I've also noticed that Ubuntu is more Python based that PHP based. [18:32] Except for Ubuntu.com on drupal and other websites using wordpress, everything else seems to be python [18:33] I've joked with some of the wikimedia folks about it (their office is next door to where I live, so I bump into them often) but I don't know of any formal pressure [18:33] we're all friends so long as we're all using an open source option ;) [18:33] "we'll chuck ubuntu out of our servers if you don't switch to mediawiki tomorrow!" :-P [18:36] I like mediawiki [18:36] MoinMoin is so very bleh' [18:36] I actually like PMWiki best. [18:36] it makes sense for a team of about 20 people, but not at Ubuntu-scale, sadly [18:36] man, I should have switch readfeeder to postgres weeks ago [18:36] paultag: agreed. [18:36] mhall119: they're both SQL, just change your SQL abstraction layer [18:36] Pici: It's such a shame, really [18:37] paultag: I did, django makes that easy [18:37] I'm commenting on the performance boost [18:37] mhall119: yuppers. [18:37] mhall119: Oh yeah, for sure. PostgreSQL triggers rule too [18:37] mhall119: wow, didn't know it was *that* different. [18:37] nigelb: for massive writes [18:37] MySQL+ISAM is great for read performance, but sucks at writes [18:37] mhall119: you can do some really nifty stuff. I was running a PostgreSQL daemon on my little ARM guys at my first job. I had them *hooked up* [18:38] I may need to learn postgres replication at some point in the future [18:38] if I'm lucky [18:39] mhall119: What I *love* about postgres is its hot backup capability. [18:39] There's a lot file which can be rsynced every 5 minutes for hot backups. [18:39] there's not too much to hate about PostgreSQL [18:39] mysql bin logs are icky. [18:39] I'm going to have to stay up tonight to clean that up [18:40] it used to by that updating all 250 feeds would spike my CPU and make apache unresponsive for a couple minutes [18:40] mhall119: you should really have it do that smartly [18:40] now, with postgres + some code optimization, It barely slows it down [18:40] paultag: I should, yes, it's on my list [18:41] mhall119: you should have a daemon that grinds in the background, then if you're real fancy you can get some AJAX longpoll stuff going against it, and have new posts pop up as they enter the DB [18:41] mhall119: just poke a batch of feeds every few seconds or something [18:41] paultag: my UI has no ajax fanciness [18:41] mhall119: shame [18:41] mhall119: this also ain't AJAX, it's reverse ajax [18:42] mhall119: ajax usually blocks on client-side until an action, pokes the server, gets the response and posts it without a refresh [18:42] mhall119: what I'm talking about is blocking serverside until an action, poke the client and post teh response [18:42] comet feeds is what you want [18:42] AlanBell: that's what they call it, Comet, that's right [18:43] yeah, I'll look at UI improvements in the future [18:43] comet is increating the time progressively? [18:43] right now I'm getting it working and stabilizing the backend [18:43] basically the server serves a page *really* slowly, but doesn't hang up the connection [18:43] AlanBell: I've been doing that with NodeJS forever now :) [18:43] AH [18:44] it is how etherpad works amongst other things [18:44] AlanBell: the way I've implemented it is have the client in a while (true) { request() }, then clear out all requests every 30 seconds or so (that's about how long it takes for a browser to stop trying) [18:44] and the twitter streaming API [18:44] AlanBell: I thought etherpad polled every x seconds [18:44] nigelb: hell no [18:44] nigelb: that would swamp a server [18:44] nigelb: this will poll N times a second if there are N updates in one second [18:45] nigelb: and it will idle at 2 requests a minute if you do it my way (no actions) [18:45] ah, increase the time if there are no changes? [18:45] nigelb: no [18:45] nigelb: time "sleep" between polls is always 0 in this case [18:45] client → server (delay returning page until an action) → client, start over [18:46] so the client thinks the server is laggy, but it's just being smart [18:46] ah [18:47] nigelb: comit, someone called it (another cleaning product, like ajax) [18:47] AlanBell: paultag, mhall119, you and I should team up and form a consulting company :P [18:47] We'd rock the web world :P [18:47] the first all-ubuntu consulting force? :) [18:47] we could call it libertus http://libertus.co.uk/ [18:48] paultag: yup [18:48] AlanBell: is that you? [18:48] paultag: yup, we are rebranding what was The Open Learning Centre [18:48] AlanBell: outstanding, well done. [18:48] oh, that's why your twitter nick changed. [18:48] I still can't come up with a name for my LLC blob [18:48] but as we don't do much learning, and we are not a centre of anything the name wasn't working for us [18:48] nigelb: yup [18:48] AlanBell: aye [18:49] for a while I was onto something, but my ideas for names just sort of farted out, along with any chance of a snappy logo === daker is now known as daker_ [18:51] OK, righto. I need to clean my house. I'll BBL. Good chatting, chaps. [19:07] nigelb: we'd need a PM too [19:12] wait, jono and dholbach bought costumes in a sex shop? [19:12] that sounds like an interesting story [19:13] I always pick a weird time to look at irc channels. [19:13] * Pici gets back to work [19:14] Pici: I pick a bad time to look at my feed reader :) [19:44] I wonder if it was the shop by the hotel in Budapest [20:43] oh wow, I made it on OMG! Ubuntu [20:44] yay! [21:35] Technoviking: about how long does it take to remove a post if I've clicked "report abuse"? [21:37] * AlanBell scrapes 40,000 pages of wiki [21:38] heh [21:58] it seems to not like me doing that :( [22:17] * AlanBell finds scraping script trips up on viagra spam [22:17] https://wiki.ubuntu.com/71c%0D?action=raw [22:20] * nigelb deletes [22:26] jcastro: https://wiki.ubuntu.com/71c?action=info [22:35] when I scoop the whole lot down I will grep it for viagra [22:37] what happened to the ubuntu logo as the favicon for the wiki? [22:38] /someone/ complained it was the wrong color so they took it away entirely [22:38] https://wiki.ubuntu.com/favicon.ico [22:38] go there, it will refresh your browser and will be fixed [22:38] oh, nice [22:38] browsers only ever instantly update a favicon when you don't want them to [22:39] hehe [22:39] change it back and they cache it for weeks [22:41] gosh, even visiting that page gave me the wrong favicon [22:54] Warning: You triggered the wiki's surge protection by doing too many requests in a short time. [23:03] haha [23:03] I filed a bug that the one on loco directory doesn't match the planet one [23:04] popey: I think chris showed that to ivanka at UDS [23:11] popey: what's different? [23:12] oh, favicon, yeah [23:15] yeah, well they have no idea what colour orange it is supposed to be anyway [23:15] #dd4814 in hex, but they prefer pantone or cmyk [23:16] start from either of them and you are heading for fail, especially if you use a mixture of MacOS X and Ubuntu [23:17] * AlanBell scrapes 40,000 pages of wiki slightly slower than before [23:30] grrrr [23:30] why isnt it easy to disable ipv6 on ubuntu? [23:30] it's needlessly complicated [23:34] https://wiki.ubuntu.com/?from=0&context=180&action=fullsearch&titlesearch=0&value=viagra [23:34] * AlanBell takes lots of viagra [23:34] off the wiki [23:34] wtf [23:35] whole load of numbered attachments to things that are web pages you really don't need to view [23:40] AlanBell: jesus, 92 pages [23:40] gotta love spambots [23:44] I guess https://wiki.ubuntu.com/BadContent doesn't apply to attachments [23:44] that one isn't spam btw, that is the moinmoin filter configuration page [23:50] ok, I think the remaining mentions of viagra are legit [23:53] in 33 hours or so I should have a copy of the wiki on my laptop (without attachments)