Themed releases - Seneca-CDOT/telescope GitHub Wiki

Historically

During Telescope 3.0 an idea was suggested to have themed releases. It worked for some weeks, it was ignored for others. It is a general guideline and a duty of a sheriff to enforce. Generally, any theme can work for any release/week. However, certain pattern were discovered that made more sense than others.

Enforcing a theme

How does a sheriff enforce a theme? It wouldn't be fair to say "This week all we do is bugs. Stop everything you are doing right now, and do what I want!". You can't exactly tell people what to do like that. Instead, you should incentivize them to go for certain themes. Become the issue seller.

For someone to pick up an issue, they would need to have it be doable and interesting. As a sheriff, you can make that happen. During your meetings, allocate time for presenting issues of the kind you want to be picked. When going over the issue, outline the technology, explain what roughly needs to be done, provide resources like documentation. Basically, make the issue not scary for them. To make it interesting - explain the end result and the process of getting there. However, usually it's all about technology. Certain people will just agree for anything that has to do with their technology of interest. like GO..

In the end, you can't exactly make people do a theme, but you can make it more likely for them to.

Random examples of themes:

  • Bugs
  • Tests
  • CSS/visual polishing
  • Specific project (like React native)
  • Security
  • Autodeployment
  • New technology
  • Research

In practice

This is an example of how themed releases were planned out for 3.0:

Week Date Release Theme
1 Jan 10 2.5 Discovery
2 Jan 17 2.5 Discovery
3 Jan 24 2.5 Discovery
4 Jan 31 2.6 Any
5 Feb 7 2.6 Any
6 Feb 14 2.7 Any
7 Feb 21 2.7 Any
Study Week Feb 28 2.8 Research
8 Mar 7 2.8 Last call for new ideas/features
9 Mar 14 2.8 Last call for new ideas/features
10 Mar 21 2.9 Implementing
11 Mar 28 2.9 Implementing
12 Apr 4 3.0-alpha Bugs, polishing
13 Apr 11 3.0-alpha Bugs, polishing
14 Apr 18 3.0 Only do what has to be completed

There are specific themes I want to point out as they are more important than others.

Discovery

The first weeks are confusing. People have to get used to the project, figure out what even is out there, what technologies they want to work on, how to run the environments. This is the best time to pick simple issues within a familiar area. I recommend:

  • Bugs
  • Dashboard (Status service) related issues (since they don't involve React)
  • Simple CSS/styling fixes
  • Picking up an abandoned PR
  • Pitching a completely new idea and starting it
  • Picking up a simple issue of an unknown technology
  • Project keeper!
  • Starting with an entry point issue seller issue (to discover if you like the area and want to specialize in it for the rest of the semester)

Any

This is the best time to work on Telescope. No finals or tests yet, and no rush on issues. Going into something new and large, learning a new environment/technology, learning how to sheriff. You begin to form groups within the class to focus on larger tasks and divide labor.

Study week

Research

The diving point of the semester. Study week is special, as there are no classes during this time. No exams either. Many classes have midterms before the study week, so you have this large chunk of time to lay in. The absence of pressure, meetings and deadlines create a unique opportunity to do research. Researching a new technology, or concept. Why? Because research does not always bring results and you don't know how long it will take. Research in itself can't exactly have a definite goal or deadline. You can only figure out those after you have gotten somewhere with your research.

Halfs

Study week is the midpoint of the semester. Before it was careless freedom. After it you begin to realize you have limited time and you will not be able to land everything. You need to start thinking about priorities. I recommend a project with all the issues listed be made, where people would have to go through each issue and figure out how important it is. Those that are not important should be later dismissed. The closer to the end of semester you get - the more issues you need to dissmiss.

Last call for new ideas

If you ever had a large idea that involves many steps - think if you will be able to have it done in a month. Because that is how much time you have left. Try to divide your large project into smaller steps that are more achievable. You might have to abandon some of those steps. Make the idea functional, but perhaps still ugly. As long as you have something to show in the end. Another thing you might want to do - ask for help. Team up with someone to divide the work.

Final weeks

This is where prioritizing becomes critical. Sheriffs of the final weeks need to be aware of that. Make sure to ask and discuss during meetings if certain issues are important or/and doable within the time limit. Many issues will be ditched, many people will find to have less time due to final exams.