[06:47] < Lawouach> morning
[08:41] *** orphans has joined #kamaelia
[08:52] < bcarlyon|laptop> morning Lawouach and orphans
[08:53] < orphans> morning
[08:53] < orphans> how goes it bcarlyon|laptop
[08:54] < bcarlyon|laptop> Broke my ubuntu box last night still reinstalling...... :-(
[08:55] < bcarlyon|laptop> So once ive fixed my box and restored then I can write my component....
[08:56] *** Chong has joined #kamaelia
[08:56] < bcarlyon|laptop> morning Chong
[08:56] < orphans> gotta go to the shop quickly - back in a couple of mins
[08:57] < Chong> Good morning, bcarlyon|laptop and others.
[08:57] < Chong> orphans: have a good shopping:)
[09:08] < orphans> back :)
[10:02] < Lawouach> so am I
[10:27] *** simon89 has joined #kamaelia
[10:49] *** bcarlyon|ubuntu_ has joined #kamaelia
[10:53] *** bcarlyon|ubuntu_ is now known as bcarlyon|ubuntu
[10:59] *** vmlemon_ has joined #kamaelia
[11:00] < vmlemon_> Hi
[11:00] < bcarlyon|laptop> Morninhg
[11:06] *** sadrul has joined #kamaelia
[11:10] *** vmlemon_ wonders how Davbo's doing with his RoboKitty/Kamaelia-powered Lego Bot...
[11:50] *** xotaku has joined #kamaelia
[11:50] < xotaku> hello
[11:50] < vmlemon_> Hi xotaku
[11:51] < bcarlyon|laptop> greetings
[11:51] < xotaku> i am just wondering, about SoC - prove you can code challenge
[11:52] < xotaku> i would like to do something more than mini-axon tutorial only
[11:52] < xotaku> but find sunday deadline to strict :|
[11:52] < bcarlyon|laptop> read the email, ot says about coding a component....
[11:54] < xotaku> but, since my proposal(application) is more about core tahn writing components (twisted kamaelia integration) does it make sense to write component
[11:54] < bcarlyon|laptop> yes
[11:54] < bcarlyon|laptop> it shows you know your stuff....
[11:55] < bcarlyon|laptop> imo any way
[11:57] < xotaku> so i should put a link to a code in application?
[11:57] *** vmlemon__ has joined #kamaelia
[11:58] *** MS- reads xotaku's comments
[11:58] < MS-> It's not a "prove you can code challenge"
[11:58] < MS-> It's a "what does your code look like and do you understand kamaelia" question
[11:59] < MS-> I decided to ask for it based on the fact that 2-3 students had already put the requested information in their applications
[11:59] *** vmlemon__ is now known as vmlemon_
[11:59] < MS-> And that "unfairly" skews our judgement in their direction, since we have a high confidence that they can deliver what they say they can
[12:00] < MS-> You can put the link in your application, or as a comment - it's all one big shiny web page at the end of the day :)
[12:00] < MS-> Several people are just putting the code in http://pastebin.com/
[12:00] < MS-> And then adding the link as a comment
[12:00] < MS-> The deadline is "so that its there when we do a review on sunday"
[12:01] < MS-> Since the deadlines for our eval are fast approaching
[12:01] < petruccigp> Sunday in which country ;)
[12:01] < petruccigp> just to be sure...
[12:02] < MS-> petruccigp: I'm in the UK, Matt's in the UK, Lawouach is based in france, so "Europe" is a good term of reference
[12:02] < xotaku> MS-: ok, its cool, of to the work then.
[12:02] < bcarlyon|ubuntu> MS- I might be able to finish my component, however I managed to break the computer, which I have just about finished fixing now, so I m about to start writing my componet, however i have to go to work at 6pm for 6hours, so I might miss the midnight deadline....if so i shall finish my component overnight....
[12:02] < petruccigp> hehehe ok
[12:03] < petruccigp> Europe is fine to me also
[12:03] < MS-> xotaku: Your comment here "but, since my proposal(application) is more about core tahn writing components (twisted kamaelia integration) does it make sense to write component" is also useful, since as far as I'm concerned you can't write a good/useful twisted/kamaelia integration unless you show systems and components exercising the integration.
[12:04] < xotaku> MS-: so, i would be best for me to take some twisted app (whatever) and make it a component?
[12:05] < xotaku> for example?
[12:05] < Lawouach> xotaku, I guess the question is what you're trying achieve? Being able to use Twisted from within K. or the other way around?
[12:06] < MS-> xotaku: that's already been done to an extent in the past - the bit torrent mainline code had to do that. The aim from my perspective would be to trivialise that process
[12:06] < Lawouach> or maybe being able to mix both in one single process?
[12:07] < xotaku> Lawouach: both would be nice ;)... but yes, running a twisted as a component is my main goal
[12:07] < Lawouach> then refer to MS-'s statement above :)
[12:07] < MS-> trivialise it to the extent that using several twisted protocols in a single app was doable
[12:07] < MS-> That requires an understanding of how to write compoents and how they're used
[12:08] < MS-> There was one application incidentally "above the line" for which these requests wasn't appropriate, so I didn't ask that person to do these tasks
[12:09] < MS-> So everyone who was asked to do them was being asked because it was either felt appropriate or they'd already done it (and therefore have the same opportunity to improve if they like)
[12:09] < MS-> Hey Chongs - how goes?
[12:09] < MS-> Chong even (sorry)
[12:11] < vmlemon_> Hah, "Great! My new "policy" is that it is a Trademark and Copyright infringement for anyone to use the letter "e" without my permission."
[12:11] < MS-> xotaku: In case you're wondering *why* we're asking for this, even from people who experienced developers...
[12:11] < MS-> Is that the people we've mainly found become unstuck with kamaelia is actually experienced developers, since there is a mindset change.
[12:12] < Lawouach> True story
[12:12] < Lawouach> :)
[12:13] < MS-> the mindset change of OO to component oriented seems to be similar (but not as extreme) as it is from imperative to functional programming
[12:14] < Chong> Hey, MS-
[12:14] < MS-> Though some experienced people find it an easy change if they've done a lot of web mashups or lots of unix shell scripting
[12:14] < MS-> Chong: heya
[12:14] < Chong> MS-: still thinking:)
[12:14] < xotaku> MS-: I am cool with it, i am not trying to say: "i am leet, i dont need to write it"
[12:15] < MS-> xotaku: No, I guessed that :)
[12:15] < MS-> I still thought it worth mentioning though :)
[12:16] < xotaku> MS-: i am just not sure if i shoudl write e.g some component which have nothing to do with twisted
[12:16] < MS-> Oh yes absolutely
[12:16] < MS-> pick something trivial and fun
[12:16] < MS-> I'm not expecting anyone's demo code to relate to their project
[12:16] < MS-> It should be as quick and simple as they like
[12:17] < xotaku> ok :)
[12:17] < MS-> Ideally fun too :)
[12:18] < MS-> (for the person writing it :) )
[12:18] < vmlemon_> o.O "I disagree. Joe Six-pack doesn't understand the Segway PT, and wouldn't give a damn even if he did. TV ads are for further hypnotizing the addicted drones into buying more drugs and trying to get them to switch to Charmin because bears are somehow using it now."
[12:20] < MS-> For those curious, the first mini-axon was this one:
[12:20] < MS-> https://kamaelia.svn.sourceforge.net/svnroot/kamaelia/trunk/Sketches/CE/miniaxon_scriptview.py
[12:22] < MS-> For those wondering "huh? why those component names?"
[12:23] < MS-> They come from the diagram labelled "stream processing" here:
[12:23] < MS-> http://www.blachford.info/computer/Cell/archive/Cell3.html
[12:23] < MS-> The orange boxes (RAM{1,8}) are equivalent to in/out-boxes
[12:25] < MS-> He replaced the input source (radio signal) with a shakespeare script instead
[12:25] < MS-> and allocated some high level, slightly silly, semantics to the boxes instead
[12:25] < MS-> Was actually really quite fun :)
[12:25] < MS-> I'm not thinking of that level of complexity for people's miniaxon's & demo systems at all
[12:26] < Chong> MS-: One question about the MiniAxon tutorial
[12:26] < MS-> (hence the reason for including something on the more complex end of the spectrum regarding these things)
[12:26] < MS-> Yes Chong?
[12:26] < Chong> In the class of component, it seems to me that the name of its two methods should be exchanged.
[12:26] < Chong> send(): send data from outbox of the source component and then remove the data from outbox
[12:26] < Chong> recv(): receive data to inbox of the sink component and then add data to inbox
[12:27] < Lawouach> That debate again ;)
[12:27] < Chong> From the pointview of the current component
[12:27] < MS-> Chong: What's your rationale?
[12:28] < MS-> send: send the data to an outbox and forget about it
[12:28] < MS-> recv: receive (or recieve) data from an inbox and do something funky with it
[12:28] < MS-> Oh, little detail
[12:28] < MS-> using send and recv that way round
[12:29] < MS-> means you can take code that uses
[12:29] < MS-> sock.send(...) , sock.recv(...) and replace it with
[12:29] < MS-> self.send( ... ) , self.recv( ... )
[12:29] < MS-> The earliest IRC code was evolved that way
[12:29] < MS-> for example
[12:29] < MS-> But I *am* interested in your rationale
[12:30] < Chong> thanks:)
[12:30] *** MS- listens
[12:31] < Chong> the current version is data=source.recv()
[12:31] < Chong> I think it should be data = source.send()
[12:32] < Chong> then sink.recv()
[12:33] < MS-> At present I don't understand why you say that, so I need you to explain further why
[12:34] < Chong> sorry;)
[12:34] < Lawouach> Chong, you mean that the data should be sent by the source when the call to "send()" is made?
[12:34] < Lawouach> synchronously?
[12:34] < Lawouach> like a .get()
[12:35] < vmlemon_> Hmm, how easy is it extend the HTTP component to support additional protocol features/options?
[12:35] < Chong> My logic is source should send data first and then sink receives data
[12:35] < MS-> Ah, I see
[12:36] < MS-> You have an assumption of ordering?
[12:36] < MS-> that source/send happen in a given order?
[12:36] < Chong> Lawouach: yes, I consider recv as kinda get
[12:36] < Lawouach> Chong, isn't it what happens when you call "self.send(data, 'outbox')"?
[12:37] < Chong> Lawouach, no. something like data=self.send(outbox)
[12:37] < MS-> Chong: From which piece's perspectice
[12:37] < Chong> MS-: I can understand your logic
[12:38] < MS-> Which piece of code's perspectice
[12:38] < MS-> Are you stating this from?
[12:38] < MS-> The postman perhaps?
[12:38] < MS-> Rather than the components themselves
[12:38] < MS-> ?
[12:38] < Chong> The postman perhaps? yes
[12:38] < MS-> Bingo
[12:38] < MS-> First person to spot that issue in 3 years
[12:39] < MS-> http://kamaelia.svn.sourceforge.net/viewvc/kamaelia/trunk/Code/Python/Axon/Axon/Component.py?revision=6&view=markup
[12:39] < Chong> MS-: I can understand your logic.
[12:39] < MS-> Is the version of code referring to a system with a postman in (the postman is optimised out somewhat these days, but there in spirit as a post office these days)
[12:39] < MS-> That version has actually 4 methods
[12:39] < Chong> recv gets data; send sends data;
[12:39] < MS-> from the perspective of a component
[12:40] < MS-> it has self.send and self.recv
[12:40] < Chong> So, your logic is from the perspective of data
[12:40] < MS-> since those semantics make sense from the perspective of the component
[12:40] < MS-> However 2 other methods also exist for the postman
[12:40] < MS-> _deliver & _collect
[12:40] < MS-> which do indeed have the opposite semantics you're asking for
[12:41] < MS-> Please feel free to implement _deliver & _collect in your miniaxon
[12:41] < MS-> (can even be done by saying
[12:41] < MS-> scratch that line (can be don..)
[12:43] < Chong> _deliver & _collect is close to my thought
[12:44] < Chong> thx:)
[12:44] *** bcarlyon|nub has joined #kamaelia
[12:44] < bcarlyon|nub> #join #gsoc
[12:44] < MS-> You're welcome
[12:44] < bcarlyon|nub> oops
[12:44] *** xotaku has parted #kamaelia
[12:44] *** bcarlyon|nub is now known as bcarlyon|laptop
[12:45] < MS-> :)
[12:53] < petruccigp> I don't know if you have already discussed about this
[12:53] < petruccigp> but in the mini axon tut
[12:54] < petruccigp> in the "talking" part
[12:54] < petruccigp> the interface of send is: def send(self, value, outboxname):
[12:54] < petruccigp> while in the example you put: self.send("outbox", "gameover")
[12:54] < petruccigp> so value and outboxname I guess it should be the other way around
[12:54] < MS-> I do?
[12:55] *** MS- looks
[12:55] < MS-> So it does
[12:55] < MS-> that example should be
[12:55] < MS-> self.send("gameover", "outbox")
[12:55] < petruccigp> sure
[12:56] < MS-> thanks
[12:56] < petruccigp> no prob :)
[13:04] *** Davbo has joined #kamaelia
[13:41] *** vmlemon__ has joined #kamaelia
[14:04] < MS-> bcarlyon|* Just noted your miniaxon
[14:04] < MS-> reading through it, I note you may wish to know that you can do:
[14:05] < MS-> for i in xrange(100):
[14:06] < MS-> also, rather than
[14:06] < MS-> while ptr < len(self.active):
[14:06] < MS-> current = self.active[ptr] #load ptr ref in to current
[14:06] < MS-> for can do
[14:06] < MS-> for current in self.active:
[14:06] < MS-> These things do make it very clear it's not a c&p of the answers though :)
[14:08] < MS-> actually, I'll make other comments off list. There's a number of short cuts you're not aware of, but your code is valid
[14:08] < MS-> (as I'm reading this is, not finished reading)
[14:09] < bcarlyon|laptop> LOL
[14:09] < bcarlyon|laptop> i was applying what i used to do in php....
[14:09] < bcarlyon|laptop> i didnt know xrange existed until i looked at the answer after i had finsihed the exercise
[14:11] < MS-> Component.recv BTW doesn't match the spec, in the case of an empty box.
[14:12] < bcarlyon|laptop> o
[14:12] < MS-> neither does dataReady
[14:12] < MS-> "This should return the length of the list associated with the boxname. "
[14:12] < bcarlyon|laptop> o dear
[14:13] < MS-> hint: you've made dataReady too complex
[14:13] < MS-> :)
[14:13] < bcarlyon|laptop> ah
[14:13] < MS-> (you don't need the "if" :)
[14:13] < MS-> )
[14:13] < MS-> Likewise actually for recv incidentally
[14:14] < bcarlyon|laptop> o
[14:14] < MS-> (if you look at the spec & what would break with an empty box vs what the spec says about breakage)
[14:14] < bcarlyon|laptop> i think i overlooked the breakage parts in view of getting it too work
[14:16] < MS-> You also completely skipped the proof it works components "producer & consumer"
[14:16] < MS-> which admittedly aren't in an "answer" section
[14:17] < bcarlyon|laptop> I didnt think we needed to write anything for it....
[14:19] < MS-> It just makes it easier to run the code to test it works .. :)
[14:19] < bcarlyon|laptop> i did the bits on the command line to test it worked however
[14:19] < MS-> You can happily copy and paste the example components in :)
[14:19] < MS-> I'm guessing that you did that since you were chatting about it as you did it :-)
[14:20] < bcarlyon|laptop> :-)
[14:21] < bcarlyon|laptop> At the moment I having trouble trying to decide what to write for my component.
[14:22] < MS-> I would suggest something simple :)
[14:24] < bcarlyon|laptop> indeed.
[14:34] < bcarlyon|laptop> I think i think complexly, hence something simple is diffcult to think of sometimes....
[14:39] < orphans> MS-: I just made the worst drum machine ever :) http://orphans.pastebin.com/f4ce994b8
[14:39] < orphans> or perhaps more usefully Kamaelia and MIDI is possible
[14:39] < MS-> hehe
[14:40] < MS-> That's quite fun
[14:40] < MS-> With a tablet PC that would work as well
[14:40] < MS-> (as a UI)
[14:40] *** MS- note to self, get new stylus
[14:40] < orphans> heh, yeah
[14:41] < MS-> For people wondering about complexity of expected component & expected system, orphans' link just posted is highly appropriate :)
[14:42] < orphans> i officially hate alsa though - theres at least three different naming systems just for a midi port
[14:42] < orphans> :) yay!
[14:44] < orphans> MS-: you want me to add that in a comment?
[14:46] < bcarlyon|laptop> Damn my ubuntu box it is definately not well.....
[14:49] *** bcarlyon|ubuntu_ has joined #kamaelia
[14:50] *** MS- wanders off
[14:50] *** MS- has parted #kamaelia
[14:50] *** bcarlyon|ubuntu_ is now known as bcarlyon|ubuntu
[15:23] < bcarlyon|laptop> Doing a component using the irc stuff, but I cant find the irc lib is it a python in built or a kamaelia bit
[15:24] *** bcarlyon|laptop is looking in synaptic now since he just realised about it
[15:33] *** bcarlyon|laptop is having no joy :-(
[15:41] *** maveriick has joined #kamaelia
[15:43] *** Davbop has joined #kamaelia
[15:51] *** Davbo has joined #kamaelia
[16:13] *** vmlemon_ has joined #kamaelia
[16:15] < vmlemon_> Hi
[16:16] < bcarlyon|laptop> yo vmlemon
[16:17] < vmlemon_> Any NTP.org users here?
[16:19] < vmlemon_> Never mind, I finally worked out what their timeserver was called
[16:24] < bcarlyon|laptop> message for ms when he gets on, I havnt posted my component yet, as it isnt working as intended, and I have now got a 6 hour work shift to do starting at 6pm, filling in for someone, shall be on later :-)
[17:06] < vmlemon_> Hi Davbo
[17:09] *** Uraeus has joined #kamaelia
[17:19] < Davbo> Hi vmlemon_
[17:20] < Davbo> C:\Users\Dave\Documents\COM1080\search%20space\userFiles\NxN Queens\Queens_State.java:116: cannot find symbol
[17:20] < Davbo> symbol : method Queens_State(int,boolean[][])
[17:20] < Davbo> location: class userSearch.Queens_State
[17:20] < Davbo> fun.
[17:24] < Davbo> Agh the Java compiler lies!
[17:26] < vmlemon_> Bad Compiler!
[17:26] *** vmlemon_ makes the Java compiler sit on the Naughty Step ;)
[17:27] < Davbo> hehe, fixed it now
[17:27] < Davbo> missed out a "new"
[17:38] *** Chong has joined #kamaelia
[18:03] *** vmlemon_ has joined #kamaelia
[18:12] *** maveriick has joined #kamaelia
[18:19] *** Uraeus has joined #kamaelia
[18:27] *** lightningmonkey has joined #kamaelia
[18:27] < lightningmonkey> hello
[18:43] *** vmlemon_ has joined #kamaelia
[18:44] < orphans> hey all
[18:45] < vmlemon_> Hi orphans
[18:57] < lightningmonkey> howdy
[18:59] < orphans> hey lightningmonkey
[18:59] < orphans> you one of the SoC peoples or someone I should know who is vital to the operation of Kamaelia?
[18:59] < orphans> or someone completely else :)
[19:00] < lightningmonkey> i am very very vital of course
[19:00] < lightningmonkey> !
[19:00] < lightningmonkey> to So
[19:00] < lightningmonkey> C
[19:01] < lightningmonkey> sorry, I am doing like 8 things at once right now, and being able to type is not one of them it would appear
[19:01] < orphans> :)
[19:02] < orphans> you applying as a student?
[19:02] < lightningmonkey> I am
[19:02] < orphans> what project?
[19:02] < lightningmonkey> to the topology viewer
[19:02] < lightningmonkey> to make it 3D
[19:02] *** orphans looks at the idea page :)
[19:03] < orphans> ahh, with the social network stuff, or with other stuff?
[19:03] < lightningmonkey> both i believe
[19:04] < lightningmonkey> it should be able to work with anything
[19:04] < lightningmonkey> hopefully
[19:04] < lightningmonkey> do you work with kamaelia now?
[19:04] < orphans> I'm also applying as a student
[19:05] < lightningmonkey> ah
[19:05] < orphans> and slowly working out what all these crazy concepts are - Topology?!?
[19:06] *** orphans is only sort of joking...
[19:06] < lightningmonkey> lol
[19:06] < lightningmonkey> i am trying to write a component now
[19:06] < lightningmonkey> as per the email michael sent out
[19:07] < lightningmonkey> what project are you appling for?
[19:07] < orphans> like a networked music sequencer
[19:07] < orphans> so lots of users are editing one bit of music
[19:07] < lightningmonkey> nice
[19:08] < orphans> how's the component going?
[19:08] < orphans> and what are you getting it to do?
[19:08] < lightningmonkey> i just started
[19:09] < lightningmonkey> but i think im going to try something silly and small like getting the fortune cookie protocol to write to a file
[19:09] < lightningmonkey> you?
[19:09] < vmlemon_> Hah, http://uncyclopedia.org/wiki/Image:Vistaohlord2.png
[19:10] < lightningmonkey> well done microsoft
[19:11] < Lawouach> one idea for your tutorial could be to have a component that checks for emails on a server using smtplib and then dispatch them based on rules to different components
[19:11] < orphans> I've done a couple just to test things out - one of them sends random OSC data (I'll be using OSC for all the communication), and the other is a really crappy drum machine :)
[19:11] < Lawouach> you could have a Junk component where you'd send emails that you believe are spam
[19:11] < orphans> hey Lawouach
[19:11] < Lawouach> of course this would be entirely fake and with no real purpose
[19:11] < Lawouach> but is a fun idea
[19:12] < lightningmonkey> mhm
[19:16] < lightningmonkey> so did all you guys just do the miniaxiom tutorial and read the coompenet tutorial to figure out how to do all this?
[19:18] < orphans> lightningmonkey: yeah, pretty much. I had used a couple of the libs I'm using before, and the examples directory is your friend :)
[19:18] < Lawouach> Personally I found something cool I wanted to experiment and learned on that
[19:19] < lightningmonkey> mhm
[19:20] < lightningmonkey> sadly I have only really been able to start looking at this stuff like today
[19:20] < lightningmonkey> I had an emergency at work that ate up all my time the last couple days
[19:21] < orphans> lightningmonkey, I'm sure you'll pick it up pretty quickly - it's nicely designed and the docs are good
[19:22] < vmlemon_> With built-in spam e-mail generator? ;)
[19:22] < Lawouach> your example of the fortune cookie earlier would be a good start
[19:23] < Lawouach> vmlemon_, the idea is just to find ways of using components in context
[19:23] < Lawouach> it doesn't really have to be useful in the end
[19:23] < orphans> Lawouach, sounds like procmail to me - that's pretty useful :)
[19:23] < vmlemon_> GiftFromAfrica!
[19:24] < vmlemon_> ;)
[19:24] < Lawouach> orphans, actually MS- has done something along the lines already
[19:24] < vmlemon_> Kamaelia Grey?
[19:24] < Lawouach> yeah
[19:26] < orphans> that is pretty cool actually - I reckon you could reimplement the main part of procmail in ~50 loc
[19:26] < Lawouach> BTW, one thing to retain above all, when you start seeing your component goes to big it is usually a sign you need to componentanize it :)
[19:27] < lightningmonkey> thats pretty much true for all programs, if its really big, break it up! ;)
[19:27] < orphans> if in doubt press enter a couple of times and write class :)
[19:28] < vmlemon_> Anyone know where I can find the source for the HTTP server component?
[19:28] Reply: Hm?
[19:29] < orphans> Kamaelia/Protocol/HTTP I think
[19:29] < Lawouach> lightningmonkey, sure but you'll see it can be hard to find the right balance at times :)
[19:30] < lightningmonkey> true true
[19:30] < Lawouach> orphans, http://kamaelia.sourceforge.net/Cookbook/HTTPServer
[19:30] < Lawouach> oops
[19:30] < vmlemon_> Thanks
[19:30] < Lawouach> I mean vmlemon_ :)
[19:31] *** vmlemon_ wants to try and hack on it to implement some of the various HTTP protocol extensions floating around, these days
[19:32] < Lawouach> like what?
[19:33] < vmlemon_> I have some of the recently released Microsoft protocol extension specifications, and I'm interested in trying to build a WebDAV implementation somehow
[19:33] < vmlemon_> Not sure how I'd be able to make it fit into the current design though (but it's just something to hammer on in my spare time)
[19:34] < Lawouach> WebDAV... I hope you've got plenty of times ahead of you
[19:34] < Lawouach> It's a large beast
[19:35] < Davbo> WebDAV is great but I have to agree with Lawouach. It's a difficult thing to implement
[19:36] < Davbo> I was listening to a podcast the other day with the main developer behind it on there. Really interesting
[19:37] < Davbo> vmlemon_: http://twit.tv/floss28 if you're interested
[19:38] < orphans> fraid I'm going to have to leave you all - I have an appointment with the pub :)
[19:39] < Davbo> also vmlemon_ I got my program to not only compile, but to do what i want it to :D
[19:39] < vmlemon_> Yay
[19:39] < Davbo> http://en.wikipedia.org/wiki/Eight_queens_puzzle
[19:40] < Davbo> we had to make a programatic solution for it, which is dead easy. But it had to use this generic search engine
[19:40] *** vmlemon_ is still trying to get his file parser/reader script up to a point where it can read files and do different things depending on the filetype/magic number...
[19:44] < vmlemon_> It's probably 90% comments on various data structures/file formats, and the remaining few lines is variables for error message text, and the initial print statements for the welcome message listing the file formats which it (hopefully) will support
[19:46] < vmlemon_> Davbo: Thanks for the link, there's some interesting looking stuff there
[19:47] < vmlemon_> (the TWiT one)
[19:48] < Davbo> Yeah, it's great :)
[19:50] < Davbo> That's one of the things I love about OSS, it usually starts with someone just scratching their own itch.
[19:53] *** vmlemon__ has joined #kamaelia
[19:54] < vmlemon__> Damn, just lost connectivity
[19:54] *** vmlemon__ is now known as vmlemon_
[20:16] *** MS- has joined #kamaelia
[20:19] < Davbo> < bcarlyon|laptop> message for ms when he gets on, I havnt posted my component yet, as it isnt working as intended, and I have now got a 6 hour work shift to do starting at 6pm, filling in for someone, shall be on later :-)
[20:19] < MS-> Davbo: Saw that - thanks
[20:19] < MS-> He'd already mentioned it before & I'd remembered :)
[20:19] < MS-> For those interested in the UK: http://www.facebook.com/event.php?eid=11500818756
[20:20] < Davbo> ah, well i thought there was a chance you'd miss it in the logs
[20:20] < MS-> Davbo: indeed - appreciated :)
[20:21] < Davbo> what's that MS-? my facebook is disabled for personal reasons lol
[20:21] < MS-> ah
[20:21] < MS-> "Name:MashedTagline:it's like Hackday - only with DaleksHost:Matthew CashmoreType:Other - Festival"
[20:21] < MS-> "It's Mashed! Yeah so we did Hack Day last year and it was bloody good - so good in fact that we've decided to do it again. This year we're stepping out on our own, and in due deference to the very cool guys at Yahoo! (who's idea Hack Day is) we've decided to call it Mashed."
[20:22] < MS-> "The idea is that by doing it on our own everybody will be able to come, the only rule is that to be a partner you have to bring something cool - no sponsorship, no corporate logos and no distractions from coding 'till dawn."
[20:22] < MS-> "The format is the same, turn up Saturday morning, register and listen to some cool people talk, then start hacking at 1pm - carry on hacking (perhaps with some Wii fun in-between - but I'm trying to avoid lightening this time) till 1pm on the Sunday when everyone presents back to everyone else."
[20:22] < MS-> "I'm trying to arrange something pretty cool for the Saturday night - but can't talk about it yet - it's going to be awesome though :-) Watch my blog."
[20:22] < MS-> (this is quoting matt cashmore BTW)
[20:22] < MS-> "Registration will go live about three weeks before (maybe a littlesooner) and I'll post messages up here to let you know - we'll do theusual thing of releasing in waves so everyone gets a chance - if lastyear is anything to go by it'll be tough to get a ticket."
[20:22] < MS-> "I'm also going to be anouncing a competition that will run in the lead up to the event - but that will be in two weeks - keep your eyes peeled."
[20:23] < Davbo> Sounds cool!
[20:23] < MS-> Had good feedback last year, which is why it's happening again
[20:24] < Davbo> I guess it's down south?
[20:24] *** vmlemon_ doesn't have a BaceFook account...
[20:24] < Davbo> (looking at a blog post about last years atm)
[20:24] < MS-> Yep - Alexandra Palace in London - like last year
[20:24] < Davbo> Ah shame. :(
[20:25] < MS-> vmlemon_: I've got two accounts. One real, one fake.
[20:25] < MS-> Should have more really
[20:25] < Davbo> Just don't post any non-patented idea's on there! :P
[20:25] < MS-> (should split it into 2)
[20:25] < MS-> heh
[20:25] < MS-> No, people should post non-patented ideas
[20:26] < MS-> As widely, publically, and as visibly as possible
[20:26] < MS-> to prevent them being patented
[20:26] < MS-> patents are meant to patent *implementations* not *ideas*
[20:26] < MS-> after all
[20:26] < MS-> that's the *entire* problem with software patents
[20:26] < MS-> (I have a whole rant if people want ;-) )
[20:26] < Davbo> Did i trigger something?
[20:27] < MS-> Software patents are bad, m'kay
[20:27] < Davbo> I was merely referring to the rights which Facebook reserve on all the stuff up there
[20:27] < MS-> ah
[20:27] < Davbo> We're on freenode MS-, lets face it you're preaching to the choir
[20:28] < MS-> Wouldn't matter btw - posting on facebook would count as public disclosure BTW
[20:30] < Davbo> In future i'll just shut up lol :P
[20:32] *** vmlemon_ notes that it's sometimes difficult to tell which patents apply to the software itself, and which ones apply to technologies/algorithms embodied within the software, if presented with a laundry list of them (e.g. the About screens for RealPlayer and many Adobe products)
[20:33] < vmlemon_> Hah
[20:39] < MS-> vmlemon_: It's always difficult
[20:40] < MS-> That's a significant part of the problem
[20:41] < MS-> http://en.wikipedia.org/wiki/Instant_film#Kodak (note that it doesn't cover the fact that the chemical process was entirely different - according to Kodak's patent advisor)
[20:43] < MS-> With software its even harder since often its a deliberately vague wording of the concept rather than specifics
[20:49] < Davbo> Yeah i dislike how you can get away with being vague, it should really be in a specificaiton language like Z or something to really show exactly what the algorithm is
[20:50] < vmlemon_> I remember looking at a hex dump of a file created by a 3rd Party MS Office plug-in that had strings throughout the file saying that the format was patented, and could not be reverse-engineered or reimplemented without a license...
[20:51] < Davbo> ... surely not :/
[20:51] < vmlemon_> and a firmware image with a message deeply hidden message inside it telling people not to reverse engineer the file
[20:51] < Davbo> hah
[20:51] < vmlemon_> although there was no license document supplied
[20:52] < vmlemon_> (So you have to go through the file to find that out - genius!)
[20:52] < Davbo> is Kamaelia licensed as GPL?
[20:52] < vmlemon_> MPL, GPL and also the LGPL (I think)
[20:53] < MS-> It's the MPL/GPL/LGPL tri-license (same as Mozilla/Firefox)
[20:53] < Davbo> ah
[20:53] < MS-> The MPL is a non-political license (kinda useful from BBC perspective) and contains an explicit (rather than implicit) patent grant
[20:53] < MS-> (not that I'd personally ever engage in the patent silliness)
[20:54] < MS-> The minimal requirements are therefore LGPL
[20:55] *** vmlemon_ finds it stupid that a humble PDF reader could contain so many patented components (mostly related to DRM and font reproduction/anti-aliasing)...
[20:55] < MS-> As per GSOC (and other) pages we ask contributors for a BSD license on their code, since that allows us to release the combination of the code under the MPL/GPL/LGPL license
[20:56] < MS-> Which also means that MPL/GPL/LGPL actually originates from the BBC rather than individuals - with the advantage of if anyone breaches the license, they'd be speaking to the Beeb, rather than individuals
[20:56] < vmlemon_> Probably explains all the perceived "bloat" of it
[20:56] *** Davbo thinks it was a wise decision of Google to only allow for certain licenses when they started code.google
[20:56] < MS-> The Beeb are used to dealing with copyright infringement sensibly
[20:56] < MS-> Davbo: indeed
[20:56] < MS-> License proliferation is a real problem
[20:57] < vmlemon_> What about people who wish to use a license other than those in the list? (e.g. Sun CDDL or the APSL)
[20:57] < Davbo> They missed out Artistic though which was kinda major
[20:57] < Davbo> think it's there now
[20:57] < MS-> My personal preference is BSD fwiw
[20:58] < MS-> The summary of licensing for kamaelia is here: http://kamaelia.sourceforge.net/Licensing
[20:58] < MS-> The key part there is this really:
[20:58] < MS-> "Essentially this boils down to this: If you change any of the code that is part of the Kamaelia project as part of your project and release your project, then the recipient of that project should recieve a copy of Kamaelia and the changed code."
[20:59] < Davbo> Ah sounds good
[20:59] < Davbo> I've not read up on them personally
[20:59] < Davbo> no need to
[20:59] < MS-> I've read them
[20:59] < MS-> And Lawrence Rosen's book "open source licensing" :)
[21:00] < Davbo> I imagine it would be a big headache to read them
[21:00] < MS-> Yep. It's good to know what people are doing & restrictions on use.
[21:00] < Davbo> It's important for someone like me who would only want to contribute to not need to know any of them really
[21:01] < MS-> I think people have to be aware of what they're giving away, but that can be in general terms rather than detailed
[21:01] *** vmlemon_ wonders how http://pastebin.com/f214d2c11 would work/withstand any potential issues...
[21:02] < MS-> In general terms the contributor agreement boils down to "you can use this code pretty much how you like as long as you don't claim ownership and tell people I wrote it" (due to being BSD license on code)
[21:02] < MS-> It's slightly more constrained than that, but the contibutor agreement is short and readable and in english rather than legalese
[21:02] < MS-> (though checked by contributor friendly lawyers :) )
[21:03] < Davbo> Ah :)
[21:03] < MS-> And the code which kamaelia gets released under (I view SVN as release) - boils down to the "essentially .." bit I quoted above
[21:03] < MS-> basically it's enough to make it all hang together in a nice happy friendly way
[21:03] < Davbo> Yeah
[21:04] < lightningmonkey> good talking to you guys, but I need to head out for now
[21:04] < MS-> Davbo: http://kamaelia.sourceforge.net/Developers/SampleContributorAgreement
[21:05] < lightningmonkey> I may be on later as well
[21:05] < MS-> lightningmonkey: cya
[21:05] < Davbo> Cya
[21:05] < lightningmonkey> later
[21:05] < Davbo> Ah the windy city
[21:06] < MS-> I've had any beans today!
[21:07] < Davbo> uh?
[21:07] < MS-> just excuse me, being silly
[21:07] < Davbo> I don't get it
[21:08] < Davbo> lol
[21:08] < Davbo> like JavaBeans MS-? :P
[21:08] < MS-> heh, nevermind :)
[21:09] < Davbo> that's component programming i believe
[21:09] < Davbo> Argh this N-Queens program is unbelievably annoying
[21:10] < Davbo> I could program a solution in an hour or so and it would be fine but it has to work with this stupid "Generic State search-engine"
[21:11] < vmlemon_> You also have to make the search engine?
[21:11] < vmlemon_> Or is that a component provided to you that you have to integrate with?
[21:12] < Davbo> nah which is the most annoying part
[21:12] < Davbo> exactly
[21:12] < Davbo> It works to a degree now anyway.
[21:13] < Davbo> it finds a solution, it's just the wrong one :P
[21:13] < vmlemon_> FWIW means "For What It's Worth"?
[21:13] < Davbo> Yeah
[21:14] < vmlemon_> (My guess, seeing as I'm not too familiar with the various abbreviations/pieces of slang that have popped up at an alarming rate...)
[21:14] < MS-> YKYHBUITLWYCUT
[21:15] < vmlemon_> o.O
[21:17] < Davbo> MS-, are you okay?
[21:18] < Davbo> Perhaps he collapsed unconscious on his keyboard.
[21:19] < vmlemon_> kamaeliabot: dance
[21:19] Reply: does the macarena
[21:19] < MS-> Davbo: yep
[21:20] < Davbo> dancing at the demise of its master, oh there he is :P
[21:20] < MS-> It's common on usenet
[21:20] < MS-> You Know You Have Been ....
[21:20] < Davbo> hmm
[21:20] *** Davbo thinks
[21:21] < MS-> waits to give people a moment, which might be a bad idea :)
[21:22] *** Uraeus has joined #kamaelia
[21:22] < MS-> You Know You Have Been Using IRC Too Long When You Can Understand This....
[21:23] < Davbo> i got to "You Know You Have Been Under Incognito Too Long When You Can't Understand .."
[21:23] < Davbo> Oh well.
[21:23] < Davbo> :P
[21:23] < MS-> heh
[21:23] *** MS- wonders why Uraeus is in the US...
[21:25] < Uraeus> MS-: LUGRadio Live USA atm, but its the CE Linux conference in a few days also
[21:25] < MS-> Ahh, of course
[21:25] < MS-> How is LUGRadio?
[21:25] < Chong> MS-: Any suggestion for impoving my application? I am still busy with the coding, so I am afraid I may not have enough time to check it carefully.
[21:26] < Uraeus> good, currently the gong-a-thong happening, with the Banshee maintainer standing in his underpants gonging on a giant gong for each lightning talk
[21:26] < Davbo> Agh I heard about that
[21:26] < Davbo> Poor guy
[21:28] < vmlemon_> o.O
[21:28] < MS-> Chong: I think you probably need to think about this part of the mail: """This will also allow you to change your deliverables/stuff you want to achieve section to a bulleted or number list of items"
[21:29] < MS-> Rather embarassingly I completely forgot about these links this year:
[21:30] < MS-> http://kamaelia.sourceforge.net/Projects/Soc2006/AVCodecs
[21:30] < MS-> http://kamaelia.sourceforge.net/Projects/Soc2006/BitTorrent
[21:30] < MS-> http://kamaelia.sourceforge.net/Projects/Soc2006/CodelessComposition
[21:30] < MS-> http://kamaelia.sourceforge.net/Projects/Soc2006/DistributedPhysics
[21:30] < MS-> http://kamaelia.sourceforge.net/Projects/Soc2006/GeneralisedEventsBackplane
[21:30] < MS-> http://kamaelia.sourceforge.net/Projects/Soc2006/OHKamaelia
[21:30] < MS-> http://kamaelia.sourceforge.net/Projects/Soc2006/OpenGLWidgets
[21:30] < MS-> http://kamaelia.sourceforge.net/Projects/Soc2006/PeerToPeerStreaming
[21:30] < MS-> http://kamaelia.sourceforge.net/Projects/Soc2006/VisualEditor
[21:30] < MS-> http://kamaelia.sourceforge.net/Projects/Soc2006/XML2DInterfaces
[21:30] < MS-> (those were republished with permission)
[21:31] < MS-> You'll note that the apps with bullet lists of deliverables are far clearer
[21:31] < MS-> Though deliverables is probably the wrong phrase
[21:31] < MS-> should be more "stuff I hope to achieve"
[21:31] < Chong> Thank you very much for your advice, MS.
[21:32] < MS-> You're welcome
[21:33] < MS-> I should've done the same for last years, but didn't it seems
[21:34] < MS-> which is a pity and reasons why not aren't really relevant to the channel
[21:34] < vmlemon_> Hah, "As an aside, this was possibly the most entertaining project title! Well, at least the short form. Never thought of Kamaelia as an expletive before... :-)"
[21:35] < MS-> indeed :)
[21:37] < vmlemon_> What's happening with Compose/the Kamaelia system builder?
[21:37] < vmlemon_> Is work still under progress with it?
[21:38] *** vmlemon_ wonders why he keeps getting 504 errors when trying to load various pages...
[21:38] < vmlemon_> "[code=GATEWAY_TIMEOUT] A gateway timeout occurred. The server is unreachable. Retry the request."
[21:38] < MS-> I think that's sourceforge being naff at present
[21:38] < MS-> My browser has issues connecting there at present as well
[21:39] < MS-> If you're seeing 504's I'm guessing you have a proxy between you and the site
[21:39] < MS-> Regarding compose, it does need an update
[21:39] < MS-> So you can still view it as a WIP
[21:39] < Davbo> MS-, http://davbo.pastebin.com/m7f4aaa46 you think that would work?
[21:40] < vmlemon_> Aah, I have a transparent proxy in the network somewhere that isn't under my control :|
[21:40] < MS-> Davbo: Motor, Lightsensor are imported from nxt.sensor?
[21:40] < Davbo> I think it will make it go forward till it hits a wall and hopefully output light values to the outbox
[21:40] < Davbo> Yeah
[21:41] < vmlemon_> (it seems that it was intended to compress image files for faster transmission)
[21:41] < MS-> Davbo: Looks reasonable
[21:41] < vmlemon_> Although it also seems to trap certain other pages, rather annoyingly
[21:41] < MS-> I'd personally be tempted to add an inbox which when you recieve a message you do something to the power for either a motor or both motors
[21:41] < MS-> (eg an inbox per motor)
[21:42] < Davbo> RC commands could come on an inbox
[21:42] < Davbo> :D
[21:42] < MS-> I see
[21:42] < MS-> OK
[21:42] < vmlemon_> Hah, “The day Microsoft makes something that doesn't suck is the day they make a vacuum cleaner.”
[21:42] < Davbo> not a day goes by where you don't make a crack at MS vmlemon_ :P
[21:42] < MS-> All software sucks, some less than others. If it didn't we'd have little reason to make something better :)
[21:43] < MS-> corollary - all software has bugs
[21:43] < vmlemon_> I can see where that comes from, I guess that a Microsoft vacuum cleaner would be pretty useless, and laden with features that don't work and are of dubious utility
[21:44] < vmlemon_> (I wouldn't be surprised if one didn't explode in a plume of smoke when switched on, if one existed ;) )
[21:45] < MS-> Davbo: You do realise you're seriously tempting me to get an NXT mindstorms kit, don't you?
[21:45] < MS-> :)
[21:45] < vmlemon_> RoboKitty®! ;)
[21:45] < Davbo> They're awesome :D
[21:46] < Davbo> My first day at university the first thing we did was program robots to play football then had a match
[21:46] *** vmlemon_ hasn't seen Lego for ages...
[21:47] < Davbo> in the end we just remote controlled them into more of a robot wars style competition :P
[21:47] < MS-> cool
[21:47] < Davbo> which is suitable because Noel Sharkey from Robot Wars is in our department heh
[21:48] *** Davbo plans on shouting "Let the wars begin!" at the start of any lectures with him ;)
[21:49] < MS-> heh
[21:49] < MS-> He'll probably get very grumpy about that :)
[21:50] < Davbo> Hmm how could I manipulate data off an inbox to see which motor it was meant for?
[21:51] < Davbo> or would it be easier to have a second inbox
[21:52] < Davbo> oh i remember where i've seen something similar
[21:52] < MS-> It's very similar to BasicSprite in idea BTW
[21:53] < MS-> https://kamaelia.svn.sourceforge.net/svnroot/kamaelia/trunk/Code/Python/Kamaelia/Examples/SimpleGraphicalApps/BouncingCatGame/Sprites/BasicSprite.py
[21:54] < Davbo> Ah thanks MS- I was just looking for that
[21:55] < Davbo> well, something like that
[22:02] < vmlemon_> Davbo: Is it already at the stage where you can control the bot?
[22:05] < Davbo> Not tried yet
[22:06] < vmlemon_> Interesting stuff, though
[22:08] < Davbo> Yeah, hopefully will try it out at uni
[22:10] < Davbo> http://davbo.pastebin.com/d2e6b39d9
[22:10] < Davbo> that any better?
[22:10] < Davbo> oops
[22:10] < Davbo> indent wrong on light sensor
[22:10] < MS-> previous comments weren't criticism BTW
[22:11] < Davbo> Oh that's fine if they were anyway :)
[22:11] < Davbo> more than welcome
[22:11] < Davbo> http://davbo.pastebin.com/d566c47c5
[22:12] < MS-> Indent on self.stop() is wrong...
[22:12] < Davbo> isn't that just outside the while loop?
[22:12] < Davbo> so when it hits something it leaves the while and does stop()
[22:13] < MS-> I'd also change it to be more like: http://pastebin.com/m4c18f3b6
[22:14] < Davbo> oh you can use break :D
[22:14] *** MS- nods
[22:14] < Davbo> break in Java causes problems a lot
[22:15] < Davbo> thanks MS-
[22:15] < MS-> yw
[22:15] < Davbo> Yeah i agree that's better
[22:17] < vmlemon_> Night
[22:17] < Davbo> After my experience with the Java search thingy today this is far more pleasant
[22:17] < Davbo> Night vmlemon_
[22:17] < MS-> vmlemon cya
[22:17] < MS-> heh
[22:17] < MS-> That's nice to hear
[22:18] < Davbo> They gave us a little java application to program it from within, which has none of the usual IDE features
[22:19] < Davbo> also! even though it's programmed in java it fails to run on Linux
[22:19] < MS-> Impressive
[22:19] < MS-> Mind you, Java is "write once, debug everywhere"
[22:19] < Davbo> Yeah, they have some bloody .bat files in there
[22:19] < MS-> cool
[22:20] *** bcarlyon|ubuntu is back from work :-)
[22:20] < Davbo> "write once, debug everywhere" hehe, so true.
[22:21] *** vmlemon_ thinks that Sun should have called it WODA ;)
[22:22] < vmlemon_> It has a nice ring to it, but it probably wouldn't pass by the marketing drones
[22:24] < vmlemon_> Although they did have a little rebranding blitz where they prefixed just about all of their product names with Java, even if they didn't contain any Java-related technology/code
[22:33] < bcarlyon|laptop> Did you get my msg MS-?
[22:43] < vmlemon_> I think it was something like ConceptDraw or MathType that generated the files with the anti-reverse-engineering/format patent notice, although I haven't seen the files in question for a while (since they're on another HDD, that I can't use since I don't have a drive cage/converter for P-ATA laptop drives)
[22:43] Reply: Hi, I'm a bot. I've been put here to answer faq's and log the channel. You can find the logs at http://yeoldeclue.com/logs/ Please don't ask 'any mentors here' since I'm logging for them. Yes, there is. If you just ask you question
[22:43] Reply: or post your idea, you may get a response - either from a mentor or fellow student or from someone reading the logs.
[22:43] Reply: Regarding applications we will be discussing applications (and maybe asking for improvements) until April 7th or 8th - remember no news may well be good news
[22:43] Reply: Some useful links/tips - use the template : http://kamaelia.sourceforge.net/SummerOfCode2006Template - base page: http://kamaelia.sourceforge.net/SummerOfCode
[22:43] Reply: Tips for a good application - q's to ask yourself: http://yeoldeclue.com/cgi-bin/blog/blog.cgi?rm=viewpost&nodeid=1206709783
[23:13] *** lightningmonkey has joined #kamaelia
[23:13] < lightningmonkey> hello again