mg^

Activity Graph

Page 1 of 17 | Next »

2016-07-23

[00:02:32] mg^: I already have a job dispatcher
[00:03:44] mg^: which isn't limited to Ruby things... but maybe a secondary dispatcher in Ruby that already has Fog loaded might help
[00:04:46] mg^: I had started down the road of proxy objects, but I'd have to proxy a whole hierarchy of modules and classes
[00:05:15] mg^: and I'd like to not have to know what they are beforehand so that it is generic enough
[00:05:44] mg^: but secondary dispatcher seems like the easiest route
[00:06:23] mg^: though it sort of spaghettis it up a bit.. the jobs in question are typically a mix of shell and Ruby code
[00:08:17] mg^: yeah but it would be really cool and could extend to other things. I'd thought to basically write a wrapper that dynamically generated the proxy hierarchy supported by DRb, and used it whenever something responded with DRb::DRbUnknown, it'd automatically substitute in the proxied class
[00:10:16] mg^: that way anything that couldn't be unmarshalled into a definite local object could still be used for method chaining, and as long as the end resulted in an object that could be unmarshalled locally, it would suffice
[00:11:42] mg^: Yes, the action would happen most likely over the loopback interface. Yes, it had occurred to me to just send code to eval :-)
[00:12:14] mg^: yeah but it seems a little crude :)
[00:12:51] mg^: but it wouldn't bother my sysadmin co-workers at all who are much more on the "quick and dirty" side of programming
[00:13:09] mg^: so maybe that's the route
[00:13:58] mg^: if I combined DRb with eval and made sure I ended up getting stuff that can be unmarshalled, it'd do the trick
[00:16:08] mg^: I'm going to let it simmer in the back of my brain over the weekend and see what it looks like on Monday, I think
[00:16:11] mg^: have a good weekend

2016-07-22

[08:45:32] mg^: Ping timeout: 260 seconds
[10:34:35] mg^: has joined #ruby-offtopic
[23:50:03] mg^: bah, I need to figure out how to make this automation faster... Fog (http://fog.io/) is such a beast... require 'fog' takes literally 1m 35s on our automation box
[23:50:55] mg^: Unfortunately that translates into a real slowdown for our operations
[23:51:31] mg^: I'm thinking I need to split it up so that Fog is loaded into an "always on" server process, and then the existing code just makes calls to it
[23:52:06] mg^: The problem is that I don't want to write a wrapper for each and every class and method we might use, which is relatively small now, but might be larger in the future
[23:54:01] mg^: I was looking into DRb, but since we want to avoid loading Fog into the transient process, the various Fog objects can't be unmarshalled and therefore can't be used directly.
[23:56:40] mg^: There's got to be an efficient and self-extending way to do this so I don't have to touch it every time we get new/changed functionality in Fog or need new/changed functionality in the automation jobs.
[23:57:19] mg^: Just throwing this out there in case anyone has ideas or knows a gem that might help
[23:58:22] mg^: maybe on Monday I'll throw it into #ruby and see what folks have to say

2016-07-21

[01:10:46] mg^: DeBot: !hangman codepoints 3
[01:11:00] mg^: Ahh, a leftover hangman
[01:11:15] mg^: DeBot: 1
[01:11:32] mg^: DeBot: c
[01:11:38] mg^: DeBot: bj
[01:12:18] mg^: DeBot: id

2016-07-18

[15:52:04] mg^: Ping timeout: 264 seconds
[15:53:29] mg^: has joined #ruby-offtopic

2016-07-15

[18:49:40] mg^: Sigh. Gotta love the workplace, sometimes. Dev: "We are going to implement vanity domains. People will get to pick what they want." Me: "What do we do when there is a trademark dispute?"
[18:49:55] mg^: Dev boss: "Stop smarting off."

2016-07-14

[18:23:55] mg^: DeBot: !hangman ruby 5
[18:24:13] mg^: DeBot: osper
[18:24:27] mg^: DeBot: _t:
[18:24:35] mg^: DeBot: nml
[18:24:42] mg^: DeBot: dfau
[18:25:22] mg^: DeBot: dfau
[21:36:54] mg^: DeBot: !hangman codepoints 1
[21:37:03] mg^: DeBot: tlr
[21:37:27] mg^: DeBot: in g
[21:37:39] mg^: DeBot: ga
[21:37:51] mg^: DeBot: hef
[21:38:51] mg^: DeBot: he
[21:39:08] mg^: DeBot: c
[21:39:20] mg^: DeBot: ob
[21:39:33] mg^: DeBot: psh
[21:39:52] mg^: in the penalty box
[21:40:09] mg^: DeBot: sw
[21:40:16] mg^: good team effort
[22:00:10] mg^: moving is definitely on the "would rather not do" list
[22:00:31] mg^: at least when getting your teeth pulled you can have anesthesia, no such thing for moving.
[22:01:04] mg^: Reminds me I need to email the Google recruiter back and tell him I am not going to move to California or New York under any circumstances.
[23:19:50] mg^: eam: nah, I own too many things that California says might cause cancer or other reproductive harm, or hurt the environment, or something.
[23:24:27] mg^: Exactly
[23:26:06] mg^: Oddly, the MRuby Curses gem is more full-featured than the C Ruby Curses gem, if a bit more crude.

2016-07-11

[20:34:53] mg^: has joined #ruby-offtopic

2016-07-07

[16:54:47] mg^: Quit: Leaving

2016-07-06

[17:21:04] mg^: DeBot: !hangman codepoints 3
[17:21:13] mg^: DeBot: le tr
[17:21:21] mg^: DeBot: i
[17:21:36] mg^: DeBot: ak
[17:22:20] mg^: DeBot: bh
[17:22:31] mg^: DeBot: y
[17:22:47] mg^: DeBot: ng

2016-07-05

[16:04:52] mg^: DeBot: !hangman ruby 3
[16:05:02] mg^: DeBot: openssl

2016-06-29

[15:43:02] mg^: I guess you can self-host a Gist instance
[16:08:51] mg^: Well, I interfaced a C Z80 emulator to MRuby so that I/O and memory emulation could be done with Ruby code. It works, and in the simple case isn't even that much slower than the C version.
[16:09:01] mg^: pure C version, that is
[17:27:03] mg^: eam: gist is on that list
[17:28:05] mg^: but maybe it's a clone and not the real deal
[17:31:26] mg^: anyway, I went full YOLO with my Z80 mrbgem and wrote a CP/M emulator on top of that... and I don't mean I load a real CP/M into the memory... I re-implemented the CP/M BIOS and BDOS APIs in Ruby, called via the Z80 I/O instructions, and emulate them on top of Unix.
[17:35:22] mg^: emulating ancient 8-bit hardware/software using a combination of of C and MRuby :-)
[17:35:40] mg^: ok, well guess the list is not so awesome :)

2016-06-22

[07:04:45] mg^: *.net *.split

2016-06-20

[21:58:11] mg^: DeBot: !hangman codepoints
[21:58:18] mg^: DeBot: se tlr
[21:58:29] mg^: DeBot: kai
[21:58:41] mg^: DeBot: hoj
[21:59:36] mg^: DeBot: k
[21:59:58] mg^: DeBot: by
[22:00:10] mg^: DeBot: mnp

2016-06-17

[16:20:57] mg^: DeBot: !hangman ruby 3
[16:21:04] mg^: DeBot: op#
[16:21:24] mg^: DeBot: ue:
[16:21:35] mg^: DeBot: ri
[16:21:54] mg^: DeBot: qy
[16:22:23] mg^: DeBot: qy
[16:22:46] mg^: DeBot: gnc

2016-06-10

[16:32:55] mg^: DeBot: !hangman ruby
[16:32:59] mg^: DeBot: Openssl
[16:33:06] mg^: DeBot: :#_
[16:33:17] mg^: DeBot: mdu
[16:33:34] mg^: DeBot: private method defined?
[16:33:48] mg^: DeBot: ?
[17:01:33] mg^: Quit: Leaving
[18:34:28] mg^: has joined #ruby-offtopic

2016-06-09

[00:00:09] mg^: I used to work at a software company we will call Big Security. The security guards would roll around on a Segway and I used to try to play that from my office when they were doing evening patrols.
[00:00:54] mg^: I also had the computer belting out quotes from the fortune file via TTS when the cleaning crew was working.
[15:41:58] mg^: DeBot: !hangman codepoints 3
[15:42:06] mg^: DeBot: le tr
[15:42:22] mg^: DeBot: syab
[15:42:26] mg^: DeBot: i
[15:42:39] mg^: no hope here
[15:42:41] mg^: DeBot: o
[15:43:12] mg^: DeBot: o
[15:43:19] mg^: DeBot: p
[15:43:36] mg^: DeBot: p
[15:43:46] mg^: that's totally what I was thinking!

2016-06-08

[23:08:43] mg^: Well, I think I know the next thing I want to do with MRuby
[23:09:49] mg^: I was thinking about hooking it up to a C Z80 emulator in order to describe hardware at a higher level before putting it to breadboard.
[23:10:41] mg^: Easy to change the behavior on the fly and build the simulation.
[23:22:17] mg^: DeBot: !hangman ruby 3
[23:22:20] mg^: DeBot: es
[23:22:31] mg^: DeBot: p:
[23:22:41] mg^: DeBot: i
[23:23:07] mg^: I was in the penalty box
[23:56:28] mg^: OK I will put a song on appropriate for the prospect of mating MRuby with an 8 bit CPU emulator.
[23:56:30] mg^: https://www.youtube.com/watch?v=N9qYF9DZPdw

2016-06-06

[22:37:05] mg^: DeBot: !hangman codepoints 1
[22:37:10] mg^: DeBot: l e
[22:37:18] mg^: DeBot: syab
[22:37:27] mg^: DeBot: i
[22:37:34] mg^: DeBot: r
[22:38:12] mg^: DeBot: r

2016-06-02

[04:25:07] mg^: Ping timeout: 250 seconds
[04:26:27] mg^: has joined #ruby
[04:26:27] mg^: has joined #ruby-offtopic
[22:16:44] mg^: DeBot: !hangman codepoints 3
[22:16:58] mg^: DeBot: ea t
[22:17:20] mg^: DeBot: sn
[22:17:30] mg^: DeBot: c
[22:18:21] mg^: DeBot: hgx
[22:18:38] mg^: DeBot: r
[22:18:45] mg^: DeBot: uy
[22:19:27] mg^: DeBot: !hangman ruby 3
[22:19:45] mg^: DeBot: !hangman ruby 3
[22:20:28] mg^: DeBot: set#
[22:20:43] mg^: DeBot: r
[22:20:47] mg^: DeBot: knxc
[22:21:13] mg^: DeBot: l
[22:21:32] mg^: DeBot: l

2016-05-19

[10:55:57] mg^: Ping timeout: 260 seconds
[10:57:12] mg^: has joined #ruby
[10:57:12] mg^: has joined #ruby-offtopic

2016-05-18

[23:16:50] mg^: DeBot: !hangman codepoints 3
[23:16:54] mg^: DeBot: se tlr
[23:17:08] mg^: DeBot: dh
[23:17:20] mg^: DeBot: paniz
[23:17:56] mg^: DeBot: gu
[23:18:17] mg^: DeBot: !hangman ruby 3
[23:18:31] mg^: DeBot: ears:
[23:18:38] mg^: DeBot: y#
[23:18:47] mg^: DeBot: _
[23:19:59] mg^: DeBot: _dt
[23:20:07] mg^: DeBot: p
[23:20:14] mg^: DeBot: b
[23:20:31] mg^: DeBot: g

2016-05-17

[11:27:34] mg^: Ping timeout: 240 seconds
[11:35:00] mg^: has joined #ruby
[11:35:00] mg^: has joined #ruby-offtopic
[12:02:15] mg^: Ping timeout: 276 seconds
[12:46:01] mg^: has joined #ruby
[12:46:01] mg^: has joined #ruby-offtopic

2016-05-11

[19:55:52] mg^: DeBot: !hangman codepoints 3
[19:55:58] mg^: DeBot: se tlr
[19:56:14] mg^: DeBot: aowuh
[19:56:20] mg^: DeBot: vy

2016-05-10

[18:49:54] mg^: reason #29234787 why I'll never move to the Bay Area despite the missed opportunities
[18:50:21] mg^: you'd think that, but from an outside perspective it's not :)
[18:50:36] mg^: The only thing it has going for it is the weather
[18:51:20] mg^: well, up here the weather is still decent, and our water is almost free :)
[18:52:26] mg^: I'll re-qualify that as "free and plentiful" here
[18:53:46] mg^: and another created, no doubt
[18:55:16] mg^: oh, you mean shut the ranches down
[18:55:31] mg^: I distinguish them
[18:55:47] mg^: actually we should stop raising cows in North America anyway, and switch to bison
[18:56:19] mg^: bison evolved here and do better across more environments than cattle
[18:56:48] mg^: buncha idiots killed most of them off and replaced them with less efficient/more fragile cattle
[18:57:37] mg^: yeah that land could be better served growing things that do well in Mediterranean drought-cycle climates
[18:59:41] mg^: you have cattle actually optimized for the North American mountains and plains climates, though
[19:00:10] mg^: and the best cows for eating are still quite tempermental
[19:00:42] mg^: that could be
[19:00:46] mg^: and I look forward to it
[19:19:08] mg^: yeah I want to write Ruby code to script my meals
[19:19:16] mg^: right out of a replicator
[19:19:44] mg^: Maybe monitor a twitter feed for entree recommendations and have that ready for me when I get home
[19:21:24] mg^: Nah you'd have to model that more complexly. For instance, the burger place across the street offers four different patties
[19:21:46] mg^: you'd have to instantiate patties of various kinds and weights
[19:21:57] mg^: and doneness
[19:23:18] mg^: my personal favorites are the "bork" patty, which is a mixture of beef and crumbled bacon, and the ground chicken, because it is significantly lower calories and falls under the "healthy" category
[19:24:50] mg^: warn "Consuming undercooked meat may result in foodborne illness" if @doneness < Burger::Patty::Doneness::A_LITTLE_PINK
[19:25:49] mg^: warn "This may cause cancer" if @location == :california
[20:50:49] mg^: DeBot: !hangman ruby
[20:50:54] mg^: DeBot: openssl
[20:51:11] mg^: DeBot: :#_
[20:51:24] mg^: DeBot: c
[20:51:31] mg^: DeBot: ktb
[20:53:05] mg^: DeBot: e:2
[20:53:13] mg^: I should stop.
[20:53:29] mg^: trying to program and IRC at the same time
[22:37:21] mg^: DeBot: !hangman ruby
[22:37:33] mg^: DeBot: eat:
[22:37:53] mg^: DeBot: _s
[22:38:10] mg^: DeBot: li
[22:39:18] mg^: DeBot: d
[22:39:23] mg^: DeBot: fn
[22:40:01] mg^: oh I remember seeing this module now
[22:40:04] mg^: DeBot: sync_m
[22:40:20] mg^: I'd never have heard of it if not for DeBot
[23:16:56] mg^: mruby is cool
[23:17:24] mg^: I've done a little work with it
[23:18:26] mg^: https://github.com/mgcaret/hexchat-mruby
[23:18:38] mg^: that's my contribution to the ecosystem, so far
[23:19:19] mg^: I want to find more excuses to use it
[23:19:57] mg^: I recently found my old ham packet radio gear, I was thinking about trying to write a Ruby-based AX.25 stack.
[23:21:01] mg^: yeah the problem is always time, of course
[23:21:09] mg^: I also want to do home automation stuff

2016-05-06

[17:11:25] mg^: DeBot: !hangman ruby
[17:11:35] mg^: DeBot: eatr:
[17:11:40] mg^: DeBot: #
[17:11:58] mg^: DeBot: s

2016-05-05

[21:48:21] mg^: DeBot: !hangman ruby
[21:48:33] mg^: DeBot: eatr#
[21:48:47] mg^: DeBot: objc
[21:48:50] mg^: DeBot: =
[21:48:56] mg^: DeBot: <>
[21:50:11] mg^: DeBot: <>

2016-05-04

[16:50:53] mg^: DeBot: m