Yesterday, I attended the first phase of the thoughtworks Zheng dajiao School.
Founded by instructor Zheng of thoughtworks, the school aims to provide a series of training courses for former thoughtworkers so that we can integrate into the company culture in advance and learn basic skills at work in advance, reduce post-employment pressure.
From one o'clock P.M. to the office, the first activity was to take photos. Each person took various shapes with the logo of thoughtworks and kept them as photos.
Then Zheng dajiao was officially started at, the first of which was an ice-breaking game. Each person sends a small card, and each person writes his/her name on it. Then, the cards are broken, and then each person selects a random card. We need to find the person on the card within five minutes to learn the basic information, including the name, school, hobby, and major, then, he needs to recommend something he particularly liked to himself. In five minutes, everyone is both the interviewer and the respondent, and the room is very lively. Five minutes later, a classmate introduced the basic information of the person he interviewed and the recommended stuff. Then the person mentioned went on to the next Introducer. In this way, everyone will be chained up, and everyone will be introduced soon. The recommended items include software, websites, movies, sports, and even Meimei. They are quite open. Next, it's time to test everyone's attention and memory. One person takes a kangaroo toy and casually throts it to another person. The person who receives the kangaroo needs to name the person who threw the kangaroo to you, if not, you have to punish a program. It seems that you have to prepare a talent show in advance for the next activity. Maybe you will be "punished" for any time.
after the ice-breaking game, everyone became more familiar with each other. Next, a senior engineer who joined the game this year will share with us the basic information about thoughtworks Universtiy she just attended. Every new employee of thoughtworks will go to India to attend the twu for about a month. In twu, many things will be taught, such as the PPT presentation method, reconstruction, and object-oriented design principles, team Cooperation and other aspects, of course, are also indispensable for a variety of outing activities. In twu, all English communication is used. If the English level is normal, I want to make up for it. I was most impressed by the following two points: (1) a PPT speech method called pecha Kucha, the duration of each page of the speaker's PPT on the screen is controlled at 20 seconds. After 20 seconds, the speaker automatically switches to the next page. If the duration of each page is too long or too short, the speaker may be embarrassed. (2) The comments in Code serve the same purpose as perfume. When we smell bad, I would like to use perfume to cover it up. When the code we write is unclear and understandable, I would also want to use annotations to make up for it. The correct approach should be to fundamentally solve the problem, improve our own design and coding style, and let our code be self-Annotated.
After introducing twu, Mr. Zheng started playing in person. Instructor Zheng combed the terms that we need to understand and understand throughout the software development process. The teacher first wrote the five major software development steps on the glass wall: requirement, design, development, test, and maintenance. Then, for each step, let's think about what words we most often encounter in this step. When you don't understand what others say, you can ask a question out loud and ask the author to explain it in detail. The entire activity lasted for more than an hour, and I was deeply impressed by the following points: (1) function length: How long a function can't be tolerated? Some say 20 rows. Some say that a screen can be viewed. According to the standard put forward by teacher Zheng, the shorter the screen, the better. No one will blame you for a function line. In my preliminary understanding, the shorter the function, the more single the function's responsibilities, the more clearly the function's role can be said through the function name, the better readability, and the smaller the function, the higher the reusability. Of course, a deeper understanding requires continuous learning and exercises. (2) continuous integration and continuous delivery: We usually develop a software program. Many unexpected problems may occur after being deployed in the customer environment during module integration and delivery, continuous integration and continuous delivery require frequent occurrence and verification of these highly risky links. (3) Automation: do not let the brain do what machines can do. This isProgramOne of the most basic excellent qualities. (4) Developer testing: testing is not only a QA responsibility. As a developer, do you have the face to give your unconfident code to others for verification? QA wants to do more meaningful things, such as exploratory testing.
Next is the recommendation process for books and websites. We recommend that you read clean code, test-driven development, refactoring, productive progarmmer, agile software development, and implementation patterns. The recommended websites include www.infoq.com/cn, github.com, stackoverflow.com, and the download site of an e-book: www.ppurl.com
The last step is to summarize the content that each person thinks today's event is well, less well or suggesstion, which is written on multiple small cards and pasted in the corresponding area on the glass wall, one owner can read and classify the content one by one, so that everyone can make decisions on future improvement methods.
after the next activity for two weeks, you need to program the program in practice. First, install and familiarize yourself with the following tools on your computer: intellij idea, JUnit, git, gradle, if you are not familiar with Java, you can learn it in advance. We recommend the Getting Started book head first Java.