What do you think, in IT, used to be easy, but is now difficult?
Nowadays, Windows reboots on you at the most inopportune moment. Updates often change the look and feel of the system. Drivers break in unexpected ways. Even if you use the clean image, Windows automatically installs manufacturer bloatware, see Waves Max Audio Pro for example. Even something as simple as sleep mode works much less reliably than it used to, a lot of laptops, especially Dell laptops, wake up randomly, and there's not much you can do about it. You need a Microsoft Account to even install the damn thing. If you can't use one because of age restrictions, lack of internet connectivity, living in a country on the embargo list or for whatever other reason, you're screwed. Your home folder will be named after your first name. If your first name contains diacritics, some old software is going to crash in weird ways and there's not much you can do about it. If there's a file that Windows Defender doesn't like, it's going to be nuked. Even backups don't help, if you plug in the drive. with your backups, Defender is going to delete that file from there too. Not to mention all the telemetry, advertising and other shady stuff Microsoft is doing these days. I've been an avid Windows user for years, but it has gotten so bad I just had to switch to something more sane. If I feel more in control of my computer on a Mac than I do on a PC, there's definitely something wrong.
The tools and resources (codepen, stackoverflow, youtube, etc) are 100x better and more numerous, but many of those tools also make for much longer toolchains, which add complexity, as do all modern frameworks, on top of expectations of what a website is, so the learning curve and total cruft to get started is significantly higher.
The sheer number of terms you will be introduced to is much higher. Imagine a brand new person who wants to learn JS and all the terms they will encounter in the first month of searching around: React, Vue, GraphQL, MongoDB, Node, npm, Apollo, Typescript, Babel, Eslint, Grunt, Gulp, git, SCSS, Sass, tailwind, etc. How many of these do they really need to know? What decisions do they need to make about them, if any? (eg react or svelte). Not only are there are lot of terms, but its not obvious to a total newcomer which of them are actually relevant to front-end development and which are not. It's obvious to us, but only because we are steeped in it already. So a mentor seems more essential than ever before.
By comparison, in the Geocities era, getting introduced to things and feeling your way around making changes to a site felt much less complicated. And for frameworks/tools they would learn about jQuery, and maybe Wordpress, and that's pretty much the only such terms they'd come across. So it at least looks a lot more daunting than 2005. I think this is somewhat unfortunate, and we might be scaring away good would-be programmers.
On the other hand, "Accept all cookies" makes it go away in one click though lol.
On mobile it becomes ten times as worse
Netflix used to offer a comprehensive library and unlimited watching sessions for a reasonable price and a single subscription, now you should be subscribed to 4 different streaming services just to watch content from the main producers, not even all content. Torrents are back.
Seeing as its my entire job, I have no problem getting all kinds of web applications setup and running on all kinds of platforms. But I was recently trying to help a friend with their web hosting. They were used to the old school style host where you just get a directory you can (S)FTP files into. All the systems administration is taken care of for you. You can setup some SQL databases via a Web UI if necessary. Something like mod_php is already going. It really holds your hand through dealing with other things like DNS.
Nowadays those old style kinds of hosts still exist, but there are less of them, and they mostly suck. They charge too much money and impose too many limitations. The problem is that all the amazing options we have today like cloud hosts (AWS, Azure), VPC (Linode, Digital Ocean), PaaS (Heroku), Saas(Wordpress.com, Shopfiy), and hosting your own servers all require more technical expertise and/or more money than that old school style of web host.
There’s just so much choice and variety out there. Even if you pick one of the big three (React/Vue/Angular) there are sub-frameworks and it’s easy to get analysis paralysis.
Getting started in programming is a much bigger step compared to turning on your 8-bit computer and having its BASIC prompt right there, constantly inviting you to explore beyond typing load “cool game” followed by run.
As an example, back around Y2K there was a website called mp3 dot com. Pretty much every reasonably good musician who uploaded their music managed to get a really good following.
Nowadays if you want a following, your sound and video quality has to be flawless, and if you don't post a high volume of flawless media, you lose any audience you might have been lucky enough to attract.
There are just so many options that any given content producer is easily forgotten.
Cross-platform desktop apps: Eclipse/Netbeans RCP, Flutter, Qt? At least with Win32/64 it used to be roughly a single proprietary target, now there's multiple desktop, mobile, and web targets.
Now:
- Oh it's UTF, how many bytes, decode to find the glyph
- find a font with it in
- render it somewhere
- gets composited
- and antialiased
- or was it an emoji and needs multiple colours?
How trivial was to make a simple CGI taking input as it were without ever worrying about escape characters, codification, SQL injections, XSS and so on.
Everything previous to a (security) arms race looks so easy, intuitive and simple.
Was no problem up until the 90ies (in germany).