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.
Do you always remember how to properly use `Array#sort`?
If you don’t look at this gem i created: https://github.com/Masa331/it_sorts . It’s all there AND if you don’t want to remember you can use the gem for more comprehensible sorting setups.
The future of rails-assets.org is in doubt
It doesn’t seem widely publicized, but the creators of rails-assets.org apparently do not plan to maintain the site past the end of 2016. Maybe a generous company will step in to fund the hosting? Or are there better alternatives? Concerned developers are using this GitHub thread to discuss the future of the project. (Keep it civil and refrain from :+1: spam, please.)
Skinny controllers through refactoring
In this article I look at extracting complicated query logic and params parsing out of controllers and into its own class. This gives us more testable code along with skinnier controllers! We’ll cover how to do this and then how to test our extracted code.
Parsing JSON requests with deserializers
Once upon a time, you have a Rails server. This server does all kinds of wonderful things, surely. One of those things is it takes json, parses it and stores it somewhere. [more inside]
Rails APIs that follow the json:api spec
In this article I explore following the json:api spec in Rails APIs. This goes beyond just serialization, which although important is only half the battle. What about creating/updating resources, sorting, pagination, errors, etc… ?
Conditional validations with ActiveRecord
One of the processes that Ruby on Rails makes very easy is validating models conditionally. The perfect example I have encountered is validating parts of a model during updates, e.g. updating a user’s password…
11 Ruby Tricks You Haven't Seen Before
Inspired by Daniel’s post ‘101 factoids’. I wrote 11 new tricks / factoids. http://www.blackbytes.info/2016/01/ruby-tricks/
Duck Typing with Types of Ducks
One of the most insidious destroyers of code is the nil. Raise your hand if you’ve had to sift through piles of functions and files to track down an unexpected nil. Me too. [more inside]
The Beginner's Guide to Crafting Ruby Gems
In this blog post I recall the time when I first started creating my own ruby gems and I show the workflow and what to be careful about as a beginner [more inside]
Understanding Reactive Programming with RxRuby
Reactive Programming is a relatively new and interesting programming paradigm that has picked up quite a bit of popularity lately. Out of curiosity, I did a bit of reasearch over the weekend. In this blog post I will summarize what I learned and try to explain what RP to any novice out there.
Kafka for Rubyists - Part 2
Part 2 of my two part intro to Apache Kafka and how to use it in your next Ruby project: http://www.markphelps.me/2016/01/17/kafka-for-rubyists-2.html [more inside]
Pragmater 1.0.0 -- shebang/pragma formatter
With the release of Ruby 2.3.0, support for frozen strings are now supported via a pragma comment. This gem provides an easy way to add pragma comments to single or multiple Ruby source files in order to benefit from improved memory and concurrency performance. While a useful tool for dealing with frozen strings, it can be used for any type of pragma comment. See README for details. Enjoy!
Wye Tech News #7
A new issue of our weekly compilation of interesting news and articles about Ruby, Rails, JavaScript and web development related stuff that we found during the week.
any_login gem allowing you to login as any user
Did you had a chance to check this gem https://github.com/igorkasyanchuk/any_login ? Very useful in development.
File Uploads: Asynchronous World
I wrote about the importance of making file uploads asynchronous, and compared existing libraries (CarrierWave, Paperclip, Dragonfly, Refile and Shrine) for their support of backgrounding and direct uploads.
Using Omniauth to Authenticate your Users
Omniauth is one such great gem which allows you to easily integrate Social authentication providers, including Facebook, Google, Twitter and GitHub for your Ruby on Rails web application. Check out the steps below to learn on how to integrate these authentication providers into your app. Read more at RailsCarma’s Blog
Looking for Ruby Book Reviewers
I have completed Essential Ruby Kindle book. I am looking for technical reviewers. I will mention your name in the book. If you are interested, please contact me at bparanj@gmail.com or https://www.rubyplus.com/contact
Useful delegation patterns for Rails
An exploration into the delegation pattern and how it can be useful in various aspects of a Rails application: https://lorefnon.me/2016/01/16/useful-delegation-patterns-for-rails.html
Testing Rails Routing Constraints
Recently I’ve rolled my own user authentication mechanism with omniauth and omniauth-identity. In this post, I’m exploring Rails routing constraints and how to test them: https://medium.com/@clupprich/testing-rails-routing-constraints-be1641217914
Raise and Rescue
Learn how Raise and Rescue works in Ruby. Tips included: how error handling shows clear intent, overriding raise, and defining your own error handler.
I Love Ruby updated
Hello People, I have updated my Ruby book I Love Ruby. Please get it here https://cloud.openmailbox.org/index.php/s/u4sX065QRgjbJL2/download [more inside]
Digging in to Enumerable
In this blog post, I peer under the hood of Enumerable for a deeper understanding. [more inside]
Pastel gets x6 faster! with new CLI
pastel core methods for decorating have been rewritten to provide 6x performance boost, and 3x boost when used with DSL. New features include ability to undecorate a colored string and lookup defined color names. Finally, pastel gets new shiny executable pastel-cli.