Ask HN: Modern day frameworks are cumbersome

Hey HNers, I am a full stack developer(.NET,PHP,Plain vanilla JS,CSS) who is looking to expand the skill set particularly in frameworks area.

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.

10 points | by confusedsoul 1867 days ago

7 comments

  • gtsteve 1867 days ago
    It depends on your use-case. If you're building a static HTML administration UI and the only real UI code you need to write is a "select all" checkbox for a list of items, then porting that UI to React is 100% overkill. If you're building an e-mail client, then definitely not; you need something to handle the complexity.

    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.

  • jaabe 1866 days ago
    How can you be unemployable if you know php or .net? If you look up job postings for plain software development in Denmark right now, 35% of it is JAVA, 35% of it is C# and 15% of it is PHP while the remaining 15% is split between every other stack.

    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!

  • cjwillcock 1867 days ago
    Those frameworks introduce a necessary complexity when used to solve the right problem. Generally, when the necessity is to solve the human problem of building with diverse and disparate systems, not the technology problem of semantic interoperability amongst the systems.

    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.

  • codemusings 1867 days ago
    I'm going to be honest with you. I think you're biased. Frontend development is complex. Not only because of the technologies involved but also because of what's possible these days in the browser (local storage, web sockets, web components, etc.). Server side rendering with PHP or .NET will only get you so far. Which btw. is also totally possible with React and Angular.

    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.

  • saluki 1866 days ago
    First if you are a full stack developer with experience with (those) you would definitely be employable. So I wouldn't worry.

    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.

  • seanwilson 1867 days ago
    > I am practically unemployable if I lose my job in which I am good at since I do not know these frameworks.

    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.