I journal to let go of what weighs on me and hold close what matters. To process, to celebrate, to mourn, to remember. Each word feels like a small act of release. Why else would anyone take pen to paper?
These days, though, most of my journaling happens digitally. I still keep a physical journal for pictures and little memories, but most of my writing lives on my laptop and phone. My journaling has changed so much over the years.
My first diary wasn’t anything fancy – just a regular Five Star notebook. I took it everywhere with me. I’d draw in it, write poems, jot down what I was reading or watching, and even note any plans I had (not that there were many). I just liked remembering things. I don’t have that notebook anymore, but it would’ve been nice to look back on it now.
As a Gen Xer who grew up before the internet, pen and paper were everything. I played MASH, made cootie catchers, and passed folded notes in class. Having a notebook was a big deal – especially for a shy, awkward, introverted girl who didn’t always know how to speak up. (I still don’t know how to speak up!) That notebook was my safe space.
Then came the internet. My first online space was Blogger. I didn’t write much at first because I wasn’t sure how I felt about going digital. It felt weird – like typing words into the void. It didn’t feel as real or lasting as paper. Back then, everyone thought the internet was just a passing thing anyway.
After Blogger, I moved to LiveJournal. I still have my account! Sometimes I think about importing those old posts here, but a lot of them are pretty private – more personal than I’d want to share publicly. My LiveJournal is still set to private, and I think I’ll keep it that way.
At some point, I wanted my own website. I started learning HTML – not because I had to, but because I wanted to make my own space mine. I ended up making a few websites. One was for my firstborn – a place to share pictures and updates with family since we lived far away. I also made sites for my favorite TV shows and books. It was a fun hobby and a good way to spend time as a stay-at-home mom and military spouse.
When Kevin passed, I stopped. Life shifted completely. I was a single mom with two babies, in college, trying to keep my head above water while struggling with undiagnosed mental health issues. I didn’t have the energy or time for hobbies. I kept my LiveJournal, though, and started writing more often. I even bought new notebooks – the pretty kind – but found myself too afraid to “mess them up” by writing in them.
Then bullet journaling became a thing, and I had to try it. I loved it at first – the layouts, the creativity, the little daily notes. It reminded me of being younger and filling up lined notebooks, just with more structure. But after a while, it became hard to keep up with. Especially with a boyfriend who wanted my attention 24/7. The journal got set aside. Later, after moving to a safer place and having more freedom, I tried to start again, but the spark was gone.
During that time, I actually created the website I’m writing on now. I didn’t post right away – it just sat there for a while. But once I moved and felt safe, I started writing here. This space became my new journal. I still keep some things private, but for the most part, I’m pretty open here.
Still, I missed writing by hand. Bullet journaling wasn’t it anymore, and keeping two journals felt like too much. So I started something different – a memory journal. It’s where I keep photos, ticket stubs, and random bits of life. I use an undated Traveler’s Notebook so I can update it whenever I want, no pressure. For planning, I use a Hobonichi Weeks, which I’ve stuck with for a few years now.
I don’t know if anyone really needed to read about my journal journey today, but I didn’t have much else to write about – so I figured I’d take a little stroll down memory lane.
I have therapy today, though I’m not quite sure what I’ll talk about yet. I should probably get my laptop ready for my session.
Geez, my laptop’s only at 36%. Time to plug this thing in. At least my hub is working today. I think my charging station is on its last leg, but that’s fine since I have a new one waiting for when my desk is finished.
All of a sudden, the house has come alive – the kids are out of their rooms. Turns out there’s a Sonic run happening. Alex is heading to Walmart to grab a few things for Kel, and he and the others decided to swing by Sonic while they’re out. I was going to ask them to grab the mail, but nothing came in today. It can wait a few days – maybe until Friday.
I just finished my therapy session. We talked about Thanksgiving coming up and the stress that tends to come with it. I mentioned that I’ve started writing out a menu so I can make my shopping list. My therapist also shared that his hours are being cut, which felt a little strange for him to mention, but I digress.
He said he thinks I’ve been doing really well and suggested that it might be time to either move to monthly sessions or consider discharge. The thing is, if I go once a month, I can only do that for three months before being discharged anyway. It feels like they might be trying to free up space for new clients, especially with his reduced hours.
Still, I’m thinking I might try the once-a-month sessions for a few months and see how that feels. If I find that I need more support, I can always ask to be seen more often. It’s a little confusing since the change seems tied to his schedule, but honestly, I do feel like I’ve been doing well. I just feel confused.
Oh, and I’m almost done coding the role-playing game on FreeCodeCamp! I’m not sure what project is next. I would like to get some cybersecurity studies today.
let xp = 0;
let health = 100;
let gold = 50;
let currentWeaponIndex = 0;
let fighting;
let monsterHealth;
let inventory = ["stick"];
const button1 = document.querySelector('#button1');
const button2 = document.querySelector("#button2");
const button3 = document.querySelector("#button3");
const text = document.querySelector("#text");
const xpText = document.querySelector("#xpText");
const healthText = document.querySelector("#healthText");
const goldText = document.querySelector("#goldText");
const monsterStats = document.querySelector("#monsterStats");
const monsterName = document.querySelector("#monsterName");
const monsterHealthText = document.querySelector("#monsterHealth");
const weapons = [
{ name: 'stick', power: 5 },
{ name: 'dagger', power: 30 },
{ name: 'claw hammer', power: 50 },
{ name: 'sword', power: 100 }
];
const monsters = [
{
name: "slime",
level: 2,
health: 15
},
{
name: "fanged beast",
level: 8,
health: 60
},
{
name: "dragon",
level: 20,
health: 300
}
]
const locations = [
{
name: "town square",
"button text": ["Go to store", "Go to cave", "Fight dragon"],
"button functions": [goStore, goCave, fightDragon],
text: "You are in the town square. You see a sign that says \"Store\"."
},
{
name: "store",
"button text": ["Buy 10 health (10 gold)", "Buy weapon (30 gold)", "Go to town square"],
"button functions": [buyHealth, buyWeapon, goTown],
text: "You enter the store."
},
{
name: "cave",
"button text": ["Fight slime", "Fight fanged beast", "Go to town square"],
"button functions": [fightSlime, fightBeast, goTown],
text: "You enter the cave. You see some monsters."
},
{
name: "fight",
"button text": ["Attack", "Dodge", "Run"],
"button functions": [attack, dodge, goTown],
text: "You are fighting a monster."
},
{
name: "kill monster",
"button text": ["Go to town square", "Go to town square", "Go to town square"],
"button functions": [goTown, goTown, goTown],
text: 'The monster screams "Arg!" as it dies. You gain experience points and find gold.'
},
{
name: "lose",
"button text": ["REPLAY?", "REPLAY?", "REPLAY?"],
"button functions": [restart, restart, restart],
text: "You die. ☠"
},
{
name: "win",
"button text": ["REPLAY?", "REPLAY?", "REPLAY?"],
"button functions": [restart, restart, restart],
text: "You defeat the dragon! YOU WIN THE GAME! 🎉"
}
];
// initialize buttons
button1.onclick = goStore;
button2.onclick = goCave;
button3.onclick = fightDragon;
function update(location) {
monsterStats.style.display = "none";
button1.innerText = location["button text"][0];
button2.innerText = location["button text"][1];
button3.innerText = location["button text"][2];
button1.onclick = location["button functions"][0];
button2.onclick = location["button functions"][1];
button3.onclick = location["button functions"][2];
text.innerHTML = location.text;
}
function goTown() {
update(locations[0]);
}
function goStore() {
update(locations[1]);
}
function goCave() {
update(locations[2]);
}
function buyHealth() {
if (gold >= 10) {
gold -= 10;
health += 10;
goldText.innerText = gold;
healthText.innerText = health;
} else {
text.innerText = "You do not have enough gold to buy health.";
}
}
function buyWeapon() {
if (currentWeaponIndex < weapons.length - 1) {
if (gold >= 30) {
gold -= 30;
currentWeaponIndex++;
goldText.innerText = gold;
let newWeapon = weapons[currentWeaponIndex].name;
text.innerText = "You now have a " + newWeapon + ".";
inventory.push(newWeapon);
text.innerText += " In your inventory you have: " + inventory;
} else {
text.innerText = "You do not have enough gold to buy a weapon.";
}
} else {
text.innerText = "You already have the most powerful weapon!";
button2.innerText = "Sell weapon for 15 gold";
button2.onclick = sellWeapon;
}
}
function sellWeapon() {
if (inventory.length > 1) {
gold += 15;
goldText.innerText = gold;
let currentWeapon = inventory.shift();
text.innerText = "You sold a " + currentWeapon + ".";
text.innerText += " In your inventory you have: " + inventory;
} else {
text.innerText = "Don't sell your only weapon!";
}
}
function fightSlime() {
fighting = 0;
goFight();
}
function fightBeast() {
fighting = 1;
goFight();
}
function fightDragon() {
fighting = 2;
goFight();
}
function goFight() {
update(locations[3]);
monsterHealth = monsters[fighting].health;
monsterStats.style.display = "block";
monsterName.innerText = monsters[fighting].name;
monsterHealthText.innerText = monsterHealth;
}
function attack() {
text.innerText = "The " + monsters[fighting].name + " attacks.";
text.innerText += " You attack it with your " + weapons[currentWeaponIndex].name + ".";
health -= getMonsterAttackValue(monsters[fighting].level);
monsterHealth -= weapons[currentWeaponIndex].power + Math.floor(Math.random() * xp) + 1;
healthText.innerText = health;
monsterHealthText.innerText = monsterHealth;
if (health <= 0) {
lose();
} else if (monsterHealth <= 0) {
if (fighting === 2) {
winGame();
} else {
defeatMonster();
}
}
}