Your AI Code Companion is Your Worst Practices on Steroids

08/19/25

It's pretty clear, even to the average consumer who doesn't write code, that the world of AI has changed software development in a way few people could have predicted. I think every software developer at some point within the last 4 months has been asked if they are afraid for the future of their career.

Don't you know AI is going to take over your job?

-Some rando, probably

When I first downloaded Cursor, the most useful part was the tab completions, which at the time felt like a significant productivity boost. Since then, tools like Claude Code have come around and completely changed the way I go about development.

Read more →

Reflecting on Indiana

08/03/25

Would you believe it's been nearly a year since moving to Bloomington? I can barely believe it. I feel like a lot has happened in the past year, more than other years that have passed.

I think when you struggle with depression and anxiety, it can be really easy to sort of write off your experience and let your brain convince you that you don't really accomplish all that much. I'd like to stop letting my brain make me think that.

My New Backyard

Read more →

When Best Laid Plans Fall Apart

01/12/25

Do you ever wonder why you want to do things, but just end up stuck? Why you have this desire to be creative, and to do difficult and cool things and never follow through? Or is that just me?

This past year (2024) I spent the first 7 months writing about what I was doing, and actively working on my health, fitness, and learning goals. Then August rolled around, I moved, my mom had a health scare, and I couldn't seem to get myself back on track.

I often wonder about what makes some people's habits and will-power more resilient. Why is it, that when they get hit with road blocks, they jump at the next opportunity to get back on track, but my brain tells me it's pointless? That I'll just fall off again?

Using Private Packages in Expo

11/12/24

Don’t waste four hours like I did 😭. If you're using a private package off of an NPM paid account, you need to specify the registry value in your .npmrc. The generated one won't work.

//registry.npmjs.org/:_authToken=${NPM_TOKEN}
registry=https://registry.npmjs.org/

The more ya know.

2024 Volume 10

10/29/24

Well, it’s been a few months now, hasn’t it? The past few have been nothing short of utterly chaotic.

At the beginning of August, my mom ended up in the hospital for eight days and was susequently diagnosed with Myasthenia Gravis, a rare autoimmune disorder where your body attacks your muscles at the point that they recieve nerve impulses.

She had a myasthenic crisis, which had landed her in the hopsital. It was utterly terrifying, but she is doing better now. Needless to say, it’s been a wild few months and I fell way behind.

Read more →

Another Chapter in the Books

07/21/24

Last Friday I moved out of my apartment in D.C. I have known I was moving since last March, so it shouldn't have come as a shock, but still, I find myself caught off guard by the things that I've been feeling since then.

If you know me, you know that I am an introvert. I spend a lot of my time doing things alone. And for the most part, I like it that way. I walk my dog, listen to audiobooks, read, watch TV, or write code. But the thing is, it didn't used to be this way.

Growing up, I was heavily involved in team sports. If you've read some of my monthly rewind posts, you can probably tell that I still love soccer, and carve out time to watch it (on a minimum) every weekend. This part of my life was almost forced social interaction. It was draining, but I loved the soccer aspect so much that it was draining in a good way. I played literally from age five, up until my sophomore year of college when I was permanently sidelined by ankle problems.

Read more →

2024 Volume 6

07/01/24

Notable

Rhode Island. For the end of May/beginning of June, I was in Rhode Island. I went on a few hikes, and started teaching Moose how to hang out on a paddle board. I had a great time!

Read more →

I'm burnt out

06/19/24

I am burnt out.

Admittedly, I am happy. I am spending more time outside, I am working out consistently, I have been reading more books, and I am doing all the things that science says a functional human should do.

But here’s the kicker -- I’m bored.

Read more →

2024 Volume 5

06/10/24

This is so very delayed and for that I am sorry! I was traveling again at the very end of the month and it completely slipped my mind.

So here I present May, a sports filled month of sports.

Notable

Read more →

2024 Volume 4

05/02/24

And with that, April is all wrapped up. A busy month for sure, but with our upcoming move, it's bound to be even more busy up until that point.

Notable

A (99% Total) Eclipse of the Heart. Andrea and I went to my family's house in Ohio to view the eclipse. We got a sick view, and even sicker glasses. Space is cool as shit.

Read more →

An Iterative Habit Experiment (Building Consistency with ADHD)

04/14/24

The experiment below is based on tips and tricks that have worked for my flavor of ADHD. I am not a medical professional, so take all of these with a grain of salt.

Let me start this off by saying that I am not formally diagnosed with ADHD. I’ve had symptoms all my life, and my Dad and brother have both been formally diagnosed and medicated for it. I was your typical presentation in girls, so my parents had a hard time recognizing that I had it too. I have given myself a self-diagnosis.

High school was easy. I put little to no effort into my school work, finished homework while in class and made it out with all A’s and high honors. College was a completely different story. I struggled because I never learned how to study. I found myself completely distracted in large lecture halls, unable to focus on the task at hand. I went through bouts of depression and anxiety over trying to maintain the same level of success that my classmates seemed to achieve with the same amount of effort.

Read more →

2024 Volume 3

04/01/24

March utterly flew by and honestly I feel like I haven’t had a second to catch my breath. I had a lot going on, so we will jump right to it.

College Road Trip

My partner and I started the month by going on a mini Midwest college tour. She applied to grad school in Psychology this cycle, and got into a few schools. We toured all them but ultimately, Indiana University was the best fit for our little family.

Read more →

Thinking about the TikTok Ban

03/19/24

For those who may live on under a rock, the US House of Reps voted overwhelmingly in favor of a bill last week that would require the parent company of TikTok, ByteDance, to sell the company or face a ban in the United States.

As a regular user of the app and someone skeptical of large organizations with access to extreme amounts of user data, I have mixed feelings on this.

I was born in the late 90’s. I got to watch the after effects of the dot-com boom, and the explosion of the internet played a key role in my childhood. I got a Facebook account way too early because I wanted to play FarmVille with my Mom. In 6th grade I got a Snapchat, and made videos on Youtube before I understood that the internet is forever.

Read more →

My Habits Don't Stick

03/12/24

I am in a constant battle with my brain to do the bare minimum. Brush my teeth? Battle. Shower? Battle. Exercise? Battle. Make lunch? Battle.

My existence as a person with ADHD isn’t inherently harder than those without. It’s just a different kind of struggle.

For instance, you sit me in front of broken code and I will debug and optimize for hours on end. I’ll forget to eat, drink, do anything other than the thing I am hyper focused on. But ask me to do the laundry within a reasonable timeframe? Not going to happen.

Read more →

2024 Volume 2

03/08/24

I'm beginning a part of my life where I am about to be very busy for the next upcoming months. My long time partner has been accepted to a Ph.D. program, and I am beyond excited for her.

However, that meant we spent the end of February and beginning of March traveling around the midwest visiting schools. Thus, I've been unable to get out this update. So anyways, here it is. Better late than never!

Video Games

Read more →

Hosting a RSS Feed on your Next.Js Blog

02/26/24

If you read my article about my reasons for moving my site[^1], you know that one of the habits I am trying to create for 2024 is to create more and consume less. One of the actions I’ve taken is subscribing to RSS feeds that I care about, instead of mindlessly scrolling news feeds on twitter, Apple News, etc.

I haven’t missed that habit, and it really has limited the amount of stupid things that I find myself sucked into reading.

When I try to build habits that revolve around _not doing certain things_, the best way to deter those actions is to build friction around it. Using an RSS reader has been some of the friction I’ve introduced.

Read more →

2024 Volume 1

02/01/24

In an effort to keep my new writing and creating habit going, I am going to attempt to do a ‘wrap up’ at the end of the each month. Without further ado, here is what happened in January.

Moved Websites

In case you’ve not seen, I’ve moved from my previous domain, emmacampbell.dev (opens in new tab), to this new domain spooky.blog (opens in new tab). With moving, I have

Read more →

I Think Resolutions Are Dumb

01/24/24

At the beginning of January I decided to hell with resolutions. Many people will look at that statement and think something along the lines of “What? Why?”, so here is what I am thinking.

Many people hit January 1st and decide that they are going to change everything about their lives. And most of those many people will fail. There’s a couple reasons that I can think of to explain that.

The first is that it simply isn’t sustainable in the long term. You’ll start of doing everything right, but after a few days you’re going to burn out. There’s a lot of reasons as to why this is. If you’re anything like me, it probably has to do with your will power. It will wax and wane over time.

Read more →

Book Tracking with Literal.Club

01/15/24

Everyone and their mothers always makes a goal to read more books at the start of every given year. Last year, I read more than I hoped, but on the previous version of my site had a tracker that was pretty tedious to use.

I want to display my book reading superiority so that everyone can see (a not-so-humble brag, if you will).

In the past I’ve used Goodreads to track all of my books. However, Goodreads deprecated their developer program a while back so if you don’t have an existing token you’re shit out of luck.

Read more →

In 2024...I'm Moving?

01/12/24

This website is moving! Please visit spooklore.com (opens in new tab) to find me again :)

Why?

Like all web developers I have a plethora of owned domains saved for a rainy day. One of those domains -- spooklore.com has really spoken to me.

Read more →

Managing Imposter Syndrome

05/30/23

I was recently promoted at [Hugo Health](https://hugo.health (opens in new tab)) from Software Engineer I (the equivalent of a junior-level position at the company) to Software Engineer II. Being a part of a small startup has allowed me to grow and become more knowledgable

quicker than I could have ever imagined, but the days of imposter syndrome still loom and it's honestly difficult to

overcome the feeling that you do not have the knowledge needed to tackle the problems presented to you. I find myself

Read more →

Using Azure Functions to Create a Changeset Bot

01/16/23

In my time at Hugo Health (opens in new tab), when I am not working on data operations and scaling, I have been helping to facilitate a major refactor of our systems. A huge part of this is the way that we manage our packages.

Admittedly, the way we used to do things was a bit of a mess. Most everyone there would probably agree with that sentiment. So, we decided to change things up. We had a few things we wanted to accomplish with these changes.

  1. We wanted human readable descriptions of the changes made to each project, but we didn't want too add to much extra effort into commiting these changes.
  2. We wanted to add Semantic Versioning (opens in new tab). Semantic Versioning allows you to know at a glance what sort of changes the update contains.
    1. Patch - Backwards compatible bug fix
    2. Minor - Backwards compatible functionality
    3. Major - Incompatible changes
Read more →

Adding Reading Time to an Article

12/17/22

If you've ever viewed an article on Medium, you'll notice that the preview gives an estimated "read time". This feature is easily to implement using the reading-time node package and our existing contentlayer configuration. Begin by installing reading-time.

yarn add reading-time

We will add reading time by adding a new computed field to our post model and defining the type for ReadingTime.

Read more →

Adding Metrics to a Next.js Blog Post using Planetscale and Prisma

12/09/22

April 14, 2024: Please be advised that since writing this, Planetscale has shut down its hobby tier 😭

Adding metrics to a post is both a fun coding challenge as well as a nice to have. We are going to utilize a PlanetScale (opens in new tab) database, which has a generous "Hobby" plan. This plan includes

  • 5 GB of storage
  • 1 billion row reads per month
  • 10 million row writes per month
  • 1 production branch
  • 1 development branch
Read more →

21st Century Cures, HL7® FHIR, and What it Means to Patients

11/24/22

I originally published this article on Kindred (opens in new tab), my companies health network. I've taken a lot of the "how", and added some of my own personal opinions on how this affects us as patients. All opinions are my own, and not representative of Hugo Health.

While the digital world around us moves onward and upward into the 21st century, the healthcare space is seemingly stuck. This past year I moved, and had to have ankle surgery for a chronic injury that I had spent the last 12 years dealing with in three different states.

To prepare for my appointment with my surgeon, I was tasked with collecting all imaging (x-rays, MRIs, and CTs) along with their corresponding notes, as well as surgical notes for my past two failed procedures. In a world where I can email my absentee ballot registration to my local voter registrar, I had to collect disks and physical paper reports to hand over to my new surgical team. It was a painful process, full of back and forths and waiting on snail-mail. All in all it took over a month to get everything together.

Read more →

Configuring Contentlayer with a Next.js App

11/22/22

Previously, we talked through the choices behind the tech stack used to build my developer blog. The step towards building a functional blog is wiring up contentlayer (opens in new tab), an SDK for transforming unstructured content into type-safe json data structures. Contentlayer is a breeze to use, but in case you're stuck, here is how I set it up.

Installation

Installing contentlayer is a fairly straighforward process.

Read more →

Building a Content Driven Blog with Next.js and Typescript

11/20/22

Almost every developer dreams of creating a stylish and functional blog for sharing their journeys about learning in tech. I want to quickly talk through my design choices for the beginning stages of building my own blog.

Content Management

The key part to this all working nicely is being able to manage content well. As a developer who's already familiar with markdown, the next logical step would be using MDX to write all content.

Read more →