avatar

Sprints, Spikes, and Warm Downs

Sprints My first “real” day job as a software developer was for a large and well-established company. When I started the software teams followed the Scrum form of Agile. I strongly dislike some of the terminology used in Scrum, the two main offenders are “velocity” and “sprint”. Poor naming aside, the general approach to software work in Scrum, and many other capital-A Agile methodologies, is to treat the work as a never-ending stream of tickets to be completed over time.

GitArborist Four Month Update

GitArborist.com has now been live for five months. For previous info you can jump to the previous updates at four three, two, and one months. July 2020 Stats First, the stats: Total Installations: 9 Scheduled PRs Merged: 21 PRs Merged: 46 (inc. scheduled) Repositories Watched: 1515 What's Changed Paid plans! The EarlyBird plan has been retired (any existing EarlyBird installations will continue, however). This also required removing GitArborist from the GitHub marketplace, as their TOS requires that you must list paid plans on the marketplace if they are also listed elsewhere.

Benchmarking Ruby on Rails End-to-End Page Performance

There's a lot of information available about ways to improve performance in Ruby on Rails applications. I've even written about it myself. But one thing that's often skipped over is exactly how you are supposed to benchmark your performance improvements, particularly if you want to do a full end-to-end speed comparison. Benchmarking vs Profiling A quick refresher; to profile code (in performance terms) is to figure out which parts of the code are causing a slowdown.

Forwarding all arguments with Ruby 2.7

Ruby 2.7+ deprecates the ability to automatically translate between a hash and keyword arguments for the last argument in a method invocation. This will be removed in Ruby 3.0 due to some ambiguity in various cases. For a more in-depth rundown, you can check the writeup on ruby-lang.org. This post is more about a simple way to solve deprecation warnings of existing code if you are upgrading to Ruby 2.7.

Forwarding all arguments with Ruby 2.7

Ruby 2.7+ deprecates the ability to automatically translate between a hash and keyword arguments for the last argument in a method invocation. This will be removed in Ruby 3.0 due to some ambiguity in various cases. For a more in-depth rundown, you can check the writeup on ruby-lang.org. This post is more about a simple way to solve deprecation warnings of existing code if you are upgrading to Ruby 2.7.

Who Owns This Code

A previous project I worked on was to create an abstraction around various command-line invocations, the context here was automated testing on different platforms. The idea is pretty simple, rather than having to keep track of command-line flags and options, you just call this CLI and get a nice JSON formatted response. I knocked out a handful of commands, as did several other developers, and that's where things got interesting. Despite being both a young project and a simple one, discrepancies had already crept in.