As most of you should know by now, I have a ton of apps. Most of them have some sort of speech/push/notifications in them. Making it difficult to update each to the latest and greatest way of doing things.
A good example of this is the update to 'Follow Me' that I just put out. Fixing the 'Time Restriction' and 'Quiet Time' to work when the values cross over midnight. This 'fix' will need to be done to each and every app that uses these options, which is just about all of them!
What I would like to propose and want you're honest feedback on, is a major change to the way my apps would work. Making things somewhat modular! Been thinking about doing this for a while but now seems to be a great time.
To start, what I would like to do is rip out the notification options (speech/push) in all of my apps and send the data over to Follow Me to process. All my apps have the option to use Follow Me now, it would just become mandatory to have Follow Me installed to use the speech/push options.
This would make each app smaller and make trouble shooting much easier. This would also let me focus on making 'Follow Me' even better as each new way of doing things comes along. Without any app getting 'left behind'.
For anyone not familiar with Follow Me...
Follow Me has become an all inclusive way to send speech/notifications to devices using the latest way to insure the best experience no matter what device your using (google/alexa/sonos/etc).
It would basically come down to,
if you already use Follow Me, you wouldn't notice any change
if you don't use Follow Me and you want notifications from my apps... you would have to install it.
Well, I use some of your apps, and I think the're all great!
I don't use follow me, but what the heck, I can change...
Do what is best for you, and I'm following a leader...
I use Follow Me already (mostly for Dashboard logs), so I'm totally up for it.
Like @BorrisTheCat says if it makes the process of development easier/smooth/faster I think it is a no brainier. It also sounds like it would make the overall size of "installed apps" less the more you use, which is a big plus.
Anyone that objects better have a good reason, or I lay the lazy card.
@bptworld Right now, I'm only using ChromeCast Helper, so for me I don't think I'd be affected. But I agree, if it makes your software development process easier and more streamlined you should proceed. Those that disagree, can simply remain at the older version of your app prior to the FollowMe dependence. Thanks for all of your hard work!!!
I don't think I use any notifications in your apps, so I don't think this affects me.
As long as I am not required to add Follow Me, (I.E. your apps will continue to work without it) I don't think there is any reason you shouldn't do this.
It sounds like this will save you a lot of time and effort, which means you can spend time on creating new and exciting apps with your free time.
I think that whatever makes it better / easier for you is the way it should be done. It makes sense to reduce app size and have a module that can handle that redundant process for a lot of reasons. I use a few of your apps and I appreciate the work you put into them. If anyone complains, they have bigger issues that an app wonβt fix.
I'd echo everyone else's comments here, all your apps are great and what you are proposing makes perfect sense and I would support the change.
The only thing to consider, if you haven't already, is managing dependencies in the version of Follow Me required by each app that uses it. e.g. users updating / installing other apps before updating Follow Me, or vice versa. I haven't kept pace with the capabilities of the package management utilities developers have produced, so this may be a non-issue.
The idea would be to make a rock solid, simple "interface" for Follow Me in terms of the actions other apps can ask of Follow Me, and either change the behaviour in Follow Me for these actions over time or add to what apps can ask Follow Me to do.
I guess my point is not so much about the initial development you are undertaking, but about how best to manage changes down the track.
I'd also second @LosinIt 's comments, training as a programmer only counts for so much early in someone's career, there comes a point where experience counts for much more. I think you can claim a significant amount of experience in programming on hubitat, and a substantial catalog of successful apps / drivers. So no excuses...