Recently, a post titled “Xiami MAC Client Found a funny note” was posted on the “Sharing Discovery” section of V2EX. As you may have heard, the post sparked a heated discussion.

In line with the principle of “explain the process of the matter, not to stir up trouble”, we made a summary and thought based on the facts.

1. What happened

It all started with a post titled “Xiami MAC Client found a funny note” on V2EX. The original address of the post is www.v2ex.com/t/407653?p=1, and the screenshot below is as follows:

See here, certainly some people question: how can you see such a clear source code?

Before you worry, here is a simple popular science for you:

Xiami MAC client is based on the Electron framework, because there is no confusion and compression protection for the release code, so the extracted and the source code is no different.

The specific view and analysis process, interested in their own can refer to, no longer posted. In short, on the Mac client, by looking at the contents of the application package, find the app.asar file, and then use the text viewer software to open, you can see. As the official deleted the relevant comments in the first time concurrent version, so it is no longer visible. Of course, that’s beside the point.

2. What do you think

The fact is here, netizens have also expressed their views as outsiders.

Netizens from the industry:

As a code farmer, I know that not only your colleagues and leaders will read the code, documents and comments, but also some people I don’t know will read them after a few years of your resignation. I am deeply afraid of them. How dare I write disorderly?

It reflects a status quo of modern software engineering – read and understand the code is so trouble, so begin from medium-sized project, the system of a module code often only write it the engineer seriously read, others is in a state of everyone a stall things in hand, also can’t get to review seriously, naturally occurring among great personal ‘play’ space.


How can this code pass review?


There are also those who look through the appearance to see the essence:

In this case, some pointed out the advantages of compiled languages and exposed the disadvantages of interpreted languages. Compiled languages require a special interpreter to “translate” and ordinary users cannot directly look up the meaning of the code.

More similar to liberal arts students view:

This incident shows the advantages of compiled languages and exposes the disadvantages of interpreted languages. It shows that the main contradiction of current program development is the contradiction between the increasing development demand and the low development speed of compiled language.



3. Follow-up

After this incident, xiami client checked the code overnight, deleted the improper language in xiami music client, fixed the BUG of file confusion failure, and updated the version in time.

As for the problem of who should take the blame, a programmer in Zhihu finally stood up and apologized publicly. Because of hiding, we don’t know who it is, and we don’t need to know, just cut a picture and pass it.


4. Personal opinion

To err is human.

As a programmer, I may be born honest, often see this kind of thing, always think of this sage words.

But in terms of the actual situation, we can not be a melon eating crowd, it is not too big to watch, but we should at least have their own opinions.

At the very least, it’s the programmer who doesn’t take his job seriously and adds inappropriate comments to the code. PS: On the other hand, it’s the ones who never add comments…

On a larger scale, it can rise to issues of personal character and corporate values.

In short, the work attitude issue, personal character and company values are all in the past. Reparations and apologies have been made and there is no point in pursuing them.

Looking back, as outsiders, should we have some reference and thinking? Otherwise, what’s the difference between us and the eating masses?

  • As hackers and Painters says, “programs are written to be seen and run on machines.” So take every line of code and comment you write seriously.

  • If possible, please implement or cooperate with Code Review to find many irregularities or obvious problems during development. If not, please Review your changes before submitting.

  • Seriously to be released version, responsible for their own products, as their children, careful, cautious. Imagine if a small programmer had done this right, there wouldn’t have been a series of events. Of course, things happen, and even the smallest problems, even the lack of annotations, can be catastrophic.

  • Finally, Revere code, Revere users, and always Revere all people and security.