Actually, I have talked about the history of Chinese statistics in my Zhihu column. If you are interested, you can check it out. Today I am mainly complaining, so some of the background is simpler. I had dinner with Pang Shengdong a few days ago and talked about this matter in person. But to be honest, I still have to thank him for this. The cooperation at that time opened my eyes and raised my understanding of the Internet to a higher level. background 2004 was a tough year for me. After I quit my job at Green Alliance, I was ready to start my own business, but I couldn't make it. I was tinkering with a broken OA (the project with the most coding in my history), but the product concept was terrible, so failure was inevitable. The original advertising chain business was also declining. It could have been maintained without a revision, but when it was revised, a serious mistake was made. A huge verification vulnerability was exploited by hackers, resulting in the loss of a group of core users. It was an irreversible situation. (To be honest, after leaving Green Alliance, the code was still full of security risks. It was really a black history of mine) At this time, I saw that someone had raised funds for statistics. I thought it was simple at first, and wanted to use statistics services to revive the advertising chain business. Of course, it didn't work, but I found that the statistics system was not difficult to make. At that time, I cooperated with some grassroots webmasters and launched two platforms, tong123 and Not bad statistics. On the one hand, I collected needs and improved the system, and on the other hand, I deepened my understanding of this market. Then Pang Shengdong came to me and said that he wanted to do statistics and buy my system. I was poor at the time and had a lot of pressure on my mortgage, so I naturally agreed. As for the price, it was actually not much. At that time, when selling programs, I always calculated the price according to the workload. I thought that more than 20,000 would be enough (the amount of code was really not much), and there were a lot of open source on the Internet. Why would people spend a lot of money to buy my system? But after receiving the money, we didn’t start right away. Pang was building a team, while I was looking for a job. I am grateful to Yu Jun for taking me in and letting me join Baidu. (A little gossip, my first choice was Yahoo at that time. The main reason was that it was close to home. But after meeting them, they ignored me. Two months later, Yahoo’s Wang Hang called me and asked if I was interested in going over to talk. I said sorry, I had already joined Baidu. To be honest, my understanding of the industry and my personal positioning was very confused at that time, so this is why I keep telling young people to broaden their horizons. I was almost 30 that year, and I was still a complete rookie in self-positioning and industry judgment. I have to say one more thing, this is why I admire Yu Jun and respect him as a teacher. To be honest, he didn’t teach me much, but it was from him that I understood how important vision and self-positioning are.) Not long after I joined Baidu, Pang Shengdong said that we could start statistics. At this time, he was already an employee of Baidu. He reported to Yu Jun and said that he had promised him this before joining the company. Yu Jun didn't say anything. This happened at the end of 2004. In early 2005, "1tong Statistics" was officially launched and quickly rose to become the market leader. But to be honest, the technology at that time was really bad, there were many problems, and the stability was not very good. So their operations also complained to me a lot, which I can understand, but the technical communication with them has not been very smooth, and some upgrades that I wanted to do have not been implemented. I will talk about the specific problems later. In the second half of 2005, I sorted out 1tong's technical problems and some solutions (not thorough, but useful) and made a new version. But at this time, I was actually working on it for Baidu. I talked to Baidu's key customer department at the time, and then I applied for a test server internally, hoping that the company would evaluate it. As a result, the supervisor's evaluation result was that the product was not as good as commercial products on the market. I think there are two issues that must be explained. ***, I am not very good at front-end work. Some functions require some processing of js code, and the business definition method needs to be clear. I haven’t done it well enough, but the cost of solving such problems is extremely low. It can be done in two days with a front-end and clear demand definition. Second, I definitely can’t make the interface view, so all that’s displayed are lists of numbers, without any nice charts. These two points are definitely not comparable to commercial products on the market. But I personally think that it is unacceptable to reject a product based on this. The result of my unacceptability is that I hope to prove that my new system is fine with facts, so I chose to cooperate with A Fei, and then CNZZ was born. (In addition, before cooperating with A Fei, an old Baidu sent me a message to buy my system. I directly expressed that Google and companies that cooperate with Google are out of the question. This was also a bottom line for me at Baidu at that time). The value of Baidu's stock in the second half of 2005 has already been reflected. My net worth has leaped compared to 2004. The purpose of cooperating with A Fei is no longer because of the amount of money (I only received a small amount), but there is really a bit of unconvinced in it. So why didn't I continue to cooperate with Pang Shengdong on my new system? This is also what I want to complain about today, and I will explain it clearly below. I am very grateful to A Fei for proving that this system is feasible and giving me more knowledge and understanding of the industry. So today I dare to say that I developed CNZZ when I was working at Baidu, and I don't feel sorry for Baidu, because when I presented it to my superiors, it was rejected, and I personally have a clear conscience towards the company. It's funny to say that n years later, some people in Baidu invited the then CNZZ director Qiang Jie to talk about products and cooperation in the name of cooperation. After the talk, Baidu did not cooperate with CNZZ but focused on developing Baidu Statistics. I have to say one thing, why don't you just let me talk, I will give you the code, really, why go through so much trouble. question Back in late 2004 and early 2005, the technical director of 1tong complained that the technology was flawed, had many bugs, and had stability issues. Was he right? He was quite right. In fact, I am very ashamed. At that time, my level was indeed limited. I did not consider many issues comprehensively, did not do many checks and judgments, and did not have strong enough fault tolerance. So, if I insist on saying that I have no problems, it is wrong. However, there are differences in attitudes and approaches to problems. In fact, 1tong has changed three or four technical leaders. Everyone complained that my code was terrible, and then they wanted to rebuild it themselves. However, none of them seriously looked at my code, analyzed the system, or even bothered to read the suggestions and upgrade plans I wrote. I was ashamed when they pointed out the problems. Of course, I wanted to fix it, but after all, it was someone else's system. I could only write down my understanding and tell them what my design ideas were, what areas the current problems were in, and what the suggestions for modification and upgrade were. However, all of these fell on deaf ears, and no one ever took a serious look at them. This is why I rebuilt a system (the amount of changes was indeed not small), because they didn't change it, so I had to change it myself, and they didn't accept my modification suggestions, so I had to find other people. Until 1tong was sold to Hudongtong and merged with Taijibang, new technical staff came to take over. I thought I should be a good person to the end, so I should help them during the handover (they should have done the handover themselves, but I was the only one who could explain the system). The person who took over came and emphasized how advanced the data warehouse of their system was. I was quite familiar with the first few developers and designers of Taijibang. When it was first launched in 2000, it was indeed the most advanced and was once the market leader. But in 2005, I would like to ask, how come it has no market performance when it is so advanced? At that time, I explained CNZZ's upgrade plan to him again, but he just emphasized that their technology was more powerful. So I had to laugh at him later. Friends who are familiar with me know that I am a person who is willing to share. As long as they are willing, I can explain the system to them from beginning to end. I explain the problem and thinking method clearly. When they find out the problem with me, no one really thinks about what the design idea of this "bad" system is, and why they think such a "bad" system has a market performance that exceeds all open source things? They think that it is their excellent operation ability that makes the bad system play the greatest value. Until CNZZ easily surpassed and became the new market leader, I wonder if these people ever thought that their operational advantages were not as great as they thought. In fact, I was depressed for a long time. I wondered if my code was particularly difficult to understand and the system was particularly awkward. After several people changed, no one could understand the design ideas and could modify my code. Until I started working with A Fei, my depression suddenly disappeared. Today we know that A Fei, Yao Jianjun, is the chairman of Feiyu Technology, a Hong Kong listed company, and a successful grassroots entrepreneur. I believe that no matter how many labels you give him, there will not be a label like "technical expert", right? A Fei used to work in technology, but he is not good at it, and he is not a technical graduate. However, such a grassroots webmaster actually understood my code! And! The modification was very smooth! Later I asked about this matter, and I found that the biggest problem here, which is also the point I want to emphasize in today's sharing, is what is your purpose in taking over this thing. Many technical personnel who work part-time, when they take over a product, a code, or a system, first think about where their value lies and how to prove their level. Therefore, the best way is to start a new system, do their own architecture and design, which is how they can demonstrate their value in the company. Ah Fei was a webmaster and an entrepreneur at the time. He knew his purpose very well. He knew whether this thing could be used to maximize the value at the lowest cost. If it met the requirements, it was good, and if it did not, it was bad. From this perspective, as long as there were no major problems with the basic structure of the system (performance and load support were very good, and could accommodate the volume, which was the foundation of the system at the time), other problems would of course be minor repairs. So later, I can't say how good the code I provided was, but the cooperation was pleasant because we could study and analyze the problems he raised together, find solutions and immediately push forward the modification. You asked if there were many problems. To be honest, there were still many, but we kept moving forward to fix them, and I was happy to do some additional functional upgrades. It was not until 2007 that A Fei transferred the system and a new team took over. I submitted a version upgrade plan without knowing it, but found that the new team had refactored the system, so I gave up. From 2005 to 2007, there were only two programmers in charge of handling the core code of CNZZ, me and A Fei. When reading CNZZ's code, A Fei was learning PHP by himself. He could understand it, and would come to ask if he couldn't understand it, while some professional technical people would only complain and never try to read and understand the code and design ideas. Let's experience the difference. I hope more technicians will reflect on this article. I'm going to repeat the scenario that I often encounter in interviews: Many technical personnel said that they had done secondary development for Discuz. I asked them about their impressions of Discuz, and they had all kinds of complaints and questions. What they said made sense, but most of them could not see the good aspects of Discuz. I asked about some details that Discuz did well, but basically no one could tell me the design ideas. They just complained that Discuz was bad, so they wanted to change it. |
>>: Tencent Cloud Analytics officially releases H5 application data statistics service platform
What kind of preparation and capabilities are nee...
If you were asked to quickly name two famous wate...
As an important development direction in the fiel...
Windows 10 has been released for a year and a half...
Foreign media published an article today saying t...
It is quite troublesome to open a Baidu account n...
The Alipay app, which has hundreds of millions of...
Science and Technology Daily reporter Fu Lili Col...
In Farewell My Concubine, the young protagonist X...
Why do my feet become numb after squatting in the...
During the busy farming season some time ago, Mr....
"Little white rabbit, so white, with two ear...
Before the launch of Juleliang Qianchuan, the Dou...
No matter what kind of marketing we do, we need t...