Advice and study guide for freshmen computer science students.

Table of contents

Preface

If you like games, do you have to like computers?

Edit Edit

Is there a future for students who study computer science in schools other than 985 and 211?

 Is it necessary for accounting majors to attend school classes?

Is it necessary to join clubs, student unions, or serve as class leaders?

How to learn computers well

Epilogue


Preface

Summary of this article: Many freshmen in computer science have just entered school and have many questions about this major. They are also confused about how to learn computers well. Therefore, the author wrote a special article to help freshmen in computer science avoid detours.

Author's introduction: The author is an artificial intelligence alchemist. Currently, the main research direction in the laboratory is generative models. He also has some knowledge of other directions. He hopes to communicate with friends who are also interested in artificial intelligence on the CSDN platform. Share and make progress together. Thank you everyone~~~

 如果你觉得这篇文章对您有帮助,麻烦点赞、收藏或者评论一下,这是对作者工作的肯定和鼓励。  

If you like games, do you have to like computers?

Many students who apply for the computer major choose the computer major because they like to play games. Many students around me came in this way. But playing games and (making games) programming are fundamentally different things. Many students end up being addicted to games and neglecting programming. It is very difficult and boring to do game development, especially as an independent developer. Independent game development requires knowledge of art, computer network (server), data structure, engine framework (unity, cocos, Egret, Unreal, etc.), database, and Linux operations. The development process of the game is very long and there are very few useful tutorials. Many times the problems or bugs you encounter during the development process cannot be solved by Baidu, so you need to stay up until 3-4 o'clock in the morning to try to solve the problem. Therefore, I suggest that students who want to learn computer science because they like games and want to develop games should have a good understanding of the technology stack required to develop games, as well as the time and money costs required, and then decide whether to take this path of game development. (I will soon launch a series of full-process game development tutorials [client + server + database] based on the cocos creator 3.7 engine. Those who really want to take this road of game development can pay attention to the follow-up)

Is there a future for students who study computer science in schools other than 985 and 211?

This issue has been discussed extensively on Zhihu. Some people advocate that space machines should not depend on their background, while others say that dual-non-computer computers have no future. Especially in recent years, the economic situation has been poor, and more and more people think that dual-non-computer computers have no future. Here I will talk about my opinion (not necessarily correct). It turned out that I also fell into the trap of discussing one’s background, but later I discovered that a person’s background may have a certain impact on a person’s future, but what really determines a person’s The future is always your own. If you can keep learning and making progress every day, success will only happen sooner or later. Discussions and established facts, good or bad, are just self-comfort. Good or bad background should not be a reason to stop moving forward. When you are young, you should be more emotional and have dreams. There are many accounting friends around me who are both non-undergraduates and are doing very well, and there are also students in the 985 program who earn a monthly salary of 3,000.

 Is it necessary for accounting majors to attend school classes?

Many graduating students said that I obviously had a good class in school and didn't fail any subjects. I also participated in many club activities and won many awards. Why can't I still find a job? First of all, most students did not study seriously in class. They relied on the teacher to reveal the scope at the end of the semester and did not really grasp the course content at all. Secondly, even if you really master the course content, you still can't find a job. Why? Because the technology taught in schools is seriously decoupled from the technology required by industry. What is taught in schools is the old tricks from decades ago, which will be of little use to you in future job interviews. Therefore, I think it is not necessary to listen to school classes, but it is definitely not asking you to skip classes to play games or do other things. The computer industry is an industry with rapid technology iteration and a strong emphasis on self-learning ability. Therefore, I recommend that freshmen first think carefully about what kind of work they want to do in the future (back-end development, front-end development, software testing, crawler engineer, computer vision algorithm position, etc.) and then go to recruitment software, such as Zhaopin Recruitment and other software Find some recruitment information for the position you want to work in. It will usually have job responsibilities and technical requirements. Therefore, I recommend that freshmen concentrate on learning a technology stack in one direction during school. After graduation, your ability will definitely surpass 95% of the students in the Department of Economics and Management. Even if you cannot go to a big factory, you will still be able to go to a small or medium-sized factory.

Is it necessary to join clubs, student unions, or serve as class leaders?

It's hard to say for other majors. For accounting majors, it depends on the situation. If your school can guarantee you a postgraduate degree, and you also have the intention to study for a postgraduate degree, then joining the student union and serving as a class cadre will be beneficial to the guarantee. If you can't get a graduate degree, the above things are just a waste of time. If you want to get a job in accounting, you need to master more skills, which requires more time and energy. Joining clubs, doing classes, etc. will only squeeze out your time. Your rest time and even study time are all about your true ability when compared with employment. What student unions you have participated in and what class cadres you have served are of no use to your employment. I advise all freshmen not to waste your time and energy on these. Work hard on things. But I suggest that freshmen must work hard to enter your school’s algorithm club, undergraduate laboratory, etc. (for example, my school is 3I Studio). These organizations can allow you to gain many benefits (daily innovation, digital modeling, subject competitions or scientific research experience, and even Publish papers) These can enhance your professional abilities. No matter which school's computers are available, basically the students who can enter these organizations will end up being the best in that school.

 

How to learn computers well

1. Although you will not use C language for development in the future, you must learn C language well. C language is the language closest to the bottom. If you learn C language well, you can quickly get started with other languages ​​such as Go and Java.

C language introductory teaching video - Teacher Weng Kai: https://www.bilibili.com/video/BV1XZ4y1S7e1?p=16&spm_id_from=pageDriver&vd_source=d42bc9139323d767cb08231c63e3f0b6

2. Solve more algorithm questions. The written examinations for most positions basically require algorithm questions (in addition to development positions, algorithm positions in the field of artificial intelligence also require it). I regret that I was busy publishing papers and wasted on answering the questions, but I will definitely follow up. It needs to be made up. I have also opened a question column on my blog. If you need it, you can save it. The author will update it as soon as possible.

The road to solving questions starting from 0: http://t.csdn.cn/7ztaH

Then the recommended websites for writing questions are as follows:

Niuke.com: Niuke Competition OJ_ACM/NOI/CSP/CCPC/ICPC_Informatics Programming Algorithm Training Platform

ACWING:AcWing

Lanqiao Cup Real Questions: Home Page- New Online Judge

3. Do more projects. When programming reaches a certain level, you can consider following the complete project tutorials on the Internet to complete projects. The complete project development experience can connect the computer knowledge you have learned, which is somewhat similar to the feeling of comprehensive mathematics questions.

4. In the direction of artificial intelligence algorithms: I know a lot about the direction of artificial intelligence. I have done a lot of projects, and I have also obtained SOTA in a certain field and am currently participating in the AAAI conference, so I can still give some advice to the new students in this direction. Useful advice.

1. To master the relevant operations of the Linux system, the era of large models has arrived, and it is difficult for local devices to meet the training needs of the model. Therefore, training operations must be performed on the server, and the servers basically use Linux systems (ubantu, centos, etc.)

Linux operation tutorial: https://www.bilibili.com/video/BV1n84y1i7td/?spm_id_from=333.337.search-card.all.click

2. Master the configuration of deep learning environment, such as anaconda, docker, cuda, cudnn, etc.

Linux system configuration tutorial: http://t.csdn.cn/lHc5h

windows system configuration tutorial: http://t.csdn.cn/wWSNf

3. To master a development framework (pytorch, tensorflow, mindspore (self-developed by Huawei)), it is recommended that freshmen master pytorch first, and then learn mindspore.

4. Follow a set of systematic deep learning tutorials and the blogger will soon open a corresponding column.

For the time being, I would like to recommend Mr. Li Hongyi’s series of videos: https://www.bilibili.com/video/BV1J94y1f7u5/?spm_id_from=333.337.search-card.all.click&vd_source=d42bc9139323d767cb08231c63e3f0b6

5. Do more projects. The blogger will soon launch a series of tutorials on image classification, image generation, target inspection, semantic segmentation, etc., so stay tuned.

If you want to publish a paper in this direction, you must read more top conferences. For computer vision, you should mainly look at CVPR, NIPS, ICCV, ECCV, etc., and for natural language processing, you should mainly look at ACL and AAAI. The direction of machine learning mainly depends on ICLR. However, this stage is already relatively in-depth, and freshmen do not need to consider it for the time being.

Epilogue

 如果您觉得这篇文章对您有帮忙,请点赞、收藏。您的点赞是对作者工作的肯定和鼓励,这对作者来说真的非常重要。如果您对文章内容有任何疑惑和建议,欢迎在评论区里面进行评论,我将第一时间进行回复。 

Guess you like

Origin blog.csdn.net/qq_35768355/article/details/132892705