In my last article, I analyzed the trend toward big front-end technology, and I recommended that native programmers devote three minutes of their energy to learning big front-end technology. This article will take a closer look at this trend and give some advice for the front-end programmer (FE). Before we do that, let’s introduce the big front end.
The development of big front end technology has a long history, but the concept officially came to everyone’s attention in 2017, when some enterprises represented by Ele. me began to put forward the concept of big front end. In mid-2018, InfoQ hosted its first Global Big Front End Conference (GMTC), where it featured technologies such as front and back end separation, cross-platform and PWA. The event was significant as it heralds the advent of the big front end era.
What is the big front end? To put it bluntly, the big front end is the name for all the front ends. In the back end, the layer closest to the user is called the front end, such as Android, iOS, Web, Watch, etc. For enterprises, every time they launch a new product, they need to develop apps on several platforms, which is a waste of resources. From a cost-saving point of view, it is most valuable to use one person to develop an APP for multiple platforms. In summary, platforms, cross-platform technologies, and the surrounding ecosystem together make up the big front end.
Here’s my opinion: front-end programmers also need to spend three minutes learning the native stack.
After experiencing the separation of front and back end, the front-end technology has moved from Internet to mobile Internet. Now in addition to taobao jingdong and other e-commerce platforms also have a large number of PC website development, the rest of the PC website development is mostly to do operation platform, Web development has been more and more close to the mobile end.
In the Internet era, people can open the web pages of major enterprises through browser favorites and search engines, but in the era of mobile Internet, it is difficult to reach users on web pages, because users lack the habit of searching on mobile phones, which is also the reason why Baidu lags behind in the era of mobile Internet. The way to solve this problem is mobile phone APP, and micro channel small program, but a little bigger companies will not micro channel small program as their main entrance, so the mobile Internet or APP era.
The most promising cross-platform solutions are still ReactNative (Weex included) and Flutter. Flutter has just been preview now, and it has disadvantages in its dynamic aspect and cannot support H5. In my eyes, Flutter is more like a future solution, while ReactNative is the optimal solution at present, although it has many disadvantages.
As the big front end grows, what happens if ReactNative becomes more sophisticated and becomes a mainstream development model for companies? There is no doubt that JavaScript must be used for business development. However, due to the limitations of ReactNative itself, it is not enough to support complex UI, long list loading, native capability integrity, and reuse of existing third-party libraries, all of which need to be supported in a native way. This means that JavaScript alone can’t do it, you have to have some native programmers (Android and iOS).
The problem is that this stack improves the efficiency of r&d, so the company must “optimize people” to weed out programmers who can’t adapt to the new system and save labor costs. After all, that’s what companies embrace the big front end. So guess who’s going to get eliminated?
It must be native programmers who don’t know JavaScript and native FE.
In the big front-end era, the three ends have converged, and Android, iOS, and FE have become less distinct, so those who can’t adapt to the new situation will be eliminated. JavaScript itself has a certain level of complexity, but the JavaScript in ReactNative is just a subset of it, and the barrier to entry is so low that native programmers can pick it up quickly. Which begs the question: if the front-end programmer doesn’t know native, and the native programmer knows JavaScript, what kind of people will he or she fire as a leader? I’m sure we all know that.
So, the big front-end era is actually a fusion of Android, iOS and FE. It’s not to say that FE is replacing native, let alone that apps are dead, because the final APP runs on Android and iPhone.
My advice to everyone is: native programmers learn JavaScript, FE learn native technology
Especially for FE, we must not feel that we just sit back and enjoy the benefits. We must change our concept and take the initiative to learn native technology and cross-platform technology.
I know this article may be a little ahead of its time, because it is not an article about the present, but an article about the future. But I’m not talking nonsense. I’ve watched, studied and thought about it. What I want to say is that only when a trend can be understood by everyone, can you understand it. Then it’s too late. Only when most people can’t understand it, can you understand it and do it, can you get ahead of most people when the trend comes. Do you agree with me? Share this article with others in need by giving it a thumbs up.
The big front end destroys everything for native developers, but we should be happy