Welcome to Decode’s coding Journey!

My name is Axelofwar and I’m extremely excited to welcome you to Day 1 - Learn Collaborative Development! There are a ton of languages and frameworks used in modern day development that can make the coding landscape feel very broad and sometimes even scary. Before we dive into any of those, there are some basics to understand about the coding environment and working with other developers on a project. We’ll start with some of these common tools that enable any developer to contribute - regardless of language or framework.

Topics Covered

Agile and Scrum are methodologies used in software development to improve the efficiency of teams. Agile is a philosophy that emphasizes working in short iterations and prioritizing customer feedback. Instead of trying to tackle a large project all at once, Agile encourages breaking it up into smaller, more manageable pieces. This way, teams can quickly make changes as needed and adjust course based on feedback, as well as assign smaller tasks of a greater goal to specific engineers.

Scrum is a specific implementation of Agile that breaks work down into sprints, which are short, focused periods of time where the team works on a specific set of tasks. At the end of each sprint, the team evaluates what was accomplished and plans for the next sprint. This process helps teams stay on track and make continuous progress toward their goals.

Agile and Scrum work together to create a flexible and collaborative work environment that encourages continuous improvement. By breaking work down into smaller pieces and working iteratively, teams can adapt to changes and make improvements quickly. Scrum provides a structure for organizing work and keeping everyone on the same page. Both methodologies prioritize communication and collaboration among team members. It is more important to understand these concepts at a high level, so that you are familiar with the terms that I will explain later. Low-level comprehension of agile/scrum methodology and its details is less critical.

How to use GitHub for beginners

GitHub provides a platform for version control, collaboration, and communication among team members working on the project. To effectively manage a project on GitHub, you need to define the scope of the project, break it down into manageable tasks, assign those tasks to team members, and set deadlines for completion. You should also track progress, communicate regularly with team members, and adjust plans as needed. GitHub has a lot of native project management features in order to make this easier! We will break down some of these terms next.

Terms - there’s tons of terminology that gets used in the dev world but I’ll try to break down some of the most important into two categories - Agile/Scrum terms and GitHub terms. Don’t worry too much about agile and scrum, its more important to get the terms below as they are what will be used - less the agile/scrum methods.

Agile/Scrum terms:

We will look at using Agile/Scrum terms moving forward, but our examples will utilize the GitHub projects section shown above - which is their native project management tool.

GitHub terms:

axelofwar/chatGPT-help-bot on branch main

axelofwar/chatGPT-help-bot on branch main

axelofwar/chatGPT-help-bot on branch axelofwar-nft-inspect

axelofwar/chatGPT-help-bot on branch axelofwar-nft-inspect

GitHub also offers many other features such as wikis, page deployments, branch protections, and much more! You should look into these if you want to become a 10x open source contributor! Much of the open source community simply scroll GitHub for issues on projects related to things they enjoy and look for ways to contribute! This is a great way to enhance your skills, network, and potentially even become an official contributor on profitable ventures!

Note on Project Management: