← Back to team overview

ubuntu-phone team mailing list archive

Re: U1dB Documentation and Advice

 

On 01/04/2014 03:54 PM, Nekhelesh Ramananthan wrote:
> Hi David,
> 
> 
> On Sat, Jan 4, 2014 at 9:34 PM, David Marceau <uticdmarceau2007@xxxxxxxx>wrote:
> 
>> I do believe you are highly mistaken.
>>
> 
> I am a bit confused as to which statement of mine you were referring to
> here. My best guess would be my statement about there being only two
> storage options which are Qt LocalStorage and U1db-Qt on the ubuntu phone
> which I am inclined to agree.

Yes, I was referring to the lack of persistent storage apis as you
perceived to being only two available from within the qt infrastructure.
I was stating earlier there is a whole universe of persistent storage
apis available from the non-qt ubuntu repos: boost serialization,
mongodb and all the sql/odbc db's you feel comfortable with.

> 
> It is true QT For Android can be painful when leaving the comfortable
>> confines of non-gui stuff because more probably than not you have to
>> resort to JNI work. i.e. Multimedia/3D/OpenCL/OpenGL, databases.  That
>> certainly would affirm your limited api difficulties with persistence if
>> you don't want to delve into Android JNI stuff and just stick to qt api
>> stuff.
>>
>> However you should feel more comfortable with the QT for Ubuntu
>> Touch(AKA ubuntu-sdk) and the Desktop Ubuntu non-gui apis because they
>> are one and the same non-qt non-gui apis. i.e.
>> multimedia/3D/OpenCL/OpenGL.  Canonical have already
>> re-targetted/compiled many of main desktop libs for armhf.  THAT IN
>> ITSELF WILL BE THE STRONGEST SELLING POINT FOR UBUNTU TOUCH.  Ubuntu
>> Touch saves the C++ developer time because the only parts you need to
>> relearn are the newer Touch APIs and non-desktop mobile apis(SMS, PHONE).
>>
> 
> I am having a hard time trying to relate how this is concerned with the
> issue at hand (the purpose of this email thread) which is*U1dB-qt
> documentation*.
Just because the U1db-qt api based app won an ubuntu touch application
competition doesn't make it the solution for you to use.  I don't know
U1db-qt, but from what you have expressed here is it fails the
documentation/ease of use test so don't use it.  The only reference
point you have for U1db-qt is the source code if you can console
yourself to use just that.  It's doable if you look at the unit test
examples IF THEY EXIST.

Choosing apis should be based on levels of documentation/ease of use,
performance, reliability, quality in features provided, breadth of
features provided.  My intention was simply to redirect you to other
storage solutions that have vast amounts of documentation and that are
reasonably popular.  qt/boost serialization is well-documented.  mongodb
is well-documented. sql-based odbc-based db's are well-documented.  Try
mongodb rather than sql-based stuff.

>> There is also work to bridge qt with golang and you could possibly make
>> an app on ubuntu touch with golang as a result.  Or if you don't want to
>> use golang for the gui you can run golang non-gui stuff as a system
>> command which you pass input to it through files.  If you like perl,
>> python, ruby, lua whatever you want you can do the same from ubuntu
>> touch because the armhf repositories have all these are your disposal
>> from what I have seen.  If you feel more comfortable doing database
>> access from a different language than c++ you could if you want to.
>>
>>
> At the moment, as far as the phone is concerned, Qt, QML and HTML5 apps are
> the way to go. I don't see GTK coming into it. It could in the future but
> at the moment that's not the target.
I was just making a point about how versatile Ubuntu truly is.  It can
spin on a dime if it needs to.  Qt is not the only ace Ubuntu has up its
sleeve with respect to gui building options.  Qt just so happens to be
the flavor of the month.  Next month could be Mir, Wayland, X, KDE,
GNOME etc...

>> Make no bones about it, qt as a gui-creation tool for Ubuntu
>> Touch/Standard Ubuntu/Android is definitely a good choice, but it will
>> never be the only one and thank the community for that. HINT: I have
>> seen gtk plumbing with the armhf binaries installed in ubuntu touch and
>> there also happens to be a golang-gtk binding out there also.  I still
>> haven't warmed up to QML/Declarative model, but I don't have to.  There
>> are ways to continue on with the pre-QML era qt controls to make ui's
>> through the designer or dynamically at run-time.  You can also choose to
>> mix and match QML with pre-QML c++ stuff.
>>
>> Cheers,
>> David Marceau
>>
> 
> 
> And finally, I want to keep this thread focused on the issue at hand which
> is *lack of documentation for u1db-qt*. I am not here to discuss about the
> storage options available or what language or toolkit to use for GUI
> creations. Let's not deviate off topic here please.
You presented the problem that you don't know how to use u1db-qt.
I presented the solution to use another product/api.  The proposed
solution of using another storage api is not a deviation from the topic.
 It was a sincere suggestion for you to be more productive and to save
your time.  I apologize if you feel I have wasted your time.

Since you have show an initiative about something lacking documentation,
you are most probably best positioned to be the one to provide it
because you're the one with the most motivation/passion to look at the
u1db-qt sources and to provide examples with your experience with it.

Cheers and I'll be on my way,
David Marceau



Follow ups

References