remus

Badges

OG100 Contributions1,000 Contributions10,000 Contributions100,000 Contributions10 Posts100 Posts

Contributions

Posts

1 Day

187

7 Days

1889

4 Weeks

7336

All Time

182068

Current Streak

143

Longest Streak

181

Contributions Map

Contributions by Country

Country Contributions Between Climbers Crags Summits Climbs Ascents
1 United Kingdom 49983 14th November 2023 – 11th August 2026 1384 672 0 2980 4713
2 USA 23979 14th November 2023 – 10th August 2026 785 179 2 832 2304
3 France 11704 14th November 2023 – 9th August 2026 258 125 1 537 999
4 Switzerland 8703 14th November 2023 – 11th August 2026 74 41 1 295 1034
5 Spain 8163 15th November 2023 – 11th August 2026 88 73 0 437 878
6 Italy 4252 16th November 2023 – 10th August 2026 114 56 0 175 329
7 South Africa 3426 16th November 2023 – 11th August 2026 12 35 0 121 374
8 Germany 3026 16th November 2023 – 8th August 2026 115 47 0 102 221
9 Canada 2968 16th November 2023 – 10th August 2026 62 21 3 104 253
10 Austria 2344 16th November 2023 – 11th August 2026 68 26 0 98 207

Recent Contributions

Date Time User Type Name Attribute
1 11th August 2026 09:07:38 UTC remus list Hard Mantle Boulder Problems list_description_pretty
Before
None
After
<p>Boulder problems graded 7B+ or harder where the climbing consists primarily of a mantle move.</p>
2 11th August 2026 09:07:38 UTC remus list Hard Mantle Boulder Problems list_definition
Before
with grade_cutoff as ( select g.order_on from grades g where g.climb_type_id = 2 and g.grade = '7B+' limit 1 ), first_ascent_by_climb as ( select a.climb_id ,string_agg( '<a href="/climber/' || cl.climber_id::varchar || '">' || cl.climber_name || '</a>' ,', ' order by cl.climber_name ) as first_ascent ,(array_agg( pretty_dt(a.ascent_dt_start, a.ascent_dt_end) order by order_dt(a.ascent_dt_start, a.ascent_dt_end) ))[1] as date ,min(order_dt(a.ascent_dt_start, a.ascent_dt_end)) as date_order from ascents a inner join climbers cl on a.climber_id = cl.climber_id and cl.deleted_on is null where a.fa = true and a.deleted_on is null group by a.climb_id ) select c.climb_uuid as row_uuid ,'<a href="/climb/' || c.climb_id::varchar || '">' || c.climb_name || '</a>' as "Name" ,g.grade as "Grade" ,'<a href="/crag/' || cr.crag_id::varchar || '">' || cr.crag_name || '</a>' as "Crag" ,fa.first_ascent || coalesce(', ' || fa.date, '') as "First Ascent" from climbs c inner join grades g on c.grade_id = g.grade_id and g.climb_type_id = 2 inner join climb_meta cm_mantle on c.climb_id = cm_mantle.climb_id and cm_mantle.climb_meta_key_id = 40 left join crags cr on c.crag_id = cr.crag_id left join first_ascent_by_climb fa on c.climb_id = fa.climb_id cross join grade_cutoff gc where c.deleted_on is null and c.climb_type = 2 and g.order_on >= gc.order_on order by g.order_on desc ,coalesce(fa.date_order, 99999999) ,c.climb_name
After
with grade_cutoff as ( select g.order_on from grades g where g.climb_type_id = 2 and g.grade = '7B+' limit 1 ), first_ascent_by_climb as ( select a.climb_id ,string_agg( '<a href="/climber/' || cl.climber_id::varchar || '">' || cl.climber_name || '</a>' ,', ' order by cl.climber_name ) as first_ascent ,(array_agg( pretty_dt(a.ascent_dt_start, a.ascent_dt_end) order by order_dt(a.ascent_dt_start, a.ascent_dt_end) ))[1] as date ,min(order_dt(a.ascent_dt_start, a.ascent_dt_end)) as date_order from ascents a inner join climbers cl on a.climber_id = cl.climber_id and cl.deleted_on is null where a.fa = true and a.deleted_on is null group by a.climb_id ) select c.climb_uuid as row_uuid ,'<a href="/climb/' || c.climb_id::varchar || '">' || c.climb_name || '</a>' as "Name" ,g.grade as "Grade" ,'<a href="/crag/' || cr.crag_id::varchar || '">' || cr.crag_name || '</a>' as "Crag" ,fa.first_ascent || coalesce(', ' || fa.date, '') as "First Ascent" from climbs c inner join grades g on c.grade_id = g.grade_id and g.climb_type_id = 2 inner join climb_meta cm_mantle on c.climb_id = cm_mantle.climb_id and cm_mantle.climb_meta_key_id = 40 left join crags cr on c.crag_id = cr.crag_id left join first_ascent_by_climb fa on c.climb_id = fa.climb_id cross join grade_cutoff gc where c.deleted_on is null and c.climb_type = 2 and g.order_on >= gc.order_on order by g.order_on desc ,coalesce(fa.date_order, 99999999) ,c.climb_name
Diff
--- before

+++ after

@@ -1,72 +1,72 @@

-with grade_cutoff as (
- select
- g.order_on
-
- from
- grades g
-
- where
- g.climb_type_id = 2
- and g.grade = '7B+'
-
- limit 1
-),
-first_ascent_by_climb as (
- select
- a.climb_id
- ,string_agg(
- '<a href="/climber/' || cl.climber_id::varchar || '">' || cl.climber_name || '</a>'
- ,', '
- order by cl.climber_name
- ) as first_ascent
- ,(array_agg(
- pretty_dt(a.ascent_dt_start, a.ascent_dt_end)
- order by order_dt(a.ascent_dt_start, a.ascent_dt_end)
- ))[1] as date
- ,min(order_dt(a.ascent_dt_start, a.ascent_dt_end)) as date_order
-
- from
- ascents a
- inner join climbers cl
- on a.climber_id = cl.climber_id
- and cl.deleted_on is null
-
- where
- a.fa = true
- and a.deleted_on is null
-
- group by
- a.climb_id
-)
-
-select
- c.climb_uuid as row_uuid
- ,'<a href="/climb/' || c.climb_id::varchar || '">' || c.climb_name || '</a>' as "Name"
- ,g.grade as "Grade"
- ,'<a href="/crag/' || cr.crag_id::varchar || '">' || cr.crag_name || '</a>' as "Crag"
- ,fa.first_ascent
- || coalesce(', ' || fa.date, '') as "First Ascent"
-
-from
- climbs c
- inner join grades g
- on c.grade_id = g.grade_id
- and g.climb_type_id = 2
- inner join climb_meta cm_mantle
- on c.climb_id = cm_mantle.climb_id
- and cm_mantle.climb_meta_key_id = 40
- left join crags cr
- on c.crag_id = cr.crag_id
- left join first_ascent_by_climb fa
- on c.climb_id = fa.climb_id
- cross join grade_cutoff gc
-
-where
- c.deleted_on is null
- and c.climb_type = 2
- and g.order_on >= gc.order_on
-
-order by
- g.order_on desc
- ,coalesce(fa.date_order, 99999999)
+with grade_cutoff as (
+ select
+ g.order_on
+
+ from
+ grades g
+
+ where
+ g.climb_type_id = 2
+ and g.grade = '7B+'
+
+ limit 1
+),
+first_ascent_by_climb as (
+ select
+ a.climb_id
+ ,string_agg(
+ '<a href="/climber/' || cl.climber_id::varchar || '">' || cl.climber_name || '</a>'
+ ,', '
+ order by cl.climber_name
+ ) as first_ascent
+ ,(array_agg(
+ pretty_dt(a.ascent_dt_start, a.ascent_dt_end)
+ order by order_dt(a.ascent_dt_start, a.ascent_dt_end)
+ ))[1] as date
+ ,min(order_dt(a.ascent_dt_start, a.ascent_dt_end)) as date_order
+
+ from
+ ascents a
+ inner join climbers cl
+ on a.climber_id = cl.climber_id
+ and cl.deleted_on is null
+
+ where
+ a.fa = true
+ and a.deleted_on is null
+
+ group by
+ a.climb_id
+)
+
+select
+ c.climb_uuid as row_uuid
+ ,'<a href="/climb/' || c.climb_id::varchar || '">' || c.climb_name || '</a>' as "Name"
+ ,g.grade as "Grade"
+ ,'<a href="/crag/' || cr.crag_id::varchar || '">' || cr.crag_name || '</a>' as "Crag"
+ ,fa.first_ascent
+ || coalesce(', ' || fa.date, '') as "First Ascent"
+
+from
+ climbs c
+ inner join grades g
+ on c.grade_id = g.grade_id
+ and g.climb_type_id = 2
+ inner join climb_meta cm_mantle
+ on c.climb_id = cm_mantle.climb_id
+ and cm_mantle.climb_meta_key_id = 40
+ left join crags cr
+ on c.crag_id = cr.crag_id
+ left join first_ascent_by_climb fa
+ on c.climb_id = fa.climb_id
+ cross join grade_cutoff gc
+
+where
+ c.deleted_on is null
+ and c.climb_type = 2
+ and g.order_on >= gc.order_on
+
+order by
+ g.order_on desc
+ ,coalesce(fa.date_order, 99999999)
,c.climb_name
3 11th August 2026 08:47:45 UTC remus list Hard Mantle Boulder Problems list_type_id
Before
None
After
1
4 11th August 2026 08:47:45 UTC remus list Hard Mantle Boulder Problems list_name
Before
None
After
Hard Mantle Boulder Problems
5 11th August 2026 08:47:45 UTC remus list Hard Mantle Boulder Problems list_definition
Before
None
After
with grade_cutoff as ( select g.order_on from grades g where g.climb_type_id = 2 and g.grade = '7B+' limit 1 ), first_ascent_by_climb as ( select a.climb_id ,string_agg( '<a href="/climber/' || cl.climber_id::varchar || '">' || cl.climber_name || '</a>' ,', ' order by cl.climber_name ) as first_ascent ,(array_agg( pretty_dt(a.ascent_dt_start, a.ascent_dt_end) order by order_dt(a.ascent_dt_start, a.ascent_dt_end) ))[1] as date ,min(order_dt(a.ascent_dt_start, a.ascent_dt_end)) as date_order from ascents a inner join climbers cl on a.climber_id = cl.climber_id and cl.deleted_on is null where a.fa = true and a.deleted_on is null group by a.climb_id ) select c.climb_uuid as row_uuid ,'<a href="/climb/' || c.climb_id::varchar || '">' || c.climb_name || '</a>' as "Name" ,g.grade as "Grade" ,'<a href="/crag/' || cr.crag_id::varchar || '">' || cr.crag_name || '</a>' as "Crag" ,fa.first_ascent || coalesce(', ' || fa.date, '') as "First Ascent" from climbs c inner join grades g on c.grade_id = g.grade_id and g.climb_type_id = 2 inner join climb_meta cm_mantle on c.climb_id = cm_mantle.climb_id and cm_mantle.climb_meta_key_id = 40 left join crags cr on c.crag_id = cr.crag_id left join first_ascent_by_climb fa on c.climb_id = fa.climb_id cross join grade_cutoff gc where c.deleted_on is null and c.climb_type = 2 and g.order_on >= gc.order_on order by g.order_on desc ,coalesce(fa.date_order, 99999999) ,c.climb_name
Diff
--- before

+++ after

@@ -1 +1,72 @@

+with grade_cutoff as (
+ select
+ g.order_on

+ from
+ grades g
+
+ where
+ g.climb_type_id = 2
+ and g.grade = '7B+'
+
+ limit 1
+),
+first_ascent_by_climb as (
+ select
+ a.climb_id
+ ,string_agg(
+ '<a href="/climber/' || cl.climber_id::varchar || '">' || cl.climber_name || '</a>'
+ ,', '
+ order by cl.climber_name
+ ) as first_ascent
+ ,(array_agg(
+ pretty_dt(a.ascent_dt_start, a.ascent_dt_end)
+ order by order_dt(a.ascent_dt_start, a.ascent_dt_end)
+ ))[1] as date
+ ,min(order_dt(a.ascent_dt_start, a.ascent_dt_end)) as date_order
+
+ from
+ ascents a
+ inner join climbers cl
+ on a.climber_id = cl.climber_id
+ and cl.deleted_on is null
+
+ where
+ a.fa = true
+ and a.deleted_on is null
+
+ group by
+ a.climb_id
+)
+
+select
+ c.climb_uuid as row_uuid
+ ,'<a href="/climb/' || c.climb_id::varchar || '">' || c.climb_name || '</a>' as "Name"
+ ,g.grade as "Grade"
+ ,'<a href="/crag/' || cr.crag_id::varchar || '">' || cr.crag_name || '</a>' as "Crag"
+ ,fa.first_ascent
+ || coalesce(', ' || fa.date, '') as "First Ascent"
+
+from
+ climbs c
+ inner join grades g
+ on c.grade_id = g.grade_id
+ and g.climb_type_id = 2
+ inner join climb_meta cm_mantle
+ on c.climb_id = cm_mantle.climb_id
+ and cm_mantle.climb_meta_key_id = 40
+ left join crags cr
+ on c.crag_id = cr.crag_id
+ left join first_ascent_by_climb fa
+ on c.climb_id = fa.climb_id
+ cross join grade_cutoff gc
+
+where
+ c.deleted_on is null
+ and c.climb_type = 2
+ and g.order_on >= gc.order_on
+
+order by
+ g.order_on desc
+ ,coalesce(fa.date_order, 99999999)
+ ,c.climb_name
6 11th August 2026 08:47:45 UTC remus list Hard Mantle Boulder Problems list_description
Before
None
After
Boulder problems graded 7B+ or harder where the climbing consists primarily of a mantle move.
Diff
--- before

+++ after

@@ -1 +1 @@

-
+Boulder problems graded 7B+ or harder where the climbing consists primarily of a mantle move.
7 11th August 2026 08:47:45 UTC remus list Hard Mantle Boulder Problems list_type_name
Before
None
After
Bouldering
8 11th August 2026 08:42:33 UTC remus climb Cloud Gate Mantle
Before
None
After
1
9 11th August 2026 08:42:29 UTC remus climb Cloud Gate Low Mantle
Before
None
After
1
10 11th August 2026 08:42:09 UTC remus climb The Beast Mantle
Before
None
After
1
11 11th August 2026 08:42:05 UTC remus ascent Jon Fullwood's ascent of The Beast Ascent #
Before
None
After
1
12 11th August 2026 08:42:04 UTC remus ascent Jon Fullwood's ascent of The Beast ascent_style_id
Before
None
After
1
13 11th August 2026 08:42:04 UTC remus ascent Jon Fullwood's ascent of The Beast ascent_type_id
Before
None
After
2
14 11th August 2026 08:42:04 UTC remus ascent Jon Fullwood's ascent of The Beast climb_id
Before
None
After
8210
15 11th August 2026 08:42:04 UTC remus ascent Jon Fullwood's ascent of The Beast ascent_dt_start
Before
None
After
2006-01-01
16 11th August 2026 08:42:04 UTC remus ascent Jon Fullwood's ascent of The Beast climber_id
Before
None
After
1768
17 11th August 2026 08:42:04 UTC remus ascent Jon Fullwood's ascent of The Beast ascent_dt_end
Before
None
After
2007-01-01
18 11th August 2026 08:41:47 UTC remus climb The Beast _default_ascent_type_id
Before
None
After
2
19 11th August 2026 08:41:47 UTC remus climb The Beast climb_type
Before
None
After
2
20 11th August 2026 08:41:47 UTC remus climb The Beast climb_name
Before
None
After
The Beast

Page 1 >