Debugging an Open Source API review

In the past several weeks, I've learned to build up an web api to retrieve phone number from string by using GET and POST. I've also learned to solve the issues for other students web api. I've shared the build web server experience in another blog page:

https://qchen102.blogspot.ca/2018/02/tutorial-create-restful-web-server.html

In this blog, I'm going to share experience about solving other project issues.

Briefly process:

1. Read README file.
2. Build dependencies. (Java environment, node.js, etc)
3. Fork project to own Github, then download project (download package or git clone url)
4. Compile and run project.
5. Test if issues exist.
6. Find the relative part and fix.
7. Upload the fixed project to own Github.
8. Pull project to original owner.

Some Git commands:

1. Clone resource to local: git clone url            
2. Check branch: git branch
3. Change branch: git checkout -b name
4. Check log: git log    or   git show 
5. Change stage: git add
6. Get update resource from origin: git pull origin
7. Initial git: git init
8. Upload project: git push url

Build VS Contribute:

Compare to building project, I feel contribute to project is much hard to start. To contribute other project, I need to read the code written by other. I need to understand the code structure. Cause programmers have different habits and style for coding, I need to get used for it. But when I build project by myself, I understand all code I write. This make me feel free to code.

But after I get used to it, I feel contributing other project is more funny. First, I can learn from other work. Even sometime I think the programmer write not good codes, but when I understand more of his code, I will change my mind. His code is better than I thought. This gives me idea so that I could do better next time in my code.

Secondly, I can find interesting project from others. Open source world have a lot of interesting ideas. I can borrow those ideas and contribute my ideas. When more programmers contribute their ideas, the project will be much more perfect. 

Third, I can save much time when working on a huge project. I don't need to make wheels for cars by myself. I can combine wheel made by other. Working on other project is same idea of making a car. I can get element from other. That will save a lot of time to make a project. Most of the time, open source world have many good existed products. Those products are much better than that created by myself. 








Comments

Popular posts from this blog

OSD - Release 03

OSD600 - Lab 6: Fixing URL bug in Brave browser

Studying for open standard