Skip to content

eduOSS/teach-yourself-programming-with-open-source

 
 

Repository files navigation

Open document: learn software development with the help of open-source project

We sincerely invite you to join us!

#LICENSE

  • The content in this repo is licensed CC-NC-BY-SA.
    • Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
      • Attribution - you must give the credit the author or licensor have made
        • If supplied, you must provide the name of the creator and attribution parties, a copyright notice, a license notice, a disclaimer notice, and a link to the material.
      • NonCommercial - You may not use this work for commercial purposes.
      • If you remix, transform, or build upon the material, you must distribute your contributions under the same license as the original.

Contents

  1. Before start
  2. Target Audience
  3. Basic Requirements
  4. Something Need to know First
  5. Start
  6. Several Main Methods of Learning Software Development
  7. Why Open-source is Helpful
  8. Choosing a Language
  9. Basic Skills You Should Have
  10. On Development Tools 1. Classification of Development Tools 1. References
  11. Select an Open-source Project
  12. Where to Find Open-source Projects
  13. What Kind of Open-source Projects are Suitable for Beginners
  14. Highly Recommended Open-source Projects
  15. Hello World
  16. Methods of Downloading SC 1. On Source Control and Version Control 1. Find SC of Early Open-source Projects 1. Whirlwind Introduction to SVN, Git and Mercurial 1. Way to get SC Based on Package Management
  17. Make It to Run 1. For Ruby users 1. For PHP users 1. For Java users 1. For Python users 1. For JavaScript users 1. For C/C++ users
  18. Overcome the Problems You May Encounter
  19. Understanding the Source Code
  20. Static Understanding 1. Directory Structure 1. Package Name and File Name 1. Class Name, Method Name and Variable Name 1. Comments and README file 1. UML Diagram 1. External Documents
  21. Dynamic Understanding 1. Output Logs 1. Setting Breakpoint and Stepping Through 1. Throwing Exception 1. Try to Change
  22. Main Line and Branch Line 1. Where to Begin 1. Tracking Critical Process 1. Find the Mount Point
  23. Surrounding code (?) 1. Sub-functions Must Existed 1. demo/example 1. Unit Testing
  24. Knowing How
  25. Modify the Open Source Project
  26. Changing from Requirements
  27. Finding Codes for Reference by following clues
  28. Making bigger changes -- Structural Adjustment
  29. Hardships of seeking Approval
  30. Finding Bugs and Making Proposals
  31. Helping to Improve Documentation
  32. Pushing Your Codes (Function Code and Test Code)
  33. Surrounding Code (Demo/Extension/Subproject)
  34. Promotion
  35. Other Odd Jobs
  36. Join the Group
  37. Partners
  38. Organization Structure
  39. Organization of Open-source Project
  40. Basic Etiquette
  41. Create an Open Source Project
  42. Read More
  43. Contributor
  44. FAQ

About

learn software development with the help of open-source project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published