Technical Writing section added

This commit is contained in:
rzmk 2023-06-20 12:04:58 -04:00
parent 540222baf1
commit a0cf3114f0
No known key found for this signature in database
8 changed files with 248 additions and 1 deletions

View file

@ -1,5 +1,5 @@
--- ---
sidebar_position: 3 sidebar_position: 4
--- ---
# 🌪 qsv Whirlwind Tour # 🌪 qsv Whirlwind Tour

View file

@ -0,0 +1,8 @@
{
"label": "✍ Technical Writing",
"position": 3,
"link": {
"type": "generated-index",
"description": "How to write technical documentation and organize your work."
}
}

View file

@ -0,0 +1,70 @@
---
sidebar_position: 3
---
# ☕ Daily Standups
You'll often greet your workday with a **standup meeting**. This is a meeting where you and your team members share what you've accomplished since the last standup meeting, what you plan to work on next, and any blockers you're facing.
To stay on track on a daily basis, it can be very helpful to organize yourself before, during, and after this meeting.
## 🏁 Before the Standup
Try to write down the following before your standup meeting:
- 🎉 What you've accomplished since the last standup meeting
- 🛠 What you plan to continue working on or work on next
- ❌ "Blockers" you are facing, which are things that stop you from continuing work on a task or project
- ❓ Questions you have for any team member (or in general) that you couldn't get answered over your team communication platform
## 🏎 During the Standup
When it's your turn, cover the points you wrote down without going into too much extensive detail (as you should put any extra details in your notes or kanban board). Ask to setup a meeting with any team member you have questions for if you can't get them answered during the standup or if what you're working on requires more discussion and doesn't need the entire team's attention.
Also make sure to write down any new tasks or to-dos assigned to you during the standup. 📃
## 🏆 After the Standup
Review what you've written down and make sure you've answered all your questions and resolved any blockers. If you haven't, make sure to follow up with the appropriate team members. If you use a kanban board or any tracker for your tasks and projects, add any new tasks assigned to you to your board and update any notes or progress you've made on your tasks.
Now you have a good idea of what you need to do for the day. Get to work! 💼
## 🧩 Daily Standup Notes Template
Here's a Markdown template you can use daily to keep track of your standup notes:
```markdown
# 📅 [Date] Daily Standup
## 🎉 Accomplished
> What tasks you've completed or goals you've accomplished or made progress on.
-
## 🛠 Working On
> What you are currently working on or plan to start working on and how much progress you expect to make. Also when you complete or make progress on your tasks, write down what you've done for tomorrow's Accomplished section.
-
## ❌ Blockers
> Problems you're facing that stop you from continuing work.
-
## ❓ Questions
> Any specific questions you have for any team member or in general. Make sure you write down the answers when you get them too.
-
## 📃 Todo
> Any new tasks assigned, meetings to setup, etc. that you may also add to your kanban board.
- [ ]
```
Personally I like to use [Obsidian](https://obsidian.md/) to keep track of my daily standup notes (especially with its [Daily Notes plugin](https://help.obsidian.md/Plugins/Daily+notes)), but you can use any note-taking app you like.

View file

@ -0,0 +1,78 @@
---
sidebar_position: 4
---
# 🛹 Kanban Boards
A **kanban board** is a great way to organize your tasks and projects.
Kanban boards help organize your work and keep track of what you need to do, and it can be helpful to share a kanban board with your team so everyone understands what everyone else is working on and can potentially collaborate or help each other out.
> There's a project management approach called **Agile** that can often be used in conjunction with kanban boards.
## 🎈 Kanban Board Example
Here's an example of a Kanban board that keeps track of a team's tasks using Notion:
import ThemedImage from "@theme/ThemedImage";
import useBaseUrl from "@docusaurus/useBaseUrl";
<ThemedImage
alt="Kanban board example"
sources={{
light: useBaseUrl(
"/img/docs/technical-writing/kanban-boards/kanban-example-light.png"
),
dark: useBaseUrl(
"/img/docs/technical-writing/kanban-boards/kanban-example-dark.png"
),
}}
/>
## 🏗 Kanban Board Structure
### 📊 Columns
A kanban board is comprised of **columns** that represent the status of a card. For example, a common kanban board has columns for `Not Started`, `In Progress`, and `Done`.
### 💳 Cards
Within each column are cards that represent a task or project. These cards can be moved across columns to represent their status.
You may assign a card to a team member and set a due date, a priority, the estimated amount of effort to complete the task, and more. Some tools allow you to write notes in your cards, which can help organize your research and also get others up to speed on what you're working on.
#### 🧩 Card Template
Here's a Markdown template you can use for your kanban cards:
```markdown
## 🗺 Overview
## 📌 Tasks
- [ ]
## ❌ Blockers
-
## 🔍 Notes & Research
-
## 💡 Ideas
-
## ✨ Resources & References
-
```
## 🛠 Tools & Software
There are many tools you can use to work with a kanban board. Here are some common ones:
- [GitHub Projects](https://docs.github.com/en/issues/planning-and-tracking-with-projects/learning-about-projects/about-projects)
- [Notion](https://www.notion.so/)
- [Jira](https://www.atlassian.com/software/jira)

View file

@ -0,0 +1,29 @@
---
sidebar_position: 2
---
# 📝 Markdown
**Markdown** is a markup language that is very useful for taking notes and writing documentation.
In fact, the page you're reading right now is built based on Markdown!
## 📚 Markdown Resources
### 🏫 Learn Markdown
- [Markdown Guide](https://www.markdownguide.org/)
- [Markdown Cheatsheet](https://www.markdownguide.org/cheat-sheet/)
### 📓 Markdown Editors
Here are some Markdown editors you can use for taking notes:
- [Obsidian](https://obsidian.md/)
- [Notion](https://www.notion.so/)
:::note
These programs often have extra features that can be useful for taking notes, such as the ability to create kanban boards, embed images, and more. However, they do support Markdown. Also, you can instead make a new Markdown file in your favorite text editor like Visual Studio Code by saving a file with the `.md` extension.
:::

View file

@ -0,0 +1,62 @@
---
sidebar_position: 1
---
# 🗺 Technical Writing Overview
Though programming is a large part of software development, it's not the only part. In fact, it can become a small part. You may spend a lot more time on planning, organizing, and writing technical documentation. We'll cover some tips and tricks that may help you communicate your ideas clearly and effectively through **technical writing**.
## 💭 Why Learn About Technical Writing?
Technical writing offers several benefits that can enhance your professional communication skills and help others make sense of your work, be it a codebase, a project, or any other technical subject.
Here are some benefits of technical writing:
### ✅ Clear communication
Technical writing isn't about using overly complex language that just ends up being difficult to understand. It's about taking complex information and conveying them in a clear and concise manner.
### 👔 Professional documentation
Technical writing can help you create professional documentation for your projects, which can help others understand your work and potentially contribute to it. Writing professional reports, proposals, presentations, and more in an organized manner can enhance your professional credibility and communication skills.
### 👍 User-friendly content
Understanding your audience and what their needs, preferences, and level of expertise can help you create content that is easy to understand and accessible. This can be very helpful for creating user-friendly documentation, such as tutorials, guides, and manuals.
### 🛠 Maintainable projects
Just like building furniture without instructions can be like a nightmare, working and maintaining a project without documentation can be like a nightmare. Technical writing can help you share documentation that can help you and others maintain your projects and codebases.
### 🚀 Improvement & collaboration
Sharing your work with others can help you get valuable feedback from your audience to improve your work, while also allowing others to learn from your work and potentially contribute to it.
## 📝 Where Can I Practice Technical Writing?
You can practice technical writing in many different scenarios, such as:
- Code/API/Project Documentation
- [Daily standup notes](daily-standups)
- [Kanban boards](kanban-boards)
- Code comments
- GitHub issues
- GitHub pull requests
- Blog posts
- Case studies
## 🔍 Where Can I Learn More?
Practicing technical writing while getting feedback from others is a great way to learn where you can improve.
If you'd like to take courses on technical writing, here are a few technical writing courses from Google that you can take for free:
| Course | Summary |
| ------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- |
| [Technical Writing One](https://developers.google.com/tech-writing/one) | Learn the critical basics of technical writing. Take this course before taking any of the other courses. |
| [Technical Writing Two](https://developers.google.com/tech-writing/two) | Practice four intermediate topics in technical writing. |
| [Writing Helpful Error Messages](https://developers.google.com/tech-writing/error-messages) | Write clearer, more effective error messages, whether they appear in IDEs, command lines, or GUIs. |
I suggest adding course recommendations to your [kanban board](kanban-boards) and updating your progress as you go through them.
More importantly however, I suggest practicing technical writing in various scenarios and getting feedback from others.

Binary file not shown.

After

Width:  |  Height:  |  Size: 105 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 105 KiB