Skip to content

organization_system

GITHUB PROJECT SETUP

Repository Structure

telescope-network/
├── server/
│   ├── main.py
│   ├── models.py
│   ├── scheduler.py
│   ├── api/
│   │   └── routes.py
│   ├── tests/
│   └── requirements.txt
├── client/
│   ├── client.py
│   ├── config.yaml.example
│   └── requirements.txt
├── docs/
│   ├── README.md
│   ├── QUICKSTART.md
│   ├── API.md
│   └── CONTRIBUTING.md
├── .github/
│   ├── ISSUE_TEMPLATE/
│   │   ├── bug_report.md
│   │   └── feature_request.md
│   └── workflows/
│       └── tests.yml
└── README.md

Issue Labels

Priority:
- p0-critical (server down, data loss)
- p1-high (blocks users)
- p2-medium (annoying but workaround exists)
- p3-low (nice to have)

Type:
- bug
- feature
- documentation
- question

Status:
- needs-triage
- in-progress
- blocked
- ready-for-review

GitHub Project Board Columns

1. Backlog (someday/maybe)
2. This Month (committed)
3. This Week (active sprint)
4. In Progress (working now)
5. Review/Test (needs verification)
6. Done (celebrate!)

NOTION WORKSPACE STRUCTURE

Pages to Create

📁 Telescope Network
├── 📋 Dashboard (home page with links to everything)
├── 📁 Development
│   ├── System Architecture
│   ├── API Specification
│   ├── Database Schema
│   └── Technical Decisions Log
├── 📁 Operations
│   ├── Server Runbook
│   ├── Deployment Checklist
│   ├── Incident Log
│   └── Monitoring Setup
├── 📁 Community
│   ├── Volunteer List (database)
│   ├── Onboarding Guide
│   ├── FAQ
│   └── Communication Templates
├── 📁 Science
│   ├── Target Lists
│   ├── Campaign Plans
│   ├── Paper Drafts
│   └── Meeting Notes
├── 📁 Admin
│   ├── Finances Tracker
│   ├── Grant Applications
│   ├── Contact Log
│   └── Weekly Reviews
└── 📁 Archive
    └── Old stuff

Volunteer Database Template (Notion)

Field Type Purpose
Name Text Who
Email Email Contact
Site Name Text Their observatory
Location Text City, Country
Equipment Multi-select Telescope, camera, etc
Status Select Active / Onboarding / Inactive
Joined Date When they signed up
Last Active Date Last observation submitted
Notes Text Anything relevant

TODOIST SETUP

Projects

📁 Telescope Network
├── 🔧 Server Development
├── 💻 Client Development  
├── 📖 Documentation
├── 👥 Community
├── 📊 Operations
├── 📝 Paper/Research
└── 📧 Communications

Labels

@coding
@writing
@support
@admin
@blocked
@quick (< 15 min)
@deep (needs focus)

Filters (save these)

Today's coding: today & @coding
Quick wins: @quick & !#Inbox
Blocked items: @blocked
This week: 7 days

Weekly Task Template

Copy this every Monday:

## Weekly Tasks Template

### Must Do (non-negotiable)
- [ ] Check server health dashboard
- [ ] Respond to support messages
- [ ] Review new issues on GitHub
- [ ] Update project board

### Should Do (aim for these)
- [ ] One PR merged
- [ ] Update documentation if anything changed
- [ ] Post community update

### Could Do (if time allows)
- [ ] Reach out to one potential volunteer
- [ ] Review metrics/analytics
- [ ] Plan next week


TIME MANAGEMENT SYSTEM

Time Budget (10 hours/week)

Activity Hours/Week When
Coding 4-5 Tue/Thu evening
Community/Support 2 Daily 15min check
Documentation 1 Saturday morning
Planning/Admin 1 Monday evening
Buffer 1-2 As needed

Pomodoro Schedule for Coding Sessions

25 min: Deep work (no notifications)
5 min: Break (walk, water)
25 min: Deep work
5 min: Break
25 min: Deep work
15 min: Longer break, check messages

Total: 2 hours = 3 pomodoros of real work

Energy Management

High Energy Tasks (when fresh):
- Architecture decisions
- Complex bug fixes
- Writing documentation from scratch
- Important emails

Low Energy Tasks (tired/distracted):
- Code review
- Issue triage
- Responding to simple questions
- Updating configs

COMMUNICATION SYSTEM

Response Time Commitments

Critical (server down): 4 hours
Normal issues: 48 hours
Feature requests: 1 week (or "logged for consideration")
General questions: 48 hours

Templates (Save in Notion)

Template: Bug Acknowledged

Hi [name],

Thanks for reporting this. I've created issue #[X] to track it.

Current status: [investigating / confirmed / needs more info]
Priority: [high / medium / low]

[If needs more info:]
Could you provide:
- Your client version
- Your operating system
- Steps to reproduce

I'll update you when there's progress.

Template: Feature Request Response

Thanks for the suggestion! 

I've added this to the backlog for consideration. Currently focused on [current priority], but I'll revisit feature requests when planning the next release.

You can track progress on the public roadmap: [link]

Template: Welcome New Volunteer

Welcome to [Network Name]! 🎉

## Quick Start
1. Download the client: [link]
2. Your API key: `[key]`
3. Follow the setup guide: [link]
4. Join our Discord: [link]

## First Steps
- Configure your site information
- Run a test observation
- Say hi in #introductions

Questions? Reply to this email or ask in #support.

Clear skies!
[Your name]


WEEKLY REVIEW TEMPLATE

Copy this into Notion every week:

# Week of [DATE]

## Metrics
- Sites active: 
- Observations this week:
- New signups:
- Support tickets:

## Wins 🎉
- 

## Challenges 😤
- 

## Completed
- [ ] 
- [ ] 

## Didn't Get To (move to next week or backlog)
- 

## Next Week Focus
1. 
2. 
3. 

## Notes/Thoughts

MONTHLY REVIEW TEMPLATE

# Month: [MONTH YEAR]

## Key Metrics
| Metric | Start | End | Change |
|--------|-------|-----|--------|
| Active sites | | | |
| Total observations | | | |
| Registered volunteers | | | |

## Milestones Reached
- 

## Biggest Challenge
- 

## What I Learned
- 

## Next Month Goals
1. 
2. 
3. 

## Am I Burning Out? (honest check)
- Energy level (1-10):
- Excitement about project (1-10):
- Feeling overwhelmed (1-10):

If any > 7 on overwhelmed or < 4 on energy/excitement:
→ Take a week off
→ Reduce scope
→ Ask for help

FIRST 90 DAYS TASK BREAKDOWN

Month 1: Foundation

Week 1: Setup - [ ] Create GitHub repo with structure - [ ] Set up Notion workspace - [ ] Set up Todoist projects - [ ] Create Discord server - [ ] Buy domain - [ ] Set up basic VPS

Week 2: Core Server - [ ] Database models (Site, Target, Observation) - [ ] Basic FastAPI skeleton - [ ] Site registration endpoint - [ ] API key authentication - [ ] Test with curl/Postman

Week 3: Scheduler - [ ] Target list endpoint - [ ] Altitude calculation with astropy - [ ] Basic priority scoring - [ ] Time filtering (twilight)

Week 4: Data Ingest - [ ] Observation submission endpoint - [ ] Basic validation - [ ] Simple web status page - [ ] Deploy to VPS

Month 2: Client & Testing

Week 5: Basic Client - [ ] Python client skeleton - [ ] Config file handling - [ ] Server polling loop - [ ] Observation submission

Week 6: Integration - [ ] Test client with real telescope (your own) - [ ] Fix bugs from real usage - [ ] Add error handling - [ ] Add logging

Week 7: Documentation - [ ] README with quickstart - [ ] API documentation - [ ] Client setup guide - [ ] Troubleshooting FAQ

Week 8: Polish - [ ] Fix remaining bugs - [ ] Add monitoring (UptimeRobot) - [ ] Set up automated backups - [ ] Security review

Month 3: Beta Launch

Week 9: Beta Prep - [ ] Create onboarding email sequence - [ ] Prepare support documentation - [ ] Test full user journey - [ ] Fix critical issues

Week 10: Recruit Beta Users - [ ] Post on Cloudy Nights - [ ] Contact AAVSO - [ ] Reach out to 5 personal contacts - [ ] Goal: 5 beta signups

Week 11: Beta Support - [ ] Onboard beta users - [ ] Daily check-in with issues - [ ] Fix bugs as they appear - [ ] Document common problems

Week 12: Review & Plan - [ ] Monthly review - [ ] Collect beta feedback - [ ] Prioritize v1.1 improvements - [ ] Plan month 4-6


AUTOMATION CHECKLIST

Things to automate ASAP:

  • [ ] Server health alerts (UptimeRobot)
  • [ ] Database backups (cron job)
  • [ ] CI/CD for deploys (GitHub Actions)
  • [ ] Welcome email on signup (simple script)
  • [ ] SSL renewal (certbot auto-renew)

Things to automate later: - [ ] Weekly digest email - [ ] Data quality reports - [ ] Alert ingestion from external sources


EMERGENCY RUNBOOK

Server is Down

# 1. Check if process is running
ssh server
sudo systemctl status telescope-network

# 2. Check logs
sudo journalctl -u telescope-network -n 100

# 3. Restart if needed
sudo systemctl restart telescope-network

# 4. Check database
psql -U telescope -d telescope -c "SELECT 1;"

# 5. Post in Discord if extended outage

Database Corrupted

# 1. Stop server
sudo systemctl stop telescope-network

# 2. Restore from backup
pg_restore -d telescope /backups/latest.sql

# 3. Restart
sudo systemctl start telescope-network

# 4. Verify data
psql -U telescope -d telescope -c "SELECT COUNT(*) FROM observations;"

Being Overwhelmed

  1. Stop looking at GitHub/Discord for 24 hours
  2. Make a list of the 3 most important things
  3. Do only those 3 things this week
  4. Everything else can wait
  5. If still overwhelmed after a week, ask for help or reduce scope

You've got this. Start small, ship fast, iterate always.