--- Log opened Fri Dec 08 00:00:02 2006 |
00:04 | | MyCatOwnz [~mycatownz@Nightstar-379.dsl.in-addr.zen.co.uk] has joined #code |
00:07 | | * Vornicus floons |
00:16 | | * MyCatOwnz pthreads |
00:16 | | MyCatOwnz [~mycatownz@Nightstar-379.dsl.in-addr.zen.co.uk] has quit [Quit: BRB, two seconds.] |
00:17 | | MyCatOwnz [~mycatownz@Nightstar-379.dsl.in-addr.zen.co.uk] has joined #code |
00:24 | <@Vornicus> | that was more than two seconds |
00:25 | | Takyoji [~Takyoji@Nightstar-25280.dhcp.roch.mn.charter.com] has joined #code |
00:26 | < Takyoji> | Anyone know Javascript? Because I need a simple script where you click on a link that says "Expand" or "More" and have it print various things media, not just text |
00:26 | | Takyoji [~Takyoji@Nightstar-25280.dhcp.roch.mn.charter.com] has left #code [Leaving] |
00:27 | | Takyoji [~Takyoji@Nightstar-25280.dhcp.roch.mn.charter.com] has joined #code |
00:30 | <@ToxicFrog> | This should be a simple application of document.write() or whateverthehell JS calls it, I think. |
00:30 | < EvilDarkLord> | Mmm. Just add tags where text would go normally. |
00:36 | < Takyoji> | So just have it write the content when it is clicked.. or could I make it a little easier by having to have the content inside of some tags with a specific name and make it visible on click? |
00:37 | | AnnoDomini [~fark.off@Nightstar-29116.neoplus.adsl.tpnet.pl] has quit [Quit: Some people find sanity a little confining.] |
00:38 | < Takyoji> | Otherwise... I don't usually use Javascript |
00:38 | < Takyoji> | Because I basically rely on PHP |
00:40 | < EvilDarkLord> | The one where you toggle visibility sounds easier, especially if the stuff inside won't be changing. |
00:41 | < Takyoji> | But how would I do that though? |
00:41 | < EvilDarkLord> | And remember: When in doubt, google and have a look at w3schools.com along with w3.org. |
00:41 | < EvilDarkLord> | Now, SLEP. |
00:41 | < Takyoji> | Well, it's going to be in a password-protected backend of a store |
00:42 | < Takyoji> | So it won't make a difference for Google |
00:42 | < EvilDarkLord> | Google for info, that is. |
00:43 | | * EvilDarkLord SLEP. |
00:43 | < Takyoji> | But what I'm asking is, how could I make it change visibility inside of some named tag? |
00:43 | < Takyoji> | crap.. |
00:43 | < Takyoji> | Or wouldn't I be able to do that? |
00:43 | <@ToxicFrog> | I think that's possible but I don't know how. |
00:43 | <@ToxicFrog> | As EDL said, look at the docs. |
00:43 | < Takyoji> | oh yea |
00:44 | < Takyoji> | But it hardly even has any commands |
00:44 | < Takyoji> | Is Javascript a very small language or what? |
00:44 | < Takyoji> | like around 100 commands? |
00:44 | <@ToxicFrog> | ... |
00:44 | <@ToxicFrog> | First of all, by "commands", do you mean "reserved words" or "builtin functions"? |
00:44 | | ChalcyGone [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
00:45 | | ChalcyGone is now known as Chalcedon |
00:45 | <@ToxicFrog> | And if the latter, do you mean "functions defined by the language spec", or "functions available in most browsers"? |
00:45 | <@ToxicFrog> | In either case I cannot help you, because I don't use JS, but precision of terminology is important. |
00:45 | | Chalcy [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout] |
00:46 | < Takyoji> | yea, I haven't relly made my own Javascript application, but it looks very simple |
00:46 | < Takyoji> | really* |
00:49 | | * Janus will stick with his bust shell, thank you. |
00:49 | <@ToxicFrog> | Bash. |
00:49 | <@Vornicus> | pff |
00:50 | | * Vornicus fiddles, ponders that he really should look for a web host. |
00:50 | <@ToxicFrog> | Dreamhost. I cannot pimp them enough. |
00:51 | <@Vornicus> | ah, of course |
00:51 | <@ToxicFrog> | If ever I decide to set up an external webserver, that's where I'll be getting it, although I'll need to register the domain name elsewhere. |
00:52 | <@Vornicus> | gner, I've been planning on Postgres. |
00:55 | <@ToxicFrog> | Aah. And they only have mySQL. |
00:55 | < MyCatOwnz> | ToxicFrog: I know it's a bit, uh, feature-light, but doesn't it usually suffice for most webapps? |
00:56 | <@Vornicus> | MySQL is used by, among others, Wikipedia. |
00:56 | <@Vornicus> | So yeah, it usually suffices. |
00:56 | <@Vornicus> | But Postgres has REAL ULTIMATE POWER |
00:56 | <@Vornicus> | And I've kinda gotten used to that. |
00:57 | <@ToxicFrog> | MCO: ? |
00:57 | <@ToxicFrog> | Context please? |
00:58 | <@Vornicus> | I think he meant to say that to me |
00:58 | <@ToxicFrog> | Aah. |
00:58 | < MyCatOwnz> | I was replying to: "00:55 <@ToxicFrog> Aah. And they only have mySQL." |
00:58 | < MyCatOwnz> | I mean, a lot of phpBBs and the like manage to survive on top of it... |
00:58 | <@ToxicFrog> | It should have been directed at Vorn, then. |
00:59 | <@ToxicFrog> | Because I really know nothing about the differences between the *SQLs, and was reacting to Vorn's "gner, I've been planning on Postgres." |
00:59 | < MyCatOwnz> | ...though I don't actually know whether that's by merit or simply by their having much better marketing savvy than the Postgres people. |
00:59 | < MyCatOwnz> | Oh, right, I see. Sorry. |
00:59 | <@Vornicus> | Postgres is the king of features among free dbs. |
01:03 | <@Vornicus> | MySQL is faster, but is very weak on features; SQLite is incredibly fast but you really can't use it in web environments. |
01:08 | | Chalcy [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
01:08 | | mode/#code [+o Chalcy] by ChanServ |
01:09 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Killed (NickServ (GHOST command used by Chalcy))] |
01:09 | | Chalcy is now known as Chalcedon |
01:13 | | Chalcy [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
01:13 | | mode/#code [+o Chalcy] by ChanServ |
01:14 | | Vornicus [~vorn@Nightstar-18307.slkc.qwest.net] has quit [Quit: ] |
01:15 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout] |
01:17 | < MyCatOwnz> | ...odd thought. |
01:18 | < MyCatOwnz> | How fast would SQLite3 be if you put the database on top of a tmpfs mountpoint instead of a hard disk? |
01:19 | < MyCatOwnz> | (I'm thinking of the new-ish tmpfs implementation in Linux, which uses any spare RAM and swapfile space to make /tmp run much faster than any other filesystem.) |
01:20 | | Ev3 [~-@87.72.36.ns-26407] has joined #Code |
01:45 | | Takyoji [~Takyoji@Nightstar-25280.dhcp.roch.mn.charter.com] has quit [Quit: Leaving] |
02:25 | | Vornicus-Latens is now known as Vornicus |
02:25 | | * Janus ponders... |
02:26 | < Janus> | Would it be possible to create a video from a long series of bitmaps as frames? |
02:27 | < Vornicus> | Sure. |
02:27 | < Vornicus> | You need a gif or avi tool, though |
02:27 | | Chalcy is now known as Chalcedon |
02:28 | <@ToxicFrog> | GIMP will do this handily, for creating an animated gif. |
02:28 | <@ToxicFrog> | If you want an actual video file something else will be required. |
02:28 | <@ToxicFrog> | I believe mencoder will do this, but don't quote me on that. |
02:28 | < Janus> | Great. I'm guessing adding sound into it would require something extra though. |
02:29 | <@ToxicFrog> | Sound will definitely not work in an animated gif, you need an actual video file for that. |
02:29 | < Janus> | I know~ |
02:29 | <@ToxicFrog> | In which case, assuming that mencoder will generate video from a set of still frames, it's easy enough to tell it to mux in a sound file as well. |
02:31 | < Janus> | Alrighty. In that case, there won't be a need to muck around with screen capturing things; it would be easier to simply code in something that saves a .bmp of the screen at a set pace. |
02:31 | <@ToxicFrog> | ...what are you actually after? |
02:32 | <@ToxicFrog> | An in-game movie generation feature? |
02:32 | < Janus> | Yep. |
02:32 | <@ToxicFrog> | Ok, first of all, if you implement this as "a screenshot every frame", people will hunt you down and kill you in the face. |
02:33 | < Janus> | No-no, not that thorough. |
02:33 | <@ToxicFrog> | The way this is typically done is by recording control input and AI seeds and the like and replaying it in the engine, but this has the obvious disadvantage that it can only be replayed by people with the game. |
02:34 | < Janus> | Well... this is less for the end users and more for, uh, me. It would take the pain out of the trailer-editing process. |
02:37 | < Janus> | I'm trying to avoid the "Let's pop some features in" mindset until there's actually a game to featurize. |
02:38 | <@ToxicFrog> | Aah. |
02:38 | <@ToxicFrog> | Perhaps you should wait for trailer building until there's a game to build trailers for? |
02:39 | | Raif [~corvusign@Nightstar-16707.hsd1.ca.comcast.net] has quit [Killed (NickServ (GHOST command used by Raif_))] |
02:39 | | Raif_ [~corvusign@Nightstar-18227.hsd1.wa.comcast.net] has joined #Code |
02:39 | | Raif_ is now known as Raif |
02:40 | < Janus> | Heh, very true. Publicity with the left foot, actual development with the right. |
02:41 | | * Janus has two left feet at the moment. |
02:44 | < Janus> | It's a sucky stance to take, granted, but I'd like to have /something/ to show off by now; colleges are looking for portfolios and Lordy knows I've quite a bare folder here. |
02:55 | | MyCatOwnz [~mycatownz@Nightstar-379.dsl.in-addr.zen.co.uk] has quit [Quit: Sleeping.] |
03:07 | | Janus [~Cerulean@Nightstar-10302.columbus.res.rr.com] has quit [Quit: 14% '2] |
04:06 | | Chalcy [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
04:06 | | mode/#code [+o Chalcy] by ChanServ |
04:07 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout] |
04:11 | | ChalcyGone [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
04:12 | | Chalcy [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout] |
04:55 | | ReivWork is now known as Reiver |
04:59 | | ChalcyGone [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Quit: ] |
05:52 | <@ToxicFrog> | Ok. I thing this will work! |
05:52 | | * Vornicus hopes it does. |
05:53 | <@ToxicFrog> | But first I have to fix me launcher script. |
05:55 | <@ToxicFrog> | Argh,. |
05:55 | | Vornicus is now known as Vornicus-Latens |
09:04 | | AnnoDomini [~fark.off@Nightstar-29116.neoplus.adsl.tpnet.pl] has joined #Code |
09:24 | | ToxicFrog [~ToxicFrog@Admin.Nightstar.Net] has quit [Operation timed out] |
09:24 | | ToxicFrog [~ToxicFrog@Admin.Nightstar.Net] has joined #code |
09:24 | | mode/#code [+o ToxicFrog] by ChanServ |
09:26 | | EvilDarkLord [althalas@Nightstar-15301.a88-115-211-62.elisa-laajakaista.fi] has quit [Ping Timeout] |
09:28 | | EvilDarkLord [althalas@Nightstar-15301.a88-115-211-62.elisa-laajakaista.fi] has joined #code |
09:57 | | You're now known as TheWatcher[wr0k] |
09:57 | | Reiver is now known as ReivZzz |
11:29 | | ReivZzz is now known as ReivSLEP |
12:00 | | AnnoDomini [~fark.off@Nightstar-29116.neoplus.adsl.tpnet.pl] has quit [Ping Timeout] |
12:06 | | AnnoDomini [~fark.off@Nightstar-28974.neoplus.adsl.tpnet.pl] has joined #Code |
12:09 | | MyCatOwnz [~mycatownz@Nightstar-379.dsl.in-addr.zen.co.uk] has joined #code |
12:23 | | MyCatOwnz [~mycatownz@Nightstar-379.dsl.in-addr.zen.co.uk] has quit [Quit: I have to go now.] |
12:36 | | Thaqui is now known as ThaquiSleep |
15:27 | | You're now known as TheWatcher |
17:20 | | You're now known as TheWatcher[afk] |
18:10 | | Vornicus [~vorn@Nightstar-18307.slkc.qwest.net] has joined #code |
18:10 | | mode/#code [+o Vornicus] by ChanServ |
18:13 | | * ToxicFrog fixes a not-quite-bug in the OO library that causes ::Extend() to make a deep copy of the entire class tree and then throw it away. |
18:15 | <@Vornicus> | ...that's a bit of a bug. |
18:17 | <@ToxicFrog> | Well, it does a deep copy of the parent class to create the child class. |
18:17 | <@ToxicFrog> | parent::super is a reference the definition table of the superclass, and since it's a deep copy, it copies that too. |
18:17 | <@ToxicFrog> | And everything in it. |
18:17 | <@ToxicFrog> | Etc. |
18:18 | <@ToxicFrog> | It doesn't actually copy the entire class tree, but it does copy an entire branch of it. |
18:18 | <@ToxicFrog> | Then it discards the copy by [[ new.super = self ]] |
18:19 | <@ToxicFrog> | If parent classes kept track of their children it /would/ copy everything. |
18:19 | <@Vornicus> | ...you know I'm not sure that's that big a deal - class trees tend to be wide instead of deep |
18:19 | <@ToxicFrog> | Yeah. It's not actually a noticeable performance hit and it doesn't affect the behaviour at all. |
18:20 | <@ToxicFrog> | But it's inelegant. |
18:23 | <@ToxicFrog> | This is why it's a "not quite bug" rather than a bug. |
18:24 | <@Vornicus> | It's also not how you described it in the first place. :P |
18:26 | <@ToxicFrog> | I just woke up. |
18:28 | <@ToxicFrog> | Argh. I really need to write the autoloader rules. |
18:29 | <@ToxicFrog> | ...hmm. |
18:30 | <@ToxicFrog> | Wizard:Sanitize() should also not return a reference to the superclass. |
18:31 | <@ToxicFrog> | ben@orias ~ |
18:31 | <@ToxicFrog> | $ telnet localhost 8001 |
18:31 | <@ToxicFrog> | Trying 127.0.0.1... |
18:31 | <@ToxicFrog> | Connected to localhost. |
18:31 | <@ToxicFrog> | Escape character is '^]'. |
18:31 | <@ToxicFrog> | {|class=PlayerJoinRequest||name=foo||gender=bar||spectator=false|} |
18:31 | <@ToxicFrog> | {|wizards={|foo={|minions={}||name=foo||status={}||gender=bar||gestures={|L={|1= none||2=none||3=none||4=none||5=none||6=none||7=none|}||R={|1=none||2=none||3=no ne||4=none||5=none||6=none||7=none|}|}|}|}|} |
18:31 | <@ToxicFrog> | Connection closed by foreign host. |
18:32 | <@ToxicFrog> | Which is actually not the intended behaviour, but close enough to make me squee |
18:33 | | You're now known as TheWatcher |
18:34 | <@ToxicFrog> | And the generated structure is syntactically valid. |
18:44 | <@ToxicFrog> | Hmm |
18:44 | <@ToxicFrog> | pcall() and lua_pcall() are not semantically equivalent. |
18:44 | | ToxicFrog [~ToxicFrog@Admin.Nightstar.Net] has quit [Quit: Leaving] |
18:45 | | ToxicFrog [~ToxicFrog@Admin.Nightstar.Net] has joined #code |
18:45 | | mode/#code [+o ToxicFrog] by ChanServ |
18:45 | <@ToxicFrog> | Ow, what the hell was that? |
18:45 | <@ToxicFrog> | Anyways. |
18:45 | <@ToxicFrog> | pcall() and lua_pcall() are not semantically equivalent. |
18:45 | <@Vornicus> | QUit:Leaving |
18:45 | <@Vornicus> | okay, why not. |
18:46 | <@ToxicFrog> | I don't know. |
18:46 | <@Vornicus> | okay, how not? |
18:46 | <@ToxicFrog> | but pcall() takes a function and zero or more arguments, calls the function with those arguments, and traps errors. |
18:46 | <@ToxicFrog> | (it is a Lua function) |
18:46 | <@ToxicFrog> | lua_pcall() (which is a C function) takes a function, another function, and zero or more arguments. |
18:47 | <@ToxicFrog> | If the first function errors and the second function is not NULL, it calls that function in the scope of the error. |
18:47 | <@ToxicFrog> | Thus allowing you to drop into the debugger or generate a stack trace or similar. |
18:47 | <@ToxicFrog> | If the second function is NULL it behaves the same as pcall() |
18:48 | <@ToxicFrog> | Thing is, with just pcall(), by the time it returns and you find out there's been an error the stack has unwound. |
18:48 | <@ToxicFrog> | Whereas with lua_pcall you can pass in, say, debug.debug as the error handler, or something more sophisticated. |
18:49 | <@ToxicFrog> | And bam, it's almost as good as GDB. |
18:51 | <@ToxicFrog> | And now Event::Deserialize() is choking on nested tables. |
18:51 | <@ToxicFrog> | Gnar. |
18:53 | <@ToxicFrog> | ...oh, ^%$%^&#$^*#$%@# |
18:56 | | * ToxicFrog rips out and rewrites a chunk of the grammar for his serialization format |
18:57 | | * Vornicus writes a grep that looks kinda funny. |
18:57 | <@Vornicus> | egrep -v '^#|^$' |
18:57 | <@ToxicFrog> | Filters out comments and blank lines. |
18:58 | <@Vornicus> | Yeah. BUt it looks like it's doing something to swear words. |
18:58 | <@Vornicus> | :P |
19:00 | | * ToxicFrog is playing with regexes that are actually fairly simple, but are hard to hold in your head because each is half a dozen string concatenations |
19:00 | <@Vornicus> | cute |
19:01 | <@ToxicFrog> | Yeah, because I need to be able to redefine TS FS EQ FE TE. |
19:01 | <@Vornicus> | what? |
19:01 | <@ToxicFrog> | At the moment they're {<=>} but they'll have to be changed to nonprintings before the final release. |
19:01 | <@ToxicFrog> | Table start, field start, equals, field end, table end. |
19:02 | <@Vornicus> | Why do you want them to be non-printings? |
19:02 | <@ToxicFrog> | Because I don't want to players to be able to generate invalid packets by typing "><class=NotARealClassName" into the say-something box. |
19:03 | <@Vornicus> | And non-printings prevent that how, exactly? |
19:03 | <@ToxicFrog> | Because you can't type nonprintings into it. |
19:03 | <@ToxicFrog> | this doesn't stop /clients/ from generating bad packets, but that's what the error detection code is for. |
19:03 | <@ToxicFrog> | The point is, I want players to be able to write messages containing >, <, {, }, and =. |
19:04 | <@ToxicFrog> | And other printable characters. |
19:04 | <@Vornicus> | true |
19:04 | <@ToxicFrog> | Both "use nonprinting characters for seperators" and "write escape sequences" are equally effective for this, and the former is much easier. |
19:05 | <@ToxicFrog> | At the moment, they're printables, because I need to be able to write serialized events by hand for testing purposes. |
19:07 | <@Vornicus> | hm |
19:11 | | * ToxicFrog rocks out to Dead Batteries |
19:11 | | * Vornicus rocks out to OC Remix. |
19:13 | <@ToxicFrog> | ...yes, but which one? |
19:13 | <@Vornicus> | technically it's only in my head. It's some warpy bubble bobble thing |
19:13 | <@ToxicFrog> | Aah. |
19:13 | <@ToxicFrog> | ThisIsNotATrueEnding? |
19:14 | <@Vornicus> | Perhaps |
19:14 | <@ToxicFrog> | (Dead Batteries is the remix of Sonic 3 & Knuckles - Flying Battery Zone scored for r0xx0r) |
19:16 | | ThaquiSleep is now known as Thaqui |
19:18 | <@ToxicFrog> | There, working. |
19:18 | <@Vornicus> | yey |
19:20 | <@ToxicFrog> | MESSAGE -> TABLE |
19:20 | <@ToxicFrog> | TABLE -> ts ENTRIES te |
19:20 | <@ToxicFrog> | ENTRIES -> ENTRY ENTRIES | epsilon |
19:20 | <@ToxicFrog> | ENTRY -> fs VALUE eq VALUE fe |
19:20 | <@ToxicFrog> | VALUE -> string | number | boolean | TABLE |
19:29 | <@ToxicFrog> | Well, that's a bug. |
19:42 | | Mahal [~Mahal@Nightstar-12600.worldnet.co.nz] has joined #Code |
19:42 | | mode/#code [+o Mahal] by ChanServ |
19:50 | | * ToxicFrog idly constructs makefile rules for the easy creation of event definition skeletons |
19:52 | | * Vornicus fiddles with PAM, LDAP, and apache authentication |
20:01 | <@ToxicFrog> | Hmm. |
20:01 | <@ToxicFrog> | PlayerJoinRequest is still not behaving right. |
20:01 | <@Vornicus> | Bite its arm off. |
20:01 | <@ToxicFrog> | It's letting one player join multiple times. |
20:03 | <@ToxicFrog> | There we go. |
20:03 | <@ToxicFrog> | And there's PlayerReady working. |
20:03 | <@ToxicFrog> | I now have the minimum necessary for players to join and signal readiness. |
20:05 | <@Vornicus> | yey |
20:06 | | * Vornicus fights with PAM, LDAP, and apache auth |
20:06 | <@ToxicFrog> | Heh. |
20:06 | | * ToxicFrog offers Vorn a Tozt.7 |
20:07 | | * Vornicus wishes |
20:22 | | ReivSLEP is now known as Reiver |
21:12 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
21:13 | | mode/#code [+o Chalcedon] by ChanServ |
21:36 | | Janus [~Cerulean@Nightstar-10302.columbus.res.rr.com] has joined #Code |
21:37 | | Reiver is now known as ReivOut |
21:40 | | Thaqui [~Thaqui@Nightstar-12455.jetstream.xtra.co.nz] has quit [Ping Timeout] |
21:46 | | Thaqui [~Thaqui@Nightstar-13083.jetstream.xtra.co.nz] has joined #code |
22:07 | <@Vornicus> | ...great, now it's gone from BubbleBobble to DOnkey Kong Country. |
22:08 | | You're now known as TheWatcher[T-2] |
22:10 | | Takyoji [~Takyoji@Nightstar-25280.dhcp.roch.mn.charter.com] has joined #code |
22:13 | | You're now known as TheWatcher[zZzZ] |
22:13 | | Janus [~Cerulean@Nightstar-10302.columbus.res.rr.com] has quit [Quit: Clair jouets voire.] |
22:18 | | TakyojiClone [~Takyoji@Nightstar-25280.dhcp.roch.mn.charter.com] has joined #code |
22:18 | | Takyoji [~Takyoji@Nightstar-25280.dhcp.roch.mn.charter.com] has quit [Ping Timeout] |
22:20 | | TakyojiClone is now known as Takyoji |
22:50 | < Takyoji> | this would work right? http://pastie.caboo.se/26634 |
22:50 | < Takyoji> | For keeping banned people off of a page |
22:54 | <@ToxicFrog> | ...can't you do the test in the SQL query? |
23:03 | < Takyoji> | oh duh |
23:04 | < Takyoji> | you mean, to have " where address='".$_SERVER['REMOTE_ADDR'].'"? |
23:09 | <@ToxicFrog> | Yes. |
23:10 | <@ToxicFrog> | Then, if the query returned more than 0 tuples, you know the address is in the banlist. |
23:11 | < Takyoji> | yes |
23:12 | < Takyoji> | Otherwise, since its getting near Christmas and all. Anyone know of a couple wonderful programming books? |
23:17 | <@ToxicFrog> | Any language or discipline in particular, or just programming in general? |
23:26 | < Takyoji> | PHP, and/or possibly a Windows-based language (although I'm not a big fan of Microsoft now) such as C++ or something |
23:30 | <@Vornicus> | C++ is not a Windows-based language |
23:30 | <@Vornicus> | THe Art of COmputer Programming is great |
23:32 | < Takyoji> | k |
23:32 | <@Vornicus> | C# is a different sack of potatoes. |
23:33 | <@Vornicus> | I highly recommend Structure and Interpretation of Computer Programs, and the series of (free on teh intarnewbs!) videos based on it. |
23:35 | <@Vornicus> | http://swiss.csail.mit.edu/classes/6.001/abelson-sussman-lectures/ |
23:36 | < Takyoji> | ahh yes, that |
23:36 | < AnnoDomini> | "Intarnewbs?" <_< |
23:37 | <@Vornicus> | Intarnewbs! |
23:38 | < AnnoDomini> | I'm rather concerned about the context. Why would newbies to 'teh intarwub' provide anyone with programming videos? |
23:39 | < Takyoji> | Holy crap, that's a big book |
23:39 | < Takyoji> | What language is it in? |
23:39 | <@Vornicus> | SICP uses Scheme |
23:39 | <@Vornicus> | TAoCP uses MIX, or, in the upcoming fourth edition, MMIX. |
23:39 | <@Vornicus> | Which is a custom machine language |
23:39 | < Takyoji> | I mean the "The Art of Computer Programming" |
23:40 | < Takyoji> | oh |
23:40 | <@Vornicus> | It is about programming, algorithms, computational mathematics, and many other things. |
23:40 | <@Vornicus> | It is officially the most educational book I have ever used. |
23:46 | <@ToxicFrog> | Yes. It's not about any specific language. It just uses a certain language (Scheme or MIX, depending on which one you're reading) to get the point across. |
23:47 | < Takyoji> | Is O'Rielly a good company for website-programming books or not? |
23:47 | <@ToxicFrog> | O |
23:47 | <@ToxicFrog> | O'Reilly is great for reference materials, not sure how good they are at teaching. |
23:47 | <@Vornicus> | O'Reilly does very high quality reference manuals |
23:48 | < Takyoji> | oh |
23:48 | < Takyoji> | k |
23:50 | <@Vornicus> | I was not impressed with Learning Java by them. |
23:50 | <@ToxicFrog> | (in particular, their "%s pocket reference" and "%s in a nutshell" lines) |
23:51 | | * Vornicus still wants a big picture of the "practical unix security" spoof |
--- Log closed Sat Dec 09 00:00:02 2006 |