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)