This article was first published in
Ou LeiLiu. As I will be adding, revising, and polishing articles from time to time, please read to ensure that you are seeing the latest version
The original.

The period from 2020 to 2022 is my three years. As I’ve written before, “three years” means a lot to me —

So far in my life, junior high school is three years, senior high school is three years, because of the junior college, so the university is also three years — study period, except primary school are every three years for a stage. Such “coincidence” makes me feel that “three years” seems to have a special meaning for me.

– the ray”Three year itch”

Why are these three years “mine”? The numbers “2020” and “2021” respectively have a homonym for my name, while “2022” contains my birthday. Combined with what I have gained this year and what I will do next, I believe that these three years will have a serious impact on my future life and become an important turning point in my life.

Although I am not superstitious, I believe that everything that happens to me is “arranged” by following a certain pattern —

When buying mobile phone case, the first sight to see the left that, give me a kind of “wabi-び sabi mi” feeling, think the surface is uneven, then order. After receiving did not expect to also send a Saitama Mr..

The one I originally ordered was not as disappointing as I expected, and did not have the face and touch of Saitama, so I decided to use the freebie anyway.

Having given me Mr. Saitama’s face and letting me use it, I think it’s an attempt to make me stronger and invincible.

Believe everything is the best arrangement.

– the rayidea

This year marks my 10th year of working as a front-end engineer. For the first 10 years of my career as a software engineer, I was almost always in a state of wild growth — there were no leaders, and growth was largely by myself and luck.

I rate myself professionally the way I did in high school and college — qualified, but not a straight A student. To sum up the experience of this decade —

Everyone’s experience may be similar, but will never be the same, no matter success or failure is their own, “success” can be shared with others, but “failure” can only be swallowed with tears; A person’s ability is not necessarily related to “time”, such as “age”, “work experience”, the real influence factors are experienced “things” and related “thinking”, in fact, is “knowledge” and “wisdom”; “Old” is the stereotype of me based on my age. I think I am still “young”.

– the ray”A 32-year-old “old” Yard farmer’s retort: fledgling”

To get a sense of my work experience over the years, check out the series of articles on a 32-year-old “Yard Farmer”.

This year’s harvest

Effective thinking

I’ve always been a person who likes to think, but it’s a shame that this year I started to realize what “thinking effectively” and “thinking ineffectively” mean.

“Effective thinking” is thinking that strengthens and refines one’s knowledge/ability system, making one wiser and making better decisions. “Ineffective thinking” is thinking that has little positive effect on oneself, has no basis and cannot stand scrutiny, also known as “thinking”. This kind of thinking is a waste of time.

Now that you are aware of what works, you should try to avoid ineffective thinking. This year, more effective thinking than ever, has reshaped my outlook

What is the world made of? What is the nature of the world? Maybe you would say particles, matter, but I think information.

Here, “information” is a relatively abstract and generalized concept, with different forms, such as: matter, energy, graphics, text, sound, color, and so on.

Information is “general information” and “meta information”. General information falls into two categories: a form; The process of passing from one form to another. What exactly meta-information is, which only God should know, is something like “logos.”

Just like the “law of conservation of energy”, the amount of information is conserved — information can neither be created nor disappeared, but can be changed from one form to another.

– the ray”Life metaprogramming”

This view is called “informationalism”, just like “materialism” and “idealism”. I bought a book called “Information Theory: Essence · Diversity · Unity” in order to provide a theoretical basis for my views

The content of this book is not simply Shannon’s information theory, but a relatively general “information theory” from the introduction. It is also for this reason that I bought it, believing that it can provide a certain theoretical basis for my “only information theory”.

The back cover mentions “how information relates to knowledge and data”, which should be related to the “DIKW Pyramid”. “DIKW Pyramid” is the pyramid model of “Data”, “Information”, “Knowledge” and “Wisdom”.

– the rayidea

In the article mentioned above, there are also what I consider to be the three lowest abilities of a person

In terms of the progressive relationship of cognition, I will briefly talk about a few meta-abilities that I think are fundamental and important: the ability to model “what”; The ability to learn “how to know”; Management skills in “how to use”.

– the ray”Life metaprogramming”

In terms of modeling, when I went to Beijing in September, I saw a book in the bookstore of Daxing Airport that interested me very much

I love these kinds of thinking books, including my book
The objective reality of the worldThe “DIKW Pyramid” mentioned in “.

– the rayidea

As effective thinking becomes more common, abstraction becomes a daily habit

We should develop a way of thinking: try to abstract anything, try to generalize it into a general theory. This “general theory” is a relatively low-level and relatively general “model” at a certain level, and “anything” is an “entity” of this “model”. You’ll never grow, let alone break out of your limitations, if you stay on the surface of the “entity.”

Just like the question “Is there any relationship between state management of front-end applications and human organization management?”, people who think at the surface level will certainly not think there is any connection between them. However, the essence is the same, but the methods, means and tools used for different scenarios and fields are different.

– the rayidea

These days have abstracted out several models that I currently consider to be a person’s “metamodel” —

The event model has four attributes: time, place, relevant people and what happened. Among them, the content of what happens can be continuously refined, and countless models can be abstracted from a description to gradually strengthen and improve one’s own knowledge/ability system. An event is one of their own experience, a number of consecutive events constitute the timeline, is one of their own life experience.

A decision model with attributes such as ideals, goals, knowledge/capabilities, actualities, events, etc. A decision is a life choice, the impact of the next life direction.

The above example is just an outline, I have not thought very specific, I will write a detailed article after I think more clearly.

Establish the direction

After ten years of working in this industry, I have accumulated a lot of things that I want to do. Here are a few things that I want to understand a little bit and have already done some of them, which are not related to my career:

  • Front-end Knowledge and Skills Assessment System (See “How to Evaluate a Front-end Engineer?” for the original purpose of doing this. );
  • Anti-Chaos (see “Anti-Chaos” Project);
  • Otaku’s ministry (see “Otakuism” project).

Although want to do a lot, but no one is determined to go to the dark road. It can be said that these years have been confused, has been exploring, has been in a loss. Fortunately, after a few months of idle thinking at home, I have established my future direction — focusing on private, focusing on personal service, concurrently doing family service, and having the opportunity to engage in community service. In the public sector, enterprises tend to serve, followed by government services.

I was recently asked, “Where do you see yourself in five years?” And I said, “Five years from now someone is using my stuff.”

I previously told someone, “I want to build a Spring front-end framework in five years.” However, when I answered the man’s question, what I had in mind was “personal-centered services,” the aforementioned “personal services.”

The kind of personal service I wanted to do was a little different from the current universal sense of “to C.

For one thing, it’s about decentralization — the idea that your data is not centrally held by one person or vendor, but controlled or distributed — which is exactly what the Web was all about.

Most of these services are instrumental-based, whether Web or OS-based, and are native clients, if they are used by themselves and do not require interaction with others or other vendors.

Due to the distributed nature inevitably brought by decentralization, in order to interact with others or other manufacturers, a hub is needed to aggregate and distribute data, or each node is connected to the same standard for communication. A “hub” is equivalent to a traffic hub or a distribution center. “A certain standard” is the amount of Mandarin required to communicate between people who speak different dialects.

When the above form of development, the ideal state, the cooperation between the various industries will be adjusted and improved, almost no giant monopoly phenomenon – the people are the masters of the house, do not do capital leek!

Recently in the personal website reconstruction, the goal is to transform the simple blog into a “personal version of Douban”, my website is the ideal personal service test field. What we’re doing is —

Insomnia, lying dead for seven hours, thinking a few things, including about his personal website

To add a few functions: “idea” or “soliloquize”, is now a very common function, is like Twitter, dinner, micro blog, what idea immediately write out, do not like to write a long article, also do not have to consider the wording; Multi-language support, first (also basically only) English and Japanese version, I will translate my existing articles into the corresponding language, English to my wife to help, Japanese I myself; User identification system, can be considered as an account system, but only used for my personal website related services user identification, using (a variety of) third party login services, no password; The main reason for the comment system is that the Disqus used now is blocked, which has a great impact on the communication with netizens. I want to make a comment system based on the user identification system mentioned above and Git. There are other ideas, but let’s do these first.

These things have in common: a Git-based file store, not a SQL database; The Open Web idea, based on decentralization, is individual-centric, providing free tools that can be deployed to your own server.

– the rayidea

For more on my thoughts on personal service, see this series of articles, which will summarize my experience systematically in the future.

The reason why I wanted to go from “a Spring-like front-end framework” to personal services over the next five years was because I was looking higher. I think that front-end framework will emerge as a byproduct of my exploration of my ideal personal service, and perhaps some other things that I want to do along the way.

Decided to transition

Everyone who sticks to being a programmer faces a choice — do you stick to technology? Or transition to management?

Since most companies in China are business driven rather than technology driven, when they recruit programmers with long working experience, they actually want to hire one to be a management person except for the big companies. Therefore, I have to think about whether I can be a management person first when looking for a job.

This “can” has two aspects, one is the ability, the other is the will.

In terms of management, I still have certain ability. Although I am not excellent, I have always been responsible for team management regardless of whether I am a leader or not. Besides, I have also been a leader of a small team.

The nature of management is to deal with the problems of good people. You need to spend a lot of time on other people. I just want to spend as much time on myself as possible.

But things are different now. In addition to exploring the truth of the world and improving my professional ability, I also want to have a deeper understanding of people. Management is the most suitable job for me. Therefore, I am going to work as a “human-component engineer” in order to become a better software engineer.

In fact, no matter take the technical route or the management route, as long as the software engineer, should grasp the technology, the management both hands, both hands should be hard. The choice between technology and management is different, but it does not mean that we should relax on the other hand.

Expect next year

Work-life balance

The acronym for “work-life balance”, WLB, has been widely seen on the Internet this year, as more and more companies, especially in Hangzhou, known as the “capital of hard work”, have overtly and overtly adopted the “996” or even more exaggerated work policies.

It’s also a follow-up to last year’s “996.ICU” scandal. GitHub also has a repository of companies listed on an eight-hour schedule — 955.WLB.

“Work-life balance” is a literal translation of the term “work-life balance”, and it’s what most people in the workplace strive for, especially those who are married or even have children. The pursuit of work-life balance is about figuring out what is work, what is life, and the balance between the two.

Looking back on the past few years, I feel that I have been busy. In addition to working in the company, or coming home from work or on a day off, I still do work related things every week. I don’t spend much time with my wife, and I don’t have much time to experience and enjoy other things — my mental string is always strained.

I don’t want this anymore! Do not want to wait for a person to old age to recall his life experience after stepping into the society, with a “busy” word to sum up! My life should be rich and colorful, but not so dull and boring!

In this case, I need to define “work” and “life” and establish a “balance point.”

I use one of two criteria to judge whether something should be classified as “work” or “life.

One is fixed, such as the company’s job, what you want to do and what is likely to be a source of income must be “work”; Eating, drinking, spreading, sleeping and other things to maintain survival and ensure health must be “life”.

The other is flexible, the one that I feel constrained to do, like a To-Do List, is “work”. What makes me feel good, what relaxes my mind and my heart, is “life.”

Take reading as an example. If you make rules about how many pages you should read in a day or a week, and how many or which books you should finish in a year, this is “work”. If you decide what to read and how much to read according to your mood or needs, that is “life”.

As for how to balance, can not be refined, need to adjust dynamically according to a few principles —

The workday — Monday through Friday, the non-holiday period — is mostly “work.” With “off duty” as the division point, generally can not deal with the company related work; After work do not look at work to use chat software, have important matter or urgent matter telephone contact. During the period from home to bed, I can do side project, study or summarize knowledge, accompany my wife, etc.

Rest days, which are non-holiday Saturdays and Sundays, are mostly “work” on one day and “life” on the other. The default is Saturday for “work” and Sunday for “life.” The “work” I do on my days off is not company related work, but something like Side Project or writing an article.

Holiday, that is, a few days of legal holidays, the vast majority of time is “life”, a good accompany his wife.

In a word, “work” stresses “fast” — time is money, efficiency is life — efficient; “Life” stresses “slow” — to experience the people, things and things around you with your heart — enjoyment.

Complete site refactoring

It’s been more than five years since the site was last refactored in September 2015. The major changes in that refactoring were: moving from WordPress to Jekyll, a Ruby-based static website builder; Interface style revision, overall looks more concise, article reading experience is better.

The reconfiguration began in late November. As mentioned above, the goal was to transform a simple blog into a “personal version of Douban”.

The reason why I need to restructure this is that I want to gather the data related to me around my personal website as much as possible, instead of continuing to scatter on various platforms. This is also the significance of “personal-centered service” — a person’s online identity should be an independent “individual”. It is not a “user” living on a service provided by another platform.

What should a “personal Douban” look like?

Before the transformation, my website basically only has articles, but after the transformation, it should have at least the following functional modules:

  • “Ideas” module, which is a function like Twitter, Twitter, Twitter, etc.
  • The “people” module, my acquaintances, mainly people I would mention in an article or idea;
  • “My” module lists what I want to do, what I am doing and what I have done, such as mobile roaming, books, video and audio, etc. I will record the progress of what I am doing and score and evaluate what I have done.
  • “Moments” module, a timeline of my activities;
  • “Bookmarks” module, including some useful external links by topic and category;
  • “Favorites” module, according to the theme, according to the category collection of some content in the station.

The data source of a regular static website generator is integrated with the project. During the refactoring, I split the data source into several Git repositories by modules and separated them. Then I added them as Git sub-modules to the main project, and used the command line tools to process the real data source that was separated into the data for the site.

The advantage of this is that the split data source becomes more independent, its description and recording methods are not limited by the static website generator, and it is more flexible to use and easy to extend. Because of this, the Moment module is much easier to do and lays the foundation for other planned features.

Most of the modules listed above are already visible in prototype form, except for transferring data to other platforms, which is a time-consuming and labor-intensive task, especially with the current method of editing files directly. To make editing a little more efficient, I’m going to make a Git-based CMS; In order to be able to send ideas at any time and convenient to share content, we need to do a mobile client.

When all of these things are done, the refactoring is complete. After the reconstruction, my accounts on other platforms will be kept temporarily, but will not be actively maintained. The data retained on them will be regarded as a backup.

conclusion

Various past experiences and various “coincidences” have prompted me to set the direction of development and decide to transform this year. This is inseparable from my several personal characteristics: the pursuit of self; The pursuit of freedom; Be interested in people.

Want to do great things, or need ideal, feelings and sense of mission, one heart for money sooner or later overturned.


Please follow WeChat official number “Coding as Hobby” (search for “Coding as Hobby” in WeChat) and read the latest technical articles. -)