Developing for the mobile web is a constant headache
popmotion.io
popmotion.io
Recently I've been starting to think the assumption "apps are faster" is wrong when you factor in app start time. Two well known offenders here are LinkedIn and Twitter; opening a push message from either it frequently takes 10+ seconds of staring at their logo (which they use as a launch screen counter to recommendations at https://developer.apple.com/ios/human-interface-guidelines/g...) before I can read anything.
For this type of transactional UX, slow-to-load apps are doing a poor job
The desktop version still seems better for browsing an article on my recent 5“ budget mobile.
I'd say we are basically risking various UI wars that may continue indefinitely by moving the goal posts for the brief gap that mobile simply wasn't good enough at presenting minimum desktop..
Two thoughts immediately sprang to my mind:
1) You are really smart to speak that many languages.
2) You are an exceptionally rare user.
Many people even in the US speak two or more languages. English and Spanish/Chinese/Arabic/who knows. And then Europe?
But I wasn't really saying my use case was common only showing it as another example where choices made to reduce UI and thereby improve some use cases must hurt others. That kind of mobile site should have a short life as mobile comes up to the bear minimum of 1990s utility as long as we don't give mobile UI a life of it's own with silly nonsense like bottom menu's for the lazy phablet user..
Making the screen shrink for input is the vendors problem. Wanting phablet users to be the priority users of all UIs is the pony we don't give them now that mobile is all grown up and we can ignore their tantrums.
Then why do so many bloody mobile sites implement them then? They're terrible for reading and interaction.
Why on earth do we still design and implement user interfaces by hand? Shouldn't 99% of development be about creating semantic models and let generic clients take care of rendering it properly based on form-factor, context, preferences, etc?
Today, every single app needs to re-implement the user class, authentication system, profile management interface, responsive design, loading indicators, caching and offline support, third-party access, sharing, filtering, theming, localization, accessibility, etc. This is insane.
Design hubris is one of the world's most important problem.
Probably not, and I disagree entirely besides.
We shouldn't break design paradigms or expected behaviour. But design in UI helps us navigate and create a clear mental model . Have you ever tried orientating yourself in the Barbican?
Will you try it?
You can find my e-mail address through my website which is linked on my HN profile, or you can PM me on Reddit, same username that I use here.
If your system is public already you can simply link to it in a reply to this comment.
Do you, or other rational people, have the money that guides the software world? Based on what I see around me and what I read on the internet, I don't think you do, sorry.
Oh look, XHTML2, oh wait, it's dead ...
https://www.w3.org/TR/xhtml2/mod-i18n.html#s_i18nmodule
> Today, every single app needs to re-implement the user class, authentication system, profile management interface, responsive design, loading indicators, caching and offline support, third-party access, sharing, filtering, theming, localization, accessibility, etc. This is insane.
You're mixing up server-side and front-end development. The client shouldn't take care of authentication or profile management.
If you're not familiar with the Naked Object's pattern, you may find it interesting: https://en.wikipedia.org/wiki/Naked_objects
IMHO the mobile web is terrible BECAUSE of lost screen real estate due to all these sticky elements. I have started a filter list [0] for uBlock Origin that attempts to fix this by pinning scrolling nav bars that block real estate to a fixed location as well as blocking other annoying web elements.
I also think these items are terrible for web usability on a desktop (and my filter list works well against them on desktop as well) but taking up such a large portion of the readable screen size with a 'download our app banner' and a navigation scroll bar plus a button that scrolls with you so that you can click to jump back to the top of the page is really horrible.
Feel free to subscribe to the filter list [1] by pasting the url into the 'Custom' section under the '3rd-party filters' tab of uBlock Origin and let me know your thoughts.
[0] Project Homepage https://github.com/yourduskquibbles/webannoyances
[1] https://raw.githubusercontent.com/yourduskquibbles/webannoya...
I agree, and fight these at work (with varying success). That's no excuse to block the most accessible real estate - there are plenty of valid use-cases that aren't floating social links.
I agree with you and have found such elements very annoying since I've had a smartphone. When I was on iOS I was constantly annoyed by this and assumed it was a childish attempt to get accidental clicks from ios users trying to access the page navigation. This article doesn't really inspire faith in web devs since they're staking out territory on my device as if they have say in what I do and do not do on their site. Ultimately I find the attempts to fight with apple or Google to do things the way the web dev wants just makes it worse for me. Apple had a functional means of getting around the page on mobile. Scroll bars have told me how far I was on a page since scrolling existed, and for cases where the page extends past the content, I can survive without a reading progress bar. I'm perfectly fine guessing on my own.
I appreciate that web devs do some cool projects but don't just tack stuff on.
For anyone reading who is curious how to use the list on your iPhone, unfortunately since iOS doesn't actually allow browsers (Firefox on iOS is not actually true Firefox with add-on support) this filter list (and any others) only work for uBlock Origin using Firefox for Android.
It's as simple as that. Everything else is easy to solve
It was hell, still is and that's why I only take desktop or server work now.
Speed, freedom, and usability - choose two, I suppose.
to start with, jit compiling applications on a energy-constrained device is straight stupid. you should compile the application for me on some system that isn't already struggling to make it though to day on a single charge. wasm might help some, but pls don't make my mobile do more work than it has to.
#p2p applications often need special capabilities or native libraries to work well (or at all). the web offers some weak apis for this, but really isn't up to par with what i would be interested in using (or building on). again wasm might help here, only time will tell.
finally, web standards move very slowly and really don't exist as a disruptive force. if you need buy-in from all of the major vendors to push new/interesting features through, you aren't going to get much unless it favors them somehow.
I don't think you can work around this with any kind of technology.
I know that what I'm saying is basically anathema for HackerNews, but I think it's the truth.
The Web was successful because it was decentralized and egalitarian. Anyone could run a server. You could access any site you wanted. Everybody could link to everybody else. People loved this and the Web spread for these reasons.
Modern app ecosystems spread because capital wanted a return. It noticed people were getting rich off of this tech thing, and all that money from the rest of the world came pouring in. The defining feature is control: of experience, sharing, attention, and revenue. Because controlling all these things allows capital to extract greater returns.
There are pros and cons to each model, but let's be clear, one was built from the ground up by financiers looking to make another buck. If it's easier to build a bottom nav bar or something, that's incidental to their plans.
Why do you want a bottom nav bar, anyway? If you're truly building for the users, the first lesson is that they want their information on their terms.
That phrase "tragedy of the commons" has an interesting history! It's propaganda used to justify the privatization of common land, according to George Monbiot: http://www.monbiot.com/1994/01/01/the-tragedy-of-enclosure/
Hundreds of files of abstraction and encapsulation, layers of indirection, tonnes of new nomenclature... and all without any obvious reason other than "that's what works for desktop applications" I think?
Angular 1.x is the example I'm most familiar with (primarily because it was JS and 'easy' for the first 1000 lines), where most of StackOverflow was occupied with the "factory vs service vs provider" question.
What Mozilla (or a new browser startup) should do:
Enable a new type of "extension".
This extension is pre-approved and pre-checked for malware.
This extension lives on the Mozilla cdn and is only downloadable from there.
This extension is automatically installed on a site-specific basis with no user visible UI.
This extension is powerful enough to control the browser and make it resemble a native app.
When a user goes to the website it'll automatically just work just like the native app.
I think you're going too far in labeling a somewhat polemical title 'linkbait'. It's probably not going to damage discussion left as is and the anodyne replacement doesn't even convey the meaning of the original.
When we change titles we always try to use a representative phrase from the article itself if we can find one. In this case we found one. Of course we could have just reinserted the word 'web', but we've found that there's value in sticking to what an article literally says, and in this case a moderator stuck with the latter. Just one of those judgment calls.
You make a good point at https://news.ycombinator.com/item?id=14738404, though, so we'll put 'web' back in.