開源日報 每天推薦一個 GitHub 優質開源項目和一篇精選英文科技或編程文章原文,堅持閱讀《開源日報》,保持每日學習的好習慣。
今日推薦開源項目:《文件管理 Files》
今日推薦英文原文:《R.I.P., Flash. You Will Not Be Forgotten》

今日推薦開源項目:《文件管理 Files》傳送門:項目鏈接
推薦理由:Files 是一個文件管理器,重視可擴展性和代碼模塊化,有著流暢的設計和API。目前的重點在於與 Windows 文件管理對應的關鍵功能,之後會逐漸添加各種功能。
今日推薦英文原文:《R.I.P., Flash. You Will Not Be Forgotten》作者:Arek Jaworski
原文鏈接:https://medium.com/better-programming/r-i-p-flash-youll-be-not-forgotten-3d11beae7a6b
推薦理由:flash 的時代過去了。

R.I.P., Flash. You Will Not Be Forgotten

Celebrating a fundamental web technology that kicked off many careers and was retired at the end of 2020

Google Chrome removed the Adobe Flash plugin completely at the end of 2020. This marks the end of an era. The era dominated by one proprietary software that for many years defined how the internet looked. Many promised, only Flash delivered.

What Is Flash?

Or better question: What was Flash, and how did it shape and dominate computer entertainment and the early internet industry while being a proprietary product?

Let』s move back in time to the turn of the century. It』s the end of the 90s; Microsoft released MS Windows 98, and the browser war is on the rise. There is no Chrome yet — wait a minute, there is no Google yet! Microsoft isn』t the cool company. Actually, it』s quite the opposite: Micro$oft is trying to dominate the market — a bully abusing its power and kicking out all competition out of its way. Do you remember Netscape? R.I.P. There are no smartphones, no iPhone…

Yet, there is the internet. Still young; still quite intact. However, with competing web browsers, there is a bit of a compatibility problem. W3C consortium has its own standards that M$ just doesn』t really want to follow. In fact, you could say Internet Explorer defined its own de facto standard. There was a problem many tried to solve.

Maybe it wasn』t the end of the world yet. Websites did look differently depending on users』 screen resolution — and especially, web browser used. However, we could see some trends and simple mitigations. As long as your website matched most popular resolutions and a few web browsers (cross website testing — that was a popular term) you could live with these inaccuracies.

A New Player Arrives

Out of the blue appeared Flash — technology first developed for animations. Flash quickly gained popularity and basically solved the problem. Users could have different browsers but as long they had a Flash plugin — Flash content looked the same, and let』s be honest — it looked awesome. Especially if you compared it to awful technologies at the time — like Java applets. Yuck.

As already mentioned, Flash was initially a product for developing animations. However, it allowed scripting, too, and that made it quite powerful. You could design and develop really good looking interactive animations, but also applications, web components and games. In fact, some websites were purely Flash-based. Basically, you opened any browser with a Flash plugin and the HTML page was just a placeholder for Flash content.

Flash was so popular that when you installed a web browser, the first thing you did straight afterward was download and install the plugin. Flash was basically installed on around 99% of all web browsers in the World. Let』s just note that before HTML5, Flash also dominated video streaming. Of course, there were other video formats, but basically, Flash did it right and did it so good that YouTube was based on Flash Video! Even after Google bought over YouTube, HTML5 didn』t provide what it promised for a long time. It took some time before YouTube was finally able to let go of Flash.

The Good, The Bad, The Ugly

If Flash was so good, what exactly happened to it? Well, Flash did find and solve a lot of problems initially. Moreover, it was a proprietary product and other companies did not like this. Microsoft released its own product — Silverlight — which failed miserably., and HTML5 promised a lot, but it took forever to mature and become a replacement for Flash.

What else was there available? Java. These Java applets took forever to load, and they were slow and ugly — the UI of the buttons — my eyes! Obviously, there was a lot of hype (and still is) around Java. It was supposed to be as fast as C++ but never got near.

Self-proclaimed IT pros were making jokes about Flash and how they were using enterprise Java to solve real problems — yet that was never a threat to Flash.

There is also JavaScript — a scripting language used in the 90s primarily for making text float from left to right. Later on, a few JS libraries started to be popular and were used to solve cross-browser compatibility issues too. But you could do this faster and better with Flash. Maybe that』s a bit of an exaggerated statement, so let』s just agree you could do it differently — and both solutions lived quite happily side by side and were used to solve different issues.

One of the biggest issues with Flash at that time was that it became Web 2.0 before the term was coined. Flash content was hard to index; thus, Google didn』t provide correct results for Flash-based websites and single page applications (SPA). In fact, all SPAs were a choking hazard for Google』s indexer. Again, maybe not the end of the world, but in the rapidly changing IT industry, the almighty Flash started to show symptoms of slowing down.

Moreover, let』s not forget about one place where Flash ruled too: Those awful and irritating Flash-based ads jumping on the screen. Yeah, as an animation software, it was designed to do this well. So good that it was soooo annoying.

How Apple Killed Flash?

On the 29th of June in 2007, iPhone was released and that shook the computer and mobile phone market. We could argue if that was the first smartphone ever, but what happened to Nokia or Blackberry? The fact is, it was a great product that started a revolution. What was important at that time was the question: When will iPhone support Flash? Apple said no!

You may simply trust and believe it was all about security and saving battery juice — as apparently, Flash required a lot of power, and there was a growing number of security issues. It』s definitely one side of the story. However, if we put on the table the latest news about Apple slowing down the performance of iPhones to force customers to upgrade to protect the battery, we could say there was another side of this story that Apple didn』t want to tell us.

Okay, let』s admit it: Killing Flash is a bit bold and exaggerated statement. Apple maybe didn』t kill Flash alone yet banning it from iPhone definitely helped to decrease its longevity. At the time, Flash was really dominating one more market — free games. There were (and still are!) zillions of simple or very complex, ugly or beautiful games out there for free. No need to use any app store (and pay for) as long as your web browser has a Flash plugin!

Conclusion

When Flash matured, so did the development of Flash applications and games. Games became more complex and advanced. They used 3D graphics, and there were physics engines available. Some games, even made with other engines, used Flash for their UI or HUD through modules and plugins. However, complex Flash applications opened issues with performance and security.

Adobe allowed to export and package Flash content as an iOS apps. Yet, Flash wasn』t created to have responsive mobile design. Indeed, Flash was created before any mobile design was necessary. Other technologies were catching up or gaining more popularity.

When iPhone was released in 2007, Flash was still strong. Yet its position slowly started to decline. In 2015, YouTube finally dropped out Flash as the default player. It took five more years for Google to switch it off in Chrome.

Rest in peace, Flash.


下載開源日報APP:https://openingsource.org/2579/
加入我們:https://openingsource.org/about/join/
關注我們:https://openingsource.org/about/love/