How to organize a successful technical party?

Since last year, I began to take part in some technical parties. Some are held very successful, while some seem not. In this article, I will share ideas about how to organize a successful technical party and use Golang programming language as an example.

To hold a party, there must have been a stable user group first. According to the number of user, there may need a committee or a president, and the job of the organizer is searching for the sponsors, selecting the topics, etc. Although there have been so many social platforms now, there must be a mailing list for the group. Because as long as the internet exists, the email will not die, while the selected social platform may not.

The period of holding a party may be six weeks or two months. Too long or too short of the interval may not be appropriate. Before holding a party, the organizer could collect topics from the user group. If there are too many topics, the organizer should decide which will be used. Personally, I think four presentations are enough for one party. In the first topic, the speaker could share the latest news or some stories of Golang. The second and third must be Golang orientated, the speakers can share programming skills, debugging tricks, source code analysis, etc. The final topic can be technical related, but may not Golang, and the speaker can share *NIX internals, script programming knowledge, etc.

If possible, recording the videos and uploading them into the internet is better, because this will enhance the influence of the group, and attract more people and sponsors. During or after the party, it is reasonable to do advertising for sponsors since they have provided support, and this behaviour may encourage them to do more support in the future!

Hope this post can help some people! Enjoying a successful technical party!

Why do I need a root privilege?

Last week, the support engineer told me that a strange issue had occurred on commercial system, and gave me an account to let me check. I used this account to log in the system, but when I wanted to use some commands, the system prompted me “Permission denied”. I also wanted to use DTrace, but it also requires root privilege. So the following dialogue came out between I and administrator:

I: I need the root privilege, because I want to write some scrips and do some test.
Administrator: This is the commercial system, only operation team members have root privilege. You can send commands to them and let them execute the commands and send results back to you.
I: I need to do further investigation according to the previous results, and this may last a long time. So I think it is convenient for me to operate the system myself.
Administrator: No, it is not allowed for you to operate the commercial system. You can only send your scripts and commands to operation members, and they can send results back.
I:……

Per my understanding, debugging is a tough progress which may last several days even months, and the engineer need to dig and analyse from previous output then decide what to do next. Sometimes, maybe a digit can spark engineer. So I need a root privilege and do debugging myself, and don’t want to send mails back and forth. This disrupts me!

No root privilege, it really sucks!

Is working experience really so important?

When I browse the recruiting information in the website, I always see the following requirements:”The candidate must have more than 3 years experience in C++ programming” or “The candidate must have more than 3 years experience in iOS development”. I would like to ask the recruiter:”Is working experience really so important?”

In my opinion, the working experience is not a good measurement to decide whether a candidate is fit or not, and use this rule just like using the lines of code to judge the program is good or bad. Frankly, the grammars of every programming languages are similar, and the important thing under the programming languages are the thinking: what is the essence of object-oriented thinking? why does this programming language introduce this feature? etc. These things can’t easily be judged by the years of working experience. If a man doesn’t think deeply of this work, even if he has worked more than 10 years, what’s so special about that?

4 years ago, I came to my current company. I didn’t have any working experience about my work, even hadn’t heard about SS7. But after a month, I found the SS7 protocol stack was very like TCP/IP: they both have routing functions, transport management, etc. After 3 months, I had worked smoothly and not weaker than other veterans. From this progress, I learned there are many commonness among the different knowledge, so long as the man can drill down the work, he can soon become a qualified engineer.

One day, a famous company want to find an engineer who had more than 5 years experience in C++ programming. After reading the information, I sent an email to the recruiter and told that although I hadn’t use C++ for many years, I can soon master it, and the most important thing is the man’s ability, not the number of age. Not surprisingly, the recruiter politely rejected me: “Sorry, sir. You don’t have the required related experience, so we can’t consider you ……”.

Read Li Na’s autobiography

During this mid-autumn vacation, I read the Li Na’s autobiography (http://item.jd.com/11052054.html). Previously, I can only know Li Na from reports and news written by journalists, but from this book, I recognize a real Li Na.

She is also a common girl, and has the same feelings as other people. Below her success, She endures more pains and pressures than common people. We can give her more toleration and applauses rather than criticisms.

Good luck with you, Li Na!