« Back to channel list

#ruby - 15 January 2019

« Back 1 day Forward 1 day »
[00:03:39] d^sh: has joined #ruby
[00:05:10] AJA4351: has joined #ruby
[00:18:10] mat_bug: has joined #ruby
[00:20:13] r29v: has joined #ruby
[00:36:09] nchambers: has joined #ruby
[00:37:33] themsay: has joined #ruby
[00:38:59] mat_bug: has joined #ruby
[00:44:18] orbyt_: has joined #ruby
[00:50:18] AJA4351: has joined #ruby
[00:58:39] mat_bug: has joined #ruby
[01:02:32] hutch: has joined #ruby
[01:06:38] bmurt: has joined #ruby
[01:09:52] mat_bug: has joined #ruby
[01:20:13] juria_roberts: has joined #ruby
[01:20:39] juria_roberts: How to I add a string to all of the lists in the array? https://justpaste.it/77gxq
[01:24:54] AJA4351: has joined #ruby
[01:25:20] baweaver: juria_roberts: what have you tried?
[01:29:30] juria_roberts: baweaver: tr.map! {|item| item[:posix_groups] = ["ddd"]}
[01:29:52] juria_roberts: baweaver: tr.map! {|item| item[:list] = ["ddd"]}
[01:30:14] baweaver: y'know just giving us the original names is going to help a lot more
[01:30:16] baweaver: and posix groups aren't exactly sensitive.
[01:30:44] baweaver: Firstly avoid using ! methods. It won't help you in this case.
[01:30:57] baweaver: map transforms elements using a function
[01:31:19] baweaver: and the value it returns? In this case the result of `item[:list] = ...`
[01:31:28] jottr: has joined #ruby
[01:31:33] baweaver: So you just get back a bunch of `['ddd']` s
[01:31:43] juria_roberts: yup thats what I got
[01:32:12] juria_roberts: Should I not use map?
[01:32:20] baweaver: After this I would definitely suggest learning more about Enumerable
[01:32:29] baweaver: In this particular case, no.
[01:32:36] baweaver: What's your actual code look like?
[01:32:45] juria_roberts: thats all there is
[01:32:56] juria_roberts: setting the array and then modifying it
[01:33:23] baweaver: Then why not just put it on the original definition?
[01:33:42] juria_roberts: actually the array is in a dependency
[01:33:47] juria_roberts: that I have no control over
[01:33:55] juria_roberts: I just need to add another posix group
[01:34:14] baweaver: Oh, so there is more to the code.
[01:34:40] juria_roberts: Yeah, but its not an important detail
[01:35:00] baweaver: It is, because it can change the context.
[01:35:42] baweaver: The easiest solution is to use `each` and `push`.
[01:36:03] juria_roberts: Will give it shot
[01:39:48] juria_roberts: Awesome, it works
[01:40:50] SeepingN: ah, push it
[01:48:16] tdy: has joined #ruby
[01:52:17] wolfshappen: has joined #ruby
[02:02:48] mat_bug: has joined #ruby
[02:10:33] tiff: has joined #ruby
[02:17:06] mat_bug: has joined #ruby
[02:24:04] hutch: has joined #ruby
[02:29:39] mat_bug: has joined #ruby
[02:31:58] tdy: has joined #ruby
[02:42:03] mat_bug: has joined #ruby
[02:48:29] hutch: has joined #ruby
[02:52:37] dbugger_: has joined #ruby
[02:59:55] mat_bug: has joined #ruby
[03:06:06] cschneid: has joined #ruby
[03:10:41] duderonomy: has joined #ruby
[03:11:57] mat_bug: has joined #ruby
[03:16:57] tdy: has joined #ruby
[03:34:58] mat_bug: has joined #ruby
[03:39:29] dviola: has joined #ruby
[03:39:54] tpanarch1st: has joined #ruby
[03:40:36] tpanarch1st: hi, is it possible to set up a mysql database connection without developing an app using ruby on rails please - the reason i ask is because all of the youtube tutorials cover rails
[03:41:02] jottr: has joined #ruby
[03:41:09] baweaver: tpanarch1st: Use Sequel
[03:41:30] tpanarch1st: oh yeah sure but i presume that there is some reading to do in relation to ruby
[03:41:40] baweaver: https://sequel.jeremyevans.net/
[03:41:47] tpanarch1st: and i cant even find anything that doesn't tell you to do it using rails
[03:41:50] tpanarch1st: thanks for this :)
[03:42:39] tpanarch1st: is there something a bit more basic and a bit more comprehensive please - for a start, i'm looking to do this with mysql
[03:42:59] tpanarch1st: in other words, geared towards a newbie!
[03:43:11] baweaver: How much Ruby do you currently know?
[03:43:24] tpanarch1st: i've watched giraffe's tutorials on youtube
[03:43:25] havenwood: tpanarch1st: What are you making?
[03:43:28] tpanarch1st: now ready to have a play
[03:43:39] tpanarch1st: i want to make a database for my vinyl collection!
[03:43:40] baweaver: I'd probably start on codewars.com
[03:43:54] segy: has joined #ruby
[03:44:00] tpanarch1st: ok just clicking this
[03:44:33] tpanarch1st: oh that's a bit much, i just want to hit problems, research solutions and learn "on the job!"
[03:44:44] tpanarch1st: i just can't find a starting point for "how to work with mysql with ruby"
[03:44:52] havenwood: tpanarch1st: Ruby ships with support for a very simple DB called DBM.
[03:44:54] tpanarch1st: not ruby on rails - bit beyond me this framework stuff currently
[03:45:31] tpanarch1st: can i by any means stick with what i know and work with mysql havenwood :)
[03:47:23] mat_bug: has joined #ruby
[03:47:26] tpanarch1st: i'm quite excited by ruby, i'd heard about it before but i've now spent a few hours watching youtube and i think it seems a lot more friendly than php as a mild dyslexic that struggles with syntax matters
[03:48:33] tpanarch1st: i'm struggling to find a search term that doesn't involve rails
[03:49:05] tpanarch1st: it blew my mind that stuff, it seems obvious to work on a ruby website before moving into playing with rails
[03:49:24] havenwood: tpanarch1st: You can use the mysql2 gem directly or use it from the Sequel gem.
[03:49:49] havenwood: tpanarch1st: Have you created a simple Rack app? Or a Roda or Sinatra app?
[03:49:49] tpanarch1st: i may appear totally thick here but the first time gems was mentioned was in terms of rails
[03:50:04] tpanarch1st: no idea what those things are :) frameworks are well beyond me as yet!
[03:50:06] baweaver: It takes a while to get all these things sorted
[03:50:15] baweaver: and everyone has to start somewhere on it
[03:50:24] baweaver: If I were you I would consider starting with CSVs
[03:50:33] baweaver: make a "database" using files
[03:50:35] tpanarch1st: i've watched tutorials that shout "learn the freaking language before trying to move to their frameworks"!
[03:50:35] havenwood: tpanarch1st: We call snippets of Ruby code we package and share "Gems."
[03:50:50] baweaver: Eh, do what feels fun to you
[03:50:52] tpanarch1st: oooh so gems is not exclusive to rails havenwood
[03:51:03] baweaver: Most of those people yell that to the wind, I tend to ignore them
[03:51:07] tpanarch1st: it seems logical to play with ruby's tools to get a website up
[03:51:20] tpanarch1st: oh wow baweaver
[03:51:28] tpanarch1st: this approach seems to fit with where my heart is though
[03:51:40] baweaver: Just go straight for Rails if that's what interests you
[03:51:42] baweaver: then fill in the knowledge as you go.
[03:51:56] baweaver: "The Rails Tutorial" is a decent place to start as it goes through enough Ruby to get started
[03:52:10] tpanarch1st: too much for me, i want to play with what giraffe's tutorials tought me but actually do a project that appeals
[03:52:23] tpanarch1st: giraffe's didn't cover mysql though
[03:52:26] tpanarch1st: or databases at all
[03:52:30] baweaver: Rails tutorial goes through building basically Twitter
[03:52:41] tpanarch1st: yeah head overload there with rails
[03:52:53] tpanarch1st: want to try and avoid this MVC stuff (is it MVC?) for the moment
[03:52:54] hutch: has joined #ruby
[03:53:04] havenwood: tpanarch1st: https://github.com/brianmario/mysql2#usage
[03:54:10] tpanarch1st: so the Mysql2::Client.new( i presume is the starting point here - what is mysql2 as well?
[03:54:19] tpanarch1st: (please and thanks)
[03:55:01] tpanarch1st: is anybody else familiar with the giraffe tutorials as well - i really liked the way he taught
[03:55:07] havenwood: tpanarch1st: mysql2 is a gem. You can install it with: gem install mysql2
[03:55:19] havenwood: tpanarch1st: then from Ruby you can use it: require 'mysql2'
[03:55:27] tpanarch1st: ah so, i take on board that gems are not unique to framework?
[03:55:49] havenwood: tpanarch1st: Gems are just snippets of Ruby code that people are sharing in formalized packages.
[03:55:57] tpanarch1st: but i'm sitting here thinking "I have my own web server", where to start with installing stuff, is this like installing php mods?
[03:56:36] havenwood: tpanarch1st: It's like downloading some code and evaling that code from the Ruby interpreter. It's not like apache modules, per se.
[03:57:41] havenwood: tpanarch1st: You're not loading the code for all Ruby programs. Just yours.
[03:57:44] tpanarch1st: oh Lord, this is a messy learning curve!
[03:58:39] tpanarch1st: i don't even know where to start, my way is a) avoid overload (the way my mind works) and just stick with things I know, like mysql, where i can (not an expert in mysql mind but i can muddle through with that i think)
[03:59:00] havenwood: tpanarch1st: Start with in-memory.
[03:59:10] tpanarch1st: what is that please?
[03:59:24] tpanarch1st: i dont have much memory on my server, i am hammering it with proxmox!
[03:59:27] havenwood: tpanarch1st: Not saving anything to disk - just model it in Ruby.
[04:00:11] tpanarch1st: i think i need to study some more but what materials should i use following on from giraffe's tutorials please, i'm clearly not ready
[04:00:45] tpanarch1st: not the best reader - better with videos
[04:00:58] havenwood: tpanarch1st: I'm not familiar with giraffe. Show your code? We could probably help.
[04:01:17] tpanarch1st: i'm lost with getting ruby up and running let alone coding it :-D
[04:01:26] havenwood: tpanarch1st: Do you have Ruby installed?
[04:01:28] tpanarch1st: that's why i say i'm clearly not ready :)
[04:01:40] havenwood: Start with installing Ruby.
[04:01:42] baweaver: No one's ever "ready"
[04:01:48] baweaver: We just wing it as we go and hope for the best
[04:01:52] tpanarch1st: i don't know havenwood to be honest - i have entire access to my linux box though :)
[04:02:09] tpanarch1st: thanks for your humble answer there baweaver :)
[04:02:12] havenwood: tpanarch1st: From the command line, type: ruby -v
[04:02:23] tpanarch1st: ah yeah, sugar, i've seen that before!
[04:02:26] baweaver: Give me a year or so and I could recommend you a Ruby book.
[04:02:41] tpanarch1st: just ssh'ing in
[04:02:45] baweaver: Eloquent Ruby at the moment.
[04:03:15] tpanarch1st: beanie@jacob2:~$ ruby -v
[04:03:15] tpanarch1st: ruby 2.3.3p222 (2016-11-21) [x86_64-linux-gnu]
[04:03:29] havenwood: tpanarch1st: So you have Ruby 2.3. It's a bit dated, but it'll do.
[04:03:37] havenwood: tpanarch1st: Now type: irb
[04:03:40] baweaver: irb is a...
[04:03:43] baweaver: freaking ninja
[04:03:57] havenwood: ?irb tpanarch1st
[04:03:57] ruby[bot]: tpanarch1st: irb is "interactive ruby", it is part of ruby. You can run ruby code and see results immediately. it's useful for testing code. Also see ?pry, a gem which is a popular alternative to irb.
[04:03:59] tpanarch1st: ah yeah i've seen a tutorial on this
[04:04:01] tpanarch1st: irb(main):001:0>
[04:04:17] tpanarch1st: it doesn't save anything
[04:04:24] tpanarch1st: im better with getting some sort of draft website up
[04:04:31] tpanarch1st: and seeing it in the browser
[04:04:35] havenwood: tpanarch1st: Try: 42 * 42
[04:04:36] havenwood: tpanarch1st: Or: print "Hello world"
[04:04:37] tpanarch1st: plus it saves my work!
[04:04:39] baweaver: Let's start with some Ruby itself
[04:04:57] tpanarch1st: oh yeah - i get that you can do the maths equations, i've watched a tutorial on that
[04:05:10] havenwood: tpanarch1st: So how would you represent a list of things?
[04:05:17] baweaver: Have you experienced the magic of Enumerable?
[04:05:30] sarink: has joined #ruby
[04:05:38] tpanarch1st: well havenwood the syntax is a tricky matter but the basic logic is the same as any other programming language - use an array
[04:05:40] baweaver: I swear you're reading my train of thought
[04:05:55] baweaver: How would you, say, double every element of that array?
[04:05:57] tpanarch1st: never heard of an enumerable (i don't think)
[04:06:16] havenwood: tpanarch1st: Great, yes, in Ruby the Array literal is square braces. This is an empty Array: []
[04:06:32] baweaver: &>> [1, 2, 3]
[04:06:34] rubydoc: # => [1, 2, 3] (https://carc.in/#/r/602r)
[04:06:35] havenwood: tpanarch1st: In irb, ask it if it's empty: [].empty?
[04:06:40] tpanarch1st: oh yeah, i can refer back to Giraffe Academy for that -that's my plan to hard code his stuff in my brain :)
[04:06:43] havenwood: &>> [1, 2, 3].empty?
[04:06:44] rubydoc: # => false (https://carc.in/#/r/602s)
[04:06:52] havenwood: tpanarch1st: Are you familiar with Hashes?
[04:07:01] baweaver: Dictionaries in other languages
[04:07:06] baweaver: or HashMaps
[04:07:15] tpanarch1st: never heard of mashes - this is my life - i know dribs and drabs of allsorts :-D
[04:07:20] tpanarch1st: jack of trades, master of none!
[04:07:28] havenwood: {"key" => "value", "another key" => "another value"}
[04:07:49] baweaver: Do you know the full version of that quote?
[04:07:55] baweaver: It means something quite different.
[04:07:59] mat_bug: has joined #ruby
[04:08:00] tpanarch1st: no is the short answer here!
[04:08:05] baweaver: A jack of all trades is a master of none, but oftentimes better than a master of one.
[04:08:27] tpanarch1st: yep so your last question is where my lack of knowledge fails me!
[04:08:49] braincrash: has joined #ruby
[04:08:52] baweaver: Want to experience something really out there with Ruby?
[04:08:59] tpanarch1st: it's 4:07am here essentially, so i just thought "do some basic reading for my project"
[04:09:05] baweaver: Firstly, do you know what an anonymous function is?
[04:09:12] tpanarch1st: maybe baweaver as long as it don't stuff the server :)
[04:09:40] baweaver: &>> [1, 2, 3].map { |v| v * 2 }
[04:09:41] rubydoc: # => [2, 4, 6] (https://carc.in/#/r/602t)
[04:09:45] tpanarch1st: no idea what an anonymous function is - i know what a function is so does it somehow hide your identity or add to security
[04:09:52] baweaver: map is a function that takes a function
[04:10:06] baweaver: In this case it takes a function which takes one input, named v, and returns that input doubled
[04:10:18] tpanarch1st: ok you're going beyond me, misleading you in any way with what I know (and what I don't) would not help!
[04:10:36] havenwood: tpanarch1st: Here's a little Rack webserver for you: https://gist.github.com/havenwood/f2374f754c1f02a8f9e8c09f5726011e
[04:10:43] tpanarch1st: can you give me a really layments english term please :)
[04:10:47] havenwood: tpanarch1st: Save that as config.ru and you can run it with: rackup
[04:10:47] baweaver: Well if you want to have some interesting fun in Ruby, this talk is a bit of a treat - https://www.youtube.com/watch?v=x3b9KlzjJNM
[04:10:51] tpanarch1st: english explanation even*
[04:11:10] tpanarch1st: thanks havenwood :)
[04:11:40] baweaver: You can learn Ruby with cartoon lemurs :D
[04:12:15] tpanarch1st: right so to be totally honest with you havenwood, the def bit i know is the format for functions but the 200 and content type etc, never seen that before
[04:12:46] baweaver: The presenter is out of their danged mind
[04:12:53] baweaver: I'm surprised they let them on stage
[04:13:05] havenwood: tpanarch1st: In Rack, you respond to requests with three parts, 1) the status code, 2) a Hash of the HTTP headers, and 3) the body.
[04:13:07] tpanarch1st: i'm not lazy but i've been totally locked out of programming because I am entirely crap at reading technical documents
[04:13:21] havenwood: tpanarch1st: The 200 is just the status code for "OK"
[04:13:37] bougyman: and 418 is "I'm a teapot"
[04:13:40] lemur: No one likes dull tech docs D:
[04:13:41] havenwood: tpanarch1st: These are the headers: {'Content-Type' => 'text/plain'}
[04:13:46] lemur: bougyman: watch that talk above
[04:13:51] tpanarch1st: havenwood: to take a step back, i seem to remember 200 being ok (absolutely no idea where i've heard that before, is that http??) what is rack please?
[04:13:53] lemur: and pay close attention to the background elements :D
[04:13:54] bougyman: lemur: I have :)
[04:13:58] lemur: I may have made that joke
[04:14:10] baweaver: lemur was my original alias
[04:14:12] havenwood: tpanarch1st: Yes, it's an HTTP status code. 200 OK
[04:14:13] baweaver: I still keep it about
[04:14:16] tpanarch1st: oh Lord, baby steps if you have the patience please
[04:14:45] havenwood: tpanarch1st: Rack is a gem.
[04:14:51] tpanarch1st: i'm trying to grasp on to the little things that you are saying currently and trying to cling on for dear life
[04:15:11] al2o3-cr: &>> require 'net/http/status'; Net::HTTP::STATUS_CODES[200]
[04:15:12] rubydoc: # => "OK" (https://carc.in/#/r/602u)
[04:15:15] havenwood: tpanarch1st: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status
[04:15:40] baweaver: How did you remember that al2o3-cr?
[04:15:42] baweaver: You and havenwood are encyclopedias
[04:15:45] tpanarch1st: oh it's ok if we are talking http this is fine right, it's pretty straight forward that, it's the "meat" of the wqeb
[04:16:08] tpanarch1st: how does http fit in with all of this, i'm totally surprised that http codes have come into the conversation so you can see how lost I am
[04:16:15] al2o3-cr: &>> require 'net/http/status'; Net::HTTP::STATUS_CODES[404]
[04:16:16] rubydoc: # => "Not Found" (https://carc.in/#/r/602v)
[04:16:45] tpanarch1st: what are you trying to tell me please al2o3-cr :)
[04:16:58] havenwood: tpanarch1st: When you a web request with your browser or an API, you're just opening a socket and sending some text over it. It's a spec.
[04:17:04] tpanarch1st: i presume rubydoc is a bot
[04:17:27] tpanarch1st: ok so how does that come into a programming language, i've given up with php (i think)
[04:17:40] baweaver: &>> require 'net/http/status'; [200, 404, 418, 503].map { |code| [code, Net::HTTP::STATUS_CODES[code]] }.to_h
[04:17:41] rubydoc: # => {200=>"OK", 404=>"Not Found", 418=>nil, 503=>"Service Unavailable"} (https://carc.in/#/r/602w)
[04:17:48] tpanarch1st: but in php conversations, noones ever mentioned a http code
[04:17:50] baweaver: They left off 418
[04:17:55] tpanarch1st: oh yeah i know 500 is a php f**kup
[04:18:09] tpanarch1st: or any programme language's f**kup
[04:18:26] tpanarch1st: 403 is not an authorised etc
[04:18:30] al2o3-cr: baweaver: to_h now :)
[04:18:40] tpanarch1st: unauthorised*
[04:18:52] tpanarch1st: failed login in english
[04:19:00] havenwood: tpanarch1st: You can respond to a request with any code you'd like. In the Rack spec, this first thing is that response code.
[04:19:02] baweaver: 2xx - that's normal; 3xx - Nah, it's over there somewhere; 4xx - wtf are you doing?; 5xx - wtf am _I_ doing?
[04:19:04] al2o3-cr: require 'net/http/status'; [200, 404, 418, 503].to_h { |code| [code, Net::HTTP::STATUS_CODES[code]] }
[04:19:11] al2o3-cr: &>> require 'net/http/status'; [200, 404, 418, 503].to_h { |code| [code, Net::HTTP::STATUS_CODES[code]] }
[04:19:11] rubydoc: # => {200=>"OK", 404=>"Not Found", 418=>nil, 503=>"Service Unavailable"} (https://carc.in/#/r/602x)
[04:19:18] elomatreb: 1xx - Do something else
[04:19:33] tpanarch1st: so, in really basic terms, how have we come on to http status codes in a conversation about ruby, you're obviously trying to teach me something here and I appreciate your time :)
[04:19:40] baweaver: Ah, they get 2.6 up?
[04:20:02] tpanarch1st: never heard of a 418 or a 503 :-p
[04:20:17] tpanarch1st: i could stop being lazy and go on to wiki for that :-p
[04:20:19] baweaver: ACTION should probably go get groceries already
[04:20:36] havenwood: tpanarch1st: In Ruby most webservers (Rails included) use Rack under the hood. You can make a simple Rack app directly to start groking what's going on.
[04:20:38] tpanarch1st: baweaver: you're not a covert drug dealer are you :-p :-p
[04:20:46] havenwood: tpanarch1st: It's a spec for handling HTTP 1.1 requests and responses.
[04:20:47] baweaver: My drug is Ruby
[04:20:51] baweaver: and you've already been dealt
[04:21:01] tpanarch1st: wicked, so this is a great start - "Ruby uses Rack under the hood"
[04:21:07] tpanarch1st: so taking it from there, what the goodness is rack!
[04:21:13] baweaver: Now where's shevy with that danged quotes list
[04:21:22] havenwood: tpanarch1st: https://rack.github.io/
[04:21:35] tpanarch1st: will this give a total newbie a good idea
[04:21:47] tpanarch1st: oh wicked yes it does
[04:21:52] havenwood: tpanarch1st: It takes web requests, gives you an `env` Hash with info about the request and then you give it the response.
[04:22:00] baweaver: Rails uses Rack under the hood
[04:22:03] mat_bug: has joined #ruby
[04:22:05] baweaver: Rack is written in RUby
[04:22:24] tpanarch1st: ok so just to paste this
[04:22:25] tpanarch1st: To use Rack, provide an "app": an object that responds to the call method, taking the environment hash as a parameter, and returning an Array with three elements:
[04:22:43] havenwood: tpanarch1st: Yes, so that little snippet I wrote is one way to do that ^
[04:23:10] tpanarch1st: a) what is an app, b) what is a call method c) i thought hashes were things like md5 and d_ where does an array come into it when i haven't even started writing code :)
[04:24:02] havenwood: tpanarch1st: a) an app is an application, which in the sense of web application is a little server that responds to HTTP requests with HTTP responnses
[04:24:06] tpanarch1st: i think there needs to be a "ruby in basic english" website and then i can continue :-p
[04:24:25] tpanarch1st: cool so can we say my web server is an app
[04:24:37] havenwood: tpanarch1st: yes
[04:24:50] tpanarch1st: ok cool, so i shall substitute that word in my brain :)
[04:25:32] havenwood: tpanarch1st: b) a call method is a method named #call.
[04:25:42] tpanarch1st: and rack doesn't provide my web server though :) a quicker way is can someone rewrite that quote in really dumbass terms for me please
[04:26:20] tpanarch1st: i won't take offence, the more basic the better!
[04:26:35] tpanarch1st: and not bbc basic either :-p :-p
[04:26:36] havenwood: tpanarch1st: You can write an HTTP request by hand and type it out over socket. We don't though, since that's tedious. We use http clients.
[04:26:56] tpanarch1st: yeah in other words a web browser right
[04:27:13] tpanarch1st: that does that stuff for you i thought
[04:27:15] havenwood: tpanarch1st: Likewise, you can parse each HTTP request yourself when you receive it, but handling those connections and doing the parsing is tedious and complicated.
[04:27:43] havenwood: tpanarch1st: Rack ties together a pluggable webserver and a spec for easily creating web apps that respond to HTTP requests with HTTP responses.
[04:27:50] uplime: tpanarch1st: (c) md5 is a hashing algorithm. hash in this case refers to a Hashmap (which internally will use a hashing algorithm, but probably not md5). you might have seen it called an associative array or dictionary
[04:28:05] uplime: its got the syntax of { key => value } or { key_sym: value }
[04:28:10] tpanarch1st: oh cool, yeah last two terms i've heard of uplime
[04:28:26] uplime: tpanarch1st: cool, its a similar idea in ruby
[04:28:59] tpanarch1st: so like everything i've heard so far is not a basic start to php, there's obviously a good reason for this but i'm clearly failing to grasp it
[04:29:08] gothicsouth: has joined #ruby
[04:30:11] tpanarch1st: it might help if i make clear i've never become competent in even one programming language :)
[04:31:10] baweaver: Gotta start somewhere :D
[04:31:13] porg: has joined #ruby
[04:32:34] tpanarch1st: so like, this is not meant to be rude, and how often do comments get taken the wrong way by text") but how does http requests, rack etc come into starting to type some code and shove some crap in a database and query it please
[04:36:01] hutch: has joined #ruby
[04:38:59] \void: has joined #ruby
[04:42:14] tpanarch1st: thanks ever so much guys, i'm going to go to bed now :)
[04:44:09] mat_bug: has joined #ruby
[04:44:32] tag: has joined #ruby
[04:44:55] tdy: has joined #ruby
[04:49:36] sauvin: has joined #ruby
[04:56:35] mat_bug: has joined #ruby
[05:28:47] dinfuehr: has joined #ruby
[05:33:03] za1b1tsu: has joined #ruby
[05:34:16] dinfuehr: has joined #ruby
[05:39:35] dinfuehr: has joined #ruby
[05:43:17] jottr: has joined #ruby
[05:44:47] dinfuehr: has joined #ruby
[05:51:18] dinfuehr: has joined #ruby
[05:51:55] mozzarella: has joined #ruby
[05:53:21] sarink: has joined #ruby
[05:56:10] mat_bug: has joined #ruby
[06:01:41] esrse: has joined #ruby
[06:09:03] reber: has joined #ruby
[06:18:26] conta: has joined #ruby
[06:22:05] dellavg_: has joined #ruby
[06:43:31] rawrg: has joined #ruby
[06:49:16] mat_bug: has joined #ruby
[06:50:03] paranoicsan: has joined #ruby
[06:54:07] aupadhye: has joined #ruby
[06:57:51] gothicsouth: has joined #ruby
[07:07:44] zapata_: has joined #ruby
[07:13:19] mat_bug: has joined #ruby
[07:15:12] cnsvc: has joined #ruby
[07:16:42] jcarl43: has joined #ruby
[07:25:20] kapil____: has joined #ruby
[07:28:16] m27frogy: has joined #ruby
[07:37:20] mat_bug: has joined #ruby
[07:41:11] sgen: has joined #ruby
[07:41:30] am0123: has joined #ruby
[07:44:14] jottr: has joined #ruby
[07:48:48] Xiti: has joined #ruby
[07:50:52] themsay: has joined #ruby
[07:57:38] havenwood: Like HashWithIndifferentAccess? You'll love RangeWithIndeterminateExclusion! https://gist.github.com/havenwood/bdc8b23f8ec374ec3e0c9a330ee30938
[07:58:22] mat_bug: has joined #ruby
[07:58:54] xrexeon: has joined #ruby
[08:04:37] Dbugger: has joined #ruby
[08:08:54] aufi: has joined #ruby
[08:09:50] paranoicsan: has joined #ruby
[08:11:19] tbuehlmann: havenwood: heh
[08:11:30] clemens3: has joined #ruby
[08:17:19] clemens3_: has joined #ruby
[08:26:51] vondruch: has joined #ruby
[08:33:59] vondruch: has joined #ruby
[08:35:02] Sylario: has joined #ruby
[08:35:39] vondruch: has joined #ruby
[08:41:29] vondruch: has joined #ruby
[08:54:44] mat_bug: has joined #ruby
[09:04:30] mikecmpbll: has joined #ruby
[09:06:53] mikecmpb_: has joined #ruby
[09:14:58] paranoicsan: has joined #ruby
[09:15:33] profetes_: has joined #ruby
[09:30:12] ellcs: has joined #ruby
[09:30:41] jottr: has joined #ruby
[09:31:10] MuffinPimp: has joined #ruby
[09:33:38] evdubs__: has joined #ruby
[09:36:28] xrexeon: has joined #ruby
[09:38:53] mozzarella: has joined #ruby
[09:44:28] CrazyEddy: has joined #ruby
[09:53:29] za1b1tsu: has joined #ruby
[10:00:01] Nitza: has joined #ruby
[10:08:10] ur5us: has joined #ruby
[10:30:15] MuffinPimp_: has joined #ruby
[10:31:33] venmx: has joined #ruby
[10:45:08] sarink: has joined #ruby
[11:04:34] soyeomul^bionic: has joined #ruby
[11:07:59] SuperL4g: has joined #ruby
[11:08:30] paranoicsan: has joined #ruby
[11:20:55] AJA4350: has joined #ruby
[11:25:31] nowhere_man: has joined #ruby
[11:26:04] xrexeon_: has joined #ruby
[11:27:56] conta: has joined #ruby
[11:33:11] conta: has joined #ruby
[11:39:17] leah2: has joined #ruby
[12:01:58] Furai: has joined #ruby
[12:05:23] nowhere_man: has joined #ruby
[12:12:38] reber: has joined #ruby
[12:36:49] yasumi2136: has joined #ruby
[12:58:38] aupadhye: has joined #ruby
[12:59:36] bairyn: has joined #ruby
[13:13:52] paranoicsan: has joined #ruby
[13:16:12] za1b1tsu: has joined #ruby
[13:44:35] dante: has joined #ruby
[13:56:14] bmurt: has joined #ruby
[14:10:58] cow[moo]: has joined #ruby
[14:12:32] exchgr`: has joined #ruby
[14:30:07] chouhoulis: has joined #ruby
[14:32:11] nowhere_man: has joined #ruby
[14:42:15] mangold: has joined #ruby
[14:45:45] orbyt_: has joined #ruby
[14:52:47] sleetdrop: has joined #ruby
[14:52:51] za1b1tsu: has joined #ruby
[14:56:39] paranoicsan: has joined #ruby
[14:58:23] rippa: has joined #ruby
[14:59:04] jgnagy: has joined #ruby
[15:01:57] Rapture: has joined #ruby
[15:02:47] twobitsprite: has joined #ruby
[15:03:19] polishdub: has joined #ruby
[15:04:39] BH23: has joined #ruby
[15:05:56] Nicmavr: has joined #ruby
[15:13:27] sgen: has joined #ruby
[15:14:10] DTZUZO: has joined #ruby
[15:21:20] SeepingN: has joined #ruby
[15:24:35] dinfuehr: has joined #ruby
[15:26:17] aufi: has joined #ruby
[15:30:52] twobitsprite: has joined #ruby
[15:33:28] dinfuehr: has joined #ruby
[15:38:41] Inline: has joined #ruby
[15:39:10] _whitelogger: has joined #ruby
[15:41:29] creat: has joined #ruby
[15:43:55] dinfuehr: has joined #ruby
[15:44:05] cthulchu: has joined #ruby
[15:44:29] mistym: has joined #ruby
[15:47:51] code_zombie: has joined #ruby
[15:58:20] coffeejunk: has joined #ruby
[16:00:09] tdy: has joined #ruby
[16:08:05] ByronJohnson: has joined #ruby
[16:12:02] eddof13: has joined #ruby
[16:14:09] dinfuehr: has joined #ruby
[16:15:53] kapil____: has joined #ruby
[16:20:40] dinfuehr: has joined #ruby
[16:21:14] conta: has joined #ruby
[16:21:54] chouhoulis: has joined #ruby
[16:27:30] profetes: has joined #ruby
[16:31:56] hutch: has joined #ruby
[16:36:13] lucasb: has joined #ruby
[16:36:48] davidw: has joined #ruby
[16:37:12] powerbit: has joined #ruby
[16:43:43] thunderbirdtr: has joined #ruby
[16:43:53] conta2: has joined #ruby
[16:45:37] rsh: has joined #ruby
[16:51:39] reber: has joined #ruby
[16:54:59] SeepingN: has joined #ruby
[16:55:44] \void: has joined #ruby
[17:20:06] gix: has joined #ruby
[17:26:10] duderonomy: has joined #ruby
[17:26:26] uplime: has joined #ruby
[17:26:53] AJA4351: has joined #ruby
[17:28:19] themsay: has joined #ruby
[17:32:47] jcarl43: has joined #ruby
[17:32:54] duderonomy: has joined #ruby
[17:35:06] sputnik13: has joined #ruby
[17:40:40] orbyt_: has joined #ruby
[17:44:59] sarink: has joined #ruby
[17:49:38] SeepingN: has joined #ruby
[17:51:39] elcontrastador: has joined #ruby
[17:52:36] lxsameer: has joined #ruby
[17:52:50] duderonomy: has joined #ruby
[17:55:37] sanscoeur: has joined #ruby
[17:56:44] duderonomy: has joined #ruby
[17:57:38] [Butch]: has joined #ruby
[18:01:53] duderonomy: has joined #ruby
[18:02:38] troulouliou_div2: has joined #ruby
[18:11:04] johnny56: has joined #ruby
[18:15:38] AJA4351: has joined #ruby
[18:20:52] nowhere_man: has joined #ruby
[18:30:00] Rapture: has joined #ruby
[18:31:18] Dbugger: has joined #ruby
[18:32:30] bairyn: has joined #ruby
[18:38:14] duderonomy: has joined #ruby
[18:49:37] xrexeon: has joined #ruby
[18:50:17] [Butch]: has joined #ruby
[18:53:14] r29v: has joined #ruby
[18:54:06] d^sh: has joined #ruby
[18:54:43] xrexeon: has joined #ruby
[18:58:03] orbyt_: has joined #ruby
[18:58:33] sgen: has joined #ruby
[19:02:33] sanscoeur: has joined #ruby
[19:10:11] conta: has joined #ruby
[19:15:15] reber__: has joined #ruby
[19:19:37] cd: has joined #ruby
[19:21:09] cnsvc: has joined #ruby
[19:24:52] Tempesta: has joined #ruby
[19:27:37] mikecmpbll: has joined #ruby
[19:29:33] orbyt_: has joined #ruby
[19:29:52] djdduty: has joined #ruby
[19:32:48] sanscoeur: has joined #ruby
[19:34:36] wildermind: has joined #ruby
[19:37:59] nowhere_man: has joined #ruby
[19:43:02] reber: has joined #ruby
[19:43:50] reber__: has joined #ruby
[19:54:45] conta: has joined #ruby
[19:57:55] ivanskie: has joined #ruby
[20:11:09] chouhoulis: has joined #ruby
[20:15:09] nowhere_man: has joined #ruby
[20:16:39] chouhoulis: has joined #ruby
[20:17:15] chouhoulis: has joined #ruby
[20:24:48] tdy: has joined #ruby
[20:32:32] Rapture: has joined #ruby
[20:33:15] ur5us: has joined #ruby
[20:36:55] jtperreault: has joined #ruby
[20:39:56] ByronJohnson: has joined #ruby
[20:41:14] fiachetti: has joined #ruby
[20:55:36] hutch: has joined #ruby
[20:58:38] orbyt_: has joined #ruby
[21:00:34] ivanskie: has joined #ruby
[21:03:03] jarlopez: has joined #ruby
[21:03:38] jarlopez: has left #ruby: ()
[21:07:30] jaddison: has joined #ruby
[21:09:16] sarink: has joined #ruby
[21:24:34] Aqo: has joined #ruby
[21:26:37] MrPunkin: has joined #ruby
[21:26:57] MrPunkin: Anyone familiar with Net::HTTP enough to help me figure out if there is a way to get the request URL from the response object?
[21:34:59] jenrzzz: has joined #ruby
[21:45:08] AJA4351: has joined #ruby
[21:49:01] r29v: has joined #ruby
[21:50:31] szulak_: has joined #ruby
[21:54:53] d^sh: has joined #ruby
[21:58:10] jaddison: has joined #ruby
[22:02:38] uplime: has joined #ruby
[22:03:01] havenwood: mr_rich101: res.uri.to_s
[22:03:05] havenwood: oops, wrong mr
[22:12:56] donofrio: has joined #ruby
[22:17:47] cd: has joined #ruby
[22:22:17] fredolinhares: has joined #ruby
[22:22:55] phaul: has joined #ruby
[22:24:20] jenrzzz: has joined #ruby
[22:33:52] lyusternik: has joined #ruby
[22:35:28] donofrio: has joined #ruby
[22:36:58] jaddison_: has joined #ruby
[22:37:51] hutch: has joined #ruby
[22:38:04] fredolinhares: How do I get the "Gem" from C, in a C extension?
[22:38:37] fredolinhares: I want to call a Gem method from C with funcall.
[22:43:02] nowhere_man: has joined #ruby
[22:43:29] donofrio: has joined #ruby
[22:58:51] chouhoulis: has joined #ruby
[23:05:08] brandonkal: has joined #ruby
[23:05:53] jenrzzz: has joined #ruby
[23:13:00] fredolinhares: Found it: rb_const_get(rb_cObject, rb_intern("Gem"));
[23:15:37] cschneid: has joined #ruby
[23:16:09] cschneid: Trying to find the source of an idea I ran into a long while ago, but trying to show to a junior dev. "Push messes to the edge of your system" - I thought it was a sandi metz book or blog post, but I can't seem to find it. Anybody have any ideas?
[23:22:46] orbyt_: has joined #ruby
[23:28:38] donofrio: has joined #ruby
[23:35:53] leftylink: that wouldn't be gary bernhardt's boundaries talk, would it...
[23:41:53] mat_bug: has joined #ruby
[23:43:48] cschneid: maybe, let me go skim it
[23:44:26] cschneid: I've read & followed too much great content in my time in ruby! Shoulda taken notes
[23:47:47] hutch: has joined #ruby
[23:48:51] mat_bug: has joined #ruby
[23:50:29] AJA4350: has joined #ruby
[23:56:30] jenrzzz: has joined #ruby
[23:58:30] donofrio: has joined #ruby