The Ruby and Rails community linklog
Made a library? Written a blog post? Found a useful tutorial? Share it with the Ruby community here or just enjoy what everyone else has found!
Submit a post
Post Preview
Note: Only the first pargraph is shown on the front page and overly long paragraphs may be broken up.
Extract tables from PDF files
Iguvium is a way to get structured table data from PDF pages. The only external dependency is GhostScript, which makes this gem suitable even for free Heroku installations.
Reducing Enumerable - An Illustrated Adventure (Novel Version)
Translating the RubyConf talk “Reducing Enumerable - An Illustrated Adventure” into a series of six posts, this format is easier to read through than just glancing at the slide deck. Part one starts here: https://medium.com/@baweaver/reducing-enumerable-part-one-the-journey-begins-ddc1d4108490
How to write professional commits efficiently?
Writing good commit messages can be tricky and time-consuming. 🤔 Here I share my solution (how to handle that problem and write commit messages efficiently)[https://driggl.com/blog/a/how-to-write-professional-commits-efficiently]! Join to the discussion if you know other solutions for that!🗨️ [more inside]
Ruby memory, ActiveRecord and Draper a performance story
A story about digging to find we have a huge memory consumption while parsing and processing CSV. We will see that the issue was not in CSV parsing but in dependencies and the way they were used. https://medium.com/appaloosa-store-engineering/ruby-memory-activerecord-and-draper-64f06abeeb34
Kinit will make your Rails application better by adhering to good practices.
Kinit -– A gem to make sure sanity of your Gemfile is always in check.
How fast is Ruby 2.5, 2.6 and 2.6 –jit in generating Prawn PDFs
I tried to find out if the new Ruby 2.6 JIT (from preview3) can help the performance when generating invoices using InvoicePrinter and Prawn. Here is the benchmark.
Announcing the release of WebpackerCli
Announcing the release of WebpackerCli. Bringing the convenience of Rails’ Webpacker to any web framework… even those in other languages.
Convert html snippet into a png file
https://github.com/igorkasyanchuk/omg_image new gem which allows creating previews for your HTML snippets. Actually, there are many ways how to use it: from nice previews to charts and email attachments. [more inside]
Image Placeholder for your development environment
Some time ago I was working together with Szymon on one of our clients web application. We used copy of products catalog coming from production server on our development machines. What we were lacking were product photos, causing application layout to look poorly and making any CSS job hard. We tried to find a smart solution for that case.
Mastering data structures in Ruby — Singly linked lists
This is the first post of a series I made on how to create essential data structures from scratch. So far the series covers singly linked lists, doubly linked lists, circular linked lists, stacks, queues, hash tables, sets, and binary trees (and there more coming soon!). Each data structure is covered in a brief post that explains in a casual tone the core aspects of each data structure. I hope you enjoy them!
Taking Stimulus.js (front-end framework by Basecamp) for a ride
I am trying Stimulus.js lately in Rails and I think it fits nicely the server-rendered HTML + Turbolinks use case. This is my first look on Stimulus.js.
9 New Features In Ruby 2.6
A new Ruby version is almost here! What new & exciting features does it come with? Find out in this new article: https://www.rubyguides.com/2018/11/ruby-2-6-new-features/
Six Great Reasons to Build Service Architectures in Ruby with Eventide
Eventide makes service development as approachable as Rails made web development in 2006, and seeks to democratize this as-yet esoteric subject that, at the moment, tends to be calcified under a thick layer of popular myths and fads. https://medium.com/eventide-project/six-great-reasons-to-build-service-architectures-in-ruby-with-eventide-2f823bd51402
finite_machine is back!
The finite_machine gem is back with improved APIs, faster execution times (2x more events fired per second), smaller memory footprint (2x fewer object allocations) and thread safety! Good place to start is at the FiniteMachine website.
ScriptCore - a mruby sandboxie for user's dynamic logic (safe eval)
ScriptCore based on Shopify’s ESS, it’s a mruby sandbox to run untrusted codes (usually written by users), ESS powered Shopify Scripts, and ScriptCore wrapping ESS (with some modifications) to easy to integrate with Rails apps, and I took a video to show the dummy app: https://twitter.com/jasl9187/status/1061674632380481536
Type assertion with Ruby 2.6
With RubyVM::AST in 2.6 we can write more beautiful type-assertions: [more inside]
Headless browser testing with capybara-chrome
Test your latest Javascript with the most popular and modern web browser: Chrome. QtWebkit has become increasingly difficult to install, and requires shims for most modern Javascript techniques. Now you can swap out capybara-webkit for capybara-chrome and never worry about re-installing qt again. [more inside]
Migrating from Paperclip to Active Storage
My first challenge as an intern: https://blog.codeminer42.com/migrating-from-paperclip-to-activestorage-b37ef187fb17
Should you learn using VIM?
Any VIM users or haters here?🤔 Share your thoughts in the article’s comments!🗨️ https://driggl.com/blog/a/should-you-start-using-vim [more inside]
ElixirConf 2018: Thoughts on Elixir from a Ruby developer
Elixir has had my attention for awhile now and my interest in the language and community hasn’t wavered. ElixirConf offered me an opportunity to translate that interest into action. As an experienced Rubyist, I am pleased with my development experience, community support, and the capabilities of Ruby. Elixir offers these same benefits and adds features such as concurrency, fault tolerance, and speed to the mix. [more inside]