As the saying goes, a day without reading, no one can see; Two days without reading, opening will be rough; Three days without reading, IQ lost to a pig. So, in order to keep their IQ above Pig, they force themselves to read something every day. However, in the age of information explosion and extremely limited energy, we face an endless stream of changing technology, what should we do?

In fact, a lot of times only need to master a probably good.

I liked to use 5W1H framework very much when I was doing tests. Later, I gradually found that this framework is not only suitable for test planning and system business, but also suitable for knowledge learning. This idea coincides with the following article, so I changed it.

—————————————————— THIS is Hua Lili’s parting line ——————————————————————

A few days ago fork Ruby China source code, in the face of strange Ruby technology stack, confused. I fork it not just to learn, but to build the community site in my head in the shortest time possible. So I can’t buy a book on every new technology and read it for two weeks.

I started Ruby China on the machine, registered a new user, found that I could not post, the prompt said that you need to register more than a month can be. So I went to the code:

# Can I postCopy the code


   def newbie?
   return false if self.verified == true
   self.created_at > 1.week.ago
  endCopy the code

View Code

It’s a week. The code doesn’t lie. So I’m going to change the text and make a pull request. Digressed, the code says that if it is self.verified, it is not a novice. I went to the administration background first to check, but there is no interface for modifying this field. So I had to go to the database and update this field. I kind of knew mongodb was a database, but I didn’t know how to do it.

From a macro perspective

When I learn about a new technical term, I don’t get bogged down in the details, but rather grasp it from a macro perspective. Understand its background, why it’s here, what problems it solves, what kind of technology is there, how we worked without it. Because of the big picture, I can easily relate it to the technology I’m familiar with, so I can understand it faster.

Practice is the mother of wisdom

Go to the website and find a great Try It Out. Spend 10 minutes playing to get a sense of how it works, and then tackle the actual problem.

Show DBS, use ruby_china_dev Based on my experience with SQL, I took it for granted that updating a field of a record would look like this:

 db.users.update({"_id":3}, {verified: true})Copy the code

But I tragically discovered that the entire record had been replaced, well, that’s a document database. How to update specific field in mongodb


db.myCollection.update({condField: 'condValue'}, { $set: { dateField: new Date(2011, 0, 1)}}, false, true); Copy the code

View Code

Corresponding to my requirements here is:


db.users.update({_id:3}, {$set:{verified:true}}, false, true)Copy the code

View Code

Problem solved.

The deeper you get, the more problems you encounter. I put every problem I’ve solved into my Evernote so that the next time I come across it, I can quickly find the answer. When I discovered Postach. IO, a blogging system that synced with Evernote, I started a blog that made it easier for others to find the answer to the same question.

When I’m really interested in a skill and have enough time to learn it, I usually follow these steps.

Teaching is the best way to learn

After enough practice, I might feel like I’ve mastered the craft. But when I try to express it, I am surprised to find that there are still many concepts that I don’t understand. So I would look up information and improve my system. Only when I can translate what I’ve learned into my own words and let the audience understand, can I really master the technology.

It’s important to learn how to share your experience with the technology, write a blog, publish a book, and share your experience at industry conferences. In order to become a recognized expert in the field.

Delay learning

A colleague who reads more than 100 books a year said:

You only read dozens of books a year. Stop reading everything and spend more time choosing.

With so many new technologies coming out these days, we don’t have enough time to learn each one in depth. For most technologies, we just need to understand the concept part, take a look at the big picture, and decide if we want to learn it in depth. With this knowledge, you can chat with others easily and make some reserves for future technology selection. Only get into the hands-on part when there is a real need, or when you have enough time to build skills.

Programming is a knowledge update fast industry, only real enthusiasm and master a good learning method of people, to go for a long time.