Live data from Hacker News

Why did the web take over desktop and not mobile?

subconscious.substack.com

41–50 of 315 posts

Re: Why did the web take over desktop and not mobile?

#42

I've been writing a big React app for about a year, it runs really well on mobile too, but it is a bit hamstrung by iOS safari due to some errant touch interactions I've not been able to turn off despite much trying: double tapping, pinching in certain random areas can lead to zooming, and there is no good way for the user to undo it. I'm going to agree that the reason is Apple.

Yes, I agree, how selfish

Re: Why did the web take over desktop and not mobile?

#43
post #36
post #10

I am not sure in what world. 90% of the applications I use are native desktop apps. Look ma, no web.

You don’t use Gmail, Google Docs and Maps, Outlook, Youtube? My wife uses a transcribing web app called Otter. All the fantasy map authoring tools I’ve used recently (for TTRPG use) are web apps, like Inkarnate. Arguably even Facebook, Reddit and LinkedIn are really more web apps than web sites. On mobile most people would use an app for all of these services, on desktop they’re mostly tabs in a browser.

Not GP but I don't find their claim implausible.

> Gmail, Google Docs

Outlook and the Office suite are common desktop apps, especially in certain industries.

> [Google] Maps

Most people probably use Maps on mobile. Most of my use of Maps outside mobile is definitely just in Google search results.

> Outlook

I use OWA but long-time Outlook users often still prefer the (extremely legacy) desktop app.

> YouTube, Facebook, Reddit

Some people primarily consume media on mobile devices. Especially if they have a dedicated work or gaming desktop.

Re: Why did the web take over desktop and not mobile?

#44
Inertia and path dependence (or in plain language, history). Web started on the desktop and the browser co-evolved with desktop focused web apps.

Desktop as a platform is also more hostile to native apps: a lot of users don't have permissions to install native apps, and another slice of users is sufficiently clued about security that they don't want to. These probably make up >50% of your potential users. The same effects exist on mobile too, but in smaller portions.

Re: Why did the web take over desktop and not mobile?

#45
post #4

One word: Apple. Preventing PWAs is detrimental to users and an abuse of their monopoly.

Mobile Web is enough for like 90% of CRUD stuff, regardless of PWAs.

Yet, most business still go native due to the development experience, like not having to turn magically into beautiful dropdown combo boxes with multiple selections via an HTML/CSS/JS soup, that don't feel quite right with the native ones.

Re: Why did the web take over desktop and not mobile?

#46
post #6

Earlier quoted context omitted.

Is android native development still a thing?

It's always confusing when people say "native" on Android... you never know if they mean "not a web app" (SDK) or "machine code" (NDK). Do you mean the latter?

Native on Android, is what the native platform SDK offers as development experience when you install it on the computer.

So Java, Kotlin, C, C++ and Web.

Re: Why did the web take over desktop and not mobile?

#47

Earlier quoted context omitted.

I'm pretty sure it's "not a web app" in most contexts, but that's an interesting point I hadn't thought of before. What do you mean by "machine code" though? To me, the most native you can get is a Java/C++ app that uses Android APIs directly. Anything lower is systems development, something not generally possible for normal developers.

> What do you mean by "machine code" though? To me, the most native you can get is a Java/C++ app that uses Android APIs directly. I mean like C/C++ (which compiles to machine code) and not Java (which compiles to bytecode). Same as the distinction the terminology made on desktop: https://stackoverflow.com/a/855774

Java compiles to machine code on Android, via JIT and AOT compilers.

Re: Why did the web take over desktop and not mobile?

#48
post #47

Earlier quoted context omitted.

> What do you mean by "machine code" though? To me, the most native you can get is a Java/C++ app that uses Android APIs directly. I mean like C/C++ (which compiles to machine code) and not Java (which compiles to bytecode). Same as the distinction the terminology made on desktop: https://stackoverflow.com/a/855774

Java compiles to machine code on Android, via JIT and AOT compilers.

I'm aware. Windows has NGen too. But that's not what makes people call Java or C# a native language, or apps based on those native apps.

Re: Why did the web take over desktop and not mobile?

#49
The article appears to see "the web" as "browsers". This is apparent in the "OS within OS" language. The web isn't the browser although that is its facade. If you consider search on the desktop as "where do find X?" And on mobile as "how do I get X done?", Sans the real web the mobile device will be far less useful. From that view, it almost looks like the web already ate mobile .. just that we don't see it .. as made clear in this classic https://xkcd.com/1367/

Re: Why did the web take over desktop and not mobile?

#50

Earlier quoted context omitted.

Android UI is implemented with Java libraries. If you want native Android L&F, you need to use those libraries. You can write your app with C++ and invoke those libraries via FFI, but that's extremely cumbersome way to develop and does not bring any advantages. Java is the native way to develop GUI apps for Android. And recently Java was replaced with Kotlin, so nowadays Kotlin is the native way to develop GUI apps f…

> Just like C# is one of the native ways to make Windows applications. Please do everyone a favor and, at least for the sake of desktop development, don't misuse the terminology like that if you want people to understand what you're saying. The entire reason ".NET Native" was developed was that C# did not produce "native" applications. Saying C# produces native Windows applications is going to confuse the heck out of…

Someone is wrong on the Internet.

.NET has always supported AOT via NGEN, although it only supports dynamic linking and was optimized for fast startup of applications.

Windows 8 introduced the Bartok compiler used by Singularity, where applications would be pre-AOT compiled in the Windows store minus linking, with on-device linking happening on installation.

Windows 10, improved the later scenario with the introduction of .NET Native, slightly based on the Midori experience.

The new Windows 11 store is still fully based on .NET Native, as it makes use of WinUI 2.6.

Post reply on HN