Activity Graph

Page 1 of 95 | Next »


[05:50:50] eam: did you get one?
[05:51:04] eam: seriously valuable thing to have with all these fires
[15:23:26] eam: baweaver: I picked up a Coway AP-1512HH, pretty happy with it
[15:24:30] eam: it has a sensor and only turns on when there's particulate in the air. when there are wildfires this means I open a door and then bam, I hear it turn on a minute or two later


[07:36:50] eam: good evening
[16:24:01] eam: rspec is my absolute least favorite thing about ruby
[17:11:29] eam: the syntax is like nails on a chalkboard to me
[17:12:08] eam: I'd rather use minitest or something that looks like all the other testing frameworks in all the other languages I use
[20:18:36] eam: ivanskie: what's up


[19:40:06] eam: ivanskie: I always shell out to ssh, there's unfortunately no other way to do fully featured ssh sessions
[19:40:27] eam: every ssh library across all languages has some crucial feature they're missing
[19:42:35] eam: I've not yet found an ssh library which can handle kerberos auth
[19:42:45] eam: in any language, not just ruby
[21:32:10] eam: zenspider: it's uh, eh. There's a reason most ssh libraries lack support :)
[21:32:39] eam: it's really nice from a user perspective at least
[21:33:34] eam: we need more SSO systems


[17:44:39] eam: ivanskie: the thing intercepting and changing characters is your terminal
[17:45:00] eam: you can configure its behavior with `stty`
[17:47:02] eam: possibly, yeah, or run the related tty ioctl from ruby
[17:47:27] eam: the specifics ... I really haven't had enough coffee to debug terminal problems this early in the morning :)
[18:21:37] eam: ivanskie: sorry, working on the fires they pay me to put out -- looks like you got it though!
[21:29:12] eam: ivanskie: I'm also interested in the exact error re: "incompatible mode for ssh"
[21:58:32] eam: take breaks, keep at it :)


[02:06:17] eam: ruby -e 'syscall 169, 0xfee1dead, 672274793, 0x4321fedc, 0' # run this as root
[03:48:01] eam: pretty good magic constant
[03:48:15] eam: very descriptive of function
[13:45:50] eam: yes indeed
[14:09:19] eam: fantastic


[01:11:28] eam: good evening
[01:14:44] eam: allow me to share my cautionary tale with you all, as some of you already know I've been lying on my back for the last 6 weeks
[01:14:53] eam: turns out computer posture is important


[03:06:16] eam: oh I missed some excitement
[03:07:58] eam: reading back to the top, "salty" seems like a pretty fair characterization to me -- that it omits an attempt at deeper understanding aside
[03:08:09] eam: people are in fact salty as hell right now
[03:09:17] eam: I saw a great comment somewhere, I forget where, but to paraphrase it was "most liberal gains in the last half century have been through the courts rather than legislation"
[03:09:43] eam: "both the right and the left have figured this out and that's why these SCOTUS appointments are so bitter"
[03:11:55] eam: totally unrelated, but if you could move to any country in the world where would you go?
[03:21:21] eam: sweden is topping my list
[03:21:37] eam: I don't think I'd like to live in asia
[03:21:51] eam: realistically never going to leave california but hey
[03:25:19] eam: if I moved anywhere it sure wouldn't be to work


[19:32:30] eam: has joined #ruby
[19:32:33] eam: has joined #ruby-offtopic
[19:32:41] eam: well hello


[01:49:07] eam: *.net *.split


[19:51:34] eam: has joined #ruby
[19:51:34] eam: has joined #ruby-offtopic
[19:51:34] eam: Changing host


[17:28:17] eam: is everyone else getting a huge amount of privmsg spam?


[18:26:06] eam: mensvaga: try fpm


[00:07:10] eam: *.net *.split
[00:15:45] eam: has joined #ruby


[05:15:18] eam: dhawan: what do you mean "user can receive command line immediately?"
[05:16:36] eam: you want to run the sinatra server on a command line and have it run in the background?
[05:20:08] eam: so it sounds like this is really a question about the interaction between the shell and a program being run
[05:20:40] eam: if that's the case, the answer is that you absolutely must fork and create two processes -- but the first one will exit
[05:21:01] eam: and it *is* possible to communicate between forked processes, but we would need more specifics
[06:10:12] eam: dhawan: can you describe your project in a bit more detail?


[14:47:49] eam: MagePsycho: { :key => [:array, :of, :values] ] perhaps?
[14:48:04] eam: if you're looking for your key to point to a list
[14:57:46] eam: no, I just did that as an example
[14:57:59] eam: you can use any literal or variable


[15:20:42] eam: Cork: weird, the normal non-named sprintf format seems to work
[15:21:10] eam: >> sprintf "%s-%03d", "abc", 1
[15:21:47] eam: I'm guessing that's some kind of issue with named parameters
[15:21:57] eam: perhaps because the type isn't being specified
[20:21:57] eam: if you're getting specific answers for your job though, that's fine
[21:42:37] eam: I just use %@ @ is that ok?
[22:29:41] eam: I like to add two of three of 'em
[22:32:46] eam: space is cheap don'tcha know
[22:35:11] eam: we are making the things by the dozen over here
[23:03:12] eam: after you run out of bug numbers how will you track fixing it?


[20:08:40] eam: havenwood: bundle lock!


[21:32:54] eam: spacemacs or vim
[22:50:02] eam: is there a way to generate a new Gemfile.lock without actually installing all the damn gems with bundle install?


[18:57:14] eam: the what arguments?
[18:59:23] eam: you mean like 55 6 77 # six is between fifty five and seventy seven?


[04:29:02] eam: Ping timeout: 256 seconds
[05:35:54] eam: has joined #ruby
[16:10:18] eam: do gems even support cross compilation?


[20:38:41] eam: uh ok, UNIXSocket.new() - how do I set the socktype to DGRAM?
[20:39:04] eam: I'm reading ext/socket/unixsocket.c and still not seeing it
[21:58:29] eam: havenwood: I think you're right
[21:59:01] eam: elomatreb: DGRAM/STREAM distinguishes between tcp/udp for an IP socket, but they apply to unix sockets too
[21:59:15] eam: with similar semantic differences


[01:30:35] eam: how can you patent something like recursion? It's easy, first you patent recursion
[17:46:06] eam: desnudopenguino: the errors I see are: "openssl_missing.h:196:22: error: static declaration of 'EVP_PKEY_get0_RSA' follows non-static declaration"
[17:46:14] eam: and "openssl_missing.h:221:20: error: conflicting types for 'RSA_get0_key'"
[17:46:27] eam: lots of type errors
[17:46:54] eam: that one you linked is just the very last in a whole series, you have like dozens
[17:47:07] eam: I suspect something is wrong with your openssl development install
[17:47:48] eam: the huge 1400 line chunk
[17:48:17] eam: it's in this one https://gist.github.com/desnudopenguino/c050bec601d95ee7075e140ec973d278#file-errors3-log
[17:48:21] eam: the last one you pasted
[17:48:36] eam: search for " error: "
[17:50:54] eam: oh! I see what you mean now
[17:52:11] eam: in any event it looks like you've maybe mixed up two different openssl dev environments
[18:52:10] eam: what absolute jackass made a cop to complain about disabling rubocop?



[00:23:24] eam: cthulchu: you should use File.join because it will work on platforms where / isn't the directory separator
[00:23:33] eam: it's a fairly minor concern
[00:24:44] eam: just add every directory on your system to $: problem solved
[00:35:17] eam: cthulchu: read is most certainly relative
[00:35:29] eam: cmon now, we're willing to teach you ruby but be nice
[00:35:58] eam: in fact, I'm not sure ruby has access to the set of non-relative filesystem access calls on linux
[00:37:03] eam: no, it definitely does not on a mac-- I don't think OSX even implements openat()
[00:37:56] eam: like, at least linux implements non relative calls but OSX can't do it unless you're going to do something like write your own kernel module
[00:39:05] eam: al2o3-cr: not linux?
[00:39:16] eam: or you mean inside ruby
[00:39:31] eam: linux certainly has non relative calls
[00:39:33] eam: it's openat()
[00:39:50] eam: you pass an extra parameter which is the explicit relative directory
[00:39:54] eam: useful for threads!
[00:40:09] eam: cthulchu: it's relative to your process current working directory
[00:41:28] eam: not *quite* that nefarious ... currently
[00:57:40] eam: >> (1..100).to_a.sample
[00:57:44] eam: not bad
[01:11:47] eam: oh well that's certainly shorter
[01:30:29] eam: I have a 500k BTU torch that I bet would heat a wok nicely
[01:30:38] eam: can't use it indoors though
[01:31:05] eam: my best range burner is like 20k BTU
[01:34:35] eam: it's this one https://www.amazon.com/gp/product/B00282LP34/
[01:35:37] eam: when I turn it on full it sounds like a jet engine and it lifts my hair on end and creates a huge upward draft
[01:36:00] eam: I used to use it to torch weeds in my side yard but now I use it to instantly start my charcoal bbq
[01:36:10] eam: ready to use coals in about 20s
[01:36:32] eam: they're fantastic
[01:38:44] eam: here's a dude using one for weed control https://www.youtube.com/watch?v=125L5E3N7wU#t=1m
[18:21:31] eam: hang out in this irc channel, obviously


[18:49:48] eam: normies
[19:55:54] eam: rubocop is often wrong
[19:56:11] eam: not me! :D
[20:18:44] eam: mikecmpbll: the defaults :D
[20:21:11] eam: syntax submissive I like it
[20:21:30] eam: just saying the defaults are silly and overly pedantic with bad opinions. of course they can be changed
[20:22:16] eam: but we can, and should, still criticize the choices of defaults ;)
[20:23:02] eam: if they were less opinionated we might be able to establish a widely agreed upon common subset!
[20:23:30] eam: you can
[20:23:43] eam: of course you can, don't be silly
[20:24:12] eam: rubocop could omit a warn about %w characters, or allow a larger set, or ...
[20:24:44] eam: yes, but we are discussing the defaults, did you forgeT?
[20:24:53] eam: I think you might be getting lost here
[20:25:23] eam: the defaults are poor, are too opinionated. "too" opinionated is not the same as "not having opinions at all"
[20:25:39] eam: you are swinging between absolutes
[20:25:47] eam: no one is suggesting those things
[20:25:48] eam: calm down
[20:26:09] eam: and the criticism is that there is too much opinion
[20:26:12] eam: here check this out
[20:26:20] eam: we live in a beautiful world full of color
[20:26:34] eam: try to see past the two black and white tones you're currently considering
[20:27:00] eam: it is possible for something to be "less opinionated" without having no opinion whatsoever
[20:27:29] eam: I literally just did
[20:27:39] eam: and I even gave you a specific example
[20:29:03] eam: 20:23 < eam> if they were less opinionated we might be able to establish a widely agreed upon common subset!
[20:30:08] eam: have you ever used perltidy? The tool rubocop was patterened after?
[20:30:39] eam: that's an example of a more reasonable set of defaults
[20:31:05] eam: it has a *ton* of rules which aren't on at default levels
[20:31:50] eam: rubocop is (afaik) missing the concept of severity/opinion levels entirely
[20:32:04] eam: perltidy at the highest level is kinda dumb, most folks don't agree with it
[20:32:15] eam: but almost everyone agrees with the lower level stuff
[20:42:42] eam: mikecmpbll: sorry, meeting - I meant perlcritic btw, not perltidy
[20:42:53] eam: it has a concept of severity, ranging from 1 to 5
[20:43:25] eam: severity 5 is stuff that is almost certainly an error, or will be actively dangerous
[20:43:36] eam: as you move towards 1 you go more towards subjective opinion
[20:44:51] eam: it's pretty important, because some things are almost certainly errors that a linter should catch (eg, assignment in what appears to be a test)
[20:45:10] eam: the default is level 5
[20:45:24] eam: the default is almost certainly indicative of a real problem, a real error
[20:45:46] eam: then there are increasingly pedantic and opinionated sets of criticisms which you can use if you like
[20:46:26] eam: because the authors recognize the gradient of subjective opinion
[20:46:33] eam: iirc we ran most of our projects on level 3 or so
[20:46:37] eam: with a set of additional critics
[20:46:48] eam: 4/5 were too opinionated
[20:47:24] eam: rubocop, by default, makes it hard to distinguish between important syntax problems and silly ones
[20:47:36] eam: again, we are discussing useful defaults
[20:48:02] eam: no, I did not say that
[20:48:08] eam: and that isn't how it works
[20:48:12] eam: the default is the lowest level
[20:48:39] eam: are you struggling to understand what a default is? is that the issue here?
[20:48:53] eam: then I'm not sure why we're having trouble communicating
[20:49:32] eam: that's it!
[20:49:32] eam: I wish rubocop had more sensible defaults
[20:50:17] eam: the ranking of severity is also useful, I think, because it indicates to a newbie whether the style is a pure style issue or a possible serious mistake


[20:42:40] eam: the computer went on strike


[15:09:19] eam: why don't we ever run production on developer machines, the code always works there :D


[05:34:59] eam: all reads and writes are potentially in memory on linux, until you flush a cache


[23:00:08] eam: it means instance variable
[23:00:23] eam: @selenium_wrapper's scope is the instance of self
[23:04:58] eam: yes, an individual instantiation of an object class
[23:05:13] eam: String is a class, x = "" is an instance of a String
[23:08:09] eam: a local variable is just a bare word "x". Maybe you'd create one inside a method, and it exists for the duration of the method call
[23:08:44] eam: an instance variable is prefixed with @, like @x, and it exists for the duration of the object instance
[23:09:09] eam: a class variable is prefixed with @@ and it exists for the duration of the class itself (so, essentially globally)


[01:21:21] eam: Net::HTTP uses Timeout :(
[01:45:34] eam: offending code: https://github.com/ruby/ruby/blob/trunk/lib/net/http.rb#L934-L941
[01:47:21] eam: maybe in my copious free time I can send over a version that opens the socket nonblocking and selects


[16:55:02] eam: derp10327: if you want to take the string "seconds" and refer to the variable named seconds you would use eval or binding.local_variable_get
[23:34:30] eam: I always assumed it meant lines of cocaine
[23:35:46] eam: crystal being the natural evolution
[23:38:01] eam: couture?
[23:38:31] eam: oh haha


[02:47:13] eam: *.net *.split
[02:48:05] eam: has joined #ruby


[02:36:21] eam: but all the tokenizers use a regex for each element
[22:39:10] eam: garyserj: it's always an instance variable of the class you're in
[22:39:30] eam: and you are always in a class
[22:40:14] eam: and yes, the first time a variable is assigned it's instantiated and subsequent assignments reassign it
[22:40:53] eam: I haven't read all the scrollback - what do you mean by two types?
[22:41:31] eam: you mean like @@foo vs @foo?
[22:41:42] eam: what does "class level" mean here?
[22:41:54] eam: available to all instances of the class?
[22:43:47] eam: what does "class level" mean here?
[22:45:10] eam: oh, I just scrolled up and saw what havenwood was saying
[22:45:39] eam: I think he's saying that a class (like Foo) is itself an instance of Class
[22:45:47] eam: and can contain instance variables
[22:45:53] eam: a class is an instance
[22:46:16] eam: a class is a type of object. it is also an instance of an object (of type Class)
[22:48:17] eam: garyserj: what if it means you have one type, but two scopes?
[22:48:39] eam: the scope inside and outside of an instance method differs
[22:48:58] eam: what is "self" in each scope?
[22:49:21] eam: what I mean is that self changes
[22:52:53] eam: in an instance method, self is the instance
[22:53:10] eam: outside, it's the class (the instance of the Foo class)
[22:53:30] eam: @ defines an instance variable against self


[23:02:33] eam: do you always want to remove the first duplicate? I think I'd have to write a method
[23:18:53] eam: I think I'd iterate the first array and for each item iterate the second array, removing from both on match
[23:31:35] eam: aren't those going to barf when there are multiple repeats in the second array?
[23:31:55] eam: gotta iron out the semantics -- is it only ever removing the first instance and is the second array unique?


[17:07:31] eam: I do not know how rails works
[17:12:55] eam: that's a tough question, how do I quantify understanding? I bet you could do it
[17:13:15] eam: I'll work with you on it if you want


[06:04:03] eam: Quit: Lost terminal
[19:09:42] eam: has joined #ruby


[04:56:57] eam: Ping timeout: 240 seconds
[04:57:05] eam: has joined #ruby


[20:04:28] eam: a sis can be a bro


[21:49:39] eam: jordanm: garyserj: that is not true - text/binary influences the character encoding of strings read from a file
[21:50:34] eam: this can be enormously important -- I once had a (unix) ruby script which went from hours of runtime to seconds after changing to binary
[23:07:30] eam: garyserj: the difference is that a string will have indices access of O(n) instead of O(1) if the string uses a variable width encoding like UTF-8
[23:07:53] eam: many unix systems (most every linux system) will default to UTF-8 encoding
[23:09:29] eam: you can reproduce this by reading in a reasonably sized string, say 10MB or so
[23:10:07] eam: and then 10000.times { s[2**23] }
[23:10:29] eam: with a fixed character size and O(1) indexing, the above will complete almost instantly
[23:10:47] eam: but if you do this when the string has a variable width encoding it will take a reeeeallly long time
[23:13:50] eam: worse, depending on the encoding, you may find yourself addressing the incorrect data because ruby strings have character semantics rather than byte semantics