Skip to main content

14 books I have read in 2020

 

1. Cha Voi: Dạy con nên người ở thời đại số

Author: Trương Nguyện Thành

Language: Vietnamese

I love the methodology of parenting so-called Cha Voi (elephant father). It is neither very strict nor easy. The parents take themself as an example to lead their children.


2. Release it! Design and Deploy Production-Ready Software

Author: Michael T. Nygard

Language: English

It was fun to read stories about how the author investigate and solve the issues of software running on production. I learned lots of terms and strategies to ensure stable software such as health check, circuit breaker, logging, monitoring, etc, ...


3. Algorithms to Live By: The Computer Science of Human Decisions

Author: Brian Christian and Tom Griffiths

Language: English

When talking about algorithms, people usually think it is something complicated and also for computer science only. However, algorithms are actually steps to solve a problem. Life consists of lots of problems. We can use the power of algorithms to solve them. As well there are some algorithms that work fine with the computer but not always can be applied for humans. For example, multi-taskings does not fit for humans.


4. Đường Xưa Mây Trắng: Theo Gót Chân Bụt

Author: Thích Nhất Hạnh

Language: Vietnamese

There are many mindful stories about Bụt (Buddha) which also means awakening. I was wholly convinced by each easy-to-understand story. It is completely not mystical. "Bụt" became of one my life philosophy.


5. Con Đường Chuyển Hoá: Kinh Bốn Lĩnh Vực Quán Niệm

Author: Thích Nhất Hạnh 

Language: Vietnamese

As a next step to dive deep about "Bụt" after reading "Đường Xưa Mây Trắng", this book guided me on how to mediate by a practice so-called "Kinh bốn lĩnh vực quán niệm" (four areas of contemplation). This methodology helps me to collaborate with my emotions very well.


6. You Don't Know JS Yet (2nd edition)

Author: Kyle Simpson

Language: English

I wanted to dive deep into the programming language JS and how it works. Since there were some behaviors that I didn't understand. Not understanding carefully the tool we use daily is somehow dangerous, right? It is tantamount to when you got 10 marks in your test but you actually don't understand why.

JS is an implementation of ECMAScript which is guided by TC39 and hosted by ECMA. JS is a multi-paradigm programming language. JS is a compiled programming language.


7. Từ kiến trúc sư thành bác sĩ tại Hoa Kỳ

Author: Huỳnh Wynn Trần

Language: Vietnamese

The doctor is a tough career. You will adventure with the author as he continually changed his selection over his career.


8. A-Tì-Đạt-Ma Pháp Uẩn Túc Luận

Author:  Moggallāna? (translated to Chinese by 玄奘 (Huyền Tráng), to Vietnamese by Phước Nguyên)

Language: Vietnamese

This book offers many terms such as Học Xứ, Niệm Trụ, Thánh Đế (four nobles truth), Thần Túc, etc. Those are explained in detail and not too difficult to understand. With the motto of not too attentive and contemplating to fully understand, trying to follow the breath, and keeping mindfulness, I finally completed the 600-page book. The book helps me to deeply understand the philosophy of Buddhism.


9. Mike Typson - Sự thật trần trụi

Author: Larry Sloman (translated by Trần Minh)

Language: Vietnamese

What a hard and interesting story about legendary "Iron" Mike. Mike's life is completely different from what I was imagined. That is about an extraordinary effort, opium addiction, and whoremonger. 


10. How to win friends and influence people

Author: Dale Carnegie

Language: English

I have read the Vietname version named "Đắc nhân tâm" a long time ago. This time, I read this English version to enhance my English skills as my primary target. I try to remind myself of this quote "Even god doesn't propose to judge a man till his last days, why should you and I?"


11. The Lean Startup: How Today's Entrepreneurs Use Continuous Innovation to Create Radically Successful Businesses

Author: Eric Ries

Language: English

This year, my friends and I have built a side project called "QuizMarker - Chấm điểm AI". The app is launched on AppStore and Google Play, it is still in testing progress though. Since each member has a limited time for developing the app (around 1 or 2 hours/day), it took us a year to only launching the core feature which is called 1st MVP. As a PO of that project, I have adjusted my mind about the MVP term after reading this book. The strategy is to eliminate waste and focus on customer feedback so that we quickly give a good enough feature to users first instead of building something that users may not use.

12. So Good They Can't Ignore You: Why Skills Trump Passion in the Quest for Work You Love

Author: Cal Newport

Language: English

"Don't follow your passion", "Think small, start big" are examples of advice from the book. It somehow encourages that you should offer what the people need instead of asking for what people can offer you. Remember this quote "Ask not what country can do for you, ask what you can do for your country"?


13. Lịch sử Việt Nam - Từ nguồn gốc đến giữa thế kỷ XX

Author: Lê Thành Khôi (translated by Nguyễn Nghị)

Language: Vietnamese

This book helps me review my country's history, Vietnam. I understood more about the transition between reigns such as Đinh, Lê, Lý, Trần, Hồ, Lê, Tây Sơn, Nguyễn, etc,... I know more about popular people such as Ngô Quyền, Đinh Bộ Lĩnh, Lý Thường Kiệt,  Lê Đại Hành, Trần Quốc Tuấn, Hồ Nguyên Trừng,  Lê Lợi, Nguyễn Xí, Nguyễn Phúc Ánh, Nguyễn Huệ,  Nguyễn Ái Quốc, etc.


14. System Design Interview – An Insider's Guide

Author: Alex Xu

Language: English

This book is an overview of the most today's problems of system design such as scaling app from zero to billions of users, rate limiting, key-value store, unique id generator, URL shortener, web crawler, notification system, news feed system, chat system, etc,...


---

Happy reading! Bye 2020! Welcome, 2021.

Comments

Popular posts from this blog

Selenium - Override javascript functions to ignore downloading process

I have got an issue with downloading process on IE 8. This browser blocks my automatic-download functionality on my app so that I could not work with my test case any more after that. In my case, I didn't care about the file is downloaded or not, I just focus on the result after downloading process finished successfully. Therefore, I found a solution to ignore this process so that I can work normally. I use Primefaces, here is the remote command to trigger the download process <p:remoteCommand name="cmdGenerateDocument" actionListener="#{logic.onGenerateDocument}" update="xrflDocumentCreationPanel" oncomplete="clickDownloadButton();"/> The following is my test case: @Test public void shouldUpdateStep6ToWarningIfStep1IsValidAfterFinished(){ MainPage mainPage = new MainPage(); waitForLoading(mainPage.getDriver()); EmployeeDetailPage empDetailPage = new EmployeeDetailPage(); waitForLoading(empDetailPage.getDriver()); e...

[Snippet] CSS - Child element overlap parent

I searched from somewhere and found that a lot of people says a basic concept for implementing this feature looks like below: HTML code: <div id="parent">  <div id="child">  </div> </div> And, CSS: #parent{   position: relative;   overflow:hidden; } #child{   position: absolute;   top: -1;   right: -1px; } However, I had a lot of grand-parents in my case and the above code didn't work. Therefore, I needed an alternative. I presumed that my app uses Boostrap and AngularJs, maybe some CSS from them affects mine. I didn't know exactly the problem, but I believed when all CSS is loaded into my browser, I could completely handle it. www.tom-collinson.com I tried to create an example to investigated this problem by Fiddle . Accidentally, I just changed: position: parent; to position: static; for one of parents -> the problem is solved. Look at my code: <div class="modal-body dn-placeholder-parent-positi...

Coding Exercise, Episode 1

I have received the following exercise from an interviewer, he didn't give the name of the problem. Honestly, I have no idea how to solve this problem even I have tried to read it three times before. Since I used to be a person who always tells myself "I am not the one good at algorithms", but giving up something too soon which I feel that I didn't spend enough effort to overcome is not my way. Then, I have sticked on it for 24 hours. According to the given image on the problem, I tried to get more clues by searching. Thanks to Google, I found a similar problem on Hackerrank (attached link below). My target here was trying my best to just understand the problem and was trying to solve it accordingly by the Editorial on Hackerrank. Due to this circumstance, it turns me to love solving algorithms from now on (laugh). Check it out! Problem You are given a very organized square of size N (1-based index) and a list of S commands The i th command will follow t...

[Snippet] Generate a new unique "name" string from an existing list

Suppose that we have a list of employees. Everytime, we want to add new employee into this list, the name of the employee will be generated with the following rules: - the name of the new one is set to " [originalname] 1 " - in case the name already exist, " [originalname] 2 " is used, and so on. Here is my code snippet by Javascript: var employees =[ {id: 1, name: 'name'}, {id: 2, name: 'name 1'}, {id: 3, name: 'name 2'}, {id: 5, name: 'name 4'} ]; var commonUtils = { isExistName: function(_name, _collection, _prop) { for(var i = 0; i< _collection.length; i++){ if(_collection[i][_prop].localeCompare(_name)==0){ return true; } } return false; }, generateNewName: function(_name, _collection, _prop){ var i = 1; var searching = true; while (searching) { var newName = _name+ " " + i; if (!this.isExistName(newName, _collection, _pro...

Installing NGINX on macOS

I have heard of a lot of NGINX recently. One of them was it can help for security issues; for sure, it much be more. It so happens that our team has got a ton of user stories from a security audit. It's time to delve into it. What is NGINX? In order to get a basic idea and have some fun , I've just picked some available posts from my favorite Vietnamese blogger communities as below: https://kipalog.com/posts/Cau-hinh-nginx-co-ban---Phan-1 https://viblo.asia/hoang.thi.tuan.dung/posts/ZabG912QGzY6 NGINX (pronounce: Engine-X) is a web server (comparing to IIS, Apache). It can be used as a reverse proxy ( this is what I need for security issues with configuration ), load balancer and more. How to get started? I found the below path for learning NGINX by googling "learn nginx": https://www.quora.com/What-are-some-good-online-resources-to-learn-Nginx In this post, I only went first step. This is installing NGINX on macOS and taking a first look at the confi...