- Table of Contents
- Features of backstage
- Screenshots of previous version
- Git repo of backstage
Back in 2009 when I went to high school I was a member of antenneSIBI. antenneSIBI is an amateur radio station driven by pupils of a project group. During important events of the school antenneSIBI on air. They have their own VHF frequency at 97.1 MHz and use professional grade studio equipment.
In 2009 we got our hands on a huge amount of music CDs in big boxes and there was a need for organizing all those CDs. Besides »normal« requirements for a music organization software for the (semi-)professional use of antenneSIBI only some information are important to know. Those pieces of information are: ramp time, gender of the artist and the end type so that the host can utilize them. Besides this the information stored per CD are pretty basic: only the title, interpret and the tracks with names are of importance.
Therefore the idea of backstage was born. Firstly I thought that it would be a great idea to implement backstage as a web application. I created a mockup but realized pretty soon that a desktop application would be the best way to go since the application should be really portable. The idea was to store the application and the database on a dedicated USB thumb drive which can be used as needed. But this required also a database system which can be embedded into the application rather than using MySQL with a very static and not portable environment.
Because I got introduced to Java before that project I certainly selected it as the programming language and decided to use Java/SWING as the framework for the GUI since JavaFx didn't exist at this time.
The source code, artwork (application icons) and a previous version are available here at the Git repo of backstage.
backstage provides the following features:
- Supports the mangement of music CDs, inventory items (studio equipment) and music files
- Uses an embedded object database and is therfore highly portable
- Supports the usual stuff: ordering and searching the item list
- Extended support for export: backstage supports exporting (or »print«) the item list to detailed reports, overview lists or stickers with barcodes. The idea is that the stickers are printed and attached to the music CDs. Later a barcode scanner is used to simplify searching for information for a CD picked from the shelf
- Music CD information import: when I designed the application I thought that it might be useful to import data automagically when entering the title. I searched a long time to find a suitable data source and finally settled with »parsing« plain old Amazon product pages which contains all necessary information (title, artist and tracks). But six years after this does not work that nice anymore since Amazon changed styles and HTML markup
- To manage loaning inventory items (like microphones and recorders to reporters) backstage also provides a basic system to capture this
- Supports filtering data to search specific items
Besides the most recent version 0.3 (November 15th, 2010) the previous version of backstage is also available from the Git repo here. This version does not support parsing music data from Amazon. It uses
cdrecord (which needs to be in the system's
PATH variable on Windows PCs) to calculate the CD ID and then queries MusicBrainz for that ID to get the track information (don't know if this works anymore).
This is my project backstage. Please note that this project has been discontinued and is not under active development anymore. It was much fun for me to create it back in the good old days of 2009/10. Besides the use case of antenneSIBI - I think - nobody else might get any »production« grade use out of it. But for somebody interested it might serve well as a quarry for code snippets or ideas.