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.
8 Incredible Ruby on Rails Gems to Try
From authorization to chart creation, here are eight Gems that are tried, tested, and officially super useful.
Using Bootstrap in a Rails 5 App(Including using a Bootstrap theme)
I have been adding Bootstrap to pretty much every Rails app I create these days and always seem to need to go back through my code to see the gems, layouts, and partials I use to build the App. I decided to capture that knowledge in a post here: [more inside]
A Top Shelf Web Stack—Rails 5 API + ActiveAdmin + Create React App
Blending a rock-solid API and CMS with the absolute best in front-end tooling, built as a single project and hosted seamlessly on Heroku. https://medium.com/superhighfives/a-top-shelf-web-stack-rails-5-api-activeadmin-create-react-app-de5481b7ec0b#.t6q2bjy2z
Shared Libraries: How Ruby and C Work Together
If you take a look under the hood, you might be surprised at how much Ruby depends on C. MRI is written in C. Gems use C for performance. And much of Ruby’s standard library consists of Ruby wrappers for C libraries. In this article we’ll discover how this is possible by building our own small C library and using it in Ruby. http://www.rubyletter.com/blog/2017/03/03/using-shared-libraries-in-ruby.html
How to Make Your Classes More Powerful by Implementing Equality
Did you know that == is a method & not just syntax? You can use this fact to make your classes more powerful: https://www.rubyguides.com/2017/03/ruby-equality/
Rearmed-JS - Write your Javascript in a natural way like you write your Ruby code!
When your working with Javascript, do you ever get choked trying to do something that would have been a dead simple iteration or string method in Ruby but in JS it ends up being the most disgusting code ever. Well I just released my plugin Rearmed-JS that solves a large part of this problem. This library is a collection of helpful methods and monkey patches for Arrays, Objects, Numbers, and Strings that will make your Javascript natural feeling. Works in the browser and in NodeJS. https://github.com/westonganger/rearmed-js
Towards Minimal, Idiomatic, and Performant Ruby Code
Debunking some popular Ruby idioms [more inside]
Taming Complex Business Logic in Ruby
When faced with real life complexity there rarely is an easy way out or a silver bullet solution. Here I will describe the model I’ve come up with during years of trial and error. The solution presented here is as far as I know not a mainstream one and it could be considered somewhat controversial. http://kresimirbojcic.com/2017/01/26/taming-of-complex-business-logic.html
Unicode Normalization in Ruby
If you want Ruby’s string methods to play nicely with Unicode, it’s a good idea to normalize them. This article is a brief introduction to Unicode normalization for Rubyists. - http://blog.honeybadger.io/ruby_unicode_normalization/
Automatic PR reviews with Pronto and RuboCop
Learn how to setup an automatic code review system with the help of Pronto and RuboCop for your GitHub PRs. https://christoph.luppri.ch/articles/2017/03/05/how-to-automatically-review-your-prs-for-style-violations-with-pronto-and-rubocop/
[Screencast] Nested Forms from Scratch
Learn how to handle multiple models in a single form with accepts_nested_attributes_for and learn how to add and remove nested records through JavaScript. https://www.driftingruby.com/episodes/nested-forms-from-scratch
thoughtbot playbook in Chinese
The well known thoughtbot playbook from our awesome Ruby community has been translated into Chinese by beansmile, another team in China also loves Ruby and Rails. The book received around 1000 uv in the first day, so I have to say thoughtbot, you are even popular now in China :D [more inside]
What's New in the Honeybadger Gem v3
The latest version of the honeybadger Ruby gem includes a lot of improvements and new features. Check it out! - http://blog.honeybadger.io/what-s-new-in-the-honeybadger-gem-3-0/
HashID Obfuscated URLS in Rails
When I am building a Rails app that I expect to be public facing in some sort of capacity, I don’t want to be displaying auto-incrementing, integer based IDs in my URLs. Not only does it visually look better, in my opinion. It is a security enhancement by removing the predictability of record discovery via the URL. [more inside]
Rearmed-rb 1.3.0 Released!
I have just released v1.3.0 of my gem Rearmed-rb. Rearmed-rb is a collection of helpful methods and monkey patches for Objects, Strings, Enumerables, Arrays, Hash, Dates . With this new release I have extracted the Rails functionality to its own gem Rearmed Rails since the Rails portion was getting quite extensive. The Rearmed plugins are all about easier and more natural code, I encourage you to check these plugins out.
Shielding from Amazon S3 outages in Rails
How this single controller in our Rails app shielded us from Tuesday’s Amazon S3 outage https://developers.supportbee.com/blog/shielding-from-s3-outages-in-rails/
Which Rail profilers are alive, half-alive, or dead in 2017?
A number of in-browser Rails profilers have come, gone, or continue to exist but in a zombie-like, half-alive state. Here’s a 2017 summary of the Rails profiler ecosystem: what works, what doesn’t, and each profiler’s niche.
space_elevator - The ActionCable Client for Ruby
space_elevator is a client for integrating a ruby application with a remote ActionCable-based backend provided by Rails 5 or compatible framework. It allows for subscription and publication to multiple channels simultaneously, and eavesdropping on wire-level messages. Harness the power of WebSockets to receive push notifications in your own Ruby applications!
Please don’t hate OpenStruct
If you know how OpenStruct can kill performance you must see how ActiveModel pin OpenStruct down. http://lunarem.com/blog/please-dont-hate-open-struct.html
What is Proper Continuous Integration?
It’s time to establish a common standard for what’s continuous.
Is Administrate a dead project?
There has been some chatter about Administrate being so-called “abandonware”. Happily this is not the case. http://www.carlosramireziii.com/administrate-is-not-dead.html
Hanami v1.0.0.beta2
Minor bug fixes - Final release by the end of March. http://hanamirb.org/blog/2017/03/02/announcing-hanami-100beta2.html