Compare commits

...

20 Commits

Author SHA1 Message Date
Cutieguwu
68263b1bad Fix rss.xml form. 2026-02-27 20:07:22 -05:00
Olivia Brooks
b8f65f2ce4 Fix copying with a lazy patch. 2026-02-27 10:49:45 -05:00
Olivia Brooks
820a1f357a Fix panel alignments, heights, and banner height. 2026-02-26 12:45:53 -05:00
Olivia Brooks
5fde9a2754 Add picoCTF profile. 2026-02-26 12:27:03 -05:00
Olivia Brooks
fba35705e9 Correct typos. 2026-02-26 12:25:01 -05:00
Cutieguwu
2f09ca4a61 Aand I still can't remember CSS it seems. This *should* actually patch
kao-banner, the CLASS, NOT element...
2026-02-25 21:38:27 -05:00
Cutieguwu
1c00979274 Learn CSS you fool. 2026-02-25 21:33:02 -05:00
Cutieguwu
2af6bd1ed7 Monkeypatch kao-banner. 2026-02-25 21:29:37 -05:00
Cutieguwu
63c3b16bda Add keepandroidopen.org warning banner. 2026-02-25 21:07:05 -05:00
Cutieguwu
a0d89676a8 Bump edit date. 2026-02-21 13:54:44 -05:00
Cutieguwu
3c7a687cab Update security.txt 2026-02-21 13:53:05 -05:00
Cutieguwu
bd67b51325 Add CyberSci; Change minor; Correct Typos 2026-02-21 13:50:00 -05:00
Cutieguwu
e0d8a71e99 Add Optical Recovery blog post. 2026-01-10 22:44:00 -05:00
Cutieguwu
415182edae Undo last; undo organization for generator as it's not in use, and the
filename didn't meet the standard for the generator anyway.
2025-12-19 01:20:57 -05:00
Cutieguwu
fb7cb1b73c Lazy temporary fix for pathing to blog posts during transition to
updated structure.
2025-12-19 01:17:40 -05:00
Cutieguwu
60cd0f9850 Remove Webcheck from nav menu. 2025-12-19 00:58:45 -05:00
Cutieguwu
81b854d32a Update blog_recent_posts.html 2025-12-19 00:57:28 -05:00
Cutieguwu
a2c7d72ecf Add blog posts 3 and 4; Update RSS feed. 2025-12-18 19:30:24 -05:00
Cutieguwu
bc66ede0e1 Update index.html 2025-10-06 19:34:26 -04:00
Cutieguwu
7d1dfd0a5f Add public key. 2025-09-27 14:20:10 -04:00
16 changed files with 545 additions and 21 deletions

View File

@@ -83,17 +83,13 @@ do
elif [ "$x" == 'copy' ] elif [ "$x" == 'copy' ]
then then
cmd='cp -R'
files=(
'src/.well-known/security.txt'
'src/feed/rss.xml'
'src/robots.txt'
)
mkdir -p target/.well-known mkdir -p target/.well-known
mkdir -p target/feed mkdir -p target/feed
cp 'src/feed/rss.xml' 'target/feed/rss.xml'
cp 'src/robots.txt' 'target/robots.txt'
cp 'src/.well-known/security.txt' 'target/.well-known/security.txt'
action=Copying... action=Copying...
elif [ "$x" == 'conv-img' ] elif [ "$x" == 'conv-img' ]

View File

@@ -0,0 +1,13 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
xjMEaNawyhYJKwYBBAHaRw8BAQdARXZA94pLJ9NqMFGi2g4mgC+JhsDccsjC5YZL
FFrXyVfNK09saXZpYSBCcm9va3MgPG9saXZpYS5hLmJyb29rczc3QGdtYWlsLmNv
bT7CiQQTFggAMRYhBNHb+MmfTznTILS7fUanaquYTswnBQJo1rDKAhsDBAsJCAcF
FQgJCgsFFgIDAQAACgkQRqdqq5hOzCdoOQEAwF3dlYsoaiAKuD1xv2R45QAWobHG
hI41JuUnAGPHWh4BAPilFDXQv3PbYOIS/fVqrNVZI9ZPbNpT0ZlQeLCFm48AzjgE
aNawyxIKKwYBBAGXVQEFAQEHQPMiRn06nv5gWZNYHjtKmshLWKlcnwOcOH1WRWE7
VREvAwEIB8J4BBgWCAAgFiEE0dv4yZ9POdMgtLt9Rqdqq5hOzCcFAmjWsMsCGwwA
CgkQRqdqq5hOzCfc9wD5AV4m9zFPoipKQNfZpll62bdI9zdtAT3QYS5XzwGCz1EA
/1Km4cYgieqk10A7X1Zpz2tP5miNyaAW48D5QiWd7GUD
=jPqw
-----END PGP PUBLIC KEY BLOCK-----

View File

@@ -1,4 +1,5 @@
Contact: mailto:olivia.a.brooks77@gmail.com Contact: mailto:olivia.a.brooks77@gmail.com
Expires: 2026-06-01T04:00:00.000Z Encryption: https://www.cutieguwu.ca/.well-known/public.asc
Acknowledgments: https://www.cutieguwu.ca/acknowledgements.html Acknowledgments: https://www.cutieguwu.ca/acknowledgements.html
Preferred-Languages: en, fr Preferred-Languages: en, fr
Expires: 2027-01-01T04:00:00.000Z

View File

@@ -53,7 +53,7 @@
teachers certainly made sure of that, and ultimately helped lead me down a teachers certainly made sure of that, and ultimately helped lead me down a
path of being the teacher's pet. Maybe I'll talk about my experiences and path of being the teacher's pet. Maybe I'll talk about my experiences and
struggles related to that another time, but the short of it is that I am a struggles related to that another time, but the short of it is that I am a
high-acheiving workaholic as a result. My ex-boyfriend on the other hand, high-achieving workaholic as a result. My ex-boyfriend on the other hand,
didn't have that kind of an experience, and ultimately was led down the didn't have that kind of an experience, and ultimately was led down the
college-level course stream in high school. college-level course stream in high school.
</p> </p>

View File

@@ -63,7 +63,7 @@
display to prove it. It also has some added benefits, like the hardware display to prove it. It also has some added benefits, like the hardware
switches for the camera and mic, overall modular design, repairability, and switches for the camera and mic, overall modular design, repairability, and
the upgrade paths, which save her from spending more money to buy a full the upgrade paths, which save her from spending more money to buy a full
tower or another laptop. Framework recently annouced the new generation tower or another laptop. Framework recently announced the new generation
boards for the FW 16, and knocked down the price of the 7040 series boards boards for the FW 16, and knocked down the price of the 7040 series boards
slightly, but that's a nice-to-have. Even if you're a non-techie, you won't slightly, but that's a nice-to-have. Even if you're a non-techie, you won't
need to get into the hardware unless you're building it or repairing need to get into the hardware unless you're building it or repairing

View File

@@ -0,0 +1,142 @@
<!doctype html>
<html lang="en-ca">
<head>
<title>Closing Chapters | Cutieguwu</title>
<include src="includes/meta.html" />
</head>
<body>
<nav class="pane">
<include src="includes/nav_header.html" />
<include src="includes/nav_menu.html" />
<div class="location">
<header><h4>You are here:</h4></header>
<h5 class="page">Blog - Closing Chapters</h5>
</div>
<include src="includes/nav_quick_links.html" />
</nav>
<main class="pane blog">
<div class="body">
<header>
<h1 class="title">Closing Chapters</h1>
<p class="date">Posted: 18 December, 2025</p>
<p class="date">Last Edited: 18 December, 2025</p>
</header>
<div class="body">
<p>
I'm not sure why I'm suddenly writing another blog post. Particularly when I
still have an exam to do, for which I need to read two chapters of the
textbook.
</p>
<p>
Perhaps it's because I've just come out of a counselling session, and once
again, find something I need to talk about <em>after</em> it's finished.
</p>
<p>
Perhaps it's because I feel a need to prove to myself that I'm still a good
writer, even if I barely pass my Creative Writing course...
</p>
<p>
Maybe it's because I'm just generally tired but I've been awake long enough
that I've progressed into my first period of creative brain waves. Yes,
apparently that's a thing.
</p>
<p>
Anyway, this post's idea stems from the sentiments I've been experiencing
since graduating high school.
</p>
<p>
I feel like I keep wanting to run back to my childhood, as awful as it was
in many respects. It's not just my overwhelming fear of death, and general
existential dread, it's my nostalgia.
</p>
<p>
Yesterday, I went to see my old high school band and jazz band perform their
annual Holiday Concert. It was great getting to see my old buddies, have a
couple laughs while berating the Audio-Visual equipment team for their awful
cable management in the few months that I've been gone now.
</p>
<p>
But, as I listened to them play the biggest set list the band has done since
the pandemic, I found myself melancholy. I wanted to be back with them,
playing in the pink lighting, learning solos that I couldn't as a result of
COVID, setting up equipment, taping cables down to comply with safety
policies, digging into the hows and whys of DMX-512, managing my old tech
team, shooting the shit.
</p>
<p>I can't really do that now.</p>
<p>
Picking up the hobbies again, joining a music group on Campus, finding an
A/V equipment team to join... it just wouldn't be the same.
</p>
<p>
I have more demanding courses to come, and I just don't have the time
anymore. I, like many others, already treat the Carleton Cybersecurity Club
as an extra course.
</p>
<p>The workshops; our lectures.</p>
<p>The weekly challenges; our quizzes and textbook readings.</p>
<p>The competitions; our midterms.</p>
<p>
After my showing in the past semester alone, it's likely that I'll take on
running a couple workshops in the future.
</p>
<p>
I can keep going back to the band's events, and catch up with old profs
during reading week, but for how long?
</p>
<p>
How long until everyone has moved on? How long until all the staff rotate,
and nothing but the U-shape of the building remains?
</p>
<p>
Even if I step back and question why, why am I so attached to these
memories, I don't know.
</p>
<p>
I know a lot of people who, like myself, left this school having experienced
the absolute worst periods of their life.
</p>
<p>They never went back. Not for anything.</p>
<p>
But I'm practically desperate to return, to jump back in time to grade 9 and
fuck everything up again, run through depression, experience the worst days
of my dysphoria, and tolerate every bitch and asshole who decided to spend
their time splinkling on a bit more shit all the while.
</p>
<p>
I've run out of things to say at this point. I wish this was better
structured than just a brain dump, but I'm too tired and emotional to work
on it further.
</p>
<p>
So, with the loss of my non-existent PG-13 rating, I shall conclude this
post, and begin [hopefully] immediately on another post that will outline
what I hope to do over the winter break, and what posts I hope to have lined
up.
</p>
<p>
So, to my only reader, stay tuned! I want to get out of the doom and gloom
real soon.
</p>
<hr />
<p>
OKAY, so, as per usual, I know a guy, FOR EVERYTHING. He's directed me
towards contacting another guy on campus who works with A/V stuff. So, maybe
I can find a way to keep that chapter open, despite everything else I have
going on these days. It also seems that there might be a way to take an
elective course that looks into A/V equipment. I will have to hunt around
and see if I can fit that into my program
</p>
</div>
</div>
<include src="includes/tailer.html" />
</main>
<div class="pane spacer">
<include src="./includes/blog_recent_posts.html" />
<div class="spacer_container"><p>#AD</p></div>
</div>
<include src="includes/footer.html" />
<include src="includes/scripts.html" />
</body>
</html>

View File

@@ -0,0 +1,149 @@
<!doctype html>
<html lang="en-ca">
<head>
<title>Pointless Plans | Cutieguwu</title>
<include src="includes/meta.html" />
</head>
<body>
<nav class="pane">
<include src="includes/nav_header.html" />
<include src="includes/nav_menu.html" />
<div class="location">
<header><h4>You are here:</h4></header>
<h5 class="page">Blog - Pointless Plans</h5>
</div>
<include src="includes/nav_quick_links.html" />
</nav>
<main class="pane blog">
<div class="body">
<header>
<h1 class="title">Pointless Plans</h1>
<p class="date">Posted: 18 December, 2025</p>
<p class="date">Last Edited: 18 December, 2025</p>
</header>
<div class="body">
<p>
So... remember my first post where I said that "a meaningless 'Welcome to my
Blog' filled with my hopes and aspirations that inevitably would never come
to light was something I knew I didn't want." Well...
</p>
<p>
I've been stuck in a doom and gloom phase here, and with me hopefully
concluding my counselling soon, I definitely don't want to dwell in it.
</p>
<p>
As a result, I'm making a little list of things that I'd love to write
about, and that you can hopefully expect to read about sometime soon!
</p>
<ul>
<li>
<p>CyberSci</p>
<ul>
<li>
I had the fortune to participate at the Regional level,
representing Carleton University. (Spoiler: We won, barely)
</li>
<li>
This will probably have a follow up once Nationals happens in
the summer.
</li>
</ul>
</li>
<li>
<p>Creative Writing Work</p>
<ul>
<li>
I've written some good things and some really bad things for the
Creative Writing course this term. Obviously, I'll only publish
works that I believe are well polished.
</li>
</ul>
</li>
<li>
<p>Poetry</p>
<ul>
<li>
I want to get back to writing poetry, but for now I have some
things that are still unpublished.
</li>
<li>
They're nothing like Building Up, so if you can't read [bad]
Rust, don't worry. They're also far less whacky than Falling
Down.
</li>
<li>
<a
href="https://gitea.cutieguwu.ca/cutieguwu/falling_down_building_up"
>Falling Down & Building Up</a
>
</li>
</ul>
</li>
</ul>
<p>
Also, I've come to realise that I have a thing for memoirs. I never actually
realised it because I usually read book series, but I now have four memoirs
in my library.
</p>
<ol>
<li>
<em>Fatty Legs</em> by Christy Jordan-Fenton and Margaret Pokiak-Fenton
</li>
<li>its sequel, <em>A Stranger At Home</em></li>
<li><em>The Glass Castle</em> by Jeannette Walls</li>
<li><em>Tomboy Survival Guide</em> by Ivan Coyote</li>
</ol>
<p>
So, after a creative non-fiction flash writing assignment just didn't work
out well, even after reworking it heavily for the exam, I decided that I
should actually take it in the direction of a full memoir, rather than the
poetic form that it currently has.
</p>
<p>
The problem is that I mean, a <em>full</em> memoir. And the problem with
that is that memory is a complex thing. Many important and relevant things
for a memoir are episodic, iconic, flashbulb memories, which can be
difficult to just retrieve on the spot. (Yes, I referenced my textbook, no I
am not a credible source for interpreting this information.)
</p>
<p>
A lot of the time, my writing, particularly my poetry, comes from what can
best be described as state-dependent memory. If I'm lucky, some random
stimulus or set of stimuli will trigger a recollection of these memories,
and give me an image from which to write. The problem is that this also
means I cannot write sequentially.
</p>
<p>
And just to make things even more difficult, memory is unreliable and easily
influenced. So I need to review and consider how much I trust my own
recollection of events, and work to mitigate my biases whenever possible by
asking someone else to recount the event and compare details.
</p>
<p>
So, in the background, I'm going to start working on that. Almost like
forgetting to write in a diary for a week, then trying to catch up while you
still remember.
</p>
<p>
Hopefully this will have the added benefit of holding back some of the
future doom and gloom from the blog.
</p>
<p>
And finally, I'm going to try to finish up my blog generator,
<a href="https://gitea.cutieguwu.ca/cutieguwu/cutinews">cutinews</a>. It's
about time I got back and actually finished a programming project. Chances
are that I'll be live on Twitch (yes, eww, ik) working on the code.
</p>
</div>
</div>
<include src="includes/tailer.html" />
</main>
<div class="pane spacer">
<include src="./includes/blog_recent_posts.html" />
<div class="spacer_container"><p>#AD</p></div>
</div>
<include src="includes/footer.html" />
<include src="includes/scripts.html" />
</body>
</html>

View File

@@ -0,0 +1,144 @@
<!doctype html>
<html lang="en-ca">
<head>
<title>Optical Recovery | Cutieguwu</title>
<include src="includes/meta.html" />
</head>
<body>
<nav class="pane">
<include src="includes/nav_header.html" />
<include src="includes/nav_menu.html" />
<div class="location">
<header><h4>You are here:</h4></header>
<h5 class="page">Blog - Optical Recovery</h5>
</div>
<include src="includes/nav_quick_links.html" />
</nav>
<main class="pane blog">
<div class="body">
<header>
<h1 class="title">Optical Recovery</h1>
<p class="date">Posted: 10 January, 2026</p>
<p class="date">Last Edited: 10 January, 2026</p>
</header>
<div class="body">
<p>
Data preservation is increasingly threatened in the digital age. That almost
sounds backwards, until you dig into modern architecture.
</p>
<p>
Once upon a time, the greatest threat to information preservation was nature
and memory retrieval errors. The digital age introduced denser,
longer-lasting forms of data storage. As we progressed from punch card, to
tape, to 8 inch floppies, to flash and optical, and ever denser forms of
all, we got better at preventing data loss. Quality control, error
correction techniques bundled with file systems, and redundancy (parity) in
storage virtualizations, like RAID.
</p>
<p>
But in the modern age, the Enshittocene<sup>1</sup>, some would call it,
consumers are ever strongarmed into corporate-controlled cloud storage. With
that, comes a lack of ownership.
</p>
<p>
Now, normally that's the lead-up to advocating for homelabbing, FOSS, and
de-Googling. However, in this instance, it's the lead up to optical media
preservation. Why? Because optical media remains a great storage medium
today. Even if you don't believe that, many old games in their original
form, or other preserved media, are still only available on discs.
</p>
<p>
However, discs are subject to natural degradation through scratches,
delamination, and disc rot. Especially as the quality control on these discs
dwindles. Thus, there must be additional work put into caring for this
medium.
</p>
<p>
RAID arrays are great as alternatives too, as they already have parity,
ddrescue, and error-correcting filesystems available. The problem is that
the arrays themselves are not. At least not right now. Once again, partly
thanks to AI datacentres demanding obscene amounts of resources, the cost of
hard drives has gone up significantly since the pandemic.
</p>
<p>
With that, we segue into my latest project, temporarily named
<em>Kramer</em>. I know I did some research to come up with that name, but I
genuinely don't recall who it was in reference to. In fact, having tried
tracking down who it's in reference to, I may have messed up when I picked
the name. My best guess is that it's in reference to Kane Kramer, but he
helped design the Digital Audio Player, not optical media.
</p>
<p>
Regardless, it's always been a working name while I figure out if I can
finish the project.
</p>
<p>So, what is Kramer?</p>
<p>
Kramer is a recovery utility. Conceptually, it's meant to be akin to
ddrescue<sup>2</sup>, but optimized for recovering data from optical media.
</p>
<p>
There are two main problems I've experienced while trying to use ddrescue
with optical drives, and both stem from the drive's firmware. Now, I don't
know if me using the <code>--reset-slow</code> flag is contributing to these
issues or not, but I experience more problems without it.
</p>
<p>
If you've ever tried working with optical media in Linux, you may be
familiar with <em>The Sleep Bug</em>. Normally, this is when a drive's
firmware decides to sleep after two minutes, and never wakes. In the case of
ddrescue, I've noticed that the drive often sleeps after read errors. When
this happens, I can't kill ddrescue, and it just hangs. Even if I forcefully
disconnect the drive, it just hangs, awaiting a response from the block
device.
</p>
<p>
For the record, Kramer still has this issue. I've only recently gotten
mapping working alongside directIO to get around the Linux kernel's read
poisoning.
</p>
<p>
Keep in mind that I know very little C, and I don't play this low in the
system much yet. So, I don't know why, but without the
<code>O_DIRECT</code> flag to bypass the kernel's buffer (and whatever else
directIO technically bypasses), after a single IO error, the kernel will
refuse to return anything but that same IO error until the parent process is
restarted. I tried doing the C calls directly through FFI, since poisoning
is something that Rust employs in some places for safety. That didn't work,
so I tried spawning a child process to execute the read, but that also
didn't work. Thankfully, I know a guy, and with his help I was able to track
down not only how to implement directIO, but also without using FFI to call
<code>posix_memalign</code>.
</p>
<p>
Back on track, the other issue is the spin-down. As ddrescue reads smaller
clusters and/or starts hitting a particularly poor section of the disc, some
drives' firmware is too quick to spin down, causing the spindle to
constantly speed up and slow down, increasing wear.
</p>
<hr />
<ol>
<li>
I would recommend reading <em>Enshittification</em> by Cory Doctorow.
</li>
<li>
As I'm writing Kramer in Rust, I also have to stress the point that this
project is not intended as a ddrescue rewrite in rust, for the sake of a
rewrite in rust. I'm not trying to clone or replace ddrescue. Kramer has
a different target, and ddrescue is a resource for me to learn from and
use as a guide while I dig deeper into the system than I ever have.
</li>
</ol>
</div>
</div>
<include src="includes/tailer.html" />
</main>
<div class="pane spacer">
<include src="./includes/blog_recent_posts.html" />
<div class="spacer_container"><p>#AD</p></div>
</div>
<include src="includes/footer.html" />
<include src="includes/scripts.html" />
</body>
</html>

View File

@@ -9,6 +9,38 @@
</description> </description>
<language>en-ca</language> <language>en-ca</language>
<category>Technology/IT/Life/Mental Health/Health</category> <category>Technology/IT/Life/Mental Health/Health</category>
<item>
<title>Optical Recovery</title>
<pubDate>10 January, 2026</pubDate>
<link>https://www.cutieguwu.ca/blog/posts/5_optical_recovery.html</link>
<description>
Introducing my optical media recovery utility, and some challenges in development.
</description>
<category>Coding</category>
<category>Programming</category>
<category>Optical Media</category>
<category>Rust</category>
</item>
<item>
<title>Pointless Plans</title>
<pubDate>18 December, 2025</pubDate>
<link>https://www.cutieguwu.ca/blog/posts/4_pointless_plans.html</link>
<description>Winter Break plans</description>
<category>Life</category>
<category>Mental Health</category>
<category>Health</category>
</item>
<item>
<title>Closing Chapters</title>
<pubDate>18 December, 2025</pubDate>
<link>https://www.cutieguwu.ca/blog/posts/3_closing_chapters.html</link>
<description>
Things go, and others come in. Sometimes, we don't want to move forward, but we must.
</description>
<category>Life</category>
<category>Mental Health</category>
<category>Health</category>
</item>
<item> <item>
<title>Buyer's Anxiety</title> <title>Buyer's Anxiety</title>
<pubDate>11 September, 2025</pubDate> <pubDate>11 September, 2025</pubDate>

View File

@@ -23,3 +23,6 @@
<a class="title" href="https://pronoms.fr/@Cutieguwu">French</a> <a class="title" href="https://pronoms.fr/@Cutieguwu">French</a>
</div> </div>
</li> </li>
<!-- Public Facing Webcheck -->
<li><a class="title" href="https://webcheck.cutieguwu.ca">Web Check</a></li>

View File

@@ -1,6 +1,33 @@
<div class="spacer_container blog_recent_posts"> <div class="spacer_container blog_recent_posts">
<h2>Recent Posts</h2> <h2>Recent Posts</h2>
<div class="section_list"> <div class="section_list">
<section>
<header>
<div>
<h3 class="name">Optical Recovery</h3>
<span class="subtitle">10 January, 2026</span>
</div>
<a href="/blog/posts/5_optical_recovery.html" class="status">View</a>
</header>
</section>
<section>
<header>
<div>
<h3 class="name">Pointless Plans</h3>
<span class="subtitle">18 December, 2025</span>
</div>
<a href="/blog/posts/4_pointless_plans.html" class="status">View</a>
</header>
</section>
<section>
<header>
<div>
<h3 class="name">Closing Chapters</h3>
<span class="subtitle">18 December, 2025</span>
</div>
<a href="/blog/posts/3_closing_chapters.html" class="status">View</a>
</header>
</section>
<section> <section>
<header> <header>
<div> <div>

View File

@@ -25,6 +25,7 @@
</label> </label>
<ul> <ul>
<li><a class="title" href="https://github.com/Cutieguwu">Github (Mirror)</a></li> <li><a class="title" href="https://github.com/Cutieguwu">Github (Mirror)</a></li>
<li><a class="title" href="https://play.picoctf.org/users/cutieguwu">picoCTF</a></li>
<li><a class="title" href="https://www.twitch.tv/cutieguwu">Twitch</a></li> <li><a class="title" href="https://www.twitch.tv/cutieguwu">Twitch</a></li>
<li><a class="title" href="https://www.youtube.com/@Cutieguwu">YouTube</a></li> <li><a class="title" href="https://www.youtube.com/@Cutieguwu">YouTube</a></li>
</ul> </ul>
@@ -41,7 +42,6 @@
</label> </label>
<ul> <ul>
<li><a class="title" href="https://cyberchef.cutieguwu.ca">CyberChef</a></li> <li><a class="title" href="https://cyberchef.cutieguwu.ca">CyberChef</a></li>
<li><a class="title" href="https://webcheck.cutieguwu.ca">Web Check</a></li>
</ul> </ul>
</li> </li>

View File

@@ -1,2 +1,3 @@
<script type="module" src="https://unpkg.com/ionicons@7.1.0/dist/ionicons/ionicons.esm.js"></script> <script type="module" src="https://unpkg.com/ionicons@7.1.0/dist/ionicons/ionicons.esm.js"></script>
<script nomodule src="https://unpkg.com/ionicons@7.1.0/dist/ionicons/ionicons.js"></script> <script nomodule src="https://unpkg.com/ionicons@7.1.0/dist/ionicons/ionicons.js"></script>
<script src="https://keepandroidopen.org/banner.js"></script>

View File

@@ -22,6 +22,7 @@
<p class="date">Last Edited: 03 August, 2025</p> <p class="date">Last Edited: 03 August, 2025</p>
</header> </header>
<div class="body"> <div class="body">
<p>People, this is under development. Live with the lorem ipsum.</p>
<p>lorem ipsum idk what else there is in this latin phrase</p> <p>lorem ipsum idk what else there is in this latin phrase</p>
<p> <p>
Lorem ipsum dolor sit amet consectetur adipiscing elit. Quisque faucibus ex Lorem ipsum dolor sit amet consectetur adipiscing elit. Quisque faucibus ex

View File

@@ -72,9 +72,14 @@
body { body {
display: grid; display: grid;
background-color: var(--background-0); background-color: var(--background-0);
grid-template-rows: min-content auto;
// Adds a margin otherwise for some reason. // Adds a margin otherwise for some reason.
margin: 0; margin: 0;
.kao-banner {
grid-area: banner;
}
} }
* { * {
@@ -111,7 +116,7 @@ a {
body { body {
grid-template-columns: none; grid-template-columns: none;
grid-template-areas: "nav" "main" "spacer"; grid-template-areas: "banner" "nav" "main" "spacer";
// Compress spacings to maximize useable area. // Compress spacings to maximize useable area.
// padding: var(--spacing-small); // padding: var(--spacing-small);
@@ -131,7 +136,7 @@ a {
@media (min-width: 601px) and (max-width: 1023px) { @media (min-width: 601px) and (max-width: 1023px) {
body { body {
grid-template-columns: min-content 1fr; grid-template-columns: min-content 1fr;
grid-template-areas: "nav main" "spacer main"; grid-template-areas: "banner banner" "nav main" "spacer main";
} }
} }
@@ -139,6 +144,6 @@ a {
@media (min-width: 1024px) { @media (min-width: 1024px) {
body { body {
grid-template-columns: min-content 1fr min-content; grid-template-columns: min-content 1fr min-content;
grid-template-areas: "nav main spacer"; grid-template-areas: "banner banner banner" "nav main spacer";
} }
} }

View File

@@ -20,14 +20,14 @@
<div class="body"> <div class="body">
<header> <header>
<h1 class="title">Olivia Brooks</h1> <h1 class="title">Olivia Brooks</h1>
<p class="date">Last Edited: 08 August, 2025</p> <p class="date">Last Edited: 21 February, 2026</p>
</header> </header>
<div class="body"> <div class="body">
<div class="about_me"> <div class="about_me">
<p> <p>
Hello, I'm Olivia Brooks. I am a passionate, hard-working, and Hello, I'm Olivia Brooks. I am a passionate, hard-working, and
dependable individual with an inate interest in sharing and expanding my dependable individual with an innate interest in sharing and expanding
knowledge and expertise. my knowledge and expertise.
</p> </p>
<p> <p>
For the better part of a decade, I've specced, built, identified and For the better part of a decade, I've specced, built, identified and
@@ -87,7 +87,7 @@
weather patterns. weather patterns.
</li> </li>
<li>Additionally handled equipment maintenance.</li> <li>Additionally handled equipment maintenance.</li>
<li>Acted as administrative liason.</li> <li>Acted as administrative liaison.</li>
</ul> </ul>
</div> </div>
</section> </section>
@@ -151,7 +151,7 @@
<p>Bachelor of Arts (Honours)</p> <p>Bachelor of Arts (Honours)</p>
<ul> <ul>
<li>Major in Psychology</li> <li>Major in Psychology</li>
<li>[Intended] Minor in Women's and Gender Studies</li> <li>[Intended] Minor in Computer Science</li>
<li>Concentration in Social/Personality Psychology</li> <li>Concentration in Social/Personality Psychology</li>
</ul> </ul>
</div> </div>
@@ -227,6 +227,16 @@
<h3 class="status">x2</h3> <h3 class="status">x2</h3>
</header> </header>
</section> </section>
<section>
<header>
<div>
<h3 class="name">CyberSci Regional Winner</h3>
<span class="subtitle"
>The Off-By-Ones - Ottawa, 2025</span
>
</div>
</header>
</section>
<h3 class="early_history"> <h3 class="early_history">
Queries about other awards available by request. Queries about other awards available by request.
</h3> </h3>
@@ -460,7 +470,7 @@
<header> <header>
<div> <div>
<h3 class="name"> <h3 class="name">
<a href="mailto:olivia.a.brooks77@gmail.com"> Email </a> <a href="mailto:olivia.a.brooks77@gmail.com">Email</a>
</h3> </h3>
<span class="subtitle">olivia.a.brooks77@gmail.com</span> <span class="subtitle">olivia.a.brooks77@gmail.com</span>
</div> </div>