Why does zackbock say Facebook has made too many bets on the web version and will focus more on native applications in the future? -

Source: Internet
Author: User
Facebook's web version is based on HTML5 technology. What are the advantages and disadvantages of this technology and its prospects? Facebook's web version is based on HTML5 technology. What are the advantages and disadvantages of this technology and its prospects? Reply: I am engaged in SocialGame. The biggest problem that bothers us is the platform we want to access. Each platform has its own set of interfaces and has its own standards, every time we pick up a new platform, we have to make special customization for this platform, which takes a lot of time and effort.

One day, Google stood up and said, "I want to solve this problem. I provide a unified standard called OpenSocial, which can solve this problem, achieve cross-platform implementation, and reduce the dependence on the platform.

We are very happy, thought to find the solution, so began to study it, followed by Google's promotion, domestic Renren, http://51.com And other platforms, all support this interface scheme, but soon we found that this is not reliable, why? The platform uses its own unique interface to provide support for its unique functions.

Take New Things (homepage messages) as an example. Some platforms do not support new things, some support only text, some support text and images, some support text images and custom links, and some support multimedia.

To this end, we are faced with the choice of either least adaption, That is, assuming that the platform is not supported, so once and for all, I no longer care about what messy features you have. However, this is a big problem for operation, and we cannot make full use of the platform features. Either we have to implement different implementations for different platforms. The result is that we don't have to do the same thing, or even more, because we have to take care of the features of OpenSocial.

As a result, such a solution will eventually fail to stand the test of the market and be put aside.

Back to Html5, similar to what I said, it seems that it has a set of strict standards, but it does not hold the local implementation of different platforms, it seems to help us get lazy, however, it is difficult for our products to make full use of the features of that platform on a single platform.

Even more deeply, Html5 can be used to break away from the limitations of the store. Your store rules are no longer valid for me. This seems free, but you give up using platform resources at the same time, in this comparison, it is obviously irrational to give up platform resources unless you have powerful channels.

Moreover, Html5 is a perfect standard, which changes at any time, and its stability is not as good as that of the platform. In order to take into account this standard, my cost has not been reduced, but has increased.

So please tell me that when the pie you painted cannot be realized, I went out of the wolf nest and entered your tiger nest again. Why? Why should I go back to my wolf nest, well serve me the wolf. The question is a little big. Let's talk about it briefly.

Advantage,
As a Web company, Facebook already has a large number of HTML (5) talents. The HTML5 rendering application can effectively use existing human resources and technical accumulation, and the project is very simple, rapid progress.

In addition, for applications with complex typographical requirements, using HTML5 as a rendering engine is much more convenient and common than writing a set of native solutions.

HTML5 has another attractive feature: cross-platform support. It looks beautiful. You can build a Web App to handle all the platforms without learning so many programming languages.

Disadvantage,
People who have worked on cross-platform platforms know that a set of code is actually crazy (it is better for people playing games ).
A set of code can be used to handle applications on all platforms. Generally, it is not applicable to any platform.
The same is true for Web apps, such as optimizing machines with different resolutions and DPI.

Second, the current mainstream mobile browsers are still not fast enough to render HTML5 and execute Javascript. Even on Mobile Safari that supports Nitro Javascript Engine, the loaded js framework is slightly more important than the UIWebView that does not support Nitro. Therefore, performance is the biggest weakness of pure HTML5 applications, and poor performance applications cannot provide a good user experience.

In addition, although the HTML5 framework supports many new features, there are more and more APIs open to Web apps by Apple and mobile browsers, but native APIs will always support more, better, and faster. So in the near future, it is difficult or even impossible for HTML5 Web apps to achieve or exceed the effects of native apps in the same period.

Most of the time, HTML5 prototype is faster, but as demand increases, the effects to be achieved become more advanced and performance requirements become increasingly strict, the cost and technical requirements for HTML5 are much higher than those for native solutions.

Finally,
Each technology has its own limitations and advantages. If you can grasp the characteristics of each technology and use the appropriate technology to solve the appropriate problems, creating a Hybrid application is a good solution (fb is too heavy on HTML5 before, and I don't think this is what I described as the hybrid format ). Recently, I have also taken charge of an HTML5 product. Here I will analyze HTML5's mobile capabilities (suitable for product managers or developers)

I. HTML5 advantages
I think HTML5's advantages have already been widely used in the industry, for example:
  • Multiple platforms
  • Support local storage
  • Supports 3D graphics effects and 3D functions based on SVG, Canvas, WebGL, and CSS3
  • Supports multimedia playback on webpages, such as video and music.
In the process of project progress, we were pleasantly surprised to find that in addition to these capabilities circulating on the network, html5 also supports common web-side functions such as uploading images, compressing images, and even pulling images asynchronously. In addition, iOS6 supports smart banner and desktop web clip functions for web apps, so that web apps are more capable of downloading native apps and simulating native effects.

These capabilities are not known before the project starts. As a product manager, they focus more on functional features and interaction processes, however, in many cases, whether the function can be implemented depends on the HTML5 platform. This is also the meaning of "it just wasn' t there" mentioned by Zuckerberg.


Ii. HTML5 status quo
The outlook is indeed very good, but currently HTML5 does have many problems:
1. compatibility is very cumbersome. Multi-platform is actually a guise. multi-platform means that you need to adapt to a variety of mobile phone screen resolutions, a variety of different systems, a variety of mobile phone browsers. To be honest, android contributes no less to this than Internet Explorer on the computer.
2. Loading and rendering are not fast enough. Although this depends on the system performance, it is still much slower than the native of the same machine. If some pages contain complex logic, the screen will pop up.
3. Easy to miss. The thumb click area of the native application is generally larger than the actual click area, and the actual experience is also more comfortable. However, currently, the web can only control the touch area through css, and the experience is still unsatisfactory.
4. upload images. It is highly dependent on whether the system supports compression. if the system does not support compression, only the source image can be uploaded. If the source image is not transmitted through wifi, at least five seconds is needed.
5. Local Storage. Ft Chinese network is the most expressive of using this feature, but local storage is still dependent on the system itself, full of uncertainty and instability. If it is for mobile browser applications, it may be available.

3. HTML5 opportunities

The Comparison Between HTML5 and native was discussed on the Internet in the early days. For example:
HTML5 has a long-term advantage over native applications.
Who will win HTML5 and native mobile apps? _ CnBeta software NewS _ cnBeta. COM

However, I have always believed that such comparisons are meaningless and have no practical experience. They are often some so-called technical experts or edited articles that are favored by everyone.
In this case, HTML5 has never released its current energy. The criticized "performance" problem is the root cause of its inability to use it in a wide range. Just like Tian Ji's horse racing, you cannot use your weaknesses to compare them with others' strengths? Therefore, the combination of native and HTML5 is the most powerful weapon on mobile terminals. Unfortunately, no one at home and abroad can combine them correctly,
What everyone thinks is nothing more:
  • The native app shell contains a layer of HTML5 pages. In this way, in addition to some basic operation menus, other content is still HTML5 and must be updated, making people crazy ..
  • HTML5 directly simulates native apps. Same as above, access speed and traffic are bottlenecks.

I have been thinking about what kind of products can we take full advantage of HTML5 and native? What kind of user tends to be web? In what scenarios will web applications be more suitable? What product features can be updated quickly without updating the client?

These questions are actually the answer. Here we use the character method to analyze the process of thinking:
1. Users: users who are very concerned about mobile traffic and are impatient to wait for slow mobile phone pages. They always use mobile phones during moving or fragment time.
-Therefore, native products that are directly "in touch" with users can ensure stability and smoothness.
2. Third-party developers: They need open interfaces provided by the platform to meet their own needs as much as possible, spread their own products in the community, or attract more users to purchase and make profits.
3. Platform: the platform here is the main developer of the mobile phone software. HTML5 can be used for updates that are frequently required but are infrequently accessed by users. It is suitable for third-party developers to customize the capabilities they want.



Summary:
HTML5 represents the future of mobile web. What is best for it is not necessarily to use it for an independent application, but to find the most suitable point to use. The growth rate of html5 will go further with the improvement of the network environment and mobile phone hardware.

Reference Mark Zuckerberg: "One of the things that's interesting is we actually have more people on a daily basis using mobile Web Facebook than we have using our iOS or Android apps combined. so mobile Web is a big thing for us. "So far, any cross-platform is a lie. The platform has its unique characteristics. Without the unique characteristics of these platforms, there will be no charm of this platform to be abandoned. The first question I have answered is that HTML5 is used to meet app application requirements. "it just wasn' t there "... the direct meaning is not that HTML5 is not mature, but that it cannot be satisfied ".
Second, what are the advantages and disadvantages of HTML5 in application development? I personally think it is not a matter of advantages and disadvantages, but to determine when HTML5 is suitable for application development? HTML5 is not the abbreviation of native application development Language 5, or HyperText Markup Language 5. It is not designed for native applications, or even for web applications (it also requires JS help at least ). Our team has developed many iOS and Android products and more than 10 products in the Apple store. Our experience is that if the content is closer to newspapers, books, articles, and webpages, it is better to use the HTML framework to present the main content. However, if there are many interactive functions, such as SNS and quotation charts, we use the native application framework. Many applications use different proportions. This is too one-sided. In actual situations, development speed is often taken into account, rather than quality. Cross-platform is not to say that one line of code is not modified, but that code is reused to a greater extent. I'm curious about the extreme performance of your applications, which makes html5 obviously slow. As a matter of fact, I think everyone's problem is that na is opposed to html, but they are actually complementary. The better the compatibility, the worse the technical performance. The worse the compatibility, the stronger the technical performance.
Using html5 for web app animation on Android is not smooth, and the interaction rules are different from those of native apps (especially android back ), many advanced features cannot be expanded. cross-platform features are a bit nonsense. When HTML5 is not mature, it is still relatively reliable for native to have a better experience and occupy the market faster.
I feel that HTML5 cross-platform platforms must be compromised and the incompatible features must be abandoned. Just like pipeline jobs, native is more like elaborate. Currently, HTML5 products cannot meet user needs.
Looking back at the history of PC, it is interesting that it was originally a C/S structure. Later, the network environment and the speed of the machine gradually moved to the B/S structure.
The Mobile world is also following this trend. What's interesting is that Xiao ZHA's reflection is that he is moving too fast. The current Mobile application environment may still be App-oriented in the early stage. That is, the C/S structure in the early PC era.
In the long term, the trend toward the B/S structure will certainly not change. But Xiao Zha is a little ahead of schedule. This is the speech of Xiao za. Of course, it is a big event that FB fully embraces mobile.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.