[15:16] *** kamaeliabot has joined #kamaelia
[15:17] < Davbo> Ah fair enough
[15:17] < Davbo> I'll still use it then
[15:18] < j_baker> If nothing else, it makes it convenient to transfer files back and forth during development (and makes you have to worry less about which branch you have installed currently).
[15:18] < Chong-> j_baker: It seems interesting. I will also try it this weekend to package my branch.
[15:19] < j_baker> I'll try to put it in a branch today since there appears to be a decent amount of interest in it.
[15:19] < ms-> Chong-: It doesn't actyally make any sense for your work
[15:19] < ms-> since you're creating core components
[15:19] < ms-> rather than an application
[15:19] < Chong-> ms-: yes. that's true
[15:20] < ms-> In fact, if you did start going down that route you'd be making your code incompatible with the rest of the system
[15:20] < Chong-> And my code also heavily depends on pygame and pyOpenGL.
[15:21] < ms-> That's not relevant
[15:21] < ms-> You are writing library code, not an application
[15:21] < ms-> j_baker, Davbo & orphans are all writing applications
[15:21] < ms-> the bulk of their code should end up in Kamaelia.Apps.*
[15:22] < ms-> with their apps actually just stubs to pull in the top level components really
[15:22] < Chong-> ms-: I see.
[15:22] < ms-> but their apps need packaging for a user to install and run
[15:22] < ms-> j_baker's done a nice job of that for these particular sorts of application
[15:23] < ms-> The second biggest risk that anyone can fall into is an assumption that (their) one size fits all
[15:23] < ms-> probably the biggest risk is that someone can assume that one size fits all and that they can design it
[15:25] < Chong-> ms-: do you mean (fits) all OS or others?
[15:28] < ms-> huh?
[15:28] < Chong-> about "one size fits all"
[15:29] < Davbo> he means j_baker's packaging solution doesn't fit your problem. Your code will go into core Kamaelia
[15:30] *** Davbo is confused what that has to do with OS
[15:30] < Chong-> Davbo: I see. thanks.
[15:30] < ms-> Davbo: you weren't the only one confused :)
[15:30] < ms-> OS is just a way of sharing code.
[15:30] < ms-> the rest is actually just "software development"
[15:30] < ms-> which is the same inside a proprietary software dev house as it is in open source
[15:31] < ms-> At least inside a good proprietary software dev house it is
[15:31] < ms-> (having worked in what I consider was a good one - with hindsight :) )
[15:32] < Davbo> Sun?
[15:32] *** Davbo provokes ms-
[15:32] < Chong-> Davbo: I had thought a package may not be suitable for all os (linux, mac, windows and others)
[15:36] < ms-> Davbo: No, Inktomi
[15:36] < ms-> Sun are meant to be a good place to work AFAICT
[15:37] < vmlemon_> Aren't they part of Yahoo!, now?
[15:37] < ms-> yep
[15:37] < ms-> I left when the writing was on the wall
[15:38] < ms-> (they'd separated the accounts for each division out - which is clearly a mechanism for saying "buy this bit" )
[15:39] *** vmlemon__ has joined #kamaelia
[15:39] *** vmlemon__ is now known as vmlemon_
[15:39] < Davbo> Ah I've heard of those
[15:39] < Davbo> Inktomi
[15:39] < ms-> Was an incredibly good place to work in terms of people with strong skills and good coding practices though
[15:40] *** Davbo likes the idea of having 20% time for your own project
[15:40] < Davbo> You kinda get something like that, although less that 20% ms-, right?
[15:40] < ms-> No we don't get that
[15:41] < ms-> There was something similar until about 16 months back
[15:41] < Davbo> oh.
[15:41] < j_baker> So this is a totally on your own time deal?
[15:41] < ms-> which was "Up to 10%" time
[15:41] < ms-> j_baker: yep, with a blind eye
[15:41] < ms-> A bit like doublethink
[15:42] < ms-> basically I have the blessing of my management to steal some time as long as I don't take the P
[15:42] < Davbo> Ah I see
[15:42] < ms-> but I don't have time allocated to it at work
[15:42] < j_baker> Well, I find it interesting that the BBC at least allows this in the first place. I'd like someone to show me open source webpage for NBC, CBS, or ABC. Or even PBS.
[15:43] < ms-> Kamaelia was on the workplan until a resource crunch hit last year (the dept has been shrinking for various reason)
[15:43] < vmlemon_> Urine extaction? ;)
[15:43] < vmlemon_> Ugh
[15:43] < ms-> So last year my time was reallocated to this project: http://www.participateonline.co.uk/, but K wasn't removed from the workplan, but just allocated a resource level of "0"
[15:44] < vmlemon_> Still no ITV or Channel 4 or 5 open source...
[15:44] < ms-> I wasn't going to put us forward for GSOC this year as a result, but decided to run this by LH and the GSOC team
[15:44] < ms-> and they were happy with the fact that the project is still active in practice
[15:44] < ms-> (after all, many projects happen outside work time)
[15:44] < ms-> and so were happy for us to be involved :)
[15:45] < ms-> It's good for everyone really since for me it gives good justification for getting things back on later in the year
[15:45] < ms-> since that participate project is an external commitment by the department that finishes this year
[15:46] < ms-> Hence I was interested in application project areas that expand the codebase into lots more interesting areas that people were interested in working on for their own personal benefit :)
[15:46] < j_baker> It's pretty cool that Leslie did that. But I suppose that's also one of the points of GSOC.
[15:46] < ms-> It is really cool
[15:47] < Uraeus> Davbo: be aware that most 20% time for own projects ends up being empty air in practice. I know a lot of people at Google, almost none of who ever actually get around to those 20%. Problem is that when working on an important project with a deadline, taking a day to work on a private project might be something your contract allows, but it is not socially acceptable
[15:47] < ms-> I suppose the other thing though is it's a demonstrator that I'm really not doing this because anyone's asking me to - it's because I really believe this will be a better way of writing code, and a way that we need to make easier for everyone
[15:47] < vmlemon_> Anyone think we'd see BSkyB Open Source any time soon? ;)
[15:48] < ms-> since otherwise we'll all get to 8/16 core machines and people will get worse and worse software
[15:48] < j_baker> I think microsoft deserves a lot (but by far definitely not all) of the blame.
[15:49] < vmlemon_> All software is going that way, sadly
[15:49] < Davbo> I suppose that's why it *seems* like a good idea Uraeus but you don't see it much/hear much about it.
[15:49] < ms-> Nah, regarding multithreaded/etc software on 8/16 core systems, they can't really be blamed
[15:49] < j_baker> Writing parallel apps in windows is just a pain.
[15:50] < ms-> The problem is that people get trained to use things like threads without being told how to use them safely
[15:50] < j_baker> I think it would be interesting to port Kamaelia to C#. :)
[15:50] < ms-> Likewise
[15:50] < ms-> There *is* a reason why the code tree is
[15:50] < ms-> /Code/Python :)
[15:50] < ms-> rather than /Axon /Kamaelia /Apps etc
[15:50] < ms-> :)
[15:50] < Uraeus> ms-: people get trained to use threads? which uni did you talk to? :)
[15:51] < ms-> They covered threads on our course
[15:51] < j_baker> I think at our university, parallel processing is an optional senior level class.
[15:51] < ms-> along with multiprocess, etc
[15:52] < Uraeus> I know its part of the courses, I was more being sarcastic about the general level of education :)
[15:52] < ms-> heh
[15:52] < ms-> Our course was also entertaining in that every module had a significant labs content which everyone had to do
[15:52] < vmlemon_> It's great that we have machines with more power than an early Cray, but not that the code running on them is slower/less efficient than that on even really old machines
[15:52] < ms-> and every labs session had a maximum mark that could be obtained of 70% *if you only did the things requested*
[15:53] < ms-> essentially forcing everyone to do more than the minimum requested
[15:53] < ms-> and to be inventive
[15:53] < Davbo> Courses at polytechnic uni's are awful for those things though ms-. They just create C++ code monkeys
[15:54] < Davbo> Well Universities which used to be Polytechnics
[15:54] < ms-> yep
[15:54] < j_baker> I think mine is potentially worse. Our university seems to generate a lot of C# code monkeys.
[15:54] < ms-> manchester CS doesn't have a good excuse for a crap course though :)
[15:55] < ms-> so they don't (or didn't) have one :)
[15:55] < vmlemon_> Hell, they still take as long to boot now, as a 486 running did, if not even longer
[15:55] < vmlemon_> *486 did
[15:55] < Davbo> They do lots of things like "Games Programming" these days and they start with C++, what an awful idea
[15:56] < ms-> Games programming is a good idea. Starting with C++ is a bad idea
[15:56] < ms-> they'd do far better to start with python :)
[15:56] < Chong-> ms-: I agree. manchester CS' most labs are very interesting and practical.
[15:56] < Davbo> Those courses should be using PyGame for sure,
[15:56] < j_baker> I don't think C++ is necessarily a bad language to start out with. As long as you move on to something else very quickly.
[15:57] < ms-> Davbo: well CMU created this: http://www.alice.org/ as their starting point
[15:57] < ms-> which is really quite a neat idea
[15:57] < vmlemon_> Ugh, some still use Vomit, erm Visual Basic...
[15:57] < ms-> Uraeus: One of our second year labs was to write a scheduler
[15:57] < Uraeus> well I have been to various meetings with game developers and their complaint is that people leave Uni, even with 'game development' degrees, know some basic C++, but next to nothing about 3D development for instance
[15:57] < ms-> etc
[15:58] < ms-> Well, the reason why I think that games programming can be a good one is because it can be an interesting domain
[15:58] < Uraeus> and if said students need to optimize some code in assembly they tend to go blank eyed
[15:58] < ms-> but also many games involve things like concurrency, etc
[15:58] < ms-> and so provides interesting scope for development
[15:59] < ms-> The comment that many unis are bad though is valid - it's why we have/had such a focus on asking people for running code
[16:00] < ms-> Largely to see in practical terms what people were like :)
[16:01] < Davbo> That's the problem with "Game Development" degree's they could be easily as technical as Computer Science but due to a lot of Universities treating them like joke degree's they tend to just be a course on simple C++
[16:01] < j_baker> I have to say: I've learned more about programming doing this than I think I have in the sum of all my programming classes at the university.
[16:01] < Davbo> My comments are largely on Sheffield Hallam btw which obviously is my rival university ;-)
[16:02] < vmlemon_> That says a lot about the university, then...
[16:02] < Davbo> but I do know people on CS courses there
[16:02] < ms-> j_baker: Glad to hear it :) That is largely the reason for me why I get involved in GSOC :)
[16:03] < Davbo> that's a no brainer for me j_baker, sit in a class about "Java and Swing" for 2hours and you'll see why
[16:04] < j_baker> Urghh... I know what you're talking about.
[16:04] < j_baker> I take it you also get the feeling that your professors are more interested in teaching the language itself than the principles behind?
[16:05] < j_baker> s/behind/behind it
[16:05] < Davbo> Yeah, exactly
[16:05] < j_baker> I just got done taking a class on Object Oriented programming. I don't know a whole lot about good OO designs. But I know a lot about C#. :)
[16:06] < Davbo> That was only really 1 class for me though
[16:08] *** vmlemon_ wants to learn assembler, but has no idea where to even begin, with only knowing a small amount of Perl...
[16:09] < Davbo> One of the main complaints about my course is they teach us how to use a Screwdriver (Java) and then we use it for hammering, painting, soldering...etc (you get the idea)
[16:09] < vmlemon_> Hah
[16:10] < j_baker> Yup. I remember you talking about using Java for an AI class.
[16:10] < ms-> vmlemon_: I learnt assembler from this: http://www.currybet.net/cbet_blog/2004/06/beginners_computer_handbook.php
[16:11] < vmlemon_> I guess it's a lousy all-round multitool, then? ;)
[16:11] < Davbo> That book looks *awesome*
[16:11] < ms-> Davbo: It's great
[16:12] < Davbo> to ebay!
[16:12] < j_baker> I think all programming languages are lousy. It's just which is the least lousy, vmlemon_.
[16:13] < vmlemon_> "Cutting Bread With Chainsaws, Volume 1", anyone?
[16:13] < ms-> Davbo: This however is awesome: http://www.amazon.com/cartoon-guide-computer-science/dp/0064604179
[16:13] < j_baker> With that said though, I don't hear anything but complaints about Java these days so I can guess which end it lies on.
[16:14] < j_baker> I think the book we got sent this year is also awesome. It definitely isn't light reading material though. :)
[16:14] < ms-> Davbo: At somepoint I do want to build a kids version of Kamaelia, such that a book like that Usborne one (first link) is possible again
[16:14] < Davbo> Yeah j_baker: I know more about svn delta editor than I need to know ;-)
[16:15] < Davbo> Yeah you mentioned something about that before ms-
[16:15] < j_baker> I actually found the part about the Solaris kernel interesting, Davbo.
[16:16] < vmlemon_> I remember those Usborne books...
[16:20] < vmlemon_> With the robots and shelves full of cardboard boxes?
[16:21] < ms-> yep
[16:21] < ms-> There's a reason the metaphor in kamaelia for a component is of someone (or something) sitting at a desk with a bunch of (physical) inboxes and outboxes
[16:22] < ms-> ;)
[16:22] < vmlemon_> PEEK & POKE!
[16:22] < ms-> :)
[16:25] < vmlemon_> And the 2 line recursive app - just add PRINT and GOTO ;)
[16:26] < vmlemon_> Now, you'd have to do stuff with one of the many *fork()s
[16:27] < vmlemon_> or probably spawn()
[16:28] < vmlemon_> (Just hope you don't exhaust RAM and crash the box)
[16:39] < Davbo> Gonna install Ubuntu on my EEE and co my Sketches
[16:44] *** vmlemon__ has joined #kamaelia
[16:44] *** vmlemon__ is now known as vmlemon_
[17:04] < j_baker> ms-: I did make a fix to the Intelligent File Reader not closing the file it reads that was like 2 lines. Since it's semi-related to the server code, do you want me to put that in with the TCPServerImprovements branch or should I put it in its own branch?
[17:22] < Lawouach> orphans: ping
[17:23] *** Davbo has joined #kamaelia
[17:29] *** ms- ponders
[17:30] < ms-> I was planning another branch for HTTP related stuff you see
[17:30] < ms-> ie to pull in the stuff which I'd done, but also for any improvements you want to pull in as well
[17:30] < ms-> As a fix it really goes with that
[17:30] < ms-> in a very sensible way
[17:30] < j_baker> That will work.
[17:31] *** ms- has to go out shortly for a while, and even when I get back I won't have a chance to deal with it
[17:31] < ms-> It might be a good idea to post that to the list, OR, add it as a note to the release page
[17:31] < ms-> probably the release page
[17:32] < ms-> near the "merging" section
[17:34] < j_baker> Ok, will do.
[17:35] < ms-> I think the word request needs clarifying btw in your mails - you seem to have an assumption regarding something which I don't understand, and I think I need to in order to answer whatever question you're asking is :-)
[17:35] *** ms- sees next mail
[17:37] < j_baker> By request, I mean the request that's passed to the request handler that contains the raw uri and all the other HTTP data.
[17:37] < j_baker> (IE, what environ in my WSGI handler is a copy of)
[18:40] *** jlei_ has parted #kamaelia
[19:08] *** vmlemon__ has joined #kamaelia
[19:08] *** vmlemon__ is now known as vmlemon_
[19:19] < ms-> (back briefly)
[19:19] < ms-> j_baker: Ahh, I see.
[19:19] < ms-> You are assuming that the ServerCore does something it doesn't :-)
[19:19] < j_baker> Yeah
[19:19] < j_baker> That's handled by the HTTPServer I'm assuming.
[19:19] < ms-> That means it's a good opportunity for me to document that then - maybe at the weekend
[19:19] < ms-> Yep
[19:20] < ms-> HTTPServer is very badly named
[19:20] < ms-> It should really be something like
[19:20] < ms-> Kamaelia.Protocol.HTTP.ServerSide
[19:20] < ms-> But that would leave the component being just ServerSide
[19:20] < ms-> which is rather nondescript
[19:21] < j_baker> HTTPHandler?
[19:21] < j_baker> Although that may create confusion as to whether or not you're talking about a protocol handler or a request handler.
[19:21] < j_baker> So maybe HTTPProtocolHandler?
[19:21] < ms-> Not bad - it presumes that you call all things that manage protocols " handlers " and there is that problem as well
[19:22] < ms-> http://edit.kamaelia.org/Docs/NotationForVisualisingAxon - shows visually what's going on somewhat better
[19:22] < j_baker> Can we not just go with HTTPThingamajig? :-P
[19:23] < ms-> Ask me again on a friday
[19:23] < ms-> That's a day I name things badly :)
[19:23] < j_baker> Heh
[19:23] < j_baker> Perhaps HTTPProtocolMiddleware? It's a bit of a mouthful, but it's somewhat more descriptive.
[19:24] < j_baker> I suppose this one will require thought.
[19:24] < ms-> HTTPResponder perhaps
[19:25] < ms-> class HTTPServer(ServerCore):
[19:25] < ms-> protocol = Kamaelia.Protocol.HTTP.HTTPResponder
[19:25] < ms-> class HTTPServer(ServerCore):
[19:25] < ms-> protocol = HTTPResponder
[19:25] < ms-> Not too shabby
[19:26] < j_baker> Not bad. It's succinct and descriptive.
[19:26] *** ms- has to go afk now. Probably not back until later tomorrow
[19:26] < ms-> have a good one
[19:26] < ms-> cya
[19:26] < ms-> :)
[19:26] *** ms- has parted #kamaelia
[19:48] < j_baker> Heh... there's an author in the python cookbook named Indyana Jones :)
[19:54] *** Trun has joined #kamaelia
[20:04] *** vmlemon_ has joined #kamaelia
[20:06] *** vmlemon has joined #kamaelia
[20:10] *** vmlemon_ has joined #kamaelia
[20:19] *** vmlemon_ has joined #kamaelia
[20:24] *** vmlemon__ has joined #kamaelia
[20:25] *** vmlemon__ is now known as vmlemon_
[20:33] *** vmlemon__ has joined #kamaelia
[20:33] *** vmlemon__ is now known as vmlemon_
[21:35] *** vmlemon_ has joined #kamaelia