I feel Most of the UI technologies/Backed frameworks are focused on making things complex. Most of them are OOP on steroids and is overkill to solve real world problems.
I am feeling this in spite being from Enterprise software world which is known to introduce unnecessary complexity and humongous code base.
This feeling/bias has made me reluctant to learn frameworks like react,angular etc and not to mention the various NodeJS frameworks which requires you to learn many things to achieve simple basic stuffs which you can do via PHP, .NET etc
Am I wrong in thinking these are overkill and not required in most case or I am just biased against it .
I am practically unemployable if I lose my job in which I am good at since I do not know these frameworks.
Please let me know your thoughts on the new frameworks out there.
My app has both of the above in it, simple admin/maintenance UIs in static HTML and a ~75k line React/Redux/Typescript application for the client-facing work with nice animations and professionally designed custom icons and so on. The client-facing application could not be done without a framework of some kind; it is just too big.
The problem is that most tutorials and documentation focus on really simple use-cases like building a to-do list and so on. You end up with tons of setup code for actually a really simple thing that you could achieve in 5 minutes with DOM manipulation. If you can't imagine how this is useful for something more complex then you probably haven't worked on a UI complicated enough to need it.
I don't think it makes you unemployable to not know these frameworks but as a full stack developer you really ought to at least understand the problems they solve. Try building a webmail client with JQuery and you'll see what I mean.
I work in the public sector and we operate more than 300 different IT systems, which means I get to see a lot of different tech stacks. None of them run a backend build on Node. This will probably change going forward, but right now it’s mainly JAVA or C#.
I think you’re biased toward frontend development, it used to be unimportant and now it’s not. I’d go as far as to say that if you can’t do modern frontend development, then you’re just not a full stack web-developer, but unemployable? In what world do you live where C# or PHP makes you unemployable?
I get the FOMO though, especially if you spend a lot of time here on HN. I think a better approach is to ask yourself what you want to work with, so you even want to learn and work with angular/react/Vue? If not, then why bother? Chances are that none of those frameworks will even be around in 10 years. I know people who wanted to work with python, even though it’s not a popular choice in Denmark, who now work with Python. We’re software developers, the world needs a 100 more of you, so you’re free to work with what you want. Enjoy that!
The stack gets bigger as we look closer. Eventually it's less to learn a framework, than to learn the stack.
On the latter technology problem of semantic interoperability, the more frameworks the more complexity. Nothing I have until now or am likely to on work in future will be, as a coder, within a team of sufficient size or towards a deliverable of sufficient complexity, that the frameworks are the less-complex option. This is the reason I do not currently see any value in pursuing a working knowledge of most of those. I like to work in detail throughout the stack.
On the former, human problem of building with disparate systems, the more junior and inexperienced the team members the greater the bulk of work which may be considered 'diverse and disparate'. Thereafter the more early-career adopters of the large frameworks. This gives us delays in the development of tradecraft, though perhaps not the development of the short-term reward of monetary compensation. This aspect makes me a little sad about the whole thing, but I know that some diligence and practice with whatever will go a long way. They'll find the way lower down the stack eventually.
I am a little long-in-the-tooth at twenty years into a devops career. I choose to work the same issues of human complexity that give rise to the utility of the mentioned frameworks, without the specific need to become adept with the frameworks themselves, by developing skills as a guide and teacher of the trade in general. The biggest challenge I have and continue to deal with, is seeing the beauty of some of these frameworks that I don't wish to personally use, for various reasons.
That being said you're right in that the setup of frontend development can feel like overkill for smaller scoped projects. Unfortunately there seems to be barely any middleground.
Personally I find e.g. TypeScript and Angular to be a delight in contrast to what was hacked together with Vanilla JavaScript back in the day.
Since you use PHP and are mentioning frameworks, check out the Laravel framework. It's rails like and has a great community.
So I would recommend looking at learning Laravel, check out Vue js too.
Laracasts.com is a great place to start.
Spend a week doing tutorials on one then add it to your resume. It doesn't take long to get productive in any of them or understand the core patterns behind them.
I wouldn't be so quick to judge when you're not familiar with them either.