--- Log opened Thu Jan 24 00:00:42 2013 |
00:27 | | You're now known as TheWatcher[T-2] |
00:31 | | You're now known as TheWatcher[zZzZ] |
00:31 | | RichyB [richardb@Nightstar-75bf2789.customer.m-online.net] has joined #code |
01:00 | <@Azash> | Reiv: Most bueno |
01:00 | <@Reiv> | bueno? |
01:01 | <@Azash> | As in, that's pretty cool |
01:01 | | Typh|Class is now known as Typherix |
01:13 | <@Reiv> | Aha, yes |
01:13 | <@Reiv> | I work with similar sets of tables a lot. |
01:13 | <@Reiv> | I decided long ago that giving them meaningful aliases was a hell of a lot easier to work with. |
01:13 | <@Reiv> | It's got small smatterings of hungarian notation, but I have my reasons. >_> |
01:14 | <&McMartin> | Magyar raiders rampaging through your code? |
01:14 | <@Reiv> | All tables are renamed, eg. odw.odw_foo_bar_etc_install to t_inst |
01:15 | <@Reiv> | The t_ bit at the frost really isn't strictly needed, but it does a couple things. |
01:15 | <@Reiv> | First, if I have to start futzing with subqueries, I use s_inst for the internal one, so I can call t_inst = s_inst and there's a minimum of chaos~ |
01:16 | <@Reiv> | And it means that I can hit ctrl+F and find the table references quickly without hitting false positives. |
01:16 | <@Reiv> | Also helps with visual scanning, 'cuz it gives a reasonably consistent 'look' to a table alias, which can occasionally help fix brainfucks. |
01:17 | <@Reiv> | "Oh, right. I forgot to use a table name on that one." etc |
01:24 | | RichyB [richardb@Nightstar-75bf2789.customer.m-online.net] has quit [Client closed the connection] |
01:28 | <~Vornicus> | just as long as it's not bulgarian notation |
01:28 | <&McMartin> | As a bulgarian notation we gain several bonuses |
01:29 | <&McMartin> | Apparently Micronesia is the new unstoppably devastating power in that mod, though. |
01:29 | <&McMartin> | It's good to be the nogovernmentruler_title |
01:34 | < Shellninja> | King Regency Council shall return one day to save the nation, indeed. |
01:41 | <@Reiv> | Quick help with regular expressions? |
01:42 | | * Vornicus gives Reiv the 200-character regex he used to lex schlockian |
01:42 | <@Reiv> | I am trying to do a find/replace. I want to find ")<newline>, (" so that I can remove selected newlines. |
01:42 | | Attilla [Obsolete@Nightstar-9e7fa2b2.range86-162.btcentralplus.com] has quit [Ping timeout: 121 seconds] |
01:42 | <~Vornicus> | language/ |
01:42 | <@Reiv> | Hm. |
01:42 | <@Reiv> | Notepad++ "Regular Expression" checkbox, with '. matches newline' selected. |
01:43 | <@Reiv> | I can turn it off if it meant much. |
01:43 | <~Vornicus> | okay. "\)\n, \(" should do it |
01:44 | <@Reiv> | Aw. Doesn't work. Not sure why. |
01:44 | | * Reiv go prod at it some more. |
01:44 | <@Reiv> | nope, ah well |
01:44 | <@Reiv> | I think it might be buggy. |
01:47 | <~Vornicus> | I've not known notepad++ to be particularly buggy |
01:47 | <~Vornicus> | there might be some turn of syntax that is needed |
01:56 | <&McMartin> | Reiv: Notepad++ has a non-regex mode that lets you use \t, \n, etc. as codes. |
01:56 | <&McMartin> | If it's a DOS thing you may have to call it \r\n? |
01:59 | <@Reiv> | McMartin: I was trying to find \n to no luck |
01:59 | <@Reiv> | I will try \r\n though! |
02:00 | <@Reiv> | ...you rock |
02:00 | <@Reiv> | Thank you! |
02:01 | <&McMartin> | Internet Standard Newlines. |
02:03 | <@Reiv> | That'd do it. Cheers. |
02:03 | | * Reiv swears |
02:04 | <@Reiv> | I... don't suppose there is a regex that goes "give me the 500th '), (' on each line" by chance?~ |
02:04 | <&McMartin> | There *is* but it's spectacularly obnoxious~ |
02:05 | <&McMartin> | There are extended regex mechanisms that do counting; I do not know if NP++ has them. |
02:06 | | Vash [Vash@Nightstar-221158c7.sd.cox.net] has joined #code |
02:06 | | mode/#code [+o Vash] by ChanServ |
02:08 | <@Reiv> | OK. I'll just scroll halfway and hit enter a few times. Close Enough(tm) |
02:16 | | VirusJTG_ [VirusJTG@Nightstar-09c31e7a.sta.comporium.net] has joined #code |
02:18 | | VirusJTG [VirusJTG@Nightstar-09c31e7a.sta.comporium.net] has quit [Ping timeout: 121 seconds] |
02:30 | <@Reiv> | OK now it gets /fun/ |
02:31 | <@Reiv> | I need to join two tables together. |
02:31 | <@Reiv> | One side has a nice clean integer, along the lines of 1234 |
02:31 | <@Reiv> | The other has a string. |
02:31 | <@Reiv> | 1234_01.JPG >_< |
02:31 | <&McMartin> | "BLAMELIST: no responsible users" |
02:31 | | * McMartin is an irresponsible user! |
02:32 | <@Reiv> | How the heck do I craft a join in SQL Server to do /that/. |
02:32 | <@celticminstrel> | Parse the string? |
02:33 | <@Reiv> | I'm... not an expert on the string functions in SQL server. |
02:36 | | himi [fow035@D741F1.243F35.CADC30.81D435] has quit [Client closed the connection] |
02:36 | | himi [fow035@D741F1.243F35.CADC30.81D435] has joined #code |
02:36 | | mode/#code [+o himi] by ChanServ |
02:56 | < JustBob> | I recommend duct tape. |
03:02 | | Nemu [NeophoxProd@Nightstar-75053a1b.asahi-net.or.jp] has quit [Ping timeout: 121 seconds] |
03:03 | | Nemu [NeophoxProd@Nightstar-9c2d5c09.asahi-net.or.jp] has joined #code |
03:05 | <@RobinStamer> | Reiv: JOIN ON dbo.RegExpLike(shit.str, STRING_CONCAT('^', good.id, '.*')) -- something like this |
03:05 | | * RobinStamer hasn't touched SQL in a long time |
03:05 | <@RobinStamer> | Just an FYI |
03:06 | | Nemu [NeophoxProd@Nightstar-9c2d5c09.asahi-net.or.jp] has quit [Client closed the connection] |
03:06 | | * RobinStamer is /very/ certain that isn't valid. |
03:06 | | * Reiv stares at it. |
03:06 | | * Reiv thinks he will hide under a rock. |
03:07 | | Nemu [NeophoxProd@Nightstar-9befb88e.asahi-net.or.jp] has joined #code |
03:07 | <@RobinStamer> | If the explicit joins don't work, you may have to use implicit joins. |
03:09 | <@Reiv> | Bloody things. |
03:10 | | * Reiv sigh, goes hits the interwebs. Wonders what even to use as the keywords. |
03:11 | <@RobinStamer> | Uhh? |
03:12 | <@RobinStamer> | Just use dbo.RegExpLike and implicit joins? |
03:12 | <@RobinStamer> | You'll need to find the function in SQL Server that does string concat |
03:12 | <@RobinStamer> | But after that you're golden. |
03:15 | < Xon> | regex + join. I guess you could distill more evil into an SQL query |
03:17 | <@RobinStamer> | Meh |
03:18 | <@RobinStamer> | I don't see an issue doing both at once |
03:19 | <@RobinStamer> | Better than my ex-CTO's idea of the perfect SQL table. |
03:19 | < Syk> | oh god |
03:19 | < Syk> | i just had a problem |
03:19 | <@RobinStamer> | (Said table stored CSV data from multiple sources, each using their own delimeters and columns) |
03:20 | < Syk> | and my first thought is "I could solve this with a PHP script!" |
03:20 | < Syk> | now i have a problem and a horrible feeling |
03:20 | <@RobinStamer> | (Said table was three columns itself: filename, date, line) |
03:21 | <@RobinStamer> | Hmm |
03:21 | <@RobinStamer> | Syk: actually that isn't that bad. |
03:22 | <@RobinStamer> | Aside from the PHP interpreter being quite insecure. |
03:24 | < Syk> | heh |
03:33 | | Kindamoody[zZz] is now known as Kindamoody |
03:41 | | * Vornicus futzes with js. |
03:43 | <@Reiv> | Vorn! |
03:43 | <@Reiv> | Help me with SQL Server. |
03:43 | <@Reiv> | You know you want to, it'll be fun! |
03:44 | <~Vornicus> | oh god |
03:45 | <~Vornicus> | I don't know anything about sql server and it looks like you're in the specifics neighborhood. |
03:46 | <@Reiv> | woe |
03:46 | <~Vornicus> | apparently some of the tools I could really use are actually in later versions of javascript, but I have no idea what stuff various browsers implement |
03:47 | <~Vornicus> | and my attempts at finding out have been less than successful. |
03:47 | <@RobinStamer> | Vornicus: what specifically? |
03:47 | <~Vornicus> | RobinStamer: well at the moment I'm looking at object.keys, which show up in js 1.8.5 |
03:48 | <@RobinStamer> | Ah |
03:48 | <@RobinStamer> | You can fake an implementation: function objectKeys(o) { var a = []; for (var k in o) { a.push(k); } return a; } |
03:49 | <~Vornicus> | I figured I could shim it in. |
03:49 | <@RobinStamer> | Honestly your best bet is just to add shims or find a shim-lib. |
03:49 | <@RobinStamer> | IIRC there's one around for all the Object stuff |
03:50 | <~Vornicus> | But as of right now I don't know what version of js any browser is using at all, and I don't know how to find out. |
03:50 | <@RobinStamer> | I don't recomend going about it that way. |
03:51 | <~Vornicus> | I was hoping to establish at least a baseline. |
03:51 | <@RobinStamer> | Code for 80% of the browsers you will support, and test those. |
03:51 | <@RobinStamer> | (I include different versions in "browsers") |
03:52 | <@RobinStamer> | Then when you get bug reports for older versions out of that add shims as needed. |
03:52 | <~Vornicus> | RobinStamer: right, but the difficulty is |
03:52 | <@RobinStamer> | This way you're not adding shims when they're uneeded. |
03:52 | <~Vornicus> | I don't know what those browsers support at all. |
03:53 | <@RobinStamer> | I'm saying it doesn't matter. |
03:53 | <~Vornicus> | But then how do I know what 80% of browsers do? |
03:53 | <@RobinStamer> | V8 doesn't support the full v1.8.5 spec. |
03:53 | <@RobinStamer> | But it has all the Object stuff. |
03:54 | <@RobinStamer> | IE: implementations are likely to support /parts/ of the new version. |
03:54 | <@RobinStamer> | Which is why you test for /features/ when coding in JS. |
03:54 | <&ToxicFrog> | RobinStamer: right, but the problem is figuring out which parts |
03:54 | <&ToxicFrog> | Short of "writing a test for each feature and running them all against every browser version one wants to support" |
03:55 | <@RobinStamer> | Create a unit-test page, then open it in each browser? That's, what, a 3-hour project at worst? |
03:56 | <~Vornicus> | Since I have no idea what browsers support what language features - and my attempts at finding out are coming up short, with the best resource I've found only covering DOM actions and being 2 years old - I can't even figure out what tools I actually have. |
03:57 | <@RobinStamer> | Right |
03:57 | <@RobinStamer> | So code with the tools you think you have. |
03:59 | <@RobinStamer> | Because in all likelyhood, whatever you use, most browsers will probably support most of it. Digging around for each little feature in the browser's documentation isn't going to help. |
04:02 | <~Vornicus> | "what tools I think I have" is kind of fuzzy. |
04:02 | <~Vornicus> | like, if that's my thing I should just avoid the entire js library and write my own shims for absolutely everything. |
04:03 | <@RobinStamer> | I'll rephrase |
04:03 | <@RobinStamer> | "Assume you have a tool until proven you don't" |
04:08 | <@RobinStamer> | Because fretting over having it or not is just wasting time. |
04:08 | | VirusJTG__ [VirusJTG@Nightstar-09c31e7a.sta.comporium.net] has joined #code |
04:11 | | VirusJTG_ [VirusJTG@Nightstar-09c31e7a.sta.comporium.net] has quit [Ping timeout: 121 seconds] |
04:13 | <@Alek> | Azash: it's muy. muy bueno. |
04:30 | | VirusJTG__ [VirusJTG@Nightstar-09c31e7a.sta.comporium.net] has quit [[NS] Quit: Program Shutting down] |
04:39 | | mac [mac@Nightstar-fe8a1f12.il.comcast.net] has joined #code |
04:40 | < mac> | If i wanted to learn openGL are there any books that you guys would recommend? |
04:43 | <@Alek> | openGL for Dummies. |
04:43 | | * Alek flrrd. |
04:43 | <&Derakon> | Learning OpenGL without a human guide is gonna be tricky, honestly. |
04:44 | <&Derakon> | Learning 3D in general is a bear, whether programming or modeling or whatever. |
04:56 | <~Vornicus> | McM I know has been wrestling that alligator lately. |
04:56 | <&McMartin> | Well, not *lately* lately. |
04:56 | <&McMartin> | I had a human guide. |
04:56 | <&McMartin> | In 2004. |
04:57 | <&McMartin> | The rest was just playing catchup. |
04:57 | <&Derakon> | McM's been wrestling with learning how things work lately. |
04:57 | <&Derakon> | But the underlying "there are vertices and transformations and so on" hasn't changed. |
04:57 | <&Derakon> | Nor has the ability to think in 3D, which is absolutely vital to getting anything done. |
04:57 | <&McMartin> | Except in a few places where it was more "well, that was dumb of us, let's pretend that never happened" |
04:58 | <&McMartin> | I believe "OpenGL For Dummies" is actually "Use Unity" |
04:58 | <&Derakon> | Anyway, all that isn't what you'd use to start out; you'd use immediate mode because it's much more accessible than GL3 or whatever the current version i |
04:58 | <&Derakon> | is. |
05:00 | <@celticminstrel> | So if I want to add an attribute to the current function, I need to set this.constructor.attr, not this.attr, right? |
05:00 | <&Derakon> | Uh, context? Language? |
05:01 | <@celticminstrel> | Javascript |
05:01 | <@celticminstrel> | Or maybe I should just do it properly and make a class. |
05:04 | <@celticminstrel> | Somehow. |
05:04 | <&McMartin> | Classes is almost never the appropriate thing in JS~ |
05:07 | <@celticminstrel> | Apparently I'm not even sure what I'm doing here. |
05:14 | | Vash [Vash@Nightstar-221158c7.sd.cox.net] has quit [Ping timeout: 121 seconds] |
05:17 | <@celticminstrel> | I am confused at why f must be passed as an argument in f.apply(f, ['hello', ' ', 'world']). |
05:23 | | ^Xires is now known as Xires |
05:24 | <&Derakon> | Is f a class instance or something? |
05:24 | <&Derakon> | Is the apply() function static when it shouldn't be, perhaps? |
05:24 | <@celticminstrel> | f is a function. |
05:25 | <&Derakon> | Well, clearly it needs access to itself for something. I've no idea what the apply() function does though. |
05:25 | <@celticminstrel> | The array is used as the list of arguments to pass to the function. |
05:26 | <@celticminstrel> | So the same as in Python, if I recall correctly. |
05:26 | <@celticminstrel> | Or the star operator. |
05:26 | <@celticminstrel> | Like f(*list) |
05:33 | | mac [mac@Nightstar-fe8a1f12.il.comcast.net] has quit [[NS] Quit: Leaving] |
05:43 | | Vash [Vash@Nightstar-221158c7.sd.cox.net] has joined #code |
05:43 | | mode/#code [+o Vash] by ChanServ |
06:11 | | Derakon is now known as Derakon[AFK] |
06:20 | <@RobinStamer> | celticminstrel: in that setup, you would just assign to `this` |
06:20 | <@RobinStamer> | Passing f as the first param makes it `this` in the function's call scope. |
06:24 | <@RobinStamer> | f.call(x, a[0], a[1], ..., a[n]) is the same as f(a[0], a[1], ..., a[n]) except `this` is guaranteed to be whatever `x` links to. f.apply(x, a) is the same except instead of it being multiple arguments to .call() all the arguments are just in an array. |
06:26 | <@RobinStamer> | (There's also .bind(), which is newer, but slower on V8 compared to making a custom closure to do the same.) |
06:27 | <@celticminstrel> | ...oh. |
06:27 | <@celticminstrel> | ...wait, I forgot to pass the first argument. Maybe that's why none of this works properly... |
06:29 | <@celticminstrel> | Yay. |
06:30 | <@celticminstrel> | I can now cast spells that I have learned from scrolls. |
06:30 | <@celticminstrel> | (And potions, which is odder, but whatever.) |
06:32 | <@RobinStamer> | Also, just an FYI, if `this` isn't anything (IE it's not being called with .apply(), .call() or as a property and it's not a .bind()'d function) it'll be the global object. Which is either `window` or `document` in a browser context (I forget which, sorry) or `globals` in node.js (note that the REPL has a seperate `globals`, which means a seperate Object and Array and so forth) |
06:32 | <@RobinStamer> | So your `this.constructor` trick was just applying stuff to the global object's constructor property. |
06:33 | <@celticminstrel> | Actually, it was being called as a property. |
06:33 | <@RobinStamer> | You could've used arguments.callee though, however that's being deprecated. |
06:33 | | himi [fow035@D741F1.243F35.CADC30.81D435] has quit [Operation timed out] |
06:33 | <@celticminstrel> | I'm using that for debugging purposes in one place. |
06:33 | <@celticminstrel> | Well. I was. |
06:34 | <@celticminstrel> | When I was trying to figure out where the gamestate was being reset to something I didn't want it to be reset to. |
06:37 | <@RobinStamer> | What type of game? |
06:37 | <@celticminstrel> | Rogue-like |
06:38 | <@RobinStamer> | Oh, nifty |
06:38 | <@RobinStamer> | I'm going to sleep |
06:38 | <@RobinStamer> | Night |
06:38 | <@celticminstrel> | Good night. |
08:20 | | Kindamoody is now known as Kindamoody|afk |
08:42 | | celticminstrel [celticminst@Nightstar-e83b3651.cable.rogers.com] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!] |
08:48 | | himi [fow035@Nightstar-5d05bada.internode.on.net] has joined #code |
08:48 | | mode/#code [+o himi] by ChanServ |
09:03 | | You're now known as TheWatcher |
09:15 | | himi [fow035@Nightstar-5d05bada.internode.on.net] has quit [Ping timeout: 121 seconds] |
09:25 | | Attilla [Obsolete@Nightstar-9e7fa2b2.range86-162.btcentralplus.com] has joined #code |
09:28 | | himi [fow035@Nightstar-5d05bada.internode.on.net] has joined #code |
09:28 | | mode/#code [+o himi] by ChanServ |
09:52 | < Shellninja> | Is Windows 7 good? |
09:52 | <~Vornicus> | Yes. |
09:53 | < Syk> | yes |
09:54 | <@froztbyte> | given that it is windows, yes, it's fairly good |
09:54 | | * Syk holds up her MCITP in W7 to verify her opinion |
09:54 | < Syk> | meanwhile, Windows 8... |
09:54 | | * Syk holds her useless gaming desktop up because insta-BSODs right after install |
09:56 | < Shellninja> | Alright, thanks. |
09:57 | < Shellninja> | What are those small laptops called? You know, the ones that are like half the size of regular ones? |
09:58 | < Syk> | ultrabooks? |
09:58 | < Syk> | netbooks? |
10:02 | < Shellninja> | Ultrabook looks like what I mean. |
10:02 | < Syk> | ultrabooks are small laptops that are generally built less terribad |
10:10 | | thalass [thalass@Nightstar-724ec5eb.bigpond.net.au] has joined #code |
10:42 | | Vash [Vash@Nightstar-221158c7.sd.cox.net] has quit [Client closed the connection] |
10:43 | | Vash [Vash@Nightstar-221158c7.sd.cox.net] has joined #code |
10:43 | | mode/#code [+o Vash] by ChanServ |
10:47 | | Vash [Vash@Nightstar-221158c7.sd.cox.net] has quit [Client closed the connection] |
11:00 | | Vornicus [vorn@ServerAdministrator.Nightstar.Net] has quit [[NS] Quit: Leaving] |
11:02 | | Courage [Moltare@583787.FF2A18.190FE2.4D81A1] has quit [Ping timeout: 121 seconds] |
11:03 | | Courage [Moltare@583787.FF2A18.190FE2.4D81A1] has joined #code |
11:03 | | mode/#code [+o Courage] by ChanServ |
12:32 | | cpux|2 [cpux@Nightstar-98762b0f.dyn.optonline.net] has joined #code |
12:34 | | cpux [cpux@Nightstar-98762b0f.dyn.optonline.net] has quit [Ping timeout: 121 seconds] |
13:30 | | Syk_ [the@Nightstar-0cc72228.iinet.net.au] has joined #code |
13:33 | | Syk [the@A6D346.0C1313.8A5D70.538EEB] has quit [Ping timeout: 121 seconds] |
14:00 | | Nemu [NeophoxProd@Nightstar-9befb88e.asahi-net.or.jp] has quit [Client closed the connection] |
14:01 | | Nemu [NeophoxProd@Nightstar-15d9ea83.asahi-net.or.jp] has joined #code |
14:02 | <@froztbyte> | https://github.com/search?p=6&q=path%3A.ssh%2Fid_rsa |
14:02 | <@froztbyte> | :D:D:D:D:D:D:D:D:D:D:D:D:D:D:D |
14:03 | <@TheWatcher> | .... |
14:08 | <@TheWatcher> | You know, there are times where I say "I have no words" when I don't really mean it, were I could say something but just can't really be bothered. |
14:08 | <@TheWatcher> | This is not one of those times. |
14:09 | <@froztbyte> | hahaha |
14:09 | <@froztbyte> | https://github.com/search?q=path%3A.bash_history too |
14:09 | < Nemu> | I don't think I understand. These are people who've accidently put their public key up? |
14:09 | <@froztbyte> | yes |
14:10 | <@froztbyte> | and in many cases, an unhashed known_hosts to go with it |
14:10 | <@TheWatcher> | Nemu: not just public keys |
14:10 | <@froztbyte> | so you can get their key and pwn a server |
14:10 | <@froztbyte> | oh, yes, sorry |
14:10 | <@froztbyte> | the private keys are the ones worth mentioning |
14:10 | <@froztbyte> | public keys are just that, public |
14:10 | <@froztbyte> | the ones without .pub are the ones you shouldn't share |
14:11 | <@froztbyte> | further goodies: curl -k -H "Content-Type:application/json" -H "Accept:application/json" -d "{\"email\":\"phonybone@gmail.com\", \"password\":\"Bsa441\"}" \ -X POST https://auth-prod.sagebase.org/auth/v1/session |
14:11 | | * froztbyte is lolling so fucking hard atm |
14:12 | <@TheWatcher> | I really do just have no words |
14:12 | <@froztbyte> | there's a bunch of .zsh_history too |
14:12 | <@TheWatcher> | I mean WTEF?!? |
14:13 | <@froztbyte> | I'm getting screenshots for posterity |
14:13 | <@froztbyte> | someone else can rip the content |
14:13 | <@froztbyte> | https://github.com/search?q=path%3A.mysql_history+grant&type=Code&ref=searchresu lts |
14:14 | <@TheWatcher> | ... |
14:15 | <@gnolam> | ... |
14:15 | <&ToxicFrog> | ... |
14:15 | <@froztbyte> | guys I can't make a ":D" big enough to explain how I feel now :P |
14:15 | <&ToxicFrog> | I am well in favour of version-controlling your dotfiles, but why would you then upload the repository to github aaaaaaaa |
14:16 | < Nemu> | I'm going to guess that most of these people are just using Github as a way to sync their desktops, based on the fact that most of these are the entire /home directory |
14:16 | <@froztbyte> | https://github.com/search?q=path%3A.bash_history+password&type=Code&ref=searchre sults |
14:16 | <@froztbyte> | :DDDDDDDDDDDDDDDDDDDDDDDDD |
14:16 | <@TheWatcher> | I think my brain is ever so slightly broken. |
14:17 | < Shellninja> | People put up all sorts of weird things on github. |
14:17 | < Shellninja> | Such as: https://github.com/norinori2222/boyfriend_require/blob/master/README-en.md |
14:18 | <@TheWatcher> | Weird stuff I have no problem with. But... asdfghjkl; |
14:18 | | * gnolam headdesks. |
14:19 | | * ToxicFrog eyes that README |
14:20 | <&ToxicFrog> | ...why does it have a gemfile? |
14:22 | < Shellninja> | What's a gemfile?\ |
14:22 | <&ToxicFrog> | Configuration for a Ruby Gems package. |
14:22 | <&ToxicFrog> | You can presumably install boyfriend_require with 'gem install boyfriend_require' or similar. |
14:23 | < Shellninja> | Hahaha. |
14:28 | < Nemu> | Damn, one of those files linked to contains email account information for a creationist |
14:29 | | * Syk_ submits a pull request to Shellninja's link there |
14:29 | < Nemu> | I'm conflicted, here. The asshole part of me wants to wreck shit, but the benevolent side of me wants to let it slide. |
14:29 | < Syk_> | theyre a creationist |
14:29 | < Syk_> | the benevolent side of you would be destroying their shit |
14:30 | < Syk_> | it's like stealing hitler's wallet |
14:30 | < Syk_> | (which is an actual question someone asked) |
14:30 | < Syk_> | ("if, had the chance, would you steal hitler's wallet. It would cost him 35 deutchemarks and completely ruin his evening. Is this ethical if you do?") |
14:31 | < Syk_> | man i love aud being so strong against the usd |
14:32 | < Shellninja> | (No, it would not be ethical to steal Hitler's wallet.) |
14:32 | <@froztbyte> | http://blog.froztbyte.net/2013/01/retardville/ if anyone wants to link it around for posterity |
14:33 | < Shellninja> | BTW, what is a pull request, exactly? I've never been able to grasp the meaning of this. |
14:33 | < Syk_> | Shellninja: i dont entirely understand myself |
14:33 | <@froztbyte> | it's a request from you, a contributor, to the maintainer of another branch |
14:33 | <@froztbyte> | requesting that they pull code from your branch into theirs |
14:33 | < Syk_> | Shellninja: but I believe its a request for them to pull from your re- |
14:33 | < Syk_> | god damn it froztbyte |
14:34 | <@froztbyte> | :D |
14:34 | <&ToxicFrog> | Shellninja: "I have forked your code and made changes. Please pull these changes and incorporate them back into your repo". |
14:34 | <@froztbyte> | fingers on *fire* |
14:34 | <&ToxicFrog> | Basically the git equivalent of a patch submission. |
14:34 | < Shellninja> | Oh. |
14:35 | < Shellninja> | That's simple, then. |
14:35 | < Syk_> | dfsdgf |
14:35 | < Syk_> | okay |
14:35 | < Syk_> | if i queue like 20 album downloads in flac |
14:35 | < Syk_> | Firefox is going to shit the bed so hard that it'll be felt in Japan |
14:36 | <&ToxicFrog> | Solution: don't use firefox~ |
14:36 | < Syk_> | chrome is a botnet and opera chokes on reproductive organs |
14:37 | < Syk_> | konquerer is a joke and lynx is too hardc0re for me |
14:38 | <&ToxicFrog> | So paste the URLs into wget or something |
14:39 | <&ToxicFrog> | Personally I would happily pick Chrome or Opera over Firefox simply by virtue of the fact that you don't need 16GB of memory for them to be usable |
14:39 | < Syk_> | chrome uses more RAM |
14:39 | < Syk_> | this isn't 2009 |
14:41 | < Syk_> | Chrome is sitting there with FB and GMail open: 755MB |
14:41 | < Syk_> | FF has 15 tabs open, and I'm downloading 2GB of music: 828MB |
14:47 | < Nemu> | I think it's time we questioned 755 MB |
14:47 | < Nemu> | That's a lot of memory |
14:47 | < Nemu> | But I'm not a software engineer, so what do I know? |
14:48 | <&ToxicFrog> | Chrome, for me, is using 2GB of memory and has 50 tabs open. |
14:50 | <&ToxicFrog> | IME, firefox chokes and dies before it even reaches that point, although to be fair it's been a while since I used it heavily. |
14:50 | <@froztbyte> | firefox is far better than chrome at the moment |
14:50 | <@froztbyte> | they've done a lot of work on it |
14:50 | <@froztbyte> | and if you're running something like nightly it's even nicer |
14:50 | <&ToxicFrog> | Also what the fuck Steam is using like 900MB with nothing but the friends list open |
14:50 | < Nemu> | Yeah, it does that |
14:50 | < Nemu> | Really annoying. |
14:51 | <&ToxicFrog> | It uses 50MB on windows, what have they done |
14:53 | | * ToxicFrog does some fiddling with FF, determines that with 50 blank tabs open it sits at around 400MB, but the tab bar went to shit 30 tabs ago anyways |
14:54 | < JustBob> | I routinely don't close firefox until I notice it eating a quarter of my RAM. |
14:54 | < JustBob> | On win7, I note. |
14:54 | < Syk_> | http://www.google.com/finance?q=AAPL |
14:54 | < Syk_> | apple just lost |
14:54 | < Syk_> | 11% of its share price |
14:55 | < Nemu> | 10.61 |
14:55 | <&ToxicFrog> | Why? |
14:55 | < Nemu> | What happened? |
14:55 | < Syk_> | because their earnings didnt keep going up |
14:59 | <@TheWatcher> | If you listen really carefully, you might hear the sound this adorably tiny violin is making~ |
14:59 | < Syk_> | actually |
15:00 | < Syk_> | their revenue was record |
15:00 | < Syk_> | but their earnings went down |
15:05 | | Typherix is now known as Typh|Class |
15:14 | | w1990 [NSJavaIRC@Nightstar-ec38b1f3.range86-152.btcentralplus.com] has joined #code |
15:15 | | w1990 [NSJavaIRC@Nightstar-ec38b1f3.range86-152.btcentralplus.com] has left #code [] |
15:35 | <@froztbyte> | TheWatcher: hey here's a nice whole life for you if you want to get started: https://github.com/Mektub/hconfig/ |
15:36 | <@froztbyte> | mail accounts and everything! |
15:37 | <@TheWatcher> | .... you have got to be... sweet zombie jesus, you're not. |
15:39 | <@froztbyte> | I've sent github a mail about a possible default-on filtering thing for anyone that's not the repo owner |
15:39 | <@froztbyte> | even if just on the web interface |
15:40 | <@TheWatcher> | Only so much they can do though. You can only go so far to protect idiots from their own stupidity. |
15:40 | <@froztbyte> | no, sure |
15:40 | <@froztbyte> | that's why I'm saying just as a filter view |
15:40 | <@froztbyte> | maybe with a visual cue to indicate that there's something happening to it |
15:41 | <@froztbyte> | like a halfway greyed-out eye icon next to it |
15:41 | <@froztbyte> | or so |
15:47 | | Syk_ is now known as syksleep |
15:48 | | Typh|Class [Typherix@Nightstar-7dc8031d.mi.comcast.net] has quit [Ping timeout: 121 seconds] |
15:48 | <@TheWatcher> | Or maybe detect pushes to repos that are >75% dotfile, or include a bunch of key file names, and hide the repo for an hour and send the author a "Are you a sodding moron, or was this an honest mistake?" email ¬¬ |
15:49 | <@froztbyte> | yeah, that sort of thing could work as well |
15:49 | <@gnolam> | Haha. Alternate explanation of http://i.imgur.com/47D7zGq.png : "somebody is killing all of the IE users" |
15:49 | <@froztbyte> | "Thanks for contacting us. We're discussing ways to both notify and educate developers when they push potentially confidential information to their public repositories. In this case, however, these keys and other tokens have been searchable for a very long time through Google and other services that index public repositories. But as I said, we are looking into ways to improve the situation." |
15:49 | <@gnolam> | That was a fast reply. |
15:50 | <@froztbyte> | that was 25min ago already |
15:50 | <@froztbyte> | maybe a bit more |
15:50 | <@Azash> | Are linux file permissions stored in the inode list? |
15:50 | <@froztbyte> | so props to fast response times, yeah :) |
15:50 | <@gnolam> | I?! I?! I? Github-Niggurath! |
15:50 | <@froztbyte> | but it's a bit of a shitty response |
15:50 | <@Azash> | gnolam: Yog-Shoddycodeth |
15:50 | <@gnolam> | Hee |
15:50 | <@froztbyte> | hehe |
15:50 | <@froztbyte> | I should note though |
15:51 | <@gnolam> | C-thulhu. |
15:51 | <@froztbyte> | that blogpost hit 80-odd hits within the first ~10min of its life (I did spam it a bit), and 50% of that was from USA |
15:51 | <@froztbyte> | so I guess it got sent around in their offices quite a bit ;P |
15:52 | <@TheWatcher> | Azash: provided it's using simple posix permissions, yes |
15:52 | <@froztbyte> | orite, yes, that |
15:52 | <@froztbyte> | ext* extended ACLs, for instance, are a tagged-on datastructure |
15:54 | <@gnolam> | And I'm actually with them on this. They're not to blame for what people put into their repositories, and IME any kind of filtering usually ends up causing more trouble than it's worth. |
15:55 | <@froztbyte> | it's not *that* hard to do |
15:55 | <@Azash> | It's true though that it's not their responsibility |
15:55 | <@froztbyte> | the list of semi-hide-by-default is a fairly short one, since it's well-known targets you need to care about |
15:55 | <@froztbyte> | and as I mentioned before, it doesn't have to be universal |
15:56 | <@froztbyte> | only in the web interface |
15:56 | <@froztbyte> | someone who's scanning over repos for this stuff will only scan, not clone each repo to check |
16:24 | | celticminstrel [celticminst@Nightstar-e83b3651.cable.rogers.com] has joined #code |
16:25 | | mode/#code [+o celticminstrel] by ChanServ |
16:58 | | * Derakon_ ponders http://derakon.dyndns.org/~chriswei/temp2/gainplot.png |
16:58 | < Derakon_> | I'm measuring the response of one of our cameras to light. |
16:59 | < Derakon_> | Note that the response is nonlinear. We want to linearize it, which means we need to characterize the response curve. |
16:59 | < Derakon_> | Each point in this plot is the average of all of the pixels in the camera -- but the pixels each have their own differing response curves (sometimes differing drastically). |
16:59 | < Derakon_> | So basically I have 528 * 512 versions of this plot, each of which needs to be fitted individually. |
17:02 | <@gnolam> | >_< |
17:04 | <@gnolam> | You should always display the non-linearized value first. Just so you can implement an actual "Enhance" button. |
17:05 | < Derakon_> | Well, this is a postprocessing step. |
17:05 | < Derakon_> | You collect the raw data, then you run it through the linearizer. |
17:05 | < Derakon_> | We have a bunch of these. Some of them really are basically "enhance" buttons. |
17:06 | < Derakon_> | I've seen an image that looked to me just like snow go into our deconvolution algorithm and come out with actual useful data. |
17:39 | <@TheWatcher> | Really, you need to make it voice activated, so you can actually say "ENHANCE!" and have it work~ |
17:44 | < Derakon_> | Heh. |
17:44 | < Derakon_> | One problem with that -- check this commandline execution of one of our algos: |
17:44 | < Derakon_> | XYenhance3D.priism /home/cweisiger/remoteProcessing/pendingFiles/20120827_SI_WF_YG100-sCMOS-nopiezo ZAP_zst2msec_slmst50msec-t000 /home/cweisiger/remoteProcessing/processingResults/20120827_SI_WF_YG100-sCMOS-no piezoZAP_zst2msec_slmst50msec-t000-recon //opt/sedat/bin/PSF_SI/OMXT/SI_PSF_SCMOS-neo_128_ang2.otf -triangleapo -k0=0.0935:-0.9485:1.140 -nimm=1.33 -na=1.20 -l=0.2265 -wiener=0.001 -background=100 -inputapo=10 -driftfix -suppressR=1 |
17:44 | <@Tamber> | Good grief. |
17:45 | <@celticminstrel> | Why am I getting "items is undefined" when it's not. |
17:47 | <@celticminstrel> | Oh... |
17:58 | | * Derakon_ sends his computer off to do 270336 degree-4 polynomial fits with 520 datapoints each. |
18:00 | < Derakon_> | Odd, Python's only using 5% of one CPU. |
18:11 | < Derakon_> | ...yeah, those residuals are pretty heinous. |
18:14 | | * Derakon_ amps it up to degree 10. |
18:24 | <@gnolam> | celticminstrel: and it's not even proper English! |
18:25 | <@celticminstrel> | Hah. |
18:25 | <@celticminstrel> | "plural" is not an attribute that variables have. :P |
18:30 | <@gnolam> | Derakon_: I read that was 270336-degree polynomial fits at first. And wondered what kind of insane error requirements you had. |
18:30 | <@gnolam> | -w |
18:38 | < JustBob> | He's obviously doing some of the sillier Project Euler problems. |
18:40 | < Derakon_> | Degree-10 took 10:52 to load and generate. |
18:40 | < Derakon_> | And the residuals are still lousy. |
18:41 | < JustBob> | The cure for this, Dera, is more computing power. |
18:42 | < JustBob> | Optimized code is silly to use. Just get more ram and more procs. |
18:42 | < Derakon_> | Right. |
18:42 | < Derakon_> | Actually the cure is to use a more nuanced approach. |
18:42 | < JustBob> | Well, I'll put it this way... |
18:43 | < JustBob> | I was required to 'write a script to solve function bleh,' and technically I was supposed to use if loops or something fancy like that. |
18:43 | < JustBob> | My script consisted of me copy-pasting and editing the same four lines 30 times. |
18:55 | <@gnolam> | ... and that isn't just awful but would take longer to write than putting it in a for loop. |
18:57 | | Kindamoody|afk is now known as Kindamoody |
19:04 | < JustBob> | Ah, but you presuppose one minor, important fact, gnolam. |
19:05 | < JustBob> | Which is to say, until about 28 hours ago, I hadn't written anything script-y, much less with loops, in over ten years. :p |
19:05 | < JustBob> | (My codin's, I've forgottens'em.) |
19:57 | <@Alek> | Why does %r sometimes print things with single-quotes when I wrote them with double-quotes. |
19:57 | <@Alek> | Python is going to print the strings in the most efficient way it can, not replicate exactly the way you wrote them. This perfectly fine since %r is used for debugging and inspection, so it's not necessary that it be pretty. |
19:57 | <@Alek> | This.... bugs me. -_- |
19:58 | <@Alek> | why is one way more efficient than another? what are the reasons for choosing one over another? |
19:58 | <@Alek> | that is, why does PYTHON choose one over another? |
19:59 | < Derakon_> | Because that's how it was coded. |
19:59 | <&ToxicFrog> | Alek: it's more efficient to not record whether the string was originally defined with "" or '', and just use one (picked arbitrarily) for output. |
19:59 | < Derakon_> | It might decide to always use " unless there's a literal " in the string, in which case it uses '. I don't know if it's that smart. |
20:00 | <&ToxicFrog> | Otherwise it would have to keep track whether the string was defined using "" or using '' (and what should it use when you use ('foo' + "bar")?) |
20:00 | <&ToxicFrog> | Derakon_: it actually uses '' unless there's a literal ' in the string, in which case it uses ". |
20:00 | < Derakon_> | D'oh~ |
20:02 | <@Alek> | yes, but why is it reproducible that it picks single for certain things and double for others? instead of random. |
20:02 | < Derakon_> | Because the code is deterministic. |
20:02 | < Derakon_> | Why, in the name of all the gods, would you want unpredictable code execution? |
20:05 | <&ToxicFrog> | Alek: I just explained it. |
20:05 | | Vornicus [vorn@ServerAdministrator.Nightstar.Net] has joined #code |
20:05 | | mode/#code [+qo Vornicus Vornicus] by ChanServ |
20:24 | <@Alek> | it actually is repeatable over independently entered code. >_> |
20:24 | <@Alek> | so *shrugs* |
20:25 | <@Alek> | ohh. yeah, I see the literal ' |
20:25 | <@Alek> | XD |
20:25 | <@Alek> | ok, sorry. |
20:28 | | Kindamoody is now known as Kindamoody[zZz] |
20:40 | | ReivDriod [Reiver@Nightstar-6ec10a54.ihug.co.nz] has quit [Ping timeout: 121 seconds] |
20:47 | | * Alek snerks at python |
20:47 | <@Alek> | \v (vertical tab) actually displays the male symbol. |
20:47 | <@Alek> | and \f (formfeed) is the female symbol. |
20:48 | <~Vornicus> | that's not python |
20:51 | <@Alek> | those are escape sequences. listed in the escape-sequence chapter of LPtHW. |
20:52 | <~Vornicus> | one more strike against lpthw,they're only that on windows command prompts |
20:52 | <~Vornicus> | If I tell my computer `print '\v\f' I get three blank lines. |
20:53 | <@Alek> | this is actually ActivePython in Powershell. |
20:53 | | * Alek shrugs. |
20:53 | <@Alek> | haven't gotten past that yet. |
20:53 | < Derakon_> | The point is that not every escape code is valid everywhere. |
20:53 | | * Alek nods. |
20:53 | <@Alek> | fair point. |
20:54 | <@Alek> | \v is multiple blank lines, then. but what's \f do? |
20:54 | <@Alek> | as in, \v moves the cursor several lines down, like \t moves it several characters over. |
20:55 | <~Vornicus> | \f is one line down without resetting horizontal position, iirc, one moment |
20:56 | <~Vornicus> | Yes, confirmed |
20:57 | <~Vornicus> | so doing print "abc\fdef" gives me abc on the first line and then def on the second line indented three spaces. |
20:57 | <@Alek> | and "abc\vdef"? |
20:57 | <&ToxicFrog> | FF is actually a page break; it instructs the printer to eject the current page and continue printing on the first line of the next. |
20:57 | <&ToxicFrog> | Most terminal emulators interpret FF equivalently to a raw CR, ie, down one line. |
20:58 | <&ToxicFrog> | Er, a raw LF. |
20:58 | <@Alek> | ah. |
20:58 | <@Alek> | idly, \b works funkily in certain occasions. >_> |
20:59 | <@Alek> | while True: |
20:59 | <@Alek> | for i in ["/","-","\\","|"]: |
20:59 | <@Alek> | print "%s\b" % i, |
20:59 | <&ToxicFrog> | A vertical tab is the same as a horizontal tab except the tab stops are (traditionally) every six lines rather than every eight characters. |
21:00 | <&ToxicFrog> | In practice no-one uses either anymore for their original purposes, so the meaning is "whatever the program, language, and terminal you're using want it to be" |
21:00 | <@Alek> | that tosses printout on the right edge of the shell, and raw-LF instead of overwriting. |
21:01 | <@Alek> | (where \r instead of \b just overwrites it in place, on the left) |
21:03 | <@Alek> | gonna leave it for a while, on that lesson. |
21:03 | <@Alek> | I'm a fifth through the book. XD |
21:04 | | Typherix [Typherix@Nightstar-7dc8031d.mi.comcast.net] has joined #code |
21:05 | <@Alek> | next lesson starts interactivity. >_> |
21:06 | < Shellninja> | Okay, I have a disk drive. I want encryption of some sort. Do I need to make it encrypted at formatting, or is there another way to protect data there? |
21:08 | <~Vornicus> | you can also encrypt segments of the disk but it's a little more of a pain |
21:08 | <@Pandemic> | depends on what your OS supports and what your hardware supports in all honesty |
21:08 | < Shellninja> | Debian. |
21:09 | <@Pandemic> | This is the best answer I can give you for Debian |
21:09 | <@Pandemic> | http://madduck.net/docs/cryptdisk/ |
21:09 | <@Pandemic> | #tsc rediences may have a better answer than I |
21:10 | <&ToxicFrog> | Shellninja: not Debian, but this is a good overview of disk encryption options: https://wiki.archlinux.org/index.php/Disk_Encryption |
21:11 | <&ToxicFrog> | Most of these should also be available on debian, although the procedure for installing/configuring them might be different. |
21:12 | <&ToxicFrog> | (the short answer is, depending on which technique you use, you'll either need to configure an encrypted device and then create a normal filesystem on it, or create a normal filesystem and then mount an encrypted layer on top - the linked page discusses both approaches) |
21:13 | < Shellninja> | Okay, thanks. |
21:14 | <&ToxicFrog> | (what you choose depends also on what you want; block device encryption, for example, encrypts everything including filesystem metadata and partition tables, but is all-or-nothing, while overlay encryption can encrypt individual directories) |
21:29 | < Shellninja> | Heh. When I get a new computer, I think I'll try Paranoid System Encryption just for kicks and to see if I can do it. |
21:31 | | Vornicus [vorn@ServerAdministrator.Nightstar.Net] has quit [[NS] Quit: Leaving] |
21:38 | | Typherix [Typherix@Nightstar-7dc8031d.mi.comcast.net] has quit [Ping timeout: 121 seconds] |
21:38 | | Typherix [Typherix@Nightstar-7dc8031d.mi.comcast.net] has joined #code |
21:43 | <@celticminstrel> | It works! http://celmin.pwcsite.com/roguelike/rogue.html |
21:43 | <@celticminstrel> | Might have problems on smaller monitors though, I suppose. |
22:00 | | RichyB [richardb@Nightstar-bccaa09f.dip.t-dialin.net] has joined #code |
22:29 | | Typherix [Typherix@Nightstar-7dc8031d.mi.comcast.net] has quit [Ping timeout: 121 seconds] |
22:31 | | Typherix [Typherix@Nightstar-7dc8031d.mi.comcast.net] has joined #code |
22:47 | | himi [fow035@Nightstar-5d05bada.internode.on.net] has quit [Operation timed out] |
23:14 | | VirusJTG [VirusJTG@Nightstar-09c31e7a.sta.comporium.net] has joined #code |
23:16 | | VirusJTG [VirusJTG@Nightstar-09c31e7a.sta.comporium.net] has quit [[NS] Quit: Program Shutting down] |
23:19 | | VirusJTG [VirusJTG@Nightstar-09c31e7a.sta.comporium.net] has joined #code |
23:51 | | Nemu [NeophoxProd@Nightstar-15d9ea83.asahi-net.or.jp] has quit [Ping timeout: 121 seconds] |
23:51 | | Nemu [NeophoxProd@Nightstar-6d521244.asahi-net.or.jp] has joined #code |
23:56 | | himi [fow035@D741F1.243F35.CADC30.81D435] has joined #code |
23:56 | | mode/#code [+o himi] by ChanServ |
--- Log closed Fri Jan 25 00:00:56 2013 |