-4

My company just started a new production management software by using serial communication to scales. My company has already developed the software using VB6 in 2006 and keep using that outdated system until now.

The new software will be a centralized management software using local server, and planned to use Node.js (Express) and React for frontend. As for the serial communication, the scale will be connected to a subserver in each client and connected to the client's browser via socket.io

I want to ask, how fast the Node + Express + React + Socket io compared to VB6? Just imagine if all the node, express etc is running on the same computer. Or is there any article/data that compare both technology?

Or perhaps I should do the test and benchmark myself? But considering both technology are so different, what parameters should I compare? I really need an expert opinion.

8
  • 4
    You should do the test and benchmark yourself. Choose the parameters that are most useful to you. Mar 26, 2018 at 5:22
  • Why NodeJS? Why React? Why event-driven development? Answer this question and you will find out the "parameters" to measure and test. Picking the proper stack is not a matter of "fashion". It's a matter of adequacy. Whatever makes your new stack "adequate" is what you should measure in order to confirm the choice.
    – Laiv
    Mar 26, 2018 at 7:21
  • Thanks @Laiv for the enlightment, i'll try to benchmark both in a few days, as for why react and node, that's because it feels faster to write in the same language for one system, and node.js is faster (in rest api) compared to PHP which was planned and cancelled. I choose react because i need many thing to be updated in realtime and not yet familiar with vue.js, so react it is.
    – Exairie
    Mar 26, 2018 at 16:11
  • May I ask why you’ve chosen web technologies to build software that interacts with external hardware? Why not use desktop tech like WPF?
    – RubberDuck
    Apr 15, 2018 at 12:30
  • @RubberDuck because of virus. I have so many experience with the same kind of client, their computer is flooded with virus. So the last option is Java but the thing is, you need to distribute the jar file, and the owner said "it's confusing". Then web technology is the only option. Keep in mind that this "client" is not a tech friendly guy who prefers paper above screen, it's really hard to make them understand :(
    – Exairie
    Apr 16, 2018 at 2:02

1 Answer 1

0

So it's been a while and finally I'm able to write this. Comparing VB6 to web technology is like comparing a fruit to vegetables, fruit is sweet and instantly edible but vegetables will be yummy if you cook them first. The thing is about these two technologies, is that one is relatively slow, synchronous, old and prone of errors (instant shutdown if there is an error) vs fast, asynchronous, new and prone of bugs due to dynamic programming. I do not have a number to prove some benchmark but I'm sure of this:

  1. It's hard to write a clean code with vb6 while in react, you can rely on state changes. One state to rule everything
  2. Thus, writing JavaScript is a lot faster than writing vb6
  3. When processing a lot of background data, vb6 will freeze the client computer, react will freeze the server, yes it's server side processing. But this makes the UX better in react
  4. Populating data is faster in react, due to asynchronous nature
  5. App startup is a lot faster with vb6, but if the database server is offline, vb6 app will freeze until it shows some error. A not responding app is never a good UX. In react, none of this happened
  6. When it comes to data processing, you can easily manipulate it with JavaScript, unlike the old vb6 which don't have so many features and plugins. This is really useful especially when I'm dealing with scale output.
  7. Support. You know what I mean
  8. Compatibility
  9. The UI. This is incomparable though, but still worth to note

Again, I'm talking about performance but this fact is rather subjective. But I should say, the processing and whatever kind of data processing is about the same, vb6 with its simplicity and react with its asynchronous nature, equals. But then you have a better UX and a lot more responsive app in react than in vb6.

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