zlacker

[parent] [thread] 33 comments
1. IBM+(OP)[view] [source] 2017-07-27 11:54:34
Is there a reason for users to care about this at all? Because it seems to me that this just solves problems for developers while making the user experience worse or not as good as it could be. The same goes for Electron-based apps.
replies(5): >>andrea+B >>jvzr+P >>pluma+03 >>jbigel+dG >>slayma+Ja1
2. andrea+B[view] [source] 2017-07-27 12:00:32
>>IBM+(OP)
Watch the State of the Web talk from Google IO 2017. Certain native apps (Twitter, OLA) are 70-100MB in size when downloaded from the app stores. Their progressive web app version are 0.2-0.6MB. Extremely important in countries with very limited and/or expensive mobile data.
replies(4): >>jvzr+61 >>akmari+44 >>maxsil+n9 >>gpawl+wb2
3. jvzr+P[view] [source] 2017-07-27 12:02:05
>>IBM+(OP)
Exactly. I don't want websites to send notifications. And I dislike websites with Offline support: I always have to refresh twice to make sure the content I'm seeing came from a fresh source and not from cache.
replies(2): >>pluma+i3 >>egeozc+o7
◧◩
4. jvzr+61[view] [source] [discussion] 2017-07-27 12:03:54
>>andrea+B
I'd say that's another issue. Duplicate frameworks in Facebook.app, monolithic tracking frameworks, etc. So much useless stuff prying on the user's privacy.

I remember Twitter.app had code to get the currently installed apps, to "better target ads." It's user hostile and we are paying with the multi gigabytes of data.

replies(1): >>euyyn+Ar
5. pluma+03[view] [source] 2017-07-27 12:21:01
>>IBM+(OP)
Push notifications? Every single messenger or anything that lets you set reminders. Note that features like push notifications are implemented with a discrete opt-in on every other platform already. Don't want notifications? Just say "Deny" when you're prompted.

Offline support? Only if you happen to live in the 99.99% of the world that doesn't have 24/7 perfect WiFi/4G coverage with unlimited data. If you've ever kept a page open in the background and wished the data would still be there when you come back, offline support could have helped with that.

The choice is not between a native and a web app. The choice is between a web app or no app. There are certainly apps that could cease developing platform specific native apps when PWAs are supported on iOS but the vast majority of apps that benefit from PWAs being supported universally are apps that simply would never be available as native apps (let alone native apps on more than one platform).

replies(2): >>IBM+x5 >>scarfa+fk
◧◩
6. pluma+i3[view] [source] [discussion] 2017-07-27 12:24:29
>>jvzr+P
Then just deny push notifications when the website prompts for them (exactly once). And simply refresh manually to make sure the offline-available website is fresh.

It's not like you're being force-fed notifications against your will. And it's not like offline content hurts you. Any inconvenience offline support causes to you pales in comparison to how much people benefit who actually need to be able to access content on spotty connections.

replies(1): >>jvzr+47
◧◩
7. akmari+44[view] [source] [discussion] 2017-07-27 12:31:46
>>andrea+B
https://sensortower.com/blog/ios-app-size-growth

According to this, Facebook was 32 MBs 4 years ago. It's similar with Twitter.

It's their fault that they keep adding stuff to track you. And Facebook contains just about every library that has ever existed now.

replies(1): >>pavlak+t5
◧◩◪
8. pavlak+t5[view] [source] [discussion] 2017-07-27 12:43:34
>>akmari+44
But now Facebook mobile app is a different tech. It's ReactNative, not Obj-C, right?
replies(2): >>jaxond+gh >>LeoNat+CX1
◧◩
9. IBM+x5[view] [source] [discussion] 2017-07-27 12:44:24
>>pluma+03
All of these things are already available in native apps. Putting aside all the business reasons for why Apple wouldn't want to do this, why should Apple spend any time to enable this for web apps? You say the choice is between a web app and no app, and I'm sure on the margin this impacts companies that can't afford to create a native app, but why should Apple cater to the lowest common denominator? Steve Jobs' post on Flash addresses this specifically [1]:

>Sixth, the most important reason.

Besides the fact that Flash is closed and proprietary, has major technical drawbacks, and doesn’t support touch based devices, there is an even more important reason we do not allow Flash on iPhones, iPods and iPads. We have discussed the downsides of using Flash to play video and interactive content from websites, but Adobe also wants developers to adopt Flash to create apps that run on our mobile devices.

We know from painful experience that letting a third party layer of software come between the platform and the developer ultimately results in sub-standard apps and hinders the enhancement and progress of the platform. If developers grow dependent on third party development libraries and tools, they can only take advantage of platform enhancements if and when the third party chooses to adopt the new features. We cannot be at the mercy of a third party deciding if and when they will make our enhancements available to our developers.

This becomes even worse if the third party is supplying a cross platform development tool. The third party may not adopt enhancements from one platform unless they are available on all of their supported platforms. Hence developers only have access to the lowest common denominator set of features. Again, we cannot accept an outcome where developers are blocked from using our innovations and enhancements because they are not available on our competitor’s platforms.

Flash is a cross platform development tool. It is not Adobe’s goal to help developers write the best iPhone, iPod and iPad apps. It is their goal to help developers write cross platform apps. And Adobe has been painfully slow to adopt enhancements to Apple’s platforms. For example, although Mac OS X has been shipping for almost 10 years now, Adobe just adopted it fully (Cocoa) two weeks ago when they shipped CS5. Adobe was the last major third party developer to fully adopt Mac OS X.

Our motivation is simple – we want to provide the most advanced and innovative platform to our developers, and we want them to stand directly on the shoulders of this platform and create the best apps the world has ever seen. We want to continually enhance the platform so developers can create even more amazing, powerful, fun and useful applications. Everyone wins – we sell more devices because we have the best apps, developers reach a wider and wider audience and customer base, and users are continually delighted by the best and broadest selection of apps on any platform.

[1] https://www.apple.com/hotnews/thoughts-on-flash/

replies(5): >>blueje+p8 >>celeri+uc >>euyyn+Zq >>saurik+ss >>KingMo+063
◧◩◪
10. jvzr+47[view] [source] [discussion] 2017-07-27 13:01:27
>>pluma+i3
Offline makes sense, you are right. I'm being privileged.

But for notifications, even the only-once* prompt is an annoyance we never had to deal with before. It's like the European Cookies Law: great in essence, but when every website bugs you about it then the problem has been exacerbated, not solved. I don't care about receiving notifications for a website I visit once in a blue moon, and I especially don't care to be even asked. There should be an action that triggers the prompt, like some kind of opt-in.

Edit: same with "app banners"

*it never is, because cross platform, multiple devices, multiple browsers. A fucking pain.

◧◩
11. egeozc+o7[view] [source] [discussion] 2017-07-27 13:04:08
>>jvzr+P
Why is your complaint specific to websites with offline support? I always get stale data when I open Twitter app. I have to go to the top and refresh to get new tweets (and then they serve you with even more stale tweets but that's another problem).
replies(1): >>jvzr+G9
◧◩◪
12. blueje+p8[view] [source] [discussion] 2017-07-27 13:14:23
>>IBM+x5
This is a great post about why you should target iOS and macOS features specifically. But it misses the point,

> we want to provide the most advanced and innovative platform to our developers, and we want them to stand directly on the shoulders of this platform and create the best apps the world has ever seen.

Yes, that's what (you and) Apple want. But what developers really want is a simple cross platform framework to target all OSes and the widest user base possible with the least effort.

These applications can then enable custom features on macOS where they get a better experience if they have a need for that.

Remember OpenStep? Yellowbox? We want those tools; right now the web is an ok standin, and until there is something better, developers will keep demanding these features. It's about targeting the widest user base possible, not about making a single platform the most successful.

replies(1): >>IBM+O9
◧◩
13. maxsil+n9[view] [source] [discussion] 2017-07-27 13:21:42
>>andrea+B
That doesn't have anything to do with native vs web though.

Twitter's native app is heavier than their web app because Twitter has historically filled the native app with junk (like a fullscreen video just for the login screen, "moments", "highlights", hijacking browser URLs, a bunch of ads and ad tracking, etc). Facebook does the same, to an almost silly degree - https://news.ycombinator.com/item?id=8162342

The Twitter client could easily be ~3MB on Android, for instance, if they just stripped the garbage out. And similarly, if you take a web app, and embed all that same junk into it, it will suddenly be a heavy download too.

replies(1): >>euyyn+Pr
◧◩◪
14. jvzr+G9[view] [source] [discussion] 2017-07-27 13:24:04
>>egeozc+o7
It's very specific and I realize I'm being privileged. I don't think my argument holds much ground.

My thing is: I visit a particular website to get the latest news on a topic but it's done with some kind of poorly coded implementation of offline cache. Despite my privileged, first-world, 4G-everywhere connection, it insists on loading stale data even though it looks exactly like a regular website. And this clashes with my vision of internet, which is, as others said, regular pages with hyperlinks, and a Refresh refreshes the page to get the newest version, even if it's stale. If things haven't changed, then they haven't and I instantly know nothing's new.

As I've said, pretty minor and I realize that Offline mode has much more pros than cons.

◧◩◪◨
15. IBM+O9[view] [source] [discussion] 2017-07-27 13:25:24
>>blueje+p8
Cool so then it just comes down to leverage. Developers who wants this have almost none and Apple has all of it. As a user who mostly doesn't care about the trials and tribulations that developers go through, my interests are aligned with Apple's.

As long as Apple continues to sell more product that dynamic isn't going to change.

replies(1): >>blueje+Yb
◧◩◪◨⬒
16. blueje+Yb[view] [source] [discussion] 2017-07-27 13:41:10
>>IBM+O9
> Cool so then it just comes down to leverage. Developers who wants this have almost none and Apple has all of it.

You are definitely right that Apple has a lot of leverage for now. I love my Apple products, as a user I have no intention of switching away from them (I stuck with them through their worst period, '96 - '00, because I was so excited for the coming of Unix). Again as a user I want them to succeed because I love the products.

As a developer though, I want my favorite tools and languages available. And I want to spend the least effort in targeting users...

◧◩◪
17. celeri+uc[view] [source] [discussion] 2017-07-27 13:43:57
>>IBM+x5
that quote basically sums it up. third-party cross-platform solutions are good for developers but bad for Apple and all it's users. The reason I choose Apple is because they make these kind of user-first decisions.
◧◩◪◨
18. jaxond+gh[view] [source] [discussion] 2017-07-27 14:15:15
>>pavlak+t5
React Native under the hood uses Obj-C to bridge to native Cocoa frameworks. For example when you uses a <View> tag in JavaScript, it ends up calling iOS UIView.
replies(1): >>pavlak+Ul
◧◩
19. scarfa+fk[view] [source] [discussion] 2017-07-27 14:32:25
>>pluma+03
The choice is between a web app or no app.

why do you assume that's a worse alternative?

◧◩◪◨⬒
20. pavlak+Ul[view] [source] [discussion] 2017-07-27 14:42:44
>>jaxond+gh
Still, it's not the very same tech. Especially in this discussion, where we are talking about apps performance and languages, which need to get under the hood instead of talking directly with the engine, are presented as "worse".
◧◩◪
21. euyyn+Zq[view] [source] [discussion] 2017-07-27 15:14:41
>>IBM+x5
These are good arguments. But they apply verbatim to Java, HTML, and JavaScript in the times of Windows and IE3/4, if Bill Gates had been asked publicly.
◧◩◪
22. euyyn+Ar[view] [source] [discussion] 2017-07-27 15:18:56
>>jvzr+61
The argument can't go only one way, though. If a web app doesn't get the UI in tune with the OS' look and feel, "the developer should be bothered to create a native app". But if a native app is a massive bloat, "that's another issue".
◧◩◪
23. euyyn+Pr[view] [source] [discussion] 2017-07-27 15:20:27
>>maxsil+n9
In theory you could make a web app look like a native iOS app too, yet in practice developers don't either.
replies(1): >>s73ver+je1
◧◩◪
24. saurik+ss[view] [source] [discussion] 2017-07-27 15:24:37
>>IBM+x5
I take it you didn't catch that that was all hypocritical bullshit :/. Steve Jobs can poke fun at Adobe all they want over Flash not adopting Cocoa and enabling developers to build applications using a third-party API layer over their platform, but it is totally duplicitous to do so without admitting that at the time iTunes was still written in Carbon and there was no timeline for that to change because their Windows implementation was ported to that platform as an API layer over the Win32 platform that allowed them to not have to maintain a truly native port of that product. To this day iTunes is written in that fashion; and, in fact, large amounts of it have been built on top of hybrid app web technologies so they can minimize how much stress they have to put on their increasingly abstract API layer. Seriously: go install iTunes on Windows and stare in awe at how Apple has essentially reimplemented OS X in a massive wad of DLLs so they can have iTunes sit on top. If Apple wants to be taken seriously, they should stop preaching and put their money where their mouth is and reimplement iTunes to work on both Windows and macOS as first-class native applications tied to the low-level APIs offered by the platform. The reality, of course, is that even a company as massive and successful as Apple understands the value proposition inherent in having one codebase that works on multiple platforms, and is willing to hamstring even their own macOS experience to make maintenance of their port to Windows easier. What is sad is that they can still tell these bold-faces lies about what their motives are, and people like you somehow still believe them :/.
25. jbigel+dG[view] [source] 2017-07-27 16:43:53
>>IBM+(OP)

    >The same goes for Electron-based apps.
When it comes to Electron apps I think any failing to provider a top notch user experience is on the developer and not on the technology. Visual Studio Code is based on Electron and it is hands down the best text editor/IDE-lite out there because the team behind it put the time in to make seem like the type of app you would get out established UI frameworks within the target environment.
replies(2): >>pjmlp+4Q >>LeoNat+NX1
◧◩
26. pjmlp+4Q[view] [source] [discussion] 2017-07-27 17:40:35
>>jbigel+dG
It might be faster than Atom, but it surely feels sluggish compared with other native editors on my system.

I only put up with it due to being the editor with the best support for Rust plugins.

The day I can have the same experience on Emacs for Rust, VSCode gets kicked out.

27. slayma+Ja1[view] [source] 2017-07-27 20:00:10
>>IBM+(OP)
What you fail to understand is that what is good for developers is good for users. Instead of spending resources on maintaining many different code bases, developers can focus on providing a more solid set of features for one.

For instance, maybe instead of being an always online application, they can put in effort at caching for offline use instead of duplicating features across different platforms.

I did my senior project in Electron and there was no way we could have implemented as much as we did if we had to build a native solution for every platform.

◧◩◪◨
28. s73ver+je1[view] [source] [discussion] 2017-07-27 20:22:49
>>euyyn+Pr
In practice, they tend to make it look like iOS, but then they ship the same thing for Android, meaning the Android app looks like an iOS app.
◧◩◪◨
29. LeoNat+CX1[view] [source] [discussion] 2017-07-28 04:15:49
>>pavlak+t5
Only a tiny fraction of the Facebook app is actually RN. Messenger uses none of it for performance reasons.
replies(1): >>pavlak+Xa2
◧◩
30. LeoNat+NX1[view] [source] [discussion] 2017-07-28 04:18:51
>>jbigel+dG
Code is not native. Where is the accessibility support? Native tabs? Performance? Look and feel? Compared to something like BBEdit, Code is a joke.
◧◩◪◨⬒
31. pavlak+Xa2[view] [source] [discussion] 2017-07-28 08:01:13
>>LeoNat+CX1
Huh? Isn't Facebook advertising their main app as no.1 use case of ReactNative?
replies(1): >>LeoNat+bd2
◧◩
32. gpawl+wb2[view] [source] [discussion] 2017-07-28 08:09:57
>>andrea+B
0.6MB to launch the app, which downloads 100MB more resources as soon as it starts up.
◧◩◪◨⬒⬓
33. LeoNat+bd2[view] [source] [discussion] 2017-07-28 08:46:06
>>pavlak+Xa2
Advertising is one thing, reality is different. The main, performant views are native. Some of the esoteric stuff is RN.
◧◩◪
34. KingMo+063[view] [source] [discussion] 2017-07-28 18:11:49
>>IBM+x5
> "We know from painful experience that letting a third party layer of software come between the platform and the developer ultimately results in sub-standard apps and hinders the enhancement and progress of the platform."

Yet those of us old enough to remember the 90s also recall how the openness of the web freed people from the monopolistic behavior of Microsoft. Sure, the web was bad for Microsoft, but great for users.

This whole argument is circular. Web capabilities lag because companies like Apple deliberately drag their feet. Then people like you cite all the advanced features of native development as a reason not to try and use the web. All of which suits Apple fine, since they get 30% of native, and 0% of the web. Apple hobbling PWA is the new "IE-only" website.

"It is difficult to get a man to understand something, when his salary depends on his not understanding it." - Upton Sinclair

[go to top]