Gas Mixer activity
Posted 10-11-2009 at 05:22 PM by divestoclimb
I've been putting a lot of time into Gas Mixer lately! I released v 2.0 and followed it up today with 2.5.
2.0 was a nearly complete rewrite of the interface. I've removed the OpenIntents sliders and replaced them with Android SeekBars, color-coded for oxygen and helium. I also made lots of UI changes to avoid scrolling at all costs. I came to realize on a mobile platform it's just as inconvenient to have to navigate to a new screen as it is to scroll down on a long one. Support for MOD's, EAD's, and END's was also added.
2.5 was essentially a redesign of the backend calculations to support Van der Waals mixing. All of the diving physics has been encapsulated into a separate project, a Java library I call ScubaLib.
In order to make Van der Waals computations possible, I had to let the user enter cylinder sizes. I decided to go the modular route and take advantage of the Android platform--I made a new app called ScubaTanks that lets you manage favorite cylinder sizes. That app makes a content provider available to look up cylinders and can handle intents to look up sizes. A savvy programmer will notice I named the app "divestoclimb.scuba.equipment"; this is a hint that I plan to expand this app in the future to be a complete equipment inventory management app that sets alerts when tanks, regulators, etc. need inspection or service.
I'm also working on a rebreather checklist application. The project got derailed when I shifted attention back to Gas Mixer, but I'll try to get it finished next.
I'll be doing more posts soon on some of the design choices I've made in my apps in hopes that they teach others.
2.0 was a nearly complete rewrite of the interface. I've removed the OpenIntents sliders and replaced them with Android SeekBars, color-coded for oxygen and helium. I also made lots of UI changes to avoid scrolling at all costs. I came to realize on a mobile platform it's just as inconvenient to have to navigate to a new screen as it is to scroll down on a long one. Support for MOD's, EAD's, and END's was also added.
2.5 was essentially a redesign of the backend calculations to support Van der Waals mixing. All of the diving physics has been encapsulated into a separate project, a Java library I call ScubaLib.
In order to make Van der Waals computations possible, I had to let the user enter cylinder sizes. I decided to go the modular route and take advantage of the Android platform--I made a new app called ScubaTanks that lets you manage favorite cylinder sizes. That app makes a content provider available to look up cylinders and can handle intents to look up sizes. A savvy programmer will notice I named the app "divestoclimb.scuba.equipment"; this is a hint that I plan to expand this app in the future to be a complete equipment inventory management app that sets alerts when tanks, regulators, etc. need inspection or service.
I'm also working on a rebreather checklist application. The project got derailed when I shifted attention back to Gas Mixer, but I'll try to get it finished next.
I'll be doing more posts soon on some of the design choices I've made in my apps in hopes that they teach others.
Total Comments 0







