I recently purchased a new laptop and with that is a set up effort. I installed Firefox, BeyondCompare, and other applications and utilities I collected over the five years since my last new laptop. These were the easy ones. One of the more challenging and educational was setting up Visual Studio so I could continue to work on Flight Track.
The Legacy of Old Tools
I have been using Visual Studio 2008 Standard for a long time. I still had the disk but the box indicated it was an upgrade. I recall at the time that you could download Visual Studio Express for nothing. I had done that but found it would not support add-in development (Flight Track is a MapPoint add-in). If I wanted to install Visual Studio 2008 Standard, I’d have to find Visual Studio Express.
I found it in a Downloads folder on the hard drive I used two laptops ago. What a lucky find I thought! I installed it, upgraded it, and even installed SP1. I transferred all of my projects and was working within a week’s time. As I told the story of my fortune to others, I thought I should upgrade. What are the chances of finding all the things I need? What if the tools are no longer compatible? A quick look for Visual Studio 2010 on eBay told me I would not be upgrading soon. What if I never upgraded?
That question, and possibly the bright colors of autumn, had me asking what I should do with Flight Track. I enjoy working on it and using it. There are a few other users for it. But, the thought of my tools growing old or unusable helped me to realize a change should be considered.
I think the ability to forecast a flight path and landing site in real time is valuable. I understood MapPoint was a barrier to use Flight Track and experimented with Google Maps during the summer. When I investigated methods of hosting an on-line version of Flight Track, the fact that I made calls to the APRS-IS servers would force the use of a dedicated server. Together, these events had me considering alternative development solutions.
The Eclipse Experiment
One of my first considerations was an ability to work across multiple platforms. This led me to Java. I briefly explored both NetBeans and Eclipse. I found Eclipse was a little closer to my experience in IDEs and started experimenting with it.
My primary requirements are:
- Ability to embed a browser for hosting Google maps
- Ability to communicate with radios or a GPS through a serial port
- Ability to communicate with APRS-IS through the internet
I have others but these were the most important. I started earlier today with this list. By mid-afternoon, I had proven all of these were possible.
The Winter Project
I am looking forward to the challenge of porting the Flight Track functionality from .Net to Java. I’ll also take the opportunity to re-factor, re-consider, and re-design. Watch here for updates!