Skip to content

Latest commit

 

History

History
73 lines (44 loc) · 3.47 KB

OnlineTools.md

File metadata and controls

73 lines (44 loc) · 3.47 KB

Setup | Shells | Git | Markdown and IDEs | Virtual Environments | Task Management

Task Management

In software engineering work there is often many intangible sets of things todo that have to be captured, assigned, prioritized, and tracked. Stickies are not going to cut it!

Github Issues

Issue trackers, such as Bugzilla, originated as a bug reporting tools. A project hosted on github comes with an issue tracker too. Any one can report an issue, add labels, and assign any team member(s) can be assigned to an issue.

image

Nowadays, developers also use issues as a lightweight task management tool. For this usecase, it best works for smaller projects.

See open issues: https://github.com/alt-code/AutoSpark/issues
See closed issues: https://github.com/alt-code/AutoSpark/issues?q=is%3Aissue+is%3Aclosed

Features:

Kanban Boards

Tools such as Trello and GitHub Projects serve as a planning tool that support kanban and agile methods.

Project Board

Boards, Lists, Cards

image

In kanban, you have a “visual” pipeline for transitioning ideas into a delivered product. With these tools, you can move a card (often representing a task) between lists, which are on a single board.

Recommended Pipeline:

  • High-level goals: What do you want to accomplish?
  • This Week: What actions can you do to accomplish those goals.
  • Doing: What are you doing today
  • Waiting: What is blocked.
  • Done: What have you completed.

image

It is recommended that you break tasks down into 2--4 hour chunks.

Signs of a bad Trello board

  • Empty
  • Only high-level goals
  • Too many things
  • Items sticking around not making progress.

Instead of saying "Do analysis" => a more suitable task might be "Find R package for doing peak detection". This is more concrete and actionable.

Scrum

Scrum is a process for managing tasks. The most popular aspect people use is the daily stand-up meeting. In a daily standup, people report the progress and status of the tasks. The idea is by standing up, you won't try taking too long to talk.

The main things covered in a scrum:

  • What I did.
  • What I need to do next.
  • What is blocking me.

Practice: Set up a Task List and Trello Board

  1. Create a new issue related to your progress on this workshop. If you've checked off everything, then you should have mastered a great set of foundational skills preparing your for real software engineering work!

  2. Create a GitHub Project board. You can use it to practice thinking about what tasks should you be working on.