This is the first time for me to write a blog in cnblogs, so I put the address of the homepage here:Jone and Me What I have to make clear in advance is that I write my blog in English because I want to improve the ability to translate from Chinese to English( preparing for CATTI ), while another reason is, English will be used frequently in the future work. So, why not using it now? ###Basic Personal Information 20-year-old boy from Shandong province with slim figure and medium height. ###Strengths and Weaknesses I'm a person who has heavy curiosity and endeavor to try new things. For example, in order to explore the mysteries of languages and experience foreign cultures I took Japanese and French as my electives during the past semesters. Moreover, Because of a favorite song of mine which called "Croatian Rhapsody" I determined to learn the piano. Because of "Titanic" I decide to play the saxophone. For "Viva La Vida" I found a teacher to teach me violin ... ... Now I can play more than 6 musical instruments, though could not play very will but satisfied. More precisely, I do this just for fun, or just to meet my inner demands. It quite like our people play "chicken dinner". No matter how sharp you are, enjoy entertainment is enough. It won't be a true answer if it can be easily spoken out of one's mouth. It's also hard for me to acknowledge that I am an unrealistic person. The reason why I regard myself as an unrealistic person is that I thought too much but little action were taken. Maybe live with fantasy is wonderful, but live in fantasy is tragic.
##Reading and Thinking
###About Major and future project The reason why I choose software engineering as my major or why I decide to work in IT industry is because there is no doubt that computer programs the future, Internet connects the future and artificial intelligence is the future, so, It's no choices left to answer why I do not take that as my career. But the following things far from my expectation I think I'm a person who is complex, changeable and confused. Two years had past since I step in the college gate, however, I have not found my favorite area in IT, and still have no idea about what kind of job to dedicate a lifetime. People always say that the happiest people are those who can take interest as a profession, But for me, it just a extravagant hope. ###About the college years Look back the years past, I do made some achievements in my major. Such as wan the "ShengTeBei" software design competition at the second semester as the identity of freshman, but for me, it's so easy, without counts at all. I always hold a point of view that I am much more intelligent than everyone-else in this school. I can't stand the teachers' speed of lectures because it is too slow for me. Perhaps one hours in the class equals to fifteen minutes with my own. Moreover, the worse thing is that the contents of the final exam nearly as simple as 1 plus 1. To be honest, it took me two hours as average time of per course to pass the final exams successfully last semester. That's boring. Some time, I do envy the students of petroleum engineering, cause they can spend everyday proudly and fully though faced a narrow future. So, what i really want? why I'm here? ###Take further education or find a job Whether to take the postgraduate entrance examination might be a tough question for every students except me. I've no choice but to pursue farther education. For one reason is that I have not find my true love filed to dedicate a lifetime. For another, ：）
Questions in Book
###1st. How to promote team-evolution? In the chapter 5, the author told us what a team is and what kind of teams exist. However, the "Chief Programmer Team" is quite normal in our class or student team, and there is no doubt that if take this modality for granted, a vicious spiral will appear. So, if it could be possible to let the team evolve ? That means change the team modality from one to another which is more scientific and reasonable but without replaceing team members. I hold a view that the meaning of making up a team is not just for handle a problem or construct a project, it can be a catalyzer to promote every team members' technological progress. Yet it won't be effective while in a chief programmer team or a super-star team. So, we do hope to obtain some methods to overcome this tough problem. ###2nd.Sufficiently good software or perfect software In the chapter 8, the software developers should always meet customers' requirements, but they are supposed to create a software which is sufficiently good instead of a perpect one. I know it's impossible to develop a program without any tiny bugs and successfully reaches everyone's expectation but what the defination of sufficiently good? A thousand people have a thousand hammerlets in their eyes, so it is ridiculous for our developers to make a quite good software cause there is no space between bad and perfect. ###3rd.Could a peacemaker be a teamleader? In the chapter 17, we know that being a good team leader is quite difficult. A leader not only have to discover and use everyone's strengths but also handle interpersonal relationships properly. However, if I'm a peacemaker with good-temper, can I lead a team successfully? ###4th.What if my innovation beyond the era? We all kown that innovation is like rare treasure which could be valuable for everyone and the society, but what if the innovation of mine walking ahead of the time? For example, the selfie stick was first invented by a Japanese, but nobody found its value when it was first created, because the camera function of the mobile phone was not very good at that time. But when his patents expired, the craze for selfie stick began to sweep across the globe. That tell us a truth: products of innovation will not accepted by people if it is farly beyond the era. So what should we do about that? ###5rd.Looking up at the stars or down-to-earth? The last question has nothing to do with the book, but it has something to do with my life. Many classmates around me eager to study techniques, but the technology they are passionate about is something low-end skills about certain software in my eye cause they will never use advanced mathematics. But the reality is, most programmers in society rely on these low-end technologies to muddle through. So, should I live in mediocrity or pursue something higher?
Code Management Tool
###1.GitHub ####Advantages: a.Suitable for distributed development, emphasizing individuals. b.Fast speed, mature structure, flexible development. c.Offline work, low cost management code, no need to rely on the server. d.Differentiated version management of program source code makes code base take up very little space and easy to branch code management.
####Disadvantages: a.Unconventional thinking. b.Code confidentiality is poor, once the developer clones the entire library, it can completely disclose all code and version information.
####Advantages: a.Fast speed, mature structure, flexible development. b.Offline work,Suitable for distributed development, emphasizing individuals.
####Disadvantages: a.Learning cycles are relatively long. b.Less information
####Advantages: a.Trac's privilege system is a relatively complete design. b.Very flexible, customizable, and integrated with Tortoise SVN. c.Trac is an SCM configuration management platform, which means it has good scalability.
####Disadvantages: a.Multiple projects are not supported. b.Writing documents using wiki instead of tools like Word is too high a threshold for product planning. c.Core functions are few and plug-ins are basically useless without installing them.
##Some of my gains We always neglect to think about the framwork of the software but be intertwined with some tiny bugs. However, It's good to pay attention to details, but more important is to control the whole situation. This is not my first time to write a blog but it does my first attempt to write in English. I do enjoy the process.