2025-05-27 08:00:00
这件事情发生在 2024 年 4 月份。当时把过程记录在 Apple Notes 中,我本来没打算把它发出来,因为这是一件很私人的事情。但后来我在网上看到了很多类似的病例,很多人在经历着同样的困扰。所以我想把我的经历整理出来分享给大家,希望能对遇到类似情况的朋友有所帮助。
在发病前的几天我注意到左耳开始出现短暂的低频耳鸣,但当时并没有太在意。因为之前也有过类似的经历,我以为是普通的疲劳反应,休息一下就会好。
我在很小的时候就有发现我的耳朵能听到耳后的血流声音,为什么我能确定是血流声呢,因为我尝试按住耳后皮肤下的血管就不响了。
成年以后就没再出现过,但有时候会出现耳鸣的情况,不过很快就消失了。
另外再说一件小事,我能自主控制我的左耳活动,就是能够像猫、狗、兔子或者其他哺乳类动物一样,通过神经让耳朵活动起来 很明显,我不知道怎么做到的,但很神奇。
那天晚上大概一点左右,我正抱着 MacBook 工作,左耳突然传来持续的嗡嗡声。声音特别大,大到让我完全无法继续工作。我赶紧停止工作,平躺休息,希望能缓解症状。
我最开始很担心是脑部神经的问题,所以赶紧做了个 CT 检查。检查结果显示一切正常,这让我稍微放心了一些。
但经过耳鼻喉科的纯音测试后,医生确诊为:突发性耳聋。这个诊断结果真的让我很震惊,我从来没想过自己会 “突聋”。
医生给我开了以下治疗方案:
治疗思路主要是改善耳蜗周边供血,为耳蜗提供营养。
医生告诉我治愈率大概在 70% 左右,这个数字给了我一些希望。不过医生说高压氧治疗可能会有帮助,但可惜他们医院没有这个设备。
因为治疗效果不太理想,我开始考虑其他治疗方案。我去了北京协和医院,那里的医生给出的治疗方案和清华长庚的差不多,我问高压氧是否有帮助,医生很耐心地给我解释了高压氧治疗的利弊。说高压氧治疗需要患者配合度比较高,而且可能会对身体产生一定压力。还特别强调,高压氧并不是治疗耳聋耳鸣的必要手段。
之后我又去了北京同仁医院,同仁医院在耳鼻喉方面比较权威,这里的医生给出了同样的方案,并解释了银杏叶提取物的血管舒张效果,让我对药物作用有了更清晰的认识。医生也建议高压氧治疗,但同样没有这个设备。不过根据纯音测试结果,医生说我的情况主要集中在低频区,恢复的可能性比较高。
4/10 在解放军医院(301)这里有高压氧舱,预约的同时尝试了针灸治疗。我对中医至今仍持有负面看法,但在这种处境下,我还是决定尝试一下。去到针灸诊室,我看到一些病人,以老年人为主,也有一些耳聋患者。为了缓解紧张情绪,我和医生攀谈起来。我问医生:”针灸对我这个病情有帮助吗?会不会扎到神经然后就动不了了啊?”医生回答说:”这个你可以问问他们(指病房内的其他病人),有人做了说有效,你可以试试,有用你就继续,没用你就换别的方案。”趴在床上,医生用很细的针扎在头部和指尖背部的位置,同时配置红外热灯照射30分钟左右。做完以后,我不知道是不是心理作用,似乎有所缓解。
4/11 昨天的医生没在,换了另一位医师,用了不同的方式,用了一根更粗的针在脖颈后面针刺,很深,能听到针扎进肉里的声音。
4/11 终于有机会接受高压氧舱治疗,对这个新疗法我充满期待。房间里大概有十几个人,大家都有不同的经历。坐在我左边的女士在新冠感染后单耳听力完全丧失,她怀疑与接种疫苗有关。坐在我前面的男士是火灾导致大面积烧伤,还有一位女士是被外卖小哥撞了,脑部受损导致听力受损。还有一个小女孩一直在哭,妈妈抱着她,姥姥在旁边陪着。看着这些病友,我的心情很复杂。
然而,经过这些治疗,我并没有明显改善。
刷推时,发现一位推友也遭遇了类似的情况
挂了六天水之后,已经基本恢复了,现在还有点耳闷的感觉,医生说要多修养,不然可能会复发
— Ehco (@Ehco1996) April 14, 2024
我发现 v2 上也有一些病友,程序员这个职业似乎还挺容易得这个病的(病因大多是熬夜焦虑压力...
虽然我平时一直说注意身体,但真等大锤落到我身上时,我才明白深刻身体的重要,以后顶不住了就多休息😶 https://t.co/ycDOzApTFN pic.twitter.com/rAlbkhgOTk
看到他的经历,我和他交流了一下患病心得 抱团取暖
在治疗期间,我查阅了大量相关研究资料,希望能更好地了解自己的病情。了解得越多,反而越觉得这个病挺复杂的。
看到千手观音表演者庆大霉素致聋的案例非常震惊,想不到背后还有这样的故事。
我又联想到之前说的餐饮商家往菜里添加止泻药防止因食物卫生问题导致腹泻的案例,不由得想到最近这么多突聋案例会不会和这个有关。
现在的时间是 2025 年的 5 月份,时间已经过去一年了。我的耳鸣依然持续存在,只是有时强有时弱,它无时无刻伴随着我,时间久了我渐渐适应了它的存在。要说影响,我之前是能非常准确辨别一个声音是来自哪一个方位的,现在辨别起来有点困难。之前能分辨非常微弱的声音,现在也有点困难。
这段经历让我深刻体会到健康的重要性,也让我对突发性耳聋有了更深入的了解。生病之前我从来没想过耳朵会出问题,更没想到的是在互联网从业者这个群体中如此高发,通过与大家的交流,我们发现病例之间存在一些相似性,基本都是熬夜工作 压力比较大造成的,很多人关心是否与长时间佩戴耳机有关,我感觉似乎关联不大,比如我就没有很经常使用耳机。另外突发性耳聋的成因在医学上并不能完全明确,而不明确的成因往往意味着无法得到根本性的治疗,所以在此提醒大家注意休息 不要熬夜,爱惜身体 千万不要得病 不然真的不好治疗。如果你也遇到了类似的问题,建议及时就医。希望通过分享我的经历,能够帮助到其他可能遇到类似情况的朋友。
2024-11-20 08:00:00
又一次收到了 Be My Eyes 的视频通话请求。这次是三位视障朋友,希望我能协助其中一位女孩设置手机的屏幕朗读功能。经过一番操作后,很开心顺利完成了设置。
I received another video call request from Be My Eyes. This time, it was from three visually impaired friends who needed help setting up the screen reader function on one of the girls’ phones. After some operations, I was happy to successfully complete the setup.
回想起 2019 年成为志愿者的初衷,至今已协助过许多视障朋友,次数早已记不清。但每一次的服务都让我感到无比欣慰与骄傲。我愿意成为他们的眼睛,带领他们看见这个缤纷的世界,为他们的生活增添一道光芒。
Looking back to 2019 when I first became a volunteer, I have helped many visually impaired friends since then, and I’ve lost count of the number of times. But each service fills me with immense satisfaction and pride. I am willing to be their eyes, guiding them to see this colorful world and adding a ray of light to their lives.
如果您也想加入这份爱心行列,欢迎在应用商店搜索「Be My Eyes」
If you would like to join this caring community, you can search for “Be My Eyes” in the app store.
注册成为志愿者(Volunteer)。若您身边有视障朋友,也可以帮助他们下载注册,让他们能够随时连结世界各地的志愿者获得协助。
Register as a volunteer. If you have visually impaired friends around you, you can also help them download and register, allowing them to connect with volunteers worldwide for assistance at any time.
在视障朋友的日常生活中,常会遇到许多我们难以想象的困扰:分辨衣物颜色、确认正确药品、检查食物保存期限、选购合适的生活用品,甚至是行走时判断路况,都需要他人的协助。
In the daily lives of visually impaired friends, they often encounter many difficulties that we can hardly imagine: distinguishing clothing colors, confirming correct medications, checking food expiration dates, choosing suitable daily necessities, and even judging road conditions while walking, all require assistance from others.
虽然我们无法完全体会视障朋友所面临的种种不便,但我深信,只要我们愿意伸出援手,齐心协力,就能让他们在这颗蓝色星球上过得更好、更自在❤️🙌
Although we cannot fully understand the various inconveniences faced by visually impaired friends, I firmly believe that as long as we are willing to lend a helping hand and work together, we can help them live better and more comfortably on this blue planet ❤️🙌
2024-09-18 08:00:00
19世纪末20世纪初,中国仍处于封建社会末期,科技落后,国力衰微。彼时的日本,虽文化根源深植于中华,却因地理资源匮乏,萌生了”帮助中国现代化”的想法。
In the late 19th and early 20th centuries, China was still in the final stage of feudal society, lagging in technology and declining in national strength. At that time, Japan, though culturally rooted in China, was short of natural resources and developed the idea of “helping China modernize.”
起初,他们在东北等地确实进行了一些建设。然而,随着野心膨胀,一些政治人物开始视中华民族为劣等,进而产生了取而代之的狂妄之念。日本军国主义的侵略,实则源于其扭曲的民族主义和对资源的贪婪渴望。这场浩劫给中国及其他亚洲国家带来了难以磨灭的苦难。
At first, they did carry out some construction in Northeast China and other areas. However, as ambitions grew, some politicians began to view the Chinese nation as inferior, leading to an arrogant desire to replace it. Japan’s militaristic aggression stemmed from distorted nationalism and a greedy thirst for resources, bringing unforgettable suffering to China and other Asian countries.
战争以原子弹的惨烈落幕。作为战胜国,中国本有权在日本驻军,却选择了宽容与和解,展现了大国胸怀。
The war ended tragically with atomic bombs. As a victorious nation, China had the right to station troops in Japan, but it chose tolerance and reconciliation, demonstrating the magnanimity of a great nation.
上世纪70年代末,邓小平领导下的中国迫切需要外资和技术助推经济发展。邓小平访日,以谦逊亲和的姿态恳请日本来华投资。随后,日本成为中国重要的经济伙伴,投资如潮水般涌入。各地兴建日资产业园区,为日籍员工安居乐业,还建设了日本学校、中日友好医院等设施。这段蜜月期有力证明,国与国之间的关系能够超越历史恩怨,实现互利共赢。
In the late 1970s, under the leadership of Deng Xiaoping, China urgently needed foreign capital and technology to drive economic development. Deng Xiaoping visited Japan, humbly and amicably requesting Japanese investment in China. Subsequently, Japan became a major economic partner, with investments flowing in like a tide. Japanese-funded industrial parks were established across China, providing for Japanese employees’ well-being, along with the construction of Japanese schools and the Sino-Japanese Friendship Hospital. This period of cooperation strongly proved that relations between countries could transcend historical grievances to achieve mutual benefit.
然而,近年来随着中美关系趋紧,加之美日同盟关系密切,一些官方媒体有意渲染对日情绪。这种做法虽可能短期内凝聚民心,长远来看却有百害而无一利。最近发生在苏州的日本小学生校车遇袭事件,以及胡友平女士为保护日本儿童而不幸牺牲的悲剧,引发了日本社会的恐慌。日企连夜撤离中国的举动,无疑对当前经济下行、失业率居高不下的中国雪上加霜。
However, in recent years, as Sino-American relations have tightened and the U.S.-Japan alliance remains strong, some official media have intentionally stirred anti-Japanese sentiment. While this may unite the people in the short term, it will bring only harm in the long run. The recent attack on a Japanese school bus in Suzhou, where Ms. Hu Youping tragically died protecting Japanese children, has caused panic in Japanese society. Japanese companies’ overnight withdrawal from China only adds to the woes of an already slowing economy and rising unemployment in China.
安倍晋三曾在2015年的国会演讲中表示:”我们不能让子孙后代一出生就背负道歉的重担,即便他们与战争毫无关联。尽管如此,我们每一代日本人都必须正视过去的历史。”他感谢中国战后”以德报怨”的宽容,也感谢西方国家愿意与日本共同面向未来。这番言论被视为日本”向前看”政策的起点。这一政策并非否认历史,而是呼吁不要让国家永远活在历史的阴影之中。
In a 2015 speech in the Japanese parliament, Shinzo Abe stated: “We cannot burden future generations with the responsibility of apology the moment they are born, even if they had nothing to do with the war. Nevertheless, each generation of Japanese must face up to the history of the past.” He thanked China for its post-war tolerance of “repaying evil with virtue” and also thanked Western countries for their willingness to move forward with Japan. His words were seen as the starting point of Japan’s “forward-looking” policy, which was not about denying history but rather calling for the nation not to be forever trapped in its shadow.
反观中国,我们似乎正陷入一个危险的循环。对许多中国人而言,战争历史不仅未曾过去,反而成为了一种持续的现实。更令人担忧的是,一些人正在以”爱国”的名义,重复着历史上我们曾极力反对的行为。
On the other hand, China seems to be caught in a dangerous cycle. For many Chinese, the history of the war is not something that has passed, but a persistent reality. Even more worrying is that some are repeating behaviors in the name of “patriotism” that we once vehemently opposed.
这种情况令人不寒而栗。那些打着爱国旗号,煽动仇恨、伤害无辜的人,他们的行为与当年的侵略者何其相似。他们可能不自知,但正在成为和平的破坏者,成为他们曾经憎恨的那种人。这种扭曲的”爱国主义”正在侵蚀我们社会的根基,破坏来之不易的和平与繁荣。
This situation is chilling. Those who incite hatred and harm innocents in the name of patriotism resemble the aggressors of the past. They may be unaware, but they are becoming destroyers of peace, turning into the very type of people they once despised. This distorted “patriotism” is eroding the foundation of our society, undermining the hard-won peace and prosperity.
我们必须警惕,这种狭隘的民族主义情绪很可能成为操纵民意、转移国内矛盾的工具。它不仅无助于解决任何实际问题,反而会加剧国际关系的紧张,最终损害我们自己的利益。
We must remain vigilant. This narrow-minded nationalism could easily become a tool to manipulate public opinion and divert attention from domestic issues. It will not help solve any real problems but will instead escalate tensions in international relations, ultimately harming our own interests.
更可怕的是,这种仇恨情绪一旦蔓延,就如同打开了潘多拉的魔盒,难以收拾。它会毒化我们的下一代,让他们带着偏见和敌意去看待这个世界。这与我们追求和平、开放、进步的理想背道而驰。
Even more frightening is that once this hatred spreads, it will be like Pandora’s box, impossible to contain. It will poison our next generation, causing them to view the world with prejudice and hostility, which is contrary to our ideals of peace, openness, and progress.
我们不应忘记南京大屠杀幸存者李秀英老人的嘱托:”要记住历史,不要记住仇恨!”这句话如今悬挂在侵华日军南京大屠杀遇难同胞纪念馆的新展厅里,警醒着每一位参观者。这不仅是对过去的反思,更是对未来的期许。
We must not forget the words of Nanjing Massacre survivor Li Xiuying: “Remember history, but don’t remember hatred!” This quote now hangs in the new exhibition hall of the Memorial Hall of the Victims in Nanjing Massacre by Japanese Invaders, reminding every visitor. It is not only a reflection on the past but also a hope for the future.
我们必须保持清醒,爱国不等于仇外,应该用理性和智慧去看待历史,用开放和包容的心态拥抱世界。勿忘国耻是让我们努力学习、提升自己,为国家发展贡献力量,而不是沉溺于狭隘的民族主义情绪中,不要成为仇恨的传播者。
We must remain clear-headed. Patriotism does not equal xenophobia. We should view history with reason and wisdom, and embrace the world with openness and inclusiveness. “Remembering national humiliation” should inspire us to study hard and improve ourselves, contributing to the country’s development, rather than wallowing in narrow nationalism and becoming spreaders of hatred.
2023-09-11 08:00:00
近年来,地方政府为了发展基础设施,与开发商达成协议,让开发商以较低价格获得土地。开发商的条件是帮助地方政府建设桥梁、道路、学校、医院和购物中心等基础设施。项目完成后,开发商还会协助吸引投资。曾经,这种共生关系在一段蜜月期内繁荣发展。
In past years, local governments, aiming for infrastructure development, struck deals with developers allowing them to obtain land at lower prices. The catch was that developers would help the local governments with infrastructure like building bridges, roads, schools, hospitals, and shopping centers. After completion, developers would also assist in attracting investment. For a time, this symbiotic relationship blossomed in a mutual honeymoon phase.
然而,随着地方经济逐渐好转,许多地方政府似乎“翻脸不认人”,要求开发商先完成基础设施项目,再讨论土地审批事宜。不幸的是,开发商履行完自己的承诺后,由于各种原因,土地审批往往被拒,导致许多开发商不满但大多保持沉默。
However, as local economies began to improve, many local governments seemed to turn on their developer partners, suggesting they complete infrastructure projects before discussing land approvals. Unfortunately, after the developers fulfilled their end, land approvals were sometimes denied for various reasons, leaving many developers aggrieved but mostly silent.
建筑行业本质上有较长的资金回笼周期,有时需要5-6年才能完全回款。而在此期间,人工、材料和销售的支出持续,带来了巨大的财务压力。开发商制定了一种策略,即将建成的物业抵押给银行。一旦房产出售,购房者会向银行还款。有趣的是,许多购房者通过银行贷款购房,这意味着在整个过程中,实际上是银行拥有了房产。
The construction industry inherently has a long capital turnover cycle, sometimes taking 5-6 years for full repayment. Meanwhile, expenses for labor, materials, and sales persist, creating significant financial pressure. A strategy devised by developers was to mortgage their constructed properties to banks. Once the property was sold, homeowners would repay the bank. Interestingly, many homeowners financed their purchases with bank loans, meaning the bank technically owned the property throughout the process.
开发商意识到,在这种模式下,他们不必担心销售问题,只需将房产抵押即可获得资金。随着房价不断上涨,开发商可以不断建设,确保资金流动,然后将这些资金投入高回报的项目。
Developers realized under this scheme they didn’t have to worry about sales — they simply had to mortgage properties to gain funds. With house prices continuously rising, developers could keep building, ensuring a steady cash flow, and then invest these funds in high-return ventures.
甚至有开发商雇佣演员在楼盘现场制造热销的假象,试图说服潜在购房者和银行相信房产的吸引力。
There were even incidents where developers hired actors to create a façade of booming sales at property sites, aiming to convince both potential buyers and banks of the property’s attractiveness.
随着房价在全国范围内飙升,即使在三四线城市,房价往往也超过了当地居民的收入水平。“本地人买不起本地房”的现象广为流传。
With house prices skyrocketing across China, even in third and fourth-tier cities, property prices often surpassed local incomes. The phenomenon of “locals can’t afford local homes” became widely discussed.
“房住不炒”的政策标志着房地产调控的开始,各种措施陆续出台以控制房价和贷款。市场很快做出了冷却反应。地方政府收紧了土地审批,从“限墅令”到全面“禁墅”,再到限制高层地块,意在遏制房地产行业的无序扩张。
The decree “Houses are for living in, not for speculation” signaled the start of real estate regulation, with various measures introduced to control property prices and loans. The market soon responded with a cooldown. Local governments tightened land approval processes, from a “villa restriction order” to an outright “villa ban”, followed by restrictions on high-rise plots, all aiming to curb the wild and chaotic expansion of real estate.
随后,央行和住建部在2021年1月1日发布了开发商融资政策,即所谓的“三道红线”:
Soon after, the central bank and the Ministry of Housing and Urban-Rural Development issued financing policies for developers, effective from January 1, 2021. These were the so-called “three red lines”:
到2023年中,12家试点房地产公司必须达到所有“三道红线”标准,所有公司预计在2023年底前合规。
By mid-2023, the 12 pilot real estate companies had to meet all these “three red line” standards, with all companies expected to comply by the end of 2023.
恒大触碰了所有这些红线,减债成为其首要任务。通过资产出售、文化领域的剥离、债转股及其他融资形式,但这些行动只暴露了其巨大的财务黑洞,高达3000亿美元的债务震惊了全球,因其可能引发全球金融危机。然而,外国媒体和投资者达成了一个奇怪的共识:“中国能够处理恒大的问题。”
Evergrande hit all these red lines, making debt reduction its top priority. Various measures were taken, from asset sales, divestments in cultural sectors, debt-to-equity swaps, to other forms of financing. But these actions only exposed the colossal financial black hole, a shocking $300 billion debt, which alarmed the global community given its potential to trigger a worldwide financial crisis. Yet, there was an unusual consensus among foreign media and investors: “China can handle the Evergrande situation.”
到目前为止,国家尚未明确表示干预。信息似乎向企业巨头们传递了一个明确的信号:“没有任何公司大到不能倒。”控制金融风险已经成为中国企业必须谨记的教训。
So far, there’s no clear sign of the state intervening. The message seems clear to corporate giants: “No company is too big to fail.” Controlling financial risks has become a lesson that Chinese enterprises must heed.
房地产行业的黄金时代似乎正在逐渐消逝。开发商利用金融杠杆快速发展的时代已经不复存在。
The golden age for the real estate industry seems to be waning. The era where property developers leveraged financial gains for rapid growth no longer exists.
此外,城投债(即“城投债”或“City Investment Bonds”)也成为关注焦点。这些债券主要由地方政府融资平台(LGFVs)发行,在过去几十年里对中国的城市化进程发挥了关键作用。
Beyond the above, city investment bonds (often referred to as “城投债” or “City Investment Bonds”) have also become a topic of concern. These bonds, mainly issued by local government financing platforms (LGFVs), have played a pivotal role in fueling China’s urbanization drive over the past few decades.
开发商如碧桂园与城投平台关系密切。例如,碧桂园可能从这些平台购买土地,或与它们合作开发。这意味着,当这些平台面临金融风险时,像碧桂园这样的开发商也会直接受到影响。
There’s a close relationship between developers like Country Garden and city investment platforms. For instance, Country Garden might buy land from these platforms or collaborate with them for development. This means that when these platforms face financial risks, developers like Country Garden are directly impacted.
为了应对这些风险,许多开发商,包括碧桂园,正在寻找新的合作模式和资金来源。但显然,这并不是一朝一夕可以解决的问题。这意味着,中国的房地产市场可能会经历一个长期的调整和变化期。
To combat these risks, many developers, including Country Garden, are searching for new partnership models and funding sources. But, clearly, this isn’t an issue that can be resolved overnight. This implies that China’s real estate market might face a prolonged period of adjustment and change.
以上内容均为个人观点,部分信息来源于网络。如有版权或监管问题,请联系作者。
All the content above represents personal opinions. Some information is sourced from the internet. Please contact the author for any copyright or regulatory concerns.
2021-11-04 08:00:00
随着科技的迅猛发展,我们日常使用的手机应用不再是单一的本地软件,而是逐渐向着更为复杂和多元化的形态演变。如今,许多应用都采用了 Hybrid App 的架构,即通过结合 Native 的基础功能与 Webview + JS Bridge 来实现快速迭代和内容更新。在这一模式中,Webview 的渲染性能成为了用户体验的关键,因为它直接影响着界面的响应速度、流畅度以及视觉效果。
As technology advances rapidly, the apps we use on a daily basis have evolved from simple local software to more complex and diversified forms. Many applications now adopt the architecture of Hybrid App, combining Native functionalities with Webview + JS Bridge to achieve quick iteration and content updates. In this model, the rendering performance of Webview is crucial, as it directly affects the responsiveness, smoothness, and visual quality of the interface.
Strategic Moves of Tech Giants: The Importance of Browser Kernels
看到这一趋势,互联网巨头们纷纷加大了对浏览器内核的研发与收购力度。浏览器内核不仅仅是一个工具,更是企业提升用户体验、增强技术控制力的战略性资产。
In response to this trend, internet giants are ramping up efforts to develop and acquire browser kernels. A browser kernel is not just a tool; it’s a strategic asset that enhances user experience and strengthens technical control for these companies.
例如,阿里巴巴 通过收购 UC 浏览器,获得了其自有的浏览器内核,并将其应用于多款阿里系产品中;腾讯 拥有自主研发的 X5 内核,并通过收购 搜狗浏览器 进一步增强了自身的浏览器技术储备。字节跳动 也不甘示弱,基于 WebKit 技术积极开发自己的浏览器内核,以应对旗下产品日益复杂的前端需求。
For example, Alibaba acquired UC Browser, gaining its proprietary browser kernel, which is now used across multiple Alibaba products. Tencent has its self-developed X5 kernel, and further strengthened its browser tech through the acquisition of Sogou Browser. ByteDance is also catching up, actively developing its own browser kernel based on WebKit to handle the increasing complexity of front-end needs across its products.
相比之下,美团 虽然在小程序架构上做出了巨大的商业推动,但由于没有自研的浏览器内核,它在技术战略上面临了一定的制约。为此,美团启动了自己的浏览器内核研发计划,并尝试 fork WebKit 来建立自有的内核。然而,由于 WebKit 庞大且复杂的代码库,这一计划的推进并不顺利。
In contrast, Meituan, while pushing forward its mini-program architecture from a business standpoint, has been technically constrained by its lack of an in-house browser kernel. To address this, Meituan started its own browser kernel development plan, attempting to fork WebKit to create its kernel. However, the complexity and size of the WebKit codebase have hindered progress.
The Shift in Rendering Technologies: From React Native to Flutter
在 WebKit 内核开发受阻的背景下,当 React Native 技术崭露头角时,美团看到了新的希望。React Native 提供了基于 JavaScript 的跨平台解决方案,允许开发者通过一套代码实现 iOS 和 Android 两端的渲染。然而,React Native 的局限性也逐渐显现,尤其是其性能问题和复杂的原生模块绑定模式,令其难以真正实现“多端一致性”。
With the stagnation of WebKit kernel development, the emergence of React Native brought new hope for Meituan. React Native offers a cross-platform solution based on JavaScript, allowing developers to use one codebase to render on both iOS and Android. However, the limitations of React Native became apparent, particularly its performance issues and the complexity of native module bindings, making it difficult to achieve true “multi-end consistency”.
这时,Flutter 的出现为行业提供了全新的解决思路。不同于 React Native,Flutter 从底层重新构建了自己的渲染引擎,完全绕过了操作系统的 UI 组件,直接使用 Skia(基于 OpenGL) 来进行图形渲染。这一架构设计使得 Flutter 在跨平台性能上具备了显著优势。
At this point, the arrival of Flutter provided a new solution for the industry. Unlike React Native, Flutter rebuilt its rendering engine from the ground up, bypassing the OS’s UI components and directly using Skia (based on OpenGL) for graphic rendering. This architecture gives Flutter a significant performance advantage in cross-platform scenarios.
从我的个人经历来看,我也从最初的工程化方案研究,逐渐转向小程序架构,再进入 Flutter 渲染引擎的开发项目中。我们的目标是基于 Skia 解析 DOM 和 CSS,以期打造一个高效的渲染引擎。尽管这项工作还在进行中,但我们坚信 Flutter 的技术路线是值得长期投入的。
From my own experience, I have shifted from initial engineering solution research to mini-program architecture, and then into the development of the Flutter rendering engine. Our goal is to build an efficient rendering engine by parsing DOM and CSS using Skia. Although this work is ongoing, we are confident that Flutter’s technological path is worth long-term investment.
The Struggles of React Native and the Advantages of Flutter
尽管 React Native 在跨平台领域曾一度风靡,但其复杂的原生绑定模式始终是开发者面临的一个难题。由于其核心是基于 Native 组件的封装,开发者不得不频繁地进行原生代码的编写和调试,这与其最初的“跨平台一致性”愿景背道而驰。
Though React Native once gained popularity in the cross-platform field, its complex native binding model has always been a challenge for developers. Since it is fundamentally based on Native component wrapping, developers often have to write and debug native code, diverging from the original goal of “cross-platform consistency”.
相反,Flutter 通过重新构建渲染引擎,避免了操作系统层面的依赖,真正做到了“一次编写,处处运行”。从技术的角度来看,Flutter 为开发者提供了更大的灵活性和一致的用户体验。与此同时,它还解决了 React Native 无法绕过的一些固有问题,尤其是在复杂 UI 和动画渲染上的优势明显。
On the other hand, Flutter rebuilt its rendering engine, avoiding OS-level dependencies, truly achieving “write once, run anywhere”. From a technical standpoint, Flutter offers developers greater flexibility and a consistent user experience. It also addresses some inherent issues that React Native could not overcome, particularly in complex UI and animation rendering.
Challenges and Future Outlook
然而,尽管 Flutter 在架构上占据优势,但它并不是一个“完美的解决方案”。例如,基于 Flutter 开发的 闲鱼 App,尽管在开发效率上有所提升,但其稳定性和性能仍然存在进一步优化的空间。这反映出,尽管 Flutter 具备巨大的潜力,但在实际的应用场景中,它依然面临诸多挑战。
However, despite Flutter’s architectural advantages, it is not a “perfect solution”. For example, the Xianyu app, developed with Flutter, has shown improved development efficiency, but its stability and performance still require further optimization. This reflects that while Flutter has enormous potential, it still faces many challenges in real-world applications.
总的来说,随着移动互联网的持续演进,各大互联网公司在容器技术领域的布局和战略不断调整。浏览器内核的研发、跨平台架构的选择,甚至是渲染引擎的优化,都是决定未来用户体验的关键要素。在这个技术变革与创新并存的时代,机会与挑战并存,每一个选择都将深刻影响未来的市场格局。
In summary, as mobile internet continues to evolve, internet companies are constantly adjusting their strategies in the field of container technology. The development of browser kernels, the choice of cross-platform architectures, and even the optimization of rendering engines are all key elements in shaping the future user experience. In this era of technological change and innovation, opportunities and challenges coexist, and every choice will profoundly impact the future market landscape.
通过丰富的技术积累与快速响应的市场策略,互联网巨头们将在未来的容器技术赛道上继续角逐。而开发者也需要紧跟时代潮流,选择合适的技术方案,才能在这场技术革命中占据一席之地。
2021-10-28 08:00:00
1. React Has No Future
React 解决了什么问题?
What problem does React solve?
组件化的问题
The componentization problem
引入了虚拟 DOM 优化渲染
Introducing Virtual DOM to optimize rendering
组件化的问题,Web Component 已经在路上了,终将有一个标准化的实现。
The componentization issue is already being addressed by Web Components, which will eventually lead to a standardized solution.
我们知道,VirtualDOM 可以一定程度上优化 DOM 渲染性能,但是在浏览器层面上 DOM 渲染性能本身就已经在优化了,React 中使用 VirtualDOM 来优化性能问题,这个问题很大程度上是 React 自己造成的。
We know that the Virtual DOM can optimize DOM rendering to some extent, but browser-level DOM rendering performance has already been improving. The performance problems React tries to solve with Virtual DOM are, in many ways, caused by React itself.
浏览器本身 DOM 性能已经很高了。当然我们也要知道 React VirtualDOM 不只是为了解决渲染问题,也为了能够实现渲染层抽象,适配更多的渲染引擎。
The browser’s native DOM performance is already quite high. Moreover, it’s important to note that React’s Virtual DOM isn’t just about solving rendering problems but also abstracts the rendering layer to support multiple rendering engines.
2. Webpack Has No Future
我们之所以使用 Webpack 来打包主要是解决两个问题:
We use Webpack primarily to solve two problems:
模块化
Modularization
合并文件以降低创建网络链接对页面加载性能的影响
Combining files to reduce the performance impact of creating multiple network connections
随着 HTTP/2/3/QUIC 的发展,连接复用技术已经可以实现,即使在页面上写多个相同域的多个 script 标签也只会创建一个 TCP 链接,而且支持交叉数据传递,对网络加载性能影响很小。
With the development of HTTP/2, HTTP/3, and QUIC, connection multiplexing has become possible. Even if multiple script tags from the same domain are used on a page, only one TCP connection is created, and it supports cross-data transmission, minimizing the impact on network performance.
目前很多 CDN 厂商都已经部署了 HTTP/2(\w QUIC)协议,毕竟对他们来说也是一个节省开销的好事情。
Many CDN providers have already deployed HTTP/2 (and QUIC) protocols, as it is also cost-efficient for them.
其次,浏览器对于 ES Module 已经支持的很好了,而且从社区支持来看越来越多的 Library 都输出了符合 ESM 规范的打包格式。而且 ESM 相比于其他打包格式还有一些诸如减少 JS VM 虚拟机计算量等额外优势,没有理由不支持。
In addition, browsers now have excellent support for ES Modules, and more libraries are providing bundles in ESM format. Compared to other formats, ESM also reduces the JS VM’s workload, which offers compelling advantages.
没有了 Webpack,TypeScript 怎么办?
What About TypeScript Without Webpack?
如果没有了 Webpack,那么 TypeScript 可以通过 WebAssembly 在浏览器端解析和执行,无需预编译执行。
Without Webpack, TypeScript could be parsed and executed via WebAssembly directly in the browser, eliminating the need for precompilation.
3. Mini Programs Have No Future
虽然目前小程序已经很流行,但是 Service Worker 和 Offline App 的广泛应用是迟早的事情。
Although mini programs are quite popular right now, the widespread adoption of Service Workers and offline apps is inevitable.
小程序总是想着向 Native 的方向努力,最终很可能会变成 Native 开发的一种方式,而非 Web 的未来。
Mini programs tend to evolve toward native app development, which will likely make them another form of native development, rather than the future of the web.
虽然小程序为开发者提供了一种简单、快速的开发方式,但它并没有实现重大创新。
While mini programs provide a simple and fast development approach, they haven’t brought any groundbreaking innovations.
What Do I See as the Future?
回归标准:
Returning to Standards:
我在讲某个东西没有未来并不是说否定它存在的意义,在特定的时期下它们的存在是非常重要的,它们加速了 Web 发展进程功不可没,但是缺乏标准化总是在解决一个问题的同时带来了非常多衍生的其他问题,这就是工程化实践和标准化实践的区别。
When I say that something has no future, it doesn’t negate its significance. At certain stages, these technologies have been vital to accelerating the web’s development. However, the lack of standardization often leads to many secondary issues while solving a core problem. This is the difference between engineering practices and standardized practices.
大道至简:
Simplicity Is the Ultimate Sophistication:
想想看,我们现在要开始做一个 Web 应用要做那些事情?安装一大堆的框架、工具库、工具链、打包编译工具,每修改一个文件都要等待漫长的编译,每次发布都要经过复杂的工作流程来确保与开发时的预期一致。我认为未来不是这样,就应该是开箱即用,唾手可得,且性能优异。
Think about it—what do we need to do to start a web application today? Install countless frameworks, libraries, toolchains, and bundlers. Every file modification requires lengthy recompilation, and each release goes through complex workflows to ensure consistency with development expectations. I believe the future won’t be like this. It should be plug-and-play, readily available, and highly performant.