{% if page.url contains '/en/' %} - {% include post-item.html posts=site.posts_en %} + {% assign current_posts = site.posts_en | sort: 'date' | reverse %} + {% include post-item.html posts=current_posts %} {% else %} {% include post-item.html posts=paginator.posts %} diff --git a/_posts/2021-07-09-webstorm.md b/_posts/2021-07-09-webstorm.md index 01e8c178..16299016 100644 --- a/_posts/2021-07-09-webstorm.md +++ b/_posts/2021-07-09-webstorm.md @@ -28,8 +28,6 @@ categories: Creation 讲道理,JetBrains 公司真的很良心,提供了开源开发许可证福利,让大伙免费用他家软件进行开源贡献,一般项目维护在 3 个月以上大概率可通过。可从此入口 [免费许可证计划](https://www.jetbrains.com/zh-cn/community/opensource/#support) 进入申请,也可参考 [这篇教程](https://zhuanlan.zhihu.com/p/87370573);除去开源申请外,还可试试[学术许可](https://www.jetbrains.com/zh-cn/community/dev-recognition/)、[用户组](https://www.jetbrains.com/zh-cn/community/user-groups/)、[开发者活动](https://www.jetbrains.com/zh-cn/community/events-partnership/#developers)、[开发者认可](https://www.jetbrains.com/zh-cn/community/dev-recognition/)方式获取,**但都「不能用于商业项目」请斟酌使用**。 -**综上,若资金允许就买个人正式版,有些紧就用开源项目的方案。** 同时 ~~不建议用淘宝购买自己邮箱授权的教育版或用 [ide-eval-resetter](https://gitee.com/pengzhile/ide-eval-resetter) 插件延迟试用期的灰色地带方式~~ 来开发公司项目。 - ## 二、如何让 WebStorm 好用不卡?
diff --git a/_posts/2023-08-20-edge.md b/_posts/2023-08-20-edge.md index adf9edd8..b952d44a 100644 --- a/_posts/2023-08-20-edge.md +++ b/_posts/2023-08-20-edge.md @@ -39,7 +39,7 @@ categories: Creation ## 开始配置了 -假如没有安装 Edge 可以先去下载 [正式版](https://www.microsoft.com/en-us/edge/download),不过我使用的是 Dev 版本,**最近他们 Dev 版本变漂亮了不少,还带有圆角效果,假如你喜欢尝鲜,推荐下载** [Dev 版本](https://www.microsoft.com/en-us/edge/download/insider)。下载完成以后,建议先登录同步功能,假如没有微软的账号,可以创建一个,方便后面的配置保存防止换新机器的时候丢失。 +假如没有安装 Edge 可以先去下载 [正式版](https://www.microsoft.com/en-us/edge/download),下载完成以后,建议先登录同步功能,假如没有微软的账号,可以创建一个,方便后面的配置保存防止换新机器的时候丢失。 **开始配置之前,为了更顺畅的使用起来,建议将之前的历史纪录、书签的同步到新浏览器,可以点击菜单栏第一个 Tab `Microsoft Edge`,选择 `导入浏览器数据`,将你之前用的浏览器的记录给导入进来,好比一键搬家。** diff --git a/_posts/2024-02-12-my-2023.md b/_posts/2024-02-13-my-2023.md similarity index 100% rename from _posts/2024-02-12-my-2023.md rename to _posts/2024-02-13-my-2023.md diff --git a/_posts_en/2023-01-02-low-code.md b/_posts_en/2023-01-02-low-code.md new file mode 100644 index 00000000..ea23c494 --- /dev/null +++ b/_posts_en/2023-01-02-low-code.md @@ -0,0 +1,141 @@ +--- +layout: post +title: What Makes a Good Low-Code Product +date: 2023-01-02 07:00:00 +feature: https://gw.alicdn.com/imgextra/i4/O1CN01rIhOlN1GGYSuuxJaq_!!6000000000595-0-tps-3704-2568.jpg +summary: When it comes to low-code, there are those who love it passionately and those who are decidedly less enthusiastic. There are also those who "pretend" to like it and others who like it without really understanding why. Currently, I find myself somewhat fond of low-code, but only within specific domains where it can significantly speed up the development process compared to traditional coding by skilled engineers. Lately, I've been contemplating the next steps for team efficiency and decided to explore the open-source low-code products in the industry, which might offer some insights. +categories: Thought +lang: en-US +--- + +## Just Chatting + +Low-code platforms are typically associated with tools that simplify the process of building web pages. Internally, there are quite a few platforms of this sort, but there are also low-code solutions focused on logic assembly or BaaS capabilities that offer a more visual approach to what traditionally requires coding. The goal of low-code is to "**enable the development of applications with minimal coding, leveraging more convenient methods to achieve what traditionally required code**." + +People have mixed feelings about low-code: some love it, others hate it, and there are those who are somewhere in between. My current stance is that I appreciate low-code solutions, especially "**in specific domains where they can deliver solutions faster than an experienced engineer could through traditional coding**." These scenarios can truly benefit from low-code, making the experience quite satisfying. However, there might be times when using low-code isn't as pleasant, but this discomfort is far outweighed by the benefits it brings, minus the time investment required for traditional coding. + +Creating a comprehensive low-code product is challenging, particularly those aiming to cover a broad spectrum of functionalities. The complexity of considering numerous factors can lead to slow progress and difficulty in achieving user-friendliness. This often results in a significant investment of resources with a pressing need to launch and implement the product, leading to a situation where the platform feels burdensome to the developers and unsatisfactory to the users. Success usually requires enduring a long period of discomfort before reaching a satisfactory state, but many products falter before achieving their goals. Niche solutions for forms, tables, or charts, as well as BaaS solutions focusing on specific domains, tend to perform better. + +Integrated low-code platforms, which span both backend and frontend development, represent a significant challenge, particularly within large organizations where responsibilities are divided across multiple teams. The challenge stems from the difficulty in aligning standards, protocols, and database models across diverse teams. However, if a single team manages both frontend and backend, with a unified model and protocol, success is more attainable. The following are two examples of such products: + +### [Appsmith](https://github.com/appsmithorg/appsmith) + +Appsmith is an open-source framework designed for building internal applications, ideal for creating enterprise back-office systems, CRUD operations, Dashboards, and data reports. Originating from an Indian startup, it serves as an open-source alternative to [Retool](https://retool.com/), offering a similar development routine that includes UI design, data source connection, integration, and deployment, with a shift from traditional coding to visual programming. + +![Appsmith](https://cdn.fliggy.com/upic/gVjjkM.svg) + +Additionally, Appsmith offers a wide range of templates for various sectors like Project Management, Human Resources, Sales, Marketing, and Finance, providing valuable insights for low-code directions. + +### [Budibase](https://github.com/Budibase/budibase) + +Budibase positions itself as a low-code platform that developers enjoy using, focusing on speeding up application development. It distinguishes itself from Appsmith with a different approach and includes built-in databases, external data sources, GUI design, and automation features. Budibase's UI creation leans towards a design-centric method, resulting in more aesthetically pleasing interfaces. + +![Budibase](https://cdn.fliggy.com/upic/bDoZda.jpg) + +### [ToolJet](https://github.com/ToolJet/ToolJet) + +ToolJet is another noteworthy low-code framework that supports integration with various data sources through a drag-and-drop interface, including mobile support. It uses JavaScript, making it developer-friendly. + +![ToolJet](https://cdn.fliggy.com/upic/9eo9NR.jpg) + +Other notable mentions include [nocobase](https://github.com/nocobase/nocobase), [illa-builder](https://github.com/illacloud/illa-builder), and [refine](https://github.com/refinedev/refine), which are also worth exploring. + +## BaaS (Backend as a Service) in Low-Code + +The concept of BaaS became familiar to me around 2019 while working on Serverless, highlighting the potential ease of developing FaaS functions with robust BaaS capabilities. BaaS allows developers to focus on frontend development by offloading backend infrastructure management, facilitating rapid application development and market deployment. This sector, particularly in the international market, features several commendable services. + +### [Supabase](https://github.com/supabase/supabase) + +Supabase is a combination of open-source tools that builds the functionality of Firebase using enterprise-level open-source products. Firebase is a BaaS cloud service company under Google, allowing developers to easily develop an App through Firebase's framework without the need for servers or infrastructure. Knowing what it is, you roughly know what Supabase is. + +![Supabase Overview](https://cdn.fliggy.com/upic/XppYbm.jpg) + +Its main features include database hosting, authentication and authorization, automatic API generation, function services, file storage, etc., meaning users do not need to write these codes themselves, but just need to call them. Additionally, it provides client libraries for JS/C#/Flutter/Go/Java/Python/Swift/Rust, and more can be found in the [documentation](https://supabase.com/docs). + +![Supabase Features](https://cdn.fliggy.com/upic/NiGx5z.jpg) + +### [Appwrite](https://github.com/appwrite/appwrite) + +Besides Supabase, Appwrite is also a famous complete backend service capability that can be considered its competitor, with similar functions. It greatly simplifies the tedious process of writing APIs from scratch through a visual interface, creating an efficient development environment for developers under the premise of ensuring software security. It is an end-to-end developer platform based on Docker, and its containerized microservices library can be applied to web, mobile, and backend. + +![Appwrite Overview](https://cdn.fliggy.com/upic/045fTb.png) + +It provides corresponding software services, such as accounts, users, teams, databases, storage, cloud functions, multilingual, avatars, and other general capabilities, along with corresponding client or server development kits, using a microservices architecture method for better expansion. + +![Appwrite Features](https://cdn.fliggy.com/upic/8Wp6qC.svg) + +In addition, in the database field, there is an end-to-end cloud-native database called **[SurrealDB](https://github.com/surrealdb/surrealdb)**, suitable for Web, mobile, serverless, backend, and traditional applications. It reduces the development time of modern applications by simplifying database and API calls, eliminating the need for most server-side components. + +## Headless CMS + +Backend colleagues who have been coding for nearly 10 years should be very familiar with frameworks like Discuz, DedeCMS, WordPress, which were very popular at the time. I remember frequently using DedeCMS for commercial projects during my college days, which was quick and satisfying. Now, this type of backend solution has further developed to become simpler, more beautiful, and easier to use. Here, I will briefly introduce the Strapi-like headless CMS, which in simple terms is a content management system that only provides data, does not focus on UI, and prioritizes content. + +### [Strapi](https://github.com/strapi/strapi) + +Strapi is an open-source headless CMS, using JavaScript, very flexible and fully customizable, supporting many plugins. It can quickly generate a REST API service, and overall it is quite familiar for front-end colleagues to use, worth trying. + +![Strapi Overview](https://cdn.fliggy.com/upic/IviIfL.gif) + +### [Cube](https://github.com/cube-js/cube.js) + +Cube is a headless business intelligence framework for building data applications, using data from any source, organizing it into consistent metrics, and using it for every data application. + +![Cube Overview](https://cdn.fliggy.com/upic/LhZJs7.png) + +In addition to Strapi and Cube, which are two well-known headless CMSs, you can also try [payload](https://github.com/payloadcms/payload) and [webiny-js](https://github.com/webiny/webiny-js). + +## Workflow Orchestration + +It appears that many companies have their own service orchestration platforms. For larger enterprises, it's possible that each Business Unit (BU) has one. However, it's generally difficult to achieve user-friendliness, and it's hard to convey the point that "service orchestration is faster and more convenient than coding". Usually, there's a lot of enthusiasm in the early stages, stability in the mid-stage, and it becomes difficult to continue in the later stages. The journey is long and challenging, but I'm looking forward to those who are working on it reaching the point where "after enduring, one sees the light", and exploring this capability deeper. + +However, in some specific workflow domains, there are some well-executed examples, such as Automate and n8n. These tools can serve as references for building workflow orchestration. + +### [Automa](https://github.com/AutomaApp/automa) + +Automa is a browser automation workflow extension that uses connectable blocks to conveniently orchestrate your common operations. It includes capabilities like auto-filling forms, taking screenshots, data retrieval, scheduled triggering, browser operations, and web interactions. It can efficiently take over your repetitive tasks, similar to quick commands. + +![](https://cdn.fliggy.com/upic/7lTSua.gif) + +Its strengths lie in its ease of use and the provision of many out-of-the-box capabilities, allowing users to quickly meet their needs. + +### [n8n](https://github.com/n8n-io/n8n) + +n8n is an expandable workflow automation tool. From what I've seen, it's quite good for orchestrating process nodes and logical control. Moreover, it supports self-deployment based on code. + +![](https://cdn.fliggy.com/upic/eZ0K1t.png) + +## Other Unique Tools + +Aside from the commonly used low-code capabilities mentioned above, there are three very unique tools. In fact, the widely used Notion notebook is also a low-code tool. Its open-source counterpart is called AppFlowy. Another tool, YAO, builds functionalities of various parts through writing configuration DSL JSON. Lastly, there's an open-source method called NocoDB that follows the [Airtable](https://www.airtable.com/) model. + +### [AppFlowy](https://github.com/AppFlowy-IO/AppFlowy) + +As mentioned, those working on low-code should definitely try out Notion, which has been extensively utilized by many. Additionally, you can try the open-source AppFlowy. Based on this, you can explore how to control the data-to-interface display process. + +![](https://cdn.fliggy.com/upic/LOFHaV.jpg) + +### [YAO](https://github.com/YaoApp/yao) + +YAO is an open-source application engine written in Golang and exists as a command-line tool that is ready to use upon download. It's suitable for developing business systems, website/APP APIs, admin panels, and building your own low-code platforms. YAO uses a flow-based programming model and allows for the implementation of various functionalities by writing YAO DSL (JSON format logic description) or using JavaScript to write processors. + +![](https://cdn.fliggy.com/upic/SpKs8N.jpg) + +When I first encountered YAO last year, I was attracted by its innovative approach. Additionally, its built-in interface capabilities are well-designed, and the overall installation experience is smooth. The product implementation of YAO should provide valuable insights for those interested in protocol-driven approaches. For example, the system below is astonishingly created using JSON configuration, including UI presentation. + +![](https://cdn.fliggy.com/upic/n2J5a3.gif) + +### [NocoDB](https://github.com/nocodb/nocodb) + +NocoDB is an open-source alternative to [Airtable](https://www.airtable.com/). What is Airtable? It's a spreadsheet-database hybrid with the functions of a database but essentially a spreadsheet. It can integrate text, images, links, documents, and various materials. Looking back, Notion follows a similar approach, though with a focus on collaborative usage scenarios. + +NocoDB transforms MySQL, PostgreSQL, SQL Server, SQLite, or MariaDB into a smart spreadsheet. Its use cases are quite imaginative, as shown in the gif below. + +![](https://cdn.fliggy.com/upic/7mUPKT.gif) + +Additionally, there's a newcomer in the Airtable domain called **[ApiTable](https://github.com/apitable/apitable)**, which has recently been open-sourced. Overall, it's quite refined and highly recommended to explore. + +![](https://cdn.fliggy.com/upic/JmDgxL.gif) + +## Conclusion + +The low-code segment is highly competitive, but if you find the right application scenarios and can truly solve problems more efficiently than traditional coding, then there is a significant opportunity for growth. Moreover, some opinions in this article are personal; if you find any inaccuracies, please feel free to point them out. diff --git a/_posts_en/2023-01-25-my-2022.md b/_posts_en/2023-01-25-my-2022.md new file mode 100644 index 00000000..2e560824 --- /dev/null +++ b/_posts_en/2023-01-25-my-2022.md @@ -0,0 +1,191 @@ +--- +layout: post +title: Summary of 2022 - Live Freely +date: 2023-01-25 21:00:00 +summary: Today is the fourth day of the new year 2023. For a procrastinator like me, delaying any further might mean never writing it at all, which can't happen. By the time I'm old, I probably won't remember what happened. To me, 2022 was a year worth recording. This article intends to casually talk about life, tinkering, and work. +categories: Life +useVideo: true +lang: en-US +--- + +## What to Talk About + +After 3 years, the pandemic finally ended. It has been years since I wrote a summary other than work-related ones. Today is the fourth day of the new year 2023, and for a procrastinator like me, delaying any further might mean never writing it at all. By the time I'm old, I probably won't remember what happened. + +2022 was a year worth recording for me. I experienced quite a few interesting things and slowly started to understand life a bit more. The title might as well be "Live Freely." I plan to casually talk about life, tinkering, and work from these three aspects. + +## Life + +This year, aside from coding on weekends, some time was spent living life to the fullest. I gradually lost the mindset of "caring about others' opinions." **Live freely, do what I want to do, eat what I want to eat, say what I want to say, with a relaxed attitude, because I don't want to live with too many regrets or too repetitively**. + +### Twelve Months of the Year + +In mid-February, it snowed in Hangzhou. Most of the weekends of that month were probably spent **practicing for the driving test**—reversing, parallel parking, and driving on curved roads. + +In March, I did a **decluttering**, selling the iPad, an extra Mac, several watches, a ukulele, extra headphones, and speakers on Xianyu. I cleaned up the house, threw away a lot of stuff, and felt more refreshed. + +In April, I went to Fuyang to **take the driving test**. I was shocked when I failed the first attempt because I crossed the line, but I passed with 100 points on the second attempt by driving seriously and holding my breath. Due to the Shanghai pandemic lockdown, I specifically went to the supermarket to buy a lot of stuff to stay safe. Fortunately, Hangzhou was not locked down. + +In early May, I went to **play in Jinyun, Lishui** with a group of friends. The scenery in Jinyun is really nice, the sesame cakes are delicious, and we also brought equipment to camp by a small bridge and lake in the drizzle. On the way back, we also experienced the fun of camping on the roadside in the countryside and cooking snail noodles; I got my driver's license this month, passing the third and fourth subjects in one go, which was very cool. Due to the average accommodation arranged by the driving school, I didn't want to go to Fuyang anymore. + +In early June, I drove to **Tai Lake** in Jiangsu for a trip. It was not as fun as Lishui, but luckily I found a good **coffee** shop and had some delicious coffee. On the way back on the highway, a torrential rain started, bigger than the one when Yi Ping went to ask her dad for money that night. It was really scary because I couldn't see anything clearly, but fortunately, I got back safely; later, I went to Xiang Lake a few times, saw the blooming lotus flowers, went boating, and also went to Binjiang to find good coffee. + +In July, Hangzhou started to get hot, and I began to learn swimming. Another exciting event was that **the music festival, closed for over 300 days, finally took place in Taihu, Changzhou**. I immediately bought tickets and finally saw MeCardle live, my favorite rock band, along with Ma Yuan, Fazi, Sea Turtle, Tongue, and New Pants, which I also like. At the end of the month, I went to Tonglu for rafting and visited the cool caves, but the queue for rafting under the scorching sun made me feel a bit ripped off. + +In August, I continued swimming on weekends. It was too hot to go out, so I usually took my Mac to find a place to drink coffee and code. I went to the West Lake area a few times, once stumbling upon a hot spring bathhouse, but parking there was really difficult. + +In September, I suddenly wanted to ride roller coasters and swings, so I spent a day at Hangzhou Paradise. It was my third visit, but this time it felt a bit dull; only physical stimulation, no emotional thrill. Fortunately, at the end of the month, I discovered a surprise: **a new KTV opened near my home, with excellent effects and many original songs by Li Zhi**. I was so happy. + +In October, during the National Day holiday, since traveling abroad was not an option due to the pandemic in recent years, and I had already visited many places in China, I decided to **drive more than 900 KM back home**. I left a day early, without rushing, enjoying the scenery along the way. Thankfully, there was no traffic jam. Most of the journey was on autopilot, but sitting in the car still felt quite tiring. I left at 9 a.m. and arrived home at midnight. I ate a lot of delicious Hunan cuisine at home; after coming back, I continued to sing songs by Li Zhi and ended the month with a barbecue at a friend's balcony and a day of camping in the Jingshan Flower Sea, enjoying the fine weather. + +In November, the weather started to improve. I got into the habit of keeping a camping set in the car. When the sun wasn't too hot, I'd just lay down in the park and sleep, not wanting to think about anything. It was very comfortable. + +In December, the Taiziwan Music Festival in Hangzhou came along, and it was **the best music festival I've ever attended**. Tang Chao happened to be in Hangzhou because he couldn't return to Beijing due to strict controls. I was very much looking forward to Dirty Fingers, MeCardle, and also discovered the treasure band at Baixian Restaurant. In addition, Zhao Lei's live performance was excellent. This month, our team's Outing finally started. We went on a **self-driving tour from Haikou to Wanning to Sanya**. We rented a BMW M4, and the overall travel experience was superb. Wanning is really nice, not too commercialized, and the hotel was excellent. + +In January 2023, **the pandemic finally opened up**. Coincidentally, just a week before Hangzhou opened up, my community was locked down, and I couldn't leave the house for 5 days. After the reopening, I promptly got sunburned a week later, but fortunately, I only felt uncomfortable for an afternoon; the rest was fine. Then came the Spring Festival holiday, and I went to **Xinjiang** for the first time in a long while. The snow was really nice, the food was good, but it was very cold. + +Many records can be seen in this year's [Trend Weekly](http://weekly.tw93.fun/). In addition, I made a video set to Li Zhi's "Rice Store" to preserve some memories. + +{::nomarkdown} + +
+ +
+{:/nomarkdown} + +### Learned to Drive + +A new change this year is that I learned to drive. At the end of 2021, my wife signed me up for a driving school. After passing the first subject, I didn't go because it was too cold. So, thinking of motivating myself to get my driver's license sooner, I pre-ordered a **Model 3**, thinking that by the time the queue was over and I got my license, the car would also be ready. However, the car was ready at the end of March, but I had just passed the second subject 😂. So, in April, I practiced driving crazily and finally got my license on May 13. + + + +Having a car is like having a big toy. I love it even from afar. My life radius has expanded significantly. Later, I drove to the Changzhou Music Festival, to Lishui, to Tai Lake, and even drove from Hangzhou to my hometown in Hunan for the National Day. + +### Learned to Swim + +This summer in Hangzhou was quite hot, and with the pandemic, there weren't many places to go. So, I used my weekends to learn swimming. It wasn't so much learning as it was a new form of entertainment because "learning" often feels like a task with a purpose, whereas this was more like playing, similar to coding. + +After about 7 lessons, from being able to breathe properly to being able to swim back and forth without getting too tired, the moment of realization was genuinely exciting. It was like, "So this is how it's done." Going out to play now included a new activity—hotel swimming, which was very enjoyable. + + + +Since I learned to swim, I wasn't as afraid of the sea anymore. In November, I went diving in Wuzhizhou Island in Hainan and even got a certificate. After coming up to the surface, I had the instructor watch me as I swam in the sea for a while, which was a very fun experience. + +## Tinkering + +The tinkering here refers to technology, learning, and community engagement. In the second half of this year, I consciously started exploring new things, including communicating with peers from other industries, sharing my tinkering, and expressing my products, views, and interesting finds in the community. It was a fun process to discover a different world gradually. + +One change in my thinking this year is **a strong belief in long-termism**. Persisting a little in many things can actually lead to great results, such as open source, Trend Weekly, learning, and community operations mentioned below, all of which are good examples. + +### On Open Source + +> + +This year, I open-sourced 3 works, one of them is [Miaoyan](http://miaoyan.app/), and in October, I open-sourced [Pake](https://github.com/tw93/Pake/). Both projects were well-received by many friends and even attracted interest from investors—a magical experience. Moreover, **Pake surprisingly became the top-ranked Rust project created in 2022**. Through open-sourcing, I met many friends, including fellow Hunanese, designer friends, and partners from Taiwan. We had a lot of exchanges in the group chat, and they even authentically helped prepare the English version, which was quite nice. + + + +Another project is Trend Weekly, which is my weekly learning compilation. I usually spend an afternoon every Sunday on this, discovering new things and playing with new technologies. It was first published on the internal Yuque platform two years ago. Later, some friends who left asked if there was an external version, so I spent a weekend using Astro to create an external version. This year, I published about 50 issues, which was very interesting, more like a special circle of friends for me. + +> + + + +Since the products are open-sourced and free to use, I thought of making an interesting connection and created a "Feed Tangyuan and Cola Canned Food" page. From the second half of the year, the cat food, cans, machines, cat litter, etc., used by the two cats at home, were all covered by friends who support cloud cat raising. I sincerely thank them. + + + +**In total, over the years, open-sourcing Miaoyan / Pake / XRender / WeexUi has accumulated about 20K Stars, gained 2500 followers on GitHub, and met many like-minded friends. It's been very worthwhile!** + +### Social Network + +> + +After the release of Miaoyan in June, I thought of synchronizing subsequent version release logs via Twitter. It was previously posted on V2EX and got promoted by some peers, gradually shifting my main social circle to Twitter, which has a much better atmosphere than domestic platforms. I also met many friends, including some industry big names who later became mutual followers. + + + +Later, I often shared good tools I encountered daily and learning materials on Twitter, along with product iterations of Pake, Miaoyan, and Trend Weekly. In half a year, my Twitter followers increased to over 22,000. Looking at the backend, there were nearly 3 million impressions in a month, which was quite amazing. + + + +**It's very insightful; we can fully express our genuine opinions/interests/tinkering on the internet. Just a little persistence can bring a magical force that introduces you to like-minded people, allowing you to recognize each other and chat about technology or anything else without any reservations, eventually becoming good friends.** + +Additionally, there was an interesting event on Zhihu during the 1024 activities, where I chatted with students from other fields about "How programmers can maintain competitiveness during the internet revolution period." Surprisingly, it got pushed to the homepage, and overall, the conversation was very enjoyable, and I made new friends. That day, I also made a [1024 Easter Egg](https://tw93.netlify.app/) for fellow programmers, which even won an excellent code award on Juejin. + + + +### On Learning + +I believe learning mainly involves input and output. This year, the input was more about **learning beyond technology**, such as business understanding, how to operate a product, how to design, cost calculation, and reading books. The output was mainly sharing with the department and writing articles. + +**On output**, I wrote 10 articles this year. Some were organized drafts of shared talks, and others were about my tinkering projects. + +> + + + +**On input**, I read 9 books this year, mostly after buying a Kindle. Initially, I thought it would just collect dust, but it ended up becoming something I carry with me all the time. Reading books on it is very comfortable. + + + + + + +
+ 1. Energy Management
+ 2. Elon Musk: Tesla, SpaceX, and the Quest for a Fantastic Future
+ 3. The Boiling New Decade
+ 4. The Silent Majority
+ 5. The Golden Age
+ 6. Xiaomi Startup Thoughts
+ 7. The Revelation - Creating Products Users Love
+ 8. The Lychees of Chang'an
+ 9. Liu Qing's Lectures on Western Thoughts
+
+ +Working five days a week, work constitutes the majority of time spent in one's life. Fortunately, during my more than seven years at my company, I've mostly been engaged in work I enjoy, which leaves me quite content. + +Leading a team for over three years, a significant organizational adjustment occurred in July, transitioning from managing a platform-oriented front-end team to an industry-oriented one. The team size grew from 11 to approximately 24 members, reaching a total of over 30 individuals when including SP partners. The shift in focus went from **"improving the platform's integration and ease of integration"** to **"using technology to upgrade industry models,"** presenting numerous fresh challenges. + +In the first half of the year, thanks to efforts in 2021 to address technical debt, including standardizing various tech stacks and refactoring legacy code, we ensured that technical issues did not slow down business development. From a platform perspective, we could have pursued many initiatives but chose to dedicate 120% effort to those we fully understood, quickly verifying results for the rest. This self-driven approach allowed us to deliver more value to the business under the correct premises. + +In the latter half, the focus shifted towards addressing business development from an industry perspective, paying closer attention to solving full-chain business pain points and linking B-side supply chains with C-side user scenarios. This shift uncovered many issues and provided opportunities for solutions, centering the team's efforts on **"how front-end technology can assist the business."** + +Due to privacy and public disclosure concerns, I'll broadly cover a few areas: **"Solving business headaches", "Addressing team pain points" and "How to lead a team."** + +### Solving Business Headaches + +Applying technical solutions to business pain points—from designing solutions to collaborating with partners and seeing the development impact—proves significantly better than blindly following requirement documents. This approach not only resolves issues but also gives the team a greater sense of achievement. + +For platform-oriented businesses, the main concern is **"how my offerings can be integrated into the industry chain quickly and efficiently, and how my platform capabilities can be easily integrated by industry colleagues with clear division of labor."** We helped several business units by migrating their industry modules back to the platform and designing universal solutions to ensure **"the same page in different industries uses the same module for the same function,"** and managed business identities through backend capabilities for unified control. We also developed a simple multi-end module communication solution, enhancing efficiency in multi-end scenarios. This effort, which took about half a year, significantly sped up subsequent business iterations. + +Addressing platform tool scenarios provides an excellent opportunity for engineers to "train." Tool scenarios primarily aim to solve efficiency and usability issues. For example, customer service tools were outdated and scattered across different systems, involving multiple industries and corporate central platforms. We developed a customer service workbench, starting from sketching product fidelity drafts to discussing with business product and backend colleagues, then using product design to delineate platform and industry relations while leveraging micro-frontend capabilities to prevent mutual interference. By mid-year, most customer service staff began using this revamped and more user-friendly system. + +Additionally, we addressed a BD scenario where, after several discussions and understanding tool usage, we collaborated with designers and business colleagues to upgrade the mobile workbench twice. The first upgrade addressed old issues and established product framework logic, while the second, at year-end, focused on improving usability in crucial workflows, enhancing efficiency. + +### Addressing Team Pain Points + +"One codebase for multiple platforms" is a hot topic in the domestic front-end field. Honestly, developing mini-programs can be inefficient and painful, especially when supporting platforms like Alipay, WeChat, and Douyin. With tight deadlines, solving this basic need became the first challenge with the new industry team. + +During a project to enter Douyin, we deployed our mini-program experts and collaborated with platform colleagues to re-evaluate this area, identifying development pain points and incorporating solutions into our OKRs, shifting from a "friendly" cooperation atmosphere to a more contractual collaboration to ensure implementation. We rebuilt the middleware involving Runtime, engineering, and multi-end components, opting for compiled product solutions for performance (though time-consuming). With infrastructure prepared in advance, the business project was completed in one month, earning a fast-coding award. + +Another focus was on user-end performance and experience, often discussed but seldom well-implemented, despite attracting attention. I believe performance issues should be resolved with vigor, followed by a productized tracking solution, allowing a minimal team to maintain an unnoticeable user impact. This approach frees more team members for development efficiency and business innovation. + +Preferring practical user experience over "big data metrics," we bypassed broad indicators to detail performance standards for key industry pages, developing a performance decomposition tree for data visualization. This tool, like solving a math problem, addresses performance issues, with recent upgrades clarifying the cause of page latency and user experience distribution. Monitoring alerts directly notify responsible individuals, establishing a "routine" for addressing these issues. Additionally, we tackled the experience aspect, requiring hands-on effort to resolve issues and develop tools. + +### Leading a Team + +This year, when leading the team, I often reflected on how to enhance the engineering skills of team members through our activities, ensuring everyone has substantial takeaways. Here, engineering capabilities include not only technical skills but also the ability to articulate issues clearly, solve various problems, complete tasks, learn and explore new domains, and develop user-friendly tools and products. We undertook several initiatives, such as continuous open-source contributions, collaborating with the data team on data product visualization analysis, drawing product drafts for numerous B-side products, and observing how users interact with our tools. + +In terms of team development, we gradually focused on cultivating leadership among top team members, forming three sub-teams and two virtual groups. For new members, training involved hands-on guidance from more experienced members, setting good examples. Over the past six months, we regularly shared the "How to be an Engineer" series. + +![New Year's gift from a collaborating team leader](https://gw.alipayobjects.com/zos/k/lk/IMG_3012.jpg) + +The role of frontend developers is gradually evolving into that of product engineers, requiring more than just support tasks but collaboration with backend developers, product managers, and business units to solve real issues with technical solutions. Fortunately, this year's collaboration with the team was close and comfortable, fostering a genuine spirit of teamwork. + +## Conclusion + +Indeed, 2022 had its share of regrets, including stocks from the previous year still "playing dead," seemingly less commitment to keeping up with exercises, and days that sometimes felt repetitive and dull. However, within the 365 days of the year, there were moments that sparkled, as summarized above. + +As Wang Xiaobo wrote in "The Golden Age," "**One must have a theme in life that sustains one's dreams and souls.**" I hope to maintain this state throughout the year. diff --git a/_posts_en/2023-02-06-alacritty.md b/_posts_en/2023-02-06-alacritty.md new file mode 100644 index 00000000..91828611 --- /dev/null +++ b/_posts_en/2023-02-06-alacritty.md @@ -0,0 +1,136 @@ +--- +layout: post +title: Improvements to the Legendary Fastest Terminal +date: 2023-02-06 21:00:00 +feature: https://static.tw93.fun/img/0AscUe.png +summary: Recently, I discovered Alacritty, a cross-platform terminal emulator powered by Rust and accelerated with OpenGL, merely around 5MB in size, touted as the fastest terminal. However, it's truly unattractive. I contemplated whether to revamp it to possibly make it my default terminal. The final product turned out quite well. +categories: Creation +lang: en-US +--- + +## Long Story Short + +It's been a while since I tinkered with command-line terminal tools on my computer. After using iTerm2 for many years, due to being part of the aesthetics crowd, I started using Hyper last year, paired with Oh My Zsh, and it's been pretty smooth, except for the somewhat slow cold start. I've also tried others like Warp, Wez's, Kitty, etc., but none felt quite right. + +I recently stumbled upon Alacritty, a cross-platform terminal emulator powered by Rust and accelerated with OpenGL, merely around 5MB in size, reputed to be the fastest terminal. Regarding its claim to fame as the fastest, the official documentation [here](https://github.com/alacritty/alacritty#faq) explains it. After giving it a try, I found it indeed fast, but also incredibly unattractive. The default appearance was so bad it turned many people away. I thought about giving it a makeover, had some free time over the weekend, and ended up quite pleased with the result. So, I've documented the configuration steps for those interested in tinkering. It takes roughly 10 minutes to set up, **and additionally, on 20230211, by fiddling with Tmux, I enabled Alacritty to support multi-tab switching**, which is detailed at the end of the article. + +````markdown +### 1. Download Installation Package + +Before starting, you can go to [Alacritty](https://github.com/alacritty/alacritty) on Github to download the corresponding package. For Mac users, the package is [Alacritty-v0.11.0.dmg](https://github.com/alacritty/alacritty/releases/download/v0.11.0/Alacritty-v0.11.0.dmg). After downloading, you will see the effect on the left side of the image below, and finally, we will change it to the optimized effect on the right side. + +![Comparison](https://cdn.fliggy.com/upic/OKZX5C.png) + +### 2. Replace the Default Application Icon + +The application icon is really ugly, first, you can download my [logo.icns](https://gw.alipayobjects.com/os/k/41/logo.icns), find `Alacritty.app` in the application folder, select it and press `command + i` to open the Get Info window, then drag and drop the downloaded icns file onto the icon in the top left corner to complete the replacement. The icon will automatically update after reopening. + +### 3. Make Its Display More Beautiful + +I personally prefer software to use an immersive header, and I like to use the [JetBrains Mono](https://www.jetbrains.com/lp/mono/) font. If it's not installed locally, you can download and install it directly. Finally, configure the colors according to preference. Fortunately, all these settings can be put in `~/.config/alacritty/alacritty.yml`. Mine is [alacritty.yml](https://gw.alipayobjects.com/os/k/s0/alacritty.yml). Run the following command to directly download and place it in the corresponding location. + +```bash +curl -fLo ~/.config/alacritty/alacritty.yml --create-dir \ + https://gw.alipayobjects.com/os/k/j2/alacritty.yml +``` +```` + +After executing, reopen to try, and the effect will almost change to the right image effect above. In addition to the style configuration, some common shortcuts are also added (ah, even shortcuts have to be configured), including the following: + +```shell +command + r: Clear the screen, clearing the display of historical command lines +command + w: Hide, the default is to quit directly, this is changed to hide +command + t: Open a new window, if you need a second terminal window +command + shift + w: Close the current window +command + delete: Delete a line +command + f: Search for keywords +command + ←: Jump to the beginning of the line +command + →: Jump to the end of the line +``` + +After configuration, the UI color and font display are roughly as follows, basically quite comfortable highlights. + + +### 4. Why Not Try Fish Shell + +Many students probably use zsh; I did too. However, the overall loading and usage performance of zsh is not very fast, and it is not so convenient to configure. Here, I recommend trying [Fish](https://fishshell.com/), which is very out-of-the-box, and performs very well, with built-in auto-suggestions, syntax highlighting, tab auto-completion, visual Web configuration features. Additionally, the shell's prompt loads super fast, with almost no delay. + +First, you can install the fish shell via brew. During the installation process, it should ask if you want to set it as the default. If after installation, the default is not fish, you can refer to this document [default-shell](https://fishshell.com/docs/current/index.html#default-shell) to set it as default. + +```shell +brew install fish +``` + +````markdown +After installing fish, it's basically good enough to use. You can also run `fish_config` to open the web visualization settings. Besides, I generally don't use too many plugins, but these two are essential to install. The steps can be seen in the installation commands below. + +The first one is `z`, which helps you remember your previous history of opened directories, allowing you to open a corresponding address from any path with just one key. The installation address is at [jethrokuan/z](https://github.com/jethrokuan/z). Before using it, you need to install [fisher](https://github.com/jorgebucaran/fisher) to download plugins. + +The second one is the [pure-fish/pure](https://github.com/pure-fish/pure) theme, which is quite minimalist and can also be downloaded through fisher. + +```shell +# Install fisher +curl -sL https://raw.githubusercontent.com/jorgebucaran/fisher/HEAD/functions/fisher.fish | source && fisher install jorgebucaran/fisher +# Install z +fisher install jethrokuan/z +# Install pure theme +fisher install pure-fish/pure +``` +```` + +The effect after the final installation is as follows: + + + +Regarding the pure theme, you can slightly configure it by entering the commands directly in the terminal, as shown below: + +```bash +# You can change the original > to an emoji you like, for example, I set it to 🏂 +set --universal pure_symbol_prompt 🏂 +# If you don't like the two-line mode, you can put the command line input and the current folder on one line +set --universal pure_enable_single_line_prompt true +``` + +After all configurations are complete, using a normal time-consistent screen recording without any acceleration, you can basically see it opens instantly. + + + +### 5. Possible Issues + +1. Commands installed globally with npm do not work? It's basically because the global install directory is not set in PATH, you can refer to [NPM global commands not working with fish](https://github.com/fish-shell/fish-shell/issues/3023#issuecomment-387944920). +2. How to set Alacritty to open with a global shortcut? Try [Thor](https://github.com/gbammc/Thor), set its shortcut to `option+space` or whatever you prefer, so you can quickly open it even when it's not already open. +3. How to set Fish as the default command line tool for VS Code? Open settings, search for `shellArgs.osx`, and change the option to fish. +4. Alacritty does not support multiple tabs. How can this be supported? There are two ways, the first is to use [zellij](https://github.com/zellij-org/zellij) or [Tmux](https://github.com/tmux/tmux) plugins, you can search for the corresponding documentation. Another way is to package it yourself, refer to this [issue](https://github.com/alacritty/alacritty/issues/1544), but if you're used to it, I think not using tabs is also fine. + +````markdown +### 6. Adding Multi-Tab Capability + +Some users have feedback that Alacritty is not easy to use without the Tab function. Here, I played with [Tmux](https://github.com/tmux/tmux) to customize this capability. However, to be honest, this plugin's functionality is too complex and abundant. My ideal product should be a plug-and-play one with just one command to get everything done. I tried to package it towards a minimalist direction, making the user experience consistent with Chrome's shortcuts. The final effect can be seen below: + + + +Here, I didn't use its split-screen functionality because I don't need it, only the Tab switching and current record retention features were used. Actually, if you're just using the command line simply, the non-Tab solution mentioned above is completely sufficient. However, if you have a strong need for multiple Tabs, then you can follow the steps below to play around: + +```bash +# 1. First, install tmux +brew install tmux +# 2. Download tmux configuration file to local +curl -fLo ~/.tmux.conf \ + https://gw.alipayobjects.com/os/k/8b/.tmux.conf +# 3. Replace the alacritty configuration file +curl -fLo ~/.config/alacritty/alacritty.yml --create-dir \ + https://gw.alipayobjects.com/os/k/l9/alacritty.yml +``` +```` + +After the installation is complete, you can restart Alacritty, and it should by default load tmux. The following shortcuts are added on top of the previous setup: + +```shell +command + t: Open a new tab +command + w: Close the tab +command + number: Jump to the corresponding tab +command + shift + [: Switch to the previous tab +command + shift + ]: Switch to the next tab +``` + +I won't explain too much about what the corresponding configuration files do here, haha, actually, I tinkered for a long time because Tmux's configuration is really too complicated. Those interested in making secondary modifications can find the official documentation to tinker with. Have fun playing. diff --git a/_posts_en/2023-07-02-hongkong.md b/_posts_en/2023-07-02-hongkong.md new file mode 100644 index 00000000..9077ab44 --- /dev/null +++ b/_posts_en/2023-07-02-hongkong.md @@ -0,0 +1,116 @@ +--- +layout: post +title: Hong Kong and Not What I Expected +date: 2023-07-02 21:00:00 +summary: My first trip to Hong Kong was not about ticking off tourist spots but rather observing the culture and environment, leading to discoveries quite different from what I had imagined. Here's a casual chat about those observations. +categories: Life +feature: https://gw.alicdn.com/imgextra/i3/O1CN01Qa9eyp1XpgMQR8wsf_!!6000000002973-0-tps-4032-2268.jpg +lang: en-US +--- + +## The Beginning + +A few months ago, thanks to an introduction by Uncle Wolf, GIAC's Global Internet Architecture Conference invited me to share about the integration of Rust and frontend technologies. The conference was in Shenzhen, and I immediately accepted the offer. Despite having traveled extensively, I had never visited Shenzhen or Hong Kong. Some good friends live there, and finally, there was a "pretext" to visit, which felt great. + +However, my flight from Hangzhou to Shenzhen on Friday night was delayed from 7:40 PM to 10:40 PM. Arriving in Shenzhen around 1 AM, it took me over 20 minutes just to walk out of the airport. After a taxi ride to the hotel, it was already 2:30 AM, and I was exhausted. + +I was scheduled to speak in the afternoon session of the second day. Attending the morning sessions, I noticed how hot AIGC was, while Web 3.0 and Node seemed a bit on the decline. After the day ended, my friends took me out for a barbecue. Although I didn't explore much of Shenzhen, the oysters were truly exceptional (YYDS). Later, we strolled around Shenzhen Bay, gazing at Hong Kong across the water, and then headed to a bar for some casual drinks, which was quite enjoyable. + +The next morning, I headed to Hong Kong. I took a taxi to Futian station, and a 15-minute high-speed train ride later, I arrived at Hong Kong's West Kowloon station. It felt just like taking the subway, albeit with an additional immigration process. + +## Observations + +It was my first visit to Hong Kong. I'm not the type to rush through tourist attractions; instead, I prefer to observe the cultural and environmental settings. I noticed several aspects that were "**Not What I Expected**," which I'll casually talk about here. + +1. On Sundays, parks, plazas, and bridges are filled with gatherings of Filipino maids. I was surprised by their numbers. Despite the rain, they sat on the ground with large and small bags around them, clad in colorful attire, eating, chatting, laughing, singing, and even video chatting with family. It felt like a joyful day off for these hardworking individuals. I saw many such gatherings at Victoria Harbour and later at Kowloon Park. After some research, I learned that Sundays are their official day off. Since restaurants and malls can be expensive, public spaces become a popular choice for these gatherings, reminiscent of a low-key version of camping activities in our country. This also highlights Hong Kong's inclusivity. + +2. The cost of living in Hong Kong is higher than I expected. A bottle of water costs 10 HKD, and a small sandwich from FamilyMart is 30 HKD. Dining at a slightly upscale restaurant can set you back by an average of 500 HKD per person, which deterred me. However, prices at Starbucks are similar to those in mainland China. The fees for services surprised me too; storing luggage at West Kowloon station cost me 140 HKD, and forgetting a locker's code meant paying an additional 60 HKD. Uber rides are pricey; a short trip can easily cost 60 HKD, reminiscent of taxi fares in Japan. Thankfully, the extensive subway network makes public transportation a viable option. Yet, there are places where prices are only marginally higher than in mainland China. For example, dining at "WaSo Ice Room" in Tsim Sha Tsui, we ordered five dishes for just under 160 HKD, leaving us full and satisfied. + +3. Public spaces are exceptionally accessible, creating an atmosphere of equality. Almost every traffic light, elevator, and subway station is equipped to assist visually impaired individuals. Traffic lights emit beeping sounds to indicate when it's safe to cross, and handrails and subway barriers have prominent Braille labels. Even subway station entrances feature Braille for reading and button interactions. + +4. Transportation in Hong Kong has its peculiarities, starting with customizable license plates. In mainland China, plates like "666" or "ILoveYou" would seem fake, but they're perfectly legal in Hong Kong. Cars drive incredibly fast, giving small vehicles a racing feel. Interestingly, adherence to traffic lights isn't strict; about a third of pedestrians cross on red lights if the road is clear. + +5. People in Hong Kong are generally friendly. A local gentleman at the high-speed train station went out of his way to give us directions. Convenience store staff are courteous in explaining things, and it's common to see older individuals working. The streets are filled with foreigners and locals alike, engaging in conversations in Cantonese, which thrilled me as a fan of Hong Kong movies and Cantonese music. + +6. Other observations include the scarcity of power banks (bring your own next time), extremely cold air conditioning in malls, and unpredictable rain showers (an umbrella is a must). + +Observing the cultural and environmental aspects of Hong Kong on my first visit, I discovered many aspects that were **"Not What I Expected"** and wish to share them here. + +1. **Sunday Gatherings of Filipino Maids:** Surprisingly, parks, plazas, and bridges were crowded with Filipino maids on Sundays. Despite the rain, they sat on the ground, surrounded by their belongings, wearing colorful clothes, eating, chatting, laughing, singing, and video chatting with family. This joyful day off seemed like a happy, hardworking holiday. I witnessed this vibrant scene in Victoria Harbour and Kowloon Park. Sundays are their official rest days, and due to high expenses in restaurants and malls, public places become a preferred spot for gatherings with homemade food, reminiscent of a low-key version of camping activities in our country. This showcases Hong Kong's inclusivity. + +2. **High Cost of Living:** The cost of living in Hong Kong was higher than expected. A bottle of water costs 10 HKD, and a small sandwich from FamilyMart is 30 HKD. Dining at a decent restaurant can easily reach an average of 500 HKD per person, which deterred me, although Starbucks prices are similar to those in mainland China. Service fees surprised me; luggage storage at West Kowloon station cost 140 HKD, and forgetting a locker's code required an extra 60 HKD. Considering Uber for a short 1.5 km trip showed a fare of 60 HKD, reminiscent of taxi fares in Japan. Fortunately, the extensive subway network facilitates public transportation. Yet, some places seemed only slightly more expensive than in mainland China. For instance, dining at "WaSo Ice Room" in Tsim Sha Tsui, we spent under 160 HKD for five dishes, feeling full and satisfied. + +3. **Accessibility in Public Spaces:** Public spaces in Hong Kong are remarkably accessible, promoting an atmosphere of equality. Traffic lights, elevators, and subways are well-equipped for visually impaired users, with audible signals at traffic lights and Braille on elevator handrails and subway barriers, even allowing for Braille reading and button interaction at subway station entrances. + +4. **Unique Transportation Aspects:** Vehicle license plates in Hong Kong can be customized, which is quite fascinating. The driving side is the same as in the UK, with cars driving incredibly fast, and small cars giving off a racing vibe. Interestingly, adherence to traffic lights isn't strict; about a third of pedestrians cross even during red lights if the road is clear. + +5. **Friendly Encounters:** Many people, including a helpful gentleman at the high-speed train station and a courteous convenience store worker, were exceptionally friendly. The streets had a fair number of elderly workers, indicating a society that offers employment opportunities to older individuals. The presence of many foreigners and locals alike, conversing in Cantonese, excited me as a fan of Hong Kong movies and Cantonese music. + +6. **Other Observations:** The scarcity of power banks suggests bringing your own on the next visit. Also, mall air conditioning is exceptionally cold, and the weather tends to be unpredictable with sudden rain showers, making an umbrella necessary. Additionally, large screens outside malls displaying news and stock market indices, along with the ease of communication in fluent Cantonese or English, enhance the experience. For instance, ordering a Flat White at Starbucks revealed the importance of understanding local terms. + +In conclusion, while the cost of living is higher than expected, the culture, atmosphere, and scenic beauty of Hong Kong make it worth a second visit. + + +### Take a picture casually + +#### delayed flight + + + + + +#### Shenzhen Bay overlooking Hong Kong + + + + + +#### Victoria Harbour + + + + + + + + + +#### Maid from the Philippines + + + + + +#### Kowloon Park + + + + + +#### Tsim Sha Tsui + + + + + + + + + +#### Hua Sao Ice Room + + + + + +#### Subway Braille + + + +#### Purchase of virtual currency + + + +#### Shenzhen Airport internal shuttle subway + + diff --git a/_posts_en/2023-08-20-edge.md b/_posts_en/2023-08-20-edge.md new file mode 100644 index 00000000..adfbb3ad --- /dev/null +++ b/_posts_en/2023-08-20-edge.md @@ -0,0 +1,142 @@ +--- +layout: post +title: My 2023 Browser Tinkering Journey +date: 2023-08-20 16:00:00 +feature: https://tw93.fun/images/edge1.png +summary: The browser is likely the most frequently used application on many people's computers. For those of us with a penchant for optimization, we often tinker with our work tools until they're in a state of peak usability. Last year, I wrote about my journey tinkering with Mac software. After a year of iterations and changes, I plan to continue writing this year, starting with "My 2023 Browser Tinkering Journey," especially since a friend recently asked me which browser I use. +categories: Creation +lang: en-US +--- + +## Why Write + +The browser is likely the most frequently used application on many people's computers. For those of us with a penchant for optimization, we often tinker with our work tools until they're in a state of peak usability. Last year, I wrote about my journey tinkering with Mac software. After a year of iterations and changes, I plan to continue writing this year, especially since a friend recently asked me which browser I use. So, let's start with "My 2023 Browser Tinkering Journey." + +## Characteristics of a Useful Browser + +Aside from the current browsers generally having no issues with compatibility, including security aspects where they're more or less the same, what characteristics do I believe make a browser useful? + +1. **Speed is paramount**: The speed of opening web pages must be fast, which is the primary criterion. It should not feel sluggish, imparting a sense of swiftness akin to a cheetah. +2. **Highly configurable**: I should be able to turn off anything I don't need. Even if the default initialization isn't great, it should all be disable-able. +3. **Simple, easy to use, and aesthetically pleasing**: It must be straightforward, with a predictable interface where I can find what I need immediately, and the window display should not be unattractive. + +## Browsers I've Used + +I conducted a questionnaire survey last Saturday, retrieving 948 responses, primarily from engineers or those interested in IT. The results were more or less as expected, with an additional 40 or so respondents expressing a strong preference for Firefox. + + + +Most respondents likely use the Chrome browser, which is simple, user-friendly, and reasonably fast after downloading. However, its performance is actually just average, especially evident when I used a 2019 model Mac for comparison. I also have a particular fondness for vertical sidebars, as the top tab bar feels like a waste of space to me. + +I've also extensively used the [ARC](https://arc.net/) browser, a super stylish browser with outstanding interaction design. However, I usually find myself unable to continue using it after a few days, satisfying the aesthetic requirement but falling short in operational certainty and swiftness compared to traditional browsers. + +Besides these, there's Firefox, my favorite browser during my university days when I was a Windows user. However, I stopped using it later due to extension compatibility issues and inconsistent standards in frontend development. I've also tried Opera, [Vivaldi](https://vivaldi.com/zh-hans/), and [Brave](https://brave.com/zh/download/). I gave up on Opera because it doesn't support sidebars, Vivaldi was too customizable and hence too complicated for my liking, and Brave was okay if you value privacy and supports sidebars, but I didn't find it very attractive and eventually gave up on it. Additionally, there's Safari, highly favored by many Apple developers for its simplicity, but its incompatibility with Chrome extensions and the need to install an app for each extension made me abandon it as well. + +## My Final Choice + +Last year, my journey with Mac software introduced Edge as my browser choice, and surprisingly, it remains Edge this year. I have a love-hate relationship with this browser; the hate comes from its very Microsoft-style approach—great for showcases but messy in actual use, with a default effect that feels cluttered. **However, thankfully, all the extra features can be turned off, and with significant UI upgrades this year, the speed feels genuinely swift. Plus, the support for vertical side tab bars** makes it meet my criteria for a "useful browser." However, reaching this state requires considerable configuration work, which is why I'm writing this article. + + + +## Starting Configuration + +If you haven't installed Edge yet, you can download the [official version](https://www.microsoft.com/en-us/edge/download). After downloading, I suggest logging in to the sync feature first. If you don't have a Microsoft account, create one to save your configurations and prevent loss when switching to a new machine. + +**Before starting the configuration, to ensure a smoother transition, I recommend syncing your previous browsing history and bookmarks to the new browser. You can click the first tab on the menu bar `Microsoft Edge`, choose `Import browser data`, and import the records from your previous browser, akin to one-click moving.** + +**Of course, if you're accustomed to Chrome, except for the section "Turning off all the unnecessary stuff," the following can also be applicable**. + +## Turning Off All the Unnecessary Stuff + +1. `Command+.` to enter the settings page, in `Profiles` turn off Microsoft Rewards to minimize distractions. +2. Select `Privacy, search, and services`, aside from `Tracking prevention` and `Microsoft Defender Smartscreen`, turn everything else off, [screenshot of the effect](https://gw.alipayobjects.com/zos/k/8f/SCR-20230818-nzug.png). +3. Continue in `Privacy, search, and services` to the bottom, find `Address bar and search`, change the search engine in the address bar to `Google`, which is significantly better than Bing, [as shown in the screenshot](https://gw.alipayobjects.com/zos/k/db/o8kr1v.png). +4. Select `Appearance`, turn on `Try the new Microsoft Edge appearance`, `Show profile icon in the title bar`, `Show profile switcher in the profile button`, set page zoom to 110% (if you have a high-resolution Mac, a bit of zooming will feel more comfortable), in `Customize toolbar` enable `Hide the title bar in vertical tabs`, enable `Show all open browser windows in vertical tabs`, turn off all `Choose what to show on the toolbar`, turn off all `Context menus`, in `Customize browser` turn on `Tab stops highlight links and form fields on webpages`, `Use double click to close browser tabs`, turn everything else off, final configuration [screenshot](https://gw.alipayobjects.com/zos/k/14/ORSLHn.png). +5. Continue in `Appearance` to the bottom, choose `Customize fonts`, which should be empty by default, you can change all fonts to `Helvetica Neue`, and monospace font to `JetBrains Mono`, [screenshot of the effect](https://gw.alipayobjects.com/zos/k/t0/n1OVak.png). +6. Continue in `Appearance`, find `Hover menu`, you can turn everything off there, [screenshot of the effect](https://gw.alipayobjects.com/zos/k/2g/CIr88d.png). +7. Select `Sidebar`, if you're someone with OCD, I suggest turning everything off here, then click `Discover` to turn off `Show Bing Chat`, [screenshot of the effect](https://gw.alipayobjects.com/zos/k/hl/Ly6T61.png), [Discover screenshot](https://gw.alipayobjects.com/zos/k/nd/q8xMtt.png). +8. Select `System and performance`, you can configure the optimizations according to your situation, you can refer to [my configuration](https://gw.alipayobjects.com/zos/k/wa/9ExeYQ.jpg). + +After the above steps, your new browser should become much cleaner, haha, Edge's product managers might want to chase me down with a 30-meter-long sword after seeing this. + +## Finding Some Useful Extensions + +It's not recommended to have too many extensions, only the essentials, to avoid running efficiency problems or even making it difficult to troubleshoot page bugs. Furthermore, it's advisable not to install extensions directly from the Edge store but to get them from the [Chrome Web Store](https://chrome.google.com/webstore/category/extensions) for a richer and safer experience. The following 6 extensions are ones I use a lot, which I can briefly introduce. + + + +### [Maple Bookmarks](https://chrome.google.com/webstore/detail/maple-bookmarks/lgncmpklmepncbjpiebhdoejhmbcnjad) + +Maple Bookmarks is a bookmark management extension I wrote two years ago but have been using locally until recently, when I decided to upload it to the Chrome store for friends to use. The main reason is that **the browser's default bookmark bar blocks my view**. Having it directly exposed on the page easily distracts me when I'm working on something, so I usually hide the default bookmark bar and use this extension for a smoother browsing experience. + +After installation, simply press `Command + E` to quickly access bookmarks, even with immediate search capability, practical and convenient, like this. + + + +**Before using it, it's advised to organize your bookmarks, adjust the commonly used order, and delete the less frequently used ones, placing folders at the back**. Then, hide the bookmark bar with `Command+Shift+B`, and it's also recommended to show `Maple` in the Toolbar for easy access. + +Additionally, **if you find Edge's default new tab page too ugly, you can switch to my [Maple Newtab](https://chrome.google.com/webstore/detail/maple-newtab/fobmbldflolfooglijmbibmnhoflbjlb/)**, which supports blank clean pages, Trendy Weekly images, Bing images as background options. Place the cursor on the background image, wait for 2s for the switch box to appear, and click to switch. + +### [Immersive Translate](https://chrome.google.com/webstore/detail/immersive-translate/bpoadfkcbjbfhfodiogcnhhhpibjhbnh) + +This extension is the most amazing and powerful Chrome extension I've encountered this year, and also the best web page translation plugin. After downloading, it's highly recommended to follow its setup instructions, set up convenient shortcuts, and it's advised to use the ChatGPT mode for translation, which works very well. + + + +For more detailed usage, you can visit the [Immersive Translate](https://immersivetranslate.com/) official website, which is almost entirely free to use. + +### [uBlock Origin](https://chrome.google.com/webstore/detail/ublock-origin/cjpalhdlnbpafiamejdnhcphjbkeiagm) + +How could a browser exist without an ad-blocking plugin? However, many ad-blocking plugins are memory-intensive and not as lightweight or customizable as I would prefer. I've been using uBlock Origin for several years, an efficient network request filtering tool that uses minimal memory and CPU. + +Once installed, you can go into the extension settings and turn off options you deem unnecessary. Also, in the rules list, select only the main filtering rules, such as those with "Chinese" or "中文". **If you want to simplify the process, you can download my [my-ublock-backup](https://gw.alipayobjects.com/os/k/1/my-ublock-backup.txt) and choose `Restore from file...` in the settings to overwrite directly**. + + + +With this, if you encounter unblocked ads or non-ad elements you wish to hide, you can directly right-click to customize and hide things you don't want to see. + +### [Violentmonkey](https://chrome.google.com/webstore/detail/jinjaccalgkegednnccohejagnlnfdag) + +Violentmonkey is one of those tools that you don't realize how powerful it is until you start using it. I had heard about userscripts long ago but hadn't really used them until I encountered situations where they became essential. Once I started, I couldn't stop. With its ability to inject JS, you can do a lot, and there are many scripts already written by others. + + + +However, I don't recommend installing too many scripts. Currently, I mainly use these 7 scripts, and you can selectively install as needed. Additionally, it's advisable to turn on the sync feature in the extension settings for easy use on a new computer. **If you prefer not to bother, you can import my pre-configured [backup file](https://gw.alipayobjects.com/os/k/lc/violentmonkey.zip)**. + +1. [Twitter X -> Blue Bird](https://greasyfork.org/zh-CN/scripts/471782-twitter-x-blue-bird): If you use Twitter, replace the Twitter X logo with a little blue bird. +2. [CSDN Ad Blocker](https://greasyfork.org/zh-CN/scripts/378351-csdn-ad-blocker): No need to log in anymore! Experience a new CSDN. +3. Remove Specific Background Watermarks: A plugin I wrote to remove watermarks from web pages. It's simple, and you can look up how to write it, making your pages less ugly. This is available in the backup file. +4. [anti-redirect](https://greasyfork.org/zh-CN/scripts/11915-anti-redirect): Removes redirections on Google/Baidu/Sogou/360/Zhihu/Tieba/Jianshu/Douban/Weibo... +5. [V2EX Polish](https://greasyfork.org/zh-CN/scripts/459848-v2ex-polish): A browser plugin designed for V2EX users, offering rich extension features for a rejuvenated native page. +6. [Make Your Lark Better](https://greasyfork.org/zh-CN/scripts/473205-make-your-lark-better): Breaks Lark's copy restriction, especially useful when you need to copy some documents and find it restricted. + +### [Minimal Theme for Twitter](https://chrome.google.com/webstore/detail/minimal-theme-for-twitter/pobhoodpcipjmedfenaigbeloiidbflp) + +If you're on Twitter, don't miss this extension. It can transform your ugly Twitter page into a very clean one. My configuration [looks like this](https://gw.alipayobjects.com/zos/k/lf/nYtapH.png), and you're welcome to copy it. + +## The Very End + +There are many efficient ways to use a browser, such as becoming familiar with shortcuts. Here are some I frequently use that you might find helpful to remember: + +1. `Command+L` for quick searches of history, bookmarks, and URLs. +2. `Command+T` to open a new tab. +3. `Command+Y` for history. +4. `Command+Shift+B` to toggle the bookmarks bar. +5. `Command+Shift+J` for downloads. +6. `Command + Shift + N` for incognito mode. +7. `Command + Number` to jump to a specific TAB page. +8. `Command + Shift + Delete` to clear browser history. +9. `Command + Shift + []` to switch between tabs. + +Additionally, I've bookmarked some commonly used pages that help me improve efficiency or for learning and reading: + +1. [Shots](https://shots.so/): Most screenshots in this article were beautified and standardized using this tool. +2. [Dribbble](https://dribbble.com/shots): A go-to for design ideas and inspiration. +3. [Daily.dev](https://app.daily.dev/onboarding): For reading international tech articles. +4. [macOSicons](https://macosicons.com/#/): For finding attractive icons for Mac apps. +5. [Pexels](https://www.pexels.com/zh-cn/): For royalty-free images. +6. [unDraw](https://undraw.co/illustrations): For simple, attractive SVG illustrations. +7. [Squoosh](https://squoosh.app/): For compressing images. +8. [Iconfont](https://www.iconfont.cn/): An increasingly useful icon download site. + +Getting used to quick browser operations and remembering your commonly used sites can significantly enhance your browsing experience. However, I suggest not following my methods entirely but selecting based on your preferences. Still, it's worth tinkering with, as it can be quite fun. If you have any browser tips you find useful, feel free to discuss and share ❤️. diff --git a/_posts_en/2024-02-13-my-2023.md b/_posts_en/2024-02-13-my-2023.md new file mode 100644 index 00000000..67e85ce7 --- /dev/null +++ b/_posts_en/2024-02-13-my-2023.md @@ -0,0 +1,168 @@ +--- +layout: post +title: 2023 Summary - Follow Your Heart +date: 2024-02-13 16:00:00 +summary: Today is the fourth day of the Lunar New Year. Haha, my annual summary is delayed again. The summary for 2022, "Live Freely," was also around this time. This year, I did quite a few things I wanted to do according to my own preferences. Let's call it "Follow Your Heart." I plan to talk about my interesting life, endeavors, and work in 2023 through a self-questioning and answering format. +categories: Life +lang: en-US +--- + +Today is the fourth day of the Lunar New Year. Haha, my annual summary is delayed again. The summary for 2022, "Live Freely," was also around this time. This year, I did quite a few things I wanted to do according to my own preferences. Let's call it "**Follow Your Heart**." I plan to talk about my life, endeavors, and work this year through a self-questioning and answering format. + +## Life + +I've always felt that if every day is the same, then that day is wasted. So, I try to experience different things as much as possible, meet different people, as such a life is more interesting. + +### I. What interesting things happened in 2023? + +![](https://gw.alipayobjects.com/zos/k/bw/IMG_4743.JPG) + +In March, the weather was nice, so I went for a spring outing around Hangzhou, admiring the new greenery and a lot of cherry blossoms. I took some photos for the cover of a trendy weekly magazine, **visited many nice new coffee shops to enjoy coffee**, and spent the weekends coding on my laptop. + +In April, I took a vacation to Qiandao Lake. I remember a fish head costing 200 yuan and it wasn't even tasty; the commercial vibe was a bit too strong, so I won't go again next time. At the end of the month, I also went to West Lake at night to experience the West Lake of the young people at midnight, listening to Wan Qing's "Kill That Man from Shijiazhuang," which was very passionate. + +In May, I underwent **all-laser LASIK surgery**, getting rid of my glasses of more than 10 years. It felt great not wearing glasses. What I remember most about this month was daily eye drops and the miraculous process of vision recovery. + +In June, the weather was very hot. I spent a lot of weekends coding in cafes, and the rest of the time was spent shopping for furniture and appliances like desks, dining tables, TV cabinets, refrigerators, and washing machines. I find choosing these kinds of things particularly interesting because it brings me joy to buy things I like. + +In July, at the beginning of the month, I went to the **Shenzhen GIAC Conference** to share "Pake - Easily Build Lightweight Applications with Rust." It was also my first visit to Shenzhen, where I met up with good buddies I hadn't seen for several years. Later, I **went to Hong Kong**, took many photos, ate a lot, and wrote about "Hong Kong and its Unexpected Aspects"; in the latter half of the month, I also shared content related to Rust on a live broadcast on Juejin; this month, my **MacBook Pro M2 in Space Gray** finally arrived, and I absolutely loved it. + +In August, at the beginning of the month, I met offline with friends like Thomas Yao, Tura Ding, Mingcheng, and An Bufe at Liangzhu and went to Mogan Mountain for coffee, which was very enjoyable; mid-month, I visited Wang Xiaobo's bookstore "My Spiritual Home," which was very quiet and atmospheric, as I love Wang Xiaobo's articles; the happiest event at the end of the month was buying a Dahon P8 folding bike, and for the following months, I rode it to and from work, enjoying the breeze, **and I've actually ridden 600 kilometers so far**, which is very cool. + +In September, a major event of the year was **moving from the rental house to the new home**, buying many beautiful pieces of furniture and appliances, setting up a study and a cat house, and even putting together a simple home theater, slowly getting the feeling of settling down, which was very satisfying. + +In October, during the National Day holiday, I drove a toy car back to my hometown in Hunan, ate a lot of delicious food, and shortly after returning, **I went to the Chongqing Frontend Conference** to share "The Dilemma and Breakthrough of the New Generation of Frontend Development." I also met friends from Ant Group that I hadn't seen for a long time, ate local hotpot, and had a great weekend. This month I got the 15 Pro, sold my 13 Pro, and started keeping fish, buying an aquarium/fish/aquatic plants, feeding, changing water, and watching the fish, which was quite interesting. + +In November, for the first time post-pandemic, **I went to Tokyo and Osaka in Japan for 5 days**, took the Shinkansen to see the long-awaited Mount Fuji, went up the Tokyo Skytree to view the night scene of Tokyo, visited Akihabara, Ginza, and had a delightful meal with MiaoYan's Japanese developers. I also bought a GUCCI bag for my wife, which was very beautiful, and she was very happy. + +In December, **I went to the Microsoft GitHub Universe in Shanghai to share "My Open Source Growth Journey"**, met Github's VP Scott Densmore, which made me realize that being fluent in English would make participating in the open source community more interesting. Later, I visited the Pudong Art Museum's exhibition, which was quite nice; this month, I bought AirPods Pro2, grilled steaks on a grill (which tasted okay), bought a semi-automatic coffee machine, and enjoyed a cup of coffee every morning. + +In December and January, in the early days, I invited nearly 18 buddies to my place for a day of fun, playing Switch, petting cats, playing Texas Hold'em, and barbecuing, which was quite nice; in mid-January, **I went to Ankang**, saw a very small airport, tasted delicious steamed noodles, and brought back some spicy sausages from a relative's home; **before the New Year, I organized a New Year's Eve dinner for the team**, rented the second floor of a roasted whole lamb restaurant, gave out some gifts, and had a good time laughing and talking; this month, I bought a nice-looking lamp, a good-feeling mahjong set, completed my coffee-making tools, and went to the flower and fish market to get 10 peacock fishes, as well as the fact that Tuandai.com, which burst in a P2P scandal five years ago, started refunding money, which was quite satisfying. + +In February 2024, before the New Year, **I brought my family from Hunan to Hangzhou to spend the New Year for 10 days**, cooking at home, playing mahjong, and strolling around the city, spending the Spring Festival with the family lively and happily. + +### II. What was the most memorable thing? + +There were two things, the first one being the **LASIK surgery**. It only took about a month from deciding to get it done to completion, and fortunately, the recovery went very well. Now, it's so convenient not wearing glasses. The process can be seen at [All-Laser LASIK Surgery Process and Recovery Record](https://tw93.fun/2023-05-17/eyes.html). + +The second one was **moving into the new home**. At the end of September 2023, I finally ended my days of renting. With four bedrooms and a living room, I set up a private study for myself, convenient for quietly reading and coding. During the move-in process, I [bought quite a few things that I wanted](https://twitter.com/HiTw93/status/1756636712049250365), and the process of selecting these items was quite interesting. + + + + + + +
+ + + +
+ +## Endeavors + +**To me, endeavors are more like an elixir of life; they are things I like doing, and doing them well can greatly improve my life, learning, and work**. They even keep me young. This positive feedback loop motivates me to continue doing things. In this section, I want to talk about some of the endeavors I've engaged in technology and open source, as well as content production. + +### III. What interesting things have you done in open source? + +> + +![](https://gw.alipayobjects.com/zos/k/cw/339shots_so.png) + +On the open source front, I continued iterating on MiaoYan and Pake, while also creating a Maple Chrome extension for personal use. Along with XRender, Trendy Weekly, and my blog, I maintained 6 products in 2023. MiaoYan's stars increased from 3.5k to 5k, with 6 releases in total; Pake's stars went from 9.8k to 20.9k, with 12 releases in total. Including my previously open-sourced Weex Ui, **my code-related open source works have accumulated 38K stars and 4600 followers**. + +![](https://gw.alipayobjects.com/zos/k/yr/975shots_so.png) + +This year marks my ninth year in open source, from which I've learned a lot, met many friends, and driven myself to learn how to create useful products and apply open source experience to my work and team management. However, in the second half of this year, most of my spare time was spent on home decoration, so I had less time for coding open source projects on weekends. I hope to spend more time on open source in 2024, creating useful things for everyone to use. + +### IV. What useful content have you produced? + +#### Using Twitter as a Notepad + +> + +![](https://gw.alipayobjects.com/zos/k/lu/460shots_so.png) + +**Twitter followers increased from 22k in 2022 to 74k in 2023**. Every morning, I post about a nice tool I saw the day before, some interesting tinkering, updates on open-source products, recent articles, reflections, learning, and even dishes I've cooked. **I don't like the influencer atmosphere, seeking attention, arguing over issues, or following trends blindly**. Twitter is more like a place for me to communicate with like-minded friends for me. + +#### Treating Weekly Updates as a Circle of Friends + +> + +![](https://gw.alipayobjects.com/zos/k/my/C7r9H4.png) + +Trendy Weekly originated from a flag set at a team meeting in 2020. **In 2023, I produced 52 issues, accumulating to 163 issues in total**, published on both the intranet Yuque and the internet. It compiles the technology learning, trendy tools, books, and movies I encountered over the week. It's more like a weekly habit, **choosing the cover image is quite like posting on a circle of friends**. It’s precisely the cover images that inspire me to go out, take beautiful photos, and attract a group of interested friends to communicate, which is great. + +#### Treating the Blog as a Garden + +> + + + + + + + + + + +
Tech TinkeringLife Insights
+
    +
  1. My Annual Tool Tinkering Journey
  2. +
  3. My 2023 Browser Tinkering Journey
  4. +
  5. Improving the Allegedly Fastest Terminal
  6. +
  7. The Dilemma and Breakthrough of New Generation Frontend Development (Speech)
  8. +
  9. Pake - Easily Build Lightweight Desktop Apps (Speech)
  10. +
  11. My Open Source Growth Journey (Speech)
  12. +
  13. How to Approach Open Source with the Right Mindset
  14. +
  15. Translation: How to Do Great Work
  16. +
+
+
    +
  1. Travelogue of Tokyo & Osaka, Japan
  2. +
  3. Hong Kong: Not What I Expected
  4. +
  5. All-Laser LASIK Surgery Process and Recovery Record
  6. +
  7. My Coffee Machine Beginner's Practice
  8. +
  9. My Home Theater Beginner's Practice
  10. +
  11. My Cycling Beginner's Practice
  12. +
  13. I Can't Believe I'm 30
  14. +
  15. Disliking the Entertainment Atmosphere in Frontend Community
  16. +
+
+ +In 2023, I was more diligent in blogging than before, partly because I gave more public speeches and gradually incorporated elements of life into my blog. This year, I wrote a total of 16 blog posts, long and short, abstract and concrete, **putting some worthy content here, slowly turning it into a garden**. Readers can come in and take their time looking around, discussing and exchanging ideas on topics of interest, which is very interesting. + +## Work + +Having worked for 8 years since graduation, time has indeed flown by. From being the new, young member to gradually becoming one of the veterans in the department, I'm fortunate that every year, the work I've done has been both enjoyable and challenging, providing me with continuous motivation through solving difficult problems. This time, I'd like to share some of the challenging tasks I've undertaken at work this year. + +### V. What significant changes have occurred in the team? + +![](https://gw.alipayobjects.com/zos/k/i3/1403A475-83B8-4753-B6DD-E8F41DA3245F-9996-000005EE927CC2BE.jpg) + +**Doubling the team size**: From 30 members (24 full-time + 6 SP) in 2022 to 58 members (36 full-time + 22 SP) now, organized into 4 groups according to job functions, we've cultivated 2 outstanding first-line TeamLeaders, and 2 group leaders are also gradually making their mark. + +**Role transformation**: Many team members have transitioned from front-end engineers to product engineers, possessing a strong product sense, capable of drafting prototypes and interactions, solving problems in a productized manner, and collaborating across multiple teams, showing significant growth. + +**Atmospheric change**: Continuously adopting the open-source community approach for team building, pushing for an engineering culture, bi-weekly technical sharing sessions are full and engaging, and monthly OneOnOne communications are progressively established. There's no sense of hierarchy, with a focus more on technology itself. Issues are pointed out directly, and with an increasing number of younger members, the atmosphere has become more relaxed and direct. + +### VI. What different kinds of work have you done? + +**Acting as a professional server-side engineer**: This year, we established a dedicated Node backend team, taking over the company's external gateway integration and open capabilities, providing service interfaces for industry Java backends. Leveraging the advantage of our product engineers, we turned these tasks into a workbench, utilizing AI capabilities for efficiency improvement, ultimately doubling the efficiency compared to before, saving considerable human costs. The productization made it simpler and more accessible for products, development, and testing to collaborate. However, transitioning from front-end to backend poses a significant challenge in terms of stability and comprehensive business capabilities, which we've focused on improving in the past six months. + +**Acting as an independent entrepreneur**: With the surge in AI this year, we formed an AI virtual group with innovative team members, spending a lot of time integrating AI with business scenarios, from rapid experimentation with demos to productized capabilities for mass production. We applied AI extensively in business areas with strong pain points, scalable demands, and low marginal costs, eventually leading to business units actively seeking AI solutions to their problems, transforming the team into problem-solving full-stack engineers without strict role definitions. + +**Adopting foreign habits in work**: With the pandemic easing and increased investment in internationalization, we gradually formed a dedicated international front-end team. Moving away from domestic development modes and interaction habits, we adapted to local user behaviors in multilingual, multi-timezone, and multicurrency scenarios, trying community-proven technical solutions. + +**Acting as a data analyst**: Data is often used to identify issues, but the challenge lies not in the lack of data but in the absence of effective analysis methods. This year, we worked on productizing business operational data, user traffic data, open tracking data validation, and performance smoothness diagnostic tools. We're learning business methods of data analysis and intentionally using the front-end perspective to find better ways to present and analyze data, helping to uncover hidden problems. + +### VII. What personal growth and regrets have you experienced? + +**Growth**: After leading the team through numerous challenges in 2022 and helping solve significant problems for the business, I was directly promoted to the next level at the beginning of 2023. This year required a higher level of demand and capability, but fortunately, I had the support of many like-minded partners who provided silent assistance in tackling tough issues, from whom I learned many technical and methodological approaches. + +**Regrets**: On one hand, due to a multitude of tasks and frequent technical discussions, my time management was suboptimal, leading to less coding time, which is usually a relaxing activity for me. On the other hand, apart from cycling, my exercise was minimal this year, and I didn't read as much as I would have liked. Moving forward, I realize more than ever the importance of maintaining a healthy body and an active mind, which is a slight regret for me. + +## Conclusion + +Before writing this article, I pondered over what word best describes my 2023, eventually settling on "Follow Your Heart" — **doing more of what I want to do, acting according to my own desires or interests, uninhibited by external constraints or influences**. Perhaps this is the essence of life. + +I hope to embark on more unique endeavors in 2024, living more interestingly even on ordinary days, and I hope the same for you. diff --git a/en/index.html b/en/index.html index e1765ce6..7db3d79e 100644 --- a/en/index.html +++ b/en/index.html @@ -4,5 +4,3 @@ comments: false lang: en-US --- - -{% assign current_posts = site.posts_en %} diff --git a/index.html b/index.html index f62b15ba..1c5ef48c 100644 --- a/index.html +++ b/index.html @@ -3,6 +3,3 @@ title: 莫随浮云散,自是江海潮。 comments: false --- - -{% assign current_posts = site.posts %} -