-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcubing.html
More file actions
162 lines (142 loc) · 6.32 KB
/
cubing.html
File metadata and controls
162 lines (142 loc) · 6.32 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
<!DOCTYPE html>
<html lang="en">
<head>
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
<script src="https://cdn.jsdelivr.net/npm/date-fns@3.6.0/cdn.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/chartjs-adapter-date-fns@3.0.0"></script>
<link rel="stylesheet" href="style.css">
<title>Rowan Fortier - Cubing</title>
<link rel="icon" type="image/x-icon" href="/images/favicon.ico">
<link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined" rel="stylesheet" />
</head>
<body>
<div class="topnav">
<div class="nav">
<a href="index.html"><span class="material-symbols-outlined">home</span> Home</a>
<a href="programming.html"><span class="material-symbols-outlined">build</span> Projects</a>
<a href="games.html"><span class="material-symbols-outlined">stadia_controller</span> Games</a>
<a href="youtube.html"><span class="material-symbols-outlined">youtube_activity</span> YouTube</a>
<a class="active" href="cubing.html"><span class="material-symbols-outlined">deployed_code</span> Rubik's Cube</a>
<a href="fitness.html"><span class="material-symbols-outlined">exercise</span> Fitness</a>
</div>
</div>
<h1>Rubik's Cubing</h1>
<a class="no-link-underline project-box-container" href="http://www.thecubicle.com" target="_blank">
<div class="project-box gradient-cubicle">
<img src="images/projects/cubicle.png">
<div>
<h3>TheCubicle</h3>
<p>I'm sponsored by TheCubicle.com! Use discount code <code class="language-plaintext highlighter-rouge">Rowan</code> to get 5% off your order.</p>
</div>
</div>
</a>
<p>Some time in March 2016 I saw my mom playing with a Rubik's Cube, and we had a few little competitions to see who could build a side of a single colour the fastest. She always won, so one day I looked up a full tutorial on how to solve the cube, and pretended like I had figured it out myself to show off to my mom. My first ever timed solve was about 10 minutes.</p>
<h2>Speedsolving</h2>
<p>I've competed in 11 official competitions, and spectated at the 2025 World Championships. Check out my <a href="https://www.worldcubeassociation.org/persons/2016FORT03">World Cube Association</a> profile to see my official results and rankings! Below is a graph of my personal best times on the standard 3x3x3 Rubik's Cube.</p>
<div class="chart">
<canvas id="pbChart"></canvas>
</div>
<h2>Method Development</h2>
<a class="no-link-underline project-box-container" href="https://docs.google.com/document/d/14hz6NX0lf-BN6ATcUMg8H_GJQ0TR4xP7jh-v640zAJg/edit?usp=sharing" target="_blank">
<div class="project-box gradient-hypercubing">
<img src="images/projects/2xyz.png">
<div>
<h3>2xyz Method</h3>
<p>This method is a legit technique that technically reduces a 3x3x3 into a 2x2x2. It is not intended to be used for speedsolving or fewest moves purposes due to the fact that it has a very large average movecount.</p>
</div>
</div>
</a>
<a class="no-link-underline project-box-container" href="https://www.youtube.com/watch?v=_cyhfD_waVI" target="_blank">
<div class="project-box gradient-hypercubing">
<img src="images/projects/ECPcube.png">
<div>
<h3>ECP Method</h3>
<p>ECP is a method that was invented for Athefre's Method Development Competition January 2021 by team Kübirz (which I was a part of). It is designed to use inspection to do an intuitive step, in order to get to algorithmic steps as quickly as possible. </p>
</div>
</div>
</a>
<h2>Hypercubing</h2>
<p>In 2021, I learned about the 4-dimensional Rubik's Cube. It took me a week to solve it by following a written guide online. Since then I have held several speedsolving world records, helped create the hypercubing.xyz wiki, solved the 5D and 6D cubes, and fostered the community on the Discord server.</p>
</body>
<script>
const ctx = document.getElementById('pbChart');
const pbData = {
datasets: [
{
borderColor: '#4287f5',
backgroundColor: '#4287f5',
label: '3x3x3 PB (seconds)',
data: [
{x: '2016-09-22', y: 20.296},
{x: '2016-09-26', y: 19.889},
{x: '2016-09-28', y: 19.047},
{x: '2016-10-01', y: 15.696},
{x: '2016-11-20', y: 15.017},
{x: '2016-12-11', y: 11.485},
{x: '2018-01-10', y: 10.71},
{x: '2020-03-17', y: 9.695},
{x: '2020-03-30', y: 9.694},
{x: '2020-12-26', y: 9.548},
{x: '2021-01-05', y: 8.574},
{x: '2021-02-23', y: 8.182},
{x: '2025-07-11', y: 7.09},
]},
]
}
new Chart(ctx, {
type: 'line',
data: pbData,
options: {
stepped: "before",
// plugins: {
scales: {
y: {
ticks: {
callback: function (value) {
return csToStringAxis(value*100);
},
},
},
x: {
type: 'time',
time: {
unit: 'year'
},
max:new Date(),
},
},
// }
}
});
// takes in a number of centiseconds, and returns a formatted string
function csToString(cs) {
var d = new Date(0, 0, 0, 0, 0, 0, cs * 10);
var cs = d.getMilliseconds() / 10;
var s = d.getSeconds();
var m = d.getMinutes();
var h = d.getHours();
var label = `${h}h ${m}m ${s}.${cs}s`;
if (h == 0) {
label = `${m}m ${s}.${cs}s`;
}
if (h == 0 && m == 0) {
label = `${s}.${cs}s`;
}
return label;
}
function csToStringAxis(cs) {
var d = new Date(0, 0, 0, 0, 0, 0, cs * 10);
var cs = d.getMilliseconds() / 10;
var s = d.getSeconds();
var m = d.getMinutes();
var h = d.getHours();
var label = `${h}h ${m}m ${s}s`;
if (h == 0) {
label = `${m}m ${s}s`;
}
if (h == 0 && m == 0) {
label = `${s}s`;
}
return label;
}
</script>