Index

Show enters and exits. Hide enters and exits.

00:39:05brixengit st
00:39:12brixenwell, close
00:39:16brixenjust one tab away
00:43:50evani'm back.
00:45:28brixendammit, kernel panic
00:47:34evanbrixen: :( :(
00:53:14krainboltgreeneSup, E.
00:53:54evanyo.
00:58:35krainboltgreeneLooks like the ruby community is shifting slowly to Sinatra. See: Heroku's team.
01:01:21evannah.
01:01:36evanheroku has been sinatra focused since the beginning.
01:02:52krainboltgreeneAnd Heroku's gotten a lot more popular.
01:04:44evansintra and rails solve vastly different things, imho.
01:04:48evansinatra, rather.
01:04:48brixenI don't know of any huge sites on heroku
01:05:10brixennot that there are not any, but I don't know of them
01:05:20brixennor do I know of huge sites using sinatra
01:07:05boyscoutSpec for C API rb_str_buf_new and rb_str_set_len - 75e07e7 - Jeremy Evans
01:07:05boyscoutFixed specs for rb_str_buf_new, rb_str_set_len. - 8951890 - Brian Ford
01:07:05boyscoutInitial version.h for C-API. - 0a165cb - Brian Ford
01:07:05boyscoutFixed some C-API rb_str functions. - 2944654 - Brian Ford
01:09:25evankrainboltgreene: i guess we just have different perspections of it.
01:11:41krainboltgreeneevan: I know I do. Ruby was my first language, Sinatra my first web DSL, etc.
01:11:57evanaah
01:12:13evanstick around, it's been a long ride :)
01:13:03brixenruby as a first language must be pretty fun
01:13:09evantotally.
01:13:49brixenbut I wonder if I would have ever tried python, tcl, or other odd languages if I had started with ruby
01:14:13evana good question
01:14:25evanit's hard for me to say what my first was.
01:14:38evanTI basic, perl, C++ were all about the same time.
01:14:50brixenah cool
01:15:02brixenI had a few years of pure apple basic
01:15:24brixenwell, maybe 2
01:15:29evanI wrote minesweeper on my TI-82
01:15:33evanthat was fun.
01:15:35brixenbut that was just at school, no home computer
01:15:43brixenheh, nice
01:15:59evanthats what got me thinking i could do it more
01:16:16evanI had tried linux, but didn't really program.
01:17:23brixenI was actually using SCO before linux :)
01:17:33evanha! nice.
01:17:41brixenusing linux was so nice by comparison
01:17:44brixensco sucked
01:17:53evanI downloaded the slackware disk sets
01:17:59brixenheh, yep
01:18:00evanman that took a long time
01:18:05brixenindeed!
01:18:28evanthose were the days. Nowadays, people have it easy.
01:18:31evanHEY KIDS GET OFF MY LAWN
01:18:31brixenI think the first slackware install I did was from 13 floppies
01:18:38brixenno kidding
01:18:46evanyeah, same here.
01:18:56evanthe X set was like 7 disks by itself.
01:19:03brixenheh yeah
01:19:11evani remember going through all that
01:19:13evanand getting X booted
01:19:19evanand it was twm with xeyes
01:19:23brixennice
01:19:24evanand i was like "ok... what now?"
01:19:29brixenhah
01:20:40evanso, the first big hydra hickup has been hit.
01:20:56brixencaches?
01:21:02brixenclasses?
01:21:03evanI'm going to have to tear up the execute / cacheing protocols
01:21:09brixenahh
01:26:56evanthats ok
01:27:01evanthe Dispatch concept was a bit long in the tooth.
01:29:58krainboltgreeneBack.
01:30:17krainboltgreeneBrixen: I actually picked up a little python to help me learn Ruby.
01:38:04boyscoutCI: rubinius: 2944654 successful: 3512 files, 15088 examples, 42924 expectations, 0 failures, 0 errors
03:21:41brixenargh
09:36:51dbussinkmorning
18:33:28dbussinkevan: so, read you hit the first road block in hydra?
18:42:44brixendbussink: if by road block you mean someone left a stick in the road, yes :)
18:42:58brixenI'm guessing evan already has the solution 1/2 implemented
18:43:14brixenbut I could be wrong, he might have it 3/4th implemented :)
18:43:31dbussinkbrixen: isn't evan some action movie hero who just jumps over it? :P
18:43:39brixenheh
18:43:40brixenpretty much
18:43:46dbussinkbrixen: it was more in comparison so how easy it was going so far :
18:43:47dbussink:)
18:44:02dbussinkbrixen: btw, did you see this? http://blog.bithug.org/2010/8/benchmarking-rdiscount
18:44:17dbussinki doubt whether that's actually true or that it fails in some way and that isn't detected
18:44:17brixenyep
18:44:29brixenthat's exactly what I wondered
18:44:29dbussinkbrixen: or did you check it out?
18:44:32brixennope
18:44:44brixenall benchmarks should have veracity built in
18:45:09brixenbut since most test code is 100x worse that app code, and most benchmarks are 1000x worse than test code...
18:45:15brixenyou can see where this is leading...
18:47:19dbussinkbrixen: hehe, yeah, this most likely can't be true
18:47:42dbussinktoo good to be true
19:14:16slavahi brixen
19:15:00brixenhey slava
20:00:59evanbrixen / dbussink: this is why I don't release benchmarks
20:03:35dbussinkevan: yeah, this isn't really making sense anyway
20:04:47dbussinkevan: so what are the hydra issues? creating inline caches simultanuously?
20:05:50evanusing them in parallel.
20:06:02evanone cache being used exactly at the same time by 2 different threads.
20:10:25dbussinkevan: ah ok, creating it already thread safe then? and when using them goes wrong in updating them etc?
20:10:31dbussinkjust curious about the details :)
20:11:25evanwell
20:11:30evancreating them is pretty easy
20:11:33evanthat happens really early
20:11:36evanso thats no issue.
20:11:53evanbut I check a cache, and then pass the cache down and read out of it
20:12:05evanbut if another thread changes the cache between the check and the read
20:12:09evanthen we read the wrong info.
20:12:57dbussinkevan: creating is already thread safe then? or you didn't add locks there yet?
20:13:12dbussinkif updates info like hit counters etc. right?
20:16:59evandid I say that?
20:17:02evanyeah, creating is thread safe.
20:17:10evaner.
20:17:11evanyeah.
20:17:20evancreating is not at all the issue
20:17:51dbussinkbut i can imagine adding locks for each method call is a big overhead :)
20:18:02dbussinkevan: how do you plan on solving it then?
20:18:07evanwell
20:18:09evanthere are 2 things
20:18:17evani have to remove Dispatch from being passed down
20:18:37evanso that an InlineCache hold the info only, and it's read, checked, and passed down.
20:18:56evani'm going to try and use a spinlock around both the read and update sections
20:19:04evani'm not sure what the performance will be.
20:20:13dbussinkevan: ah, so inlinecache itself isn't updated anymore?
20:20:19evanhuh?
20:21:24dbussinkevan: hmm, nvm, i think i read you wrong :)
20:22:29dbussinkevan: if you look at what the jvm does, you might get oracle on your tail too ;)
20:22:57evani won't then!
20:23:01evanok, off to take a shower.