The full text is 1597 words and the expected learning time is 3 minutes
Image credit: Safar Safarov, Unsplash
After a thousand days of training, people can reach the entry level, and after 10,000 days of practice, they can reach the master level.
This sentence was said by Mas Oyama, and it was summed up very well. The secret to becoming a great developer is hard work. Spending a lot of time to practice the computer, hands-on practice can help developers grow.
This article introduces 7 projects that can be tried, which can help improve the level of developers.
Project 1: Pac-Man
Building Pac-Man can provide a good understanding of the basic knowledge of game development. You can use JavaScript frameworks such as React or Vue to achieve this.
You will learn:
Physical movement
Button detection
Impact checking
If you work hard, you can also learn to add navigation to the virtual target
GitHub repository: https://github.com/mbfassnacht/pacman-react
Project 2: User Management
Make a CRUD application to realize user management. In the process, you can learn a lot of basic knowledge about development. This is especially useful for developers who are getting started.
What you will learn:
Routing
Process forms and validate user input
Create, read, update, delete and other operations combined with the database
GitHub repository: https://github.com/indreklasn/laravel-5.4-crud-example
Project 3: Monitoring the local weather
GitHub repository: https://github.com/SwiftTsubame/iOS11Weather
If you want to start building an application, you can start with the weather application, which saves a lot of time.
In addition to gaining experience in building applications, you can also learn:
Interact with API
Use of positioning
Increase flexibility by adding text input, such as the user can enter a location to view the weather in that location
Weather data can be obtained on the OpenWeather API.
More information on OpenWeather API: https://openweathermap.org/api
Item 4: Dialog
Constructing a dialog box is very suitable for beginners of sockets. There are many different options when choosing a technology stack, and Node.js is one of them.
The biggest gain of this project is that you can learn how sockets work and how to create them.
Project 5: GitLab CI
Image source: https://vshn.ch/en/blog/automated-build-pipelines-with-gitlab-ci-and-appuio/
Newbies to continuous integration (CI) can start with GitLab CI. Set up multiple environments and try to run some tests in the pipeline. This project is not very onerous, but I believe you will learn a lot. Many development teams now use CI, it is a suitable tool.
What you will learn:
Understand GitLab CI
Configure a .gitlab-ci.yml to send instructions to the GitLab runner
Deploy other environments
Project 6: Website Analysis
Make a crawler that analyzes website semantics and create rankings for them. For example, you can check whether the alt tag is missing on the image, check whether there is an SEO meta tag on the page, and even crawl without creating a UI.
What you will learn:
How the crawler works
Make DOM selectors
Write algorithm
If you work hard, you can learn to create a UI and write a report for the crawled website
Project 7: Research on emotions in social media
Image source: https://www.csc2.ncsu.edu/faculty/healey/tweet_viz/
Studying emotions in social media can be a great help in understanding machine learning.
You can start by studying a social media platform, and Twitter is a typical entry point.
Developers with more machine learning experience can try to mine different social media platforms and then integrate these data.
What you will learn:
Master machine learning
Recommended reading topics
Comment Like Follow
Let's share the dry goods of AI learning and development.
Welcome to pay attention to the full platform AI vertical self-media "core reading"
(Add the editor WeChat: dxsxbb, join the reader circle, and discuss the freshest artificial intelligence technology together~)