Instructor Xin's Blog is here: Software Engineering Education learned by modern software engineering
Then I read the opinions of many students.
When I think of High School, the teacher taught me that a good argumentative paper must show my opinion at the beginning. (Well, that's to cope with the college entrance examination. I am far away]. However, in my opinion,Not totally agreeThe opinions of instructors and some students. Over-emphasized"XI"Proportion,I have different opinions..
What did instructor Yan say about "learning and learning? I said yes. It is very good and necessary. Especially for engineering personnel, it is necessary to "Learn" to get a real capability! So why should I refute this opinion from instructor Yan. I think why is there so much debate in the world,The fundamental problem is that everyone is not on the same background.In other words, the conditions for the debate are actually different. This leads to a lot of arguments.
A small example:
For a while, I really love playing a sports game called "live football. In the field, the control [fan. busteng] is very High. One individual scored 10 + balls. However, when encountering a difficult AI, or playing a fight with a classmate, it seems very anxious. I am very unconvinced. I have been playing and working hard, but I have never been able to improve myself. I always use some basic actions and the simplest tactics, I used the classic Dutch team myself and was even abused by the Chinese team [I am not a black China]. Then the students couldn't watch it, so they said, you should take a look at the tutorial, go online to find the teaching video, and ask those who have played well, soon I had a qualitative leap.
You must think that I wrote this example to illustrate"Learning"Than"XI"More important, not actually. I found that if I hadn't been playing the game for a while, I wouldn't know where my weakness was, I don't know why such tactics won't work in reality. I don't know what actions are advanced actions. I don't know why I'm going to"Learning"What? Moreover, I can conclude that if I spend my time playing games (10 hours) every day, seven days a week, and I play games for five days, even if I do notLearning", I will always find a method, but it is slow. In this case, it looks like"XI"Is required ?! Don't worry. Let's look at an example.
Many people mentioned Java as an elective course in our freshman year. (In essence, it should be called "Java programming"), but there is no such thing in the class,No.Teach us how to use the Java language to solve any practical examples in the project. Even the Console outputs Hello World! \ N is a self-check Baidu. Then the examination method is "Open-volume Q & A" + "2000 lines of Java large jobs ". What have I learned for a long time? What is object-oriented? Can I write programs? Just copy the exam. Everyone scored 80 or 90 points. What about Big jobs? No one will write it. It is written in process-oriented C-style code. Can I complete a project? Certainly not. What should we do? You only need to copy, modify, and modify code from others. [I don't comment on the teacher. I don't know how to practice too little on my own. If the teacher doesn't give a comment, it doesn't mean I don't want to learn. But for this teacher, when you mention this person in the school, and then look at the senior, counselor, and teacher expressions, you will understand. Someone asked why he could stay here. I don't know who knows this problem.]
Well, in this example, the idea of "learning and learning" is further deepened. Learning programming language design means you will never learn it if you are not on the computer. This is beyond doubt! The importance of "Xi" is obvious. Everyone has a deep understanding of the rigidity and inefficiency of "learning. After talking about this for a long time, didn't I start throwing stones at my feet? What about my own arguments?
Now, let's get started with my point of view. Do you remember what I said at the beginning?The argument is that everyone is not in the same background, or everyone is not arguing about anything!
In the early days of the founding of the People's Republic of China, for a long period of time till now, there was a big gap between China and the advanced capitalist countries, and many engineers were needed for national construction, A batch of well-known engineering colleges have emerged, including college adjustments. It also includes our Beihang. This indeed provided a large number of excellent construction talents to the country at that time. That's it. Now that the country has money and the construction of the project has gone up, we can find that there are many vulnerabilities in this measure !! That is, our engineering practices have indeed gone up, but the basic research field is very weak. Taking Beihang as an example, in recent years, we have also proposed to build a comprehensive university and add additional science experimental classes. As we all know, if our theoretical capabilities do not go up, we will encounter bottlenecks in practice.
The points mentioned in Mr. Mao's Blog, the points mentioned by Mr. Yan Xin, And the undergraduate course plan of Mr. Yan Xin are undoubtedly very good. But they are all inEngineering PracticeConclusion. Each of us agrees that, in the field of engineering practice, we really need a lot of "study", and we need to acquire and exercise the ability in "study", which is more practical than "learning, to be more efficient, to be more solid. But do you realize that Mr. Yan's Blog is an engineering discipline. YesSoftware Engineering! Well, I will not mention those purely scientific subjects for the moment. My major is computer science and technology, a level-1 discipline (Subject code: 0812). My major is computer software and theory, and a level-2 discipline (081202 ). Then I asked, are you sure you want to practice engineering when you come to college, must I be very skilled in writing software code? I said no. As an enterprise, Mr. Yan understands what kind of talents are needed in the project and how such a talent school should be trained. That's all right. A large part of the University's mission is indeed to deliver qualified talents to society. However, not all people will do Dev. Therefore, I think the plan of the teacher is only suitable for students of software engineering. (If software engineering is a level-1 discipline in the future ).
Take myself as an example. I am now following my teacher to do a study on Community evolution. By analyzing the changes in various popular online communities. This semester, I have been tracking the research of several awesome groups such as Stanford and CMU. I will give a weekly PPT to my teacher and report on my paper reading, then, I keep improving the review. I should have read more than 40 papers. In my opinion, this is what I have been learning, and I also realized the significance of the course "Mathematical Analysis" when I was a freshman. However, it seems that no project is designed. It also proves the importance of previous courses including Graph Theory in discrete mathematics, including introduction to network science. I think, these things keep writing code every day. Without stopping engineering practices, it may not be helpful at all. In particular, if my sophomore year is like the course my instructor has arranged, I may not be interested in it, or have the ability or time to complete such a non-engineering practice theoretical study. So why do I need to argue about this? This should be done in the project, but not all of them apply. As one person said, if we only need professional skills, then everyone will go to the Technical School. Why bother to go to college.
What I learned may not be able to see the results in a short time, just as the basic research field may not have any breakthrough in changing the world in 100, but what I learned, what you leave in your mind must be essential to your future. I think the amount of your "study" determines the height and ability of your current level, but the amount of "Learning" determines what level you can reach!
Finally, I want to say that there is no conflict between "Learning" and "learning. In particular, for my first small example, only a large number of "Lessons" can understand the meaning and direction of learning. However, only learning can make a big breakthrough in your study. To a new level. Therefore, in undergraduate education, especially those courses, neither "Software Engineering" nor "theoretical physics", neither learning nor learning can be biased. In specific teaching, the teacher can tell you why you want to learn through learning, and then let everyone understand the logic and essence of learning. Knowing and knowing why. Only by combining learning can we truly learn computer science and theory well.