{% extends "base.html" %} {% block title %}Compare rounds · Competence{% endblock %} {% block crumbs %}Compare rounds{% endblock %} {% block content %}
{{ error }}
{% endif %} {% macro series(values) -%} {%- for v in values %}{% if v is none %}–{% else %}{{ v|num }}{% endif %}{% if not loop.last %} → {% endif %}{% endfor -%} {%- endmacro %} {% macro change(d, decimals=1) -%} {%- if d is not none %}{% set r = d|round(decimals) %}{{ d|signed(decimals) }}{% endif -%} {%- endmacro %} {% if cmp %}{% set b, a = cmp.before, cmp.after %}Team, {{ cmp.before_round.label }} → {{ cmp.after_round.label }}. Both rounds use today's skills and targets. Trend columns run oldest to newest: {{ cmp.rounds|map(attribute="label")|join(" → ") }}. Levels and desire are medians, which move in steps: a few people improving may not change them, so small changes can be missing from the lists below (why medians).
| {{ cmp.before_round.label }} | {{ cmp.after_round.label }} | Change | |
|---|---|---|---|
| {{ label }} | {{ b[field]|num(0) }} | {{ a[field]|num(0) }} | {% if d is not none %}{{ d|signed(0) }}{% endif %} |
| Skill | Median level | Change |
|---|---|---|
| {{ r.name }}{{ r.category }} | {{ r.before.median_level|num }} → {{ r.after.median_level|num }} | {{ change(r.level_delta) }} |
None.
{% endif %}| Skill | Median level | Change |
|---|---|---|
| {{ r.name }}{{ r.category }} | {{ r.before.median_level|num }} → {{ r.after.median_level|num }} | {{ change(r.level_delta) }} |
None.
{% endif %}Rated in {{ cmp.after_round.label }} but not in {{ cmp.before_round.label }} (new skills, or skills nobody rated then): {{ cmp.first_rated|map(attribute="name")|join(", ") }}
{% endif %} {% if cmp.retired_between %}Retired in between (left out of the figures above): {% for name, on in cmp.retired_between %}{{ name }} ({{ on }}){% if not loop.last %}, {% endif %}{% endfor %}
{% endif %}| Skill | Median level | Δ | Median desire | 3+ | 5+ | Weighted shortfall | Trend (median level) |
|---|---|---|---|---|---|---|---|
| {{ r.name }} {{ r.tag|tag_badge }}{{ r.category }} | {{ r.before.median_level|num }} → {{ r.after.median_level|num }} | {{ change(r.level_delta) }} | {{ r.before.median_desire|num }} → {{ r.after.median_desire|num }} | {{ r.before.n3 }} → {{ r.after.n3 }} | {{ r.before.n5 }} → {{ r.after.n5 }} | {{ r.before.weighted_shortfall }} → {{ r.after.weighted_shortfall }} | {{ series(r.trend) }} |
| No skills to show. | |||||||
{{ pcmp.person.name }}, {{ pcmp.before_round.label }}{% if pcmp.before %} ({{ pcmp.before.role.name }}){% else %} (not assessed){% endif %} → {{ pcmp.after_round.label }}{% if pcmp.after %} ({{ pcmp.after.role.name }}){% else %} (not assessed){% endif %}. Targets are for the role in {{ pcmp.after_round.label }}. Trend: {{ pcmp.rounds|map(attribute="label")|join(" → ") }}.
{% if pcmp.after %}Profile in {{ pcmp.after_round.label }}
{% endif %}| Skill | Level | Change |
|---|---|---|
| {{ r.name }}{{ r.category }} | {{ r.before_used|num }} → {{ r.after_used|num }} | {{ change(r.level_delta, 0) }} |
None.
{% endif %}| Skill | Level | Change |
|---|---|---|
| {{ r.name }}{{ r.category }} | {{ r.before_used|num }} → {{ r.after_used|num }} | {{ change(r.level_delta, 0) }} |
None.
{% endif %}| Skill | Level | Δ | Desire | Target | Trend (level used) |
|---|---|---|---|---|---|
| {{ r.name }} {{ r.tag|tag_badge }}{{ r.category }} | {{ r.before_used|num }} → {{ r.after_used|num }} | {{ change(r.level_delta, 0) }} | {{ r.before_desire|num }} → {{ r.after_desire|num }} | {{ r.target|num }} | {{ series(r.trend) }} |
| No skills to show. | |||||