Pragmatic Programmer (讲实效的程序员)


Hope this blog space can help guide you through acclerated and enhanced learning and more pragmatic thinking, also assist you on your journey from Novice to Expert.

Programming is all about problem solving. It requires creativity, ingenuity, and invention. For programmers, combining rich, flexible human thoughts with the rigid constraints of a digital computer exposes the power and the deepest flaws of both. Its complexity strains our best abilities daily, and failures can often be spectacular.

Programmers have to learn and relearn constantly: Not just the stereotypical new technologies but also the problem domain of the application, the whims of the user community, the quirks of their teammates, the shifting sands of the industry, and the evolving characteristics of the project itself as it is built. Then we have to apply this learning to the daily barrage of both old and new problems.

Rambling Coding Interview (漫步编码面试)

After completed dozens of phone/onsite interviews with the FAANG and other big tech companies as an interviewee or interviewer over time, I believe there should be a way to extract and put together all these essential fundamentals and algorithms, be good enough for the coding interviews, so that you can brush up yourself just in 7-14 days with a...

Read more

Program Development (程序开发)

A programmer’s day-to-day life is generally spent reading code, fixing errors, and writing new pieces of code. Programming is a highly mentally demanding job as it requires constant problem-solving. In addition to these tasks, there are also meetings with other programmers and stakeholders in the project.

Read more