cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Sienna
Level 10

Re: [Discussion] PA Objects are live all the time. How does that affect app performance?

@TheLoneWoof

"given that the developers actually communicate well -- which, well, they really don't do well."

The developers rely on other users. That is why they created the "kudo", leveling users and so on. In other words they want you to  help others for uselss points which basically cost them nothing. Smart.. isn't it 

I'm still waiting for them to answer 2 questions

TheLoneWoof
Level 8

Re: [Discussion] PA Objects are live all the time. How does that affect app performance?


@Sienna wrote:

 

The developers rely on other users. That is why they created the "kudo", leveling users and so on. In other words they want you to  help others for uselss points which basically cost them nothing. Smart.. isn't it 

I'm still waiting for them to answer 2 questions


 

Point but that's another topic. A reasonable platform could still expect help from its userbase, if not just to simply gather feedback and promote community. But there are things seriously wrong or just simply missing with PowerApps and instead of keeping communications open, the dev team seems to maintain radio silence when things don't go the way they promised the users. 

 

PA and the PowerUsers Community makes me want to vent. @mackenzie_lyng -- You can see the rant below for Community UI feedback, as you said you guys are revamping the whole site and all.

Spoiler
And on another note, the UI on this community sucks. Like really sucks. This text editor I'm typing on sucks the most. The code editor sucks and if you have to add in a line break between code, you have to retype everything unless you're okay with this stupidly awkward break between the <pre> sections. The font size controller sucks. The size of the font in this editor somehow differs from when it's posted. And there's no option for adding our own quotes. And their own Quote button has this restrictive option of only allowing one message to be quoted. And their tagging function doesn't make intuitive sense. I'm trying to tag somebody in this conversation and if I type too many characters of their name (like 3's apparently too much), my intended targets get lost in the pool. And admins and staff are harder to tag since they appear last apparently. And have I mentioned the photo attachment thing? It's stupid and should be changed. It's too awkward to use. And adding text after adding in an image is somehow buggy. And the emoticon replacements. Why do they still trigger inside code sections? The lists can be buggy too. Everything's buggy. And I almost forgot, somehow, the page for posts is also buggy. My notification thing gets covered by the floating header.
Sienna
Level 10

Re: [Discussion] PA Objects are live all the time. How does that affect app performance?

@TheLoneWoof

 A reasonable platform could still expect help from its userbase

Yes I fully agree with that. 

the dev team seems to maintain radio silence when things don't go the way they promised the users

Yes that is what they do all the time which is a bit frustrating. 

But instead of revamping the site I would concetrate more on PA it self. It needs a lot of things to be done and fixed first. My suggestions were posted here

https://powerusers.microsoft.com/t5/General-Discussion/From-Sienna-to-Powerapps-review-ups-and-downs...

so I really wonder what is going to happen

Highlighted
TheLoneWoof
Level 8

Re: [Discussion] PA Objects are live all the time. How does that affect app performance?

Yeah... about revamping the site? In case you haven't noticed, my post is one of the featured posts for this community. The one about deleting my account, if that's not clear. The admin had mentioned about the planned revamping of the UI but I suppose another team's doing that.

 

And about the updates...

 

To quote Lance Delano of the PA Staff regarding their supposedly planned PA Printing functionality...

So, we're looking at a bunch of requests that will help improve overall usefulness and usability.  Printing is definitely on the list.  There are a lot of things on the the list though.  Appreciate the ping. 

 

Definitely indefinite. So unambiguously unclear. They're really great at giving non-answers and evasions.

 

Here's link to the idea if you're interested: https://powerusers.microsoft.com/t5/PowerApps-Ideas/Printing/idi-p/846/page/6#comments. His comment is on Page 6. 







 

Sienna
Level 10

Re: [Discussion] PA Objects are live all the time. How does that affect app performance?

Right sorry for that and yes that what I was saying since beginning... They don't care about the users but what is good for them. It was like that from beginning. It would be much more better if they would say that this simply won't be included because (for example) it won't makes us money rather then keep us in misery. Timeline was suggested again since sienna. You have no idea how many suggestion I wrote (some of them are surprisingly included) an how long I was waiting without any answer or so many lies what said we working on them. I learned to just expect worse and hope for better... That is all you can do here

mr-dang
Level 10

Re: [Discussion] PA Objects are live all the time. How does that affect app performance?

@TheLoneWoof wrote:

 

And also that reading and maintaining the code if it's just in one place is much easier. It's really slow to move from one property to another. (Oh, god. The lag.) I'm surprised they haven't improved that ridiculous dropdown.

 

Are you using desktop PowerApps? I switched to editing in the browser and haven't gone back. It runs at  a good speed.

 

@TheLoneWoof wrote:

 

 

So, back on topic. How did moving all the querying from the caches to the controls improve your app? Did it improve general loading times? Did you have awkward visuals in the screens when the data is initially being queried? If so, how often? The updating of the evaluation of property formulas is also reported to be run parallel. Did that affect the way you queried the data at all? 


Good questions. I have a few case studies I can share of the kinds of changes I made. What worked as a compromise for one app did not necessarily work for another:

 

  • To address the 'awkward visual' when the data was being queried upon starting up, I placed a variable at the start and end of my OnStart commands. When the end variable activated, so would a toggle that included some more conditions*, and then it would show things the way I wanted them to appear, else it would show a loading GIF with opaque black fill. 

    *Detecting when an object is finished loading is kind of tricky. I used a condition to determine when a dropdown was finished:

    !IsBlank(Dropdown.Selected.field)
    I bound that to a toggle and paced my interactions with datasources a little better.

  • Evaluating property formulas: the only 'time' when properties do not calculate well for me is when involving time, not the calls to the datasources. For me, timers do not run on time on slow devices. So animations for fading, sliding, and expanding can sometimes elapse over twice the intended duration.

    I don't have a solution for this one except to throttle some animations.

  • In cases where live data was already pulled into one gallery and I needed to pull the same live data elsewhere, I had begun filtering Gallery.AllItems so I don't repeat calls to the datasource. In one instance, I had Gallery2 nested in Gallery1. To count everything in each of the Gallery2s, I used this formula:

    Sum(Gallery1.AllItems, CountRows(Gallery2.AllItems))

    The same could be done for a Sum
    Sum(Gallery1.AllItems, Sum(Gallery2.AllItems,field))
  • Reconfiguring datasource: In this situation, I needed a Sum() across an entire datasource, but aggregate functions aren't delegable. So after hopping over to SQL and not being successful, I just reconfigured my table to include a column that kept a running balance. 
    Users would correct the balances each time they performed actions upon the datasource--a solution inspired by blockchain. They used data already being operated on, so there was no additional performance required.
    https://powerusers.microsoft.com/t5/Connecting-to-Data/Export-data-from-CDS-into-SQL/m-p/76802#M566

    I had a Gallery of Users which was data filtered directly to a connected datasource. It was previously performing the sum (described above) upon another datasource and clogging things up (the returned results were within 500 records). When I changed the object in the gallery to do the lookup for the balance, which was just a single record each, the gallery took 8s to load up on my phone which is within my level of tolerability for slow devices.

  • Gallery: Another app of mine was unusable by anything that wasn't my own computer. There were too many images and conditions all over the place. So I started identifying objects and properties that used the same condition. I placed the condition in a toggle. Then I referenced the toggle instead of repeating the condition in multiple places. 

    This made the app very usable on my phone. I was very close to giving up before that. :/

  • Another gallery required a lookup from one datasource to another so I expected it to run slow. The gallery had multiple controls that each looked up a different field, but from the same record. So I nested a gallery which housed the common record to lookup. Then for each field I needed, I referenced:
    First(Gallery_name.AllItems).Field
Microsoft Employee
@8bitclassroom