So.... this is going to be a bit ranty. I will probably get sidetracked a lot. I am also not blakeyrat, so don't hold me to unachievable standards. Thanks in advance.
So, it has been a while since I developed things on the webs and the web has changed quite a lot since then. I usually coded websites for fun, not for money so I never felt the need to keep up with current trends and fads. I liked coding Javascript by hand, too. JQuery is really cool but I loved to discover how things worked one layer below. So here are some things about current web-design that I cannot understand.
Disclaimer: I will use Discourse as an example because it is very much a up-to-date web"app". This is not a Discourse-hate-thread...sorry
1.) Links that are not really links
Sometimes browsers add new features to their repertoir. Sometimes they fail, sometimes they are pretty amazing. Tabs for example are (imo) a really cool idea. Not sure what I think about tabs that open a new process and clog up my Taskmanager (looking at you Chrome and Opera) but hell, I can see the advantages of that and ultimately deal with it.
So, now that tabs are a thing, they integrated into my workflow. I like opening certain links in a new tab. Not only does it open the new content seperated from the old one, it also preserves the state of the old tab for me to switch back to without reloading (ala back-button).
At the end of my webprogramming-phase the W3C or whoever decides things like this felt the need to deprecate target="_blank" from links. I personally think that was really stupid because as the designer of a website there are links I want people to open outside of the current context but I am just a guy.... maybe there is some amazing thought behind that.
What resulted from that were some Javascript-workarounds at first. Better tell Javascript to open things in a new tab and return a false so browsers don't accidentally open the page on both tabs, etc. I found these scripts to be really hacky. "Hey Browser, I am going to open this tab in a new window so please don't do your job of activating this link, kthxbye" should really be a last resort.
What followed were even more Javascript beauties. "Hey, why not use Ajax for the whole site, gather the content this way and ignore the whole browser loads content to begin with?" Why not? Because it gives me, the user no advantage. It just screws things up even more. Want to open a link in a new tab? Sorry, this is an Ajax-Link. No Content for you, son.
See, I know there are programmers who actually enabled opening in new tabs by Ctrl+Click (or middleclick or menu -> open in new tab) and it worked (I know youtube actually had to add that to their channel-system after it was revised once.... because people flipped out) and that is cool and all. But There are a lot of websites that don't. And some, that sometimes do.
Here comes Discourse. A challenge for you guys (assuming you are on the desktop version): click on the burger-menu-thing, hold ctrl, click on "badges", see as a new site pops up in a new tab.
This is good, this is what I wanted.
Repeat the steps but this time click on "keyboard shortcuts". See how another tab opened that is the same as this one? No keyboard shortcuts, you say. Oh boy....
This is my problem. The whole thing where everything is an app and Javascript has to step in to save the day but not really makes navigating the web really weird.
I know why "keyboard shortcuts" doesn't work the way "badges" does. I know it now, after trying it. And because I like to assume I understand the basics of how these things work. But it is confusing, stupid and should not really take my time.
2.) Everything is an app
I hinted at it in the previous wall of text. Why does everything try to look different from a website now? Some people did it. For some people it made sense. Why does Discourse do it? Because it's new and fancy and everybody does it and therfor everybody is the same in being different.
I kind of get it. You get the tools. You learn HTML, CSS, Javascript and some backend-language like PHP or RoR or whatever and now you want to do something new and amazing... Except it's not new, it's not amazing and it certainly does not help people navigating your mess of a site.
Things are apparently not allowed to not have at least 3 Javascript-dropdown-menus that break every 5 minutes. Scrolling has to change the header on Discourse to the title. Infinitescroll has been bashed a lot on this site, so I don't need to do it again but I am going to say: while it does bring some good things it also breaks at least just as many.
3.) Everything (that is not an app) is obviously a phone!
Hey guys, did you know smartphones exist and are a thing and you can even look at websites on them. They even have decent resolution on them so clearly we should serve a custom interface for it.
I like that thought. Yes, phones are a thing and yes, you should change your approach towards the userbase that uses a smartphone to look at your site. It's just that... only changing the design doesn't help much.
See, I have a bad cellphone-plan. I have slow internet. I actually only have 30 MB of reasonably fast internet / month. and I am fine with that. I would freaking appreciate it, if websites not only changed their design but try to improve loadingtimes, too, though. I know Discourse tries by only loading GIANT amounts of a topic on desktops.
And thats cool... except it still takes ~3-5 minutes to load the damn thing. (and yes, my phone-internet is TRWTF, thanks for asking).
Some old shitty website I built back in the days takes 5 seconds. I tested it just now. I had never opened it with this phone before. Well... it is still loading some images for the background but I can freaking DO things. It also does NOT have a web-interface. It is loading the freaking desktop site just fine.
Discourse on the other hand is still loading. Well...since I didn't touch my phone it went into standby.
Also worth noting is that pressing the refresh on android-phone does in fact not refresh the site but gives me back the site I had before (same topics and notifications). Took me a while before I figured that out. Still confusing. I am not sure who is at fault here.... freaking phones these days...
Addendum: Oh since I am on the topic.... combining the last 2 things. I hate that Discourse Ajax-loads shit on my phone. I can never tell if I missclicked or it is just loading things (and I don't mean scrolling down because swiping gives me a feedback AND there is the "loading" bar.
What I mean is for example clicking on the header to go back to the main-forum-page. I don't get a loading bar, there is NOTHING indicating that I am now going back to the mainpage. And it still takes 5 minutes so I can never be sure.... Seriously, that frustrates me!
So here are my thoughts on some (3) things I really don't feel about this "new web"-thing. And I don't want to sound like some kind of old guy saying "everything was better when I was younger and also things should never change" but to me it feels like these are things that should be the primary focus...
1.) Have links behave somewhat consitently and please let me open new things in new tabs if I so desire, thanks.
2.) Why you need to make your website flash and pop and dance the whole time is beyond me. Some parts, maybe... the whole thing? Thanks no!
3.) If I surf mobile and you offer me a mobile view, please make sure to not only change the design but also maybe give me a smaller version so I have a chance to fucking view the damn website....
I am not too sure why I even wrote this rant. It started with me Ctrl-clicking on "keyboard shortcuts". I am also pretty sure I could go on but now I am tired and all out of rant-juice or whatever it is that keeps ranting people from just falling apart.
Not too sure what category this is. There is no "Rant"-category so General has to do.
I am pretty sure half of the statements in this wall of text don't even make sense. I just wrote what came to mind. Feel free to point out my stupidity. You can also add your own thoughts about this. OR you could derail this topic and talk about kittens. I don't even care
Filed Under: tired