[JAVA] Four technical books that I regret that I should have read when I was a newcomer

Introduction

This article imitates 6 technical books of gratitude that I desperately read because I wanted to get up. In this article, I would like to introduce a technical book that I regret that I should have read when I was a newcomer, with more than 10 years of development experience. I read these books a few years after I joined the company, but I thought I could have done a better job if I read them earlier. Below is an overview of each book and why I regret it.

Appreciation technical book ① "The technology of information, reams, and phases will improve!"

I'm ashamed to say that until I read this book, I had never thought about when and how detailed I would like the person to be reported / consulted to report / consult. Even if my boss told me to do the news, reams, and phases, I didn't really understand how to do it. When I read this book, I realized how much I was communicating with "selfish thinking", and my actions up to that point became very embarrassing. There are various techniques for information, reams, and ministers, but I thought that the most important thing was "__ to convey information of appropriate detail at the right time so that the other party can make decisions __". It was. I think this book will touch your heart because it will teach you the idea carefully with many concrete examples. https://www.amazon.co.jp/dp/4534037023

Thank-you technical book ② "Readable Code"

I didn't even know how to write a comment until I read this book. And I was very embarrassed when I realized that the code I had written was very confusing. In order to write easy-to-understand source code, it is important to know various techniques, but the most important thing is to do the best you can think of so that others can read and understand it. _"I thought. By always keeping that feeling in mind and reading and writing the code, I think that I will absorb various techniques from the code written by various people and improve so that I can apply more understandable code. https://www.amazon.co.jp/dp/4873115655

Technical book of gratitude ③ "Logical Thinking"

Until I read this book, I didn't know that I would build logic without omissions and duplication. For example, when I reported to my boss, it was as follows. I "I analyzed the causes of rework. These are the four causes." Boss "Are the four MECE?" I"???" Also, I didn't know the concept of So What? / Why So ?, so there were a lot of logical jumps at the time of reporting. After reading this book, I was very embarrassed to read back my past presentations. This book is a bestseller, but since it was published in 2001, many other books on logical thinking have been published to date, which may give the impression of being a little old. However, I think it is a very good book in terms of learning the basics of logical thinking, "__ classify without omissions and without duplication, and tell them that there is no leap in logic __". https://www.amazon.co.jp/dp/4492531122

Thanksgiving technical book ④ "Introduction to design patterns learned in Java language"

My project is mainly developed in C #. The title of this book says "Java", but you don't have to know Java. In fact, I know about 10 juniors who read this book, but it didn't matter if they didn't know Java. I've read "Design Patterns for Object-Oriented Reuse" in another book on design patterns, but at the time I couldn't understand it because it was too difficult for me (sorry for the author). In comparison, this book was very easy to read and specifically described the benefits and uses of each pattern. For me, who was an object-oriented beginner at the time, it was a great introduction. After reading this, I think you've finally come to understand the goodness of object-oriented programming. I think that you need to review the design pattern many times because you will forget it once you read it. However, since this book is easy to understand, even if you read it once, you will understand the goodness of object-oriented programming by knowing many concrete examples such as "__ encapsulation to hide information and polymorphism to eliminate conditional judgment statements." I think you can. https://www.amazon.co.jp/dp/4797327030

Summary

All the books are wonderful books that I regret that I should have read them earlier.

2019/10/15 postscript </ b> The book "Getting Out of Legacy Code" was also great. See below for things that might be good to apply to your project. It would be nice to read the book "Escape from Legacy Code" and apply it to your project

My team has read this book and created Lightning Review, a review support tool.

In addition, when we held a study session for young people using the books in this article, it was very effective. See below for details. A story about how young people's behavior improved surprisingly at a 15-minute study session every morning

Information is also posted on Twitter → @kojimadev

Recommended Posts

Four technical books that I regret that I should have read when I was a newcomer
Six thank-you technical books that I desperately read because I wanted to be up
A story that I was really into when I did triple DES with ruby
A memo that I was addicted to when making batch processing with Spring Boot
Technical books that programming beginners who start professional programmers from Java should read (2017 version)
A site that was easy to understand when I was a beginner when I started learning Spring Boot
A story I was addicted to when getting a key that was automatically tried on MyBatis
I faced a problem that JS is not read after page transition and JS is read when loaded.
How to batch initialize arrays in Java that I didn't know when I was a beginner
When I personally developed with Rails, it was a painful story that Rails was hit very much