Developer Meeting 08/03/2009 18:30 UTC

Attendees: clsk, cupu, J_K9, Jaywalker, NeerajR, Shas

Note: All timestamps in UTC


[18:31] j_k9: hi all :)

[18:31] NeerajR: Hi there

[18:32] clsk: hey

[18:33] clsk: how long until the meeting starts?

[18:33] j_k9: let's wait a few more minutes before starting - I know that Stefan will be joining us, and hopefully a few more of the new developers

[18:33] cupu joined the chat room.

[18:33] cupu: Hi, sorry for being late

[18:33] j_k9: hi

[18:34] clsk: hey Stefan I got the build system to work on windows

[18:34] clsk: I just can't find the project file

[18:34] cupu: cool

[18:34] cupu: I think you have to explicitly specify what type of files you want to generate

[18:35] j_k9: shall we start? the only other developer who might be joining us is Alan Hardin, but I'm not sure he will

[18:35] clsk: Who's that?

[18:35] cupu: ok

[18:35] NeerajR: ok

[18:35] clsk: Is justing here?

[18:36] j_k9: he's a new developer who has shown some interest, and he replied to my email about the meeting but he didn't say for certain that he'd join us

[18:36] j_k9: Justin is Jaywalker

[18:36] clsk: I know

[18:36] clsk: but is he there? He's been logged on since yesterday

[18:37] j_k9: ah… hmm hopefully mentioning Jaywalker pinged him. doesn't look like it though

[18:38] j_k9: ok, well I think we'll have to go on anyway. he might be out and not have seen the email about our meeting.

[18:39] j_k9: a rough order for the meeting is:

[18:39] j_k9: 1) discuss tasks for new developers

[18:39] j_k9: 2) discuss recent developments

[18:40] j_k9: 3) discuss what our tasks for the next 1 or 2 weeks are

[18:40] j_k9: and preferably stop using the word 'discuss' :)

[18:40] cupu: :)

[18:41] j_k9: NeerajR: did you manage to speak to clsk about the Directory layer?

[18:41] NeerajR: I spoke to Alan yesterday but he said I can work with him on Network layer

[18:42] j_k9: ah ok. do you have any specific tasks to work on in the next week?

[18:42] NeerajR: no

[18:42] clsk: We can work that out

[18:43] Shas joined the chat room.

[18:43] j_k9: ok. and more importantly, have you seen and do you understand the existing network code?

[18:43] NeerajR: great

[18:43] j_k9: welcome Shas :) is that Shilpa?

[18:43] NeerajR: I just read the code

[18:44] Shas: Yes

[18:44] j_k9: hi, we just started - we're talking about the network layer and NeerajR's tasks at the moment.

[18:45] j_k9: clsk: would you like to run through what you have in mind for NeerajR?

[18:47] clsk: hm He could work on supporting p2p connections

[18:48] Shas: Let me introduce myself, I learned about the mira project from sourceforge.net. Tring to understand what are we currently working on. I have mostly done academic projects before this. I am pretty excited to do real life project.

[18:49] j_k9: NeerajR - would you be happy with that? the P2P system would allow Clients to download updates to data (i.e. changes) from each other and communicate even if the Server goes down

[18:50] NeerajR: Yeah that should be good

[18:50] NeerajR: so what do you think should be a good start point?

[18:50] clsk: hye Shas, welcome to the team

[18:51] clsk: NeerajR: We'd have to discuss the design a little bit, before you start coding.

[18:51] j_k9: Shas: thank you for joining us. I hope you have had time to read the documentation and take a look at the mockups ( http://miragroupware.org/mockups/ ) - Mira Groupware is essentially a Client/Server system which allows users to communicate and collaborate on projects

[18:51] clsk: We have to do a little bit of research too. Have you done anything with P2P before?

[18:52] j_k9: clsk: would you like to discuss the P2P system on the mailing list? we can dig up some old threads to see what we found in the past - I remember a good article on STUN and an Intel P2P library we were considering

[18:52] clsk: STUN should be a last resource thing. We should be able to make it work without it.

[18:52] NeerajR: I did not so anything on p2p

[18:53] NeerajR: so === do

[18:53] NeerajR: but have a fair idea about it.

[18:53] NeerajR: ok

[18:53] clsk: it can get a bit complicated, but if you're familiar with networking it shouldn't be too hard.

[18:54] NeerajR: yeah depends on our requirements

[18:54] NeerajR: I am fine with networking

[18:54] j_k9: would you like me to prepare a blueprint for the P2P system to outline its requirements? we could then discuss this on the list

[18:55] Shas: Not really, but I know hoe it works

[18:56] NeerajR: yeah if you can make a blueprint it would be great help

[18:56] j_k9: ok, I will do that then. I won't put it on the wiki until we've had a chance to discuss it on the mailing list and modify it according to our research on possible implementations etc

[18:56] NeerajR: Till then I can start reading the old threads and the Intel P2P library

[18:56] j_k9: great

[18:57] clsk: We should try to just use boost's asio

[18:57] clsk: if that's not possible or it's too hard, then we should consider using another library

[18:57] NeerajR: yeah your email message last week about it

[18:58] NeerajR: ok fine, I will go in details of asio

[18:58] j_k9: that sounds good. there may be another project which has used asio for P2P in the past.

[18:58] j_k9: shall we talk about Shas now?

[18:59] Shas: Sure

[18:59] j_k9: Shas, have you worked with Boost or Qt before? also, do you have a particular area of expertise (e.g. networking, security, GUI etc)?

[19:01] Shas: I haven't work with Boost ot Qt.Networking is my area

[19:01] Jaywalker: Hey guys!

[19:01] Jaywalker: I'm back

[19:01] clsk: Stefan: Got the build file. I need to clean up the code. This is the effect of working on linux for so long. I haven't checked the code in windows in a long time.

[19:02] clsk: the client code should still work on windows though

[19:02] j_k9: hi Jaywalker! we're talking about possible work for Shilpa (a new developer) at the moment

[19:02] Jaywalker: Sorry… I was having lunch at my grandmothers and just got back.

[19:02] j_k9: no problem

[19:02] Jaywalker: Ahh.. Sweet.

[19:02] cupu: Unfortunately I didn't live up to my end of the deal

[19:02] cupu: I got no work done this weekend, but will catch up tomorrow hopefully

[19:03] j_k9: clsk: is there room for an extra developer for the network layer?

[19:03] clsk: hm… sure

[19:03] j_k9: cupu: no problem. thanks for doing a great job so far btw, but shall we talk about this after we discuss Shas' involvement?

[19:03] clsk: I could always work on another layer

[19:04] cupu: sure sure

[19:04] j_k9: Shas, what do you think of working on the Directory layer? would that interest you?

[19:06] j_k9: if not, you're more than welcome to work on the network layer. clsk, what in particular could he start working on in the network layer?

[19:06] clsk: parsing network messages

[19:06] clsk: that's the probably what needs the most attention on the network layer at the moment

[19:07] j_k9: ah ok, continuing where you left off. that is well documented in the communication protocols blueprint, right? link: http://miragroupware.org/wiki/doku.php/development/blueprints/net_protocols

[19:07] clsk: yep

[19:07] j_k9: although you mentioned something about using IDs to track users and Workplaces which may not have been included in that blueprint

[19:08] clsk: hmm I think I updated it

[19:09] clsk: ah apparently not

[19:09] Shas: Can I explore both the options before I make my mind?

[19:09] Shas: What would be good starting point?

[19:09] j_k9: yes, of course. please email the mailing list when you have decided which you would like to work on. clsk, will you be able to update the blueprint?

[19:10] clsk: hmm.. sure

[19:11] j_k9: Shas, would that be ok? I think what clsk is saying is that a good starting point would be to update the message parsing functions in the network layer to process the other communication protocols listed in that blueprint

[19:12] j_k9: if you don't want to decide now, that is fine

[19:13] Shas: That is fine. I will do that

[19:13] j_k9: great

[19:14] j_k9: shall we talk about recent progress now (point 2)?

[19:14] clsk: Shas: I'd guide you through the code if need

[19:14] Shas: great

[19:14] clsk: most significat progress I think would be the build system

[19:14] clsk: which finally works for more than 1 OS

[19:15] clsk: we still need to check if it works on Mac OS X

[19:15] Jaywalker: ^++

[19:15] Jaywalker: clsk, I can do that tonight

[19:15] clsk: cool

[19:15] clsk: the code doesn't compile on windows as of right now though. I'll be fixing that this week

[19:15] Jaywalker: Have we tested on anything aside from Win/Linux?

[19:16] j_k9: great. I have Mac OS X on a laptop so I could try that?

[19:16] j_k9: I'd need to look around for help though (installing Boost and Qt)

[19:16] clsk: I think someone tested on Max OS X a while ago.

[19:17] clsk: but that was a long time ago

[19:17] j_k9: ok, but I'd still like to do it - we don't have any instructions for this ( http://miragroupware.org/wiki/doku.php/development/environment_setup )

[19:17] j_k9: and it would be good to test anyway

[19:18] j_k9: so I'll do that. would it be worth testing on FreeBSD too?

[19:21] Jaywalker: I have an OpenBSD box, FreeBSD box, NetBSD box, and a Solaris box that I could test it on too..

[19:21] clsk: I've tested on FreeBSD

[19:21] Jaywalker: Did it build there?

[19:21] clsk: yep

[19:21] clsk: and ran fine too

[19:21] clsk: that was a while ago too though

[19:21] Jaywalker: Alright. OpenBSD probably will too then… Not sure about NetBSD though and no idea about solaris

[19:21] clsk: yes

[19:21] clsk: I think as long as it works in windows, Mac OS X, linux and one of the bsds we should be safe

[19:21] cupu: I can have a crack at Solaris if you think it's urgent now

[19:22] cupu: I'll exploit my place of work a little

[19:22] clsk: not urgent at all Stefan, but would be nice

[19:22] Jaywalker: cupu, I have a solaris box in my room…

[19:22] cupu: cool

[19:22] cupu: opensolaris is it?

[19:22] cupu: or did you go all out?

[19:22] Jaywalker: Haha… It's open

[19:22] Jaywalker: just like it's openSUSE…. and open….um….mt. dew cans everywhere

[19:22] cupu:

[19:22] cupu: My company has a lot of sparc machines and some x4200 x86 servers

[19:22] cupu: but that's just for Mira bragging rights I guess

[19:22] Jaywalker: So anyone care to discuss the plugin system? I've got most of the structure planned out but still need some input

[19:22] clsk: can you start ?

[19:22] clsk: with what you've planned so far?

[19:22] Jaywalker: Well, as I said in the mailing list, I created the perl plugin importer (a basic version) in a class form to make things all neat and clean. I am nearly done now with a new one using dllimport and dlopen for windows and linux respectively. Both of these plugin types will dirive from a base plugin class which will be used in the client code so no matter what kind of plugin you want to import, they're all the same.

[19:23] j_k9: Jaywalker: did you take a look at Shafi's code which used Boost::Extension? is that in any way useful?

[19:23] Jaywalker: As far as writing the plugins I plan to do something similar to what Pidgin dones…. Pidgin uses a struct that has pointers to every function that can be called. Since mira is C++, we can have them include “plugin.h” and their class simply extends that class making all the necessary function calls that overload the previous ones which return NULL

[19:24] clsk: j_k9: the only problem with Boost.Extension is that it seems development of it has stopped and it was never included in Boost

[19:24] Jaywalker: j_k9, I did look at it… but it was pretty messy to begin with.. it's just easier to start with this.

[19:25] j_k9: great, thanks for clarifying

[19:25] clsk: one thing we could do too is take that library and build on it

[19:25] clsk: it is open source after all

[19:25] clsk: I think it is a great library, and it is cross-platform

[19:25] Jaywalker: I mean, I already support calling perl functions and halfway support the compiled functions… we could release with just that

[19:26] Jaywalker: Even though I do plan to include Python and Ruby support in the near future

[19:26] clsk: it's you call Justing. If you think that'd work, then go ahead

[19:26] Jaywalker: As far as the packages… what do you think about the signing plugins idea clsk?

[19:27] clsk: Jaywalker: Yep, that's a good idea. We discussed something like that in the past.

[19:27] clsk: getting a server for that won't be a problem.

[19:27] j_k9: Jaywalker: by signing plugins do you mean have a sort of approval process?

[19:27] j_k9: *having

[19:27] Jaywalker: j_k9, Yeah.. more or less…

[19:27] Jaywalker: users can still add their own 3rd party plugins

[19:28] Jaywalker: but there will be a warning saying “This plugin has not been signed by the Mira development team and therefore may be unsafe. Continue?”

[19:28] j_k9: we talked about that in the past - the idea is to have a website to host them, as projects such as Wordpress do with their plugins etc

[19:28] j_k9: yes, exactly

[19:28] cupu: actually I think third party plugin devs certificates should be included in any servers the users setup

[19:28] Jaywalker: that's about the only really good way we could go about plugin security

[19:29] j_k9: I agree

[19:29] Jaywalker: cupu, I do plan to use their PGP keyring

[19:29] cupu: that is .. if Mira development goes under, users can still sign they're own (using their server as the authority) an distribute them to the users

[19:29] Jaywalker: if the plugin is signed by someone who is trusted in their PGP Keyring then no warning

[19:29] cupu: just saying

[19:29] clsk: hm that's a good idea too.

[19:29] Jaywalker: if it's signed by Mira… then no warning.

[19:30] Jaywalker: Otherwise… warning

[19:30] clsk: you'd have to identify between the two. Ones signed by us, and ones signed by server administrators

[19:30] cupu: Justin, will you keep a general C interface between app and plugins? or do you want to go the c++ route?

[19:30] clsk: Definitely C++

[19:30] Jaywalker: I have expirence using GPGME so i'll be able to use that.

[19:30] Jaywalker: C++ is much harder as far as compiled plugins go

[19:30] Jaywalker: but I have it working

[19:30] clsk: already?

[19:31] Jaywalker: I can load classes in Linux already with little overhead from the plugin writer

[19:31] cupu: this is what I wanted to ask

[19:31] clsk: have you pushed the code?

[19:31] cupu: we all know about the ABI inconsistencies and name mangling differences between compilers

[19:31] cupu: how big of a problem is this for us?

[19:31] cupu: (regarding c++ I mean … )

[19:31] Jaywalker: clsk, Not yet. I'm making both the compiled and the perl classes work well with each other so there can be a base class to go over it

[19:31] clsk: it is a problem to a point.

[19:32] clsk: but if we plan to distribute binaries, it shouldn't be too much of a problem.

[19:32] Jaywalker: cupu, as long as mira and the plugin are compiled by the same compiler.. they should be fine.

[19:32] clsk: as long as everything is compiled with the same compiler

[19:32] cupu: I hate that problem, but OTOH if someone wants to support mira, it's not that big of an issue to maintain some open source plugins also, right?

[19:32] Jaywalker: we could even set up a build service like openSUSE has using Xen virtual machines

[19:32] clsk: sourceforge has something like that I believe

[19:32] j_k9: right, and distribute them straight from the Utilities website

[19:32] clsk: and so does IBM too I think

[19:33] cupu: plus some compilers (gcc, intel c++ compiler and some other stuff using the EDG * i think * front end - like comeau) are name mangling compatible and ABI compatible to some point

[19:34] cupu: which is to say .. if you ban multiple inheritence … you already have 3+ compilers working for you nicely

[19:34] clsk: ohh

[19:34] clsk: something I have to put out

[19:34] Jaywalker: heh… clsk puts out…

[19:34] clsk: please make sure your code compiles before you push it to the repository.

[19:34] clsk: hehe

[19:34] j_k9: lol

[19:34] Jaywalker: also… clsk++

[19:35] Jaywalker: There is nothing that grinds my gears more than that…

[19:35] clsk: I just found this: if ( ( wp == NULL ) and ( !m_workplaces.empty() ) )

[19:36] Jaywalker: clsk, I'm pretty sure that won't compile…

[19:36] clsk: spell out variable names too… we're not in the 70s anymore

[19:36] clsk: I'm about to find out who did that

[19:36] cupu: :-ss

[19:36] Jaywalker: and kill them? slowly…?

[19:37] clsk: yes

[19:37] j_k9: lol

[19:37] clsk: was that you Stefan?

[19:37] Jaywalker: Good.

[19:37] cupu: I would like to say it was me

[19:37] cupu: but I've written no code yet

[19:37] Jaywalker: and I've pushed no code yet…

[19:38] j_k9: so it's probably someone who has left the project

[19:38] Jaywalker: So they're dead right?

[19:38] Jaywalker: or perhaps after that push they left in shame

[19:38] clsk: well just for future reference. at least make sure the code compiles. Try to test as much as possible

[19:38] clsk: Remember you can always commit locally if you need to commit

[19:39] j_k9: while we're talking about this, has anyone else come across a few warning about deprecated headers while building Mira?

[19:39] j_k9: clsk: that's something I don't think we do enough. committing to local branches and then merging when it's ready. that's one of the beauties of bzr

[19:40] cupu: yes

[19:40] cupu: in some of g++'s latest version

[19:40] cupu: 4.2+ you'll get that error

[19:40] j_k9: is this an issue?

[19:40] cupu: it's not that big of a deal now

[19:40] j_k9: ok

[19:40] Jaywalker: j_k9, it will be in a few years…

[19:40] Jaywalker: but for now no.

[19:41] j_k9: heh ok. another warning I've been received is about our Bazaar repository format being outdated - is it worth upgrading?

[19:41] j_k9: *receiving

[19:42] clsk: j_k9: that warning is coming from asio. I'm sure they'll fix that in future versions

[19:42] Jaywalker: I'd say so… I've been getting the same things

[19:42] clsk: so not something we should worry about.

[19:43] clsk: I've tried to

[19:43] clsk: but I haven't been able to

[19:43] clsk: just using bzr update won't work

[19:43] cupu: *upgrade

[19:43] cupu: well .. just our luck

[19:43] j_k9: same thing happened to be. perhaps we should wait, it's probably not that important

[19:43] j_k9: *me

[19:44] cupu: if checkout/commit/update times don't bother anyone .. we can leave them alone

[19:44] cupu: if it starts being a problem after 5000+ revisions … we should start worring about it?

[19:44] clsk: I would like to fix that though

[19:44] cupu: I won't complain

[19:45] j_k9: ok, we'll look into this. I have searched around for help but haven't found anything, so I'll leave a question on Launchpad's Launchpad page (heh)

[19:46] cupu: yes … let Shuttleworth worry about it

[NB: LOG CONTINUES IN A DIFFERENT FORMAT]

<clsk> hm ok

<clsk> anything else we want to discuss?

<cupu> yes

<cupu> do we have a GUI guy?

<clsk> nop

<clsk> do you want the job?

<cupu> well if there's no one

<cupu> promise me, though , that If I work you'll throw me a bone in a couple of months on something else :)

<clsk> hehe

<clsk> sure

<cupu> I'm just joking .. but as work has shown me recently … It sucks to be stuck with something for eternety

<clsk> yea

<clsk> I'll give you a hand every now and then.

<clsk> I'm not good with GUIs though

<cupu> neither am I .. I'll up the qt skills this week and start asap

<cupu> Alan, j_k9 and Jaywalker can I hit you guys on any type of IM ?

<Jaywalker> You name it, I've got it

<cupu> yahoo: cupubboy

<cupu> if you use anything else …

  • j_k9_ (n=j_k9@host86-163-142-240.range86-163.btcentralplus.com) has joined #mira
  • j_k9 has quit (Read error: 60 (Operation timed out))

<clsk> msn: nirvana_alanREMOVETHIS@hotmail.com

<cupu> will add you .. I have a shamefull msn name .. luckily you don't know Romanian

<clsk> heh

<j_k9_> sorry - has anyone said anything since about 10 minutes ago (apart from the last 3 sentences)? I think I timed out without being notified

<Jaywalker> cupu, Added on Yahoo

<Jaywalker> I'm Jaywalker9988 on Yahoo

<cupu> added .. thanks Jaywalker

<cupu> added you Alan

<clsk> hm I haven't received your request

<cupu> maybe I don't know how to use a computer (bad news) … le me try again

<Jaywalker> j_k9_, Exchanging various IM names

<Jaywalker> better communication that way

<Jaywalker> Also I think it'd be nice if we could all hang out in here more

<Jaywalker> usually it's just Alan and I

<cupu> how about now alan?

<clsk> nop

<clsk> what email are you using?

<j_k9_> ah ok. could someone please email me the transcript for everything since cupu's comment: “yes … let Shuttleworth worry about it” (about 19:47)?

<cupu> i'm

<cupu> putzacurierREMOVETHIS@hotmail.com

<j_k9_> *goes straight to BabelFish.. Romanian>English*

<cupu> :))

<clsk> did you get my request cupu?

<cupu> nope

<clsk> weird

<cupu> maybe pidgin is pulling my leg

<clsk> whats your yahoo?

<Jaywalker> cupu, You up to date with 2.5.5?'

<cupu> yahoo is :cupubboy

<cupu> 2.5.5.

<cupu> yes I've had 3 glasses of wine if that's what we're asking

<cupu> or 2.6 would be more mathematically correct

<cupu> thanks Alan, received your add request

<clsk> cool

<clsk> anything else we want to discuss?

<j_k9_> my MSN is lancerrREMOVETHIS@live.co.uk - Skype is Max Bossino - Google Talk is aib.wolphin - I used to have Yahoo etc but don't really use those

<clsk> I was on my way to the golf course before I realized we had a meeting today

<cupu> ha :))

<cupu> I was on my way thorugh some wine and beers

<cupu> same thing happened to me

<clsk> so we're done here?

<cupu> right … so I'll attack you guys with any questions

<j_k9_> sorry about that, this was scheduled last-minute :) thanks (again, if you received my first message..) for attending!

<cupu> during the week

<cupu> I got nothing else now

<cupu> so in that thought

<cupu> I wish you only birdies and eagles Alan, and a good night/day/sunday to everyone

<Jaywalker> Laters everyone

<j_k9_> likewise! bye everyone

<NeerajR> bye and enjoy your time

<j_k9_> oh, last thing - any offers to send me a transcript of the last 30 mins? :P

<clsk> hehe

<clsk> bye now

<cupu> good bye

<Shas> Bye

 
development/communication/archives/090308_progress.txt · Last modified: 2009/03/08 17:19 by j_k9
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki