Subsurface 4.7 / 5.0

Dirk Hohndel dirk at hohndel.org
Fri Jan 20 09:33:49 PST 2017


On Fri, Jan 20, 2017 at 05:06:40PM +0100, Tomaz Canabrava wrote:
> 
> One option is to try to make next Subsurface the Subsurface 5:
> 
> We have an *Awesome* dive log, and we can continue to develop that, or we
> can do a step back and try to change the *bare minimum* on the core to
> facilitate the integration on the Qml engine without code duplication, my
> take on that would be to port the C-Structs to C++ Classes that inherit
> from QObject (because we can fed those to QML), not messing with the
> algorithms nor anything else that we don't need to touch - those should
> still be in C, algougth compiled with a c++ compiler to have C++ linkage
> and we can call their code  from QML, while also using those parts on the
> Desktop version reducing the amount of duplicated code.

So let's see.
- we have a by and large usable desktop app, used by 10000+ people where
  several developers feel they can make changes
- we have a piece of shit mobile app, used by a few hundred people, where
  not a single developer feels they know what they are doing.
  
I have spent something like 20 hours over the past few nights, trying to
get that pile of garbage to work with Kirigami 2 (since Kirigami 1 is
already abandoned). Which means switching to Controls.2. Which means
nothing works. I finally have this far enough that at least it opens on
Android, but it's completely broken.

So this option can be paraphrased as... convert the thing that works, that
about a dozen developers feel somewhat comfortable to work on, and that
has about 100x the users of the other thing... to the other thing.
And compile our C code with C++, because the compile time isn't slow
enough already.

Uhh, that sounds atractive. Tell me more.

> Other option is to try to make next Subsurface the Subsurface 4.7:
> 
> Continue duplicating code for the Mobile version (that has a small userbase
> but will probabbly gain an increase of usage over the years) and cleaning /
> improving the Desktop version, changing things on the core as little as we
> need.

Or, how about option 3:

Forget about Subsurface-mobile. Wait a year for Kirigmi 7 that uses QML3
and and Qt.Slow.Conniptions.4 and then revisit if we want to waste another
year of our time on something that more or less no one is interested in
using.

Instead, work on fixing the things in Subsurface that are broken,
incomplete, or missing. Divesite handling. Statistics. Etc. And add things
that matter to people, like support for Bluetooth LE which we will need
for a number of new dive computers, starting with the Shearwater Perdix AI
that I should receive today and which you can only talk to via BTLE.

/D


More information about the subsurface mailing list