Development organization of Gladys 4

Hello everyone!

Now that the beta of Gladys 4 is out and more and more contributors are starting to help with Gladys, it was time to structure the developments a bit more.

@AlexTrovato told me that GitHub Projects had greatly improved, and indeed, after testing, it has become a great product :slight_smile:

I have therefore created an automated « Kanban Style Â» board around the « Gladys Assistant Â» organization on GitHub, a board that is based on the issues and PRs of the project. The cards move automatically according to the status of the Issues/PRs.

The board looks like this:

And is available here → https://github.com/orgs/GladysAssistant/projects/2

I think this will allow us to have a better overall view of the ongoing developments, and everyone will be able to coordinate more easily.

@AlexTrovato, given your multiple contributions, I have invited you to join the organization :slight_smile: Tell me a bit how it looks for you in terms of rights…?

Super !!! I’m going to play around with it a bit, and I’ll keep you updated ASAP. Thanks :wink:

The main advantages I’ve found here:

  • The board is at the organizational level, so it groups tasks from all Gladys 4 repositories! (Gladys core, docs, and Gladys Gateway)
  • The cards are automatically updated in the correct columns thanks to the rules
  • The issue tags are displayed, so you can quickly see what they are about

It’s really more comprehensive than when they first launched this feature :slight_smile:

I took a quick look, I can play with the dashboard, move the tickets, create new columns or cards…
But I was thinking it would also be interesting to be able to assign or add tags to the tickets, but I don’t have the permissions.

After that, I think it’s done at the level of the issues, right? Can’t you do that in the issues?

I need to see what other open-source projects do in terms of organization :slight_smile:

No, I don’t have rights on the issues. But I would take them well :wink:

I’ll take a look at that :slight_smile:

@AlexTrovato Normally it’s good :slight_smile: You have access to the repos « Gladys Â» and « gladys-4-docs Â» in the « Triage Â» role

(cf Repository roles for an organization - GitHub Docs )

Let me know if it’s good!

For info, I’m starting work on the Docker manifests and the Synology documentation.

Can you create GitHub Issues on the relevant repos? :slight_smile: That way the work is referenced in GitHub Projects. I’m adding you to the organization so you have access to the cards.

I started yesterday to list on GitHub issues everything that seemed to be a priority before the « RC Â» release of Gladys 4! :slight_smile:

I have listed these priorities for this release so far:

The complete milestone is available on GitHub.

As for the schedule, I would like to be able to release Gladys 4 RC at the end of February, with a schedule like this:

To be completely transparent, here are my availability in January/February: D

So I would like to discuss with you:

  • What do you think of this schedule?
  • I haven’t listed everything in it, but do you see any must-haves before the release that I haven’t mentioned? (It must be realistic in terms of available man-days, everyone’s development time is not infinite!)
  • As for the services, I know there are great services under development (zigbee2mqtt, Caldav, etc…), do you think these developments can be included in this release or not, and do you need external help? :slight_smile:

I will probably need help with some tasks (especially the FR translation!), if you are motivated to lend a hand, any help is welcome :slight_smile:

Note

All this is a conditional proposal to discuss, it is not an announcement! I will make a « 2019 year-end report and projects for 2020 Â» post on the blog once we have discussed it and the dates work for everyone :slight_smile:

I don’t have time to write a full response but:

This link leads nowhere :confused:

@guim31 Thanks, fixed!

It’s all good :wink:
I can sort the issues

Hey!

Great news for you :slight_smile:!

Cool :slight_smile:!

In my opinion, some things are missing,

  • Why have the map tab if it’s just to display where we live for now?
    • Have we lost the notion of zones in this V4 (at least for now)?
    • Does Owntrack work on V4?
    • The world map is too zoomed out compared to V3 or the housing settings in V4
  • Why keep the calendar active as well?
    • No Google integration, Caldav still I think.
    • Impossible to create an appointment on the Gladys calendar.

From a personal point of view, I find that the RC does not have enough integration of major brands for a regular user to stay.

Good question, it’s true that it’s not well explained what can be done for now!
For now, only the Owntracks integration via Gladys Plus works, but the goal is to add Owntracks message management in the MQTT service. I created an issue on GitHub. If someone is motivated to help with this issue, that would be cool!

That’s my traveler side :smiley: It’s true that we could zoom in more, but we debated about it and it’s not simple. What do we focus on when there are several people in the house, with different locations? How do we calculate the zoom level in this case? (This is an open question, it’s not the subject here, I invite you to reply on another topic or on the GitHub issue if you want to participate in the debate :D)

Good point! The CalDav integration is well underway. We are waiting for the second review of the PR, in my opinion it will be good for the RC. We will indeed need a message explaining how to synchronize Gladys with CalDav on the calendar view.
If CalDav is not ready, we will have to remove the tab, that’s clear.

I don’t think we want that. Gladys 4 does few things but does them well, we aggregate data, but we leave the super calendar apps to do their job for the creation part. I don’t want to change the current flow of users, I want people to continue to do what is most fluid for them: create their events on their phone, and then Gladys takes care of it so that it arrives to it.

I think that with the cameras, Xiaomi, Z-Wave, and Philips Hue, the user can already have a solid Gladys installation, right? We already cover hundreds (thousands rather) of devices, right?
And I think we manage the leaders of each type of integration:

  • Philips Hue for lighting
  • Xiaomi for sensors
  • Z-Wave for a lot of things
  • Cameras of all types as long as RTSP or HTTP is supported.

Are you thinking of specific integrations?
I will tell you my goal in releasing this RC.
Releasing a « RC Â» version is about communication. We release new versions of Gladys 4 every day! In Gladys, deployment is continuous, so every merge of a new feature goes directly to all users (it’s beautiful Docker!). So we don’t need an RC to improve the software, we already do it every day.
The problem is that the « beta Â» designation is a bit of a blocker: no one really knows if it’s ready, and unless you’re a daily forum visitor, you don’t know the project’s progress. Currently, even for devs, many will say « I’m waiting for the release Â». Whereas for me, in my head, Gladys 4 is already out! ^^ It’s just a problem of vision and communication.
The goal of releasing an RC is to send a « it’s good Â» signal to everyone. It’s about saying « we’re proud of what we’ve done, and we think it’s usable on a daily basis Â».
So yes, it won’t have all the integrations in the world. It will take several years to reach the point where we were in Gladys 3, because it took us 4 years to reach the point where we were on v3, and we won’t do it in 2 months, nor in 6 months, nor in 1 year, the work done in 4 years!
But I think that if we release a solid and clean base, that the first integrations are really clean, and that we send this signal to the community, then it will create a momentum that will motivate everyone to migrate even more things to v4 :slight_smile:

  • I’m thinking about heating management, especially with « Netatmo Â» right now, because we won’t be doing tests in July.
  • Managing the 433MHz protocol with an Arduino won’t happen right away; there’s likely much more work and thought required.

If you explain how to do it, I can help with part of the translation.

It’s done but they don’t appear in the project, I must have missed something or misunderstood.

Thanks @pierre-gilles your answers are clear :slight_smile:

When I talk to my non-tech friends and family about Xiaomi, three-quarters of them don’t know it or only know the phones.
I’m thinking especially about the mass-market brands (for now Xiaomi will become more and more of that) such as:

  • Netatmo
  • LeGrand
  • Nest
  • Bluetooth (where have the NUTs gone)
  • the 433MHz protocol (used by many manufacturers even if not very reliable)
  • Sonos
  • Google
  • everything related to TV ^^.

I’m aware that this requires time, but a user like my father who wants to get into home automation when he sees Gladys he says it’s nice, but when he sees the few ‹ mass-market â€ş integrations he leaves.

After that, as you say, it will be the first release, it has time to evolve, and then it will be your communication that will do the rest :stuck_out_tongue:.

I’m not here to pull down, but just to debate the subject and come up with something that would suit both the most experienced (z-wave, mqtt, zigbee etc …) and the less experienced with more plug & play products.

PS I don’t like the term experienced but the idea is there :smiley:

I know that @damalgos started a Netatmo PR, but after that, the development seems to be on hold and far from being ready… I haven’t put anything in this regard because I can’t really commit to developments that I don’t control :man_shrugging: After all, if someone has Netatmo and can help with the development so that it comes out before the RC, that would be great!

On the contrary, I think that 433Mhz with Arduino is not such a big development. Much less than Netatmo in any case. We already have the USB brick in Gladys 4, the things that are missing are:

  • Emit a Gladys event when a USB message is received from the Arduino
  • Quickly adapt the Arduino code from v3 to v4 but almost nothing will change (only the JSON format may change)
  • Make a UI to explain to the user how it works and show feedback from the messages received.

If someone is available to help with this, I would be happy to make a post explaining exactly what I see on this!

I understand your feedback! In the idea, you know, I would like to say that we will have everything next month, but nothing is magical and it takes time to make a good product :slight_smile:

For this development cycle, if you count on my calendar, there are 12 working days available for my time, minus the time spent on this forum/a bit of administration/a bit of communication. Let’s say 8-10 days of pure development. It will already be very, very tight to finish what I have planned (Scenes & Z-Wave) in this time, so I prefer to do these two points well rather than do everything at the same time and have it done poorly ^^

In the integrations you mention, many are « big Â» integrations and will come one by one I think, these are integrations that take months of work to be done correctly. When I say « months of work Â», it’s between the time when we talk about the integration, the definition, the various debates on the forum, the development, the reviews, the tests with users, and the final merge.

After that, do we want to block the release of the RC while waiting to have all that? I find that a shame, I think that a large part of the informed public of this forum can already benefit from Gladys 4 as it is and just wait for the « Release Â» designation to get started. The integrations will come little by little thanks to the community’s PR :slight_smile:

To talk about Bluetooth, @AlexTrovato started a PR after he had problems with noble (the Bluetooth library we use), and it seems to be on hold until the problems on the noble side are resolved.