A Fresh Cup is Mike Gunderloy's software development weblog, covering Ruby on Rails and whatever else I find interesting in the universe of software. I'm a full-time software developer: most of my time in recent years has been spent writing Rails, though I've dabbled in many other things and like most people who have been writing code for decades I can learn new stuff as needed.

As of October 2016, I'm not actively looking for my next job, but I'm still happy to chat about potential opportunities. I'm not able to relocate, so unless you're in the Evansville area, I'd need a completely remote gig. I have lots of experience working remote. Prefer full-time but I wouldn't be averse to an interesting contact gig. Drop me a comment if you've got something or email MikeG1 [at] larkfarm.com.


A Fresh Cup

Notes on Rails and other development


Open Source Report #6

So…I have in fact been sticking to my "do something for open source every day" resolution. What I haven't managed to do is keep up these blog entries about it! Well, time for a reset. Here's a fast list of what I've done the past few weeks, and perhaps I can get back to more regular posting next week.

  • More cleanup work on the RubyGems Guides.
  • Got my Shoehorn gem for Shoeboxed integration building on my continuous integration server.
  • Contributed a tiny bit of code and some troubleshooting to axlsx.
  • Fixed a typo in the authlogic documentation.
  • Kept up with the weekly edge Rails postings (and I'm pursuing another opportunity in connection with this; stay tuned).
  • Decided I was barking up the wrong tree entirely with larkistrano, and killed off the project. Going to rethink this and maybe try again.
  • Documented the :inverse_of option for associations for the Rails Guides.
  • Did an editing pass over the Updating Rails guide.
  • Posted details on using Mercury editor, Carrierwave, and Amazon S3 together.
  • Fixed a path issue in sublime_guard.
  • Forked the feed-normalizer gem to make it a bit more resilient in the face of unparseable HTML.
  • Fixed a parsing issue in the Command Reference in RubyGems Guides.

If you're trying to figure out how to contribute to open source yourself, you could always start with a search on GitHub. Or try OpenHatch.


Double Shot #828

Double Shot was delayed by tornado this morning. A reminder that some things are more important than coding (fortunately, it missed us by a few miles).

  • How to Disable iPad Home Button - Yes, you can run an iPad in Kiosk mode.
  • xVim - Vim key-bindings for things like xCode. I can't fathom it myself, but I know there are people who want this.
  • ImageOptim - Multifaceted image optimizer to get your web images as small as possible.
  • The Mozilla Marketplace is now open for app submissions - Nice to see a vendor-neutral standards-based app store coming. Hope it succeeds.
  • gaia - Mozilla's open source HTML5 UI framework.
  • Boot to Gecko - More from Mozilla, implementing new web standards for mobile platforms.
  • Collusion - Firefox addin to show you who's tracking you on the web.
  • Normalize.css - An HTML5 alternative to traditional reset CSS files. Looks well thought out.

Double Shot #827

The promise of the future is often weighed down by the mistakes of the past.

  • Konacha - Rails-aware javascript testing framework that integrates with the asset pipeline.
  • OKAdmin - A custom theme for the RailsAdmin gem.
  • Mutation Testing With Mutant - I just wish I had any code mature enough to benefit from mutation testing. It's a nifty idea.
  • codeCanvas - "a visual, web based application that allows you to rapidly create layouts using pre-defined blocks of HTML, Javascript and CSS."
  • pow-client - Command-line client for the Pow development web server.
  • OpenRuby.com - New link aggregator for ruby programming in general.
  • TextMate 2 FAQ - TM2 is moving along, with some answers on how it works and what's still to come.
  • Tower.js - Full stack framework putting together Node.js, MongoDB, Redis, CoffeeScript, Stylus, Jasmine, and jQuery.

What's New in Edge Rails #10

Week of February 19-February 25, 2012

The biggest news this week comes on the REST front, with PATCH replacing PUT as the preferred verb for updating existing records. This has provoked some flaming and snarking (in which I have indulged), but on the whole I think it's a reasonable change.

  • ad46884a adds support for the HTTP OPTIONS method to Rails integration tests.
  • 002713c6 adds support for the PATCH HTTP verb as well. According to the commit message "PATCH is the correct HTML verb to map to the #update action. The semantics for PATCH allows for partial updates, whereas PUT requires a complete replacement."
  • As of abf3f67e you can configure whether Rails flushes the log every time your write to it. Turning off log autoflushing can improve performance if you're willing to risk the loss of a few log writes.
  • force_ssl is no longer ignored by default in development. This is a change in behavior; c04a0847 has the details.
  • eecb086a2 gives us the start of a Guide for updating Rails.

Double Shot #826

This week's keyword: survive.

  • The Sun is Setting on Rails-style MVC Frameworks - Oh noes, my skills are about to be obsolete again.
  • smeagol - Sets up a basic open source development environment on a new OS X machine.
  • Chaplin - Sample application architecture using Backbone.js and a bunch of other pieces.
  • q - Unified monitoring for resque, sidekiq, and node workers.
  • SchnitzelPress - A new ruby-based blogging engine.
  • Edge Rails: PATCH is the new primary HTTP method for updates - Well, POST with a parameter that claims it really wanted to be PATCH, anyhow.
  • Restivus - Experiment in exposing a CSV file as a fully-documented REST API.
  • GAS - Google Analytics on Steroids, a wrapper for the Google Analytics API on the client side offering additional tracking.
  • The Markdown Mindset - I'm coming around to this point of view myself, though it's hard to wean clients from Word docs.
  • Prismatic - Google Reader crossed with social sharing, apparently.
  • EpicEditor - Embeddable JavaScript Markdown editor.
  • Behavior Driven Development - Nice set of slides from Liz Keogh that may give you some new insights into your craft.
  • Capybara MiniTest Spec - Adds assert, must, refute, and wont syntaxes to Capybara.
  • FlowStone 2 - Graphical programming environment for robotics with Ruby scripting baked in.
  • Vimbits - Snippets of .vimrc files with voting to determine the best ones.
  • RailsThemes.com - Teaser site for an offering of theming for Rails sites. Taking early access signups.
  • AskGeo - Interactive map, web API, and Java library for converting latitude and longitude into timezone.
  • JSONLint - "The JSON validator."