“strong feelings about the web”

so like… the web is a GUI framework. it’s insanely powerful when you use it as a GUI framework. it’s pretty intuitive and easy to use as a GUI framework. you can deploy pretty and functional documentation and elegant applications when you use the web as a GUI framework. it even has some interactivity built into it with javascript, so you can do some things without notifying the server. some things. when it’s appropriate.

the web offers amazing potential, but that potential is squandered, because:

  1. nobody thinks of the web as a GUI framework
  2. while the borders and gradients have changed, too many designers never actually learned anything from the 90s and 00s
  3. because it’s so darn easy to pick up and build a functional site with…lots of designers never learn how to design. anything. like they’ve never used an application or site and thought “this is great” or “this is annoying”, or they totally forgot everything they’ve ever done in their lives the minute it comes to building something for other people. and when their shit is broken, they can’t see it, because they built it, and they are blinded by love for this ugly monster they have assembled.

i am here to tell you to stop loving that ugly monster! learn to design! do something…go look for a news article (ugh) and then stop. can you actually see the article? of course not, it’s covered by a paywall. is that fun? do you like spending your time dodging paywalls? then maybe don’t put one on your site. now scroll down. that nav bar is trying its hardest to stick to the top of the screen but it just can’t really keep up. is that pretty? is that nice and helpful? then maybe don’t use a javascript-based approach to emulating a css feature that already exists. have you ever clicked one of those “chat with us now!” balls in the bottom corner? then don’t put one on your site. it’s in the way. it’s ugly. it’s a cry for help that you choose to ignore. don’t make the rest of us ignore it too.

now go check the weather on weather.com. i know, you can just google it, and that’s easier…why is it easier? well, if you go to weather.com, you’ll see why. where is the weather? those pictures of hurricanes on maps…are those the weather? no, those are ads. everything next to them is an ad too. and the sides are ads… and… wait. there’s no weather here? it’s all ads? why am i on this site?? that’s right, you don’t go there anymore, because google will tell you the weather without ads (the irony). if you have to ad-pad your site…do it tastefully. don’t pull a Weather Channel. don’t pull a news site. don’t mount the toilet paper behind the toilet. (seriously, what inspired that stroke of genius? did our parents have a third arm on their backs? will we have them too?)

oh, by the way, does your site need cookies? no, it probably doesn’t. like if you really think about it there’s a good chance it doesn’t. did you know that if you don’t use cookies then you don’t need to warn about cookies? did you know that users hate those stupid banners and pop-ups and dialogs? don’t you hate them too? then why not do what you can to avoid them?

does your page take 5 MB of resources to load? do you have a background video? do you have high-res images pretty much anywhere on your page? these are red flags! check out pagespeed.web.dev for help profiling your site’s performance. be honest about what your users actually need and want. they can’t see the text on top of that giant hi-res photo, and if you do the right thing by dimming it a bit, they can’t see all those pixels anyways…so shrink that thing. compress it to death. make it tiny! make it web-ful!

but i promised “numb disappointment in web developers”. nobody will read this page, or Jeff Huang’s awesome take on some related issues (coming from my site anyways) and actually internalize any of these lessons, probably. if you’re here because you know me, you either know better or share my disappointment already, and if you’re a stranger, well…gotta keep those analytics. gotta have that web store (maybe keep it to a subdomain to limit the scope of cookies?). gotta use the bootstrap and the jquery and the polyfills. gotta design the desktop experience without ever trying the site on a real phone. gotta get those background videos (seriously, wtf). the web is a big place and if you don’t out-SEO the joneses you will be murdered in your sleep!

insert a picture of a submarine bridge, with the badly-shopped caption “div, div, div!” don’t get me started on semantic html.