7

My company just went through a merger and as a result my small team has been expanded. From our side we have been using React for several years, and I firmly believe for us it is the superior choice in every way to Angular, which they use historically. We both have our own templates which have been developed over the last few years for various common projects.

Given that the end product of both can be made to look and function almost identically, is it advisable to let both developers use whichever they are most comfortable for new projects? In my head if everyone sticks to some predefined style and data protocols, end users won't know the difference, and everyone is happy.

As an additionally complexity, if we do take this approach, should new junior devs be pushed either way to try and push towards a majority framework?

  • Are you merging a team or is your team absorbing the other team? – Pieter B Jul 12 '19 at 13:09
7

Such consolidation is best done when technical heads are moved around. Then active comparison can be made to different tech stacks. Developing consists partly of incomprehensive ritual dances in the code. People must get the chance to try anouther approach on green ground.

If you start too early to consolidate, you'll spend much additional effort for less quality giving a bad taste to the developers.

Consider a hybrid solution of two parallel systems allowing a more relaxed transition, and try out copying a function in the other technology, with a small mixed team.

  • 1
    You might want to take this as an opportunity to learn new stuff. Organize a workshop, let each previously separate team present their favorite tool to the other side, then let each team do a short talk about what they consider cool and desirable in the other team's tool. Later on, when a tool needs to be selected for a new project, everybody will have better overall knowledge and decision criteria. – Hans-Martin Mosner Jul 13 '19 at 18:30
4

If the question was about operating systems, you would have the same issue. That is, if one group used Linux and the other FreeBSD, how do you decide?

The problem occurs because it's not grounded in fundamentals. Instead, it is based on the whims of product preference. If the software was written in house and became the core of the business, then it's based on fundamental computer science and personal preference--and choice altogether--is eliminated.

  • 1
    This was posted as an answer but I don't see it giving any answers. More like a rant. – ivan_pozdeev Jul 12 '19 at 17:36
  • @ivan_pozdeev You may have a point. The question asked about letting devs choose which product they want to use and I maybe went on a tangent--not a rant-- that the problem is product preference rather than technical decisions. I point out that it would be better to develop their own software in house but, at this late stage, that may be unfeasible. If it was developed in-house in the first place, though, it would be a decision that would not have to be made now--which, I guess, continues my tangential point. Since they are switching teams, perhaps it's the time to consider writing their own. – Rob Jul 12 '19 at 17:47
  • If every software development decision could be made based on scientific method and peer-reviewed studies, I would agree with you. But that's not how software development works. Software is written by people, not processes, and thus the vast majority of (good) decisions in our field are made pragmatically, not scientifically. – Robert Harvey Jul 12 '19 at 19:26
  • @RobertHarvey Do not be confused by my reference to "computer science". My intent is to say that too many programmers are grabbing off-the-shelf solutions when they could--and often should--write their own software. Then it is under your control. It's contents are known. It changes when you want it to change. And every programmer knows how to write code for it (meaning, all JavaScript programmers can immediately start on your JavaScript program but not all Angular programmers can immediately start working on your React program). – Rob Jul 12 '19 at 19:41
0

The debate over which framework is the best is just too opinion-based and won't lead to anywhere.

What you could is to try to weight it more objectively. For that you could look on funcitonnality that provide the framework but also for what exists around the framework and what you need.

Note that I know only Angular, I will here provide some sample of questions that are just to give you an example of what you could analyse to help the decision to be made :

  • Angular Material provide everything you need in components simple way while there is more work around to dependencies for React ? +1 for Angular.
  • You need a library to draw some specifics charts and some libraries in Angular only provide you a part of it and you'll need some specific development for the other one while you have a library that handle everything in React ? +1 for React.
  • The routing system of Angular, with multiple outlet have some great interest for your needs and React have nothing that is better for it (I absolutely don't know if it is true or not) +1 for Angular.
  • The template of front-end for one team seems to be able to handle for the very start more what you technically need +1 for that team.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.