I love to write code. That is not a good news for a CEO who has a business to run, but I just cannot stop loving writing code!
The story started in 1986, when I was in grade three in primary school. There was a small computer calendar booklet in my home, among tones of others on electronic engineering.
I read it and was amazed by the idea that computers were so smart that they can calculate 1000 times faster than human brain, but at the same time, they were so stupid that they could only do very limited plus calculation at the bottom. That was the early years of my exposure to computer. The lesson learnt is, if you want your kid to grow into some type of people, just buy some books on the topic and put it within the reach of the kids. See what happens!
I first seriously learnt BASIC when I was 12 years old, taught by my older brother Jianzhao in winter of 1989. BASIC was not that hard to learn for a kid, although the concept
i = i + 1
was actually a valid expression puzzled me and almost failed my math test. I went to my parent’s office to use the IBM terminal to run BASIC programs during the summer holiday. The green characters on black screens were just amazing. When I understood that the terminals were all hooked into a central computer 10 floors down the building, and the CPU time was allocated to each terminal in very fast circles, I just feel like, in Matrix!
Although my chance to use computers ended from that winter, I just kept writing code on papers days and nights for the coming summer. I still have a big box of paper with all the BASIC codes on it – pages after pages. Those codes were never run on real computer, but I read it and run them on my brain again and again, just like people reading novels today. Among them, the most complicated one was a computer game “Policeman vs Thief”. The game was re-written in C 10 years later on a rented PC in my dorm, which Wendy praised: “Cute!”.
The passion for programming was pressed in middle school when getting into university was the only goal. I lost 6 years of golden time that may be valuable to become a great hacker. Lesson learnt: Why there is no Linus, or Jobs, or Gates in China? The most creative and passionate time one can have for one thing, say, piano, drawing, writing, or in my case, programming, was wasted to compete with each other to get the keys to secure a job!
The renaissance of programming came when I got to university. I spent hours in computer labs, skipping a lot of classes, programming in C and IPX/SPX protocol. In my graduation essay, I choose to write a workable SQL database starting from SQL parsing, to storage, and a little bit indexing and serving. The professors never got really interested in what the hack the 300 pages of paper were. I am equally not interested about they said. I did just for fun.
But, I have to say, university was just too late for anyone to grow to be really good hacker. I went to work for Microsoft for few years, where I think the best programmers in the world gather at that time (1998), but that was not the case. Till now, I would say, I am still an OK programmer at most, despite of the passion. The lesson is, programming is also like piano. It must start early, and to spend enough time before university. Now, I am still very attracted by python, and similar code, but it is more like my own way of enjoy life. Drawing and coding are my equivalent of movie, massage, watching TV or reading novel.
That is my brief story of coding – a failed case of someone who loves code but switched path along the way, and failed to be a great hacker. Here is the lesson I learnt and I hope it can be helpful to build a great hacker.
- Give kids the opportunity to expose to as many things as possible
- Do it in small ways, like throwing a book on the floor. A rat will bite the cake, and a cat will be attracted to fish. You don’t know what your kid is.
- Release the pressure for near future, so the kids have time to work on life long goals.
- If you have something you love to do, stick to it, and be confident that you are right. Others are just not you.