5 ms·
The post says, "it’s roughly 1.5s startup delay to load a 15mb bundle on an iPhone X." I've seen startup latency much slower than that on my iPhone SE. In the
by jamesgeck0 8y ago
The post says, "it’s roughly 1.5s startup delay to load a 15mb bundle on an iPhone X."
I've seen startup latency much slower than that on my iPhone SE. In the best case, the application takes about six seconds to cold boot when I tap on a notification. Sometimes it's closer to fifteen or twenty seconds if the app sits on the "connecting" screen for a while. It's difficult to understate how much slower the app feels than everything else on my phone.
- milankragujevic 8y agoSlower storage and slower CPU on the SE? Maybe that is a factor, I'm not quite sure.
- nikanj 8y agoThe X is the most expensive iPhone you can buy right now, and the SE is the cheapest. Too bad engineers practically always have the top-end models, so they don't really have to dogfood the everyday pain of using the slower devices.
- postalrat 8y agoThat creates opportunities for other developers to build a better product.
- StudentStuff 8y agoThat kind of optimization is happening much more on Android than on iOS, the install base of low end devices is much, much larger.
- victoriasun 8y agoActually I don't own an iPhone X :P Our core user base tends to use 6 and above (approx 2 generations behind) and we dogfood regularly with a huge group of beta testers (thousands) with a huge range of hardware. We try our best to make sure the average use case is considered.
- Dylan16807 8y agoConsidering the average is good but it still pushes the performance treadmill forward. If we had some magical way to make the dev treadmill run slower than the user treadmill, we'd see better architectures in many cases. In that alternate world it would be easy to precompile the javascript and load 20 times faster.
- kitsunesoba 8y agoAs an iOS dev, I use my personal phone (iPhone X) for the bulk of my dev/test cycle but also keep around an old-ish iPod Touch running the previous version of iOS that I dev/test on periodically as well. If something doesn’t perform adequately on the Touch, I tweak on it until it does. iOS users tend to run newer devices generally which might lead some devs to feel that this extra optimization isn’t worth the time it takes, but I disagree because it doesn’t benefit only users with older devices – it’ll make your app run better on newer devices too and make it that much more unlikely that your app gets killed or causes the OS to kill other apps in multitasking scenarios (iOS kills resource hogs much more readily). In short, everybody benefits. With this same thought process, I plan to pick up one of the 120hz iPad Pro models to test on soon. It’s one of the most powerful iOS devices available, but driving 120FPS isn’t easy and given how many apps fail to hit the target of 60FPS on similar hardware I’d bet that a huge number, perhaps even most, don’t come anywhere close to running at 120FPS even with the extra horsepower.
- emagicc 8y agoHey, blog author here! The startup delay is the extra initialization time that React Native needs. Translating into our discord iOS app, it is the duration of the screen with spinning mascot and quote rather than the entire duration fully connect to our gateway socket. In our test case, its about 4s delay on iPhone SE. Meanwhile, we keep working towards to improving our user experience on all the devices especially the lower-end ones (I personally use iPhone 6 as my go-to test device). For instance, we will add caching very soon to shorten the interaction waiting. Hopefully you will enjoy more using Discord on your SE then :)