Skip to content

Instantly share code, notes, and snippets.

@pikesley
Last active August 29, 2015 14:27
Show Gist options
  • Save pikesley/264b30350ae2689c58c5 to your computer and use it in GitHub Desktop.
Save pikesley/264b30350ae2689c58c5 to your computer and use it in GitHub Desktop.
[13:32] Sam: Good writeup of making a gem: http://xnoder.github.io/2015/08/12/rolling-gems/
A code slinging, Linux administering, motorcycle riding cloud engineer in Africa.
[13:34] Stuart Harrison: Woah
[13:34] Stuart Harrison: Wait
[13:34] Stuart Harrison: So `bundle gem` allows you to specify a testing framework
[13:34] Stuart Harrison: And a code of conduct? (edited)
[13:34] Stuart Harrison: This is new stuff
[13:38] Sam: It is
[13:38] Adam Sven Johnson: if only bundler and gem were the same project, then there would be even less mess and duplicated effort
[14:00] stephenfortune: @pikesley: that's a great post - would you follow that process if you were publishing your gem for use by the wider ruby community (i thought that some of the TSI gems are 'local' only)
[14:01] Sam: I have previously used this one https://github.com/radar/guides/blob/master/gem-development.md
GitHub
radar/guides
guides - Ruby Guides
[14:01] Sam: And yes, most of my gems are on rubygems
[14:01] Sam: Rubygems, where the tail is looooooooooooooooong
[14:03] Sam: https://rubygems.org/profiles/pikesley < there's a lot of shit here
[14:03] Sam: The useful (hah) stuff is listed here http://sam.pikesley.org/projects/
[14:06] Stuart Harrison: I did not know there was a Star Wars API
[14:07] Stuart Harrison: Not official like the Marvel one though
[14:07] stephenfortune: there was supposed to be a Simpsons API too
[14:08] Stuart Harrison: Oh man
[14:09] stephenfortune: I read about in the Atlantic last year, but whatever the service is it currently says it US only
[14:09] Stuart Harrison: That would be incredibly useful
[14:10] James Smith: GET /monorail
[14:10] slackbot: http://i.ytimg.com/vi/xhpO_WcR_jE/hqdefault.jpg (10KB)
[14:10] stephenfortune: this was the plan: http://www.theatlantic.com/technology/archive/2014/07/woohoo-simpsons-world-will-turn-the-beloved-show-into-delicious-delicious-data/374789/
The Atlantic
All 552 Episodes of The Simpsons: Watchable and Searchable
The new website and app will make all 552 episodes of the series searchable.
[14:11] Sam: GET /Ogdenville&Brockway&North_Haverbrook
[14:11] stephenfortune: GET /failwhale
[14:12] stephenfortune: @pikesley: is there any distinction between a ruby library and a gem?
[14:13] Sam: Um
[14:13] Sam: Not really
[14:13] Sam: A gem is usually a library
[14:13] Sam: But
[14:13] Sam: It can also have executables in it
[14:13] Stuart Harrison: A gem is a way of packaging a library I’d say
[14:13] James Smith: ^ that
[14:14] Sam: https://github.com/pikesley/replacer_bot is a library but built entirely in order to support my very specific executable
GitHub
pikesley/replacer_bot
replacer_bot - Search, mangle, retweet
[14:30] stephenfortune: sorry was AFK in NWSPK
[14:30] stephenfortune: so
[14:31] stephenfortune: a library can have executables where a gem would not usually / would always have an executable?
[14:31] Sam: A gem is just a package of ruby code
[14:32] Sam: I don't think these things are really clear-cut
[14:33] stephenfortune: cool - do you usually go to RubyGems.org and search exhaustively before rolling your own gem?
[14:33] Sam: good heavens no
[14:34] Sam: If I'm building gems, it's almost certainly because I want to build a gem
[14:34] Sam: Where *building the gem* is the fun part
[14:34] Stuart Harrison: https://libraries.io/ is better than searching rubygems anyway
Discover new modules and libraries you can use in your projects.
[14:34] Stuart Harrison: When we’re building gems for work stuff, it’s generally because the problem we’re trying to solve hasn’t been solved
[14:34] Sam: ^ that
[14:34] stephenfortune: holy moly that .io is gargantuan
[14:35] Sam: @teabass is awesome
:+1:1
[14:35] Stuart Harrison: And that would be worked out by a general Google search
[14:36] Sam: He does the Nodecopter stuff also
[14:36] Sam: Building gems as relaxation
[14:36] Sam: Is a thing
[14:36] stephenfortune: I see where your coming from on that, but I know it's been a feature of working on the TSI projects where there are really helpful gems in situ, and I was wondering do you acquire a sense of what's been done (gem/package/module wise) only through experience 'on the job'?
[14:36] Sam: That
[14:36] Sam: Totally that
[14:37] Sam: And working with lots of different people
[14:37] Sam: Who know different tools
[14:37] Sam: "You've never heard of VCR? HOW DO YOU DO ANYTHING?"
[14:37] Sam: etc etc
[14:38] stephenfortune: so deducing whether the 'problem has been solved' is tacit knowledge of being a developer, rather than something that can be grokked from a sky high view (or search through libraries.io)?
[14:39] stephenfortune: (I ask as all of this is relevant to the sense of vastness that was encountered when tackling node last week)
[14:39] Stuart Harrison: Yes
[14:40] Sam: As a consequence of this, we get stuck in our ways, of course
[14:41] Sam: We reach for the same gem for a similar-looking problem when there might be a better-suited one
[14:41] Sam: http://i.imgur.com/91sn32Qb.jpg (21KB)
[14:42] stephenfortune: so as an aside, with the hypothetical of bundling the CSVlint gem within Electron (via Travelling Ruby) - i get that this would be optimal in terms of only having to maintain ruby code to be sure that the electron app continued to work as expected, but could a case be made for surveying what node libraries exist that resolve similar objectives?
[14:42] Stuart Harrison: Possibly
[14:43] Stuart Harrison: There is a csvlint node library
[14:43] Stuart Harrison: But it’s not as fully featured
[14:43] stephenfortune: @pezholio: - say whaaaat?
[14:43] Stuart Harrison: https://libraries.io/
[14:44] Stuart Harrison: https://github.com/chilijung/csvlint.js
GitHub
chilijung/csvlint.js
csvlint.js - Linting CSV file and report warnings or errors, implementing specification rfc4180.
[14:44] Stuart Harrison: Sorry (edited)
[14:44] Stuart Harrison: Wrong link
[14:44] stephenfortune: cool, so they say inspired by CSVlint.io - so was that someone who forked the idea subsequent to CSVlint going live?
[14:45] Stuart Harrison: ¯\_(ツ)_/¯
:grinning:1
[14:45] Stuart Harrison: I guess so
[14:45] Stuart Harrison: I just found out I could do that
[14:46] stephenfortune: This is more of a labs question I guess, but are these secondary effects (ripples through other open source languages) something which Labs tracks or aspires to cause? cc @floppy
[14:51] ben.couston: @channel: sorry to break up this lovely conversation but does anyone have any issues that need resolving while Stu is reviewing my pull request?
[14:51] Sam: My San Marzano tomatoes have blossom-end rot
[14:51] James Smith: @stephenfortune: definitely
[14:52] James Smith: if we inspire ripples that make the world better, we win
[14:52] James Smith: network effects
[14:59] Giles Dring: Everything from 1:30 onwards is dynamite: all the gems and libraries and whatnot. Superb terminology discussion. Blog it!
[14:59] stephenfortune: so I'm trying to work out electron and ways of managing program complexity and have gotten something of a response on the discuss forum
Just wondering if someone better versed in application architecture and framework nomenclature could sanity check what I am asking, and whether I am asking the right question
https://discuss.atom.io/t/node-frameworks-how-they-do-they-apply-to-electron/20011
Atom Discussion
Node Frameworks – how they / do they apply to Electron?
I've been reading around Electron to get a sense of the correct way to manage the complexity of writing standalone application in it. I've gathered from this Stack Overflow post and this post on the evolution of nw.js (which I know is not equivalent to electron) that 'single page application' is the most comparable paradigm to what one authors when constructing an electon app. I've seen applications that integrate entire front end frameworks into the renderer part of Electrons logic but my que...
[15:01] stephenfortune: @gilesdring: makes a good point given how quickly things get lost in the slack churn, I've starred most of the conversation points for future reference
[15:01] Sam: Can we get a transcript?
[15:01] Sam: At least sling this into a gist
[15:01] James Smith: /giphy churn
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment