--- Log opened Wed Nov 10 00:00:36 2010 |
00:18 | | Attilla [Some.Dude@Nightstar-cc5a875c.three.co.uk] has quit [[NS] Quit: ] |
00:32 | | RichardBarrell [mycatverbs@Nightstar-3b2c2db2.bethere.co.uk] has quit [[NS] Quit: sleep] |
00:53 | | Orthia [orthianz@Nightstar-0cd76b04.xnet.co.nz] has quit [Ping timeout: 121 seconds] |
01:01 | | Vornicus-Latens is now known as Vornicus |
01:07 | | AnnoDomini [annodomini@Nightstar-33bac7ca.adsl.tpnet.pl] has quit [[NS] Quit: leaving] |
01:08 | | Thaqui [Thaqui@27B34E.D54D49.F53FA1.6A113C] has quit [Connection closed] |
01:16 | | Derakon[AFK] is now known as Derakon |
01:34 | | Orthia [orthianz@Nightstar-004c0a91.xnet.co.nz] has joined #code |
01:39 | | Stalker [Z@3A600C.A966FF.5BF32D.8E7ABA] has quit [Ping timeout: 121 seconds] |
02:05 | | Syloqs-AFH [Syloq@NetworkAdministrator.Nightstar.Net] has quit [Connection reset by peer] |
02:14 | | Syloqs_AFH [Syloq@NetworkAdministrator.Nightstar.Net] has joined #code |
02:16 | | Syloqs_AFH is now known as Syloqs-AFH |
03:00 | | Rhamphoryncus [rhamph@Nightstar-473f8685.abhsia.telus.net] has joined #code |
05:20 | | cpux is now known as cpux[zzzz] |
06:06 | | kwsn [kwsn@Nightstar-ca9721ae.dyn.centurytel.net] has quit [[NS] Quit: BEEP BEEP IMMA JEEP] |
06:23 | | Derakon is now known as Derakon[AFK] |
06:28 | | Thaqui [Thaqui@27B34E.D54D49.F53FA1.6A113C] has joined #code |
07:03 | | celticminstrel [celticminstre@Nightstar-f8b608eb.cable.rogers.com] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!] |
07:03 | | celticminstrel [celticminstre@Nightstar-f8b608eb.cable.rogers.com] has joined #code |
07:04 | | celticminstrel [celticminstre@Nightstar-f8b608eb.cable.rogers.com] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!] |
07:45 | | You're now known as TheWatcher |
07:47 | | Syloqs-AFH is now known as Syloqs_AFH |
07:49 | | Kazriko [kaz@Nightstar-e09690fa.client.bresnan.net] has quit [Ping timeout: 121 seconds] |
08:18 | | Kazriko [kaz@Nightstar-e09690fa.client.bresnan.net] has joined #code |
08:18 | | mode/#code [+o Kazriko] by Reiver |
09:02 | | Vornicus is now known as Vornicus-Latens |
09:08 | | Anno[Laptop] [annodomini@Nightstar-33bac7ca.adsl.tpnet.pl] has joined #code |
09:21 | | Stalker [Z@3A600C.A966FF.5BF32D.8E7ABA] has joined #code |
10:01 | | Anno[Laptop] [annodomini@Nightstar-33bac7ca.adsl.tpnet.pl] has quit [[NS] Quit: leaving] |
10:24 | | Thaqui [Thaqui@27B34E.D54D49.F53FA1.6A113C] has quit [Client closed the connection] |
10:37 | | Anno[Laptop] [annodomini@F67919.F326B3.98D923.BDA7B6] has joined #code |
10:42 | | SmithKurosaki [Smith@Nightstar-8ff23d84.dsl.teksavvy.com] has quit [Ping timeout: 121 seconds] |
11:35 | | Kaura [kaura@Nightstar-fd82400d.snfc21.sbcglobal.net] has quit [Client closed the connection] |
11:58 | | Anno[Laptop] [annodomini@F67919.F326B3.98D923.BDA7B6] has quit [Ping timeout: 121 seconds] |
11:58 | | Anno[Laptop] [annodomini@F67919.F326B3.98D923.BDA7B6] has joined #code |
12:22 | | cpux[zzzz] is now known as cpux |
12:22 | | cpux is now known as shade_of_cpux |
12:46 | | kwsn [kwsn@Nightstar-ca9721ae.dyn.centurytel.net] has joined #code |
13:02 | | Zed [Zed@Nightstar-556ea8b5.or.comcast.net] has quit [[NS] Quit: Leaving] |
13:46 | | gnolam [lenin@Nightstar-38637aa0.priv.bahnhof.se] has joined #code |
13:48 | | Anno[Laptop] [annodomini@F67919.F326B3.98D923.BDA7B6] has quit [[NS] Quit: Home.] |
14:25 | | Anno[Laptop] [annodomini@Nightstar-55e0e691.adsl.tpnet.pl] has joined #code |
14:48 | | kwsn [kwsn@Nightstar-ca9721ae.dyn.centurytel.net] has quit [[NS] Quit: ... BOOSH] |
15:41 | <@jerith> | Bah. Race conditions. :-( |
15:46 | < EvilDarkLord> | Slippery track? |
15:52 | <@Namegduf> | Wow, GHC is HUGE. |
16:01 | <@ToxicFrog> | jerith: they're called race conditions because they make the code go faster ?? |
16:16 | <@Namegduf> | Same reason IE6 had all those speed holes. |
16:23 | < gnolam> | Naturally. More lightweight security = faster. |
16:53 | | celticminstrel [celticminst@Nightstar-f8b608eb.cable.rogers.com] has joined #code |
17:01 | | Stalker [Z@3A600C.A966FF.5BF32D.8E7ABA] has quit [Ping timeout: 121 seconds] |
17:02 | | Anno[Laptop] is now known as AnnoDomini |
17:45 | | Attilla [Some.Dude@Nightstar-f6a2934e.three.co.uk] has joined #code |
17:45 | | mode/#code [+o Attilla] by Reiver |
17:54 | | Stalker [Z@26ECB6.A4B64C.298B52.D80DA0] has joined #code |
18:40 | | Stalker [Z@26ECB6.A4B64C.298B52.D80DA0] has quit [Ping timeout: 121 seconds] |
18:50 | | Tarinaky [Tarinaky@Nightstar-f349ca6d.plus.com] has joined #code |
19:06 | <@ToxicFrog> | Welp. |
19:06 | <@ToxicFrog> | First A2 submission: doesn't build, student forgot to include source file. |
19:06 | <@jerith> | This thing crashes occasionally under load, but I think that's because it's creating too many temporary connections. |
19:06 | <@ToxicFrog> | Second one: tries to parse argv[0] as a flag, invalid cast from char to char* crashes argument parser, output file generator gleefully ignores array bounds and fills output file with garbage data. |
19:07 | <@jerith> | ToxicFrog: Are any of these people going to pass? |
19:08 | <@ToxicFrog> | If they show exemplary command of the theory, and it's just their code that's awful, they might pass with a terrible grade. |
19:08 | <@ToxicFrog> | Might. |
19:09 | <@ToxicFrog> | Hang on, let me check the marking scheme. |
19:09 | <@jerith> | If their code's that bad, they shouldn't. |
19:10 | < celticminstrel> | ...if they forgot to include the source file, then what did they include? :| |
19:10 | < celticminstrel> | And what do you mean by "as a flag"? |
19:10 | <@jerith> | That kind of thing really should be a gating function. If you can't submit a thing that will compile without errors, you fail. |
19:10 | < celticminstrel> | Hehe. |
19:11 | < celticminstrel> | I actually would disagree though. |
19:11 | <@jerith> | Disclaimer: my background is in engineering. |
19:11 | <@ToxicFrog> | celticminstrel: if you run it as './rbs -i -b100 -t25 -m100 -c80', it will complain that './rbs' isn't a valid option. |
19:11 | < celticminstrel> | Ah. XD |
19:12 | < celticminstrel> | Even if it doesn't compile, it's possible that most of their logic was right. |
19:12 | <@jerith> | Theory's important, but building a bridge that won't fall down is critical. |
19:12 | <@jerith> | Doesn't matter if their logic's right. It doesn't get that far. |
19:12 | < celticminstrel> | TF: So, what did the first assignment submission include if not the source file? |
19:12 | <@ToxicFrog> | If you then fix that, it tries to do some variant on atoi((char*)'1') |
19:12 | <@ToxicFrog> | With predictable results. |
19:12 | < celticminstrel> | Yeah... segfault. |
19:12 | <@jerith> | Nasal demons! |
19:14 | < celticminstrel> | So, what did they submit that wasn't the source file? |
19:14 | <@ToxicFrog> | Everything else. |
19:14 | <@ToxicFrog> | This assignment uses Visual Studio; they submitted all of the configuration files, test data, etc |
19:14 | <@ToxicFrog> | But the source is in ../../relax/relax/rbs.c, which is outside the directory they committed to svn. |
19:15 | <@ToxicFrog> | jerith: this course is about 60/40 theory/practice, so it's theoretically possible to pass just on theory. |
19:15 | < celticminstrel> | So they get zero, I assume. |
19:15 | <@ToxicFrog> | In practice, however, the theory consists largely of analyzing the practice. |
19:15 | <@ToxicFrog> | If you don't have a working program you will have difficulty analyzing its results. |
19:15 | <@ToxicFrog> | So basically the only way to pass if your program is broken is: |
19:16 | <@ToxicFrog> | (a) your program works for you, you just fucked up the submission or (a') you get the data from someone else and the prof permits this |
19:16 | <@ToxicFrog> | (b) everything you submit that isn't code is perfect or nearly so |
19:16 | <@ToxicFrog> | And I consider this unlikely. |
19:16 | <@jerith> | This is a software course, right? |
19:17 | <@ToxicFrog> | What do you mean by "software course"? |
19:17 | <@jerith> | It's part of a programming degree. It involves writing a bunch of code. |
19:18 | <@ToxicFrog> | It's Parallel Programming. The goal is to get people conversant with shared-memory and local-memory parallelism; Pilot, pthreads and OpenMP; designing parallel programs; debugging parallel code with gdb and IPS; and analyzing parallel programs to determine whether the parallelism is or is not helpful, and why. |
19:19 | <@jerith> | So yes, it's a software course. |
19:19 | <@jerith> | Pretty hard to debug code that doesn't compile. |
19:19 | <@ToxicFrog> | It's an elective in the CIS program (but may become mandatory next year). It involves writing a bunch of code but the code is incidental. It is assumed - although that assumption may have been tragically mistaken - that anyone who gets this far is already fluent in, at minimum, C, Python, and Java. |
19:20 | <@ToxicFrog> | What with it being a fourth-year course that lists 2750 as a prerequisite. |
19:21 | <@jerith> | So I think it's entirely reasonable to fail a student who demonstrates complete incompetence in actually submitting code that compiles. |
19:21 | <@ToxicFrog> | So do I, and in practice I think that'll be what happens. |
19:21 | <@ToxicFrog> | I do have a bit of sympathy for the first guy - this is the first time using VS for a lot of them and it's really easy to break. |
19:22 | <@ToxicFrog> | The second one, however...how do you make it to fourth year in the CS program and write code like this? |
19:22 | <@jerith> | More to the point, I don't think it's reasonable to waste the TA's time on something patently broken. |
19:24 | < celticminstrel> | I suppose that failing them for non-functional code isn't so bad in a fourth-year course... |
19:25 | < Tarinaky> | So. Aston have turned down my application. |
19:25 | < Tarinaky> | Kent have my transcript to look over. |
19:25 | < Tarinaky> | And Keele want a reference from Uni... which I won't be able to get. |
19:25 | < Tarinaky> | :/ |
19:25 | < Tarinaky> | My Uni prospects are not looking good. |
19:26 | <@jerith> | I haven't had any applications turned down because I haven't finished updating my CV yet. |
19:26 | < Tarinaky> | UCAS applications. |
19:26 | < Tarinaky> | Not job >.> |
19:26 | | * jerith nods. |
19:26 | < Tarinaky> | I got the job with the Royal Mail. |
19:26 | < Tarinaky> | So I'll be miss-delivering mail near you :p |
19:27 | <@jerith> | I'm not looking for university positions. I need to start looking for a job that doesn;t suck. |
19:27 | <@jerith> | I doubt that. We haven't been a British colony for over a hundred years. |
19:27 | <@ToxicFrog> | celticminstrel: the bit that shocks me is that they are submitting broken code in a fourth year course |
19:27 | <@ToxicFrog> | It should not be possible to take this course unless you've passed 1500, 2500 and 2750 (and all of their dependencies, recursively) |
19:28 | <@ToxicFrog> | How do you pass 1500 without knowing how to handle argv? |
19:28 | < celticminstrel> | Luck? |
19:28 | <@jerith> | As I said. If you're submitting broken code in this course, you're wasting everyone's time. |
19:29 | < celticminstrel> | Still, if it's only slightly broken due to them having an incomplete understanding of the concepts in the course, they shouldn't fail on that basis. |
19:29 | < Tarinaky> | When we say broken we mean trying to parse python as c++ level of borked? |
19:30 | <@jerith> | Sure. But if you can't even make the damned thing compile, you have no place there. |
19:30 | < celticminstrel> | But if they're doing things wrong that they should have learned in prerequisite courses, then they could fail on that basis. |
19:41 | <@ToxicFrog> | celticminstrel: the thing is, I can't assess whether they have an understanding of the concepts, because their code doesn't work and I'm not the one marking the papers. |
19:42 | <@ToxicFrog> | And yeah, argv handling in C is something you learn in first year. |
19:42 | <@Namegduf> | Fail them. |
19:42 | <@ToxicFrog> | Although while we're on the topic I'm kind of surprised that icc lets you cast from char to char* without so much as a warning. |
19:42 | < Tarinaky> | Anyway. Given I know how to handle argv... any suggestions on how to avoid working for the Royal Mail for the rest of my life? :/ |
19:43 | <@jerith> | Yes. Resign. |
19:43 | < Alek> | keep in mind, buying your way to passing grades is still alive and well. -_- |
19:43 | | * jerith flees. |
19:43 | <@Namegduf> | Er, wait. |
19:43 | < Alek> | I'm seeing stuff like "do my statistics homework" on craigslist. locally. -_- |
19:43 | < Alek> | and "do my reading for my thesis". |
19:43 | <@Namegduf> | You said they were trying to pass argv[0] as a char*? |
19:44 | <@jerith> | No, char. |
19:44 | <@Namegduf> | Ah. |
19:44 | <@Namegduf> | That makes more sense. |
19:44 | <@Namegduf> | You meant an invalid cast from char* to char. |
19:44 | <@jerith> | Erm, no. That's not it. |
19:44 | <@jerith> | Trying to parse argv[0] as if it were argv[1]. |
19:45 | <@jerith> | The char/char* cast was later. |
19:45 | <@Namegduf> | Oh, I see. |
19:47 | < Tarinaky> | Alek: I need to get into Uni and get the homework for that q.q |
19:47 | <@ToxicFrog> | They tried to parse argv[0] as argv[1]; if you fix that, it crashes because they then do (char*)argv[n][1] (rather than (char*)&argv[n][1]) and segfault. |
19:48 | <@ToxicFrog> | If you fix that, interactive mode doesn't work. |
19:48 | <@ToxicFrog> | And batch mode fills the file with garbage, check out this pseudocode: |
19:48 | <@ToxicFrog> | for each row in grid: |
19:49 | <@ToxicFrog> | copy a printable version of row into buf |
19:49 | <@ToxicFrog> | fwrite(buf, rowsize, rowsize, fout) |
19:49 | < Alek> | Taki: huh? |
19:49 | <@ToxicFrog> | And then I weep tears of blood. |
19:50 | < Tarinaky> | Alek: I'm applying for University. |
19:50 | < Tarinaky> | RemembeR? |
19:50 | < Alek> | no, I don't remember. |
19:50 | < Alek> | and I was talking about the person who can't code in a 4th year class. |
19:51 | < Tarinaky> | Ahh. |
19:51 | < Tarinaky> | My bad >.> |
19:51 | < Tarinaky> | He should ask for his money back then :p |
19:52 | | * ToxicFrog baps Tarinaky |
19:52 | < Tarinaky> | ToxicFrog: What? |
19:52 | <@ToxicFrog> | I hope you were joking. |
19:53 | < Tarinaky> | Joking about what? |
19:53 | < Tarinaky> | If he paid for a product that was not as advertised he should ask for his money back :p |
19:54 | <@ToxicFrog> | Ok, time to confiscate your kneecaps. |
19:54 | | * ToxicFrog gets out the crowbar. |
19:54 | < Tarinaky> | >.> |
19:54 | | * ToxicFrog confiscates Tarinaky's kneecaps, and rightly so |
19:55 | < Tarinaky> | But... but... if there's no standards for cheating on essays how will people like me get laid if they can't trade services/commodities? |
19:55 | < Tarinaky> | :p |
19:55 | < celticminstrel> | ToxicFrog: I expect the compiler supports a warning for integer-to-pointer casts but doesn't automatically enable it, or something. Also, what's wrong with the fwrite call? Parameters in the wrong order? |
19:56 | | Netsplit *.net <-> *.split quits: simon_, Orthia, @Kazriko, celticminstrel, kazrikna, AnnoDomini |
19:56 | <@jerith> | The two middle parameters are "size of item" and "number of items". |
19:56 | < Alek> | *coffs* |
19:56 | < Alek> | I need to work on: java, jscript, php, sql, and python. at a minimum. >_> |
19:57 | | Netsplit over, joins: Orthia, simon_, Kazriko, kazrikna, AnnoDomini, celticminstrel |
19:57 | | mode/#code [+o Kazriko] by Reiver |
19:57 | <@ToxicFrog> | Alek: you poor bastard. |
19:57 | | mode/#code [+o AnnoDomini] by Reiver |
19:57 | <@jerith> | celticminstrel: The two middle parameters are "size of item" and "number of items". |
19:57 | <@ToxicFrog> | celticminstrel: fwrite(buffer, size of each item in buffer, number of items in buffer, file handle) |
19:57 | < Alek> | well, those are the most common requirements for web designers to know in order to get work. >_> |
19:57 | < Alek> | besides html and css, of course. |
19:58 | < celticminstrel> | Ah, so the first rowsize should've been a sizeof expression. |
19:58 | <@ToxicFrog> | He could plausible have written either (1, rowsize) (write rowsize bytes) or (rowsize, 1) (write 1 row which is rowsize bytes long). |
19:58 | < Alek> | not all together, but combined from the various sets of requirements I've seen. |
19:59 | <@ToxicFrog> | As it happens he cheerfully dances off the end of the array and fills the output file with garbage. |
19:59 | <@ToxicFrog> | Alek: yeah, rarely all together, nor is that a comprehensive set. |
20:00 | <@ToxicFrog> | SQL and javascript are fairly universal, but apart from that, a site will tend to be Java or Python or PHP or Ruby or Perl or ASP.NET or Scala or Lua or...you get the idea. |
20:01 | < celticminstrel> | PHP seems to be the most common in my experience. |
20:01 | < celticminstrel> | That doesn't mean it's the best, though. |
20:02 | <@ToxicFrog> | (also, we seriously need to granularize "web designer", it's come to mean everything from "a UI designer who determines what the final site should look and behave like" to "a coder who implements invididual modules under direction from above with no design involved" to "an HTML/CSS developer who makes the output match up visually with the first guy's design") |
20:02 | <@ToxicFrog> | celticminstrel: I eagerly await the day when the last PHP site is buried in a swamp somewhere. |
20:03 | < celticminstrel> | Assuming no other constraints, I would probably choose Python for web programming. |
20:03 | <@jerith> | s/web// |
20:04 | < celticminstrel> | Well, yes, Python's good for regular programming too, but we were talking specifically about web programming here. |
20:04 | <@ToxicFrog> | celticminstrel: for me Scala would be a slam dunk if Lift, the de-facto standard web framework for Scala, were actually documented. |
20:05 | < celticminstrel> | My choice might be partly based on inertia (ie, I already know Python). <_< |
20:07 | | Thaqui [Thaqui@27B34E.D54D49.F53FA1.6A113C] has joined #code |
20:25 | < Alek> | those are the most common I've seen. well, also ASP.NET, yes. |
20:26 | < Alek> | Ruby, Scala, and Lua are among the less common I've seen, really. |
20:26 | | * Alek shrugs. |
20:27 | < Alek> | and isn't Lua also the language of mods? for WoW, and a bunch of other games? |
20:28 | < Alek> | in fact, that's probably the reason it's used - to make websites that can interface with said mods. |
20:28 | <@ToxicFrog> | Lua is the language of embedded scripting, which makes it extremely popular as a configuration/mod/extension language. |
20:28 | | * Alek shrugs. |
20:28 | < Alek> | or something. |
20:28 | <@ToxicFrog> | This has nothing to do with its use in web programming and I'm not sure why it would. |
20:28 | <@ToxicFrog> | It has a fairly mature coroutine-based web framework named Kepler (which I have not used, just heard vaguely good things about). |
20:28 | <@McMartin> | I don't think I'd want to write a webapp in Lua. |
20:29 | <@ToxicFrog> | Neither would I, to be honest; I like me some static typing, and if I'm going dynamic Django is a good deal more mature and polished than Kepler, enough so that I would choose that over coroutines. |
20:30 | < celticminstrel> | Django? |
20:30 | <@ToxicFrog> | The Python web framework. |
20:30 | <@McMartin> | That said, Scala's not ubiquitious, but it is high-profile. Twitter transitioned from (I think) Ruby to Scala a while back. |
20:30 | <@ToxicFrog> | Well, a python web framework, but arguably the most common. |
20:31 | | * McMartin would use Python or Java, himself, both from inertia and because Java of the various technologies presently scales the best. |
20:31 | <@jerith> | Twitter isn't the best role model... |
20:31 | <@ToxicFrog> | McMartin: scales in which sense? |
20:31 | <@McMartin> | Widely-deployed web middleware is pretty much Java's optimimum use case |
20:31 | < celticminstrel> | Django is not a standard Python module, I'm guessing? |
20:31 | <@McMartin> | TF: Multiple heterogeneous servers, performance after you do so, extremely heavy load on dynamic content. |
20:32 | <@McMartin> | It is enterprisey in all senses of the word, including the good ones. |
20:32 | <@jerith> | Django's a standard Python web framework. |
20:32 | | * ToxicFrog nods |
20:33 | <@ToxicFrog> | In general, anyplace where Java is usable, I would swap in Scala simply because it can do all of the same stuff and is so much more pleassant to use. |
20:33 | <@McMartin> | And because it's a strict powerup in terms of libraries. |
20:33 | <@McMartin> | (JDBC is seriously the finest database layer I've ever used) |
20:34 | <@McMartin> | (Not that I have anything reasonale to compare against. All competitors have been at PHP levels of 'you have got to be fucking kidding me') |
20:34 | < celticminstrel> | It's not standard if it's not on docs.python.org... |
20:35 | < celticminstrel> | (I'm using "standard" with the implication that if you have Python, you automatically have the module.) |
20:35 | <@jerith> | It's not in Python's stdlib. |
20:35 | <@jerith> | But then neither is your webapp. |
20:35 | <@ToxicFrog> | celticminstrel: it is a web library that uses Python. It is not a python standard library. |
20:35 | <@ToxicFrog> | You have a webserver, you install Django and Python, the server calls Django which calls your code. |
20:35 | <@ToxicFrog> | This is how most web frameworks work. |
20:36 | <@ToxicFrog> | McMartin: I've never used JDBC, what's it like? |
20:36 | <@McMartin> | By "standard" here, he means at the level of "If you're writing a webapp in Python, your first question is not 'should I use Django?' but rather 'do I have a compelling reason *not* to use Django?'" |
20:36 | <@jerith> | I don't think there are any languages that have webapp frameworks in the stdlib. |
20:37 | <@McMartin> | TF: It's mostly a standard "pass in query, get result" API, but because you're building the query out of objects in standard.java().obnox().style(), it's equally easy to use prepared statements with argument templates, and so people actually do it. |
20:37 | <@McMartin> | The flip side of this is that you can more or less test for SQL injection with grep. |
20:38 | <@ToxicFrog> | Oh sweet. |
20:38 | <@McMartin> | It's got interfaces available for all the major db applications, and the way you change DB backend is by altering a single string during initialization, because the backend is loaded via reflection. |
20:38 | <@ToxicFrog> | I wonder if Scala has a combinator library on top of that~ |
20:38 | <@McMartin> | (Granted, that latter is basically 'yeah, it's got decent 3rd party support') |
20:39 | <@McMartin> | It's their low-level DB system, and it's well-supported and highly structured. |
20:39 | < celticminstrel> | ...wait, does Django not run under Apache? |
20:39 | <@jerith> | Django runs in a Python interpreter. |
20:39 | <@McMartin> | You *can* do PHP-style build-a-string-and-escape-it-yourself silliness, but the other options are very nearly always good enough that you can say "any use of them is an error until proven otherwise" |
20:39 | <@jerith> | You generally use mod_wsgi or something. |
20:39 | <@McMartin> | Much like nonconstant format strings in C, really. |
20:40 | <@ToxicFrog> | celticminstrel: it runs in Python. Most webservers have some way of interfacing with Python in specific (and external languages in general), including Apache. |
20:40 | <@ToxicFrog> | (it also comes with a quick and dirty builtin server for testing) |
20:40 | < celticminstrel> | Ah, okay. |
20:41 | < celticminstrel> | So it'd still require mod_python. |
20:41 | <@jerith> | No. |
20:41 | <@jerith> | mod_wsgi. |
20:41 | < celticminstrel> | ... |
20:41 | <@jerith> | mod_python is horrible. |
20:41 | <@ToxicFrog> | Just read the docs! |
20:41 | < celticminstrel> | <_< |
20:41 | < celticminstrel> | I'm reading the tutorial here. |
20:42 | < celticminstrel> | What on earth does wsgi mean? |
20:42 | <@jerith> | It's like CGI. |
20:42 | <@jerith> | Except with WS instead of C. |
20:42 | <@McMartin> | Doesn't the C in CGI stand for "Common"? |
20:43 | < celticminstrel> | I can never remember what CGI stands for. |
20:43 | <@jerith> | Common Gateway Interface. |
20:43 | < celticminstrel> | And WS = Web Server? |
20:43 | <@jerith> | I think WSGI is Web Services Gateway Interface. |
20:43 | <@jerith> | But I'm not really sure. |
20:44 | < celticminstrel> | Oh good, it has postgresql support. |
20:44 | <@jerith> | http://wsgi.org/wsgi/What_is_WSGI |
20:45 | <@ToxicFrog> | celticminstrel: really, if you're just looking to satisfy curiosity about Django, it's easiest to just accept that it does work with Apache and start off using the builtin server for testing. |
21:03 | | SmithKurosaki [Smith@Nightstar-8ff23d84.dsl.teksavvy.com] has joined #code |
22:15 | | Netsplit *.net <-> *.split quits: @Derakon[AFK], simon_, Orthia, @AnnoDomini, celticminstrel, PinkFreud, Taki^, kazrikna, @Kazriko, @McMartin, (+2 more, use /NETSPLIT to show all of them) |
22:15 | | jerith [jerith@ServerAdministrator.Nightstar.Net] has quit [Operation timed out] |
22:15 | | gnolam [lenin@Nightstar-38637aa0.priv.bahnhof.se] has quit [Ping timeout: 121 seconds] |
22:15 | | shade_of_cpux [chatzilla@Nightstar-c978de34.dyn.optonline.net] has quit [Ping timeout: 121 seconds] |
22:15 | | ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has quit [Operation timed out] |
22:15 | | DBot [Reiver@Nightstar-237a311c.xnet.co.nz] has joined #code |
22:15 | | Netsplit over, joins: Thaqui, PinkFreud, Derakon[AFK], McMartin, Namegduf, AnnoDomini, celticminstrel |
22:15 | | NSGuest17128 [omegaboot@Nightstar-96006922.il.comcast.net] has joined #code |
22:15 | | Netsplit over, joins: Orthia, Taki^, kazrikna, simon_, Kazriko |
22:15 | | shade_of_cpux [chatzilla@Nightstar-c978de34.dyn.optonline.net] has joined #code |
22:15 | | ServerMode/#code [+ooooo Derakon[AFK] Namegduf AnnoDomini McMartin Kazriko] by *.Nightstar.Net |
22:15 | | gnolam [lenin@Nightstar-38637aa0.priv.bahnhof.se] has joined #code |
22:15 | | Attilla [Some.Dude@Nightstar-f6a2934e.three.co.uk] has quit [Ping timeout: 121 seconds] |
22:15 | | NSGuest17128 is now known as Chi |
22:15 | | Alek is now known as NSGuest41024 |
22:15 | | jerith [jerith@Nightstar-bf52129d.slipgate.za.net] has joined #code |
22:15 | | mode/#code [+o jerith] by Reiver |
22:15 | | ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has joined #code |
22:15 | | mode/#code [+o ToxicFrog] by Reiver |
22:16 | | NSGuest41024 [omegaboot@Nightstar-96006922.il.comcast.net] has quit [Ping timeout: 121 seconds] |
22:16 | | Attilla [Some.Dude@Nightstar-f6a2934e.three.co.uk] has joined #code |
22:16 | | mode/#code [+o Attilla] by Reiver |
22:16 | | DiceBot [Reiver@Nightstar-237a311c.xnet.co.nz] has quit [Ping timeout: 121 seconds] |
22:17 | | DBot is now known as DiceBot |
22:19 | | Chi is now known as Alek |
22:49 | | You're now known as TheWatcher[T-2] |
22:53 | | You're now known as TheWatcher[zZzZ] |
23:47 | | kwsn [kwsn@Nightstar-ca9721ae.dyn.centurytel.net] has joined #code |
--- Log closed Thu Nov 11 00:00:38 2010 |