This is the most recent, and by far the best, of my efforts to program the memories of my Icom radios. IcomProgrammer II is meant to program an Icom radio's memories, not be a control panel, and it doesn't have a desktop user interface - for a true virtual radio that does, see JRX. JRX (2012) - My most recent general-purpose Icom virtual radio, written in Java, much more sophisticated than its predecessors, but it controls the radio, it doesn't program its memories (reasons below).Icom Programmer (2010, Ruby) - This program's predecessor, it was a Ruby project meant to program an Icom radio's memories, not be a radio controller in the usual sense.IcomControl (2000) - A radio controller that only controlled the Icom IC-PCR1000 headless radio.RadioComm (1999) - A desktop application that controlled an Icom radio as well as programming its memories.EasyTuner (1998) - An Excel spreadsheet with an associated communications library that allowed users to make spreadsheet entries for each desired memory.Before I introduce this project I want to list all the Icom programs I've written over the years: