Subject: Chat with Joshua Hawkins
From: Joshua Hawkins <josh.r.hawk@gmail.com>
To: barriticus@gmail.com

me: having fun at WORK?!??!
Joshua: lol yeah lol
me: how would you like it if I told you I was at your house, in your bed...
me: cuddling with....
me: John
me: I mean Divya
Joshua: i see
me: cause I'm not
me: I'm at home
Joshua: both are creepy options
me: cuddling with Divya
me: and John
me: in my bed
Joshua: well played
me: snap
Joshua: you didn't feel like sleeping over on our inflatable bed?
Joshua: it looked so comfortable
me: went home after eating all of your food
me: I mean
me: cleaning up your place and otherwise pitching in
Joshua: what food lolol
Joshua: lol
me: hummus lol
me: and pita bread lol
me: and some shitty yogurt that I hated and threw away and thus wasted
me: damn, I wish I could delete IM messages
Joshua: good show my man
Joshua: what do you mean
me: should have let the yogurt remain a mystery
Joshua: there are no mysteries between us barrett
Joshua: if you know what i mean
Joshua: lololol
me: I know
me: intercoursely
me: I stayed up all night working
Joshua: you should come by and watch the second season of benny hill
me: and recruiting bloggers to the cause
Joshua: i understand
Joshua: lots of yackety sax - i'm sure that isn't how that's spelled
Joshua: yacketty
Joshua: yack eddy
Joshua: ?
me: I think you were close the first time
me: check out this guy
me: wrote for True/Slant
me: shitty writer
me: got upset because they accidentally underpaid him
me: accused them of "abusing writers" based on his single experience
me: then got pwned
Joshua: i need a link
me: http://davidappell.blogspot.com/2010/01/trueslant-abuses-writers.html
Joshua: dawg
Joshua: bzzz bzzz bzzz
Joshua: do you get 200 a month from them?
Joshua: that's pretty decent
Joshua: or is it
Joshua: ?
me: I get 250
Joshua: word
me: they pay me more because I'm awesome
Joshua: very well
me: I'm not supposed to tell
Joshua: how many articles do you write a month for them
me: varies
Joshua: or "posts"
me: I could write just one and still get the 250
Joshua: or "clams"
me: if I get 10,000 hits I get 500
Joshua: have you done that in the past?
me: once
me: when I was drunk
me: I mean yes, once
me: then didn't do anything for them month before last
me: but I guarantee that next month I'll do it again
me: what with Project 3Jane
Joshua: explain project 3jane
me: our media reform/blogosphere improvement project
me: based around Stein's software and my cult of personality
me: similar almost to Neuromancer
me: which you haven't read
Joshua: i follow
Joshua: go on
me: but which includes a wealth eccentric family that develops symbiotic relationship with AI
me: software combined with distributed network of bloggers
Joshua: yes yes
Joshua: why does this fag keep calling blogging art? - No, TrueSlant does not pay the rent, but it pays me enough to keep caring about my art ...
Joshua: it's our art
Joshua: ART! guys
me: Would you like to buy one of my articles in a frame for $500?
me: No?
me: Well, I guess I can let you keep it for a while
me: It's just my name printed in really big letters
me: It's kind of a statement on commercialization
Joshua: very good wrath
me: That thing I'm trying to accomplish by selling art to my old friend
Joshua: i see what you did there - very godo
Joshua: * very well
Joshua: maybe for some extra money you could write articles for people in the subway station on a typewriter
Joshua: like that guy that writes poetry
Joshua: interested?
me: oic
me: jumped my first turnstile last night
me: at union square entrance
Joshua: i c
Joshua: why
me: well
Joshua: why were you at union square in the first place
Joshua: ?
me: both MTA machines were out of order
Joshua: good reason
me: to meet that professor to get $100 for giving that lecture
Joshua: fuckem
me: he was driving through town
Joshua: oh - earlier in the day
Joshua: i thought you meant for some reason you were in manhattan last night
Joshua: after you left our place
me: nah, twas before
Joshua: i'm proud of you son
Joshua: very proud
me: yeah, I totally left Bushwick
Joshua: do you plan on jumping more in the future
me: yes
me: this time I had to
Joshua: it seemed uncharacteristic
me: tried to exchange money for services
me: but was not permitted to do so
Joshua: i agree
Joshua: wanna see some of the code i'm writing
Joshua: fascinating stuff
Joshua: def sum_margins_x(opts) get_margins_x(opts).inject(:+) end

def max_table_size_x(opts) opts[:page_size][1] - sum_margins_x(opts) end

def max_col_size(opts,data) (max_table_size_x(opts) / data.first.size).to_i end

def get_table_width(width_hash) width_hash.values.inject(:+) end

def average_i(array) (array.inject(:+) / array.size).to_i end

# probably not the best way of auto formatting the column widths
def get_column_width_hash(data, cols, opts, sample_size = 1000)
col_widths_aa = Array.new(data.first.size, [])
width_h = Hash.new
sample_data = data.take(sample_size)
sample_data.each do |row|
row.each_with_index do |col,i|
l = col.length
string_lengths_aa = col_widths_aa[i] << l # make an array of col lengths to later average
width_h[i] ||= l # set width_h to the max col lengths
width_h[i] = l if l > width_h[i]
end
end

max_col_size(opts,data)
ave_widths_a = col_widths_aa.map {|a| average_i(a)}
width

return {0=>180,1=>180,2=>180,3=>180} # width_h
end

Joshua: nice huh
Joshua: there's more. much much more
Joshua: what if i print out some of it and frame it and exchange it for a framed portion of your writing
Joshua: and then we could eat some cheese and drink red wine
Joshua: i'm done
me: keep going
me: I'M WAITING FOR THE PUNCHLINE
me: heh heh
me: now THAT'S a punchline
Joshua: i thought you could fill in the punchline
Joshua: you're better at it anyway
Joshua: you should come by and play some left4dead2
Joshua: maybe not today but in the future at some point
me: oh, absolutely