Logs for jdev

Show join/part/nick changes:

[00:28:48] * Lance left the chat.
[00:51:06] * jcea joined the chat.
[01:15:03] * darkrain_ left the chat.
[01:30:25] * Tobias_ joined the chat.
[01:35:05] * Tobias left the chat.
[02:21:49] * Lance joined the chat.
[02:52:24] * jcea left the chat.
[05:37:55] * Lance left the chat.
[06:04:16] * vorner joined the chat.
[06:30:44] * Lance joined the chat.
[06:44:21] * vorner left the chat.
[07:01:55] * Lance left the chat.
[07:03:59] * ermine joined the chat.
[07:26:27] * Lance joined the chat.
[07:29:37] * vorner joined the chat.
[07:30:22] * Tobias_ left the chat.
[07:30:25] * Tobias joined the chat.
[07:44:19] * Lance left the chat.
[07:50:48] * Asterix joined the chat.
[08:19:06] * luca tagliaferri joined the chat.
[08:21:51] * Kev joined the chat.
[08:24:40] * Beanow joined the chat.
[08:35:35] * Guus joined the chat.
[08:37:56] * Kev_ left the chat.
[08:59:01] * Tobias left the chat.
[09:16:29] * Irdis joined the chat.
[09:17:49] <Beanow> Hmm, Kev mentioned earlier that real-time calendar syncing was abandoned. But if I read up on the techniques being used now for the syncing it's really simple. Just notify the client they have to retrieve the changes. (ActiveSync uses this)
[09:18:28] <Beanow> That seems extremely easy for XMPP. Especially with BOSH if your connection isn't optimal.
[09:19:09] <Beanow> Is it because MS has patents preventing it in an open spec?
[09:26:37] * Tobias joined the chat.
[09:31:32] * Tobias left the chat.
[09:34:49] * Tobias joined the chat.
[09:43:43] * Irdis left the chat.
[09:44:56] * Kev_ joined the chat.
[10:09:42] <MattJ> Beanow, not that I'm aware of
[10:11:05] <Beanow> Ah, I found in the meantime: Google once used ActiveSync but planned to switch to IMAP + CalDAV + CardDAV with push notifications.
[10:11:21] <Beanow> Those are open, I can't imagine MS has a patent on the push-notifs.
[10:11:33] <Tobias> aren't they shutting down caldav?
[10:12:09] <Beanow> Google? Possibly, considering they have their own REST API now.
[10:12:22] <Beanow> It was a while ago, but would answer my patent thoughts.
[10:14:04] <Beanow> Do you know of any XMPP components that do update notifications for CalDAV?
[10:14:19] <MattJ> I don't, but I'd love to see one
[10:14:21] <Beanow> And possibly, allow registration to create calendars for a JID?
[10:14:46] <MattJ> I've always thought the lack of calendaring-over-XMPP silly, but have no time to work on it
[10:15:04] <Beanow> Well, I'm investing some time in expanding my google diet.
[10:15:10] <Beanow> And next target is gCal.
[10:15:24] <MattJ> I approve :)
[10:15:24] <Beanow> So I want to put in some effort to get this running.
[10:16:02] <Beanow> I just read Kev's book, cover to cover. So I might do some prototyping over the weekend.
[10:16:14] <Beanow> And it's a long weekend: 'cuz easter
[10:17:15] <vorner> I've always thought the lack of any decent calendaring over anything is silly.
[10:17:28] <Beanow> And of course, if this idea works for CalDAV, it should work for CardDAV.
[10:17:30] <Link Mauve> It was one of my goals when I was writing a PubSub component, but I didn’t go that far in writing client-side applications for it.
[10:17:47] <Beanow> Hmm.
[10:17:55] <MattJ> vorner, true... though Google Calendar over HTTP is not altogether bad (it's not one of their best products, but it's indispensable for some)
[10:18:03] <Beanow> I think your average IM shouldn't have a full calendar app though.
[10:18:22] <Beanow> The client probably just aught to poke an existing calendar app.
[10:18:30] <Link Mauve> I don’t think it sould be integrated with IM, but use the same protocol of course.
[10:19:40] <vorner> MattJ: There's one big problem with Google Calendar. I don't trust third-party server with my contacts & calendars O:-). And the fact that I need a web browser to do non-web-related stuff is wrong too.
[10:20:06] <MattJ> vorner, I didn't say it wasn't wrong :)
[10:22:09] <Beanow> Link Mauve: how far did you get with this?
[10:25:47] <MattJ> It began with p, and ended in js, and contained at least a g and an x...?
[10:25:52] <MattJ> /me struggles
[10:26:38] <mathieui> MattJ, with an ^ on the g I think
[10:26:47] <MattJ> Ah yes
[10:26:58] <MattJ> http://codingteam.net/project/psgxs
[10:27:10] <MattJ> No j
[10:28:10] <MattJ> I similarly tried calendaring-over-pubsub, but concluded you need server-side logic, and that makes plain pubsub not necessarily the best protocol
[10:29:00] <MattJ> Though I'm sure it can be one of them (e.g. for subscribing to a calendar, or to an event)
[10:30:09] <MattJ> Anyway, I ended up with something to simply poll an ical URL and send out alarms over XMPP
[10:30:36] <MattJ> I wonder what I did with that...
[10:32:01] <Link Mauve> Beanow, far enough to see my approach was very bad, just like MattJ said.
[10:32:18] <Link Mauve> And not far enough to have anything remotely related to calendaring to show.
[10:34:03] <MattJ> Link Mauve, how complete is psgxs now? I had completely forgotten about it until I found my copy of it on prosody.im during the server move
[10:36:30] <Link Mauve> It is pretty much abandonned, I don’t like its architecture at all, it’s not extensible in a good way and I don’t like JS anymore. ^^
[10:39:48] <MattJ> \o/
[10:39:55] <MattJ> at the last part :P
[10:39:58] * Asterix left the chat.
[10:40:00] * Asterix joined the chat.
[10:41:00] <mathieui> Finally \o/
[10:46:15] <Kev_> I wonder how hard a dumb calendaring bot would be.
[10:46:29] <Kev_> If sufficiently dumb, probably not too hard.
[10:46:45] <MattJ> Not hard
[10:50:08] * Asterix left the chat.
[10:57:31] <Beanow> MattJ: the XMPP alarm to do a ical / CalDAV poll was what I had in mind to do.
[10:58:05] <Beanow> The updating logic would make the client too complex if you have to re-invent all the partial update stuff.
[11:00:44] <MattJ> Indeed
[11:03:38] <Beanow> Do you still have that laying around?
[11:04:06] <Beanow> Or using it maybe
[11:19:26] <MattJ> I'm not using it, I can try to find it
[11:19:38] <MattJ> I'm not sure how complete it ever got
[11:19:52] <MattJ> I definitely have the ical parser around, since I've used that in other projects
[11:20:04] * Kev_ left the chat.
[11:21:21] <MattJ> /me performs some ethernet cable rearrangement to access his backups
[11:22:40] <Beanow> Anything would be nice. If it's not complete it can still be reference or a pivot.
[11:26:15] * MattJ left the chat.
[11:27:02] * MattJ joined the chat.
[11:28:18] * jabberjocke left the chat.
[11:34:05] <MattJ> http://code.matthewwild.co.uk/lua-ical - quite basic, doesn't support fancy stuff, but enough for a listing of events in the file, and easy to extend
[11:35:56] * Alex joined the chat.
[11:36:07] <Beanow> Alright :]
[11:37:33] <Beanow> And any luck with the server component? If it's a hassle, then don't bother. It shouldn't be too hard to make an alert service from scratch.
[11:39:08] <Beanow> Ah I see, yes this parser will come in handy.
[11:39:24] <Beanow> Thanks :]
[11:39:48] <MattJ> I'll keep looking for it
[11:40:09] <MattJ> But it was unfinished, and I never used it anywhere, so I've no idea where I last had it
[11:41:23] <MattJ> Someone emailed me a few days ago, asking if I had the source to a small project I wrote in 2006... it was hosted on some free SVN provider that is now down
[11:41:47] <MattJ> The days when SVN was cool, and CVS wasn't, and Sourceforge was one of the best code hosting platforms
[11:42:00] <MattJ> *shudder*
[11:42:47] <Beanow> Hahaha oh yeah
[11:49:57] <Beanow> Pretty content with the switch to git in our company.
[12:10:25] <Beanow> Speaking of which. I'll dump my mockups here if you want to track it.
[12:10:25] <Beanow> https://github.com/OSCP/xmpp-cal-prototype
[12:12:10] <MattJ> I could never decide whether the service should send out alarms when they happen, or if the clients should have that responsibility
[12:12:59] <Beanow> I think it depends if you want the possibility of having multiple interfaces to the server-side calendar.
[12:13:38] <Beanow> If it's an over-XMPP only service, client would be easier to implement.
[12:13:51] <Beanow> But in all other cases, I think it should be the server.
[12:14:34] <Beanow> Or did you mean the event alarms? "Meeting in 10 minutes!"
[12:14:40] <MattJ> That
[12:14:43] <Beanow> Aaaah
[12:15:07] <MattJ> Probably the server I think, but a component separate to the actual calendar service
[12:15:19] <MattJ> Even a bot would do
[12:15:24] <Beanow> Well, I want to have client-side editing options of the events, so if it already has the info I think it should do the alerts too.
[12:15:32] <MattJ> Agreed
[12:15:34] <Beanow> Then again, I can see the server-side advantages.
[12:15:50] <Beanow> Because you could also have the server decide, hmm no calendar clients. I'll poke him per IM.
[12:15:59] <MattJ> I'd like receiving an XMPP message as a reminder, so it can e.g. go to my phone when I'm not at my desk
[12:16:03] <Beanow> ^
[12:16:07] * luca tagliaferri left the chat.
[12:16:23] <MattJ> But then if my phone had a calendar app anyway that could sync, well... :)
[12:16:35] <Kev> But you might want an email too. Or a text, or whatever.
[12:16:42] <Kev> Alerts have to be server-side, I'd have thought.
[12:16:59] <MattJ> Right
[12:17:13] <MattJ> But definitely it's a separate service to the actual calendar
[12:17:17] <Beanow> I don't know of any service that does them server-side now though.
[12:17:40] <Beanow> Other than some specialized products.
[12:18:16] * naw joined the chat.
[12:18:34] <Beanow> It's a 'would be nice' for now though.
[12:18:57] <Beanow> Sync first, services later :P
[12:19:18] <Kev> What language are you working in?
[12:19:48] <Beanow> I haven't started yet, so I don't really mind.
[12:20:06] <Beanow> Just... no erlang yet >.<
[12:20:33] <Kev> I was only interested :)
[12:20:36] <Beanow> Since it'll be a server-side thing. I might go for python or C.
[12:20:39] <Kev> (And yucky erlang :))
[12:20:48] <Kev> If you go C++, you get to use Swiften ;)
[12:20:52] <Beanow> Maybe node.js
[12:22:28] <Beanow> I don't think I know it yet. Where can I find it?
[12:22:41] <Beanow> Oh got it, nvm
[12:23:17] <MattJ> I won't vouch for Lua, you'll get there when you're ready for it
[12:23:33] <Beanow> Cool. Has both client and component interface?
[12:24:01] <MattJ> Swiften? Yes, it's used in the latest Spectrum iirc
[12:24:13] <vorner> Sending alarm server side ‒ there are advantages. But disadvantages too. I would like my calendar app to work offline too O:-)
[12:24:14] <Kev> Swiften? Yes. Even fake servers if you're prepared to do a bit of work :)
[12:24:27] <Beanow> Yeah... WoW addons left a bad taste in my mouth tbh. I'll probably avoid lua.
[12:24:53] <MattJ> vorner, yep
[12:25:08] <Beanow> xD might be a good idea yeah
[12:25:19] <MattJ> Beanow, haha
[12:27:49] <Beanow> Alright, time to stop slacking. It's still a workday. Thanks for the help all :]
[12:28:17] <MattJ> :)
[12:28:41] <Kev> It's not a work day here, and I'm working anyway. Does that make up for it?
[12:29:33] <Beanow> Hehehe, possibly
[12:29:40] <Beanow> If it's work for great good!
[12:32:04] <Beanow> In which case, anything goes.
[12:35:43] * luca tagliaferri joined the chat.
[12:39:04] <Beanow> Kev: I've read your book cover to cover in the meantime and haven't heard from O'Reilly yet.
[12:39:10] <Beanow> I fear it may take a while ^_^"
[12:40:18] <Kev> So how have you read the book if you've not managed to pay for it yet?
[12:40:52] <Beanow> Google served me a PDF copy.
[12:41:08] <Kev> Ah, so you pirated it?
[12:41:25] <Beanow> Not me, someone else did and I read it.
[12:41:27] <Beanow> But,
[12:41:44] <Beanow> It's a good book! I am going to pay, obviously.
[12:41:57] <Beanow> But I suspected Oreilly might take some time with my bitcoin question.
[12:42:09] <Beanow> I was too impatient to wait with XMPP just for that.
[12:43:43] * luca tagliaferri left the chat.
[12:44:14] <Tobias> so one less ivory back scratcher for Kev :/
[12:44:37] <Kev> You should see the size of the royalty cheques we get :(
[12:44:57] <Beanow> He will have it, but it depends on how quick the oreilly service turns out to be.
[12:45:11] <Beanow> Unless you'll accept the payment directly.
[12:45:43] <Beanow> But I assume you pointed me to them because you approve of their way of distributing and the help they may have given publishing.
[12:45:44] <Kev> Don't think I can do that, no.
[12:46:53] * luca tagliaferri joined the chat.
[12:47:06] <Beanow> And if they end up not being able to take bitcoins, I'll get a copy with plain old dollars.
[12:47:25] <Kev> Being an O'Reilly book gives it more weight, I think. Whether financially it's worth giving up 90% of the proceeds I don't know, but in terms of getting people to read it (which was the point, rather than the money), having an O'Reilly book on the subject solves that best.
[12:47:29] <Beanow> But yes, main reason: impatient :P
[12:47:48] <Tobias> 90%?
[12:48:13] <Kev> Tobias: Authors get 10% between them, for O'Reilly books.
[12:48:20] <Kev> So yeah, I get ~3% for the XMPP book.
[12:48:25] <Beanow> Wow
[12:48:47] <Tobias> is that after you remove cost for printing, distribution, etc.?
[12:48:55] <Tobias> or 3% of the tag price
[12:49:07] <Kev> At this point I don't remember.
[12:49:07] * vorner left the chat.
[12:49:18] <Beanow> Tobias: I was going for the eBook version though.
[12:49:19] * vorner joined the chat.
[12:49:20] <Kev> But most copies are digital I think, anyway.
[12:50:40] <Tobias> so for one sold kindle copy it's half a euro for you
[12:50:41] <Beanow> I heard from more authors that the publisher's name has huge weight and that it's an issue, but 90%?
[12:51:16] <Beanow> What about the writing process? Did they review and help out or anything?
[12:51:26] <Kev> Yes.
[12:51:35] <Tobias> Kev, do you know of the size of impression?
[12:51:49] <Kev> Tobias: You mean how many copies we've sold?
[12:51:54] <Kev> or...?
[12:52:02] <Tobias> yeah...maybe i took the wrong translation from my dict
[12:52:08] <Tobias> not sold but printed
[12:52:19] <Kev> Ah, no idea.
[12:53:47] <Tobias> http://www.amazon.de/XMPP-Definitive-Applications-Technologies-ebook/dp/B002OFAY50/ref=sr_1_fkmr1_1?ie=UTF8&qid=1364561372&sr=8-1-fkmr1 not many but good ratings
[12:56:28] <Beanow> Hmm...
[12:57:05] <Kev> In the UK one person said the book was great, but they didn't the think the paper was as good as other books, so only gave 3*.
[12:57:08] <Kev> That made me sad
[12:58:16] <Beanow> Why would one rate a book based on paper quality? >.<
[12:59:07] <Tobias> well...if it's too thin or too dark grey paper it'd be annoyed too
[12:59:14] <Kev> Oh, and now a 2 star rating from some school kid, yay.
[12:59:24] <Kev> That one's new.
[13:00:20] <Kev> .com is slightly better, 9 5 star, 2 4 star there.
[13:00:31] * deryni joined the chat.
[13:00:40] <Kev> Where neither of the 4star reviews say anything could be improved.
[13:00:47] <Beanow> Well I think it's very good. In fact I was reading up some of the example scenario's to my friends. Because they're very not-geek friendly.
[13:01:25] <Tobias> one german review said s(he) missed error handling which wasn't mentioned at all
[13:02:01] <Kev> Oh, hrmm. Did we not?
[13:02:27] <Beanow> Like, the awkward father-child conversation explaining why it's useful to know when someone's typing.
[13:02:29] <Tobias> i don't remember
[13:02:29] <Beanow> Loved that one.
[13:03:08] <Beanow> Error handling. Only a couple of examples, but it was mentioned explicitly that for more info on that you should check the XEP's.
[13:03:13] <Beanow> Since they have tons of examples.
[13:04:18] <Beanow> Unless they meant they wanted to see that in the example code, with SleekXMPP.
[13:07:19] <Beanow> In my opinion though. It's pretty clear the book explains concepts and so if you properly want to implement something you should read the related XEP's anyway.
[13:27:38] <Beanow> Same would ofc go for Sleek.
[13:28:14] <Kev> If you do try using Sleek, they've got wiki (or somesuch) pages to show updated book examples for the current version of Sleek (it's changed quite a lot since the book).
[13:28:27] <Kev> I think we have book examples for Swiften too (which we hadn't released when we wrote the book)
[13:30:17] <Beanow> Well I won't need them. I've been programming for some years so I'll manage with API docs too. It's just that I needed a top-down view of the XMPP architecture, toolkit and community. For which your book was perfect.
[13:30:47] <Kev> Glad to hear it.
[13:31:57] <Beanow> The only things I skimmed over were Jingle, since I had just read all about ICE , SOCKS5, WebRTC and whatnot somewhere else.
[13:32:08] <Beanow> And since I had the calendar idea in mind first I won't touch that for a while.
[13:32:29] <Beanow> And the appendixes, didn't read those cover-to-cover style :P
[13:35:04] <Beanow> I only managed to spot maybe 2 minor mistakes in all 300 pages. Like I believe once a domain from the explanatory text didn't match the example stanza. But at that point the reader aught to be able to get the idea.
[13:36:09] <Beanow> I can only really make a general complaint about eBooks. Namely it's sometimes inconvenient how images are placed with a printed version in mind.
[13:36:51] <Kev> Although generally ebook formats are better than PDF, for that.
[13:37:08] <Beanow> Particularly: when a paragraph hits the end of a page. Then the next page starts with an illustration and then the paragraph continues.
[13:37:21] <Beanow> But yes, a 2 page view fixes that.
[13:37:47] <Beanow> I read most of the book on my phone in the subway tho.
[13:39:25] * darkrain joined the chat.
[13:39:49] <Beanow> For both of those things though, I think if you can't get over yourself with such minor issues, you might want to rethink if you want to be a programmer :P
[13:49:28] * luca tagliaferri left the chat.
[13:49:29] * luca tagliaferri joined the chat.
[14:15:31] * Kev_ joined the chat.
[14:21:45] * Nickname joined the chat.
[14:23:46] * bear joined the chat.
[14:30:01] * Kev left the chat.
[14:45:04] * darkrain_ joined the chat.
[14:48:39] * Nickname left the chat.
[14:56:09] * Guus left the chat.
[15:10:03] * psa joined the chat.
[15:12:27] * sfsdfd joined the chat.
[15:12:46] * sfsdfd left the chat.
[15:13:39] * rics joined the chat.
[15:15:17] <Tobias> psa, hi
[15:28:29] <psa> hallo :)
[15:30:31] * rics left the chat.
[15:34:48] * Tobias left the chat.
[15:34:53] * Tobias joined the chat.
[15:34:59] <Tobias> psa, what do you think about adding a line to xep-191 describing http://hg.prosody.im/trunk/rev/57c4964eff0b
[15:35:58] <psa> maybe :-)
[15:36:13] <psa> are you suggesting that a user might add a MUC room to the block list?
[15:36:36] <Tobias> not a room..but an occupant in a room
[15:37:09] <psa> so I might add jdev@conference.jabber.org/bear to a block list?
[15:37:13] <Tobias> yes
[15:37:20] <psa> makes some sense
[15:37:27] <Tobias> so thought Kev_
[15:37:46] <psa> in which case, yes, dropping those messages would be reasonable
[15:37:53] <Kev_> Necessary, rather.
[15:38:07] <Beanow> (Maybe put the log statement before the drop though?)
[15:39:20] <MattJ> +1
[15:40:46] <psa> nod
[15:41:23] <psa> wow, this is a pleasant Friday -- it's the first time in 3+ weeks that I haven't been traveling or just insanely busy
[15:42:22] <Kev_> Today's a holiday in the UK.
[15:42:22] <Kev_> It's nice to be coming up to 4 in the afternoon and only have done around 6 hours of work :)
[15:42:50] <MattJ> It's not a holiday in the US :(
[15:43:10] <psa> MattJ: nor Monday
[15:43:15] <Beanow> It is one on NL, but not one where you get the day off.
[15:44:39] <psa> damn workaholic Americans
[15:44:55] <MattJ> psa, really? Wow...
[15:44:55] <MattJ> I think I may have some sweet-talking to do
[15:44:55] <Beanow> Monday we get the day off though.
[15:44:55] <Beanow> *in NL
[15:45:27] <Beanow> Just me, or big lag spike?
[15:46:14] <Kev_> Lag spike.
[15:46:14] <Kev_> load average: 5.08, 4.75, 3.87
[15:46:14] <Kev_> Can't see why that would slow anything down.
[15:46:18] <psa> Beanow: that's my fault
[15:46:18] <psa> I need to grep through some logs on the machine
[15:46:52] <Beanow> Aaah
[15:47:20] <Kev_> Although the backup process seems to be doing more to cause it than anything else.
[15:48:45] * oo joined the chat.
[15:48:48] <Beanow> Yay for full disk images :D
[15:48:49] <psa> no wonder it was so quiet -- my calendar wasn't showing me the conference call I'm supposed to be in right now
[15:50:04] <Beanow> +1 for mixing client-side and server-side alerts.
[15:50:09] <Tobias> heh
[15:50:59] * oo left the chat.
[15:57:55] * jcea joined the chat.
[15:58:19] * jcea left the chat.
[15:58:35] * jcea joined the chat.
[15:58:39] * jcea left the chat.
[16:00:50] * MattJ left the chat.
[16:00:54] * MattJ joined the chat.
[16:01:34] * jcea joined the chat.
[16:01:39] * jcea left the chat.
[16:11:38] * jabberjocke joined the chat.
[16:12:27] * jcea joined the chat.
[16:15:12] <psa> /me hates the term "ask" as a noun
[16:17:07] <MattJ> Definitely American
[16:17:10] * vorner left the chat.
[16:17:30] <MattJ> It's usually a small ask, or a large ask
[16:17:35] * Lance joined the chat.
[16:21:29] <Tobias> ask is a noun?
[16:21:50] <Tobias> ah..financial term
[16:23:02] <psa> yeah, definitely some kind of salesy term, it really grates on me
[16:23:04] <Kev_> Sure it's a noun, a proper noun at that.
[16:23:09] <Kev_> Pretty good pizza.
[16:24:20] <Kev_> Although I do prefer Prezza.
[16:24:22] <Kev_> *Prezzo
[16:43:16] * bear left the chat.
[16:50:05] * Lance left the chat.
[16:56:50] * Lance joined the chat.
[17:04:38] * bear joined the chat.
[17:14:43] * luca tagliaferri left the chat.
[17:20:35] * Irdis joined the chat.
[17:27:20] * Irdis left the chat.
[17:31:17] * luca tagliaferri joined the chat.
[17:31:41] * luca tagliaferri left the chat.
[17:37:50] * bear left the chat.
[18:21:10] * Asterix joined the chat.
[19:07:47] * Beanow left the chat.
[19:10:50] * bear joined the chat.
[19:13:31] * Lance left the chat.
[19:26:27] * Lance joined the chat.
[19:32:53] * kevin joined the chat.
[19:48:09] * Lance left the chat.
[19:56:45] * bear left the chat.
[20:00:03] * vorner joined the chat.
[20:09:22] * kevin left the chat.
[20:09:45] * ermine left the chat.
[20:16:13] * Lance joined the chat.
[20:17:52] * whatever joined the chat.
[20:18:17] * scippio left the chat.
[20:20:20] * scippio joined the chat.
[20:35:21] * vorner left the chat.
[20:38:40] * Beanow joined the chat.
[20:40:03] * vorner joined the chat.
[20:48:20] * naw left the chat.
[21:18:30] * vorner left the chat.
[21:19:17] * psa left the chat.
[21:34:50] * Tobias left the chat.
[21:34:52] * Tobias joined the chat.
[21:52:58] * Asterix left the chat.
[22:47:59] * deryni left the chat.
[22:52:48] * Tobias left the chat.
[23:07:23] * MattJ left the chat.
[23:51:55] * bear joined the chat.