Who takes out your trash? Rain Leander, Technical Program Manager for OpenStack at Red Hat, and Sanne Kalkman, software engineer, on Red Hat Linux and Ruby, and garbage collection respectively
First explorations of GitHub's Actions We set out to automate the workflow of releasing a Ruby gem, based off of the GitHub Action for npm, upon getting access to this brand new feature
Hello World! Meet: Passenger 6 / Generic Language Support Per overwhelming request from language communities Passenger didn’t previously cater to, we decided to introduce generic language support in Passenger 6
Your language' built-in server was never meant for production use The built-in or de facto web server that ships with your language hasn't been hardened against a myriad kinds of attacks, and it's irresponsible to use it outside development
All things Rack, in Amsterdam On serving more than 10k connections from a single Ruby process, and smuggling TCP traffic through an HTTP connection, at the Amsterdam Ruby meetup
How lag isn't always a bad thing Redesigning our Docs using React, and then rewriting it in Ruby (Middleman), rendered some interesting challenges and insights
Passenger 5.3.5: fixing Ubuntu 18.04 regression Version 5.3.5 of the Passenger app server fixes an issue with Ubuntu 18.04 package installation, and improves usability of crash reports.
Fiddling with files & bots WeTransfer's Julik Tarkhanov and GitHub Developer Advocate Don Goodman Wilson on file formatting and automating issue triaging at the Amsterdam Ruby meetup.
You can’t learn in a vacuum: lessons from 6 open source software maintainers Lessons learned from the maintainers of 6 major Ruby projects on maintaining and contributing to open source software.
Running Chrome Headless, Selenium and Capybara inside GitLab CI and Docker Selenium + Chrome Headless fail with mysterious errors when run in GitLab CI and Docker. Here's why, and also how we fixed it.
How to win friends and open-source your software Traveling Ruby, one of Phusion's open source projects, gets a massive overhaul. Find out how to make your work pull request-ready.
How Dishwashers Ruin Ruby Apps Procrastination can get you into a lot of trouble, work just builds up until you have to spend all your time just catching up. It’s the same with web apps, if you just defer work until after sending the response you’ll s
Why Ruby app servers break on macOS High Sierra and what can be done about it People who have upgraded to macOS High Sierra and who are using a preforking app server such as Puma or Unicorn (with the right settings), may have noticed this error: objc[81924]: +[__NSPlaceholderDictionary initialize]
ActionCable under stress: Finding a DoS vulnerability in Rails 5 WebSockets Apps In this article we will show you how Rails 5.0.0 ActionCable applications on Puma, the new default Rails app server, might be exposed to denial of service by slow clients. We will be using the OS X network shaping tools
Resolving Web Application Resource Bottlenecks with Concurrency This article is a general introduction into the bottlenecks of web applications and how application servers can deal with them to improve request throughput and response times. We will start off by introducing the role o
Efficiently and Conveniently Building Ruby and Node.js Application Docker Containers for Production In this article we will show how we build Docker application containers in two steps and explain why that is a useful thing to do. We then walk you through writing a build script that not only builds an application conta
Using Rails 5 ActionCable and RethinkDB to build a Reactive WebSocket App In this article we will demonstrate how to build a WebSockets driven application using Rails 5’s ActionCable. By using RethinkDB's active changefeeds feature we can eliminate the need for a separate event broadcasting se