Thanks Gregg for your thoughtful replies. Some replies inline.

On Sun, Dec 9, 2018 at 10:14 PM Gregg Reynolds <d...@mobileink.com> wrote:

> Hi Khaled,
>
> Nice note, thanks. Not to start an endless discussion, but:
>
>
> On Sun, Dec 9, 2018, 5:43 AM Khaled Elsayed <khaledi...@gmail.com wrote:
> ...
>
>> 1) The specs are complex. Does a simple IoT device need to support all of
>> this?
>>
>
> Good question, one I think many device devs will ask. I'll take a stab: it
> depends. :) Do you want the benefits of OCF? Then the complexity is
> unavoidable. Imho OCF has done an excellent job of modeling this very
> complex problem space. It's as complex as it needs to be, but my take on it
> is that OCF is not adding a lot of incidental complexity. It's the problem
> that is complex.
>
> Otoh, I'd suggest a slightly different question: if I want my device to
> play nice in an OCF environment, does it have to include all this complex
> stuff? I think the answer is no. My impression is that the OCF folks have
> given this a lot of thought. E.g. the bridging specs.
>

KE>> I agree the problem is complex. But sometimes it is better to start
small and grow the system/specs after the adoption is there.
I also agree that bridging can help but it is not very well presented
within IoTivity code.

>
>
> 2) Documentation is lacking. Sometimes (actually often) code is not in
>> synch with web documentation. Only very simple issues/examples are well
>> documented. No complete developers guide available.  API's are documented
>> yes, but this is not enough.
>>
>
> What are the three most important doc issues for you? Me, I think I'd go
> with 1) security stuff - creds, acls, provisioning how to use certificates,
> roles, etc. 2) presence (advertisement discovery?) 3) Scenes.
>

KE>> I will add the details about all these (endless) default resources
created within a device and what they serve to do and the related
introspection (which sounds like a scary term :)) and then some simple
examples with good documentation on support of legacy or non-OCF devices.

>
> 3) Complex source code tree and strong but not very familiar build tool
>> (scons). Then code reviews on gerrit then another (JIRA) for tickets. Then
>> you find source code on github but pull requests are not used there. Go to
>> gerrit or JIRA to merge code or raise issues.
>>
>
> I'm guessing that's just a fact of life for Iotivity. Fwiw I'm addressing
> this in openocf by reorganizing the code and eliminating the quasi-OO code
> in csdk. But I don't see any of that moving into Iotivity, too much work.
> Maybe some bits.  Otoh the notes I keep may be helpful for devs digging
> into the source.
>

KE>> It is a fact of life but it is a problem that needs to be fixed.

>
> 4) Logs are long and not-very-configurable what to log and what not to log
>> (difficult to debug). Not to mention that the output to debug is nested in
>> a very long path due to all the supported platforms.
>>
>
> I think this is very addressable. It's quite easy to conditionalize
> logging with a few macros. E.g. #ifdef DBG_MSGS in camessagehandler.c - I
> don't always need to see pdu dumps.
>

KE>> Exactly, I remember to have done something to fix this in one of the
releases maybe in 2016 but lost as I upgraded to following releases without
migrating the code. I should have contributed it back to the project then.
It was very primitive so that's why maybe I was reluctant to share.


> Another thing that isn't terribly hard but very useful is providing an
> option to log to a file. You need that if you want to e.g. implement an
> ncurses interface.
>
> HTH,
>

It did.

Best regards,

Khaled

>
> Gregg
>
>>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#10064): 
https://lists.iotivity.org/g/iotivity-dev/message/10064
Mute This Topic: https://lists.iotivity.org/mt/28653513/21656
Group Owner: iotivity-dev+ow...@lists.iotivity.org
Unsubscribe: https://lists.iotivity.org/g/iotivity-dev/unsub  
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to