2008-04-09T00:00:00  <zenhase> TheSheep: with an object database ... you could think of it as sth. like a zope equivalent
2008-04-09T00:00:19  <xorAxAx> dennda: wow, cool buzzwords
2008-04-09T00:00:28  <xorAxAx> Code smells
2008-04-09T00:00:31  <xorAxAx> cool!
2008-04-09T00:00:49  <xorAxAx> so much better :)
2008-04-09T00:01:00  <dennda> yep, he's really good
2008-04-09T00:01:14  <zenhase> "Annotation-based programming"
2008-04-09T00:01:21  <zenhase> why do i want to puke?
2008-04-09T00:01:46  <xorAxAx> dennda: did he tell about his ms experience?
2008-04-09T00:02:01  <dennda> xorAxAx: he sometimes does
2008-04-09T00:02:06  <dennda> today he said
2008-04-09T00:02:21  <zenhase> "Language-oriented programming" hmm, this somehow sounds strange too
2008-04-09T00:02:38  <TheSheep> programming-oriented programming
2008-04-09T00:03:03  <zenhase> sourcecode-oriented programming ;)
2008-04-09T00:03:08  <dennda> "after completing this course you will not necessarily fail a telephone interview with one of the major software companies. In terms of microsoft (I know the process there): Even if you want to become a manager for microsoft, that is a somehow useless person, you need to know quite some stuff."
2008-04-09T00:04:13  <dennda> aaand: in his very first lecture he shot the first person to leave the room before the lecture had ended with a microsoft air gun
2008-04-09T00:04:26  <dennda> that was some kind of reference, too ;)
2008-04-09T00:04:30  <xorAxAx> a microsoft air gun?
2008-04-09T00:04:45  <zenhase> did it bluescreen back on him?
2008-04-09T00:04:49  <zenhase> erm i mean backfire?
2008-04-09T00:04:54  <dennda> jah some kind of toy they use to shoot at each other if one writes smelling code
2008-04-09T00:05:03  <dennda> hehe ;)
2008-04-09T00:05:31  <TheSheep> they must have a lot of them shipped everyday
2008-04-09T00:05:43  <dennda> you can reuse them
2008-04-09T00:05:58  <TheSheep> dennda: but only so many times
2008-04-09T00:06:18  <zenhase> TheSheep: you should consider what the final products would look like without the engineers punishing themselves with those guns for smelly code
2008-04-09T00:06:22  * TheSheep <-- forced to design for msie
2008-04-09T00:06:24  <dennda> as long as there is no mechanical damage to the device and enough air it works
2008-04-09T00:06:41  <xorAxAx> does anybody know how i can get a usable "cvs st" output? here it lists 6 lines for every file and says "up-to-date"
2008-04-09T00:06:51  <TheSheep> if I could get my hands on some of them...>:E
2008-04-09T00:07:17  <zenhase> hmm ... this whole airgun talking reminds me of those strange USB-rocket-launchers
2008-04-09T00:07:20  <TheSheep> the designers, not the guns
2008-04-09T00:07:25  <zenhase> admin-toys
2008-04-09T00:07:47  * TheSheep waves a RITA in the general direction of Redmond
2008-04-09T00:08:04  <zenhase> i know some guys, who hooked this USB launcher to their nagios and aimed it at the server admin
2008-04-09T00:08:12  <zenhase> so when the nagios goes off, he gets shot at
2008-04-09T00:08:33  <zenhase> s/nagios/nagios alarm/
2008-04-09T00:08:59  <dennda> oh by the way, it was a toy, not a real rifle
2008-04-09T00:09:32  <TheSheep> dennda: that lowers the quality assurance of MS in my eyes considerably
2008-04-09T00:09:53  <dennda> that may be true
2008-04-09T00:14:09  <zenhase> hmm
2008-04-09T00:15:31  <zenhase> i always wonder about product quality at MS. because they have very cool research projects, yet their shipped products are always way behind expectations
2008-04-09T00:15:54  <zenhase> i mean: they are the main research force behind haskell :o
2008-04-09T00:16:12  <dennda> oh are they?
2008-04-09T00:16:14  <zenhase> yes
2008-04-09T00:16:22  <dennda> Didn't know that. Thought he did it out of interest
2008-04-09T00:16:22  <zenhase> search for current papers on haskell
2008-04-09T00:16:31  <dennda> yes, he wrote quite a few
2008-04-09T00:16:41  <zenhase> oh, you mean your prof?
2008-04-09T00:17:06  <zenhase> look at the core haskell developers :)
2008-04-09T00:18:16  * TheSheep has very high opinion of ms research
2008-04-09T00:18:32  <TheSheep> they also hire best typographers, for example
2008-04-09T00:18:45  <TheSheep> I blame the business practices, especially the 5% rule
2008-04-09T00:18:56  <xorAxAx> dennda: well, if he was a product manager, he might not have had a single contact with those guys
2008-04-09T00:19:16  <xorAxAx> TheSheep: the best typographers?
2008-04-09T00:19:38  <dennda> he is on planet.haskell.org
2008-04-09T00:20:13  * dennda stalks a bit
2008-04-09T00:20:36  <TheSheep> xorAxAx: OpenType is a microsoft technology
2008-04-09T00:20:41  <zenhase> is it?
2008-04-09T00:20:52  <TheSheep> at least in part
2008-04-09T00:21:03  <zenhase> thought it was more like a joint effort between apple, adobe, ms and whoever else
2008-04-09T00:21:11  <TheSheep> zenhase: yes
2008-04-09T00:21:15  <zenhase> i mean it's just a container
2008-04-09T00:21:20  <xorAxAx> OpenType is a scalable format for computer fonts (also sometimes known interchangeably as "typefaces"), initially developed by Microsoft, later joined by Adobe Systems. OpenType was first announced in 1996, with a significant number of OpenType fonts starting to ship in 2000-2001. Adobe completed conversion of its entire font library to OpenType around the end of 2002.
2008-04-09T00:21:22  <TheSheep> zenhase: till, ms gets to use all the research results
2008-04-09T00:21:25  <zenhase> not something very ... typographic
2008-04-09T00:21:44  <xorAxAx> TheSheep: well, just because they specified the format it doesnt mean that they have good typographers
2008-04-09T00:21:49  <zenhase> xorAxAx: ah thanks
2008-04-09T00:22:14  <zenhase> but ok, they definitely have good programming language guys
2008-04-09T00:22:19  <TheSheep> xorAxAx: read the typography section of the ms research page, some good stuff there
2008-04-09T00:22:32  <TheSheep> zenhase: vb? XD
2008-04-09T00:22:57  <TheSheep> I particularly loved the vista hig
2008-04-09T00:23:31  <TheSheep> it's a pretty well written hig, with examples from real life vista apps of how things shouldn't be done
2008-04-09T00:23:47  <xorAxAx> vista hig?
2008-04-09T00:23:50  <TheSheep> exaples from the new Office, and Vista itself
2008-04-09T00:23:58  <dennda> human interface guidelines?
2008-04-09T00:24:02  <TheSheep> xorAxAx: they call it 'user experience guidelines' I think
2008-04-09T00:24:38  <TheSheep> http://msdn2.microsoft.com/Message-Error.htm?aspxerrorpath=/en-us/library/aa511258.aspx
2008-04-09T00:24:41  <TheSheep> lovely!
2008-04-09T00:24:50  <xorAxAx> which reminds me that i got an assignment today which says "describe some usability issue until friday on a full page"
2008-04-09T00:25:06  <dennda> oh boy
2008-04-09T00:25:09  <zenhase> xorAxAx: usability issue?
2008-04-09T00:25:09  <dennda> that is so boring
2008-04-09T00:25:12  <TheSheep> xorAxAx: ooh! sweet!
2008-04-09T00:25:16  <zenhase> xorAxAx: regarding what?
2008-04-09T00:25:26  <zenhase> dennda: it is? i don't think so
2008-04-09T00:25:29  * dennda just recently finished his work for "software ergonomie"
2008-04-09T00:25:29  <xorAxAx> first i thought that i might want to use the webpage of the prof (who is the only one holding lectures about website design at this uni when it ocmes to CS profs)
2008-04-09T00:25:30  <TheSheep> xorAxAx: font picker! font picker!
2008-04-09T00:25:40  <zenhase> dennda: depends on what you think about
2008-04-09T00:26:10  <zenhase> dennda: just look at the thing in front of you ... and then think about any sci-fi movie
2008-04-09T00:26:10  <dennda> zenhase: depends on the software you are evaluating. If it drives you crazy even to work with it on a scientifical basis, it sucks
2008-04-09T00:26:28  <zenhase> dennda: then you will instantly see a ... usability issue :)
2008-04-09T00:26:53  <dennda> xorAxAx: show me
2008-04-09T00:26:55  <xorAxAx> zenhase: anything, totally ope
2008-04-09T00:26:56  <xorAxAx> n
2008-04-09T00:26:57  <dennda> (the page)
2008-04-09T00:27:03  <TheSheep> xorAxAx: write with huge letters "SUCKS!" on the whole page, and put the url of the prof's web page under it
2008-04-09T00:27:11  <xorAxAx> dennda: sorry, wifi problems, the url is ...
2008-04-09T00:27:18  <zenhase> xorAxAx: well, then i would rant about computers in general
2008-04-09T00:27:28  <xorAxAx> looks like my neighbour is using the microwave oven
2008-04-09T00:27:34  <dennda> hehe
2008-04-09T00:27:45  <xorAxAx> http://wwwcs.uni-paderborn.de/cs/ag-szwillus/
2008-04-09T00:27:46  <TheSheep> zenhase: you get better results if you pick one thing and cncentrate on it
2008-04-09T00:27:52  <xorAxAx> it became a bit better in the last weeks
2008-04-09T00:27:55  <dennda> On Windows Systems: Why do you have to press "start" in order to "stop" the computer? (a classic)
2008-04-09T00:28:00  <xorAxAx> but its still using frames, ugh
2008-04-09T00:28:15  <TheSheep> xorAxAx: frames save bandwidth ;)
2008-04-09T00:28:15  <zenhase> TheSheep: well, then concentrate on the keyboard/mouse-combination of input-devices :)
2008-04-09T00:28:19  <xorAxAx> compare
2008-04-09T00:28:20  <dennda> This page is not Valid -//W3C//DTD HTML 3.2//EN!
2008-04-09T00:28:24  <xorAxAx> http://www.cs.uni-paderborn.de/fachgebiete/fachgebiet-rechnernetze/ueberblick.html
2008-04-09T00:28:44  <xorAxAx> then i thought that i could choose moin
2008-04-09T00:28:48  <TheSheep> xorAxAx: one no-braner well know usability issue with frames is that you cannot bookmark a single subpage
2008-04-09T00:28:52  <xorAxAx> i think its easy to fill the page at least
2008-04-09T00:28:58  <zenhase> xorAxAx: yeah
2008-04-09T00:29:13  <TheSheep> xorAxAx: good idea
2008-04-09T00:29:15  <xorAxAx> TheSheep: yes, he also told us that he hates frames
2008-04-09T00:29:24  <xorAxAx> TheSheep: no idea why he is using them then :)
2008-04-09T00:29:40  <TheSheep> xorAxAx: sign of times
2008-04-09T00:30:09  <zenhase> dennda: you still think this usability stuff is boring to write about?
2008-04-09T00:30:15  <TheSheep> xorAxAx: you'll write it in German of course?
2008-04-09T00:30:21  <dennda> zenhase: as I said, depends on what you are examining
2008-04-09T00:30:29  <gizmach> gm
2008-04-09T00:30:30  <gizmach> gn
2008-04-09T00:30:35  <TheSheep> gizmach: good night
2008-04-09T00:30:44  <zenhase> dennda: i can recommend http://www.dourish.com/embodied/
2008-04-09T00:30:49  <dennda> zenhase: my subject was boring, as was the lecture (due to the style of the professor)
2008-04-09T00:30:49  <TheSheep> I think it more depends on whether you get useful results :)
2008-04-09T00:30:55  <zenhase> dennda: very enlighting book
2008-04-09T00:31:05  <dennda> zenhase: actually I find it interesting myself. I read gnomes HIG
2008-04-09T00:31:32  <dennda> but I hated the lecture and the task that was given
2008-04-09T00:31:40  <xorAxAx> dennda: LOL, "A subjective perspective on SLE follows. Opinions expressed below are neither necessarily shared by my wife, nor by other SLE organizers and combatants, nor by my current/previous/future employers. Also, don't take me too serious. Remember this is a blog, I am a Cobol+Haskell nerd, and I don't use smilies, as a matter of style."
2008-04-09T00:32:15  <dennda> xorAxAx: I don't need to ask who wrote that :)
2008-04-09T00:32:36  <zenhase> dennda: your professor?
2008-04-09T00:32:51  <dennda> sounds quite like him
2008-04-09T00:32:54  <xorAxAx> " Toulouse is not Bordeaux ("city of wine"), it's not Lyon ("city of gastronomy"), but it means quality French wine and food; if you are stationed elsewhere in this world, then get some rest for a few days, and submit an unrejectable paper, or attend anyhow."
2008-04-09T00:32:59  <xorAxAx> LOL
2008-04-09T00:33:30  <TheSheep> good advice
2008-04-09T00:33:38  <zenhase> dennda: cool, your prof is skypable!
2008-04-09T00:33:42  <dennda> zenhase: yes
2008-04-09T00:33:48  <xorAxAx> TheSheep: dont you want to submit a paper about parsers? :)
2008-04-09T00:33:51  <dennda> his wife sometimes calls him during his lecture
2008-04-09T00:33:57  <dennda> that's kinda funny
2008-04-09T00:34:04  <xorAxAx> via skype? LOL
2008-04-09T00:34:08  <TheSheep> xorAxAx: I still need to correct my thesis before publishing it
2008-04-09T00:34:19  <xorAxAx> TheSheep: what was it about again?
2008-04-09T00:34:25  <grzywacz> night
2008-04-09T00:34:43  <TheSheep> xorAxAx: the basic techniques for parsing context-free grammars
2008-04-09T00:34:57  <TheSheep> the Earlay part is really poor
2008-04-09T00:35:02  <dennda> like backus naur?
2008-04-09T00:35:15  <TheSheep> dennda: that's just notation
2008-04-09T00:35:18  <xorAxAx> "Recently, I started to re-wire some mildly used parts of my brains to accommodate capabilities for a 1st year CS course on OO programming and modeling. [...] To tell you a secret, I have a hidden agenda of the kind that students are potentially prepared for the post-Java 1.5 / UML 2.1 era. To this end, I subliminally detour into FP ground and touch upon some of the issues with current OO programming."
2008-04-09T00:35:29  <xorAxAx> TheSheep: ok
2008-04-09T00:35:37  <zenhase> TheSheep: you are not studying but writing papers? so you are working in research after all anyway?
2008-04-09T00:35:55  <TheSheep> zenhase: I plan to :)
2008-04-09T00:36:11  <zenhase> TheSheep: can you elaborate on that? :)
2008-04-09T00:36:22  <TheSheep> zenhase: I submitted this paper 2 years ago already and got my degree, now I'm considering coming back to it and starting on phd
2008-04-09T00:36:23  <zenhase> .oO( smooth move zen-eliza! )
2008-04-09T00:36:39  <zenhase> TheSheep: ah i see
2008-04-09T00:36:49  <dennda> TheSheep: parsing in general?
2008-04-09T00:37:04  <TheSheep> dennda: yes, it's a math degree, not cs
2008-04-09T00:37:11  <dennda> ah ok
2008-04-09T00:38:09  * xorAxAx prepares an assignment for other students :)
2008-04-09T00:40:13  <zenhase> xorAxAx: what is it about?
2008-04-09T00:41:04  <xorAxAx> zenhase: the lecture is called "concepts and methods of system software"
2008-04-09T00:41:26  <zenhase> dennda: from the blog of your professor i get quite some sympathy for this guy. despite his buzzword bingo in the course description :)
2008-04-09T00:41:45  <xorAxAx> its a bit more fundamental than an OS course
2008-04-09T00:41:51  <zenhase> hmm
2008-04-09T00:42:03  <zenhase> what could there be more fundamental? o_O
2008-04-09T00:42:37  <zenhase> i would think of system software sitting a layer higher than the OS
2008-04-09T00:42:57  <zenhase> but perhaps i have a false definition at hand
2008-04-09T00:43:04  <xorAxAx> yes, weird name
2008-04-09T00:43:17  <xorAxAx> well, its about things you need in the OS itself and sometimes in programs
2008-04-09T00:43:33  <xorAxAx> semaphores, scheduling paradigms, interrupts, paging algorithms
2008-04-09T00:43:37  <xorAxAx> and much more
2008-04-09T00:43:39  <zenhase> ah ok
2008-04-09T00:43:46  <zenhase> yes, that makes sense
2008-04-09T00:44:00  <zenhase> so it is not more fundamental in the OS sense
2008-04-09T00:44:01  <dennda> it is called "grundlagen der rechnerarchitektur" here :)
2008-04-09T00:44:03  <xorAxAx> gah, they define the task macro (\aufgabe) differently for exams and assignment sheets
2008-04-09T00:44:07  <dennda> somehow misleading, too
2008-04-09T00:44:11  <zenhase> but fundamental in the software engineering sense
2008-04-09T00:44:13  <xorAxAx> makes copy&pasting difficult
2008-04-09T00:46:37  <xorAxAx> dennda: no, thats something else here
2008-04-09T00:46:43  <xorAxAx> dennda: GRA would contain MIPS :)
2008-04-09T00:46:44  <dennda> hm
2008-04-09T00:46:54  <dennda> xorAxAx: was a mixture
2008-04-09T00:47:00  <dennda> I judged by the contents
2008-04-09T00:47:41  <zenhase> 'rechnerarchitektur' is also more cpu oriented here
2008-04-09T00:48:20  <zenhase> i think most stuff xorAxAx mentioned there, is in 'system architecture' here ... our basic OS course
2008-04-09T00:49:00  * zenhase still thinks he could have become interested in operating systems ... if liedtke would be still teaching at this university :/
2008-04-09T00:49:14  <xorAxAx> business informatics has to take this course as well
2008-04-09T00:50:19  <xorAxAx> and one of my tasks will be to allay their fears :)
2008-04-09T00:51:07  <xorAxAx> see http://www.cs.uni-paderborn.de/no_cache/fachgebiete/fachgebiet-rechnernetze/lehre/ss07/vl-konzepte-und-methoden-der-systemsoftware.html
2008-04-09T00:51:19  <zenhase> hmm
2008-04-09T00:51:43  <zenhase> btw ... because i just see the 'cs' in this domain again:
2008-04-09T00:52:30  <zenhase> i was thinking about the name for what i am studying today ... and i think i am totally not cool with being called a 'computer scientist'
2008-04-09T00:52:44  <dennda> hehe
2008-04-09T00:52:49  <zenhase> i thought about, why it is called 'informatik' in german
2008-04-09T00:52:53  <dennda> "computervisualistik" sounds much cooler :)
2008-04-09T00:53:11  <zenhase> and i realized, that what i like about the subject isn't the computers
2008-04-09T00:53:15  <zenhase> it's the information
2008-04-09T00:53:23  <zenhase> i am an information scientist!
2008-04-09T00:53:35  * xorAxAx is a structural scientist
2008-04-09T00:54:28  <zenhase> also i learned a cool new foreign word today in this context
2008-04-09T00:54:31  <xorAxAx> cf. http://de.wikipedia.org/wiki/Strukturwissenschaft
2008-04-09T00:54:35  <zenhase> 'semiotics'
2008-04-09T00:54:40  <zenhase> i really like that
2008-04-09T00:54:45  <xorAxAx> and, interesting but a different field: http://en.wikipedia.org/wiki/Structuralism
2008-04-09T00:55:52  <xorAxAx> its interesting that they only count theoretical informatics
2008-04-09T00:56:07  <xorAxAx> practical ones is about structures as well
2008-04-09T00:56:15  <zenhase> well
2008-04-09T00:57:12  <zenhase> in my experience most people doing only practical stuff don't really see the structures
2008-04-09T00:57:51  <zenhase> so they are more hidden and subconcious there
2008-04-09T00:58:23  <xorAxAx> can you give an example? :)
2008-04-09T00:58:30  <xorAxAx> even about a particular person
2008-04-09T00:59:37  <zenhase> hmm
2008-04-09T01:00:02  <zenhase> perhaps i am wrong ... i just realized, that i was perhaps just thinking about the wrong structures
2008-04-09T01:00:24  <xorAxAx> talking about structures is very metaphysical and metacyclical
2008-04-09T01:00:25  <zenhase> software engineering ... design patterns ... those are structures as well :o
2008-04-09T01:00:33  <zenhase> yeah
2008-04-09T01:00:39  <xorAxAx> exactly, patterns.
2008-04-09T01:01:01  <zenhase> patterns emerge on every level of computer science
2008-04-09T01:01:02  <xorAxAx> and antipatterns. people who perfect antipatterns
2008-04-09T01:01:19  <zenhase> for the language theorist it's the AST
2008-04-09T01:01:19  <xorAxAx> ... would be people who are perfect antistructional scientists :)
2008-04-09T01:01:28  <zenhase> for the plain user it is the paradigms
2008-04-09T01:01:38  <zenhase> user as in programmer
2008-04-09T01:01:55  <xorAxAx> python is scripting language and conveys the scripting paradigm
2008-04-09T01:01:57  <zenhase> hmm
2008-04-09T01:01:58  <xorAxAx> according to the prof
2008-04-09T01:02:03  <zenhase> lol
2008-04-09T01:02:11  <zenhase> ok, this is kind of hard
2008-04-09T01:02:13  <xorAxAx> like sh did
2008-04-09T01:02:36  <zenhase> http://xkcd.com/224/
2008-04-09T01:02:40  <zenhase> structures! :D
2008-04-09T01:02:48  * TheSheep finds python more similar to c than to sh
2008-04-09T01:03:15  <xorAxAx> TheSheep: pssst .)
2008-04-09T01:03:46  <zenhase> i find python to be more leaning towards lisp than to c ;)
2008-04-09T01:04:22  <TheSheep> zenhase: to all their own
2008-04-09T01:06:06  * dennda goes zzzZZzzzzZZzzZZZzzZZzzZZZzzZZzzZZZZzZZZzzzZZZzz
2008-04-09T01:06:39  <dennda> good night
2008-04-09T01:06:43  * zenhase gets a new pack of AA batteries from the shelf and stuffs them into dennda 
2008-04-09T08:28:32  <ThomasWaldmann> moin
2008-04-09T08:43:01  <ThomasWaldmann> that google appengine looks quite interesting
2008-04-09T08:43:38  <ThomasWaldmann> but due to some requirements/restrictions it is not usable for moin
2008-04-09T11:02:36  <xorAxAx> ThomasWaldmann: why?
2008-04-09T11:02:48  <xorAxAx> ThomasWaldmann: there is just an appengine backend missing
2008-04-09T11:05:32  <ThomasWaldmann> "just" is a slight understatement :P
2008-04-09T11:16:25  <xorAxAx> ?
2008-04-09T11:16:31  <xorAxAx> johill wrote already an sql backend
2008-04-09T11:16:51  <xorAxAx> so it cant be that hard :)
2008-04-09T11:17:12  <ThomasWaldmann> maybe have a deeper look at what they require and what we have
2008-04-09T11:25:06  <xorAxAx> ?
2008-04-09T11:25:13  <xorAxAx> they require some djangolike models
2008-04-09T11:25:25  <xorAxAx> i am still curious to see why you think it would be hard
2008-04-09T11:29:04  <dreimark> moin
2008-04-09T11:34:35  <ThomasWaldmann> "no filesystem write access"
2008-04-09T11:35:42  * ThomasWaldmann is not saying it is impossible to adapt moin to that, I am just saying it is not usable now or in near future
2008-04-09T11:36:04  <xorAxAx> the storage api was planned to support it at least :)
2008-04-09T11:36:37  <ThomasWaldmann> do we have the "caching" in storage api?
2008-04-09T11:37:18  <xorAxAx> no, but you can simply create items in a different backend ... i think i suggested to add caching but lanius didnt have the time
2008-04-09T11:37:40  <xorAxAx> so it might be one thing to consider, dennda
2008-04-09T11:44:18  <ThomasWaldmann> and they also removed some stuff from stdlib...
2008-04-09T12:07:15  <dennda> I'd need to take a look at what they offer
2008-04-09T12:08:10  <dennda> Django-like models sounds not that bad (I like Django)
2008-04-09T12:42:26  <zenhase> moin
2008-04-09T13:17:33  <dreimark> bbl
2008-04-09T13:46:18  <gizmach> moin
2008-04-09T14:19:20  <zenhase> moin gizmach
2008-04-09T14:19:58  <dreimark> hi zenhase gizmach
2008-04-09T14:31:27  <zenhase> hi dreimark
2008-04-09T14:31:36  <zenhase> DSL working again?
2008-04-09T14:35:50  <dreimark> no, next is to try a new splitter
2008-04-09T15:41:16  <johill> xorAxAx: I thought about a sort of appengine backend before :)
2008-04-09T15:44:13  <xorAxAx> what do you mean by "sort of"? :)
2008-04-09T15:44:18  <xorAxAx> are you working for google at night? :)
2008-04-09T15:44:54  <johill> no (though I think they'd love that), and I don't know what appengine really is
2008-04-09T15:44:56  * dennda is SO happy not to have a highlight on "appengine"
2008-04-09T15:45:02  <kikka> moin
2008-04-09T15:45:26  <johill> however, I thought about making backends  that present virtual pages that go to a bugtracker, for example
2008-04-09T15:45:47  <dennda> http://www.djangoproject.com/community/
2008-04-09T15:45:55  <johill> the more important thing there would be mimetypes
2008-04-09T15:46:00  <johill> so you can serve html directly from the app
2008-04-09T15:46:02  <dennda> guess what new buzzword *every* topic contains
2008-04-09T15:46:24  <zenhase> dennda: well, i guess it is NOT 'semantic web'
2008-04-09T15:46:43  <dennda> zenhase: I am astonished :)
2008-04-09T15:46:47  <zenhase> i wonder if app engine is going to be free after preview
2008-04-09T15:47:16  <johill> anyway, I'm sure I'll get back to that at some point and make a wrapper backend so writing an app inside moin is easier
2008-04-09T15:47:48  <zenhase> johill: 'writing an app inside moin' .. .what do you mean by that?
2008-04-09T15:48:08  * johill thinks
2008-04-09T15:48:16  <johill> something that probably no longer matters if moin is a wsgi app
2008-04-09T15:48:36  <johill> (since then you can just overlay moin with your own wsgi app)
2008-04-09T15:48:58  <zenhase> johill: hrhr .. you kind of anticipated the question i was hinting at :D
2008-04-09T15:49:21  <johill> you have a link to wsgi in my semantic brain ;)
2008-04-09T15:50:10  <zenhase> as long is i won't get reduced to a 'the WSGI guy' ;)
2008-04-09T15:55:58  <xorAxAx> better than "the cgi guy"
2008-04-09T15:56:25  <zenhase> xorAxAx: hmm yeah ... that would be awful
2008-04-09T15:56:30  <zenhase> at least in context of webapps
2008-04-09T15:56:45  <xorAxAx> hehe, yeah
2008-04-09T15:56:48  <zenhase> i wouldn't mind being a super-talented graphic artist :)
2008-04-09T15:56:58  <xorAxAx> CGI guys are using a lot of python in california, i heard
2008-04-09T15:57:15  <xorAxAx> and have been doing so for years
2008-04-09T15:57:36  <xorAxAx> before, i only knew blender but all their custom stuff is controlled with python code
2008-04-09T15:57:37  <ThomasWaldmann> zenhase: i guess they will offer a basic thing for free, to attract people. later, if their stuff grows, they'll have to pay.
2008-04-09T15:58:31  * zenhase wonders if they like to take another approach to what amazon is doing with EC2
2008-04-09T15:59:14  <zenhase> but ok, with nothing but a python in a sandbox, it's very different from EC2
2008-04-09T15:59:40  <zenhase> but perhaps it's an attempt at taking down this whole PHP business :)
2008-04-09T16:01:53  <gizmach> dennda: have you seen http://www.djangosnippets.org/snippets/691/ :)
2008-04-09T16:02:26  * zenhase has another PHP horror story :o
2008-04-09T16:02:42  <zenhase> anyone feeling that he could not take the scare?
2008-04-09T16:02:50  * johill covers his eyes
2008-04-09T16:02:52  <zenhase> http://bugs.php.net/bug.php?id=38915
2008-04-09T16:03:04  <zenhase> there you go, those of you who are brave enough
2008-04-09T16:04:13  <zenhase> opened in fall 2006 ... still open now :o
2008-04-09T16:04:34  <zenhase> my jaw dropped through the floor when i read this
2008-04-09T16:04:36  <ThomasWaldmann> zenhase: ugh
2008-04-09T16:07:16  <xorAxAx> "It is rather scary to see Apache failing to
2008-04-09T16:07:16  <xorAxAx> restart, because the MTA (exim in our case) is already
2008-04-09T16:07:16  <xorAxAx> listening on port *:80 !"
2008-04-09T16:07:18  <xorAxAx> LOL
2008-04-09T16:07:40  <dennda> huh?
2008-04-09T16:07:53  <zenhase> what do they expect apache to do?
2008-04-09T16:08:04  <zenhase> kill the evil other process and claim it's rightful port?
2008-04-09T16:08:10  <xorAxAx> zenhase: hmm?
2008-04-09T16:08:31  <xorAxAx> the problem is the open file descriptors
2008-04-09T16:08:48  <zenhase> yeah
2008-04-09T16:09:01  <xorAxAx> php is passing the wrong flags to exec
2008-04-09T16:09:10  <xorAxAx> that might be a one liner fix
2008-04-09T16:09:19  <johill> not in linux
2008-04-09T16:09:20  <xorAxAx> but they are too stupid to grasp it :)
2008-04-09T16:09:20  <zenhase> if it is
2008-04-09T16:09:28  <johill> it doesn't have any 'close all other descriptors'
2008-04-09T16:09:28  <xorAxAx> johill: hehe, then two liens :)
2008-04-09T16:09:44  <zenhase> then zend-tech should consider going out of business right now :o
2008-04-09T16:10:49  <johill> traditionally, you just closed all fds
2008-04-09T16:10:58  <johill> except for those you cared about
2008-04-09T16:11:08  <johill> so you'd just do a loop i=3..1024 or so
2008-04-09T16:11:24  <johill> but with dynamic max fd that is getting harder :)
2008-04-09T16:19:05  <TheSheep> zenhase: you can still use moin's wsgi frontent and put your own app in front, even now
2008-04-09T16:20:25  <johill> I was also thinking of 'virtual pages' though like the patent wiki
2008-04-09T16:20:38  <johill> that would probably rather have an actual virtual page backend
2008-04-09T16:25:38  <zenhase> TheSheep: but it's in the very front then ... i think it would be cool to have some moin-related stuff readily available to your app
2008-04-09T16:25:56  <zenhase> TheSheep: think about sessions and user prefs
2008-04-09T16:26:31  <TheSheep> zenhase: from MoinMoin import ...
2008-04-09T16:26:53  <TheSheep> zenhase: hm, but then you would need the request object from somewhere
2008-04-09T16:27:15  <TheSheep> zenhase: both with the current architecture and with wsgi-enchanced
2008-04-09T16:27:35  <TheSheep> zenhase: you want to pass that in env?
2008-04-09T16:27:45  <TheSheep> that'd suck
2008-04-09T16:28:22  <zenhase> TheSheep: request object imo should only be a thin layer over the environment
2008-04-09T16:28:37  <zenhase> i liked the way they did it in paste and webob
2008-04-09T16:28:42  <TheSheep> zenhase: still passing it in env sucks :)
2008-04-09T16:28:51  <zenhase> you can always recreate the request-object from the env
2008-04-09T16:28:57  <zenhase> why?
2008-04-09T16:29:10  <zenhase> environment is there for passing information between the layers
2008-04-09T16:29:14  <TheSheep> http://dirtsimple.org/2007/02/wsgi-middleware-considered-harmful.html
2008-04-09T16:30:17  <zenhase> hmm
2008-04-09T16:30:27  <zenhase> wait a second :)
2008-04-09T16:30:49  * xorAxAx agrees to TheSheep 
2008-04-09T16:31:22  <damjan> How about moin using webob :)
2008-04-09T16:32:07  <TheSheep> dVd83M
2008-04-09T16:32:49  <TheSheep> argh, I fail
2008-04-09T16:32:52  <zenhase> hmm
2008-04-09T16:32:58  <TheSheep> ddV83M
2008-04-09T16:33:15  <xorAxAx> TheSheep: is that your password?
2008-04-09T16:33:29  <TheSheep> xorAxAx: stand on your head
2008-04-09T16:33:45  <xorAxAx> hmm, ppA83W
2008-04-09T16:34:02  <zenhase> hrhr
2008-04-09T16:34:03  <TheSheep> xorAxAx: you're doing it worng
2008-04-09T16:34:14  <TheSheep> gnorw
2008-04-09T16:34:54  <zenhase> TheSheep: i dunno how this article relates to what i've been saying?
2008-04-09T16:35:10  <zenhase> he even writes about 'putting data into the env, not apis'
2008-04-09T16:35:26  <zenhase> which is exactly what this webob stuff does
2008-04-09T16:35:30  <TheSheep> zenhase: it explicitly discourages passing anything 'required' into the env
2008-04-09T16:35:45  <zenhase> TheSheep: well, this is actually something i disagree with
2008-04-09T16:36:13  <TheSheep> zenhase: you're in minority :P
2008-04-09T16:36:14  <zenhase> you can't expect to build webapps with WSGI under the assumption that every part in the stack is 'optional'
2008-04-09T16:36:33  <zenhase> the WSGI would start becoming .. well .. not very useful
2008-04-09T16:36:51  <TheSheep> au contraire my friend!
2008-04-09T16:36:54  <zenhase> imo it's meant as a way to easily separate concerns
2008-04-09T16:37:18  <TheSheep> of course
2008-04-09T16:37:26  <TheSheep> so for example, you add an auth middleware
2008-04-09T16:37:38  <zenhase> yeah
2008-04-09T16:37:42  <TheSheep> and that auth middleware adds the username and group fileds to the env
2008-04-09T16:37:52  <zenhase> it adds some data. yes
2008-04-09T16:38:07  <TheSheep> but without that middleware present, moin should still work just fine -- treating all users as anonymous
2008-04-09T16:38:11  <TheSheep> same with session
2008-04-09T16:38:26  <damjan> session, caching are all good middlewares
2008-04-09T16:38:41  <TheSheep> the point is, they are *optional*
2008-04-09T16:38:59  <TheSheep> and replaceable
2008-04-09T16:39:07  <zenhase> TheSheep: well, try ripping out Routes, Beaker and WebOb out of Pylons
2008-04-09T16:39:25  <TheSheep> zenhase: that's why the article I linked to was written
2008-04-09T16:39:27  <damjan> I don't use Beaker in Pylons
2008-04-09T16:39:37  <zenhase> damjan: i know that it's possible
2008-04-09T16:39:40  <damjan> when I don't need it services
2008-04-09T16:39:49  <TheSheep> like using windows winthous explorer ;)
2008-04-09T16:40:20  <xorAxAx> damjan: well, but pylons doesnt work without, does it? :)
2008-04-09T16:40:21  <TheSheep> zenhase: but you do see the reason, right?
2008-04-09T16:41:25  <zenhase> TheSheep: i can understand what this article tries to convey
2008-04-09T16:41:52  <zenhase> TheSheep: but it is not exactly what i've been thinking about
2008-04-09T16:42:43  <TheSheep> yeah, I was pretty enthusiastic about wsgi until I stumbled upon it too :)
2008-04-09T16:42:50  <zenhase> TheSheep: you see, what i like about WSGI is that i can use things like Routes or Beaker as middlewares ... my application WILL depend on those and that is perfectly fine ... because i would not like to write those myself
2008-04-09T16:43:00  <TheSheep> I had a whole plan of restructuring my app ready
2008-04-09T16:43:08  <zenhase> they stay interchangeable
2008-04-09T16:43:37  <zenhase> because if i realize, that routes isn't the cool routing-tool i would like for my app, i change it
2008-04-09T16:43:52  <zenhase> the effort will be quite ... small
2008-04-09T16:44:15  <zenhase> in case of routing there is even a standard way of putting information into the env ... well almost standard
2008-04-09T16:44:26  <zenhase> this routing_args key
2008-04-09T16:46:11  <johill> what's wrong with exchanging information between layers anyway?
2008-04-09T16:46:22  <TheSheep> zenhase: the idea is that your app should work even when that key is not present
2008-04-09T16:46:39  <zenhase> TheSheep: you're getting me wrong
2008-04-09T16:47:03  <TheSheep> johill: the problem is with required layers with ad-hoc protocols
2008-04-09T16:47:10  <zenhase> TheSheep: my app in this scenario is written with such a middleware in place
2008-04-09T16:47:21  <zenhase> TheSheep: it DEPENDS on it
2008-04-09T16:47:29  <johill> TheSheep: I don't see it as layering but as building bricks
2008-04-09T16:47:35  <zenhase> because i don't want to write this particular piece of code myself
2008-04-09T16:47:46  <johill> TheSheep: you talk about brick layers in a wall too but you can't rip out the lower layer either
2008-04-09T16:47:51  <TheSheep> zenhase: then why do you cripple yourself and use wsgi internally when normal function calls are much more convenient and efficient?
2008-04-09T16:48:03  <TheSheep> zenhase: or do you plan inserting middleware *inside* your app?
2008-04-09T16:48:13  <johill> TheSheep: and wsgi offers you a mostly standard way of sharing bricks
2008-04-09T16:48:21  <TheSheep> johill: you can build the layer shorter
2008-04-09T16:48:23  <johill> TheSheep: you just have to chose the bricks you want to use and bild on top of that
2008-04-09T16:48:28  <johill> build
2008-04-09T16:48:33  <TheSheep> s/layer/wall
2008-04-09T16:48:33  <zenhase> TheSheep: because it's already there and WSGI gives a standard way to promote such data through layers
2008-04-09T16:48:40  <zenhase> TheSheep: therefore i use WSGI
2008-04-09T16:48:55  <johill> like you can build a wall from lego bricks or from regular bricks but you can't exchange one for the other within a wall (app)
2008-04-09T16:49:39  <johill> I think you're thinking that all layers must be exchangeable
2008-04-09T16:49:53  <zenhase> you cannot possibly achieve that
2008-04-09T16:50:03  <johill> while zenhase thinks that using wsgi is just a way to build a final app which consists of multiple wsgi layers quicker
2008-04-09T16:50:04  <zenhase> except when layers don't know anything about another
2008-04-09T16:50:11  <zenhase> s/another/each other
2008-04-09T16:50:17  <zenhase> but then you can't even pass data
2008-04-09T16:50:18  <johill> where the final app is actually a collection of wsgi objects
2008-04-09T16:50:20  <zenhase> NEVER
2008-04-09T16:50:43  <zenhase> johill: yeah, that's good summary of how i perceive wsgi
2008-04-09T16:50:45  <johill> zenhase: yes, I agree
2008-04-09T16:50:45  <xorAxAx> well, the layer interface needs to be generic
2008-04-09T16:50:57  <xorAxAx> then you get a nice composable result
2008-04-09T16:50:57  <johill> xorAxAx: that's icing, not the sugar cake
2008-04-09T16:51:01  <zenhase> xorAxAx: what do you mean 'more generic'?
2008-04-09T16:51:21  <johill> icing would be: you have session frameworks that all use a single key with the same meaning across each session/auth/... wsgi piece
2008-04-09T16:51:22  <xorAxAx> zenhase: generic as in "it looks like an interface somebody else would want to implement". compare the default env keys
2008-04-09T16:51:41  <xorAxAx> johill: it may not be the same key
2008-04-09T16:51:47  <johill> that would be sort of like an environment key spec
2008-04-09T16:51:47  <xorAxAx> otherwise you have the composability issue
2008-04-09T16:52:07  <johill> why would you want two session apps to be composed?
2008-04-09T16:52:16  <johill> I was thinking of exchangeability instead
2008-04-09T16:52:32  <xorAxAx> johill: because you might need two sessions
2008-04-09T16:52:36  <xorAxAx> on different levels etc.
2008-04-09T16:52:45  <xorAxAx> one app running on / and the other on /myapp
2008-04-09T16:52:46  <zenhase> i actually agree with xorAxAx here
2008-04-09T16:53:11  <xorAxAx> of course that always smells a bit weird but is important for flexible solutions :)
2008-04-09T16:53:20  <zenhase> yeah
2008-04-09T16:53:38  <johill> xorAxAx: ok, so the spec would just define the contents of a 'sessoin key', not the name
2008-04-09T16:54:01  <zenhase> for example
2008-04-09T16:54:14  <zenhase> but then
2008-04-09T16:54:25  <zenhase> if you start defining standards for the sessions
2008-04-09T16:54:32  <zenhase> then for auth
2008-04-09T16:54:38  <xorAxAx> johill: how about having a single key but some kind of smart object as value?
2008-04-09T16:54:41  <zenhase> and whatever else you can think of
2008-04-09T16:54:43  <xorAxAx> a dict of sessions
2008-04-09T16:55:02  <zenhase> you kind of make WSGI a framework with a very narrow mindset
2008-04-09T16:55:18  <johill> xorAxAx: sure, whatever, but that would still be a 'session key spec'
2008-04-09T16:55:23  <zenhase> things get actually more complicated in such a world
2008-04-09T16:55:26  <xorAxAx> johill: yes, thats important
2008-04-09T16:55:36  <xorAxAx> johill: if you want to let layers communicate
2008-04-09T16:55:37  <johill> and as such, just one possible use of wsgi, where another is just doing it ad-hoc ;)
2008-04-09T16:56:14  <johill> and you need to have the key configurable in each higher layer
2008-04-09T16:56:28  <johill> eh, in each consumer *and* each producer
2008-04-09T16:56:47  <zenhase> sounds awful
2008-04-09T16:57:09  <xorAxAx> johill: in my model? no
2008-04-09T16:57:21  <johill> explain why not?
2008-04-09T16:57:33  <johill> at least in the producer
2008-04-09T16:57:37  <zenhase> xorAxAx wants non-conflicting environments ;)
2008-04-09T16:57:45  <johill> but in practice, in teh consumer too, since one consumer will not have it configurable ;)
2008-04-09T16:57:47  <zenhase> perhaps similar to scoping in programming-languages
2008-04-09T16:58:01  <xorAxAx> johill: well, because you will have a spec in most cases :)
2008-04-09T16:58:38  <TheSheep> how about having the session middleware rename a key if there is a conflict?
2008-04-09T16:58:58  <damjan> I think this discussion has become too theoretical
2008-04-09T17:00:15  <zenhase> damjan: yep
2008-04-09T17:00:31  <zenhase> TheSheep: oh yeah, even more code in the session middleware :)
2008-04-09T17:00:38  <xorAxAx> damjan: you havent developed an enterprise application :-)
2008-04-09T17:00:57  <xorAxAx> damjan: where you wrap things 10 times to hide every issue :)
2008-04-09T17:00:59  <mib_11nqky> ThomasWaldmann: hi, i'm back with a 1.7 installed to check LDAP code
2008-04-09T17:01:03  <xorAxAx> i wonder how zope solves this btw :)
2008-04-09T17:01:15  <johill> zope solves anything?
2008-04-09T17:01:15  <mib_11nqky> what exactly do you want me to test?
2008-04-09T17:01:30  <mib_11nqky> i have several ldap servers but all with same conf
2008-04-09T17:01:34  <zenhase> xorAxAx: yeah, like in java
2008-04-09T17:01:42  <xorAxAx> johill: yes, "Any problem in computer science can be solved with another layer of indirection. But that usually will create another problem." -- david wheeler
2008-04-09T17:01:44  <zenhase> xorAxAx: where you even wrap your programming language
2008-04-09T17:01:56  <zenhase> xorAxAx: write xml or annotations ... instead of java
2008-04-09T17:02:01  <xorAxAx> yep
2008-04-09T17:02:11  <xorAxAx> well, metaprogramming is fine, xml for config is not :)
2008-04-09T17:02:41  <johill> speaking of xml, I think that parser/formatter application is too xml centered :/ but I gues we'll see
2008-04-09T17:03:24  <zenhase> johill: xml-centered?
2008-04-09T17:05:26  <johill> dom != xml imo, but that line seems rather blurred
2008-04-09T17:05:44  <xorAxAx> the dom is completly xml unrelated
2008-04-09T17:06:01  <johill> (I guess I'm just wary of people who mention xml whenever possible)
2008-04-09T17:06:16  <TheSheep> nobody expects the Spanish XML!
2008-04-09T17:06:18  <zenhase> of course ;)
2008-04-09T17:06:22  <zenhase> TheSheep: lol
2008-04-09T17:06:43  <zenhase> TheSheep: i almost spit my tea across my laptop ... thanks a lot :)
2008-04-09T17:06:47  <TheSheep> no, wait, it should be:
2008-04-09T17:07:02  <waldi> TheSheep: Nobody expects the Spanish Inquisition!
2008-04-09T17:07:05  <TheSheep> how to recognize various kinds of DOM from quite far away: number one, XML
2008-04-09T17:08:04  <zenhase> the st. peters DOMe
2008-04-09T17:08:39  <johill> waldi: what do you actually plan to do with the xml representation?
2008-04-09T17:09:55  <zenhase> the only thing i could think of, is having it output to the user ... if he deliberately wants XML
2008-04-09T17:09:56  <waldi> johill: nothing yet
2008-04-09T17:10:17  <zenhase> other than that, you won't need any xml in the DOM process
2008-04-09T17:10:34  <waldi> zenhase: xhtml is also xml
2008-04-09T17:10:38  <johill> zenhase: I just don't see what use the moin-internal dom tree is in xml
2008-04-09T17:10:42  <zenhase> waldi: well, yes
2008-04-09T17:11:03  <zenhase> waldi: but i was thinking of a more 'abstract' xml representation
2008-04-09T17:11:24  <zenhase> waldi: since i am no mentor, i don't actually know, what you wrote in your application :)
2008-04-09T17:11:26  <xorAxAx> doesnt make much sense to use some interchange format for internal cache represenation if there is not a single advantage
2008-04-09T17:11:43  <zenhase> xorAxAx: agreed
2008-04-09T17:11:45  <johill> xorAxAx: using xml for caching would defeat the purpose of caching ;)
2008-04-09T17:12:03  <zenhase> pickled dom-object would be lot faster and cooler :)
2008-04-09T17:12:18  <johill> yeah I did it that way
2008-04-09T17:12:50  <waldi> zenhase: did you compare the speed of the pickle and the expat parser?
2008-04-09T17:13:17  <zenhase> waldi: no i didn't
2008-04-09T17:13:35  <zenhase> waldi: but since expat generates events which have to be parsed into a dom-tree first ...
2008-04-09T17:13:35  <waldi> zenhase: so how can you be sure that it is faster?
2008-04-09T17:13:52  * xorAxAx bets that pickle will win
2008-04-09T17:13:53  <zenhase> waldi: intuition because of how expat works and how pickle works
2008-04-09T17:14:20  <waldi> well, lets check
2008-04-09T17:14:21  <zenhase> pickle already is a tree
2008-04-09T17:14:31  <zenhase> or graph in more general terms
2008-04-09T17:14:46  <waldi> zenhase: no, pickle is a serialized representation
2008-04-09T17:14:57  <johill> by that terms, xml is serialised too
2008-04-09T17:15:06  <zenhase> yeah
2008-04-09T17:15:10  <xorAxAx> pickle is a PDA
2008-04-09T17:15:18  <johill> so that's moot :)
2008-04-09T17:15:24  <zenhase> xorAxAx: push down automaton?
2008-04-09T17:16:17  <johill> waldi: just the strcmp()s required for xml alone probably have enough overhead to make pickle beat it
2008-04-09T17:16:43  <xorAxAx> zenhase: yes
2008-04-09T17:16:48  <zenhase> function call overhead for your custom start_tag/end_tag implementations ...
2008-04-09T17:17:10  <zenhase> i mean building a dom-tree from that is not super-easy
2008-04-09T17:17:17  <johill> but hey, you can easily compare it by hacking xml into my code
2008-04-09T17:17:21  <johill> should be trivial
2008-04-09T17:17:22  <waldi> johill: all xml parsers i know don't use strcmp
2008-04-09T17:17:26  <johill> the dom tree objects are already there etc.
2008-04-09T17:17:28  <zenhase> also you have to go through all __init__ or __new__ stuff while creating the objects
2008-04-09T17:17:32  <johill> waldi: huh?
2008-04-09T17:17:43  <TheSheep> http://orangecow.org/pythonet/sketches/TheLarch.gif <-- Number one, the DOM
2008-04-09T17:17:46  <zenhase> while pickle, as far as i understand just brings in the state and class ofthe objects
2008-04-09T17:17:51  <johill> waldi: how else do they know that <abc> represents some dclass in python?
2008-04-09T17:18:39  <zenhase> hmm
2008-04-09T17:19:12  <xorAxAx> johill: he wants to use etree and not distinct classes
2008-04-09T17:19:25  <zenhase> hmm
2008-04-09T17:19:31  <johill> xorAxAx: hmm. that's no use for an internal representation though
2008-04-09T17:19:32  <zenhase> is this sensible?
2008-04-09T17:19:32  <xorAxAx> you only get simple attributes, no DAG-like references etc.
2008-04-09T17:19:43  <johill> (or you need strcmp() everwhere for internal use)
2008-04-09T17:19:52  <xorAxAx> johill: explain it to him, i am also still waiting for the compatiblity stuff
2008-04-09T17:20:03  <zenhase> i think a custom set of DOM classes would be better
2008-04-09T17:20:14  <johill> zenhase: that's what I implemented way back when I played with that
2008-04-09T17:20:20  <johill> zenhase: http://git.sipsolutions.net/dom.git/
2008-04-09T17:20:21  <zenhase> johill: yeah i saw it
2008-04-09T17:21:00  <johill> xorAxAx: not sure how to explain that, just experience, I played with that stuff and not having classes for macros would suck
2008-04-09T17:21:29  <xorAxAx> johill: yes, the traversal would work differently and the missing dag like refs could be a problem too
2008-04-09T17:22:00  <johill> well basically you'd have to store macro=True in a node or so and then macro_function=xyz?
2008-04-09T17:22:11  <johill> that seems odd opposed to just having a macro class
2008-04-09T17:22:17  <johill> waldi: have you looked at the stuff I did?
2008-04-09T17:22:17  <zenhase> hmm
2008-04-09T17:23:33  <dreimark> arrgh http://groups.google.com/groups/mysubs is broken
2008-04-09T17:23:43  <waldi> its factor 5
2008-04-09T17:23:53  <waldi> in my testcase
2008-04-09T17:23:58  <johill> hm? what is factor 5?
2008-04-09T17:23:58  <zenhase> waldi: what's factor 5
2008-04-09T17:23:59  <zenhase> ?
2008-04-09T17:24:25  <xorAxAx> waldi: not very useful hint, please provide code, please discuss
2008-04-09T17:24:29  <xorAxAx> please participate
2008-04-09T17:25:26  <dreimark> bbl
2008-04-09T17:28:38  <waldi> zenhase: the time needed to parse a xml fragment compared to the time needed to parse the pickled tree
2008-04-09T17:29:21  <johill> which was 5x faster, and what sort of representation did you use?
2008-04-09T17:29:58  <johill> if you just have a tree with generic "xml-node" objects with attributes, I can see xml being faster, but I think that sort of thing isn't a useful internal representation
2008-04-09T17:30:06  <waldi> johill: I use elementtree
2008-04-09T17:30:21  <johill> so what's the internal representation of say a macro node?
2008-04-09T17:30:35  <johill> is it an XmlNode() with name='macro' or such?
2008-04-09T17:30:43  <johill> having a MacroNode() would be much more useful imho
2008-04-09T17:33:45  <waldi> johill: this gets nasty if you support an undefined set of node types
2008-04-09T17:33:56  <johill> why undefined?
2008-04-09T17:34:13  <zenhase> waldi: and what did you pickle?
2008-04-09T17:34:16  <waldi> because someone may dump mathml into it?
2008-04-09T17:34:39  <waldi> zenhase: the elementtree object
2008-04-09T17:34:54  <zenhase> waldi: well, are they lightweight?
2008-04-09T17:34:55  <johill> waldi: where does the mathml come from?
2008-04-09T17:35:12  <johill> waldi: and why does it matter?
2008-04-09T17:35:26  <johill> waldi: imo you're optimising for the output rather than the internal handling
2008-04-09T17:35:43  <johill> using elementtree nodes internally will get to be a mess of strcmp()s all over
2008-04-09T17:35:47  <zenhase> johill: i would be against specific classes for those nodes too
2008-04-09T17:35:53  <waldi> johill: for now i don't optimizing anything
2008-04-09T17:36:15  <perryclar1> httpd: Objects/stringobject.c:105: PyString_FromString: Assertion `str != ((void *)0)' failed.
2008-04-09T17:36:16  <perryclar1> [Wed Apr 09 11:34:59 2008] [error] [client 192.168.0.62] Premature end of script headers: moin.wsgi, referer: http://192.168.0.116/mywiki/xTupleWiki?action=edit&editor=gui
2008-04-09T17:36:38  <zenhase> johill: i think you can quite easily represent the information with a generic dom-tree ... and let the walker (formatter) figure out, what to do with a node
2008-04-09T17:36:39  <waldi> johill: it is possible to replace the name with a special class, which can be compared with a object equivalenz
2008-04-09T17:36:44  <perryclar1> Ok, I'm finally getting around to making changes to my moin install...
2008-04-09T17:36:58  <johill> zenhase: you don't need to have specific classes for everything, but you can work much nicer with a tree that has a MacroNode rather than an XmlNode with name=='macro'
2008-04-09T17:37:12  <zenhase> johill: why?
2008-04-09T17:37:29  <waldi> johill: in one case you compare strings, in the other you compare objects
2008-04-09T17:37:31  <johill> zenhase: because then you can just invoke the MacroNode's .work function
2008-04-09T17:37:33  <zenhase> johill: difference between isinstance(node, MacroNode) and node.tag == 'macro'?
2008-04-09T17:37:47  <johill> zenhase: not only, also think about the actual macro that is invoked
2008-04-09T17:38:01  <zenhase> johill: oh, i don't really know if a DOM-tree should have specific node-methods
2008-04-09T17:38:04  <johill> the way macros worked in my dom stuff was that they just returned an object that they wanted inserted
2008-04-09T17:38:20  <johill> and then expanding the macros was just walking over the tree and calling all the expand methods
2008-04-09T17:38:33  <zenhase> hmm
2008-04-09T17:38:43  <johill> that's much nicer imho than having each macro implement a tree walker that checks for presence of its own macro special string
2008-04-09T17:38:50  <waldi> johill: so you replace macro(node) with node.macro()
2008-04-09T17:39:02  <waldi> johill: hä?
2008-04-09T17:39:30  <zenhase> johill: well no .. the generic walker sees in the tag name and attributes which macro to invoke there
2008-04-09T17:39:36  <waldi> johill: there is one walker which calls the macros. you don't want to have X tree walkers
2008-04-09T17:39:43  <johill> I guess yours is just "for each node: if node.name == 'macro': macros[node.macroname]()"
2008-04-09T17:40:45  <johill> while mine was mostly just "for each node: if isinstance(node, Expandable): node.expand()"
2008-04-09T17:40:59  <zenhase> hmm
2008-04-09T17:41:03  <johill> I suppose you're putting the macro lookup work into a macro formatter
2008-04-09T17:41:23  <johill> while I have that in the parser, the parser inserts the macro node into the output tree, and that can get cached
2008-04-09T17:41:32  <waldi> no real difference, except that you push all the working stuff into the tree, while I intend to use the tree as a lowlevel data structure
2008-04-09T17:41:35  <xorAxAx> johill: its not only about that. its about expressivity in the attribs
2008-04-09T17:41:42  <johill> xorAxAx: ?
2008-04-09T17:41:44  <xorAxAx> data types
2008-04-09T17:41:53  <xorAxAx> which data types does etree support?
2008-04-09T17:41:58  <xorAxAx> besides strings
2008-04-09T17:41:59  <johill> strings?
2008-04-09T17:42:03  <johill> unicode? :)
2008-04-09T17:42:09  <xorAxAx> well, you might have integers, dates etc.
2008-04-09T17:42:14  <johill> doubt it
2008-04-09T17:42:24  <xorAxAx> sure
2008-04-09T17:42:29  <johill> not without an elaborate scheme anyway
2008-04-09T17:42:31  <xorAxAx> in some cases you will :)
2008-04-09T17:42:50  <johill> hm, yeah, I guess
2008-04-09T17:43:21  <johill> waldi: yes, indeed, and I think that makes a lot of code more expressive because it just has to call 'rootnode.expand()' to expand all macros in the tree
2008-04-09T17:43:35  <johill> (which internally recurses through the tree)
2008-04-09T17:45:35  <waldi> johill: what happens if you want to change the macro handling to work in multiple steps? how do you support new nodes without touching 3 things?
2008-04-09T17:45:37  <johill> maybe it's just me, but I don't really like working with 'raw' trees
2008-04-09T17:46:01  <johill> waldi: hm? one question at a time
2008-04-09T17:46:14  <waldi> johill: that was two questions
2008-04-09T17:46:23  <johill> waldi: I designed macro handling in a way that macros could return themselves
2008-04-09T17:46:26  <johill> macro nodes, that is
2008-04-09T17:46:35  <johill> also, I have macro expansion dependencies
2008-04-09T17:47:03  <johill> (the risk is that macro expansion never finishes but you just limit it)
2008-04-09T17:47:15  <johill> also, I did a pre-cache step
2008-04-09T17:47:33  <waldi> xorAxAx: elementtree as included in python only allows text as attributes and text
2008-04-09T17:47:37  <johill> new nodes aren't really much of a problem since the formatter just calls rootnode.format(self)
2008-04-09T17:47:47  <waldi> if you write it as xml
2008-04-09T17:47:48  <johill> well sort of
2008-04-09T17:47:59  <johill> and then the formatter checks the classes
2008-04-09T17:48:10  <johill> if you add new classes, you just have to introduce new formatter code, but that's always true
2008-04-09T17:48:36  <johill> not sure where you pulled the "3" from
2008-04-09T17:48:57  <waldi> parser, nodes, formatter?
2008-04-09T17:50:26  <johill> well parser anyway
2008-04-09T17:50:30  <johill> formatter for sure too
2008-04-09T17:50:44  <johill> and introducing a node is the same as introducing a new allowed tag
2008-04-09T17:50:53  <johill> not sure why you think it makes a difference at that point
2008-04-09T17:53:54  <xorAxAx> waldi: ah, ok
2008-04-09T17:55:16  <johill> well, I have to go
2008-04-09T18:00:23  <waldi> well, I'll need to modify ElementTree anyway to produce usable XHTML which is understandable by non-xml parsers
2008-04-09T18:00:57  <zenhase> o_O
2008-04-09T18:02:14  <zenhase> is it because of textnodes?
2008-04-09T18:02:28  <waldi> no, namespace resolution
2008-04-09T18:02:34  <zenhase> hmm
2008-04-09T18:03:06  <zenhase> i think having a 'forked' etree isn't going to be very nice :o
2008-04-09T18:03:32  <waldi> yeah, the namespace thing is "fixed" in etree 1.3
2008-04-09T18:04:23  <zenhase> hmm ok
2008-04-09T18:04:32  <waldi> and textnodes is a problem
2008-04-09T18:06:19  <waldi> the input "<a:p>Lorem <a:macro type="test"/> Ipsum</a:p>" produces something like: Element(text="Lorem ", children=[Element(name="macro"..., leaf=" Ipsum")]
2008-04-09T18:06:48  <waldi> no way to replace the macro node without fiddling around with the included text
2008-04-09T18:08:19  <waldi> or just copying the node somewhere else
2008-04-09T18:42:19  <zenhase> but this isn't going to change in etree, is it?
2008-04-09T18:44:46  <waldi> i think so
2008-04-09T18:45:45  <waldi> now its the question what will work better: live with the drawbacks or fork it and be able to extend it
2008-04-09T18:50:34  <zenhase> or write your own DOM-tree
2008-04-09T18:55:25  <waldi> etree even uses old-style classes
2008-04-09T18:58:45  <zenhase> i dunno
2008-04-09T18:58:57  <zenhase> how much of the functionality of etree would you need?
2008-04-09T18:59:37  <zenhase> in genshi there is some nice builder-code for something quite like dom-trees
2008-04-09T18:59:59  <zenhase> it's very small and clean
2008-04-09T19:03:04  <zenhase> i gotta go
2008-04-09T19:03:08  <zenhase> cu later
2008-04-09T19:23:39  <ThomasWaldmann> waldi: are at lulug meeting later?
2008-04-09T19:24:10  <waldi> yes
2008-04-09T19:26:02  * ThomasWaldmann too
2008-04-09T21:21:58  <perryclar1> Hi ThomasWaldmann
2008-04-09T21:22:41  <perryclar1> I've installed Moin-1.7-docbook from mar 30th or 29th, configured it for wsgi 2.0
2008-04-09T21:23:00  <perryclar1> and I'm getting httpd: Objects/stringobject.c:105: PyString_FromString: Assertion `str != ((void *)0)' failed.
2008-04-09T21:23:00  <perryclar1> [Wed Apr 09 15:20:59 2008] [error] [client 192.168.0.62] Premature end of script headers: moin.wsgi, referer: http://192.168.0.116/mywiki/Test2
2008-04-09T21:23:00  <perryclar1> [Wed Apr 09 15:20:59 2008] [notice] child pid 1500 exit signal Aborted (6)
2008-04-09T21:23:15  <perryclar1> when I try to save. :(
2008-04-09T21:23:18  <xorAxAx> moin got a preliminary slot count of 4
2008-04-09T21:23:26  <xorAxAx> perryclar1: this likely sounds like a question for #moin
2008-04-09T21:23:41  <xorAxAx> wikimedia got 5
2008-04-09T21:24:09  <xorAxAx> the minimum slot count is 1
2008-04-09T21:24:10  <perryclar1> k, thx
2008-04-09T21:27:08  <xorAxAx> mercurial has got 3 slots
2008-04-09T22:51:01  <dennda> xorAxAx: uh
2008-04-09T22:51:07  <dennda> sounds not that much
2008-04-09T22:51:17  <dennda> especially since there were more applications this year than last year
2008-04-09T22:54:03  <xorAxAx> yeah, but also more orgs
2008-04-09T23:00:59  <dennda> I meant "more applications for moin"
2008-04-09T23:06:16  <zenhase> xorAxAx: you can see all slot counts as a mentor?
2008-04-09T23:06:21  <zenhase> xorAxAx: or did you ask them?
2008-04-09T23:07:43  <dennda> looks like it's an open process
2008-04-09T23:07:44  <xorAxAx> zenhase: mentors mailinglist
2008-04-09T23:07:47  <xorAxAx> dennda: i know
2008-04-09T23:19:32  <xorAxAx> It's come to my attention that our project has become duplicated and
2008-04-09T23:19:32  <xorAxAx> different mentors are seeing different results.
2008-04-09T23:19:32  <xorAxAx> There seems to be an argouml project and an ArgoUML project.
2008-04-09T23:19:34  <xorAxAx> LOL
2008-04-09T23:21:05  <zenhase> hmm :)
2008-04-09T23:21:42  <zenhase> FreeBSD, fREEbsd, FreeSBIE ...
2008-04-09T23:22:26  <zenhase> (this is not intended to be hold against freebsd ... it's just because i am setting up a freebsd server in qemu right now)
2008-04-09T23:22:36  <dennda> xorAxAx: hm? different count of preliminary slots?
2008-04-09T23:23:04  <xorAxAx> dennda: no, different orgs i nthe system
2008-04-09T23:23:08  <xorAxAx> brain split symptom
2008-04-09T23:23:16  <xorAxAx> the left side doesnt know what the right side does :)
2008-04-09T23:23:23  <dennda> heh
2008-04-09T23:23:52  <zenhase> in the 4th installment of GSoC and still such strange bugs in the webapp ;)
2008-04-09T23:24:45  * zenhase files another GSoC application 'Fix GSoC webapp'
2008-04-09T23:24:56  <dennda> too late
2008-04-09T23:24:58  <zenhase> i wonder if it's python too
2008-04-09T23:25:55  <cb22> moin
2008-04-09T23:28:54  <zenhase> moin cb22
2008-04-09T23:29:54  <xorAxAx> zenhase: it is
2008-04-09T23:30:03  <xorAxAx> running with the swig bigtable wrappers
2008-04-09T23:30:37  <gizmach> moin
2008-04-09T23:30:39  <xorAxAx> who wants to read my assignment pdf that i just finished for my fellow students? :)
2008-04-09T23:30:42  <zenhase> xorAxAx: swig bigtable wrappers?
2008-04-09T23:30:54  <zenhase> xorAxAx: i want oto
2008-04-09T23:31:06  <xorAxAx> zenhase: they use SWIG to wrap c++ code for usage in python. and bigtable is their storage stuff written in c++
2008-04-09T23:31:06  <gizmach> xorAxAx: what kind of assifment ?
2008-04-09T23:31:15  <xorAxAx> gizmach: concepts and methods of system software :)
2008-04-09T23:31:20  <xorAxAx> gizmach: its german, though :)
2008-04-09T23:31:38  <zenhase> xorAxAx: ah, it's the datastore for their map-reduce-stuff?
2008-04-09T23:31:40  <gizmach> xorAxAx: :) oh that's a problem then
2008-04-09T23:31:58  <xorAxAx> zenhase: yes
2008-04-09T23:32:09  <zenhase> anyway, i don't like swig :o
2008-04-09T23:32:17  <gizmach> xorAxAx: but I like to read others paper work.
2008-04-09T23:32:37  <xorAxAx> zenhase: mail address? :)
2008-04-09T23:32:49  <xorAxAx> gizmach: maybe your german is still good enough :)
2008-04-09T23:33:17  <zenhase> xorAxAx: florian.krupicka@googlemail.com
2008-04-09T23:33:40  <xorAxAx> now you burned it :)
2008-04-09T23:33:55  <zenhase> hmm?
2008-04-09T23:33:59  <gizmach> xorAxAx: you could send it to me :) I could try :) also I could learn how to say some technical stuf in german
2008-04-09T23:34:01  <xorAxAx> spam bots will se it
2008-04-09T23:34:08  <gizmach> :)
2008-04-09T23:34:18  <zenhase> xorAxAx: so what? it's google anti spam protected ;)
2008-04-09T23:34:19  <gizmach> name.surname@gmail
2008-04-09T23:34:24  <gizmach> :)
2008-04-09T23:34:26  <xorAxAx> gizmach: your address? :)
2008-04-09T23:35:09  <gizmach> my addres <name>.<surname>atgmail :):)
2008-04-09T23:36:21  <xorAxAx> ah, i thought you were chuckling about zenhase's address
2008-04-09T23:36:26  <zenhase> xorAxAx: honestly, i don't really care about spam anymore
2008-04-09T23:37:15  <zenhase> this gmail-account isn't very spammed yet (despite the address being on display on the moin-wiki for some time)
2008-04-09T23:37:39  <zenhase> my personal account gets flooded mainly via my dorm-address
2008-04-09T23:37:40  <gizmach> well, a bit :)
2008-04-09T23:37:43  <zenhase> it's really strange
2008-04-09T23:38:07  <xorAxAx> sent
2008-04-09T23:38:15  <gizmach> xorAxAx: :) received
2008-04-09T23:39:45  <gizmach> xorAxAx: well I understand some things at leaset POP R3 :)
2008-04-09T23:40:22  <xorAxAx> hehe, have fun figuring out what the code does
2008-04-09T23:40:34  * gizmach thinks about days she was playing with tutor and "What" :D
2008-04-09T23:41:43  * xorAxAx starts with the next assignment :)
2008-04-09T23:43:29  <zenhase> xorAxAx: i didn't analyse it completely
2008-04-09T23:43:37  <zenhase> xorAxAx: but i would have a quick guess what it is
2008-04-09T23:43:37  <waldi> ThomasWaldmann: i just thought about, it is not possible to make the text node change to ElementTree without breaking the interface
2008-04-09T23:46:46  <xorAxAx> zenhase: any idea? :)
2008-04-09T23:46:50  <zenhase> xorAxAx: ackermann?
2008-04-09T23:46:52  <xorAxAx> yes
2008-04-09T23:46:58  <xorAxAx> slightly modified
2008-04-09T23:46:59  <zenhase> nice
2008-04-09T23:47:15  <zenhase> it was just an intuition
2008-04-09T23:47:22  <xorAxAx> to check whether a particular person stole the code from somewhere
2008-04-09T23:47:42  <zenhase> by the way it worked on it's two arguments in the first few lines of code

MoinMoin: MoinMoinChat/Logs/moin-dev/2008-04-09 (last edited 2008-04-08 22:00:02 by IrcLogImporter)