Fish skin combined with their own university experience, a statement!

How time flies ah, fish skin’s brother little abba has been studying in the university for nearly a year.

Yesterday, he came up to me and asked me, “Brother Fishskin, I heard that to learn programming, you must do more projects to improve your ability, but also to enrich your resume. But I’m at a loss. Where can I find projects?”

I ha ha a smile, freshman have this consciousness, little abba future can be! Let’s share some good ways to get involved with the project based on Yu PI’s own university experience.

I’ve divided them into approaches that work for all friends and ones that are more suitable for students or workers.

general

The open source project

In an era of open source code, GitHub and other open source platforms give you the opportunity to work on projects with big names. Don’t worry about your lack of skills, find projects that interest you and start with some simple tasks.

If you are interested in participating in open source, please check out these two articles:

  • How to contribute code to well-known projects?

  • How to find quality programming projects efficiently?

If you have the opportunity to contribute code to a well-known project, it could be worth more on your resume than writing your own small system!

When I was in college, I looked for projects on GitHub more than I did myself, and I still regret it.

Lab

At present, there are many practical programming platforms on the Internet, such as FreeCodeCamp, FreeAIHub, CodeGym and so on, which are recommended to everyone before, providing some small examples and projects to help beginners get started quickly.

There are many experimental platforms, often heard in China are Tencent Cloud hands-on laboratory, experimental building, etc., are based on the real server development environment, there are small experiments, there are complete projects.

If your English is not bad, it is recommended to do some foreign quality courses experiment, such as:

MIT 6.s081 operating system Engineering

MIT 6.824 Distributed Systems

Stanford University CS143 compilation principle

These are the world famous programming bolus, if they can chew down, the strength is absolutely enough to enter the big factory!

Learning resources

This is probably how most people who are learning programming find projects to do, using learning resources, following videos or books to do projects.

For example, STATION B is a very good programming university, many training institutions have their own schools here, video tutorials will generally lead you to do a project.

For example, I saw a vUE tutorial like the one below and made a simple music player.

Do not just watch not to do, a video to see down, must have their own learning like liver out of a project!

Do what you want

Being interested in programming is the only way to learn and get better at it, so if you have a good idea, try to use your skills to make it happen.

I am a hobbyist who is interested in programming. Most of the projects in college were created by myself without any constraint or limitation, but I am more motivated to complete them. Use the technology you’re learning and learn more on your own to make it better!

For example, the interview Monarch APP independently developed at that time was based on Vue + Spring Cloud micro-service family bucket:

I also made a class grab system, which helped me grab a SSS class hard to grab the class haha!

campus

If you’re still in college, there are more avenues for doing projects, so take advantage of them!

Class assignments

Unexpectedly, class assignments are the most direct projects! Many professional courses in university require the submission of a work at the end of the semester. For example, I remember that I made a library management system based on a small black box in the C language class of my freshman year, which is actually a small project. It may not work, but if you want to, you can continue to improve on your existing code, develop new features, and make it better!

In fact, I have done a lot of class assignments very carefully, and will keep their own homework code, such as the compiler principle syntax tree visualization program, I also wrote a blog to introduce it.

Of course, more often than not, I will directly modify the project based on my interest and submit it as a course assignment, and the score will often be higher!

Help teachers with projects

Sometimes the teachers of my college and other colleges will have some computer requirements, such as making a college website, management system, etc., can express their ideas to teachers and counselors, strive for some opportunities to undertake such projects, can exercise their programming level at the same time, earn a lot of money ~

At that time, I helped other colleges develop a simple conference room reservation system. Teachers generally did not have high requirements and it was easier to communicate with each other. Therefore, this approach was recommended.

Participate in the competition

There are many competitions specially for college students, such as the well-known Internet +, Challenge Cup Academic Competition, Computer Application Ability Competition, ACM Competition and so on. Be sure to form more teams to participate in the competition, which can enhance their interest, develop a sense of responsibility, promote their own learning and improve the project, but also like other students to learn from experience, learning and progress from each other.

As a matter of fact, I am not strong in competition. I have participated in the Lanqiao Cup twice and won the second prize in provincial competition. I participated in two computer application ability contests, but I won the third prize in provincial level. Besides, I’ve won awards in the entrepreneurship category, but it’s a small one.

The competition that impressed me most was the Challenge Cup. I worked hard with many excellent students and won the Shanghai Special Prize and the national second prize, which not only greatly improved my programming skills, but also helped me to collect enough hukou points.

It is highly recommended that you enter competitions while you are in college, as there are few opportunities after graduation.

Studio Club

There will be many computer and programming studios or societies in the university, usually led by senior leaders, so that we can study and discuss together, and the atmosphere will be better.

As a freshman, I participated in a campus studio to build a website. Later, I made many websites for the school, which played a key role in my study.

laboratory

It is also a good choice if I can join the laboratory of the college during my undergraduate study and do projects under the guidance of my graduate seniors and tutors. Many laboratories are also willing to accept and cultivate undergraduate students, of course, the opportunity to strive for.

In the summer vacation of my sophomore year, I joined the Information Security Laboratory to study blockchain theory and practice. Later, I published a textbook with my teachers and seniors, which added color to my resume and benefited me a lot.

In the workplace

If you are already working, there are many ways to participate in the project, so I will list them here without going into details.

Participate in company construction

If you want to be promoted faster and improve your technical influence, it is recommended to participate in and improve some internal projects of the company. For example, if your company’s internal timed task platform isn’t convenient enough, you can try to optimize it, or you can build your own wheels.

Participate in the competition

Many programming contests are also open to workplace students, such as small program development contests, application development contests, and big data contests. There are also many competitions for companies and teams.

In addition, many BAT factories often hold some technical competitions regularly, which is quite interesting!

Outsourcing platform

There are many online platforms for programmers who can participate remotely in projects and make money based on the complexity of the requirements, such as programmer hostels, or even outsource themselves.


After hearing these, abba sighed: “There are so many ways, I feel busy!”

Fish skin: “Learn to accumulate and reuse, save every project you do. Wouldn’t it be nice to have the same project both as a big class assignment and for a competition?”

Where are we looking for projects to do, what are the good ways? Comments are welcome