Version 13 (modified by eskil, 16 years ago) |
---|
History of Baltic
Development began in 2007, as a small C++ library implementing the ZHL16 algorithm, and the frontend was just a simple command-line tool. Initially this was all just a mental excersize, trying to get a better understanding of deco theory.
In late 2007 and early 2008, a gtk+/gnome frontend was written, complete with profile graphs, compartment loads and pressure profile. During this period I got a lot of input from some of the local divers, and particularly on the layout of the result by my TDI instructor.
Sometime in May 2008 I bought a MacBook Pro and fell in love with the thing (despite being a linux user since 94, and open-source contributor for many many years). I started porting the app to MacOS, but still with the gtk+/gnome frontend.
However, gtk+/gnome UIs on MacOS don't look good, so in the summer of 08 while living back home in Copenhagen for a while, I installed the developer package and first looked at bit writing a native MacOS app, but my dive buddy urged me to look at the iPhone instead. So I started looking at the iPhone SDK, and around August, the first version was up and running, a very simple UI with a picker for depth & bottom time plus two sliders for oxygen and helium content, and the profile was just dumped in a textview.
At this point I started focusing on implementing the VPM/B algorithm in C++, by reading the fortran implementation by Erik C. Baker. Part of this was done by instrumenting the fortran code to generate C++ unittest code to validate the output of the individual parts of the algorithm. VPM/B was definitely a challenge and much harder to understand than Buhlmann's ZHL16, but from peoples reports of diving using VPM/B planned dives, I felt it was worth it. So now the cli version suddenly output format like Erik Bakers fortran version, which was used in testing - in addition to instrumenting the fortran version to emit C++ boost unittests...
By end of sumer 08, the implementation was mostly done, and around this time I had finally actually bought an iPhone. This meant that the UI got more attention again, ie. the profile moved from text view into tables, settings moved away from the system settings page and into the app using pickers and sliders. Luckily a friend of mine is a Apple UI designer, and he gave a lot of good suggestions on best and most common-place iPhone UI design choices, such as use of tables and sections, editing and input widgets.
I'm not a CCR diver myself (plan to be some day...), but one of my regular buddies has been for a long time and provided valuable input on the CCR aspects and the underlying C++ library was quickly modifed to work for constant ppO2 diving. Likewise I would bring the app around with me on a few dive trips, and have random boat-buddies try it to see what they thought, and what how the UI worked for them.
Finally the last bells and wistles like bookmarks and such were added, and the app went to the AppStore.
eskil
Attachments
-
baltic-gnome.png
(118.3 KB) - added by dwessels
16 years ago.
Screenshot of the early days of the gnome app
-
baltic-gnome-pressure.png
(37.5 KB) - added by dwessels
16 years ago.
Screenshot of the early days of the gnome app pressure graph
-
commandline.png
(107.0 KB) - added by eskil
16 years ago.
Baltic commandline tool looks like the vpmbdeco.f
-
oldiphoneapp.png
(192.7 KB) - added by eskil
16 years ago.
Screenshot of the early days of the iphone app