Mike's Blog

Passing on knowledge about software development and other related technologies.

Ruby Posts

Getting Started With Ruby Arrays For Beginners

What exactly is an Array?

Arrays are objects (remember everything is an object in Ruby) that can store multiple values such as numbers or strings. Simplified, an array is a collection or list of things. Arrays are generally used to hold a collection of data that needs to be displayed or manipulated by your program. Their data can come from any source, user input, databases, or computed values. In Ruby (like many other languages), arrays are ordered, integer-indexed collections of any type object. This means that each element in an array is associated with and referred to by an ... Continue reading

What is Foreman and when should I use it?

Many times when writing complex ruby applications or using frameworks (like Rails, Sinatra, or others) you end up having several processes that have to be running during development to allow it to run such as web services, message queues, or some other type of process. Foreman allows you to manage these different processes under one management gem. Foreman uses a file called Procfile.

Getting Started

First, let's setup the Procfile. A Procfile is a list that contains a name to identify the process and the command used by the system to run it. Foreman ... Continue reading

Speak Up!

My favorite projects are when I get to find a solution to small problems for clients and solve them quickly for them. I had a client that needed some Text To Speech (TTS) capabilities on a small Linux system in their shipping department. Easy enough right? After a little research, I found a really simple open-source code example of TTS that someone had posted that would work on Windows, Linux, and a Mac and written in Ruby.

While this post is old, I have updated the example code to work with Ruby 2.7. I did a bit of refactoring and customizing ended up with a pretty cool little ... Continue reading

Ruby and the Traveling Salesman Problem (Help me Neural Net!)

On a recent project we had the task of solving a physical routing problem in a large warehouse, also know as The Traveling Salesman Problem (TSP). The TSP in a nutshell is this: Given a list of physical locations (cities,addresses, etc) and the distances between each pair of them, what is the shortest possible route that visits each location exactly once and returns to the starting location?

Sounds simple for our complex brains to plot this out, but not so simple for a computer program. Enter Artificial Intelligence, specifically Genetics Algorithms in Ruby using the AI4R gem wri... Continue reading