I've also felt the pain you are talking about here. The reality is that the landscape has changed since the hayday of developing simple HTML/CSS/JS websites. As developers we need to be willing to go along with constantly learning new techniques to make our development practices better.
In huge enterprises, building a website with simple HTML/CSS/JS can't is not a scalable approach to maintaining websites. With that being said, we are seeing innovation because it had to happen in order for us to be able to scale our development efforts and be swift at developing more functionality.
With that being said, there is nothing stopping you from developing websites using the techniques of yesterday. If you feel comfortable with doing it that way, there is nothing wrong with that approach.
I agree that being a Web Developer implies being permanently learning, but suggesting a more simpler web doesn’t mean using the techniques of yesterday. You can apply modern techniques without having to use heavy/overcomplicated frameworks, libraries, or plugins.
Exactly! I'm not talking about learning new techniques, that's one of the things I love about web development. But using all the new tools because of wrong reasons, that's my problem.
Especially in enterprise and long term support solutions where you need to pay special attention to every detail, would you just add every new package you could think of? I think not.
I agree with you.
Those are fancy tools, yes, helps a lot in some cases, but not always.
BTW , ColdFusion, nice language and you are old like me !!!
Exactly my point, thank you.
I'm saying Wordpress as an example because is one of the most common, but could be Laravel or any other Node o JS framework.
Yup, you need to write down project requirements and weigh how much value each dependency brings in or takes away. Those may look like minor details at the beginning, but they multiply exponentially.
I used to resist learning new tech in the web space some years ago. I thought it was all too complex for no reason. Then one day I realized how wrong I was.
There are problems with the state of JS, but there are a lot of conveniences as well. You don’t need to install every library to create an application, but if you’re making something that is scalable and easily maintainable, there are systems that help with that.
Also, deploying here from the days of FTP to what we have now is vastly superior in every level in my opinion because we can have things do the work for us.
Like I said, it's not about learning anything new, it's about all those dependencies people keep adding without too much thought. Whenever there is something that needs to be fixed, or new feature added, first thing everybody says is "There's an plugin/library/package for that!". Nobody stops to think what exactly is being added, or how it works, will it bring some new problems, or is it the best solution in general. Maybe you can solve it with vanilla code, maybe you can't, but nobody even thinks about that.
The problem is not that the technical landscape has more tools and more technologies, it's that these technologies are way too visible.
There was a time when washing machines were simple, you had a bucket and some soap and your clothes. Everything about that could be instantly understood.
Later this evolved into these mechanical monstrosities that were really difficult to use effectively, and dangerous if used wrong. Electrocution was just one fo the many risks! There was an art to using these machines, a level of skill involved that made for quite a learning curve when getting started.
Then someone came up with a way of packaging all that up into an appliance that's simple and safe to use. There's electronics, software, electric motors and tons of other advancements all packed into a metal box that you put your clothes into, add some detergent, push a button, and they come out clean.
As an industry we need to think about "applianceizing" our technologies so that people can benefit from them without having to be directly exposed to them.
I like the analogy, thank you for that.
I think that's exactly what's happening right now. Awesome people come up with all these cool things and show us how technology can be used. What's the problem is that those cool things become popular really fast and all without proper testing or even proper implementation. We just add it to our build file and stop thinking about it.
Like I said before, I'm not against using new tech, but we shouldn't be in a hurry to use it as well. Rather stop and think about it for a moment.
I'm with you. Totally. I see the size of my node_modules folder and cry. Kids these days is the only thing they know and it doesn't help. And what about ports? It's crazy. All is about opened ports... My dear Lord!
I'm working on it. Standard Web Components + ES are the way forward but it's still a new area. If you'd like to get involved check out.
Yes, I've been reading on web components and I agree they are the solution to at least a part of the problems we're having today. Great work!
I share your view. I'm wondering if we didn't go overboard! Example: Hugo, that thing is so complicated!! And it's for static pages, but you have to open 36 files to see how your page will get built, crazy. It's a tool written in go, with toml config, working on markdown to generate html...
Yep, I get that feeling too... I think a very good and promising compromise that stays as close as possible to vanilla is svelte.js ( svelte.dev/ )
One of the things I learned is that we shouldn't get excited too easily. I've seen Svelte and it's awesome, but that's also what people said about Angular when it was first released :)
Great article! I'm surrounded by co-op students and all of them are solving problems by adding all kind of JS plugin into our projects.
Are you me? These are my thoughts exactly on this subject. Great article
Glad to hear I'm not the only one, thank you!
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.