Mike's Blog

Passing on knowledge about software development and other related technologies.

Speak Up!

My favorite projects are when I get to find solution to small problems for clients and solve them quickly for them. This week 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 some really simple code example of TTS on Rosetta Code that someone had contributed that would work on Windows, Linux, and a Mac.

After updating the example code to work with Ruby 2.3, I did a bit of re-factoring and customizing ended up with a pretty cool little command-line utility that... 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

My Thoughts about the RubyMine IDE

First let me note that I am in no way associated with JetBrains (the developers of RubyMine), just a loyal customer. As a long time developer on many platforms I have always thought Visual Studio was the most mature and well thought out IDE (Integrated development Environment) out "in the wild". Many products have tried to copy it's success across many different platforms but none has impressed me as much as RubyMine has since I started writing Ruby and Rails applications.

What makes RubyMine so special? Well lots of things, but most of all it helps you to be PRODUC... Continue reading

Cut, Copy, and Paste on the Android Platform

It's really easy since the advent of Android 4.0 and later...

First, to cut or copy any text, keep the particular text pressed for a while until you see some options appearing on screen (this is called a long press) that include copy, select all, cut and others. Choose “Copy” or “Cut”, whichever you require to use and head to the text box where you want this copied text to be pasted.

To paste that text you copied earlier, long press the text box until again you see the options showing on screen. You will find a “Paste” option in all the listed options. When you choose... Continue reading

Create an autorun CD/DVD

The CD autorun feature is provided by file "autorun.inf" placed in the CD root directory. This is a simple text file so you can use any editor to create it.

The "autorun.inf" file must start with the following line:


It can include the following commands (all commands are optional):


Specifies the command that is to be autorun when the CD is inserted. It may include a path and any arguments. If you do not use this command the root folder of your CD will open automatically. Note: Windows autorun can only open... Continue reading