Current location - Plastic Surgery and Aesthetics Network - Jewelry brand - A learning direction of junior high school students
A learning direction of junior high school students
According to my own understanding, talk about my views on graduate school and software college and just laugh it off.

If you have practical development experience and feel that your level and strength have entered the platform period and need to be improved in theory urgently, then computer college is the only choice. Because computer science school can make you theorize by going up a storey still higher. The school of software didn't take you to this aspect from the teaching plan. Of course, it's up to you whether you can go to the next level or not. In particular, work experience is not necessarily equal to development experience. I have met many people who have worked for 2-3 years, but they have no development experience.

You said: "they all have strong development ability, but they don't like reading very much. They just hope that mixed education will be good for their future promotion." I can assure you that these people you are talking about are definitely not people with strong development ability. Because, 1) it is impossible for experts not to like reading; 2) It is impossible for a master to mix a degree; 3) It is impossible for a master to think that promotion is due to academic qualifications.

It should also be noted that people who take computer exams are not necessarily experts. Strictly speaking, most people can't program. In other words, mediocre people still account for the vast majority. There are many seniors who graduate only about 2500 yuan. Don't expect to go out with a graduate diploma to earn a high salary. However, for people with practical development experience, if they want to have a real promotion within three years, Computer College provides a broad platform. As far as I know, there are also those who earn more than 20 thousand yuan a month (Shanghai Ubisoft, graphic special effects algorithm design). Therefore, as a graduate student, the ability gap is huge. So, don't ask, "How much can graduate students get?" Ask, "How much can a person of my level get after graduation?" So that people can answer you accurately.

The so-called "practical development experience" means that you have the following abilities at present: 1) You already think that C++ and assembly language are very simple languages and can be used freely; 2) You can think of the correct design idea and direction of gobang AI algorithm within 30 minutes; 3) You fully understand why STL is so important; 4) You can solve all compilation and linking problems independently, even if you have never encountered any problems, you don't need to ask anyone; 5) English websites are your main source of information; 6) Be able to read international standards written in English, such as NTFS disk format standard. 7) You often think about algorithms from the perspective of set theory; 8) Able to understand simple drivers and simple 3D interactive programs; 9) You can realize the extreme importance of linear algebra and probability theory in practical programming; 10) You fully understand the design idea of COM, especially why COM is designed like this; 1 1) When I talk about the important role of virtual function, you won't be in a hurry to find a book to read; 12) You can tell the reason why C++ is superior to other languages, and remember that this reason should come from your development experience, not because others say so. There are many other standards, but if you have more than five at the same time, you can think that you have the corresponding development experience. Study in this state, and you will get the greatest benefit from your study.

The most important thing in graduate school is to know what you want to do, and you can't wait for your tutor to tell you what to do. The advantage of graduate students lies in their profound theoretical foundation and keen thinking. Of course, programming ability must be passed first. Graduate students who haven't finished reading don't know where the WinMain function of MFC program is. Therefore, during the postgraduate period, you must design an algorithm with theoretical depth, such as a search algorithm for large-scale data. Performance is the primary consideration. Don't expect SQL functions to help you solve the problem. You must solve all the problems by yourself. You must solve the performance bottleneck of internal and external memory exchange. Another example is 3D scene generation, graphic transformation, collision detection, physical property simulation, texture mapping, lighting model and so on. These are all skills that can guarantee your monthly salary of more than 20 thousand. If you think these things are too difficult to make, then you are not suitable for graduate school. Really, if you think that after graduate school, you still need to engage in general programming, such as information management system and other software, then the value of your graduate school simply can't be reflected, because these jobs don't need graduate school at all.

Software college claims to train software development talents. To tell the truth, I have never seen that master train successfully. There is only one way to become a master of software development: self-study! Software development needs a lot of programming practice and independent thinking. Only in this process can you grow step by step. The software institute claims to train software project managers, which is even more funny. In a sense, this is cheating. It is a complete lie that software development managers can be trained in universities. Software project managers must, or more emphatically, learn from war. Project managers with no practical experience just embroider pillows.

To tell the truth, the Institute of Software is a rich institution, and its public relations and advertising are well done under the guise of high salary, just like the training course of Beida Jade Bird outside. Two words: collect money! Four words: still collect money!

In short, if you just want to be an expert in software development (for example, you think you can program drivers or antivirus software is an expert), it is recommended to work instead of taking the postgraduate entrance examination; If you have no work experience at all, it is not recommended that you take the postgraduate entrance examination. You have to fool around when you come in. If you have the above work experience and want to be a senior software engineer (the kind of software engineer who can independently understand and design the fast Fourier transform algorithm), it is strongly recommended to take the postgraduate entrance examination. Postgraduate entrance examination gives you three years to relax and accumulate ideas and skills. Very rare opportunity. If you don't take the postgraduate entrance examination, this kind of opportunity is luxury, which can only be dreamed of.

So no matter what your situation is, it is not recommended to take the software college. Unless you are a girl, take graduate school as the most satisfying kind of girl in life.

1) On the opportunity cost of reading. The opportunity cost of graduate school is really high. Anyone can do a simple calculation. Therefore, I don't agree that everyone should go to graduate school. Graduate school is only suitable for people who feel that mathematics is extremely important in programming. If you don't thoroughly understand the extreme importance of theoretical tools and theoretical thinking, then the value of graduate school is almost zero; The advantages of graduate school are: a, putting yourself at the intersection of academics and engineering; B, let you have the possibility to enter the world's top software research and development institutions such as Microsoft; Remember, this is just a possibility. But the possibility of not going to graduate school is 0; C, as mentioned above, if you don't have a chance to go to graduate school, you won't have a chance to settle down and study theory for a few years; Do you think it is possible to study various theories in depth while working at a high salary? I don't think it's possible anyway. I think what you need most in studying theory is a long-term quiet and lonely environment. It is impossible to have such an environment when working and studying. You feel exhausted every day. And graduate school can provide such an environment. At the same time, I also object to running behind the tutor's ass all day, which will waste a lot of time. Postgraduates who study computer mainly rely on themselves to consult the latest literature, study the literature by themselves, and it is enough to communicate orally with the tutor once a month, provided that the tutor's level is good enough. It doesn't matter if the tutor is not good. Ignore him and just do your own thing.

2) On the quality of postgraduate teaching. Frankly speaking, there are no good people in Hongtong County, especially in the field of computing science. Then why go to graduate school? What a big problem! I think it is doomed to fail to pin the gains of graduate school on the names of famous schools or famous teachers. Graduate school depends entirely on self-study, and the gap between graduate students is all reflected in self-study ability. Someone asked, since it is a self-taught exam, why do you have to go to graduate school? The answer is: because graduate school is to buy you an insurance, that is, to buy you an insurance that will not be unemployed after three years of self-study. This insurance is mainly the psychological backing, which enables you to withstand the temptation in the process of self-study, to calmly pursue the solid footprint of the development of computer theory, and to look for methodological jewels from masters such as Euler, Fermat, Gauss, Cantor and Turing. Without this guarantee, you will study at home for three months to ensure that you will be overwhelmed by the pressure of unemployment. What about studying with peace of mind?

3) Advantages and disadvantages of actual combat experience and theoretical study. This is inconclusive. As mentioned above, management information system, device driver development, tool software development, software virus analysis and so on do not need creativity, but need patience and experience, and an accurate understanding of existing specifications. This kind of development work is most suitable for improvement in actual combat, and theoretical study has no effect. But in artificial intelligence, pattern recognition, image compression, virtual reality, massive data retrieval, natural language understanding, computer graphics and other fields, theoretical learning occupies an absolute dominant position! Breakthroughs in these fields have had a great and far-reaching impact on human life. Some fields are developing rapidly, such as computer graphics. I believe you can appreciate what I said from the brilliance of many 3D games. In these fields, without a solid theoretical foundation, everything is so far away, no matter how much time you spend on programming.

4) Knowledge structure of R&D senior talents. First of all, I am not a radical of pure theory, that is, I think nothing is important except theory. In my opinion, skilled programming skills are the most basic but essential skills. Without this foundation, all computer theories are empty talk (except researchers who study Turing's computability theory). With this foundation, we must break through the following theoretical learning directions:

1, philosophy of science. This is the core of the core! Unfortunately, this course is not offered in China. It's a pity to list them as criticism objects without starting classes! This is a subject that teaches you how to "fish" and occupies a core position in all scientific research. It is the epitome of ancient and modern scientific research methods and thinking methods, and it is hard to imagine a mature researcher without his own methodology system. What philosophy of science needs most is comprehension and summary, and its thoughts and enlightenment will accompany us all our lives.

2. The close relationship between Cantor set theory, matrix method, discrete structure, graph theory method and group theory method. The most important thing is to understand the important enlightenment and method guidance of these theories to practice. I have always thought that if you learn a theory but don't know what it does, then your theory will be learned in vain and you will get nothing. So, before learning any theory, ask yourself: What's the use of it? Where can I use it? How to use it? Take these questions to study theory, and you will really learn something. Ask your theory teacher these three questions, and his answer is the best criterion to judge his actual level.

3, thinking should have a strong penetrating power, learn to see through the motives that the author of the document has not written. Most masters have the habit of hiding themselves from the most methodological enlightenment thinking links. Both Newton and Mr. Hua have this bad habit. This makes people feel like a genius, because he thinks a lot of problems, but we don't. But why can they think of it and we can't? How did they come up with it? No one told us about Newton's thinking process of discovering the law of gravity. Of course, Newton can generously tell us the results of his thinking, but his "golden finger" that can turn stone into gold did not teach us. Our task is to cultivate the ability to see through the author's intentions and motives. In this regard, Houjie in Taiwan Province Province and Donbox in the United States are good examples. These two old foxes (ha ha, both nicknames), with their hound-like sense of smell, came out of the cocoon. One uncovered the behind-the-scenes design motivation behind COM and exposed it in broad daylight. The other performed a perfect operation on the macro structure of MFC. Its extraordinary thinking penetration is amazing.

4. English. English itself is not important, but documents written in English are extremely important. So English is listed as a bright spot. Don't believe the nonsense of English uselessness. English is your mother tongue for computer users!

5, there are many other specific theories, but none of them are as important as these three aspects, because I think these three aspects are the most fundamental and overall capacity-building links. It should be pointed out that many advanced theories are meaningless to your work, so beware of time falling into them. We must use the most effective time to carry out the most decisive theoretical research.

5) Whether the way out after graduate school is bright or not. We must admit that after graduate school, your job opportunities have not increased, but decreased. And the more proficient, the less job opportunities and scope. This is because the more companies engage in cutting-edge R&D, the fewer people in this circle. The smaller the scope of your job search, how many companies can Microsoft OS design experts choose to find a job? However, the reduction in the number of such companies has been compensated by the sharp increase in wages and salaries. At the same time, the full respect you get at work is not experienced by ordinary companies. So don't worry about learning high technology, hehe, I will only feel more and more that I have not learned enough. I believe that anyone who has received a phone call from a headhunting company will understand. A real master never worries about his job, nor does he go to the talent market to find a job. Since we have chosen the deepening theory, we should look further.