[amscotti@128bit.io ~/posts]# grep -l "ruby" *.md | xargs -n1 head _
Date: January 10, 2017

Technical guide to optimizing Docker build time for BitBucket Pipelines by switching from Ruby base image to Alpine Linux. Covers Alpine's small size with package management, installing Ruby and NodeJS, Java installation challenges on Alpine, pre-installing Ruby gems with bundle install, and creating Dockerfile and pushing to Docker Hub.

Date: January 01, 2017

An evaluation of BitBucket Pipelines, a continuous integration service reminiscent of Codeship. Discusses trying to replace Codeship with BitBucket Pipelines for publishing this blog, showing how to configure pipeline tasks and examining feature similarities, noting potential time savings from removing Docker image downloads in build process.

Date: August 31, 2014

Explores Remote Procedure Call as pattern for microservices architecture, comparing to message queues. Demonstrates JSON-RPC for message formatting with Redis pub/sub system for message distribution, showing how client waits for RPC return results while message queues typically trigger jobs without reply requirements.

Date: July 29, 2012

An introduction to Amazon Simple Workflow Service for coordinating distributed application components. Explains decider and worker roles, task-based workflow execution, reliability features like retries and timeouts, and provides Ruby code examples for registering workflow types and processing tasks.

Date: June 16, 2012

An introduction to Mozilla's BrowserID authentication service which lets users sign in with email credentials managed by Mozilla, avoiding storing user passwords. Includes Sinatra example with HAML templates and JavaScript integration using navigator.id.get(), with full code available on GitHub.

Date: June 13, 2012

Demonstrates combining Amazon SQS queues with SES email service for background email processing. Shows architecture where web applications queue email jobs, worker processes consume from SQS and send via SES, with code examples in Node.js and Ruby handling queue messages and email sending.

Date: June 02, 2012

A personal status update mentioning working on Heroku application, continued interest in Node.js projects, and ongoing Ruby work including MongoDB database activities. Notes that posts are coming after period of focusing on learning new technologies for job transition.

Date: April 16, 2012

An example of adding WebSocket support to Sinatra applications using em-websocket gem. Shows how to start WebSocket server alongside Sinatra, handle connections and messages for real-time bidirectional communication, enabling features like live chat or real-time updates in Sinatra apps.

Date: March 03, 2012

An introduction to MongoMapper as an Object-Document-Mapper for MongoDB. Shows how to create model classes and use them within Sinatra applications, providing Active Record-like familiarity for database operations without the complexity of full Rails framework for micro applications.

Date: February 08, 2012

Exploring MongoDB with Ruby using mongo driver for database operations. Demonstrates basic CRUD operations with MongoDB shell, connecting with Ruby, performing queries and updates, and noting similarities and differences to SQL databases in document-oriented storage approach.

Date: December 19, 2011

Review of Heroku as Platform as a Service solution for developers who want to focus on code rather than server management. Offers free web node for testing, easy scaling with commands, extensive add-ons for databases and monitoring, clean documentation, and Git workflow deployment. Personal site amscotti.com currently hosted successfully on Heroku.

Date: November 25, 2011

Sinatra example using linkedin gem for OAuth authentication and LinkedIn API access. Shows helper methods for login checking, profile retrieval, and connections listing with access tokens stored in sessions, adapted from Rails example for Sinatra's micro-framework simplicity.

Date: November 21, 2011

A Sinatra authentication example using sessions, BCrypt for password hashing with salts, and HAML templates. Demonstrates signup/login flow with in-memory user storage for prototyping, showcasing Sinatra's simplicity for building micro web apps suitable for hosting on platforms like Heroku.

Date: November 10, 2011

Ruby example using Amazon Web Services SDK to publish messages to Simple Notification Service topics. Demonstrates getting SNS interface, finding topic by ARN, and publishing messages which can be delivered as SMS or emails, perfect for form-based notifications in Ruby applications.

Date: September 05, 2011

Solving Project Euler problem 001 in multiple programming languages to maintain skills. The problem asks for sum of all multiples of 3 or 5 below 1000. Includes solutions in JavaScript (both original and ES6), Ruby, Groovy, and Python, with plans to add Clojure solutions for cross-language functional programming practice.

Date: April 07, 2011

Similar installation process to Groovy/Grails, guiding through setting up JRuby on Mac OS X. Covers downloading tar.gz release, moving to /usr/share, creating symbolic link for easy version management, updating .profile with JRUBY_HOME environment variable and PATH, and noting that JRuby's gem command overrides standard Ruby's gem requiring full paths.

Date: March 03, 2011

A Ruby example demonstrating how to pull friend data from Twitter API and use Geokit gem to geocode their profile locations. Code retrieves friends list, checks for location data, queries Yahoo's Geocoding API for coordinates, noting API rate limits and that profile locations may not reflect actual posting locations.

Date: February 17, 2011

Code examples for generating MD5 hashes in three programming languages. Shows both quick one-line hashing and the update method for hashing large data in chunks. Notes about using SHA-1 with salt instead of MD5 for password storage to prevent rainbow table attacks.

Date: October 02, 2010

A Ruby example demonstrating how to interact with Lyris ListManager's SOAP API using HTTP POST instead of built-in SOAP libraries. Shows how to manually construct the SOAP envelope XML, set proper headers including authentication, and parse the response for adding members to mailing lists.

Date: May 09, 2010

A Ruby script demonstrating how to pull character data from the World of Warcraft Armory website. The code fetches XML from the armory, parses guild information, and extracts level 80 characters with their names, levels, and classes into a sorted list.