--- Log opened Mon Aug 04 00:00:41 2008 |
00:44 | | Consul [~darren@Nightstar-1618.dsl.sfldmi.ameritech.net] has quit [Quit: Ex-Chat] |
00:54 | | Consul [~darren@Nightstar-1618.dsl.sfldmi.ameritech.net] has joined #code |
00:54 | < Consul> | Well, I drove out 20 minutes for a free scanner that's busted. |
00:55 | < Consul> | SANE gives me an I/O error, and Windows just render a completely black image. |
00:55 | < Consul> | renders* |
00:55 | < Consul> | I'll dig out another USB cable just to make sure that isn't the problem. |
00:58 | | Consul [~darren@Nightstar-1618.dsl.sfldmi.ameritech.net] has quit [Quit: Ex-Chat] |
01:19 | | Consul [~darren@Nightstar-1618.dsl.sfldmi.ameritech.net] has joined #code |
01:19 | < Consul> | Yep, busted scanner. I could smell the fried electronics after shutting it down. |
01:19 | < Shoukanjuu> | ouch |
01:20 | < Consul> | Well, I drove to pick it up from someone off the Freecycle list today. I'm kinda annoyed that I drove so far for nothing but another USB cable. |
01:25 | < Consul> | Oh well. |
01:25 | < Consul> | I also have an exceedingly irritating X issue I've been dealing with. |
01:31 | | Thaqui [~Thaqui@Nightstar-13764.jetstream.xtra.co.nz] has joined #code |
01:31 | | mode/#code [+o Thaqui] by ChanServ |
01:34 | < Consul> | Blargh |
01:34 | < Consul> | I forgot I can't send URLs. |
01:39 | | mode/#code [+v Consul] by McMartin |
01:39 | <+Consul> | Thanks! |
01:39 | <+Consul> | Anyway... |
01:39 | <+Consul> | This guy's saying what I was trying to say in here... was it yesterday? : http://mpt.net.nz/archive/2008/08/01/free-software-usability |
01:40 | <+Consul> | It hit the front page of Slashdot |
01:40 | <+Consul> | He advocates starting with the interface design as well, or at least roughing it out. |
01:42 | <@McMartin> | That's been the Apple tradition since the 80s. |
01:42 | <@McMartin> | AFAIK the typical claim is that it depends on what you're trying to do with it. |
01:43 | < Vornicus> | "have some idea what you want it to look like" is always a good idea |
01:43 | <@McMartin> | The two major problems with that approach are: |
01:43 | <@McMartin> | - As noted, most people suck at design, so sketching out a bad idea first won't help |
01:43 | <@McMartin> | - It's easy for the interface to dictate a clunky or even theoretically impossible API. |
01:50 | <+Consul> | Well, I don't pretend to be a good designer, but I do have a good idea of what I'd like to see in music synthesis software. |
01:57 | <+Consul> | Of course, this doesn't affect our current bottom-up approach. The components we're building now should be usable in any design. |
01:57 | <+Consul> | That's largely why we're starting here. |
01:58 | <+Consul> | Or at that level, I should say. |
01:59 | <@McMartin> | And that's really why the tradition for modularity, etc., is what it is. |
01:59 | <@McMartin> | "People are writing so that it could be used by anything" is not a legitimate complaint. |
01:59 | <@McMartin> | "People are claiming to do this but aren't really" is. |
02:00 | <+Consul> | You might have to elaborate on that point a little... |
02:01 | <@McMartin> | It's dinnertime, so I'll direct to my earlier comment about "GIMP being split into GUI program plus libgimp = good" "GIMP by sticking a GUI shell around ImageMagick = bad" |
02:02 | <+Consul> | I still don't follow, but chalk it up to me being a crap coder and we'll move on. |
02:03 | <@McMartin> | Nah, it's because I'm being brief, because I'm hungry. |
02:03 | <@McMartin> | I'll talk more later after I have some food in me. |
02:03 | <+Consul> | Go get some food. I'll be around. :-) |
02:03 | <+Consul> | Well, I have to log into Windows later to do some web work (NetObjects Fusion). |
02:03 | <+Consul> | But that's later. |
02:35 | | ASCIISkull [~none@Nightstar-7066.dyn.optonline.net] has joined #code |
02:36 | < ASCIISkull> | hiya |
02:37 | < Shoukanjuu> | Stop everyone. People are WRONG on the INTERNET. |
02:38 | < Shoukanjuu> | Unless I'm wrong, which I'm...fairly sure I'm not. |
02:38 | < Shoukanjuu> | "Unfortunately 54mbps is very slow and would cause lag." is the quote, in regards to an xbox 360 wireless adapter >_> |
02:38 | <+Consul> | Is there no coder in the world alive who has NOT read xkcd? |
02:38 | < Shoukanjuu> | Well, I'm not exactly a coder. |
02:39 | < Shoukanjuu> | Unless your definition of coder is someone that messes around with simple python things every once in a never |
02:39 | <+Consul> | It's really a wonder how a bunch of stick figures became a popular webcomic. |
02:39 | <+Consul> | It really is in the writing, isn't it? |
02:39 | < Shoukanjuu> | Indeed |
02:40 | < ASCIISkull> | the same way that bunches of words have always made it among certain sorts of people |
02:41 | < Shoukanjuu> | Anyway, this guy thinks that 54 Mbps is slow. I'm thinking that he has a bad connection >_> |
02:41 | <+Consul> | You keep using that work. I don't think it means what you think it means. |
02:41 | <+Consul> | word* |
02:41 | <+Consul> | Damn, screwed up the meme. |
02:41 | < Shoukanjuu> | Oops. :P |
02:41 | < Shoukanjuu> | Point is, he's blaming a wireless G router for the slow connection |
02:42 | < Shoukanjuu> | And I, before I make a fool out of myself on accident, would like to make an ass of myself on purpose |
02:43 | < Shoukanjuu> | It transmits a max of 54 Mbps, right? So that anything lower would transmit that, but anything higher would max out at 54? |
02:45 | <+Consul> | It would probably never even reach 54. |
02:45 | < Shoukanjuu> | That's what I'm saying |
02:45 | <+Consul> | Those are always theoretical maximums. |
02:45 | < Shoukanjuu> | But this guy says that the '54 Mbps max' is what's making is slow >_> |
02:46 | <+Consul> | Now, is this about ping times or throughput? |
02:46 | <+Consul> | Those are two different issues. |
02:46 | < Shoukanjuu> | It's one of those things that I get irked about |
02:46 | < Shoukanjuu> | He said, quoted "very slow and would cause lag" |
02:47 | < Shoukanjuu> | Which would be both throughput AND ping |
02:47 | <+Consul> | I believe that to be wrong. |
02:47 | < Shoukanjuu> | Which? |
02:47 | <@McMartin> | Wireless will tend to have sketchier ping. |
02:48 | <+Consul> | Latency is the responsiveness of the network, not its bandwidth. |
02:48 | <+Consul> | Wireless usually always has bad ping times. |
02:48 | <+Consul> | (I only say usually because I'm sure some researcher out there found a solution.) |
02:48 | <@McMartin> | Playing an FPS over 802.11 anything is a Reasonably Bad Idea no matter what your bandwidth is. |
02:49 | <@McMartin> | Whether it's a bad idea in a MMORPG depends on game and class. |
02:49 | <+Consul> | McMartin: Just like playing a softsynth with high latency causes issues. :-P |
02:49 | <@McMartin> | Mezbots tend to be OK. |
02:49 | < Shoukanjuu> | I've never had a problem with that |
02:49 | <+Consul> | Latency in an online turn-based game would likely not matter. |
02:49 | < Shoukanjuu> | Wireless, I mean. |
02:50 | < Shoukanjuu> | 802.11G is what I've used most of the time, and I don't think I've really experienced much lag that wasn't the server I was connecting to >_> |
02:52 | <@McMartin> | How close are you to your router? |
02:52 | <@McMartin> | And how do you intend to distinguish between a lag spike on your end and on theirs? |
02:53 | <+Consul> | I'm on wireless, and the best ping I've ever gotten from anywhere was about 36ms. |
02:53 | <+Consul> | I don't know why I can remember that exact number. |
02:53 | <+Consul> | It's the one that usually comes up when I ping somewhere. |
02:53 | < Shoukanjuu> | Well, I suppose that last point is something to think about, but I'm usually within 30 feet, through multiple walls. NOW, though, it's hard to test |
02:54 | < Shoukanjuu> | Since, well...I'm next to the router anywhere I go. |
02:54 | <@McMartin> | And actually, I don't think of peak ping, either. I think of lagspikes. |
02:54 | < Shoukanjuu> | So I just use a cable isntead. |
02:54 | < Shoukanjuu> | That would explain a lot. |
02:54 | <@McMartin> | And yeah, on my system, lag spikes are dominated by my crappy videocard overloading. |
02:54 | < Shoukanjuu> | So it's not the network, and rather irrelevant to this :P |
02:55 | <@McMartin> | Well, from observation it looks identical~ |
02:55 | <@McMartin> | (And, indeed, at least in CoH it shows up in the network stats graph) |
02:55 | < Shoukanjuu> | Mmm. |
02:56 | < Shoukanjuu> | I need someone with a 360 and Soul Calibur 4. For the 360. |
02:57 | <@McMartin> | Anyway, Consul, re: modules |
02:58 | <@McMartin> | The complaint seems to be "People are designing Command Line Interface (CLI) programs and figuring people can just turn them into GUIs later, and it doesn't work like that" |
02:58 | <@McMartin> | And indeed it doesn't. |
02:59 | <@McMartin> | However, this doesn't mean that the system should start as a GUI except in very special cases, because the *reverse* is actually true - you should be able to take any reasonably-designed GUI app and and turn it into a set of scriptable command-line tools. |
03:00 | <+Consul> | Well, then you have to design the app from both directions. |
03:00 | <@McMartin> | And the reason for this is because you're supposed to work bottom-up. |
03:00 | <+Consul> | And make sure you can meet in the middle. |
03:00 | <@McMartin> | Which is the trick, yes, and another way of failing. |
03:00 | <@McMartin> | But in a properly designed app you have, essentially |
03:00 | <@McMartin> | [Core Logic] <-> GUI |
03:00 | <@McMartin> | And it had better be possible to be able to also then go |
03:00 | <@McMartin> | [Core Logic] <-> CLI |
03:01 | <@McMartin> | Because otherwise you don't have a "core logic". |
03:01 | <+Consul> | http://daringfireball.net/2004/04/spray_on_usability -- He makes a few good points, and pulls no punches. |
03:01 | <@McMartin> | HCI is already a field. |
03:01 | <@McMartin> | This has nothing to do with that. |
03:01 | <@McMartin> | This has to do with having a product to use in the first place. |
03:02 | <+Consul> | I guess my point is, if I'm no good as a coder, maybe I can find the talent to design the software I want. |
03:02 | <+Consul> | Or maybe the key to good design is to not give a care about the project you're working on. |
03:02 | <+Consul> | A "forest for the trees" issue, if you will. |
03:03 | <@McMartin> | Maybe. |
03:03 | <+Consul> | The guy in the first article made a point about how a project, no matter how large, should have only one lead designer, one vision. |
03:04 | <@McMartin> | That's generally true, though there are special cases where this is unnecessary. |
03:06 | <@McMartin> | (Generally, projects where the "vision" is external to the project) |
03:09 | <@McMartin> | The thing is, anyone who complains that GUI should not be "a wrapper" has no fucking idea what a GUI even is. |
03:09 | <@McMartin> | It's like saying that a program shouldn't be a bunch of unreadable machine code loaded into memory. |
03:11 | <+Consul> | I think that's missing the point. |
03:11 | <@McMartin> | Both graphical and command-line applications are wrappers around the core logic that let the user tell the core logic what it is he's supposed to do. |
03:11 | <+Consul> | Who cares what a GUI *technically* is... |
03:12 | <@McMartin> | No, this is really fundamental. |
03:12 | < ASCIISkull> | the peole who are supposed to make them, for one |
03:12 | < ASCIISkull> | and the people who need to facilitate the people who make them |
03:12 | <+Consul> | Your end users certainly don't. |
03:12 | <@McMartin> | "That word doesn't mean what you think it means." |
03:12 | <@McMartin> | What is the core that it's not supposed to wrap? |
03:13 | <@McMartin> | And if it isn't supposed to be a wrapper, despite the fact that any interface of any kind is fundamentally a wrapper, what *is* it? |
03:13 | <+Consul> | Look, when I said "monolithic programs", all I meant was everything bundled up into one file, easy to use. |
03:13 | <@McMartin> | That's not terribly specific. |
03:13 | <@McMartin> | It is, in fact, anti-specific. |
03:14 | <@McMartin> | It's like saying it needs to implement its specification. |
03:14 | <+Consul> | FIne, if you want me to fuck off, I will. |
03:14 | <@McMartin> | No, I'm actually honestly curious. |
03:14 | <+Consul> | I really don't care anymore. |
03:14 | <@McMartin> | The only thing I'm reading from these is inchoate rage. |
03:14 | <@McMartin> | There is an utter communications failure and I want to know where it is. |
03:14 | <+Consul> | My frustration comes from many places... |
03:15 | <@McMartin> | There's "Designing interfaces is distinct from programming", and somehow this requires shitloads of implementation details. |
03:15 | <+Consul> | 1) My inability to simply afford the software I'd really love to use to make some music. |
03:15 | <+Consul> | 2) My inability to use open source tools for the same. |
03:15 | <+Consul> | current tools, that is. |
03:15 | <+Consul> | 3) My passions and desires exceeding my skill levels. |
03:15 | <@McMartin> | I'm not even talking about you here. |
03:16 | <@McMartin> | I'm talking about the articles you're linking, and your interpretations of them. |
03:16 | <@McMartin> | Because my reading is roughly the same as yours, except "pulls no punches" translates to "is very angry and inarticulate in dozens of different phrasings". |
03:17 | < Vornicus> | gui (and other interfaces) are wrappers where you need to glom a lot of styrofoam on there first. |
03:17 | <+Consul> | Never mind, then. I just hoped maybe they would help try to explain what I've been thinking about. Clearly I was wrong. |
03:17 | <+Consul> | For the record, I don't agree with everything in either one. |
03:18 | <@McMartin> | I'm having trouble even finding any points that are clear enough to disagree with. |
03:18 | <+Consul> | I do, however, firmly believe that the user interface needs to be somehow fleshed out or designed during the design of a project like mine. |
03:18 | <@McMartin> | You've got, as near as I can tell, at least three projects in mind. |
03:19 | <+Consul> | Well, the sampler is the big one. |
03:19 | <+Consul> | The guitar amp sim is something percolating in my mind. |
03:19 | <@McMartin> | (1) Your DSP/waveform generation system; (2) a JACK interface layer for arbitrarily generated waveforms, (c) Some kind of software mixing board? |
03:19 | <+Consul> | A separate synth is back burner. So really, two. |
03:19 | <+Consul> | No, the mixing board is already done. That's Ardour. |
03:20 | <@McMartin> | OK |
03:20 | <+Consul> | Your thinking and mine are completely different. |
03:20 | <@McMartin> | I'm confused as to where the user sees your work at all, in fact. |
03:20 | <+Consul> | You're thinking in terms of layers and objects. I'm thinking in terms of actual programs. |
03:20 | <@McMartin> | It seems like it would be a driver replacement and they'd keep using their tools. |
03:20 | <@McMartin> | Give me a user story. |
03:21 | <+Consul> | The user would see a GUI that allows them to synthesize new sound. |
03:21 | <@McMartin> | Er, let me rephrase. |
03:21 | <@McMartin> | Give me a user story at about this level of detail, which describes what I thought you were working on: |
03:21 | <+Consul> | It would have an interface not unlike a hardware synth, only more flexible. |
03:22 | <@McMartin> | "The user is working on his project, and configures it so that JACK is getting its waveform data from your synth. They then do their recording/mixing/whatever and it sounds way better than it otherwise would. Also, more effects are now available." |
03:22 | <+Consul> | Oh, dear... |
03:23 | <@McMartin> | Because that's the layer of the problem you've been talking about here when you weren't ranting about interfaces sucking, but the tools you wanting already existing, etc. |
03:23 | <+Consul> | Okay, allow me to be smug and tell you all about how you know nothing about how music production on a computer happens in the real world, much the same way you can deride me for not knowing what a GUI really is. |
03:23 | <@McMartin> | Feel free to actually explain, as I have been trying to. |
03:23 | <@McMartin> | Your latest attempt sounds like Virtual Piano mode in Cakewalk. |
03:24 | <@McMartin> | And if you're reading me as smug, you're getting the tone wrong. |
03:24 | <+Consul> | Everything in computer-based music production is a separate program. |
03:24 | <@McMartin> | The tone is exasperation. |
03:24 | <+Consul> | With its own special interface. |
03:24 | <@McMartin> | That's incidental. There's no reason it couldn't be one huge program popping up separate windows. |
03:24 | <@McMartin> | I need to know what the tasks are and which ones aren't being done. |
03:24 | <+Consul> | No, it isn't, because that is NOT how it works. |
03:25 | <@McMartin> | I didn't say it did. I said it could. |
03:25 | <+Consul> | Nevertheless... |
03:25 | <@McMartin> | You're trying to describe a landscape to a blind man by showing him rocks. |
03:25 | <+Consul> | I have my MIDI keyboard, that big monster sitting in front of me. |
03:25 | <@McMartin> | Right. |
03:26 | <+Consul> | Now, that's routed into my computer, which is receiving MIDI messages. |
03:26 | <+Consul> | I have a specific compositional idea in mind, or even partially done... |
03:26 | <@McMartin> | Wait, you just wildly changed subjects. |
03:26 | <+Consul> | So, from here, I want a specific *sound* to appear in my composition. |
03:26 | <+Consul> | No, bear with me... |
03:27 | <+Consul> | That *sound* can come from many sources. A microphone recording in a room, for example, but I'm not concerned about that at all. That process works very well under Linux. |
03:27 | < ASCIISkull> | hrm, too bad caruu's not around for this |
03:27 | <+Consul> | It can also come from a *software synthesizer*, existing only on the computer. |
03:28 | <@McMartin> | And which takes as input the MIDI events? |
03:28 | <+Consul> | A synthesizer which is controlled in real time from my MIDI keyboard. |
03:28 | <+Consul> | So, I play the synth, in real time, like it's any other instrument. |
03:28 | <+Consul> | And JACK takes that output and shuttles it off to Ardour, which records it right where I want it. |
03:29 | <+Consul> | The synth is a discrete program. |
03:29 | <+Consul> | Ardour is a discrete program. |
03:29 | < Vornicus> | and Jack is a discrete program? |
03:29 | <+Consul> | Yes, it is, and it runs as a daemon. |
03:29 | <@McMartin> | Yeah, see, the fact that they're so intricately tied together means I would not in fact call those "discrete programs". |
03:29 | < ASCIISkull> | What is the technical requirement for them being seperate beyond the fact that hey currently happen to be? |
03:29 | <+Consul> | It is the class of programs known as "software synthesizers" that needs the major help in Linux. |
03:30 | <@McMartin> | And so, the GUI you need is essentially a bunch of dials and sliders to mess with the timbre, etc.? |
03:30 | < Vornicus> | In completely real world system: JACK is the connection board, and Ardour is the tape deck, yes? |
03:30 | <@McMartin> | Ardour is the mixing board, it sounds like. |
03:30 | <+Consul> | Well, in Windows, software synths are usually VST plugins, which are DLLs dynamically loaded by the multitrack recorder software, or DAW (sigital audio workstation). |
03:31 | <+Consul> | Vornicus: Exactly. Jack is the patchbay. |
03:32 | <+Consul> | Now, Linux does have a couple of plug in standards which are also dynamically loaded modules. LADSPA is one, nice and simple, made for effects only (doesn't do GUIs or synths). |
03:32 | <+Consul> | DSSI is designed to accomodate GUIs and synths, and is very close to working just like VST. |
03:33 | <+Consul> | JACK works by virtue of being a patch bay that programs use to "talk" to each other. As a result, JACK clients, as they're called, are not dynamically loaded objects. |
03:34 | <@McMartin> | Unless you consider executables to be dynamically loaded by the OS. |
03:34 | <+Consul> | Well, they're not dyncamically loaded by the DAW (ardour), let's put it that way. |
03:35 | <+Consul> | So... |
03:35 | <+Consul> | My Kurzweil -> JACK MIDI -> software synth -> JACK audio -> Ardour |
03:35 | <+Consul> | JACK can route MIDI, too. |
03:35 | <@McMartin> | Yeah, I noticed that when setting up rosegarden. |
03:35 | <+Consul> | Or... |
03:36 | <+Consul> | My Kurzweil -> JACK MIDI -> Ardour -> DSSI plugin loaded by Ardour -> Ardour track |
03:36 | <+Consul> | Which is more how VST works on Windows and Mac. |
03:36 | <@McMartin> | OK, so, I've gotten the distinct impression from you that you think this is a bad thing. |
03:37 | <+Consul> | CoreAudio on the Mac actually has more in common with JACK than with VST, as it turns out. |
03:37 | <+Consul> | No, the workflow works just fine. |
03:37 | <+Consul> | What's NOT fine is the lack of software synthesizers available. |
03:37 | <+Consul> | That are geared to musicians. |
03:37 | <@McMartin> | OK, in that case, what did you mean by "should be one file that does everything", which I'm going to read as "application" because nobody cares how many files are sitting in their /usr/share. |
03:39 | <+Consul> | Well, by that, I mean I want to avoid the use of twenty different languages and a hundred libraries to get one working softsynth. |
03:39 | <+Consul> | It means I will not build any more dynamic libraries. |
03:40 | <@McMartin> | On that note, a technical question |
03:40 | <@McMartin> | How likely is it that a musician will use *all* the controls? |
03:40 | <+Consul> | I'll use what's out there that's useful, and I'll build what I have to, into the program. I'll do it in a modular way, at the code perspective. |
03:40 | <+Consul> | Well, that depends on the purpose of the synth and the complexity of it. |
03:40 | <@McMartin> | One advantage of dynamic loading is that you don't pay the overhead of loading every possible option in at once. |
03:41 | <@McMartin> | JACK would be horrific if you couldn't start it without starting Every Jack Client Ever at the same time. |
03:41 | <+Consul> | The disadvantage is I have no freaking clue how to do it, and have found not one web site that helps. |
03:41 | <@McMartin> | (And DLLs controlled by a main program and programs communicating to a director program via IPC are functionally identical) |
03:42 | <@McMartin> | Each of these synths is equivalent to one of those Yamaha boxes, then? |
03:42 | <+Consul> | In all honesty, I wouldn't mind splitting the parts of the engine out into libraries. I would love to, but I don't know how. |
03:42 | <+Consul> | And nothing out there will show me. |
03:43 | <+Consul> | Well, from a black-box perspective, yes. |
03:43 | <@McMartin> | If you're using C++, a lot of it would be painful or dangerous, so I don't actually recommend it. |
03:43 | <@McMartin> | And if musicians are used to dealing with individual Yamaha boxes you can probably get away with similar for the synths if there are major differences in their techniques. |
03:43 | <+Consul> | Yeah, that's what I was told. |
03:44 | <+Consul> | Did you take the time to really explore that Native Instruments site? |
03:44 | <+Consul> | That shows a lot of what I'm talking about. |
03:44 | <+Consul> | About how these synths are discrete programs. |
03:44 | <@McMartin> | Except "program" is an arbitrary distinction. |
03:44 | <+Consul> | Okay... |
03:45 | <+Consul> | How about this... |
03:45 | <+Consul> | Go play with the demo for Absynth4 for a little while. |
03:45 | <@McMartin> | If I write a four-line shell script that starts JACK, the synth, Ardour, and Rosegarden, have I just turned four programs into one? |
03:45 | <+Consul> | Then tell me that can all be done on the command line. |
03:45 | <+Consul> | You have from the perspective of an inexperienced user. |
03:45 | <@MyCatVerbs> | McMartin: yyy... top and ps say no, but my instinct is to say "yes". |
03:46 | <+Consul> | Or a user who doesn't care and just wants stuff to work. |
03:46 | <@McMartin> | MCV: For added fun, also consider a program that makes heavy use of fork() to split off parallel computations. |
03:47 | <@MyCatVerbs> | McMartin: an excellent example of precisely what you describe would be abcde. I very nearly never run cdparanoia, lame/oggenc/flac/etc and metaflac and so on directly, instead invoking them all in one much less inconvenient manner. |
03:47 | <@McMartin> | Now, my very brief experience with getting Rosegarden to run tells me the Linux music people are terrible about this. |
03:47 | <@McMartin> | They're thinking of them as separate programs, all of which you need to install. |
03:47 | <@McMartin> | JACK, however, is a dependency. |
03:47 | <@MyCatVerbs> | Hell, even for installation purposes, they're effectively just one thing - only one "apt-get abcde" anyway (though uninstallation is a slightly different matter). |
03:48 | <@McMartin> | Yeah, see, rosegarden wasn't like that. |
03:48 | <@McMartin> | I had to grab various other things by hand so that it would even so much as start. |
03:48 | <@McMartin> | And then yet other things if I wanted it to actually produce sound. |
03:48 | <@McMartin> | This is cause for beatings, but appears to be the way they conceive of the problem space as Consul puts it. |
03:48 | <@MyCatVerbs> | Huh. Bummer. That's surely your distro's packagers' problem, though, no? |
03:48 | <@McMartin> | I'd think so. |
03:49 | <+Consul> | Yeah, Ubuntu Studio never gave me issues in that regard. |
03:49 | <+Consul> | Everything seems to work. |
03:49 | <+Consul> | And yes, you're right that the lines can get blurred. That's a large part of our miscommunication. |
03:50 | <+Consul> | Rosegarden has its own built-in synth making system, where you can make a GUI, then write an engine in C, right in the program. Those synths can't load into anything else. |
03:50 | <@McMartin> | Consul: By "any GUI can be made into a CLI" I mean that any action the user takes can be faked by a script in such a way that the computer will never know -- but that it should not actually be necessary to mimic mouse movements and clicks and keypresses and etc. |
03:50 | <+Consul> | Okay, I understand you there. |
03:51 | <+Consul> | And I clearly did not explain to well what it is I really want to accomplish. |
03:51 | <@McMartin> | And if you've set up the app so that it's the only way to do it, instead of there being a nice set of header files where you could instead make a bunch of calls to them at the right times -- your design is broken. |
03:52 | <@McMartin> | Moving swiftly onward, are Rosegarden's synth GUIs actually any good? Is there lootable code from it? |
03:52 | <+Consul> | But due to my lack of skill as a coder, I can only say that best practices are going to take a back seat to getting the thing working, if I am forced to make the choice, because I want it working. |
03:52 | <+Consul> | McMartin: I have no clue on the Rosegarden front. I've not used them. It's described on the site. |
03:53 | <+Consul> | Remember, I have no MIDI on my computer, as my Emu soundcard doesn't have that written into its driver. |
03:53 | <+Consul> | So I end up not bothering with trying these things out. |
03:53 | <+Consul> | I'm hoping that's resolved by the time I'm ready to test things. |
03:57 | <@MyCatVerbs> | Consul: Timidity++? |
03:57 | <+Consul> | That's a weird in-between thing. It's a MIDI file renderer. |
03:57 | <+Consul> | Essentially, a non-realtime softsynth. |
03:58 | <+Consul> | Sort of like Csound, but without the programming language. |
03:58 | <@MyCatVerbs> | Timidity++, non-realtime? |
03:58 | <+Consul> | Originally. |
03:58 | <@MyCatVerbs> | Mmmm, what? |
03:58 | <+Consul> | I suppose it is now. |
03:58 | <@MyCatVerbs> | Well. It's working for me right now. :) |
03:58 | <+Consul> | I first used it back... 1999? |
03:58 | <+Consul> | And it was decidedly non-realtime. |
03:59 | <+Consul> | I was living in the apartment near Southgate in Colorado Springs... 97-98. I moved out of there well before the millenium. |
03:59 | <@MyCatVerbs> | Well, y'know. We've since doubled integer widths, sent clock speed through the roof and absolutely hammered the ol' pipeline width. :P |
03:59 | <+Consul> | You could call that a softsynth, then. |
03:59 | <@MyCatVerbs> | I have a cheap soundcard around... somewhere, with an OPL-3 synth on it. No idea why. |
03:59 | <+Consul> | Can it do more than load soundfonts? |
04:00 | <+Consul> | Back when I used it, it loaded a soundfont, then rendered a standard MIDI file. |
04:01 | <@MyCatVerbs> | Now it can be made to load up at boot-time and emulate a MIDI synth through ALSA's interfaces for MIDI playback. It works. |
04:01 | <@McMartin> | And yeah, Timidity++ has a daemon mode now. |
04:01 | <@McMartin> | I had to do that too to get Rosegarden to actually import a MIDI sequence and play it. |
04:02 | <+Consul> | I decided it was too limited for me, then I went back to loading weird waves into Cool Edit 98 (before Pro), and manipulating them into odd sound collages, none of which I still have sadly. |
04:02 | <@MyCatVerbs> | As in, I can just go pmidi ~/midi/italian.mid and - lo! - out of my headphones immediately comes a crappy rendition of the greatest piece of music on Earth. |
04:03 | <+Consul> | And believe you me, I'm seriously considering writing my songs by recording oddball sounds, manipulating them in an editor, then dropping them into a timeline. |
04:03 | <+Consul> | And screw this "trying to write a softsynth and sampler" crap. |
04:04 | <+Consul> | That would render my MIDI keyboard useless, and take a very long time to create one song. |
04:04 | <+Consul> | It would likely sound like very little else out there, though. |
04:05 | <+Consul> | (or even by manipulating no-so-oddball sounds, really.) |
04:06 | <@MyCatVerbs> | Please don't become the second coming of Merzbow. |
04:07 | <@MyCatVerbs> | The first was bad enough, the universe does not need a second. :) |
04:07 | <+Consul> | Oh, to hell with Merzbow. I can't stand that crap. |
04:07 | <+Consul> | I'm a prog rocker, fer cryin' out loud. |
04:07 | <@MyCatVerbs> | \o/ |
04:07 | <+Consul> | I'm hoping I can go down to Detroit to see Kansas this friday. |
04:07 | <+Consul> | A free show, on the riverfront. |
04:08 | <@MyCatVerbs> | I keep trying to parse that as "I'm going to %place to see %place this %time." |
04:08 | <+Consul> | Hehe |
04:08 | <@MyCatVerbs> | What's left of my brain keeps interjecting, "Why, are they nearby?" |
04:09 | <+Consul> | Actually, when I think, "manupulate sound with an editor and drop it into a timeline," I think Burial. |
04:09 | <+Consul> | Whom I'm also not too fond of. |
04:09 | <+Consul> | Musically, anyway. |
04:10 | <+Consul> | He might be a delightful chap in person. |
04:11 | <+Consul> | Maybe now you understand my real goal. I want to make music. |
04:11 | <@MyCatVerbs> | You already made that clear about ten minute back, yo. :) |
04:11 | <+Consul> | But music synthesis tools on Linux... Just aren't made for musicians. |
04:11 | <@MyCatVerbs> | No, I'd be surprised if they were. |
04:11 | <+Consul> | They're for smart avant-garde-y people who can program. |
04:12 | <@MyCatVerbs> | *ahem* |
04:12 | <+Consul> | Not for the guy who just wants a nice electric piano sound. |
04:12 | | * MyCatVerbs appends "and have too much time on their hands." |
04:12 | <@MyCatVerbs> | Consul: look into, uh, what's the term... modfile composing... trackers. |
04:12 | <+Consul> | I really wish I could fill that gap, but I sure as hell can't do it alone. |
04:12 | <+Consul> | Already did that a long time ago. |
04:13 | <+Consul> | Again, too limited for my tastes. |
04:13 | <@MyCatVerbs> | Oh? 'Cuz it sounds like... ah, right. |
04:13 | <+Consul> | Took too much time to refine my compositions. |
04:13 | <@MyCatVerbs> | What couldn't you do that you wanted to? |
04:13 | <+Consul> | I'd just like to be able to play my lines a few times, pick the good takes, and move on. |
04:13 | <+Consul> | Let me utilize my keyboard-playing skills? |
04:14 | <+Consul> | Such as they are... |
04:14 | <+Consul> | But they do exist well enough for my purposes. |
04:14 | <@MyCatVerbs> | Well... right, yeah. Module trackers are more compositional tools, not meant for making use of MIDI instruments. |
04:14 | <+Consul> | A DAW plus software synthesis/sampling is the best of both worlds, for composers and performers. |
04:14 | <@MyCatVerbs> | I mean is there anything missing in terms of their... audiable capabilities? Important things you want to do that they're not sophisticated enough to let you achieve? |
04:14 | <@Kazriko> | http://www.faqs.org/docs/Linux-HOWTO/MIDI-HOWTO.html ? |
04:15 | <@MyCatVerbs> | DAW? |
04:15 | <+Consul> | Digital audio workstation. |
04:15 | <+Consul> | What Ardour is. |
04:15 | <+Consul> | And Sonar, and ProTools, and Cubase, and... |
04:15 | <@MyCatVerbs> | Kazriko: that's _quite_ out of date at the moment. >_< |
04:15 | <@Kazriko> | heh |
04:16 | <@MyCatVerbs> | It's something of a pity, in a way, how things like TLDP are completely dead now. |
04:16 | <+Consul> | BRB laundry |
04:16 | <@MyCatVerbs> | At least the information still ends up -somewhere-, even if it is only on individual distros' wikis. |
04:17 | <@MyCatVerbs> | But what worries me is that some of the information will end up becoming infeasible to track down, because distros will put a nice shiny GUI layer over the top and then only document their frontend. |
04:17 | <@MyCatVerbs> | ("over the top" -> "over the top of complicated issues", I mean) |
04:27 | <@Derakon> | 643m/s. |
04:27 | <@Derakon> | 'Scuse me, wrong channel. |
04:28 | <@Derakon> | (That's how fast you'd hit the ground if you fell straight from geosynchronous orbit to the ground, accelerating at 1g all the while) |
04:28 | <@Kazriko> | with or without atmosphere? |
04:28 | <@Derakon> | Without. |
04:29 | <@Kazriko> | Figured |
04:30 | <@Derakon> | Whoops, I did it with meters, not kilometers. Try 20327m/s. |
04:32 | <@MyCatVerbs> | Isn't terminal velocity less than 200m/s? |
04:32 | <+Consul> | For Earth's atmosphere, yes. |
04:32 | <@MyCatVerbs> | Less if you're wearing baggy clothing, spread your arms, etc. |
04:32 | <+Consul> | He said without an atmosphere. |
04:32 | < Vornicus> | Sure, but, uh. |
04:32 | <@Derakon> | Terminal velocity depends on your air resistance. |
04:32 | < Vornicus> | If you're coming in from 40,000 km away, there's not much air to be had. |
04:32 | <@MyCatVerbs> | Derakon: oh sorry, I assumed a human victim. :) |
04:32 | <@Derakon> | And not much time to slow down once you do hit atmosphere. |
04:33 | <@Derakon> | Though presumably the "impact" with the atmosphere would reduce your payload to a smear of plasma, which would still hit with tremendous energy. |
04:33 | <@MyCatVerbs> | Consul: well okay, but he's using Earth's mass to calculate the acceleration, so I reserve the right to use the Earth's atmosphere to kvetch. :) |
04:33 | <+Consul> | Heh |
04:33 | <@MyCatVerbs> | Derakon: aka "burning up", right. |
04:33 | < Vornicus> | hough you only get a couple of seconds of that, too. |
04:33 | <+Consul> | I'm reminded of the "surfing" at the end of Dark Star... |
04:40 | <+Consul> | So, ummm... Does anyone actually have a link to an article or something on how dynamic libraries work and are made? |
04:40 | <+Consul> | And what it is about C++ that makes it unsuitable for the task... |
04:40 | <@McMartin> | The latter is easier to explain |
04:41 | <+Consul> | I spent two hours searching one night, and found nothing. |
04:41 | <@McMartin> | It breaks what little type safety C++ has, and so use of DLLs can be used for security attacks |
04:41 | <@McMartin> | And even when it can't it can easily be a source of weird crashes. |
04:41 | <@McMartin> | The former... I believe it's the same as C, so for a UNIX-based system, dlopen and dlsym are the function names. |
04:42 | <+Consul> | Maybe it would be easier for me to understand if you told me why C *is* suitable for making dynamic libs... |
04:43 | < Vornicus> | C++ Also doesn't have a very unified abi, either, because the usual way of doing things is name mangling, and the name mangling is not unified. |
04:44 | <+Consul> | Ah, type safety. Another term I googled for 30 minutes or so and came away knowing no more than I did before. |
04:45 | <+Consul> | Well, I have the Kernighan and Ritchie C book. |
04:45 | <+Consul> | Maybe I should talk to Anders about coding in C. |
04:45 | <+Consul> | Can C do ADTs? |
04:45 | < Vornicus> | Type safety: the ability to guarantee that data (expressed internally as bytes) will always be interpreted the same way (as an int or float or string, for instance), and anything that tries to do otherwise will get yelled at. |
04:46 | <+Consul> | Vornicus: Okay, so it *does* mean exactly what I thought. |
04:46 | <+Consul> | So why did the article I read state that C is the most type-unsafe language made? |
04:46 | < Vornicus> | It's certainly the most type-unsafe language in common use. |
04:47 | < Vornicus> | Pointers can be cast to different types of pointers very easily. |
04:47 | < Vornicus> | Then you've got unions and similar things. |
04:47 | <+Consul> | So... |
04:48 | <+Consul> | You implied above that dynamic libs are best made with the most type-safe language... |
04:48 | <+Consul> | Or rather, McMartin did. |
04:48 | < Vornicus> | C++ has different issues, with polymorphism and inheritance and all this shit. |
04:48 | <+Consul> | Which would imply that C isn't good for the job, either. |
04:49 | <+Consul> | Hehe |
04:49 | < Vornicus> | In some sense it's worse. |
04:49 | <+Consul> | The polymorphism saved our butts on the DSP ADT we designed. |
04:49 | <+Consul> | It solved a big problem I was having. |
04:54 | < Vornicus> | in C++ you can't even guarantee that the thing you're passing in is the same size aas the thing it's expecting, even if technically it's "safe" |
04:55 | <+Consul> | Well, I wish I knew what that had to do with dynamic libs, but I'll leave it at that. |
04:55 | <+Consul> | My kingdom to be able to code a synth in PHP. |
04:55 | < Vornicus> | >_< |
04:56 | < Vornicus> | NO NO NO NO NO NO NO |
04:56 | < Vornicus> | BAD CONSUL |
04:56 | <+Consul> | Well, I know PHP, and use it to make money. |
04:56 | < Vornicus> | At least use a general purpose language, christ |
04:56 | <+Consul> | That was my po |
04:56 | <+Consul> | point |
04:56 | <+Consul> | I know I can't. I merely wish I could. |
06:13 | | AnnoDomini [AnnoDomini@Nightstar-29180.neoplus.adsl.tpnet.pl] has joined #Code |
06:13 | | mode/#code [+o AnnoDomini] by ChanServ |
06:19 | <@ToxicFrog> | PHP ;.; |
06:19 | <@ToxicFrog> | But I sympathize with the sentiment if not the choice of language. |
06:20 | <@MyCatVerbs> | Just that there are lot of languages to which the same thing applies, but which suck less. :P |
06:56 | | Derakon is now known as Derakon[AFK] |
07:57 | | ASCIISkull is now known as AFKSkull |
08:21 | <@Kazriko> | I make money on Isagraf programs, but that doesn't mean i'm going to code in isagraf for fun |
08:21 | <@Kazriko> | Always good to learn a new language. |
08:57 | <@MyCatVerbs> | Isagraf? |
08:57 | <@MyCatVerbs> | oO |
08:58 | | * MyCatVerbs googles, sees the acronym for "Computer Aided Software Engineering", gets a... sinking feeling. |
09:08 | <@Kazriko> | It's a european committee designed automation language |
09:08 | <@MyCatVerbs> | I also saw "PLC" and "productivity" in the same sentence. My mind shrivelled up. |
09:09 | <@Kazriko> | PLC being programmable logic controller, what you program with isagraf, along with RTUs |
09:09 | <@Kazriko> | Remote Telemetry Units... |
09:10 | <@MyCatVerbs> | I know what a PLC is. That's why it made my brain run screaming in the other direction. |
09:17 | | Vornicus [~vorn@Admin.Nightstar.Net] has quit [Ping Timeout] |
09:40 | <@Kazriko> | http://faqs.ign.com/articles/438/438247p1.html << Recommended level 90 on divine prison? man, I finished all the prior levels with less than lvl 55 on my best char... |
09:48 | <@Kazriko> | laharl is only 54 now.... |
09:50 | | Vornotron [~vorn@Admin.Nightstar.Net] has joined #code |
10:02 | | You're now known as TheWatcher |
12:29 | | Thaqui [~Thaqui@Nightstar-13764.jetstream.xtra.co.nz] has left #code [MORE constitution LESS destitution MORE pros...perity.] |
14:57 | | crem_ [~moo@Nightstar-28703.adsl.mgts.by] has quit [Quit: Ep0xa 1.2v] |
16:08 | | crem [~moo@Nightstar-28703.adsl.mgts.by] has joined #code |
16:26 | | Attilla [~The.Attil@92.20.0.ns-26568] has quit [Ping Timeout] |
16:41 | | Attilla [~The.Attil@92.20.0.ns-26568] has joined #code |
16:41 | | mode/#code [+o Attilla] by ChanServ |
18:08 | <@MyCatVerbs> | Kazriko: it's exceedingly rare for application of massive overkill to make one's chances of success *worse*. :) |
18:09 | <@MyCatVerbs> | In RPGs, anyway. Friendly fire is another matter entirely. :P |
18:19 | <@ToxicFrog> | Kazriko: they're crazy; you can easily finish the main storyline with everyone under level 60, and you probably will unless you go very grind-happy |
18:19 | <@ToxicFrog> | Finishing the bonus areas, or newgame+ with Stronger Enemies bills in effect, is another matter. |
19:18 | | AnnoDomini is now known as Steve |
20:12 | <@TheWatcher> | egh. perl-regexp peoples around? |
20:13 | <@McMartin> | I thought that was you >_> |
20:15 | <@McMartin> | Hum |
20:15 | | * McMartin tries to figure out how to wake up a Macbook that went to sleep with the case open. |
20:16 | <@EvilDarkLord> | Close, then open? |
20:19 | <@TheWatcher> | Wave a vista CD under the air intake? |
20:20 | <@McMartin> | Oops. |
20:20 | | * McMartin found "tap the power button" in the manual, but he held it down too long which is "turn it off" |
20:23 | | * TheWatcher args, is trying to work out a regexp that does s{<span style='(.*?)'>(..anything that is not <span..)</span>}{convert_span($1, $2)}eis vut that 'anything that is not <span' is causing trouble... and it's one of those situations where I'm sure it's embarrassingly obvious.. |
20:23 | <@McMartin> | Also, "plug it in" appears to have been the requirement, which implies that the thing was massively low on power. |
20:24 | <@McMartin> | ... Yeah. It was in forced-hibernate due to battery exhaustion. |
20:24 | <@McMartin> | Well, that's one mystery solved. |
20:39 | <@TheWatcher> | aha! |
20:39 | <@TheWatcher> | s{<span style='([^']+)'>((?:(?!<span).)+?)</span>}{convert_span($1, $2)}eis |
20:39 | <@TheWatcher> | How delightfully hideous. |
20:40 | <@McMartin> | /Everybody stand back/ |
20:41 | < Shoukanjuu> | >____> |
20:41 | <@McMartin> | TW knows regexes. |
20:45 | | Vornotron is now known as Vornicus |
20:46 | | AnnoDomini [AnnoDomini@Nightstar-29753.neoplus.adsl.tpnet.pl] has joined #Code |
20:46 | | mode/#code [+o AnnoDomini] by ChanServ |
20:46 | | AnnoDomini is now known as Steven |
20:46 | | Steve [AnnoDomini@Nightstar-29180.neoplus.adsl.tpnet.pl] has quit [Ping Timeout] |
21:07 | | * Consul had a hell of a disastrous day at work, though little fault is his own. |
21:23 | | Steven is now known as AnnoDomini |
21:25 | | * TheWatcher vaguely wonders if someone has implemented the equivalent of bbencode_first_pass() in perl rather that php, can see a rewrite is needed |
21:27 | <@TheWatcher> | sodit, all that stuff is supposed to try to avoid quote matching errors, which I can't fix anyway |
21:51 | < Shoukanjuu> | I'm watching the house for my dad and step mom as they go on vacation. |
21:51 | <+Consul> | I'm trying to figure out how to manage a 908,555 record import into MySQL. |
21:51 | < Shoukanjuu> | Every ten minutes, there is a Road runner commercial, advertising 15 Mbps/2 Mbps connections. |
21:52 | < Shoukanjuu> | I have a fifth of that ;-; |
21:52 | <+Consul> | I wrote an import script in PHP, and the scale of what I have to import (which I was unaware of until today) is terribly staggering. |
21:52 | < Shoukanjuu> | And it's DSL, so sometimes it even DROPS |
21:53 | <+Consul> | And this script has to run this same import every night. |
21:53 | < Shoukanjuu> | That sucks, Consul. Why weren't you told about the import stuff? |
21:53 | < Shoukanjuu> | O_o; |
21:54 | <+Consul> | I was told to set it up to where all imports from the third party get deleted before each new import. That way, we keep all information up to date. |
21:54 | <+Consul> | I reeled from that, but thought, hey, it's their money, and it'll work. |
21:54 | <+Consul> | I didn't counr on 908,000 records. |
21:55 | < Shoukanjuu> | Man, that's... |
21:55 | <+Consul> | The server running this is a managed dedicated server, of unknown spec. |
21:56 | < Shoukanjuu> | Could be...worse? |
21:56 | <+Consul> | I posted the full story (skipping over the part where I made a bad decision and handled each record as a separate query in a loop) to the WTF forums, hoping someone there has an idea. |
21:57 | <+Consul> | Theoretically, it's faster to shove all of your updates into a single query (or so I'm told), but I've never run into a situation where it mattered. |
21:58 | <+Consul> | Even then, I'd have to make this new query in a separate text file, and call MySQL to run it directly. |
21:58 | < Shoukanjuu> | Mmm. |
21:58 | <+Consul> | The tab-delimited file holding this information is 760MB in size. |
22:00 | <+Consul> | Unless I can get diffs straight from the third party, I think we're in trouble. |
22:02 | < Shoukanjuu> | Sounds like it. |
22:03 | <+Consul> | I don't know enough to know if that kind of import is something that's normally handled by anything anywhere. Obviously, the third party has hardware that can handle the exports. |
22:07 | < Shoukanjuu> | Well, if it *can't* be done with the hardware they have |
22:08 | < Shoukanjuu> | They shouldn't be asking you >_> |
22:08 | < Shoukanjuu> | Either way, you would probably have to test something |
22:32 | <+Consul> | I feel like a moron, though, becaude given the nature of the data, I should've known the number would be this high. |
22:36 | < Shoukanjuu> | Feh |
22:36 | <+Consul> | And I could've fought to have it done a better way from the beginning. |
22:36 | < Shoukanjuu> | Nothing you c an do about that, now |
22:37 | < Shoukanjuu> | No sense in worrying about it. LEarn from that mistake for the next time, but for now, worrying about it will slow you down |
22:39 | <+Consul> | I just checked the site, and their database is completely broken now. *sigh* |
22:40 | <+Consul> | The host was supposed to reboot the computer. |
22:40 | <+Consul> | We do have a backup of it, though. |
22:40 | <+Consul> | At least, last I checked, we do. |
22:51 | | AnnoDomini [AnnoDomini@Nightstar-29753.neoplus.adsl.tpnet.pl] has quit [Quit: "General! Strike me down, then have every last man, woman and child put to the sword. There's no point going on anymore, not now that it's all gone..." "At once, sire."] |
22:54 | <@McMartin> | Hrm. Anyone here running Linux that can test an initial SVN import for me? |
22:57 | <+Consul> | McMartin: Well, I'm running Linux, but I'm having a serious crisis of confidence right now... |
22:57 | <@McMartin> | As long as you have gcc and make, that's all I need. |
22:57 | <@McMartin> | Oh, and SVN. |
22:58 | <+Consul> | Well, I do have those. |
22:58 | <@McMartin> | If you do the base checkout command at http://sourceforge.net/svn/?group_id=225631 |
22:58 | <+Consul> | I'm new to SVN, so I might need a little handholding.. |
22:58 | <@McMartin> | And the cd to the root directory, does it build? |
22:58 | <+Consul> | Hang on a sec... |
22:58 | <@McMartin> | (Checkout size is less than a meg, so it shouldn't be too large) |
22:59 | <+Consul> | Is frotz the program I want, or is that their "example" program? |
22:59 | <@McMartin> | Frotz is the program you want. |
22:59 | <+Consul> | hang on, phone... |
22:59 | <@McMartin> | Well. Frotz is what we're testing here. If you're using a modern Linux it's very likely that the code itself won't run properly in your terminal. |
23:00 | <@McMartin> | But getting the source code in a way that collaborators can get patches in is part of the reason we're doing this. |
23:05 | | Attilla [~The.Attil@92.20.0.ns-26568] has quit [Ping Timeout] |
23:05 | | Attilla [~The.Attil@92.20.0.ns-26568] has joined #code |
23:05 | | mode/#code [+o Attilla] by ChanServ |
23:06 | <+Consul> | Okay I have it, so just make/make install, then? |
23:06 | <@McMartin> | Don't bother with the install |
23:06 | <@McMartin> | As I said, this software doesn't actually run right. |
23:06 | <+Consul> | ./configure/make? |
23:06 | <@McMartin> | There is no configure step |
23:06 | <+Consul> | Hehe |
23:06 | <+Consul> | so, make it is |
23:07 | <+Consul> | It seems to have worked. |
23:07 | <@McMartin> | (At present, the best Unix program for interpreting Z-Code is my own fork of this project) |
23:07 | <@McMartin> | (Which, with luck, will soon no longer be as necessary) |
23:07 | <@McMartin> | Excellent. |
23:08 | <@McMartin> | Thanks a lot. |
23:08 | <+Consul> | http://rafb.net/p/k2ymwa78.html |
23:08 | <+Consul> | What is it? |
23:08 | <@McMartin> | It's an interpreter for Infocom's old game format. |
23:08 | <@McMartin> | Which is still being targeted by text adventure authors. |
23:08 | <+Consul> | D'oh! THAT'S where I heard that word before! |
23:09 | <@McMartin> | However, it's got issues with unicode terminals and such, so at present you'd want to use the "nfrotz" fork which plays nicer with ncursesw and such. |
23:09 | <@McMartin> | Yeah, it's the light spell from the Enchanter series. |
23:09 | <@McMartin> | Lots and lots of Interactive Fiction tools are named after Enchanter spells. |
23:10 | | * McMartin is developing a game-browser system called "Blorple", which is from the third Enchanter game. |
23:10 | <+Consul> | I'm on a 64-bit system too, if that helps. |
23:10 | <@McMartin> | That's worth knowing. |
23:10 | <@McMartin> | (My local test was on a 32-bit one) |
23:12 | <+Consul> | So I can delete it now? :-) |
23:13 | <+Consul> | You know what would be hilarious? |
23:13 | <+Consul> | A text adventure with cutscenes. |
23:14 | <@McMartin> | If you count comic panels, it's been done. |
23:14 | <@EvilDarkLord> | Is it possible in HTML to place an image partially outside the screen? |
23:14 | <@McMartin> | IF is still a pretty active community. |
23:14 | <+Consul> | No, just pure text. |
23:14 | <@McMartin> | Oh. That's done all the time, then. |
23:14 | <+Consul> | You go somewhere, then suddenly a crapload of narrative appears. |
23:14 | < Vornicus> | EDL: pretty easily, actually, yes. |
23:14 | <@McMartin> | They're just "non-interactive sequences". |
23:14 | < Vornicus> | use the positioning tools. |
23:14 | <@McMartin> | The community is divided on how wise this is. |
23:14 | <+Consul> | That seems hilarious to me. |
23:15 | <@EvilDarkLord> | Vornicus: How exactly? A minion of mine is having trouble with it, apparently. |
23:15 | <+Consul> | I'm a little frightened to learn it's done seriously. |
23:15 | <@McMartin> | Well, it's kind of admitting "I'm not capable of making this properly interactive" |
23:15 | <+Consul> | I was just thinking about doing an text IF version of Final Fantasy 10. |
23:15 | <@McMartin> | But people who don't want to bother writing a conversation engine and don't like menus will often have TALK TO NPC trigger one, for instance. |
23:15 | <@EvilDarkLord> | If you can give a oneliner example that'd be perfect, I'm not having any luck googling for it. |
23:16 | <+Consul> | Well, not thinking about actually doing it, but about how funny it might be, |
23:16 | <@McMartin> | http://www.ifwiki.org/index.php/Weishaupt_Scholars |
23:17 | < Vornicus> | EDL: give me some idea what you're looking for. |
23:17 | <+Consul> | Heh |
23:17 | <@McMartin> | (If you actually want a z-code terp for your system, http://www.ifarchive.org/if-archive/infocom/interpreters/frotz/nfrotz-0.3.3.tgz is the one you want) |
23:18 | <@EvilDarkLord> | Vorn: Ummm. At its simplest, a png whose left side is outside the visible area. |
23:18 | < Vornicus> | in the style: position: fixed, left: -5px <--- should probably work? |
23:18 | <@EvilDarkLord> | Ah, cheers. |
23:19 | <@McMartin> | (WS actually includes a number of events that are, for all practical purposes, cutscenes.) |
23:19 | <@McMartin> | (In particular, just about every fight scene, because really, PWNZN0R BIZNATCH WITH L33T N1NJ4 SK1LLZ should cover player intent just fine.) |
23:41 | | crem [~moo@Nightstar-28703.adsl.mgts.by] has quit [Connection reset by peer] |
23:42 | | Netsplit DeepThought.NY.US.Nightstar.Net <-> Blargh.CA.US.Nightstar.Net quits: @Kazriko |
23:43 | | Netsplit over, joins: Kazriko |
23:43 | | crem_ [~moo@Nightstar-28703.adsl.mgts.by] has joined #code |
23:43 | | mode/#code [+o Kazriko] by ChanServ |
23:43 | | AFKSkull [~none@Nightstar-7066.dyn.optonline.net] has quit [Ping Timeout] |
23:44 | | ASCIISkull [~none@Nightstar-7066.dyn.optonline.net] has joined #code |
23:47 | | Netsplit DeepThought.NY.US.Nightstar.Net <-> Blargh.CA.US.Nightstar.Net quits: crem_, @Kazriko |
23:47 | | AFKSkull [~none@Nightstar-7066.dyn.optonline.net] has joined #code |
23:48 | | ASCIISkull [~none@Nightstar-7066.dyn.optonline.net] has quit [Ping Timeout] |
23:49 | | Netsplit over, joins: Kazriko, crem_ |
23:49 | | mode/#code [+o Kazriko] by ChanServ |
23:59 | | You're now known as TheWatcher[T-2] |
--- Log closed Tue Aug 05 00:00:30 2008 |