In fact, there are many classic cases in China, such as Ele. me, Douban and Zhihu. It’s also a great exercise.

To ensure readability, free translation rather than literal translation is used in this paper. In addition, the copyright of this article belongs to the original author, and translation is for study only.






Everyone is well aware that to master a skill requires passion, motivation and hard work. If you want to become an expert at something, you have to put in a lot of effort.

Nothing good comes easy. It’s hard, but it’s worth trying. We all love coding, but we often don’t have a good idea of what to write to practice our hands-on skills. Here I give you a list of challenging and interesting projects.

1. The Node. Js to cooperateGraphQLTo write the back end






GraphQL has revolutionized the way we send and receive data. So it’s definitely worth your time.

Specific operation

  • Create a server with node.js Express framework and use MongoDB and graphQL;
  • Perform basic create, read, update, and delete (CRUD) operations on data;
  • Get data from a simple front end.

I suggest you check out this Youtube video tutorial: Introduction to GraphQL

2. Terminal app






A terminal application is a program that can be run ina terminal.

Start with a small, simple application. The mechanism for terminal applications is simple: given input, return output.

Some simple ideas

  • Ask the user for a name and output the result;
  • Display some mathematical formula, then ask the user to give input and return the output.

Here are a series of examples of terminal applications to learn from.

3. ElectronA desktop application






Electron lets you develop desktop applications using web technologies such as HTML, CSS, and JavaScript.

Some of the most popular Electron applications are Visual Studio Code, Atom, Slack, and WebTorrents.

What is Electron: The Hard Parts Made Easy.

Again, start with a simple little application and work your way up to a more complex one. For example, you could create Electron, give it an input, and then output it to a terminal. If you are familiar with Web development, then you will find Electron very handy.

4. Cloning them






Instagram is a complicated app, and if you can write it out, you can learn a lot. If you build Your own Instagram, you can learn:

  • Complex Grid management (try the new CSS Grid technology);
  • Multipoint call API/ Data flow management (try GraphQL);
  • You can build real large-scale applications.

You are free to choose any other technology that suits you.

Here’s the cool thing: Instagram provides apis

5. UseD3.jsDo data visualization






D3 is an abbreviation for Data-driven Documents. D3 is a very popular library. Of course, he’s not the only option, there are ChartJS and Plotly.

D3js Workshop(Intro Into Creative Visualizations with SVG and D3)

It’s really great! You can get enough data from here to exercise: Awesome GitHub Repository consisting of free-to-use public datasets






Some of the exercises provided above will hopefully help you develop your development skills, just like Fundebug helps you Debug!









Are your users experiencing bugs?

Experience the Demo
Free to use